@pendle/core-v2 0.20.2-testnet → 1.0.0-mainnet
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/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/FeeDistributor/EpochResultManager.sol/EpochResultManager.dbg.json +4 -0
- package/build/artifacts/contracts/{interfaces/IApeStaking.sol/IApeStaking.json → LiquidityMining/FeeDistributor/EpochResultManager.sol/EpochResultManager.json} +52 -70
- package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +4 -0
- package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +310 -0
- package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.dbg.json +4 -0
- package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.json +389 -0
- 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/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/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/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/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/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/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/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/ArrayLib.sol/ArrayLib.json +2 -2
- 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 +5 -171
- package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.json +0 -18
- 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/IBoringOwnableUpgradeable.sol/IBoringOwnableUpgradeable.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/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.json +32 -80
- package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.json +40 -100
- package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.json +16 -40
- package/build/artifacts/contracts/interfaces/IPActionSwapPTYT.sol/IPActionSwapPTYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.json +16 -40
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +104 -260
- 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/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.json +32 -43
- package/build/artifacts/contracts/interfaces/IPFeeDistributorFactory.sol/IPFeeDistributorFactory.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/{Balancer/IGauge.sol/IGauge.json → IPFeeDistributorFactory.sol/IPFeeDistributorFactory.json} +33 -18
- package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.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/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/IREDACTEDStaking.sol/IREDACTEDStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateLPStaking.sol/IStargateLPStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargatePool.sol/IStargatePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWXBTRFLY.sol/IWXBTRFLY.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.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/MarketMathStatic.sol/MarketMathStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.json +2 -42
- package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +98 -171
- package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +53 -96
- package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.json +2 -2
- package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +61 -116
- package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +25 -44
- package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +25 -44
- 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/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.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/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.dbg.json +4 -0
- package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.json +224 -0
- package/build/artifacts/contracts/router/kyberswap/IAggregatorRouterHelper.sol/IAggregationRouterHelper.dbg.json +4 -0
- package/build/artifacts/contracts/router/kyberswap/IAggregatorRouterHelper.sol/IAggregationRouterHelper.json +35 -0
- package/build/artifacts/contracts/router/kyberswap/IMultihopRouter.sol/IMultihopRouter.dbg.json +4 -0
- package/build/artifacts/contracts/router/kyberswap/IMultihopRouter.sol/IMultihopRouter.json +136 -0
- package/build/artifacts/contracts/router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +4 -0
- package/build/artifacts/contracts/{interfaces/Balancer/IRateProvider.sol/IRateProvider.json → router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.json} +5 -5
- package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +9 -7
- package/contracts/LiquidityMining/FeeDistributor/EpochResultManager.sol +159 -0
- package/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol +99 -0
- package/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol +70 -0
- package/contracts/core/BulkSeller/BulkSeller.sol +1 -1
- package/contracts/core/StandardizedYield/SYBaseWithRewards.sol +3 -1
- package/contracts/core/libraries/ArrayLib.sol +0 -12
- package/contracts/core/libraries/Errors.sol +2 -19
- package/contracts/interfaces/ConvexCurve/IRewards.sol +0 -5
- package/contracts/interfaces/IPActionAddRemoveLiq.sol +1 -1
- package/contracts/interfaces/IPActionMintRedeem.sol +3 -2
- package/contracts/interfaces/IPActionSwapPT.sol +1 -1
- package/contracts/interfaces/IPActionSwapPTYT.sol +1 -1
- package/contracts/interfaces/IPActionSwapYT.sol +1 -1
- package/contracts/interfaces/IPFeeDistributor.sol +10 -12
- package/contracts/interfaces/IPFeeDistributorFactory.sol +14 -0
- package/contracts/offchain-helpers/MarketMathStatic.sol +88 -181
- package/contracts/offchain-helpers/RouterStatic.sol +72 -72
- package/contracts/router/ActionAddRemoveLiq.sol +2 -2
- package/contracts/router/ActionMintRedeem.sol +9 -7
- package/contracts/router/ActionSwapPT.sol +2 -2
- package/contracts/router/ActionSwapYT.sol +2 -2
- package/contracts/router/base/ActionBaseMintRedeem.sol +14 -51
- package/contracts/router/kyberswap/AggregationRouterHelper.sol +317 -0
- package/contracts/router/kyberswap/IAggregatorRouterHelper.sol +10 -0
- package/contracts/router/kyberswap/IMultihopRouter.sol +139 -0
- package/contracts/router/kyberswap/KyberSwapHelper.sol +79 -0
- package/deployments/1-core.json +29 -0
- package/deployments/1-markets/FRAXUSDC-CURVELP-MARCH30.json +11 -0
- package/deployments/1-markets/LOOKS-STAKING-MARCH30.json +10 -0
- package/deployments/1-markets/STETH-JUNE29.json +10 -0
- package/deployments/1-markets/STETH-MARCH30.json +10 -0
- package/package.json +6 -6
- package/typechain-types/ActionAddRemoveLiq.ts +35 -41
- package/typechain-types/ActionBaseMintRedeem.ts +8 -8
- package/typechain-types/ActionMintRedeem.ts +42 -45
- package/typechain-types/ActionSwapPT.ts +22 -28
- package/typechain-types/ActionSwapYT.ts +22 -28
- package/typechain-types/IPActionAddRemoveLiq.ts +16 -22
- package/typechain-types/IPActionMintRedeem.ts +23 -26
- package/typechain-types/IPActionSwapPT.ts +14 -20
- package/typechain-types/IPActionSwapYT.ts +14 -20
- package/typechain-types/IPAllAction.ts +31 -34
- package/typechain-types/IPFeeDistributor.ts +78 -61
- package/typechain-types/IPFeeDistributorFactory.ts +139 -53
- package/typechain-types/IRewards.ts +5 -35
- package/typechain-types/MarketMathStatic.ts +0 -49
- package/typechain-types/PendleFeeDistributor.ts +117 -409
- package/typechain-types/RouterStatic.ts +69 -40
- package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +56 -99
- package/typechain-types/factories/ActionBaseMintRedeem__factory.ts +1 -1
- package/typechain-types/factories/ActionCallback__factory.ts +1 -1
- package/typechain-types/factories/ActionMintRedeem__factory.ts +64 -119
- package/typechain-types/factories/ActionMisc__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapPTYT__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapPT__factory.ts +28 -47
- package/typechain-types/factories/ActionSwapYT__factory.ts +28 -47
- package/typechain-types/factories/AggregationRouterHelper__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/Errors__factory.ts +4 -170
- package/typechain-types/factories/IPActionAddRemoveLiq__factory.ts +32 -80
- package/typechain-types/factories/IPActionMintRedeem__factory.ts +40 -100
- package/typechain-types/factories/IPActionSwapPT__factory.ts +16 -40
- package/typechain-types/factories/IPActionSwapYT__factory.ts +16 -40
- package/typechain-types/factories/IPAllAction__factory.ts +104 -260
- package/typechain-types/factories/IPFeeDistributorFactory__factory.ts +34 -25
- package/typechain-types/factories/IPFeeDistributor__factory.ts +31 -42
- package/typechain-types/factories/IRewards__factory.ts +0 -18
- package/typechain-types/factories/MarketMathStatic__factory.ts +1 -41
- package/typechain-types/factories/OracleLib__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/PendleFeeDistributorFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleFeeDistributor__factory.ts +66 -341
- package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerSidechainUpg__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/PendlePrincipalToken__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
- package/typechain-types/factories/PendleRouter__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/PendleYieldContractFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
- package/typechain-types/factories/RouterStatic__factory.ts +41 -118
- package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
- package/typechain-types/hardhat.d.ts +56 -263
- package/typechain-types/index.ts +16 -62
- package/README.md +0 -28
- 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/StEthHelper.sol/StEthHelper.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.json +0 -50
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +0 -1075
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.json +0 -1296
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.json +0 -1283
- 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 -1231
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.json +0 -10
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.json +0 -133
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.json +0 -10
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.json +0 -40
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.json +0 -322
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.json +0 -1171
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.json +0 -10
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.json +0 -133
- package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.json +0 -10
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.json +0 -24
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.json +0 -133
- package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.json +0 -328
- package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.json +0 -467
- package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.json +0 -30
- package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.json +0 -398
- package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.json +0 -278
- package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +0 -4
- package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +0 -4
- package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.json +0 -322
- package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.json +0 -160
- package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.json +0 -10
- package/build/artifacts/contracts/router/swap-aggregator/ISwapAggregator.sol/ISwapAggregator.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/ISwapAggregator.sol/ISwapAggregator.json +0 -51
- package/build/artifacts/contracts/router/swap-aggregator/SwapAggregator.sol/SwapAggregator.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/SwapAggregator.sol/SwapAggregator.json +0 -256
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberAggregationRouterHelper.sol/KyberAggregationRouterHelper.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberAggregationRouterHelper.sol/KyberAggregationRouterHelper.json +0 -10
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScaleDataHelperEthereum1.sol/ScaleDataHelperEthereum1.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScaleDataHelperEthereum1.sol/ScaleDataHelperEthereum1.json +0 -10
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.json +0 -65
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.json +0 -359
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IHashflow.sol/IHashflow.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IHashflow.sol/IHashflow.json +0 -101
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouter.sol/IMetaAggregationRouter.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouter.sol/IMetaAggregationRouter.json +0 -183
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.json +0 -215
- package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol +0 -224
- package/contracts/core/StandardizedYield/StEthHelper.sol +0 -71
- package/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol +0 -197
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol +0 -170
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol +0 -162
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol +0 -134
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol +0 -154
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol +0 -289
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol +0 -618
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol +0 -68
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol +0 -322
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol +0 -390
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol +0 -329
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol +0 -30
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol +0 -189
- package/contracts/interfaces/Balancer/IAsset.sol +0 -4
- package/contracts/interfaces/Balancer/IBalancerFees.sol +0 -6
- package/contracts/interfaces/Balancer/IBalancerStablePreview.sol +0 -22
- package/contracts/interfaces/Balancer/IBasePool.sol +0 -30
- package/contracts/interfaces/Balancer/IComposableStable.sol +0 -39
- package/contracts/interfaces/Balancer/IGauge.sol +0 -10
- package/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol +0 -6
- package/contracts/interfaces/Balancer/IMetaStablePool.sol +0 -31
- package/contracts/interfaces/Balancer/IRateProvider.sol +0 -6
- package/contracts/interfaces/Balancer/IVault.sol +0 -78
- package/contracts/interfaces/IApeStaking.sol +0 -30
- package/contracts/offchain-helpers/Multicall2.sol +0 -103
- package/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol +0 -45
- package/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol +0 -71
- package/contracts/router/swap-aggregator/ISwapAggregator.sol +0 -21
- package/contracts/router/swap-aggregator/SwapAggregator.sol +0 -62
- package/contracts/router/swap-aggregator/kyberswap/KyberAggregationRouterHelper.sol +0 -302
- package/contracts/router/swap-aggregator/kyberswap/ScaleDataHelperEthereum1.sol +0 -134
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol +0 -17
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperEthereum1.sol +0 -185
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IHashflow.sol +0 -30
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouter.sol +0 -33
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol +0 -42
- package/deployments/43113-core.json +0 -29
- package/deployments/43113-helper.json +0 -3
- package/deployments/43113-markets/APE-30-MARCH.json +0 -10
- package/deployments/43113-markets/USDC-FEB-2ND.json +0 -10
- package/deployments/43113-markets/USDC-FEB-4TH.json +0 -10
- package/deployments/43113-markets/WETH-FEB-2ND.json +0 -11
- package/deployments/43113-markets/WETH-FEB-4TH.json +0 -11
- package/deployments/43113-testenv.json +0 -22
- package/deployments/80001-core.json +0 -28
- package/deployments/80001-helper.json +0 -3
- package/deployments/80001-markets/USDC-FEB-4TH.json +0 -10
- package/deployments/80001-markets/WETH-FEB-4TH.json +0 -11
- package/deployments/80001-testenv.json +0 -22
- package/typechain-types/BribeDistributor.ts +0 -363
- package/typechain-types/ComposableStablePreview.ts +0 -217
- package/typechain-types/DistributorBase.ts +0 -363
- package/typechain-types/FeeDistributor.ts +0 -416
- package/typechain-types/I1inchAggregationRouterV5.ts +0 -257
- package/typechain-types/IAggregationExecutor.ts +0 -182
- package/typechain-types/IApeStaking.ts +0 -305
- package/typechain-types/IBalancerFees.ts +0 -89
- package/typechain-types/IBalancerStablePreview.ts +0 -217
- package/typechain-types/IBasePool.ts +0 -482
- package/typechain-types/IComposableStable.ts +0 -730
- package/typechain-types/IExecutorHelperEthereum1.ts +0 -599
- package/typechain-types/IGauge.ts +0 -160
- package/typechain-types/IHashflow.ts +0 -159
- package/typechain-types/IKyberSwapAggregationRouterHelper.ts +0 -109
- package/typechain-types/ILiquidityGaugeFactory.ts +0 -99
- package/typechain-types/IMetaAggregationRouter.ts +0 -213
- package/typechain-types/IMetaAggregationRouterV2.ts +0 -221
- package/typechain-types/IMetaStablePool.ts +0 -619
- package/typechain-types/IMultihopRouterEthereum.ts +0 -209
- package/typechain-types/IRateProvider.ts +0 -81
- package/typechain-types/ISwapAggregator.ts +0 -124
- package/typechain-types/IVault.ts +0 -410
- package/typechain-types/MetaStableMath.ts +0 -113
- package/typechain-types/MetaStablePreview.ts +0 -501
- package/typechain-types/Multicall2.ts +0 -437
- package/typechain-types/PendleApeStakingSY.ts +0 -1135
- package/typechain-types/PendleAura3EthSY.ts +0 -1639
- package/typechain-types/PendleAuraBalancerStableLPSY.ts +0 -1523
- package/typechain-types/PendleAuraCbethWstethSY.ts +0 -1626
- package/typechain-types/PendleAuraWethRethSY.ts +0 -1549
- package/typechain-types/PendleAuraWethWstethSY.ts +0 -1562
- package/typechain-types/SAPE.ts +0 -1395
- package/typechain-types/SYBaseAutoCompound.ts +0 -1203
- package/typechain-types/StEthHelper.ts +0 -107
- package/typechain-types/StablePreviewBase.ts +0 -217
- package/typechain-types/SwapAggregator.ts +0 -406
- package/typechain-types/factories/BribeDistributor__factory.ts +0 -303
- package/typechain-types/factories/ComposableStablePreview__factory.ts +0 -190
- package/typechain-types/factories/DistributorBase__factory.ts +0 -249
- package/typechain-types/factories/FeeDistributor__factory.ts +0 -339
- package/typechain-types/factories/I1inchAggregationRouterV5__factory.ts +0 -179
- package/typechain-types/factories/IAggregationExecutor__factory.ts +0 -84
- package/typechain-types/factories/IApeStaking__factory.ts +0 -161
- package/typechain-types/factories/IBalancerFees__factory.ts +0 -36
- package/typechain-types/factories/IBalancerStablePreview__factory.ts +0 -152
- package/typechain-types/factories/IBasePool__factory.ts +0 -340
- package/typechain-types/factories/IComposableStable__factory.ts +0 -482
- package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +0 -378
- package/typechain-types/factories/IGauge__factory.ts +0 -70
- package/typechain-types/factories/IHashflow__factory.ts +0 -113
- package/typechain-types/factories/IKyberSwapAggregationRouterHelper__factory.ts +0 -56
- package/typechain-types/factories/ILiquidityGaugeFactory__factory.ts +0 -49
- package/typechain-types/factories/IMetaAggregationRouterV2__factory.ts +0 -234
- package/typechain-types/factories/IMetaAggregationRouter__factory.ts +0 -202
- package/typechain-types/factories/IMetaStablePool__factory.ts +0 -413
- package/typechain-types/factories/IMultihopRouterEthereum__factory.ts +0 -155
- package/typechain-types/factories/IRateProvider__factory.ts +0 -36
- package/typechain-types/factories/ISwapAggregator__factory.ts +0 -66
- package/typechain-types/factories/IVault__factory.ts +0 -287
- package/typechain-types/factories/MetaStableMath__factory.ts +0 -93
- package/typechain-types/factories/MetaStablePreview__factory.ts +0 -375
- package/typechain-types/factories/Multicall2__factory.ts +0 -372
- package/typechain-types/factories/PendleApeStakingSY__factory.ts +0 -981
- package/typechain-types/factories/PendleAura3EthSY__factory.ts +0 -1365
- package/typechain-types/factories/PendleAuraBalancerStableLPSY__factory.ts +0 -1190
- package/typechain-types/factories/PendleAuraCbethWstethSY__factory.ts +0 -1356
- package/typechain-types/factories/PendleAuraWethRethSY__factory.ts +0 -1291
- package/typechain-types/factories/PendleAuraWethWstethSY__factory.ts +0 -1304
- package/typechain-types/factories/SAPE__factory.ts +0 -1142
- package/typechain-types/factories/SYBaseAutoCompound__factory.ts +0 -942
- package/typechain-types/factories/StEthHelper__factory.ts +0 -62
- package/typechain-types/factories/StablePreviewBase__factory.ts +0 -148
- package/typechain-types/factories/SwapAggregator__factory.ts +0 -309
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity 0.8.17;
|
|
3
|
-
|
|
4
|
-
import "../../SYBase.sol";
|
|
5
|
-
import "../../../../interfaces/IApeStaking.sol";
|
|
6
|
-
|
|
7
|
-
contract sAPE is SYBase {
|
|
8
|
-
using Math for uint256;
|
|
9
|
-
|
|
10
|
-
uint256 public constant APE_COIN_POOL_ID = 0;
|
|
11
|
-
uint256 public constant MIN_APE_DEPOSIT = 10**18;
|
|
12
|
-
uint256 public constant EPOCH_LENGTH = 1 hours;
|
|
13
|
-
uint256 private constant MINIMUM_LIQUIDITY = 1e9;
|
|
14
|
-
|
|
15
|
-
address public immutable apeStaking;
|
|
16
|
-
address public immutable apeCoin;
|
|
17
|
-
|
|
18
|
-
uint256 private lastRewardClaimedEpoch;
|
|
19
|
-
|
|
20
|
-
constructor(
|
|
21
|
-
string memory _name,
|
|
22
|
-
string memory _symbol,
|
|
23
|
-
address _apeCoin,
|
|
24
|
-
address _apeStaking
|
|
25
|
-
) SYBase(_name, _symbol, _apeCoin) {
|
|
26
|
-
apeStaking = _apeStaking;
|
|
27
|
-
apeCoin = _apeCoin;
|
|
28
|
-
lastRewardClaimedEpoch = _getCurrentEpochId();
|
|
29
|
-
_safeApproveInf(apeCoin, apeStaking);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
function wrap(uint256 amountTokenIn) external {
|
|
33
|
-
_transferIn(apeCoin, msg.sender, amountTokenIn);
|
|
34
|
-
uint256 amountSharesOut = _deposit(apeCoin, amountTokenIn);
|
|
35
|
-
_mint(msg.sender, amountSharesOut);
|
|
36
|
-
emit Deposit(msg.sender, msg.sender, apeCoin, amountTokenIn, amountSharesOut);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
function unwrap(uint256 amountShares) external {
|
|
40
|
-
_burn(msg.sender, amountShares);
|
|
41
|
-
uint256 amountTokenOut = _redeem(msg.sender, apeCoin, amountShares);
|
|
42
|
-
emit Redeem(msg.sender, msg.sender, apeCoin, amountShares, amountTokenOut);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
function _deposit(address, uint256 amountDeposited)
|
|
46
|
-
internal
|
|
47
|
-
virtual
|
|
48
|
-
override
|
|
49
|
-
returns (uint256 amountSharesOut)
|
|
50
|
-
{
|
|
51
|
-
// Respecting APE's deposit invariant
|
|
52
|
-
if (amountDeposited < MIN_APE_DEPOSIT) {
|
|
53
|
-
revert Errors.SYApeDepositAmountTooSmall(amountDeposited);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
_harvestAndCompound();
|
|
57
|
-
|
|
58
|
-
// As SY Base is pulling the tokenIn first, the totalAsset should exclude user's deposit
|
|
59
|
-
if (totalSupply() == 0) {
|
|
60
|
-
amountSharesOut = amountDeposited - MINIMUM_LIQUIDITY;
|
|
61
|
-
_mint(address(1), MINIMUM_LIQUIDITY);
|
|
62
|
-
} else {
|
|
63
|
-
uint256 priorTotalAssetOwned = getTotalAssetOwned() - amountDeposited;
|
|
64
|
-
amountSharesOut = (amountDeposited * totalSupply()) / priorTotalAssetOwned;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
function _redeem(
|
|
69
|
-
address receiver,
|
|
70
|
-
address,
|
|
71
|
-
uint256 amountSharesToRedeem
|
|
72
|
-
) internal virtual override returns (uint256 amountTokenOut) {
|
|
73
|
-
_harvest();
|
|
74
|
-
|
|
75
|
-
// As SY is burned before calling _redeem(), we should account for priorSupply
|
|
76
|
-
uint256 priorTotalSupply = totalSupply() + amountSharesToRedeem;
|
|
77
|
-
|
|
78
|
-
if (amountSharesToRedeem == priorTotalSupply) {
|
|
79
|
-
amountTokenOut = getTotalAssetOwned();
|
|
80
|
-
} else {
|
|
81
|
-
amountTokenOut = (amountSharesToRedeem * getTotalAssetOwned()) / priorTotalSupply;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
// There might be case when the contract is holding < 1 APE reward and user is withdrawing everything out of it
|
|
85
|
-
if (amountTokenOut > _selfBalance(apeCoin)) {
|
|
86
|
-
IApeStaking(apeStaking).withdrawApeCoin(
|
|
87
|
-
amountTokenOut - _selfBalance(apeCoin),
|
|
88
|
-
address(this)
|
|
89
|
-
);
|
|
90
|
-
}
|
|
91
|
-
_transferOut(apeCoin, receiver, amountTokenOut);
|
|
92
|
-
_compound();
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
function exchangeRate() public view virtual override returns (uint256) {
|
|
96
|
-
// This function is intentionally left reverted when totalSupply() = 0
|
|
97
|
-
return getTotalAssetOwned().divDown(totalSupply());
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/*///////////////////////////////////////////////////////////////
|
|
101
|
-
AUTOCOMPOUND FEATURE
|
|
102
|
-
//////////////////////////////////////////////////////////////*/
|
|
103
|
-
|
|
104
|
-
function getTotalAssetOwned() public view returns (uint256 totalAssetOwned) {
|
|
105
|
-
(uint256 stakedAmount, ) = IApeStaking(apeStaking).addressPosition(address(this));
|
|
106
|
-
uint256 unclaimedAmount = IApeStaking(apeStaking).pendingRewards(
|
|
107
|
-
APE_COIN_POOL_ID,
|
|
108
|
-
address(this),
|
|
109
|
-
0
|
|
110
|
-
);
|
|
111
|
-
uint256 floatingAmount = _selfBalance(apeCoin);
|
|
112
|
-
totalAssetOwned = stakedAmount + unclaimedAmount + floatingAmount;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
function harvestAndCompound() external {
|
|
116
|
-
_harvestAndCompound();
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
function _harvestAndCompound() internal {
|
|
120
|
-
_harvest();
|
|
121
|
-
_compound();
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
function _compound() internal {
|
|
125
|
-
uint256 amountAssetToCompound = _selfBalance(apeCoin);
|
|
126
|
-
if (amountAssetToCompound >= MIN_APE_DEPOSIT) {
|
|
127
|
-
IApeStaking(apeStaking).depositSelfApeCoin(amountAssetToCompound);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
function _harvest() internal {
|
|
132
|
-
uint256 currentEpochId = _getCurrentEpochId();
|
|
133
|
-
if (currentEpochId == lastRewardClaimedEpoch) {
|
|
134
|
-
return;
|
|
135
|
-
}
|
|
136
|
-
IApeStaking(apeStaking).claimSelfApeCoin();
|
|
137
|
-
lastRewardClaimedEpoch = currentEpochId;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
/*///////////////////////////////////////////////////////////////
|
|
141
|
-
MISC FUNCTIONS FOR METADATA
|
|
142
|
-
//////////////////////////////////////////////////////////////*/
|
|
143
|
-
|
|
144
|
-
function _previewDeposit(address, uint256 amountTokenToDeposit)
|
|
145
|
-
internal
|
|
146
|
-
view
|
|
147
|
-
override
|
|
148
|
-
returns (uint256 amountSharesOut)
|
|
149
|
-
{
|
|
150
|
-
// This function is intentionally left reverted when totalSupply() = 0
|
|
151
|
-
amountSharesOut = (amountTokenToDeposit * totalSupply()) / getTotalAssetOwned();
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
function _previewRedeem(address, uint256 amountSharesToRedeem)
|
|
155
|
-
internal
|
|
156
|
-
view
|
|
157
|
-
override
|
|
158
|
-
returns (uint256 amountTokenOut)
|
|
159
|
-
{
|
|
160
|
-
// This function is intentionally left reverted when totalSupply() = 0
|
|
161
|
-
amountTokenOut = (amountSharesToRedeem * getTotalAssetOwned()) / totalSupply();
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
function _getCurrentEpochId() private view returns (uint256) {
|
|
165
|
-
return block.timestamp / EPOCH_LENGTH;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
function getTokensIn() public view virtual override returns (address[] memory res) {
|
|
169
|
-
res = new address[](1);
|
|
170
|
-
res[0] = apeCoin;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
function getTokensOut() public view virtual override returns (address[] memory res) {
|
|
174
|
-
res = new address[](1);
|
|
175
|
-
res[0] = apeCoin;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
function isValidTokenIn(address token) public view virtual override returns (bool) {
|
|
179
|
-
return token == apeCoin;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
function isValidTokenOut(address token) public view virtual override returns (bool) {
|
|
183
|
-
return token == apeCoin;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
function assetInfo()
|
|
187
|
-
external
|
|
188
|
-
view
|
|
189
|
-
returns (
|
|
190
|
-
AssetType assetType,
|
|
191
|
-
address assetAddress,
|
|
192
|
-
uint8 assetDecimals
|
|
193
|
-
)
|
|
194
|
-
{
|
|
195
|
-
return (AssetType.TOKEN, apeCoin, IERC20Metadata(apeCoin).decimals());
|
|
196
|
-
}
|
|
197
|
-
}
|
package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol
DELETED
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity 0.8.17;
|
|
3
|
-
|
|
4
|
-
import "./base/PendleAuraBalancerStableLPSY.sol";
|
|
5
|
-
import "../../StEthHelper.sol";
|
|
6
|
-
import "./base/ComposableStable/ComposableStablePreview.sol";
|
|
7
|
-
|
|
8
|
-
contract PendleAura3EthSY is PendleAuraBalancerStableLPSY, StEthHelper {
|
|
9
|
-
address public constant SFRXETH = 0xac3E018457B222d93114458476f3E3416Abbe38F;
|
|
10
|
-
address public constant RETH = 0xae78736Cd615f374D3085123A210448E74Fc6393;
|
|
11
|
-
|
|
12
|
-
uint256 internal constant AURA_PID = 13;
|
|
13
|
-
address internal constant LP = 0x8e85e97ed19C0fa13B2549309965291fbbc0048b;
|
|
14
|
-
|
|
15
|
-
uint256 public constant BPT_INDEX = 1;
|
|
16
|
-
bool public constant NO_TOKENS_EXEMPT = true;
|
|
17
|
-
bool public constant ALL_TOKENS_EXEMPT = false;
|
|
18
|
-
|
|
19
|
-
constructor(
|
|
20
|
-
string memory _name,
|
|
21
|
-
string memory _symbol,
|
|
22
|
-
ComposableStablePreview _previewHelper
|
|
23
|
-
) PendleAuraBalancerStableLPSY(_name, _symbol, LP, AURA_PID, _previewHelper) {}
|
|
24
|
-
|
|
25
|
-
function _deposit(address tokenIn, uint256 amount)
|
|
26
|
-
internal
|
|
27
|
-
virtual
|
|
28
|
-
override
|
|
29
|
-
returns (uint256 amountSharesOut)
|
|
30
|
-
{
|
|
31
|
-
if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
|
|
32
|
-
uint256 amountWstETH = _depositWstETH(tokenIn, amount);
|
|
33
|
-
amountSharesOut = super._deposit(WSTETH, amountWstETH);
|
|
34
|
-
} else {
|
|
35
|
-
amountSharesOut = super._deposit(tokenIn, amount);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
function _redeem(
|
|
40
|
-
address receiver,
|
|
41
|
-
address tokenOut,
|
|
42
|
-
uint256 amountSharesToRedeem
|
|
43
|
-
) internal virtual override returns (uint256 amountTokenOut) {
|
|
44
|
-
if (tokenOut == STETH) {
|
|
45
|
-
uint256 amountWstETH = super._redeem(address(this), WSTETH, amountSharesToRedeem);
|
|
46
|
-
amountTokenOut = _redeemWstETH(receiver, amountWstETH);
|
|
47
|
-
} else {
|
|
48
|
-
amountTokenOut = super._redeem(receiver, tokenOut, amountSharesToRedeem);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
function _previewDeposit(address tokenIn, uint256 amountTokenToDeposit)
|
|
53
|
-
internal
|
|
54
|
-
view
|
|
55
|
-
virtual
|
|
56
|
-
override
|
|
57
|
-
returns (uint256 amountSharesOut)
|
|
58
|
-
{
|
|
59
|
-
if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
|
|
60
|
-
uint256 amountWstETH = _previewDepositWstETH(tokenIn, amountTokenToDeposit);
|
|
61
|
-
amountSharesOut = super._previewDeposit(WSTETH, amountWstETH);
|
|
62
|
-
} else {
|
|
63
|
-
amountSharesOut = super._previewDeposit(tokenIn, amountTokenToDeposit);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
function _previewRedeem(address tokenOut, uint256 amountSharesToRedeem)
|
|
68
|
-
internal
|
|
69
|
-
view
|
|
70
|
-
virtual
|
|
71
|
-
override
|
|
72
|
-
returns (uint256 amountTokenOut)
|
|
73
|
-
{
|
|
74
|
-
if (tokenOut == STETH) {
|
|
75
|
-
uint256 amountWstETH = super._previewRedeem(WSTETH, amountSharesToRedeem);
|
|
76
|
-
amountTokenOut = _previewRedeemWstETH(amountWstETH);
|
|
77
|
-
} else {
|
|
78
|
-
amountTokenOut = super._previewRedeem(tokenOut, amountSharesToRedeem);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
function _getImmutablePoolData() internal view virtual override returns (bytes memory ret) {
|
|
83
|
-
ComposableStablePreview.ImmutableData memory res;
|
|
84
|
-
res.poolTokens = _getPoolTokenAddresses();
|
|
85
|
-
res.rateProviders = _getRateProviders();
|
|
86
|
-
res.rawScalingFactors = _getRawScalingFactors();
|
|
87
|
-
res.isExemptFromYieldProtocolFee = _getExemption();
|
|
88
|
-
res.LP = LP;
|
|
89
|
-
res.noTokensExempt = NO_TOKENS_EXEMPT;
|
|
90
|
-
res.allTokensExempt = ALL_TOKENS_EXEMPT;
|
|
91
|
-
res.bptIndex = BPT_INDEX;
|
|
92
|
-
res.totalTokens = res.poolTokens.length;
|
|
93
|
-
|
|
94
|
-
return abi.encode(res);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
function _getPoolTokenAddresses()
|
|
98
|
-
internal
|
|
99
|
-
view
|
|
100
|
-
virtual
|
|
101
|
-
override
|
|
102
|
-
returns (address[] memory res)
|
|
103
|
-
{
|
|
104
|
-
res = new address[](4);
|
|
105
|
-
res[0] = WSTETH;
|
|
106
|
-
res[1] = LP;
|
|
107
|
-
res[2] = SFRXETH;
|
|
108
|
-
res[3] = RETH;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
function _getBPTIndex() internal view virtual override returns (uint256) {
|
|
112
|
-
return BPT_INDEX;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
function _getRateProviders() internal view virtual returns (address[] memory res) {
|
|
116
|
-
res = new address[](4);
|
|
117
|
-
res[0] = 0x72D07D7DcA67b8A406aD1Ec34ce969c90bFEE768;
|
|
118
|
-
res[1] = 0x0000000000000000000000000000000000000000;
|
|
119
|
-
res[2] = 0x302013E7936a39c358d07A3Df55dc94EC417E3a1;
|
|
120
|
-
res[3] = 0x1a8F81c256aee9C640e14bB0453ce247ea0DFE6F;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
function _getRawScalingFactors() internal view virtual returns (uint256[] memory res) {
|
|
124
|
-
res = new uint256[](4);
|
|
125
|
-
res[0] = res[1] = res[2] = res[3] = 1e18;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
function _getExemption() internal view virtual returns (bool[] memory res) {
|
|
129
|
-
res = new bool[](4);
|
|
130
|
-
res[0] = res[1] = res[2] = res[3] = false;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
function getTokensIn() public view virtual override returns (address[] memory res) {
|
|
134
|
-
res = new address[](7);
|
|
135
|
-
res[0] = WSTETH;
|
|
136
|
-
res[1] = LP;
|
|
137
|
-
res[2] = SFRXETH;
|
|
138
|
-
res[3] = RETH;
|
|
139
|
-
res[4] = NATIVE;
|
|
140
|
-
res[5] = WETH;
|
|
141
|
-
res[6] = STETH;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
function getTokensOut() public view virtual override returns (address[] memory res) {
|
|
145
|
-
res = new address[](5);
|
|
146
|
-
res[0] = WSTETH;
|
|
147
|
-
res[1] = LP;
|
|
148
|
-
res[2] = SFRXETH;
|
|
149
|
-
res[3] = RETH;
|
|
150
|
-
res[4] = STETH;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
function isValidTokenIn(address token) public view virtual override returns (bool) {
|
|
154
|
-
return (token == WSTETH ||
|
|
155
|
-
token == LP ||
|
|
156
|
-
token == SFRXETH ||
|
|
157
|
-
token == RETH ||
|
|
158
|
-
token == NATIVE ||
|
|
159
|
-
token == WETH ||
|
|
160
|
-
token == STETH);
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
function isValidTokenOut(address token) public view virtual override returns (bool) {
|
|
164
|
-
return (token == WSTETH ||
|
|
165
|
-
token == LP ||
|
|
166
|
-
token == SFRXETH ||
|
|
167
|
-
token == RETH ||
|
|
168
|
-
token == STETH);
|
|
169
|
-
}
|
|
170
|
-
}
|
package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol
DELETED
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity 0.8.17;
|
|
3
|
-
|
|
4
|
-
import "./base/PendleAuraBalancerStableLPSY.sol";
|
|
5
|
-
import "../../StEthHelper.sol";
|
|
6
|
-
import "./base/ComposableStable/ComposableStablePreview.sol";
|
|
7
|
-
|
|
8
|
-
contract PendleAuraCbethWstethSY is PendleAuraBalancerStableLPSY, StEthHelper {
|
|
9
|
-
address public constant CBETH = 0xBe9895146f7AF43049ca1c1AE358B0541Ea49704;
|
|
10
|
-
|
|
11
|
-
uint256 internal constant AURA_PID = 37;
|
|
12
|
-
address internal constant LP = 0x4EdcB2B46377530Bc18BB4D2c7Fe46a992c73e10;
|
|
13
|
-
|
|
14
|
-
uint256 public constant BPT_INDEX = 0;
|
|
15
|
-
bool public constant NO_TOKENS_EXEMPT = true;
|
|
16
|
-
bool public constant ALL_TOKENS_EXEMPT = false;
|
|
17
|
-
|
|
18
|
-
constructor(
|
|
19
|
-
string memory _name,
|
|
20
|
-
string memory _symbol,
|
|
21
|
-
ComposableStablePreview _previewHelper
|
|
22
|
-
) PendleAuraBalancerStableLPSY(_name, _symbol, LP, AURA_PID, _previewHelper) {}
|
|
23
|
-
|
|
24
|
-
function _deposit(address tokenIn, uint256 amount)
|
|
25
|
-
internal
|
|
26
|
-
virtual
|
|
27
|
-
override
|
|
28
|
-
returns (uint256 amountSharesOut)
|
|
29
|
-
{
|
|
30
|
-
if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
|
|
31
|
-
uint256 amountWstETH = _depositWstETH(tokenIn, amount);
|
|
32
|
-
amountSharesOut = super._deposit(WSTETH, amountWstETH);
|
|
33
|
-
} else {
|
|
34
|
-
amountSharesOut = super._deposit(tokenIn, amount);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
function _redeem(
|
|
39
|
-
address receiver,
|
|
40
|
-
address tokenOut,
|
|
41
|
-
uint256 amountSharesToRedeem
|
|
42
|
-
) internal virtual override returns (uint256 amountTokenOut) {
|
|
43
|
-
if (tokenOut == STETH) {
|
|
44
|
-
uint256 amountWstETH = super._redeem(address(this), WSTETH, amountSharesToRedeem);
|
|
45
|
-
amountTokenOut = _redeemWstETH(receiver, amountWstETH);
|
|
46
|
-
} else {
|
|
47
|
-
amountTokenOut = super._redeem(receiver, tokenOut, amountSharesToRedeem);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
function _previewDeposit(address tokenIn, uint256 amountTokenToDeposit)
|
|
52
|
-
internal
|
|
53
|
-
view
|
|
54
|
-
virtual
|
|
55
|
-
override
|
|
56
|
-
returns (uint256 amountSharesOut)
|
|
57
|
-
{
|
|
58
|
-
if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
|
|
59
|
-
uint256 amountWstETH = _previewDepositWstETH(tokenIn, amountTokenToDeposit);
|
|
60
|
-
amountSharesOut = super._previewDeposit(WSTETH, amountWstETH);
|
|
61
|
-
} else {
|
|
62
|
-
amountSharesOut = super._previewDeposit(tokenIn, amountTokenToDeposit);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
function _previewRedeem(address tokenOut, uint256 amountSharesToRedeem)
|
|
67
|
-
internal
|
|
68
|
-
view
|
|
69
|
-
virtual
|
|
70
|
-
override
|
|
71
|
-
returns (uint256 amountTokenOut)
|
|
72
|
-
{
|
|
73
|
-
if (tokenOut == STETH) {
|
|
74
|
-
uint256 amountWstETH = super._previewRedeem(WSTETH, amountSharesToRedeem);
|
|
75
|
-
amountTokenOut = _previewRedeemWstETH(amountWstETH);
|
|
76
|
-
} else {
|
|
77
|
-
amountTokenOut = super._previewRedeem(tokenOut, amountSharesToRedeem);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
function _getImmutablePoolData() internal view virtual override returns (bytes memory ret) {
|
|
82
|
-
ComposableStablePreview.ImmutableData memory res;
|
|
83
|
-
res.poolTokens = _getPoolTokenAddresses();
|
|
84
|
-
res.rateProviders = _getRateProviders();
|
|
85
|
-
res.rawScalingFactors = _getRawScalingFactors();
|
|
86
|
-
res.isExemptFromYieldProtocolFee = _getExemption();
|
|
87
|
-
res.LP = LP;
|
|
88
|
-
res.noTokensExempt = NO_TOKENS_EXEMPT;
|
|
89
|
-
res.allTokensExempt = ALL_TOKENS_EXEMPT;
|
|
90
|
-
res.bptIndex = BPT_INDEX;
|
|
91
|
-
res.totalTokens = res.poolTokens.length;
|
|
92
|
-
|
|
93
|
-
return abi.encode(res);
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
function _getPoolTokenAddresses()
|
|
97
|
-
internal
|
|
98
|
-
view
|
|
99
|
-
virtual
|
|
100
|
-
override
|
|
101
|
-
returns (address[] memory res)
|
|
102
|
-
{
|
|
103
|
-
res = new address[](3);
|
|
104
|
-
res[0] = LP;
|
|
105
|
-
res[1] = WSTETH;
|
|
106
|
-
res[2] = CBETH;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
function _getBPTIndex() internal view virtual override returns (uint256) {
|
|
110
|
-
return BPT_INDEX;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function _getRateProviders() internal view virtual returns (address[] memory res) {
|
|
114
|
-
res = new address[](3);
|
|
115
|
-
res[0] = 0x0000000000000000000000000000000000000000;
|
|
116
|
-
res[1] = 0x72D07D7DcA67b8A406aD1Ec34ce969c90bFEE768;
|
|
117
|
-
res[2] = 0x7311E4BB8a72e7B300c5B8BDE4de6CdaA822a5b1;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
function _getRawScalingFactors() internal view virtual returns (uint256[] memory res) {
|
|
121
|
-
res = new uint256[](3);
|
|
122
|
-
res[0] = res[1] = res[2] = 1e18;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
function _getExemption() internal view virtual returns (bool[] memory res) {
|
|
126
|
-
res = new bool[](3);
|
|
127
|
-
res[0] = res[1] = res[2] = false;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
function getTokensIn() public view virtual override returns (address[] memory res) {
|
|
131
|
-
res = new address[](6);
|
|
132
|
-
res[0] = WSTETH;
|
|
133
|
-
res[1] = STETH;
|
|
134
|
-
res[2] = NATIVE;
|
|
135
|
-
res[3] = WETH;
|
|
136
|
-
// All 4 converted to WSTETH
|
|
137
|
-
res[4] = CBETH;
|
|
138
|
-
res[5] = LP;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
function getTokensOut() public view virtual override returns (address[] memory res) {
|
|
142
|
-
res = new address[](4);
|
|
143
|
-
res[0] = WSTETH;
|
|
144
|
-
res[1] = STETH;
|
|
145
|
-
//
|
|
146
|
-
res[2] = CBETH;
|
|
147
|
-
res[3] = LP;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
function isValidTokenIn(address token) public view virtual override returns (bool) {
|
|
151
|
-
return (token == WSTETH ||
|
|
152
|
-
token == STETH ||
|
|
153
|
-
token == NATIVE ||
|
|
154
|
-
token == WETH ||
|
|
155
|
-
token == CBETH ||
|
|
156
|
-
token == LP);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
function isValidTokenOut(address token) public view virtual override returns (bool) {
|
|
160
|
-
return (token == WSTETH || token == STETH || token == CBETH || token == LP);
|
|
161
|
-
}
|
|
162
|
-
}
|
package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol
DELETED
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity 0.8.17;
|
|
3
|
-
|
|
4
|
-
import "./base/PendleAuraBalancerStableLPSY.sol";
|
|
5
|
-
import "../../../../interfaces/IWETH.sol";
|
|
6
|
-
import "./base/MetaStable/MetaStablePreview.sol";
|
|
7
|
-
|
|
8
|
-
contract PendleAuraWethRethSY is PendleAuraBalancerStableLPSY {
|
|
9
|
-
address public constant RETH = 0xae78736Cd615f374D3085123A210448E74Fc6393;
|
|
10
|
-
address public constant WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
|
|
11
|
-
|
|
12
|
-
uint256 internal constant AURA_PID = 15;
|
|
13
|
-
address internal constant LP = 0x1E19CF2D73a72Ef1332C882F20534B6519Be0276;
|
|
14
|
-
|
|
15
|
-
constructor(
|
|
16
|
-
string memory _name,
|
|
17
|
-
string memory _symbol,
|
|
18
|
-
MetaStablePreview _previewHelper
|
|
19
|
-
) PendleAuraBalancerStableLPSY(_name, _symbol, LP, AURA_PID, _previewHelper) {}
|
|
20
|
-
|
|
21
|
-
function _deposit(address tokenIn, uint256 amount)
|
|
22
|
-
internal
|
|
23
|
-
virtual
|
|
24
|
-
override
|
|
25
|
-
returns (uint256 amountSharesOut)
|
|
26
|
-
{
|
|
27
|
-
if (tokenIn == NATIVE) {
|
|
28
|
-
IWETH(WETH).deposit{ value: amount }();
|
|
29
|
-
amountSharesOut = super._deposit(WETH, amount);
|
|
30
|
-
} else {
|
|
31
|
-
amountSharesOut = super._deposit(tokenIn, amount);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
function _redeem(
|
|
36
|
-
address receiver,
|
|
37
|
-
address tokenOut,
|
|
38
|
-
uint256 amountSharesToRedeem
|
|
39
|
-
) internal virtual override returns (uint256 amountTokenOut) {
|
|
40
|
-
if (tokenOut == NATIVE) {
|
|
41
|
-
amountTokenOut = super._redeem(address(this), WETH, amountSharesToRedeem);
|
|
42
|
-
IWETH(WETH).withdraw(amountTokenOut);
|
|
43
|
-
_transferOut(NATIVE, receiver, amountTokenOut);
|
|
44
|
-
} else {
|
|
45
|
-
amountTokenOut = super._redeem(receiver, tokenOut, amountSharesToRedeem);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
function _previewDeposit(address tokenIn, uint256 amountTokenToDeposit)
|
|
50
|
-
internal
|
|
51
|
-
view
|
|
52
|
-
virtual
|
|
53
|
-
override
|
|
54
|
-
returns (uint256 amountSharesOut)
|
|
55
|
-
{
|
|
56
|
-
if (tokenIn == NATIVE) {
|
|
57
|
-
amountSharesOut = super._previewDeposit(WETH, amountTokenToDeposit);
|
|
58
|
-
} else {
|
|
59
|
-
amountSharesOut = super._previewDeposit(tokenIn, amountTokenToDeposit);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
function _previewRedeem(address tokenOut, uint256 amountSharesToRedeem)
|
|
64
|
-
internal
|
|
65
|
-
view
|
|
66
|
-
virtual
|
|
67
|
-
override
|
|
68
|
-
returns (uint256 amountTokenOut)
|
|
69
|
-
{
|
|
70
|
-
if (tokenOut == NATIVE) {
|
|
71
|
-
amountTokenOut = super._previewRedeem(WETH, amountSharesToRedeem);
|
|
72
|
-
} else {
|
|
73
|
-
amountTokenOut = super._previewRedeem(tokenOut, amountSharesToRedeem);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
function _getPoolTokenAddresses()
|
|
78
|
-
internal
|
|
79
|
-
view
|
|
80
|
-
virtual
|
|
81
|
-
override
|
|
82
|
-
returns (address[] memory res)
|
|
83
|
-
{
|
|
84
|
-
res = new address[](2);
|
|
85
|
-
res[0] = RETH;
|
|
86
|
-
res[1] = WETH;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
function _getRateProviders() internal view virtual returns (address[] memory res) {
|
|
90
|
-
res = new address[](2);
|
|
91
|
-
res[0] = 0x1a8F81c256aee9C640e14bB0453ce247ea0DFE6F;
|
|
92
|
-
res[1] = 0x0000000000000000000000000000000000000000;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
function _getRawScalingFactors() internal view virtual returns (uint256[] memory res) {
|
|
96
|
-
res = new uint256[](2);
|
|
97
|
-
res[0] = 1e18;
|
|
98
|
-
res[1] = 1e18;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
function _getImmutablePoolData() internal view virtual override returns (bytes memory) {
|
|
102
|
-
MetaStablePreview.ImmutableData memory res;
|
|
103
|
-
res.LP = LP;
|
|
104
|
-
res.poolTokens = _getPoolTokenAddresses();
|
|
105
|
-
res.rateProviders = _getRateProviders();
|
|
106
|
-
res.rawScalingFactors = _getRawScalingFactors();
|
|
107
|
-
|
|
108
|
-
return abi.encode(res);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
function getTokensIn() public view virtual override returns (address[] memory res) {
|
|
112
|
-
res = new address[](4);
|
|
113
|
-
res[0] = LP;
|
|
114
|
-
res[1] = RETH;
|
|
115
|
-
res[2] = WETH;
|
|
116
|
-
res[3] = NATIVE;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
function getTokensOut() public view virtual override returns (address[] memory res) {
|
|
120
|
-
res = new address[](4);
|
|
121
|
-
res[0] = LP;
|
|
122
|
-
res[1] = RETH;
|
|
123
|
-
res[2] = WETH;
|
|
124
|
-
res[3] = NATIVE;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
function isValidTokenIn(address token) public view virtual override returns (bool) {
|
|
128
|
-
return (token == LP || token == RETH || token == WETH || token == NATIVE);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
function isValidTokenOut(address token) public view virtual override returns (bool) {
|
|
132
|
-
return (token == LP || token == RETH || token == WETH || token == NATIVE);
|
|
133
|
-
}
|
|
134
|
-
}
|