@pendle/core-v2 1.4.4-testnet → 1.6.0-testnet
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/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
- 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/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
- 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/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +4 -0
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +492 -0
- package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
- 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/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
- 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/VeBalanceLib.sol/VeBalanceLib.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
- 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/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
- package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
- package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
- 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/PYIndex.sol/PYIndexLib.json +2 -2
- 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/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +1171 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +1171 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +1171 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +1171 -0
- 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/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/MetaStable/MetaStablePreview.sol/MetaStablePreview.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/{PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.json → PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.json} +33 -54
- 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/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
- 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/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/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 +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +987 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +1157 -0
- 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/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
- 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/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.json +2 -2
- 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/Errors.sol/Errors.json +28 -2
- 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/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/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 +4 -0
- package/build/artifacts/contracts/interfaces/Frax/IFrxEthMinter.sol/IFrxEthMinter.json +56 -0
- 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/IGlpManager.sol/IGlpManager.json +19 -0
- 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/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
- 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/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 +4 -0
- package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.json +169 -0
- 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/IPMarket.sol/IPMarket.json +67 -0
- 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 +4 -0
- package/build/artifacts/contracts/interfaces/IPPtOracle.sol/IPPtOracle.json +82 -0
- package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.json +141 -0
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
- 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/IPYieldToken.sol/IPYieldToken.json +13 -0
- 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 +4 -0
- package/build/artifacts/contracts/interfaces/{IStargatePool.sol/IStargatePool.json → IStargateLP.sol/IStargateLP.json} +68 -3
- package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateStaking.sol/IStargateStaking.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/{IStargateLPStaking.sol/IStargateLPStaking.json → IStargateStaking.sol/IStargateStaking.json} +20 -27
- 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/BoringPtSeller.sol/BoringPtSeller.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.json +10 -0
- package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
- 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 +4 -0
- package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.json +200 -0
- package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.json +89 -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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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/PendlePtOracle.sol/PendlePtOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +247 -0
- package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +10 -0
- package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +118 -0
- package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.json +144 -0
- 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 +143 -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/MarketApproxPtInLib.json +2 -2
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.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/PendleSwapArbitrum.sol/PendleSwapArbitrum.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwapArbitrum.sol/PendleSwapArbitrum.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwapEthereum.sol/PendleSwapEthereum.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwapEthereum.sol/PendleSwapEthereum.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper1.sol/IExecutorHelper1.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper2.sol/IExecutorHelper2.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IHashflow.sol/IHashflow.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/KyberHelperArbitrum.sol/KyberHelperArbitrum.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/ScaleDataHelperArbitrum.sol/ScaleDataHelperArbitrum.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IHashflow.sol/IHashflow.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/KyberHelperEthereum.sol/KyberHelperEthereum.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/ScaleDataHelperEthereum.sol/ScaleDataHelperEthereum.dbg.json +1 -1
- package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol +166 -0
- package/contracts/core/StandardizedYield/SYBaseWithRewards.sol +19 -7
- package/contracts/core/StandardizedYield/implementations/BalancerStable/{PendleAuraWethAnkrethSY.sol → PendleAuraWethAnkrethSYV2.sol} +23 -15
- package/contracts/core/StandardizedYield/implementations/BalancerStable/{PendleAuraWethRethSY.sol → PendleAuraWethRocketEthSYV2.sol} +34 -25
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol +135 -0
- package/contracts/core/StandardizedYield/implementations/BalancerStable/{PendleAuraWethWstethSY.sol → PendleAuraWethWstethSYV2.sol} +23 -15
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/{PendleAuraBalancerStableLPSY.sol → PendleAuraBalancerStableLPSYV2.sol} +97 -33
- package/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol +132 -0
- package/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol +222 -0
- package/contracts/core/libraries/Errors.sol +5 -0
- package/contracts/interfaces/Balancer/IVault.sol +21 -4
- package/contracts/interfaces/Frax/IFrxEthMinter.sol +10 -0
- package/contracts/interfaces/GMX/IGlpManager.sol +2 -0
- package/contracts/interfaces/IPFeeDistributor.sol +3 -4
- package/contracts/interfaces/IPFeeDistributorV2.sol +46 -0
- package/contracts/interfaces/IPMarket.sol +19 -0
- package/contracts/interfaces/IPPtOracle.sol +23 -0
- package/contracts/interfaces/IPRouterHelper.sol +8 -0
- package/contracts/interfaces/IPYieldToken.sol +3 -0
- package/contracts/interfaces/{IStargatePool.sol → IStargateLP.sol} +14 -1
- package/contracts/interfaces/{IStargateLPStaking.sol → IStargateStaking.sol} +2 -2
- package/contracts/offchain-helpers/BoringPtSeller.sol +39 -0
- package/contracts/offchain-helpers/EmptyUUPS.sol +16 -0
- package/contracts/offchain-helpers/PendleMulticallV1.sol +61 -0
- package/contracts/oracles/PendlePtOracle.sol +99 -0
- package/contracts/oracles/PendlePtOracleLib.sol +59 -0
- package/contracts/oracles/samples/PendlePtGlpOracle.sol +53 -0
- package/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol +61 -0
- package/contracts/router/PendleRouterHelper.sol +9 -8
- package/contracts/router/base/ActionBaseMintRedeem.sol +5 -5
- package/deployments/43113-core.json +3 -2
- package/deployments/80001-core.json +1 -1
- package/package.json +4 -3
- package/typechain-types/{IChainlinkAggregator.ts → AggregatorInterface.ts} +5 -18
- package/typechain-types/AggregatorV2V3Interface.ts +385 -0
- package/typechain-types/AggregatorV3Interface.ts +221 -0
- package/typechain-types/{AggregationRouterHelper.ts → EmptyUUPS.ts} +5 -45
- package/typechain-types/{SCYBase.ts → ICamelotPair.ts} +415 -444
- package/typechain-types/ICamelotRouter.ts +955 -0
- package/typechain-types/IChronosFactory.ts +245 -0
- package/typechain-types/IChronosPair.ts +631 -0
- package/typechain-types/IChronosRouter.ts +311 -0
- package/typechain-types/{IBoringOwnableUpgradeable.ts → IERC721Receiver.ts} +36 -30
- package/typechain-types/{ICelerMessageBus.ts → IFrxEthMinter.ts} +53 -45
- package/typechain-types/IGlpManager.ts +19 -0
- package/typechain-types/IMaGauge.ts +1246 -0
- package/typechain-types/IMaLPNFT.ts +1146 -0
- package/typechain-types/IPFeeDistributorV2.ts +287 -0
- package/typechain-types/IPMarket.ts +98 -0
- package/typechain-types/IPPtOracle.ts +184 -0
- package/typechain-types/IPRouterHelper.ts +84 -12
- package/typechain-types/IPYieldToken.ts +21 -0
- package/typechain-types/IPair.ts +553 -0
- package/typechain-types/IPairFactory.ts +245 -0
- package/typechain-types/{PendleAuraBalancerStableLPSY.ts → PendleAuraBalancerStableLPSYV2.ts} +61 -72
- package/typechain-types/{PendleAuraWethRethSY.ts → PendleAuraWethAnkrethSYV2.ts} +60 -98
- package/typechain-types/PendleAuraWethRocketEthSYV2.ts +1511 -0
- package/typechain-types/{PendleAuraWethWstethSY.ts → PendleAuraWethStafiEthSY.ts} +60 -72
- package/typechain-types/{PendleAuraWethAnkrethSY.ts → PendleAuraWethWstethSYV2.ts} +60 -72
- package/typechain-types/PendleCamelotV1Base.ts +120 -0
- package/typechain-types/PendleChronosChrEthSY.ts +1520 -0
- package/typechain-types/PendleChronosNFTManager.ts +217 -0
- package/typechain-types/PendleChronosVolatilePairBase.ts +134 -0
- package/typechain-types/{PtAMMArb.ts → PendleFeeDistributorV2.ts} +324 -189
- package/typechain-types/PendleMulticallV1.ts +162 -0
- package/typechain-types/{PendlePtOracleBase.ts → PendlePtGlpOracle.ts} +19 -39
- package/typechain-types/{CelerSenderUpg.ts → PendlePtOracle.ts} +140 -68
- package/typechain-types/{PtStETHOracle.ts → PendlePtUsdChainlinkOracle.ts} +30 -45
- package/typechain-types/PendleRouterHelper.ts +84 -12
- package/typechain-types/{SYBaseAutoCompound.ts → PendleSfrxEthSY.ts} +44 -5
- 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 +1 -1
- package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
- 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/{IChainlinkAggregator__factory.ts → AggregatorInterface__factory.ts} +8 -25
- package/typechain-types/factories/{IAToken__factory.ts → AggregatorV2V3Interface__factory.ts} +104 -100
- package/typechain-types/factories/AggregatorV3Interface__factory.ts +141 -0
- package/typechain-types/factories/Broadcaster__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/EmptyUUPS__factory.ts +250 -0
- package/typechain-types/factories/Errors__factory.ts +27 -1
- package/typechain-types/factories/{SCYBase__factory.ts → ICamelotPair__factory.ts} +208 -278
- package/typechain-types/factories/ICamelotRouter__factory.ts +662 -0
- package/typechain-types/factories/{CelerSenderUpg__factory.ts → IChronosFactory__factory.ts} +80 -76
- package/typechain-types/factories/IChronosPair__factory.ts +473 -0
- package/typechain-types/factories/IChronosRouter__factory.ts +210 -0
- package/typechain-types/factories/IERC721Receiver__factory.ts +60 -0
- package/typechain-types/factories/{StEthHelper__factory.ts → IFrxEthMinter__factory.ts} +19 -13
- package/typechain-types/factories/IGlpManager__factory.ts +19 -0
- package/typechain-types/factories/{SCYBaseWithDynamicRewards__factory.ts → IMaGauge__factory.ts} +313 -348
- package/typechain-types/factories/{ISuperComposableYield__factory.ts → IMaLPNFT__factory.ts} +310 -270
- package/typechain-types/factories/{PendleFeeDistributorAbstract__factory.ts → IPFeeDistributorV2__factory.ts} +67 -66
- package/typechain-types/factories/IPMarket__factory.ts +67 -0
- package/typechain-types/factories/IPPtOracle__factory.ts +94 -0
- package/typechain-types/factories/IPRouterHelper__factory.ts +141 -0
- package/typechain-types/factories/IPYieldToken__factory.ts +13 -0
- package/typechain-types/factories/{EpochResultManager__factory.ts → IPairFactory__factory.ts} +72 -54
- package/typechain-types/factories/{IWAvax__factory.ts → IPair__factory.ts} +223 -92
- package/typechain-types/factories/MetaStablePreview__factory.ts +1 -1
- package/typechain-types/factories/OracleLib__factory.ts +1 -1
- package/typechain-types/factories/{PendleAuraBalancerStableLPSY__factory.ts → PendleAuraBalancerStableLPSYV2__factory.ts} +39 -60
- package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1244 -0
- package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1244 -0
- package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1244 -0
- package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1244 -0
- package/typechain-types/factories/{ISiloPriceProvider__factory.ts → PendleCamelotV1Base__factory.ts} +21 -33
- package/typechain-types/factories/PendleChronosChrEthSY__factory.ts +1323 -0
- package/typechain-types/factories/{IYearnVault__factory.ts → PendleChronosNFTManager__factory.ts} +47 -46
- package/typechain-types/factories/{PendlePtOracleBase__factory.ts → PendleChronosVolatilePairBase__factory.ts} +24 -33
- package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
- package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +549 -0
- package/typechain-types/factories/PendleFeeDistributor__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/PendleMarketFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleMarket__factory.ts +1 -1
- package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMulticallV1__factory.ts +142 -0
- package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
- package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
- package/typechain-types/factories/PendlePtGlpOracle__factory.ts +198 -0
- package/typechain-types/factories/PendlePtOracle__factory.ts +312 -0
- package/typechain-types/factories/PendlePtUsdChainlinkOracle__factory.ts +228 -0
- package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterHelper__factory.ts +142 -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 +1051 -0
- package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSwapArbitrum__factory.ts +1 -1
- package/typechain-types/factories/PendleSwapEthereum__factory.ts +1 -1
- package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
- 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/SAPE__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
- package/typechain-types/hardhat.d.ts +212 -140
- package/typechain-types/index.ts +54 -34
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +0 -4
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +0 -592
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSY.sol/PendleAuraWethAnkrethSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSY.sol/PendleAuraWethAnkrethSY.json +0 -1192
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.json +0 -1218
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.json +0 -1192
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPLiquidityMigrator.sol/IPLiquidityMigrator.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPLiquidityMigrator.sol/IPLiquidityMigrator.json +0 -655
- package/build/artifacts/contracts/interfaces/IStargateLPStaking.sol/IStargateLPStaking.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IStargatePool.sol/IStargatePool.dbg.json +0 -4
- package/build/artifacts/contracts/offchain-helpers/PendleMulticall.sol/PendleMulticall.dbg.json +0 -4
- package/build/artifacts/contracts/offchain-helpers/PendleMulticall.sol/PendleMulticall.json +0 -47
- package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol +0 -219
- package/contracts/interfaces/IPLiquidityMigrator.sol +0 -130
- package/contracts/offchain-helpers/PendleMulticall.sol +0 -26
- package/typechain-types/AccessControl.ts +0 -360
- package/typechain-types/ActionBaseMintRedeem.ts +0 -87
- package/typechain-types/ActionCallback.ts +0 -134
- package/typechain-types/ActionCore.ts +0 -1758
- package/typechain-types/ActionSCYAndPTBase.ts +0 -87
- package/typechain-types/ActionSCYAndPYBase.ts +0 -87
- package/typechain-types/ActionSCYAndYTBase.ts +0 -87
- package/typechain-types/ActionSwapPTYT.ts +0 -237
- package/typechain-types/ActionYT.ts +0 -509
- package/typechain-types/BaseSplitCodeFactory.ts +0 -118
- package/typechain-types/BoringOwnable.ts +0 -194
- package/typechain-types/BoringOwnableData.ts +0 -100
- package/typechain-types/BribeDistributor.ts +0 -363
- package/typechain-types/CelerReceiverUpg.ts +0 -372
- package/typechain-types/ComposableStablePreview.ts +0 -217
- package/typechain-types/Curve3CrvPoolHelper.ts +0 -236
- package/typechain-types/CurveFraxUsdcPoolHelper.ts +0 -158
- package/typechain-types/CurveUsdd3CrvPoolHelper.ts +0 -184
- package/typechain-types/DistributorBase.ts +0 -363
- package/typechain-types/ERC165.ts +0 -102
- package/typechain-types/ERC1967UpgradeUpgradeable.ts +0 -97
- package/typechain-types/EpochResultManager.ts +0 -261
- package/typechain-types/FeeDistributor.ts +0 -416
- package/typechain-types/FeeDistributorAbstract.ts +0 -240
- package/typechain-types/FeeDistributorVePendle.ts +0 -81
- package/typechain-types/FeeDistributorVoting.ts +0 -272
- package/typechain-types/FeeDistributorVotingFactory.ts +0 -293
- package/typechain-types/GMXPreviewHelper.ts +0 -121
- package/typechain-types/IAToken.ts +0 -386
- package/typechain-types/IAavePool.ts +0 -192
- package/typechain-types/IAaveRewardsController.ts +0 -148
- package/typechain-types/IAccessControl.ts +0 -305
- package/typechain-types/IAggregationRouterHelper.ts +0 -108
- package/typechain-types/IBeaconUpgradeable.ts +0 -87
- package/typechain-types/ICelerMessageReceiverApp.ts +0 -120
- package/typechain-types/IERC165.ts +0 -102
- package/typechain-types/IERC1822ProxiableUpgradeable.ts +0 -87
- package/typechain-types/IERC20Upgradeable.ts +0 -300
- package/typechain-types/IEulerEToken.ts +0 -320
- package/typechain-types/IEulerMarkets.ts +0 -204
- package/typechain-types/IKyberSwapAggregationRouterHelper.ts +0 -109
- package/typechain-types/IMetaAggregationRouter.ts +0 -213
- package/typechain-types/IMultihopRouter.ts +0 -209
- package/typechain-types/IMultihopRouterEthereum.ts +0 -209
- package/typechain-types/IPActionCore.ts +0 -1739
- package/typechain-types/IPActionSwapPTYT.ts +0 -237
- package/typechain-types/IPActionYT.ts +0 -490
- package/typechain-types/IPBatchSeller.ts +0 -234
- package/typechain-types/IPFeeDistributorFactory.ts +0 -101
- package/typechain-types/IPGovernanceManager.ts +0 -84
- package/typechain-types/IPLiquidityMigrator.ts +0 -565
- package/typechain-types/IPVotingControllerStorage.ts +0 -169
- package/typechain-types/IPVotingEscrow.ts +0 -344
- package/typechain-types/IPermissionsV2Upg.ts +0 -87
- package/typechain-types/IREDACTEDStaking.ts +0 -216
- package/typechain-types/ISAvax.ts +0 -430
- package/typechain-types/ISJoe.ts +0 -340
- package/typechain-types/ISiloPriceProvider.ts +0 -150
- package/typechain-types/IStargateLPStaking.ts +0 -251
- package/typechain-types/IStargatePool.ts +0 -223
- package/typechain-types/ISuperComposableYield.ts +0 -895
- package/typechain-types/ISwapAggregator.ts +0 -124
- package/typechain-types/IWAvax.ts +0 -380
- package/typechain-types/IWXBTRFLY.ts +0 -267
- package/typechain-types/IYearnVault.ts +0 -256
- package/typechain-types/ImplicitSwapfeeContract.ts +0 -149
- package/typechain-types/InputScalingHelper.ts +0 -108
- package/typechain-types/KyberSwapHelper.ts +0 -87
- package/typechain-types/MarketMathStatic.ts +0 -259
- package/typechain-types/OwnableUpgradeable.ts +0 -165
- package/typechain-types/Pendle3CrvAndTokenSCY.ts +0 -1215
- package/typechain-types/Pendle3CrvAndTokenSY.ts +0 -1243
- package/typechain-types/Pendle3CrvHelper.ts +0 -133
- package/typechain-types/Pendle3CrvTokenSCY.ts +0 -1150
- package/typechain-types/PendleAaveV3SCY.ts +0 -1088
- package/typechain-types/PendleApeStakingSY.ts +0 -1135
- package/typechain-types/PendleAura3EthSY.ts +0 -1600
- package/typechain-types/PendleAuraCbethWstethSY.ts +0 -1587
- package/typechain-types/PendleBatchSeller.ts +0 -648
- package/typechain-types/PendleConvex2TokensSY.ts +0 -1215
- package/typechain-types/PendleConvexCurveLP2PoolSCY.ts +0 -1215
- package/typechain-types/PendleConvexCurveLP3PoolSCY.ts +0 -1269
- package/typechain-types/PendleConvexCurveLP4PoolSCY.ts +0 -1288
- package/typechain-types/PendleConvexCurveLPSCY.ts +0 -1189
- package/typechain-types/PendleCvxCRVSCY.ts +0 -1104
- package/typechain-types/PendleERC4626SCY.ts +0 -950
- package/typechain-types/PendleEulerSCY.ts +0 -965
- package/typechain-types/PendleFeeDistributorAbstract.ts +0 -289
- package/typechain-types/PendleFeeDistributorFactory.ts +0 -591
- package/typechain-types/PendleFeeDistributorVoting.ts +0 -321
- package/typechain-types/PendleFeeDistributorVotingFactory.ts +0 -294
- package/typechain-types/PendleGovernanceManager.ts +0 -187
- package/typechain-types/PendleLooksStaking.ts +0 -1052
- package/typechain-types/PendleQiSAvaxSCY.ts +0 -1098
- package/typechain-types/PendleQiTokenSCY.ts +0 -1166
- package/typechain-types/PendleSAvaxSCY.ts +0 -962
- package/typechain-types/PendleSJoeSCY.ts +0 -1053
- package/typechain-types/PendleStargateLP.ts +0 -1442
- package/typechain-types/PendleStargateSCY.ts +0 -1135
- package/typechain-types/PendleSwapAggregator.ts +0 -126
- package/typechain-types/PendleWstEthSCY.ts +0 -1040
- package/typechain-types/PendleYearnVaultSCY.ts +0 -963
- package/typechain-types/PermissionsV2Upg.ts +0 -87
- package/typechain-types/PtFraxUsdcOracle.ts +0 -202
- package/typechain-types/RouterStatic.ts +0 -2939
- package/typechain-types/SCYBaseWithDynamicRewards.ts +0 -1063
- package/typechain-types/SCYBaseWithRewards.ts +0 -1094
- package/typechain-types/SSTORE2DeployerContract.ts +0 -242
- package/typechain-types/StEthHelper.ts +0 -107
- package/typechain-types/SwapAggregator.ts +0 -406
- package/typechain-types/factories/AccessControl__factory.ts +0 -227
- package/typechain-types/factories/ActionBaseMintRedeem__factory.ts +0 -43
- package/typechain-types/factories/ActionCallback__factory.ts +0 -223
- package/typechain-types/factories/ActionCore__factory.ts +0 -1863
- package/typechain-types/factories/ActionSCYAndPTBase__factory.ts +0 -39
- package/typechain-types/factories/ActionSCYAndPYBase__factory.ts +0 -39
- package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +0 -39
- package/typechain-types/factories/ActionSwapPTYT__factory.ts +0 -396
- package/typechain-types/factories/ActionYT__factory.ts +0 -499
- package/typechain-types/factories/AggregationRouterHelper__factory.ts +0 -281
- package/typechain-types/factories/BaseSplitCodeFactory__factory.ts +0 -102
- package/typechain-types/factories/BoringOwnableData__factory.ts +0 -90
- package/typechain-types/factories/BoringOwnable__factory.ts +0 -141
- package/typechain-types/factories/BribeDistributor__factory.ts +0 -303
- package/typechain-types/factories/CelerReceiverUpg__factory.ts +0 -205
- package/typechain-types/factories/ComposableStablePreview__factory.ts +0 -190
- package/typechain-types/factories/Curve3CrvPoolHelper__factory.ts +0 -220
- package/typechain-types/factories/CurveFraxUsdcPoolHelper__factory.ts +0 -146
- package/typechain-types/factories/CurveUsdd3CrvPoolHelper__factory.ts +0 -172
- package/typechain-types/factories/DistributorBase__factory.ts +0 -249
- package/typechain-types/factories/ERC165__factory.ts +0 -39
- package/typechain-types/factories/ERC1967UpgradeUpgradeable__factory.ts +0 -75
- package/typechain-types/factories/FeeDistributorAbstract__factory.ts +0 -127
- package/typechain-types/factories/FeeDistributorVePendle__factory.ts +0 -97
- package/typechain-types/factories/FeeDistributorVotingFactory__factory.ts +0 -211
- package/typechain-types/factories/FeeDistributorVoting__factory.ts +0 -219
- package/typechain-types/factories/FeeDistributor__factory.ts +0 -339
- package/typechain-types/factories/GMXPreviewHelper__factory.ts +0 -65
- package/typechain-types/factories/IAavePool__factory.ts +0 -99
- package/typechain-types/factories/IAaveRewardsController__factory.ts +0 -78
- package/typechain-types/factories/IAccessControl__factory.ts +0 -198
- package/typechain-types/factories/IAggregationRouterHelper__factory.ts +0 -54
- package/typechain-types/factories/IBeaconUpgradeable__factory.ts +0 -39
- package/typechain-types/factories/IBoringOwnableUpgradeable__factory.ts +0 -53
- package/typechain-types/factories/ICelerMessageBus__factory.ts +0 -68
- package/typechain-types/factories/ICelerMessageReceiverApp__factory.ts +0 -64
- package/typechain-types/factories/IERC165__factory.ts +0 -42
- package/typechain-types/factories/IERC1822ProxiableUpgradeable__factory.ts +0 -43
- package/typechain-types/factories/IERC20Upgradeable__factory.ts +0 -209
- package/typechain-types/factories/IEulerEToken__factory.ts +0 -174
- package/typechain-types/factories/IEulerMarkets__factory.ts +0 -99
- package/typechain-types/factories/IKyberSwapAggregationRouterHelper__factory.ts +0 -56
- package/typechain-types/factories/IMetaAggregationRouter__factory.ts +0 -202
- package/typechain-types/factories/IMultihopRouterEthereum__factory.ts +0 -155
- package/typechain-types/factories/IMultihopRouter__factory.ts +0 -151
- package/typechain-types/factories/IPActionCore__factory.ts +0 -1784
- package/typechain-types/factories/IPActionSwapPTYT__factory.ts +0 -205
- package/typechain-types/factories/IPActionYT__factory.ts +0 -435
- package/typechain-types/factories/IPBatchSeller__factory.ts +0 -132
- package/typechain-types/factories/IPFeeDistributorFactory__factory.ts +0 -86
- package/typechain-types/factories/IPGovernanceManager__factory.ts +0 -39
- package/typechain-types/factories/IPLiquidityMigrator__factory.ts +0 -677
- package/typechain-types/factories/IPVotingControllerStorage__factory.ts +0 -107
- package/typechain-types/factories/IPVotingEscrow__factory.ts +0 -250
- package/typechain-types/factories/IPermissionsV2Upg__factory.ts +0 -39
- package/typechain-types/factories/IREDACTEDStaking__factory.ts +0 -107
- package/typechain-types/factories/ISAvax__factory.ts +0 -208
- package/typechain-types/factories/ISJoe__factory.ts +0 -177
- package/typechain-types/factories/IStargateLPStaking__factory.ts +0 -152
- package/typechain-types/factories/IStargatePool__factory.ts +0 -147
- package/typechain-types/factories/ISwapAggregator__factory.ts +0 -66
- package/typechain-types/factories/IWXBTRFLY__factory.ts +0 -144
- package/typechain-types/factories/ImplicitSwapfeeContract__factory.ts +0 -239
- package/typechain-types/factories/InputScalingHelper__factory.ts +0 -88
- package/typechain-types/factories/KyberSwapHelper__factory.ts +0 -39
- package/typechain-types/factories/MarketMathStatic__factory.ts +0 -312
- package/typechain-types/factories/OwnableUpgradeable__factory.ts +0 -78
- package/typechain-types/factories/Pendle3CrvAndTokenSCY__factory.ts +0 -1130
- package/typechain-types/factories/Pendle3CrvAndTokenSY__factory.ts +0 -1106
- package/typechain-types/factories/Pendle3CrvHelper__factory.ts +0 -129
- package/typechain-types/factories/Pendle3CrvTokenSCY__factory.ts +0 -996
- package/typechain-types/factories/PendleAaveV3SCY__factory.ts +0 -874
- package/typechain-types/factories/PendleApeStakingSY__factory.ts +0 -981
- package/typechain-types/factories/PendleAura3EthSY__factory.ts +0 -1326
- package/typechain-types/factories/PendleAuraCbethWstethSY__factory.ts +0 -1317
- package/typechain-types/factories/PendleAuraWethAnkrethSY__factory.ts +0 -1265
- package/typechain-types/factories/PendleAuraWethRethSY__factory.ts +0 -1291
- package/typechain-types/factories/PendleAuraWethWstethSY__factory.ts +0 -1265
- package/typechain-types/factories/PendleBatchSeller__factory.ts +0 -480
- package/typechain-types/factories/PendleConvex2TokensSY__factory.ts +0 -1093
- package/typechain-types/factories/PendleConvexCurveLP2PoolSCY__factory.ts +0 -1125
- package/typechain-types/factories/PendleConvexCurveLP3PoolSCY__factory.ts +0 -1067
- package/typechain-types/factories/PendleConvexCurveLP4PoolSCY__factory.ts +0 -1080
- package/typechain-types/factories/PendleConvexCurveLPSCY__factory.ts +0 -967
- package/typechain-types/factories/PendleCvxCRVSCY__factory.ts +0 -910
- package/typechain-types/factories/PendleERC4626SCY__factory.ts +0 -774
- package/typechain-types/factories/PendleEulerSCY__factory.ts +0 -805
- package/typechain-types/factories/PendleFeeDistributorFactory__factory.ts +0 -485
- package/typechain-types/factories/PendleFeeDistributorVotingFactory__factory.ts +0 -213
- package/typechain-types/factories/PendleFeeDistributorVoting__factory.ts +0 -275
- package/typechain-types/factories/PendleGovernanceManager__factory.ts +0 -149
- package/typechain-types/factories/PendleLooksStaking__factory.ts +0 -933
- package/typechain-types/factories/PendleQiSAvaxSCY__factory.ts +0 -917
- package/typechain-types/factories/PendleQiTokenSCY__factory.ts +0 -1095
- package/typechain-types/factories/PendleSAvaxSCY__factory.ts +0 -796
- package/typechain-types/factories/PendleSJoeSCY__factory.ts +0 -845
- package/typechain-types/factories/PendleStargateLP__factory.ts +0 -1241
- package/typechain-types/factories/PendleStargateSCY__factory.ts +0 -952
- package/typechain-types/factories/PendleSwapAggregator__factory.ts +0 -129
- package/typechain-types/factories/PendleWstEthSCY__factory.ts +0 -924
- package/typechain-types/factories/PendleYearnVaultSCY__factory.ts +0 -787
- package/typechain-types/factories/PermissionsV2Upg__factory.ts +0 -39
- package/typechain-types/factories/PtAMMArb__factory.ts +0 -525
- package/typechain-types/factories/PtFraxUsdcOracle__factory.ts +0 -252
- package/typechain-types/factories/PtStETHOracle__factory.ts +0 -227
- package/typechain-types/factories/RouterStatic__factory.ts +0 -2673
- package/typechain-types/factories/SCYBaseWithRewards__factory.ts +0 -867
- package/typechain-types/factories/SSTORE2DeployerContract__factory.ts +0 -191
- package/typechain-types/factories/SYBaseAutoCompound__factory.ts +0 -942
- package/typechain-types/factories/SwapAggregator__factory.ts +0 -309
|
@@ -14,13 +14,14 @@ import "./StablePoolUserData.sol";
|
|
|
14
14
|
import "../../../../libraries/ArrayLib.sol";
|
|
15
15
|
import "../../../SYBaseWithRewards.sol";
|
|
16
16
|
|
|
17
|
-
abstract contract
|
|
17
|
+
abstract contract PendleAuraBalancerStableLPSYV2 is SYBaseWithRewards {
|
|
18
18
|
using ArrayLib for address[];
|
|
19
19
|
|
|
20
|
-
address
|
|
21
|
-
address
|
|
22
|
-
address
|
|
23
|
-
address
|
|
20
|
+
address internal constant BAL_TOKEN = 0xba100000625a3754423978a60c9317c58a424e3D;
|
|
21
|
+
address internal constant AURA_TOKEN = 0xC0c293ce456fF0ED870ADd98a0828Dd4d2903DBF;
|
|
22
|
+
address internal constant AURA_BOOSTER = 0xA57b8d98dAE62B26Ec3bcC4a365338157060B234;
|
|
23
|
+
address internal constant BALANCER_VAULT = 0xBA12222222228d8Ba445958a75a0704d566BF2C8;
|
|
24
|
+
uint256 internal constant DEFAULT_GAS_REENTRANCY_CHECK = 7000;
|
|
24
25
|
|
|
25
26
|
address public immutable balLp;
|
|
26
27
|
bytes32 public immutable balPoolId;
|
|
@@ -30,6 +31,7 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
30
31
|
|
|
31
32
|
IBalancerStablePreview public immutable previewHelper;
|
|
32
33
|
|
|
34
|
+
uint256 public gasForReentrancyCheck;
|
|
33
35
|
address[] public extraRewards;
|
|
34
36
|
|
|
35
37
|
constructor(
|
|
@@ -53,11 +55,14 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
53
55
|
}
|
|
54
56
|
|
|
55
57
|
previewHelper = _previewHelper;
|
|
58
|
+
gasForReentrancyCheck = DEFAULT_GAS_REENTRANCY_CHECK;
|
|
56
59
|
}
|
|
57
60
|
|
|
58
|
-
function _getPoolInfo(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
+
function _getPoolInfo(uint256 _auraPid)
|
|
62
|
+
internal
|
|
63
|
+
view
|
|
64
|
+
returns (address _auraLp, address _auraRewardManager)
|
|
65
|
+
{
|
|
61
66
|
if (_auraPid > IBooster(AURA_BOOSTER).poolLength()) revert Errors.SYBalancerInvalidPid();
|
|
62
67
|
(_auraLp, , , _auraRewardManager, , ) = IBooster(AURA_BOOSTER).poolInfo(_auraPid);
|
|
63
68
|
}
|
|
@@ -69,10 +74,12 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
69
74
|
/**
|
|
70
75
|
* @notice Either wraps LP, or also joins pool using exact tokenIn
|
|
71
76
|
*/
|
|
72
|
-
function _deposit(
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
77
|
+
function _deposit(address tokenIn, uint256 amount)
|
|
78
|
+
internal
|
|
79
|
+
virtual
|
|
80
|
+
override
|
|
81
|
+
returns (uint256 amountSharesOut)
|
|
82
|
+
{
|
|
76
83
|
if (tokenIn == balLp) {
|
|
77
84
|
amountSharesOut = amount;
|
|
78
85
|
} else {
|
|
@@ -100,17 +107,60 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
100
107
|
}
|
|
101
108
|
|
|
102
109
|
function exchangeRate() external view override returns (uint256) {
|
|
110
|
+
_checkBalancerReadOnlyReentrancy();
|
|
103
111
|
return IRateProvider(balLp).getRate();
|
|
104
112
|
}
|
|
105
113
|
|
|
114
|
+
/*
|
|
115
|
+
* The `manageUserBalance` function is a non-view function that includes a reentrancy guard
|
|
116
|
+
in the form of `_require(_status != _ENTERED, Errors.REENTRANCY);`. To prevent
|
|
117
|
+
read-only reentrancy, it's important to ensure that our `manageUserBalance` has enough gas
|
|
118
|
+
to reach this check, so that it can fail if necessary.
|
|
119
|
+
|
|
120
|
+
* On the way to the check, there's at most one `COLD_SLOAD` plus miscellaneous decoding &
|
|
121
|
+
require, which we've found through testing to cost no more than 3200 gas. Therefore,
|
|
122
|
+
attaching 7000 gas should guarantee that it's always possible to reach the check.
|
|
123
|
+
|
|
124
|
+
* Once we've reached the check, one of two scenarios can occur:
|
|
125
|
+
1. The call doesn't pass the check, and reverts with error `BAL#400` ⇒ `response.length = 100`.
|
|
126
|
+
2. The call passes the check. Then, the call can either:
|
|
127
|
+
a. continue on to set the `status` variable to 2, causing the EVM to revert (since
|
|
128
|
+
the sub-call is a `staticcall`), and `response.length == 0`
|
|
129
|
+
b. run out of gas, which will also lead to a revert with `response.length == 0`
|
|
130
|
+
In both cases, to differentiate between 1 and 2, we check `response.length != 0`. If it's
|
|
131
|
+
true, then it's a read-only reentrancy. Otherwise, we're good (and we can ignore
|
|
132
|
+
differentiating between 2a and 2b).
|
|
133
|
+
*/
|
|
134
|
+
function _checkBalancerReadOnlyReentrancy() internal view {
|
|
135
|
+
IVault.UserBalanceOp[] memory noop = new IVault.UserBalanceOp[](0);
|
|
136
|
+
|
|
137
|
+
(bool isSuccess, bytes memory response) = BALANCER_VAULT.staticcall{
|
|
138
|
+
gas: gasForReentrancyCheck
|
|
139
|
+
}(
|
|
140
|
+
abi.encodeWithSignature(
|
|
141
|
+
"manageUserBalance((uint8,address,uint256,address,address)[])",
|
|
142
|
+
noop
|
|
143
|
+
)
|
|
144
|
+
);
|
|
145
|
+
|
|
146
|
+
assert(!isSuccess);
|
|
147
|
+
if (response.length != 0) revert Errors.SYBalancerReentrancy();
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
function setGasForReentrancyCheck(uint256 newGas) external onlyOwner {
|
|
151
|
+
require(newGas >= DEFAULT_GAS_REENTRANCY_CHECK, "lower than default");
|
|
152
|
+
gasForReentrancyCheck = newGas;
|
|
153
|
+
}
|
|
154
|
+
|
|
106
155
|
/*///////////////////////////////////////////////////////////////
|
|
107
156
|
BALANCER-RELATED FUNCTIONS
|
|
108
157
|
//////////////////////////////////////////////////////////////*/
|
|
109
158
|
|
|
110
|
-
function _depositToBalancer(
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
159
|
+
function _depositToBalancer(address tokenIn, uint256 amountTokenToDeposit)
|
|
160
|
+
internal
|
|
161
|
+
virtual
|
|
162
|
+
returns (uint256)
|
|
163
|
+
{
|
|
114
164
|
IVault.JoinPoolRequest memory request = _assembleJoinRequest(
|
|
115
165
|
tokenIn,
|
|
116
166
|
amountTokenToDeposit
|
|
@@ -121,10 +171,12 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
121
171
|
return _selfBalance(balLp);
|
|
122
172
|
}
|
|
123
173
|
|
|
124
|
-
function _assembleJoinRequest(
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
174
|
+
function _assembleJoinRequest(address tokenIn, uint256 amountTokenToDeposit)
|
|
175
|
+
internal
|
|
176
|
+
view
|
|
177
|
+
virtual
|
|
178
|
+
returns (IVault.JoinPoolRequest memory request)
|
|
179
|
+
{
|
|
128
180
|
// max amounts in
|
|
129
181
|
address[] memory assets = _getPoolTokenAddresses();
|
|
130
182
|
|
|
@@ -166,10 +218,12 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
166
218
|
return balanceAfter - balanceBefore;
|
|
167
219
|
}
|
|
168
220
|
|
|
169
|
-
function _assembleExitRequest(
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
221
|
+
function _assembleExitRequest(address tokenOut, uint256 amountLpToRedeem)
|
|
222
|
+
internal
|
|
223
|
+
view
|
|
224
|
+
virtual
|
|
225
|
+
returns (IVault.ExitPoolRequest memory request)
|
|
226
|
+
{
|
|
173
227
|
address[] memory assets = _getPoolTokenAddresses();
|
|
174
228
|
uint256[] memory minAmountsOut = new uint256[](assets.length);
|
|
175
229
|
|
|
@@ -201,10 +255,13 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
201
255
|
PREVIEW FUNCTIONS
|
|
202
256
|
//////////////////////////////////////////////////////////////*/
|
|
203
257
|
|
|
204
|
-
function _previewDeposit(
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
258
|
+
function _previewDeposit(address tokenIn, uint256 amountTokenToDeposit)
|
|
259
|
+
internal
|
|
260
|
+
view
|
|
261
|
+
virtual
|
|
262
|
+
override
|
|
263
|
+
returns (uint256 amountSharesOut)
|
|
264
|
+
{
|
|
208
265
|
if (tokenIn == balLp) {
|
|
209
266
|
amountSharesOut = amountTokenToDeposit;
|
|
210
267
|
} else {
|
|
@@ -222,10 +279,13 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
222
279
|
}
|
|
223
280
|
}
|
|
224
281
|
|
|
225
|
-
function _previewRedeem(
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
282
|
+
function _previewRedeem(address tokenOut, uint256 amountSharesToRedeem)
|
|
283
|
+
internal
|
|
284
|
+
view
|
|
285
|
+
virtual
|
|
286
|
+
override
|
|
287
|
+
returns (uint256 amountTokenOut)
|
|
288
|
+
{
|
|
229
289
|
if (tokenOut == balLp) {
|
|
230
290
|
amountTokenOut = amountSharesToRedeem;
|
|
231
291
|
} else {
|
|
@@ -303,7 +363,11 @@ abstract contract PendleAuraBalancerStableLPSY is SYBaseWithRewards {
|
|
|
303
363
|
function assetInfo()
|
|
304
364
|
external
|
|
305
365
|
view
|
|
306
|
-
returns (
|
|
366
|
+
returns (
|
|
367
|
+
AssetType assetType,
|
|
368
|
+
address assetAddress,
|
|
369
|
+
uint8 assetDecimals
|
|
370
|
+
)
|
|
307
371
|
{
|
|
308
372
|
return (AssetType.LIQUIDITY, balLp, IERC20Metadata(balLp).decimals());
|
|
309
373
|
}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.17;
|
|
3
|
+
|
|
4
|
+
import "../SYBase.sol";
|
|
5
|
+
import "../../../interfaces/Frax/IFrxEthMinter.sol";
|
|
6
|
+
import "../../../interfaces/IERC4626.sol";
|
|
7
|
+
|
|
8
|
+
/// @dev deposit through weth is not neccessary to be done on this contract's level
|
|
9
|
+
/// as we already supported this with our router
|
|
10
|
+
contract PendleSfrxEthSY is SYBase {
|
|
11
|
+
address public immutable minter;
|
|
12
|
+
address public immutable frxETH;
|
|
13
|
+
address public immutable sfrxETH;
|
|
14
|
+
|
|
15
|
+
constructor(
|
|
16
|
+
string memory _name,
|
|
17
|
+
string memory _symbol,
|
|
18
|
+
address _minter
|
|
19
|
+
) SYBase(_name, _symbol, IFrxEthMinter(_minter).sfrxETHToken()) {
|
|
20
|
+
minter = _minter;
|
|
21
|
+
sfrxETH = IFrxEthMinter(minter).sfrxETHToken();
|
|
22
|
+
frxETH = IFrxEthMinter(minter).frxETHToken();
|
|
23
|
+
|
|
24
|
+
_safeApproveInf(frxETH, sfrxETH);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/*///////////////////////////////////////////////////////////////
|
|
28
|
+
DEPOSIT/REDEEM USING BASE TOKENS
|
|
29
|
+
//////////////////////////////////////////////////////////////*/
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* The underlying yield token is frxETH. If the base token deposited is ETH, the function
|
|
33
|
+
* deposits through fraxMinterContract - the most efficient way to get frxETH and deposit
|
|
34
|
+
* directly to sfrxETH.
|
|
35
|
+
*/
|
|
36
|
+
function _deposit(
|
|
37
|
+
address tokenIn,
|
|
38
|
+
uint256 amountDeposited
|
|
39
|
+
) internal virtual override returns (uint256 /*amountSharesOut*/) {
|
|
40
|
+
if (tokenIn == NATIVE) {
|
|
41
|
+
return IFrxEthMinter(minter).submitAndDeposit{ value: amountDeposited }(address(this));
|
|
42
|
+
} else if (tokenIn == frxETH) {
|
|
43
|
+
return IERC4626(sfrxETH).deposit(amountDeposited, address(this));
|
|
44
|
+
} else {
|
|
45
|
+
return amountDeposited;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Withdrawal to sfrxETH and frxETH is done normally as other ERC4626.
|
|
51
|
+
* Withdrawal to ETH is on the other hand not possible
|
|
52
|
+
*/
|
|
53
|
+
function _redeem(
|
|
54
|
+
address receiver,
|
|
55
|
+
address tokenOut,
|
|
56
|
+
uint256 amountSharesToRedeem
|
|
57
|
+
) internal virtual override returns (uint256 /*amountTokenOut*/) {
|
|
58
|
+
if (tokenOut == sfrxETH) {
|
|
59
|
+
_transferOut(sfrxETH, receiver, amountSharesToRedeem);
|
|
60
|
+
return amountSharesToRedeem;
|
|
61
|
+
} else {
|
|
62
|
+
return IERC4626(sfrxETH).redeem(amountSharesToRedeem, receiver, address(this));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/*///////////////////////////////////////////////////////////////
|
|
67
|
+
EXCHANGE-RATE
|
|
68
|
+
//////////////////////////////////////////////////////////////*/
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* @notice Calculates and updates the exchange rate of shares to underlying asset token
|
|
72
|
+
* @dev It is the exchange rate of sfrxETH to frxETH
|
|
73
|
+
*/
|
|
74
|
+
function exchangeRate() public view virtual override returns (uint256) {
|
|
75
|
+
return IERC4626(sfrxETH).convertToAssets(1 ether);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/*///////////////////////////////////////////////////////////////
|
|
79
|
+
MISC FUNCTIONS FOR METADATA
|
|
80
|
+
//////////////////////////////////////////////////////////////*/
|
|
81
|
+
|
|
82
|
+
function _previewDeposit(
|
|
83
|
+
address tokenIn,
|
|
84
|
+
uint256 amountTokenToDeposit
|
|
85
|
+
) internal view override returns (uint256 /*amountSharesOut*/) {
|
|
86
|
+
if (tokenIn == sfrxETH) {
|
|
87
|
+
return amountTokenToDeposit;
|
|
88
|
+
} else {
|
|
89
|
+
return IERC4626(sfrxETH).previewDeposit(amountTokenToDeposit);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function _previewRedeem(
|
|
94
|
+
address tokenOut,
|
|
95
|
+
uint256 amountSharesToRedeem
|
|
96
|
+
) internal view override returns (uint256 /*amountTokenOut*/) {
|
|
97
|
+
if (tokenOut == sfrxETH) {
|
|
98
|
+
return amountSharesToRedeem;
|
|
99
|
+
} else {
|
|
100
|
+
return IERC4626(sfrxETH).convertToAssets(amountSharesToRedeem);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
function getTokensIn() public view virtual override returns (address[] memory res) {
|
|
105
|
+
res = new address[](3);
|
|
106
|
+
res[0] = frxETH;
|
|
107
|
+
res[1] = sfrxETH;
|
|
108
|
+
res[2] = NATIVE;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
function getTokensOut() public view virtual override returns (address[] memory res) {
|
|
112
|
+
res = new address[](2);
|
|
113
|
+
res[0] = frxETH;
|
|
114
|
+
res[1] = sfrxETH;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
function isValidTokenIn(address token) public view virtual override returns (bool) {
|
|
118
|
+
return token == frxETH || token == sfrxETH || token == NATIVE;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
function isValidTokenOut(address token) public view virtual override returns (bool) {
|
|
122
|
+
return token == frxETH || token == sfrxETH;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
function assetInfo()
|
|
126
|
+
external
|
|
127
|
+
view
|
|
128
|
+
returns (AssetType assetType, address assetAddress, uint8 assetDecimals)
|
|
129
|
+
{
|
|
130
|
+
return (AssetType.TOKEN, frxETH, 18);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.17;
|
|
3
|
+
|
|
4
|
+
import "../SYBaseWithRewards.sol";
|
|
5
|
+
import "../../../interfaces/IStargateRouter.sol";
|
|
6
|
+
import "../../../interfaces/IStargateLP.sol";
|
|
7
|
+
import "../../../interfaces/IStargateStaking.sol";
|
|
8
|
+
|
|
9
|
+
contract PendleStargateLPSY is SYBaseWithRewards {
|
|
10
|
+
uint256 public constant STARGATE_BP_DENOMINATOR = 10000;
|
|
11
|
+
|
|
12
|
+
using Math for uint256;
|
|
13
|
+
|
|
14
|
+
uint16 public immutable pid; // pool id
|
|
15
|
+
uint256 public immutable sid; // staking id
|
|
16
|
+
address public immutable lp;
|
|
17
|
+
address public immutable underlying;
|
|
18
|
+
address public immutable stargateRouter;
|
|
19
|
+
address public immutable stargateStaking;
|
|
20
|
+
address public immutable stgToken;
|
|
21
|
+
|
|
22
|
+
// preview variables
|
|
23
|
+
uint256 public immutable convertRate;
|
|
24
|
+
|
|
25
|
+
constructor(
|
|
26
|
+
string memory _name,
|
|
27
|
+
string memory _symbol,
|
|
28
|
+
address _stargateLP,
|
|
29
|
+
address _stargateStaking,
|
|
30
|
+
uint256 _sid
|
|
31
|
+
) SYBaseWithRewards(_name, _symbol, _stargateLP) {
|
|
32
|
+
lp = _stargateLP;
|
|
33
|
+
underlying = IStargateLP(lp).token();
|
|
34
|
+
|
|
35
|
+
stargateRouter = IStargateLP(lp).router();
|
|
36
|
+
pid = uint16(IStargateLP(lp).poolId());
|
|
37
|
+
|
|
38
|
+
stargateStaking = _stargateStaking;
|
|
39
|
+
sid = _sid;
|
|
40
|
+
|
|
41
|
+
stgToken = IStargateStaking(stargateStaking).stargate();
|
|
42
|
+
|
|
43
|
+
// preview variables
|
|
44
|
+
convertRate = IStargateLP(lp).convertRate();
|
|
45
|
+
|
|
46
|
+
_safeApproveInf(underlying, stargateRouter);
|
|
47
|
+
_safeApproveInf(lp, stargateStaking);
|
|
48
|
+
|
|
49
|
+
_validateStargateStakingId(stargateStaking, sid, lp);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function _validateStargateStakingId(
|
|
53
|
+
address staking,
|
|
54
|
+
uint256 id,
|
|
55
|
+
address lpToken
|
|
56
|
+
) internal view {
|
|
57
|
+
(address _lpToken, , , ) = IStargateStaking(staking).poolInfo(id);
|
|
58
|
+
// Custom error not needed here since this only happens on deployment
|
|
59
|
+
require(_lpToken == lpToken, "invalid sid & lpToken");
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/*///////////////////////////////////////////////////////////////
|
|
63
|
+
DEPOSIT/REDEEM USING BASE TOKENS
|
|
64
|
+
//////////////////////////////////////////////////////////////*/
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* The underlying yield token is startgateLP. If the base token deposited is underlying, the function
|
|
68
|
+
* deposits received underlying into the startgateLP contract.
|
|
69
|
+
*/
|
|
70
|
+
function _deposit(
|
|
71
|
+
address tokenIn,
|
|
72
|
+
uint256 amountDeposited
|
|
73
|
+
) internal virtual override returns (uint256 amountSharesOut) {
|
|
74
|
+
if (tokenIn == underlying) {
|
|
75
|
+
IStargateRouter(stargateRouter).addLiquidity(pid, amountDeposited, address(this));
|
|
76
|
+
amountSharesOut = _selfBalance(lp);
|
|
77
|
+
// all outstanding LP will be staked
|
|
78
|
+
} else {
|
|
79
|
+
amountSharesOut = amountDeposited;
|
|
80
|
+
}
|
|
81
|
+
IStargateStaking(stargateStaking).deposit(sid, amountSharesOut);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function _redeem(
|
|
85
|
+
address receiver,
|
|
86
|
+
address tokenOut,
|
|
87
|
+
uint256 amountSharesToRedeem
|
|
88
|
+
) internal virtual override returns (uint256 amountTokenOut) {
|
|
89
|
+
IStargateStaking(stargateStaking).withdraw(sid, amountSharesToRedeem);
|
|
90
|
+
if (tokenOut == lp) {
|
|
91
|
+
amountTokenOut = amountSharesToRedeem;
|
|
92
|
+
_transferOut(lp, receiver, amountTokenOut);
|
|
93
|
+
} else {
|
|
94
|
+
/**
|
|
95
|
+
* @dev There is an lp cap variable in stargate to define the maximum amount of lp
|
|
96
|
+
* which can be burned.
|
|
97
|
+
* In case there is not enough liquidity in the pool to proceed the withdrawal,
|
|
98
|
+
* stargatePool will not revert and try to withdraw as much lp as it can instead.
|
|
99
|
+
*
|
|
100
|
+
* When this rare case happens, Pendle's SY should guarantee to revert.
|
|
101
|
+
*/
|
|
102
|
+
|
|
103
|
+
uint256 preBalanceLp = _selfBalance(lp);
|
|
104
|
+
|
|
105
|
+
uint256 amountSD = IStargateRouter(stargateRouter).instantRedeemLocal(
|
|
106
|
+
pid,
|
|
107
|
+
amountSharesToRedeem,
|
|
108
|
+
receiver
|
|
109
|
+
);
|
|
110
|
+
uint256 lpUsed = preBalanceLp - _selfBalance(lp);
|
|
111
|
+
if (lpUsed < amountSharesToRedeem) {
|
|
112
|
+
revert Errors.SYStargateRedeemCapExceeded(amountSharesToRedeem, lpUsed);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
amountTokenOut = amountSD * convertRate;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/*///////////////////////////////////////////////////////////////
|
|
120
|
+
EXCHANGE-RATE
|
|
121
|
+
//////////////////////////////////////////////////////////////*/
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* @notice Calculates and updates the exchange rate of shares to underlying asset token
|
|
125
|
+
* @dev It is the exchange rate of lp to underlying
|
|
126
|
+
*/
|
|
127
|
+
function exchangeRate() public view virtual override returns (uint256) {
|
|
128
|
+
return
|
|
129
|
+
IStargateLP(lp).totalLiquidity().divDown(IStargateLP(lp).totalSupply()) * convertRate;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/*///////////////////////////////////////////////////////////////
|
|
133
|
+
REWARDS-RELATED
|
|
134
|
+
//////////////////////////////////////////////////////////////*/
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* @dev See {IStandardizedYield-getRewardTokens}
|
|
138
|
+
*/
|
|
139
|
+
function _getRewardTokens() internal view override returns (address[] memory res) {
|
|
140
|
+
res = new address[](1);
|
|
141
|
+
res[0] = stgToken;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
function _redeemExternalReward() internal override {
|
|
145
|
+
IStargateStaking(stargateStaking).withdraw(sid, 0);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
/*///////////////////////////////////////////////////////////////
|
|
149
|
+
MISC FUNCTIONS FOR METADATA
|
|
150
|
+
//////////////////////////////////////////////////////////////*/
|
|
151
|
+
|
|
152
|
+
function _previewDeposit(
|
|
153
|
+
address tokenIn,
|
|
154
|
+
uint256 amountTokenToDeposit
|
|
155
|
+
) internal view override returns (uint256 amountSharesOut) {
|
|
156
|
+
if (tokenIn == lp) {
|
|
157
|
+
amountSharesOut = amountTokenToDeposit;
|
|
158
|
+
} else {
|
|
159
|
+
uint256 totalLiquidity = IStargateLP(lp).totalLiquidity();
|
|
160
|
+
uint256 totalSupply = IStargateLP(lp).totalSupply();
|
|
161
|
+
uint256 mintFeeBP = IStargateLP(lp).mintFeeBP();
|
|
162
|
+
|
|
163
|
+
uint256 amountSD = amountTokenToDeposit / convertRate;
|
|
164
|
+
|
|
165
|
+
// Tho fee is always enabled, it is currently set to zero
|
|
166
|
+
uint256 mintFeeSD = (amountSD * mintFeeBP) / STARGATE_BP_DENOMINATOR;
|
|
167
|
+
amountSD = amountSD - mintFeeSD;
|
|
168
|
+
|
|
169
|
+
// skip check for lp.totalSupply() == 0
|
|
170
|
+
amountSharesOut = (amountSD * totalSupply) / totalLiquidity;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
function _previewRedeem(
|
|
175
|
+
address tokenOut,
|
|
176
|
+
uint256 amountSharesToRedeem
|
|
177
|
+
) internal view override returns (uint256 amountTokenOut) {
|
|
178
|
+
if (tokenOut == lp) {
|
|
179
|
+
amountTokenOut = amountSharesToRedeem;
|
|
180
|
+
} else {
|
|
181
|
+
uint256 totalLiquidity = IStargateLP(lp).totalLiquidity();
|
|
182
|
+
uint256 totalSupply = IStargateLP(lp).totalSupply();
|
|
183
|
+
uint256 deltaCredit = IStargateLP(lp).deltaCredit();
|
|
184
|
+
|
|
185
|
+
uint256 capAmountLp = (deltaCredit * totalSupply) / totalLiquidity;
|
|
186
|
+
if (amountSharesToRedeem > capAmountLp) {
|
|
187
|
+
revert Errors.SYStargateRedeemCapExceeded(amountSharesToRedeem, capAmountLp);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
uint256 amountSD = (amountSharesToRedeem * totalLiquidity) / totalSupply;
|
|
191
|
+
amountTokenOut = amountSD * convertRate;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
function getTokensIn() public view virtual override returns (address[] memory res) {
|
|
196
|
+
res = new address[](2);
|
|
197
|
+
res[0] = underlying;
|
|
198
|
+
res[1] = lp;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
function getTokensOut() public view virtual override returns (address[] memory res) {
|
|
202
|
+
res = new address[](2);
|
|
203
|
+
res[0] = underlying;
|
|
204
|
+
res[1] = lp;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
function isValidTokenIn(address token) public view virtual override returns (bool) {
|
|
208
|
+
return token == underlying || token == lp;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
function isValidTokenOut(address token) public view virtual override returns (bool) {
|
|
212
|
+
return token == underlying || token == lp;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
function assetInfo()
|
|
216
|
+
external
|
|
217
|
+
view
|
|
218
|
+
returns (AssetType assetType, address assetAddress, uint8 assetDecimals)
|
|
219
|
+
{
|
|
220
|
+
return (AssetType.TOKEN, underlying, IERC20Metadata(underlying).decimals());
|
|
221
|
+
}
|
|
222
|
+
}
|
|
@@ -114,6 +114,10 @@ library Errors {
|
|
|
114
114
|
error SYBalancerInvalidPid();
|
|
115
115
|
error SYInvalidRewardToken(address token);
|
|
116
116
|
|
|
117
|
+
error SYStargateRedeemCapExceeded(uint256 amountLpDesired, uint256 amountLpRedeemable);
|
|
118
|
+
|
|
119
|
+
error SYBalancerReentrancy();
|
|
120
|
+
|
|
117
121
|
// Liquidity Mining
|
|
118
122
|
error VCInactivePool(address pool);
|
|
119
123
|
error VCPoolAlreadyActive(address pool);
|
|
@@ -163,6 +167,7 @@ library Errors {
|
|
|
163
167
|
error ArrayOutOfBounds();
|
|
164
168
|
error ZeroAddress();
|
|
165
169
|
error FailedToSendEther();
|
|
170
|
+
error InvalidMerkleProof();
|
|
166
171
|
|
|
167
172
|
error OnlyLayerZeroEndpoint();
|
|
168
173
|
error OnlyYT();
|
|
@@ -5,6 +5,21 @@ import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
|
|
|
5
5
|
import "./IAsset.sol";
|
|
6
6
|
|
|
7
7
|
interface IVault {
|
|
8
|
+
enum UserBalanceOpKind {
|
|
9
|
+
DEPOSIT_INTERNAL,
|
|
10
|
+
WITHDRAW_INTERNAL,
|
|
11
|
+
TRANSFER_INTERNAL,
|
|
12
|
+
TRANSFER_EXTERNAL
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
struct UserBalanceOp {
|
|
16
|
+
UserBalanceOpKind kind;
|
|
17
|
+
IAsset asset;
|
|
18
|
+
uint256 amount;
|
|
19
|
+
address sender;
|
|
20
|
+
address payable recipient;
|
|
21
|
+
}
|
|
22
|
+
|
|
8
23
|
struct JoinPoolRequest {
|
|
9
24
|
address[] assets;
|
|
10
25
|
uint256[] maxAmountsIn;
|
|
@@ -61,12 +76,14 @@ interface IVault {
|
|
|
61
76
|
uint256 deadline
|
|
62
77
|
) external payable returns (uint256);
|
|
63
78
|
|
|
64
|
-
function getPoolTokens(
|
|
65
|
-
bytes32 poolId
|
|
66
|
-
)
|
|
79
|
+
function getPoolTokens(bytes32 poolId)
|
|
67
80
|
external
|
|
68
81
|
view
|
|
69
|
-
returns (
|
|
82
|
+
returns (
|
|
83
|
+
IERC20[] memory tokens,
|
|
84
|
+
uint256[] memory balances,
|
|
85
|
+
uint256 lastChangeBlock
|
|
86
|
+
);
|
|
70
87
|
|
|
71
88
|
function WETH() external view returns (IERC20);
|
|
72
89
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.17;
|
|
3
|
+
|
|
4
|
+
interface IFrxEthMinter {
|
|
5
|
+
function frxETHToken() external view returns (address);
|
|
6
|
+
|
|
7
|
+
function sfrxETHToken() external view returns (address);
|
|
8
|
+
|
|
9
|
+
function submitAndDeposit(address recipient) external payable returns (uint256 shares);
|
|
10
|
+
}
|
|
@@ -13,10 +13,9 @@ interface IPFeeDistributor {
|
|
|
13
13
|
uint128 iter;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
function claimReward(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
) external returns (uint256[] memory amountRewardOut);
|
|
16
|
+
function claimReward(address user, address[] calldata pools)
|
|
17
|
+
external
|
|
18
|
+
returns (uint256[] memory amountRewardOut);
|
|
20
19
|
|
|
21
20
|
function getAllPools() external view returns (address[] memory);
|
|
22
21
|
}
|