@pendle/core-v2 2.18.0 → 2.19.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/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/WeekMath.sol/WeekMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
- package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -2
- package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
- package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
- package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +12 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
- package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
- package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
- package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
- package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotFactory.sol/ICamelotFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTFactory.sol/ICamelotNFTFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTHandler.sol/ICamelotNFTHandler.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPoolFactory.sol/ICamelotNitroPoolFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotRouter.sol/ICamelotRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotYieldBooster.sol/ICamelotYieldBooster.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/IXGrail.sol/IXGrail.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/ICrvDepositor.sol/ICrvDepositor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/ICvxCrv.sol/ICvxCrv.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Frax/IFrxEthMinter.sol/IFrxEthMinter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.json +82 -6
- package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +22 -22
- package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.json +42 -4
- package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPtOracle.sol/IPPtOracle.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +146 -32
- package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateLP.sol/IStargateLP.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateStaking.sol/IStargateStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.json +10 -0
- package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.json +97 -0
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +84 -8
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +24 -24
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +44 -6
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +2 -2
- package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.json +166 -0
- package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +2 -2
- package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
- package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
- package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
- package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +2 -2
- package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IHashflow.sol/IHashflow.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
- package/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol +8 -2
- package/contracts/interfaces/IPActionInfoStatic.sol +8 -7
- package/contracts/interfaces/IPActionMarketAuxStatic.sol +21 -14
- package/contracts/interfaces/IPActionMarketCoreStatic.sol +70 -67
- package/contracts/interfaces/IPActionMintRedeemStatic.sol +23 -11
- package/contracts/interfaces/IPRouterStatic.sol +5 -1
- package/contracts/interfaces/IStandardizedYield.sol +15 -10
- package/contracts/offchain-helpers/BoringLpSeller.sol +47 -0
- package/contracts/offchain-helpers/BulkSellerOffchain.sol +11 -8
- package/contracts/offchain-helpers/PtAndLpToAsset.sol +62 -0
- package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +14 -11
- package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +96 -37
- package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +88 -80
- package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +43 -14
- package/contracts/oracles/samples/PendleLpGlpOracle.sol +49 -0
- package/deployments/42161-markets/RETH-ARBITRUM-JUNE2024.json +4 -4
- package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2024.json +4 -4
- package/package.json +1 -1
- package/typechain-types/ActionMarketAuxStatic.ts +191 -38
- package/typechain-types/ActionMarketCoreStatic.ts +600 -134
- package/typechain-types/ActionMintRedeemStatic.ts +92 -26
- package/typechain-types/CamelotV1PreviewHelper.ts +471 -0
- package/typechain-types/I1inchAggregationRouterV5.ts +257 -0
- package/typechain-types/IExecutorHelper1.ts +643 -0
- package/typechain-types/IExecutorHelper2.ts +115 -0
- package/typechain-types/IExecutorHelperEthereum1.ts +643 -0
- package/typechain-types/IPActionMarketAuxStatic.ts +191 -38
- package/typechain-types/IPActionMarketCoreStatic.ts +600 -134
- package/typechain-types/IPActionMintRedeemStatic.ts +92 -26
- package/typechain-types/IPRouterStatic.ts +888 -197
- package/typechain-types/IPVotingEscrowSidechain.ts +155 -0
- package/typechain-types/PendleCamelotRewardHelper.ts +347 -0
- package/typechain-types/PendleCamelotV1RouterHelper.ts +133 -0
- package/typechain-types/PendleCamelotV1SY.ts +1716 -0
- package/typechain-types/PendleLpGlpOracle.ts +145 -0
- package/typechain-types/PendleSwapArbitrum.ts +126 -0
- package/typechain-types/PendleSwapEthereum.ts +126 -0
- package/typechain-types/PtAndLpToAsset.ts +136 -0
- package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
- package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +83 -7
- package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +23 -23
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +43 -5
- package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
- package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
- package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
- package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
- package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
- package/typechain-types/factories/BulkSeller__factory.ts +1 -1
- package/typechain-types/factories/CamelotV1PreviewHelper__factory.ts +400 -0
- package/typechain-types/factories/I1inchAggregationRouterV5__factory.ts +179 -0
- package/typechain-types/factories/IExecutorHelper1__factory.ts +403 -0
- package/typechain-types/factories/IExecutorHelper2__factory.ts +55 -0
- package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +407 -0
- package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +82 -6
- package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +22 -22
- package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +42 -4
- package/typechain-types/factories/IPRouterStatic__factory.ts +146 -32
- package/typechain-types/factories/IPVotingEscrowSidechain__factory.ts +112 -0
- package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +27 -2
- package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleCamelotRewardHelper__factory.ts +317 -0
- package/typechain-types/factories/PendleCamelotV1RouterHelper__factory.ts +95 -0
- package/typechain-types/factories/PendleCamelotV1SY__factory.ts +1448 -0
- package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
- package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
- package/typechain-types/factories/PendleLpGlpOracle__factory.ts +246 -0
- package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleMarket__factory.ts +1 -1
- package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
- package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterHelper__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
- package/typechain-types/factories/PendleRouter__factory.ts +1 -1
- package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSwapArbitrum__factory.ts +129 -0
- package/typechain-types/factories/PendleSwapEthereum__factory.ts +129 -0
- package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
- package/typechain-types/factories/PtAndLpToAsset__factory.ts +150 -0
- package/typechain-types/factories/SAPE__factory.ts +1 -1
- package/typechain-types/hardhat.d.ts +126 -0
- package/typechain-types/index.ts +18 -2
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
1
2
|
pragma solidity ^0.8.17;
|
|
2
3
|
|
|
3
4
|
interface IPActionMarketCoreStatic {
|
|
@@ -5,7 +6,14 @@ interface IPActionMarketCoreStatic {
|
|
|
5
6
|
address market,
|
|
6
7
|
uint256 netSyDesired,
|
|
7
8
|
uint256 netPtDesired
|
|
8
|
-
)
|
|
9
|
+
)
|
|
10
|
+
external
|
|
11
|
+
view
|
|
12
|
+
returns (
|
|
13
|
+
uint256 netLpOut,
|
|
14
|
+
uint256 netSyUsed,
|
|
15
|
+
uint256 netPtUsed
|
|
16
|
+
);
|
|
9
17
|
|
|
10
18
|
function addLiquidityDualTokenAndPtStatic(
|
|
11
19
|
address market,
|
|
@@ -24,11 +32,9 @@ interface IPActionMarketCoreStatic {
|
|
|
24
32
|
uint256 netSyDesired
|
|
25
33
|
);
|
|
26
34
|
|
|
27
|
-
function addLiquiditySinglePtStatic(
|
|
28
|
-
address market,
|
|
29
|
-
uint256 netPtIn
|
|
30
|
-
)
|
|
35
|
+
function addLiquiditySinglePtStatic(address market, uint256 netPtIn)
|
|
31
36
|
external
|
|
37
|
+
view
|
|
32
38
|
returns (
|
|
33
39
|
uint256 netLpOut,
|
|
34
40
|
uint256 netPtToSwap,
|
|
@@ -38,16 +44,18 @@ interface IPActionMarketCoreStatic {
|
|
|
38
44
|
uint256 netSyFromSwap
|
|
39
45
|
);
|
|
40
46
|
|
|
41
|
-
function addLiquiditySingleSyKeepYtStatic(
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
47
|
+
function addLiquiditySingleSyKeepYtStatic(address market, uint256 netSyIn)
|
|
48
|
+
external
|
|
49
|
+
view
|
|
50
|
+
returns (
|
|
51
|
+
uint256 netLpOut,
|
|
52
|
+
uint256 netYtOut,
|
|
53
|
+
uint256 netSyToPY
|
|
54
|
+
);
|
|
45
55
|
|
|
46
|
-
function addLiquiditySingleSyStatic(
|
|
47
|
-
address market,
|
|
48
|
-
uint256 netSyIn
|
|
49
|
-
)
|
|
56
|
+
function addLiquiditySingleSyStatic(address market, uint256 netSyIn)
|
|
50
57
|
external
|
|
58
|
+
view
|
|
51
59
|
returns (
|
|
52
60
|
uint256 netLpOut,
|
|
53
61
|
uint256 netPtFromSwap,
|
|
@@ -64,7 +72,13 @@ interface IPActionMarketCoreStatic {
|
|
|
64
72
|
address bulk
|
|
65
73
|
)
|
|
66
74
|
external
|
|
67
|
-
|
|
75
|
+
view
|
|
76
|
+
returns (
|
|
77
|
+
uint256 netLpOut,
|
|
78
|
+
uint256 netYtOut,
|
|
79
|
+
uint256 netSyMinted,
|
|
80
|
+
uint256 netSyToPY
|
|
81
|
+
);
|
|
68
82
|
|
|
69
83
|
function addLiquiditySingleTokenStatic(
|
|
70
84
|
address market,
|
|
@@ -73,6 +87,7 @@ interface IPActionMarketCoreStatic {
|
|
|
73
87
|
address bulk
|
|
74
88
|
)
|
|
75
89
|
external
|
|
90
|
+
view
|
|
76
91
|
returns (
|
|
77
92
|
uint256 netLpOut,
|
|
78
93
|
uint256 netPtFromSwap,
|
|
@@ -83,23 +98,28 @@ interface IPActionMarketCoreStatic {
|
|
|
83
98
|
uint256 netSyToSwap
|
|
84
99
|
);
|
|
85
100
|
|
|
86
|
-
function removeLiquidityDualSyAndPtStatic(
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
101
|
+
function removeLiquidityDualSyAndPtStatic(address market, uint256 netLpToRemove)
|
|
102
|
+
external
|
|
103
|
+
view
|
|
104
|
+
returns (uint256 netSyOut, uint256 netPtOut);
|
|
90
105
|
|
|
91
106
|
function removeLiquidityDualTokenAndPtStatic(
|
|
92
107
|
address market,
|
|
93
108
|
uint256 netLpToRemove,
|
|
94
109
|
address tokenOut,
|
|
95
110
|
address bulk
|
|
96
|
-
) external view returns (uint256 netTokenOut, uint256 netPtOut, uint256 netSyToRedeem);
|
|
97
|
-
|
|
98
|
-
function removeLiquiditySinglePtStatic(
|
|
99
|
-
address market,
|
|
100
|
-
uint256 netLpToRemove
|
|
101
111
|
)
|
|
102
112
|
external
|
|
113
|
+
view
|
|
114
|
+
returns (
|
|
115
|
+
uint256 netTokenOut,
|
|
116
|
+
uint256 netPtOut,
|
|
117
|
+
uint256 netSyToRedeem
|
|
118
|
+
);
|
|
119
|
+
|
|
120
|
+
function removeLiquiditySinglePtStatic(address market, uint256 netLpToRemove)
|
|
121
|
+
external
|
|
122
|
+
view
|
|
103
123
|
returns (
|
|
104
124
|
uint256 netPtOut,
|
|
105
125
|
uint256 netPtFromSwap,
|
|
@@ -110,11 +130,9 @@ interface IPActionMarketCoreStatic {
|
|
|
110
130
|
uint256 netPtFromBurn
|
|
111
131
|
);
|
|
112
132
|
|
|
113
|
-
function removeLiquiditySingleSyStatic(
|
|
114
|
-
address market,
|
|
115
|
-
uint256 netLpToRemove
|
|
116
|
-
)
|
|
133
|
+
function removeLiquiditySingleSyStatic(address market, uint256 netLpToRemove)
|
|
117
134
|
external
|
|
135
|
+
view
|
|
118
136
|
returns (
|
|
119
137
|
uint256 netSyOut,
|
|
120
138
|
uint256 netSyFee,
|
|
@@ -132,6 +150,7 @@ interface IPActionMarketCoreStatic {
|
|
|
132
150
|
address bulk
|
|
133
151
|
)
|
|
134
152
|
external
|
|
153
|
+
view
|
|
135
154
|
returns (
|
|
136
155
|
uint256 netTokenOut,
|
|
137
156
|
uint256 netSyFee,
|
|
@@ -143,11 +162,9 @@ interface IPActionMarketCoreStatic {
|
|
|
143
162
|
uint256 netSyFromSwap
|
|
144
163
|
);
|
|
145
164
|
|
|
146
|
-
function swapExactPtForSyStatic(
|
|
147
|
-
address market,
|
|
148
|
-
uint256 exactPtIn
|
|
149
|
-
)
|
|
165
|
+
function swapExactPtForSyStatic(address market, uint256 exactPtIn)
|
|
150
166
|
external
|
|
167
|
+
view
|
|
151
168
|
returns (
|
|
152
169
|
uint256 netSyOut,
|
|
153
170
|
uint256 netSyFee,
|
|
@@ -162,6 +179,7 @@ interface IPActionMarketCoreStatic {
|
|
|
162
179
|
address bulk
|
|
163
180
|
)
|
|
164
181
|
external
|
|
182
|
+
view
|
|
165
183
|
returns (
|
|
166
184
|
uint256 netTokenOut,
|
|
167
185
|
uint256 netSyToRedeem,
|
|
@@ -170,11 +188,9 @@ interface IPActionMarketCoreStatic {
|
|
|
170
188
|
uint256 exchangeRateAfter
|
|
171
189
|
);
|
|
172
190
|
|
|
173
|
-
function swapExactPtForYtStatic(
|
|
174
|
-
address market,
|
|
175
|
-
uint256 exactPtIn
|
|
176
|
-
)
|
|
191
|
+
function swapExactPtForYtStatic(address market, uint256 exactPtIn)
|
|
177
192
|
external
|
|
193
|
+
view
|
|
178
194
|
returns (
|
|
179
195
|
uint256 netYtOut,
|
|
180
196
|
uint256 totalPtToSwap,
|
|
@@ -183,11 +199,9 @@ interface IPActionMarketCoreStatic {
|
|
|
183
199
|
uint256 exchangeRateAfter
|
|
184
200
|
);
|
|
185
201
|
|
|
186
|
-
function swapExactSyForPtStatic(
|
|
187
|
-
address market,
|
|
188
|
-
uint256 exactSyIn
|
|
189
|
-
)
|
|
202
|
+
function swapExactSyForPtStatic(address market, uint256 exactSyIn)
|
|
190
203
|
external
|
|
204
|
+
view
|
|
191
205
|
returns (
|
|
192
206
|
uint256 netPtOut,
|
|
193
207
|
uint256 netSyFee,
|
|
@@ -195,11 +209,9 @@ interface IPActionMarketCoreStatic {
|
|
|
195
209
|
uint256 exchangeRateAfter
|
|
196
210
|
);
|
|
197
211
|
|
|
198
|
-
function swapExactSyForYtStatic(
|
|
199
|
-
address market,
|
|
200
|
-
uint256 exactSyIn
|
|
201
|
-
)
|
|
212
|
+
function swapExactSyForYtStatic(address market, uint256 exactSyIn)
|
|
202
213
|
external
|
|
214
|
+
view
|
|
203
215
|
returns (
|
|
204
216
|
uint256 netYtOut,
|
|
205
217
|
uint256 netSyFee,
|
|
@@ -214,6 +226,7 @@ interface IPActionMarketCoreStatic {
|
|
|
214
226
|
address bulk
|
|
215
227
|
)
|
|
216
228
|
external
|
|
229
|
+
view
|
|
217
230
|
returns (
|
|
218
231
|
uint256 netPtOut,
|
|
219
232
|
uint256 netSyMinted,
|
|
@@ -229,6 +242,7 @@ interface IPActionMarketCoreStatic {
|
|
|
229
242
|
address bulk
|
|
230
243
|
)
|
|
231
244
|
external
|
|
245
|
+
view
|
|
232
246
|
returns (
|
|
233
247
|
uint256 netYtOut,
|
|
234
248
|
uint256 netSyMinted,
|
|
@@ -237,11 +251,9 @@ interface IPActionMarketCoreStatic {
|
|
|
237
251
|
uint256 exchangeRateAfter
|
|
238
252
|
);
|
|
239
253
|
|
|
240
|
-
function swapExactYtForPtStatic(
|
|
241
|
-
address market,
|
|
242
|
-
uint256 exactYtIn
|
|
243
|
-
)
|
|
254
|
+
function swapExactYtForPtStatic(address market, uint256 exactYtIn)
|
|
244
255
|
external
|
|
256
|
+
view
|
|
245
257
|
returns (
|
|
246
258
|
uint256 netPtOut,
|
|
247
259
|
uint256 totalPtSwapped,
|
|
@@ -250,11 +262,9 @@ interface IPActionMarketCoreStatic {
|
|
|
250
262
|
uint256 exchangeRateAfter
|
|
251
263
|
);
|
|
252
264
|
|
|
253
|
-
function swapExactYtForSyStatic(
|
|
254
|
-
address market,
|
|
255
|
-
uint256 exactYtIn
|
|
256
|
-
)
|
|
265
|
+
function swapExactYtForSyStatic(address market, uint256 exactYtIn)
|
|
257
266
|
external
|
|
267
|
+
view
|
|
258
268
|
returns (
|
|
259
269
|
uint256 netSyOut,
|
|
260
270
|
uint256 netSyFee,
|
|
@@ -272,6 +282,7 @@ interface IPActionMarketCoreStatic {
|
|
|
272
282
|
address bulk
|
|
273
283
|
)
|
|
274
284
|
external
|
|
285
|
+
view
|
|
275
286
|
returns (
|
|
276
287
|
uint256 netTokenOut,
|
|
277
288
|
uint256 netSyFee,
|
|
@@ -283,11 +294,9 @@ interface IPActionMarketCoreStatic {
|
|
|
283
294
|
uint256 netPYToRedeemSyOutInt
|
|
284
295
|
);
|
|
285
296
|
|
|
286
|
-
function swapPtForExactSyStatic(
|
|
287
|
-
address market,
|
|
288
|
-
uint256 exactSyOut
|
|
289
|
-
)
|
|
297
|
+
function swapPtForExactSyStatic(address market, uint256 exactSyOut)
|
|
290
298
|
external
|
|
299
|
+
view
|
|
291
300
|
returns (
|
|
292
301
|
uint256 netPtIn,
|
|
293
302
|
uint256 netSyFee,
|
|
@@ -295,11 +304,9 @@ interface IPActionMarketCoreStatic {
|
|
|
295
304
|
uint256 exchangeRateAfter
|
|
296
305
|
);
|
|
297
306
|
|
|
298
|
-
function swapSyForExactPtStatic(
|
|
299
|
-
address market,
|
|
300
|
-
uint256 exactPtOut
|
|
301
|
-
)
|
|
307
|
+
function swapSyForExactPtStatic(address market, uint256 exactPtOut)
|
|
302
308
|
external
|
|
309
|
+
view
|
|
303
310
|
returns (
|
|
304
311
|
uint256 netSyIn,
|
|
305
312
|
uint256 netSyFee,
|
|
@@ -307,11 +314,9 @@ interface IPActionMarketCoreStatic {
|
|
|
307
314
|
uint256 exchangeRateAfter
|
|
308
315
|
);
|
|
309
316
|
|
|
310
|
-
function swapSyForExactYtStatic(
|
|
311
|
-
address market,
|
|
312
|
-
uint256 exactYtOut
|
|
313
|
-
)
|
|
317
|
+
function swapSyForExactYtStatic(address market, uint256 exactYtOut)
|
|
314
318
|
external
|
|
319
|
+
view
|
|
315
320
|
returns (
|
|
316
321
|
uint256 netSyIn,
|
|
317
322
|
uint256 netSyFee,
|
|
@@ -321,11 +326,9 @@ interface IPActionMarketCoreStatic {
|
|
|
321
326
|
uint256 totalSyNeedInt
|
|
322
327
|
);
|
|
323
328
|
|
|
324
|
-
function swapYtForExactSyStatic(
|
|
325
|
-
address market,
|
|
326
|
-
uint256 exactSyOut
|
|
327
|
-
)
|
|
329
|
+
function swapYtForExactSyStatic(address market, uint256 exactSyOut)
|
|
328
330
|
external
|
|
331
|
+
view
|
|
329
332
|
returns (
|
|
330
333
|
uint256 netYtIn,
|
|
331
334
|
uint256 netSyFee,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
1
2
|
pragma solidity ^0.8.17;
|
|
2
3
|
|
|
3
4
|
interface IPActionMintRedeemStatic {
|
|
@@ -13,19 +14,26 @@ interface IPActionMintRedeemStatic {
|
|
|
13
14
|
address SY,
|
|
14
15
|
uint256 netTokenIn,
|
|
15
16
|
uint256 netSyIn
|
|
16
|
-
)
|
|
17
|
+
)
|
|
18
|
+
external
|
|
19
|
+
view
|
|
20
|
+
returns (
|
|
21
|
+
address bulk,
|
|
22
|
+
uint256 totalToken,
|
|
23
|
+
uint256 totalSy
|
|
24
|
+
);
|
|
17
25
|
|
|
18
|
-
function mintPyFromSyStatic(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
26
|
+
function mintPyFromSyStatic(address YT, uint256 netSyToMint)
|
|
27
|
+
external
|
|
28
|
+
view
|
|
29
|
+
returns (uint256 netPYOut);
|
|
22
30
|
|
|
23
31
|
function mintPyFromTokenStatic(
|
|
24
32
|
address YT,
|
|
25
33
|
address tokenIn,
|
|
26
34
|
uint256 netTokenIn,
|
|
27
35
|
address bulk
|
|
28
|
-
) external returns (uint256 netPyOut);
|
|
36
|
+
) external view returns (uint256 netPyOut);
|
|
29
37
|
|
|
30
38
|
function mintSyFromTokenStatic(
|
|
31
39
|
address SY,
|
|
@@ -34,17 +42,17 @@ interface IPActionMintRedeemStatic {
|
|
|
34
42
|
address bulk
|
|
35
43
|
) external view returns (uint256 netSyOut);
|
|
36
44
|
|
|
37
|
-
function redeemPyToSyStatic(
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
45
|
+
function redeemPyToSyStatic(address YT, uint256 netPYToRedeem)
|
|
46
|
+
external
|
|
47
|
+
view
|
|
48
|
+
returns (uint256 netSyOut);
|
|
41
49
|
|
|
42
50
|
function redeemPyToTokenStatic(
|
|
43
51
|
address YT,
|
|
44
52
|
uint256 netPYToRedeem,
|
|
45
53
|
address tokenOut,
|
|
46
54
|
address bulk
|
|
47
|
-
) external returns (uint256 netTokenOut);
|
|
55
|
+
) external view returns (uint256 netTokenOut);
|
|
48
56
|
|
|
49
57
|
function redeemSyToTokenStatic(
|
|
50
58
|
address SY,
|
|
@@ -52,4 +60,8 @@ interface IPActionMintRedeemStatic {
|
|
|
52
60
|
uint256 netSyIn,
|
|
53
61
|
address bulk
|
|
54
62
|
) external view returns (uint256 netTokenOut);
|
|
63
|
+
|
|
64
|
+
function pyIndexCurrentViewMarket(address market) external view returns (uint256);
|
|
65
|
+
|
|
66
|
+
function pyIndexCurrentViewYt(address yt) external view returns (uint256);
|
|
55
67
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
1
2
|
pragma solidity ^0.8.17;
|
|
2
3
|
|
|
3
4
|
import "./IPActionMarketAuxStatic.sol";
|
|
@@ -8,6 +9,7 @@ import "./IPActionVePendleStatic.sol";
|
|
|
8
9
|
import "./IPMiniDiamond.sol";
|
|
9
10
|
import "./IPActionStorageStatic.sol";
|
|
10
11
|
|
|
12
|
+
//solhint-disable-next-line no-empty-blocks
|
|
11
13
|
interface IPRouterStatic is
|
|
12
14
|
IPActionMintRedeemStatic,
|
|
13
15
|
IPActionInfoStatic,
|
|
@@ -16,4 +18,6 @@ interface IPRouterStatic is
|
|
|
16
18
|
IPActionVePendleStatic,
|
|
17
19
|
IPMiniDiamond,
|
|
18
20
|
IPActionStorageStatic
|
|
19
|
-
{
|
|
21
|
+
{
|
|
22
|
+
|
|
23
|
+
}
|
|
@@ -146,24 +146,29 @@ interface IStandardizedYield is IERC20Metadata {
|
|
|
146
146
|
|
|
147
147
|
function isValidTokenOut(address token) external view returns (bool);
|
|
148
148
|
|
|
149
|
-
function previewDeposit(
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
149
|
+
function previewDeposit(address tokenIn, uint256 amountTokenToDeposit)
|
|
150
|
+
external
|
|
151
|
+
view
|
|
152
|
+
returns (uint256 amountSharesOut);
|
|
153
153
|
|
|
154
|
-
function previewRedeem(
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
154
|
+
function previewRedeem(address tokenOut, uint256 amountSharesToRedeem)
|
|
155
|
+
external
|
|
156
|
+
view
|
|
157
|
+
returns (uint256 amountTokenOut);
|
|
158
158
|
|
|
159
159
|
/**
|
|
160
160
|
* @notice This function contains information to interpret what the asset is
|
|
161
|
-
* @return assetType the type of the asset (0 for ERC20 tokens, 1 for AMM liquidity tokens
|
|
161
|
+
* @return assetType the type of the asset (0 for ERC20 tokens, 1 for AMM liquidity tokens,
|
|
162
|
+
2 for bridged yield bearing tokens like wstETH, rETH on Arbi whose the underlying asset doesn't exist on the chain)
|
|
162
163
|
* @return assetAddress the address of the asset
|
|
163
164
|
* @return assetDecimals the decimals of the asset
|
|
164
165
|
*/
|
|
165
166
|
function assetInfo()
|
|
166
167
|
external
|
|
167
168
|
view
|
|
168
|
-
returns (
|
|
169
|
+
returns (
|
|
170
|
+
AssetType assetType,
|
|
171
|
+
address assetAddress,
|
|
172
|
+
uint8 assetDecimals
|
|
173
|
+
);
|
|
169
174
|
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.17;
|
|
3
|
+
import "../interfaces/IPMarket.sol";
|
|
4
|
+
|
|
5
|
+
abstract contract BoringLpSeller {
|
|
6
|
+
bytes internal constant EMPTY_BYTES = abi.encode();
|
|
7
|
+
|
|
8
|
+
constructor() {}
|
|
9
|
+
|
|
10
|
+
/// @dev slippage control should be done on a higher level with the returned parameter
|
|
11
|
+
/// @param market market address
|
|
12
|
+
/// @param netLpIn amount of Lp to sell
|
|
13
|
+
/// @param tokenOut should be included in SY.getTokensOut()
|
|
14
|
+
/// @return netTokenOut amount of token out
|
|
15
|
+
function _sellLpForToken(
|
|
16
|
+
address market,
|
|
17
|
+
uint256 netLpIn,
|
|
18
|
+
address tokenOut
|
|
19
|
+
) internal returns (uint256 netTokenOut) {
|
|
20
|
+
(IStandardizedYield SY, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market)
|
|
21
|
+
.readTokens();
|
|
22
|
+
|
|
23
|
+
IPMarket(market).transfer(market, netLpIn);
|
|
24
|
+
|
|
25
|
+
uint256 netSyToRedeem;
|
|
26
|
+
|
|
27
|
+
if (PT.isExpired()) {
|
|
28
|
+
(uint256 netSyRemoved, ) = IPMarket(market).burn(address(SY), address(YT), netLpIn);
|
|
29
|
+
uint256 netSyFromPt = YT.redeemPY(address(SY));
|
|
30
|
+
netSyToRedeem = netSyRemoved + netSyFromPt;
|
|
31
|
+
} else {
|
|
32
|
+
(uint256 netSyRemoved, uint256 netPtRemoved) = IPMarket(market).burn(
|
|
33
|
+
address(SY),
|
|
34
|
+
market,
|
|
35
|
+
netLpIn
|
|
36
|
+
);
|
|
37
|
+
(uint256 netSySwappedOut, ) = IPMarket(market).swapExactPtForSy(
|
|
38
|
+
address(SY),
|
|
39
|
+
netPtRemoved,
|
|
40
|
+
EMPTY_BYTES
|
|
41
|
+
);
|
|
42
|
+
netSyToRedeem = netSyRemoved + netSySwappedOut;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
netTokenOut = SY.redeem(address(this), netSyToRedeem, tokenOut, 0, true);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -3,15 +3,16 @@ pragma solidity 0.8.17;
|
|
|
3
3
|
|
|
4
4
|
import "../core/BulkSeller/BulkSellerMathCore.sol";
|
|
5
5
|
import "../core/BulkSeller/BulkSeller.sol";
|
|
6
|
-
import "hardhat/console.sol";
|
|
7
6
|
|
|
8
7
|
contract BulkSellerOffchain {
|
|
9
8
|
using BulkSellerMathCore for BulkSellerState;
|
|
10
9
|
using Math for uint256;
|
|
11
10
|
|
|
12
|
-
function calcCurrentRates(
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
function calcCurrentRates(IPBulkSeller bulk)
|
|
12
|
+
external
|
|
13
|
+
view
|
|
14
|
+
returns (uint256 rateTokenToSy, uint256 rateSyToToken)
|
|
15
|
+
{
|
|
15
16
|
BulkSellerState memory state = bulk.readState();
|
|
16
17
|
address SY = bulk.SY();
|
|
17
18
|
address token = bulk.token();
|
|
@@ -30,12 +31,14 @@ contract BulkSellerOffchain {
|
|
|
30
31
|
}
|
|
31
32
|
}
|
|
32
33
|
|
|
33
|
-
function getCurrentState(
|
|
34
|
-
IPBulkSeller bulk
|
|
35
|
-
)
|
|
34
|
+
function getCurrentState(IPBulkSeller bulk)
|
|
36
35
|
external
|
|
37
36
|
view
|
|
38
|
-
returns (
|
|
37
|
+
returns (
|
|
38
|
+
BulkSellerState memory state,
|
|
39
|
+
uint256 tokenProp,
|
|
40
|
+
uint256 hypoTokenBal
|
|
41
|
+
)
|
|
39
42
|
{
|
|
40
43
|
state = bulk.readState();
|
|
41
44
|
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.17;
|
|
3
|
+
|
|
4
|
+
import "../interfaces/IPMarket.sol";
|
|
5
|
+
import "../core/libraries/math/Math.sol";
|
|
6
|
+
import "../core/Market/MarketMathCore.sol";
|
|
7
|
+
|
|
8
|
+
contract PtAndLpToAsset {
|
|
9
|
+
using Math for int256;
|
|
10
|
+
using Math for uint256;
|
|
11
|
+
using MarketMathCore for MarketState;
|
|
12
|
+
|
|
13
|
+
function getLpToAssetRate(IPMarket market) public view returns (uint256 lpToAssetRate) {
|
|
14
|
+
MarketState memory state = market.readState(address(0));
|
|
15
|
+
uint256 pyIndexCurrent = _getPYIndexCurrent(market);
|
|
16
|
+
MarketPreCompute memory comp = state.getMarketPreCompute(
|
|
17
|
+
PYIndex.wrap(pyIndexCurrent),
|
|
18
|
+
block.timestamp
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
int256 totalHypotheticalAsset = comp.totalAsset +
|
|
22
|
+
state.totalPt.mulDown(int256(_getPtToAssetRate(market, state, pyIndexCurrent)));
|
|
23
|
+
|
|
24
|
+
lpToAssetRate = uint256(totalHypotheticalAsset.divDown(state.totalLp));
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
function getPtToAssetRate(IPMarket market) public view returns (uint256 ptToAssetRate) {
|
|
28
|
+
MarketState memory state = market.readState(address(0));
|
|
29
|
+
return _getPtToAssetRate(market, state, _getPYIndexCurrent(market));
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function _getPtToAssetRate(
|
|
33
|
+
IPMarket market,
|
|
34
|
+
MarketState memory state,
|
|
35
|
+
uint256 pyIndexCurrent
|
|
36
|
+
) internal view returns (uint256 ptToAssetRate) {
|
|
37
|
+
if (state.expiry <= block.timestamp) {
|
|
38
|
+
(IStandardizedYield SY, , ) = market.readTokens();
|
|
39
|
+
return (SY.exchangeRate().divDown(pyIndexCurrent));
|
|
40
|
+
}
|
|
41
|
+
uint256 timeToExpiry = state.expiry - block.timestamp;
|
|
42
|
+
int256 assetToPtRate = MarketMathCore._getExchangeRateFromImpliedRate(
|
|
43
|
+
state.lastLnImpliedRate,
|
|
44
|
+
timeToExpiry
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
ptToAssetRate = uint256(Math.IONE.divDown(assetToPtRate));
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function _getPYIndexCurrent(IPMarket market) private view returns (uint256) {
|
|
51
|
+
(IStandardizedYield SY, , IPYieldToken YT) = market.readTokens();
|
|
52
|
+
|
|
53
|
+
uint256 syIndex = SY.exchangeRate();
|
|
54
|
+
uint256 pyIndexStored = YT.pyIndexStored();
|
|
55
|
+
|
|
56
|
+
if (YT.doCacheIndexSameBlock() && YT.pyIndexLastUpdatedBlock() == block.number) {
|
|
57
|
+
return pyIndexStored;
|
|
58
|
+
} else {
|
|
59
|
+
return Math.max(syIndex, pyIndexStored);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -21,9 +21,11 @@ contract ActionInfoStatic is IPActionInfoStatic {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
/// can be SY, PY or Market
|
|
24
|
-
function getTokensInOut(
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
function getTokensInOut(address token)
|
|
25
|
+
external
|
|
26
|
+
view
|
|
27
|
+
returns (address[] memory tokensIn, address[] memory tokensOut)
|
|
28
|
+
{
|
|
27
29
|
try IStandardizedYield(token).getTokensIn() returns (address[] memory res) {
|
|
28
30
|
return (res, IStandardizedYield(token).getTokensOut());
|
|
29
31
|
} catch {}
|
|
@@ -78,10 +80,10 @@ contract ActionInfoStatic is IPActionInfoStatic {
|
|
|
78
80
|
res.unclaimedRewards = _zipTokenAmounts(rewardTokens, rewardsOut);
|
|
79
81
|
}
|
|
80
82
|
|
|
81
|
-
function getUserMarketInfo(
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
function getUserMarketInfo(address market, address user)
|
|
84
|
+
external
|
|
85
|
+
returns (UserMarketInfo memory res)
|
|
86
|
+
{
|
|
85
87
|
IPMarket _market = IPMarket(market);
|
|
86
88
|
MarketState memory state = _market.readState(address(this));
|
|
87
89
|
|
|
@@ -105,10 +107,11 @@ contract ActionInfoStatic is IPActionInfoStatic {
|
|
|
105
107
|
res.unclaimedRewards = _zipTokenAmounts(rewardTokens, rewardsOut);
|
|
106
108
|
}
|
|
107
109
|
|
|
108
|
-
function _zipTokenAmounts(
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
110
|
+
function _zipTokenAmounts(address[] memory tokens, uint256[] memory amounts)
|
|
111
|
+
internal
|
|
112
|
+
pure
|
|
113
|
+
returns (TokenAmount[] memory res)
|
|
114
|
+
{
|
|
112
115
|
res = new TokenAmount[](tokens.length);
|
|
113
116
|
|
|
114
117
|
for (uint256 i = 0; i < tokens.length; i++) {
|