@pendle/core-v2 0.9.4-beta → 0.10.2-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/SuperComposableYield/SCY-implementations/AaveV3/PendleAaveV3SCY.sol/PendleAaveV3SCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/AaveV3/PendleAaveV3SCY.sol/PendleAaveV3SCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/AaveV3/WadRayMath.sol/WadRayMath.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiSAvaxSCY.sol/PendleQiSAvaxSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiSAvaxSCY.sol/PendleQiSAvaxSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol/PendleQiTokenSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol/PendleQiTokenSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol/PendleSAvaxSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol/PendleSAvaxSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol/PendleEulerSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol/PendleEulerSCY.json +7 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleERC4626SCY.sol/PendleERC4626SCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleERC4626SCY.sol/PendleERC4626SCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleStargateSCY.sol/PendleStargateSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleStargateSCY.sol/PendleStargateSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleWstEthSCY.sol/PendleWstEthSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleWstEthSCY.sol/PendleWstEthSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleYearnVaultSCY.sol/PendleYearnVaultSCY.dbg.json +4 -0
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/{PendleYearnVaultScy.sol → PendleYearnVaultSCY.sol}/PendleYearnVaultSCY.json +3 -3
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol/PendleSJoeSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol/PendleSJoeSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/base-implementations/SCYBase.sol/SCYBase.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/base-implementations/SCYBaseWithRewards.sol/SCYBaseWithRewards.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerReceiverUpg.sol/CelerReceiverUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerReceiverUpg.sol/CelerReceiverUpg.json +67 -5
- package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerSenderUpg.sol/CelerSenderUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerSenderUpg.sol/CelerSenderUpg.json +63 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.json +65 -3
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +74 -10
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +79 -15
- package/build/artifacts/contracts/core/LiquidityMining/PendleGauge.sol/PendleGauge.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +204 -123
- package/build/artifacts/contracts/core/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.json +127 -73
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +93 -34
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +90 -14
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.json +14 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +139 -37
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +84 -56
- package/build/artifacts/contracts/core/PendleERC20.sol/PendleERC20.dbg.json +1 -1
- package/build/artifacts/contracts/core/PendleRouter.sol/PendleRouter.dbg.json +1 -1
- package/build/artifacts/contracts/core/PendleRouter.sol/PendleRouter.json +122 -11
- 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 +96 -40
- 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/actions/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +4 -0
- package/build/artifacts/contracts/core/actions/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +1025 -0
- package/build/artifacts/contracts/core/actions/ActionCallback.sol/ActionCallback.dbg.json +1 -1
- package/build/artifacts/contracts/core/actions/ActionCallback.sol/ActionCallback.json +2 -2
- package/build/artifacts/contracts/core/actions/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +4 -0
- package/build/artifacts/contracts/core/actions/ActionMintRedeem.sol/ActionMintRedeem.json +622 -0
- package/build/artifacts/contracts/core/actions/ActionMisc.sol/ActionMisc.dbg.json +4 -0
- package/build/artifacts/contracts/core/actions/ActionMisc.sol/ActionMisc.json +35 -0
- package/build/artifacts/contracts/core/actions/ActionSwapPT.sol/ActionSwapPT.dbg.json +4 -0
- package/build/artifacts/contracts/core/actions/ActionSwapPT.sol/ActionSwapPT.json +459 -0
- package/build/artifacts/contracts/core/actions/ActionSwapYT.sol/ActionSwapYT.dbg.json +4 -0
- package/build/artifacts/contracts/core/actions/ActionSwapYT.sol/ActionSwapYT.json +459 -0
- package/build/artifacts/contracts/core/actions/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +4 -0
- package/build/artifacts/contracts/core/actions/base/{ActionSCYAndPTBase.sol/ActionSCYAndPTBase.json → ActionBaseMintRedeem.sol/ActionBaseMintRedeem.json} +2 -2
- package/build/artifacts/contracts/core/actions/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAToken.sol/IAToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAavePool.sol/IAavePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAaveRewardsController.sol/IAaveRewardsController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.json +24 -0
- package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ICelerMessageBus.sol/ICelerMessageBus.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ICelerMessageReceiverApp.sol/ICelerMessageReceiverApp.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IEulerEToken.sol/IEulerEToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IEulerMarkets.sol/IEulerMarkets.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/{IPActionCore.sol/IPActionCore.json → IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.json} +141 -912
- package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.json +598 -0
- package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.json +35 -0
- package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.json +435 -0
- package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/{IPActionYT.sol/IPActionYT.json → IPActionSwapYT.sol/IPActionSwapYT.json} +23 -11
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +323 -47
- package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +4 -0
- package/build/artifacts/contracts/{core/actions/base/ActionSCYAndPYBase.sol/ActionSCYAndPYBase.json → interfaces/IPGauge.sol/IPGauge.json} +5 -5
- 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/IPGovernanceManager.sol/IPGovernanceManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.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 +72 -29
- package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.json +0 -11
- package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPermissionsV2Upg.sol/IPermissionsV2Upg.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.json +0 -37
- package/build/artifacts/contracts/interfaces/IPVotingEscrow.sol/IPVotingEscrow.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 +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/IREDACTEDStaking.sol/IREDACTEDStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.json +1 -1
- package/build/artifacts/contracts/interfaces/ISAvax.sol/ISAvax.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ISJoe.sol/ISJoe.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/ISuperComposableYield.sol/ISuperComposableYield.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWAvax.sol/IWAvax.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWXBTRFLY.sol/IWXBTRFLY.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IYearnVault.sol/IYearnVault.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/OracleLib.sol/OracleLib.dbg.json +4 -0
- package/build/artifacts/contracts/libraries/OracleLib.sol/OracleLib.json +74 -0
- package/build/artifacts/contracts/libraries/RewardManager.sol/RewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/SCY/SCYUtils.sol/SCYUtils.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/ArrayLib.sol/ArrayLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/PYIndex.sol/PYIndexLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/PYIndex.sol/PYIndexLib.json +2 -2
- package/build/artifacts/contracts/libraries/helpers/SSTORE2Deployer.sol/SSTORE2Deployer.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/TokenHelper.sol/TokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/MarketApproxLib.sol/MarketApproxLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/MarketApproxLib.sol/MarketApproxLib.json +2 -2
- package/build/artifacts/contracts/libraries/math/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/MarketMathCore.sol/MarketMathCore.json +2 -2
- package/build/artifacts/contracts/libraries/math/Math.sol/Math.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/WeekMath.sol/WeekMath.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/solmate/SSTORE2.sol/SSTORE2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.json +93 -0
- package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +427 -39
- package/build/artifacts/contracts/periphery/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +4 -0
- package/build/artifacts/contracts/periphery/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.json +86 -0
- package/build/artifacts/contracts/periphery/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +4 -0
- package/build/artifacts/contracts/periphery/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.json +37 -0
- package/build/artifacts/contracts/periphery/PendleGovernanceManager.sol/PendleGovernanceManager.dbg.json +1 -1
- package/build/artifacts/contracts/periphery/PermissionsV2Upg.sol/PermissionsV2Upg.dbg.json +1 -1
- package/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol +8 -0
- package/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol +1 -1
- package/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol +11 -5
- package/contracts/SuperComposableYield/SCY-implementations/PendleStargateSCY.sol +0 -1
- package/contracts/SuperComposableYield/SCY-implementations/{PendleYearnVaultScy.sol → PendleYearnVaultSCY.sol} +0 -0
- package/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol +1 -0
- package/contracts/SuperComposableYield/base-implementations/SCYBase.sol +1 -1
- package/contracts/core/LiquidityMining/CelerAbstracts/CelerReceiverUpg.sol +7 -7
- package/contracts/core/LiquidityMining/CelerAbstracts/CelerSenderUpg.sol +7 -6
- package/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +4 -5
- package/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol +6 -3
- package/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol +6 -3
- package/contracts/core/LiquidityMining/PendleGauge.sol +3 -2
- package/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +22 -28
- package/contracts/core/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +71 -13
- package/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +7 -4
- package/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +6 -2
- package/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol +4 -3
- package/contracts/core/Market/PendleMarket.sol +93 -57
- package/contracts/core/Market/PendleMarketFactory.sol +18 -33
- package/contracts/core/PendleRouter.sol +60 -52
- package/contracts/core/YieldContracts/PendleYieldContractFactory.sol +12 -12
- package/contracts/core/YieldContracts/PendleYieldToken.sol +1 -1
- package/contracts/core/actions/ActionAddRemoveLiq.sol +366 -0
- package/contracts/core/actions/ActionCallback.sol +6 -6
- package/contracts/core/actions/ActionMintRedeem.sol +124 -0
- package/contracts/core/actions/ActionMisc.sol +24 -0
- package/contracts/core/actions/ActionSwapPT.sol +199 -0
- package/contracts/core/actions/{base/ActionSCYAndYTBase.sol → ActionSwapYT.sol} +109 -74
- package/contracts/core/actions/base/{ActionSCYAndPYBase.sol → ActionBaseMintRedeem.sol} +9 -8
- package/contracts/interfaces/IBenQiComptroller.sol +2 -0
- package/contracts/interfaces/IPActionAddRemoveLiq.sol +188 -0
- package/contracts/interfaces/IPActionMintRedeem.sol +115 -0
- package/contracts/interfaces/IPActionMisc.sol +9 -0
- package/contracts/interfaces/IPActionSwapPT.sol +69 -0
- package/contracts/interfaces/{IPActionYT.sol → IPActionSwapYT.sol} +12 -10
- package/contracts/interfaces/IPAllAction.sol +12 -3
- package/contracts/interfaces/IPGauge.sol +6 -0
- package/contracts/interfaces/IPGaugeController.sol +0 -2
- package/contracts/interfaces/IPMarket.sol +28 -10
- package/contracts/interfaces/IPMarketFactory.sol +1 -7
- package/contracts/interfaces/IPVeToken.sol +1 -1
- package/contracts/interfaces/IPVotingController.sol +0 -2
- package/contracts/interfaces/IRewardManager.sol +1 -1
- package/contracts/libraries/OracleLib.sol +214 -0
- package/contracts/libraries/RewardManagerAbstract.sol +1 -1
- package/contracts/libraries/math/MarketApproxLib.sol +227 -14
- package/contracts/libraries/math/MarketMathCore.sol +0 -33
- package/contracts/offchain-helpers/MarketMathStatic.sol +565 -0
- package/contracts/offchain-helpers/RouterStatic.sol +187 -251
- package/contracts/periphery/BoringOwnableUpgradeable.sol +62 -0
- package/deployments/43113-core.json +7 -8
- package/deployments/43113-markets/benqi-market-590025.json +8 -0
- package/deployments/43113-markets/benqi-market-c93916.json +8 -0
- package/deployments/80001-core.json +6 -7
- package/deployments/80001-markets/benqi-market-3b8BD1.json +8 -0
- package/deployments/80001-markets/benqi-market-b61e7f.json +8 -0
- package/package.json +11 -11
- package/typechain-types/ActionAddRemoveLiq.ts +1037 -0
- package/typechain-types/ActionBaseMintRedeem.ts +87 -0
- package/typechain-types/ActionCore.ts +21 -20
- package/typechain-types/ActionMintRedeem.ts +665 -0
- package/typechain-types/ActionMisc.ts +105 -0
- package/typechain-types/ActionSwapPT.ts +515 -0
- package/typechain-types/ActionSwapYT.ts +515 -0
- package/typechain-types/ActionYT.ts +5 -4
- package/typechain-types/BoringOwnable.ts +194 -0
- package/typechain-types/BoringOwnableData.ts +100 -0
- package/typechain-types/BoringOwnableUpgradeable.ts +194 -0
- package/typechain-types/BoringOwnableUpgradeableData.ts +100 -0
- package/typechain-types/CelerReceiverUpg.ts +124 -19
- package/typechain-types/CelerSenderUpg.ts +116 -11
- package/typechain-types/IBenQiComptroller.ts +39 -0
- package/typechain-types/IPActionAddRemoveLiq.ts +1018 -0
- package/typechain-types/IPActionCore.ts +21 -20
- package/typechain-types/IPActionMintRedeem.ts +646 -0
- package/typechain-types/IPActionMisc.ts +105 -0
- package/typechain-types/IPActionSwapPT.ts +496 -0
- package/typechain-types/IPActionSwapYT.ts +496 -0
- package/typechain-types/IPActionYT.ts +5 -4
- package/typechain-types/IPAllAction.ts +431 -193
- package/typechain-types/IPGauge.ts +87 -0
- package/typechain-types/IPMarket.ts +133 -50
- package/typechain-types/IPMarketFactory.ts +7 -17
- package/typechain-types/IPVeToken.ts +8 -8
- package/typechain-types/IPVotingController.ts +0 -20
- package/typechain-types/IPYieldToken.ts +3 -3
- package/typechain-types/IRewardManager.ts +3 -3
- package/typechain-types/MarketMathStatic.ts +198 -0
- package/typechain-types/OracleLib.ts +124 -0
- package/typechain-types/PendleGaugeControllerBaseUpg.ts +118 -15
- package/typechain-types/PendleGaugeControllerMainchainUpg.ts +136 -9
- package/typechain-types/PendleGaugeControllerSidechainUpg.ts +138 -11
- package/typechain-types/PendleMarket.ts +178 -59
- package/typechain-types/PendleMarketFactory.ts +135 -61
- package/typechain-types/PendleRouter.ts +201 -31
- package/typechain-types/PendleVotingControllerUpg.ts +325 -149
- package/typechain-types/PendleYieldContractFactory.ts +144 -21
- package/typechain-types/RouterStatic.ts +344 -64
- package/typechain-types/VotingControllerStorageUpg.ts +182 -113
- package/typechain-types/VotingEscrowPendleMainchain.ts +170 -63
- package/typechain-types/VotingEscrowPendleSidechain.ts +163 -17
- package/typechain-types/VotingEscrowTokenBase.ts +27 -8
- package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1083 -0
- package/typechain-types/factories/ActionBaseMintRedeem__factory.ts +43 -0
- package/typechain-types/factories/ActionCallback__factory.ts +1 -1
- package/typechain-types/factories/ActionCore__factory.ts +6 -6
- package/typechain-types/factories/ActionMintRedeem__factory.ts +680 -0
- package/typechain-types/factories/ActionMisc__factory.ts +85 -0
- package/typechain-types/factories/ActionSwapPT__factory.ts +514 -0
- package/typechain-types/factories/ActionSwapYT__factory.ts +514 -0
- package/typechain-types/factories/ActionYT__factory.ts +2 -2
- package/typechain-types/factories/BoringOwnableData__factory.ts +90 -0
- package/typechain-types/factories/BoringOwnableUpgradeableData__factory.ts +96 -0
- package/typechain-types/factories/BoringOwnableUpgradeable__factory.ts +143 -0
- package/typechain-types/factories/BoringOwnable__factory.ts +141 -0
- package/typechain-types/factories/CelerReceiverUpg__factory.ts +67 -5
- package/typechain-types/factories/CelerSenderUpg__factory.ts +63 -1
- package/typechain-types/factories/IBenQiComptroller__factory.ts +24 -0
- package/typechain-types/factories/IPActionAddRemoveLiq__factory.ts +1020 -0
- package/typechain-types/factories/IPActionCore__factory.ts +5 -5
- package/typechain-types/factories/IPActionMintRedeem__factory.ts +613 -0
- package/typechain-types/factories/IPActionMisc__factory.ts +47 -0
- package/typechain-types/factories/IPActionSwapPT__factory.ts +450 -0
- package/typechain-types/factories/IPActionSwapYT__factory.ts +450 -0
- package/typechain-types/factories/IPActionYT__factory.ts +1 -1
- package/typechain-types/factories/IPAllAction__factory.ts +323 -47
- package/typechain-types/factories/IPGauge__factory.ts +36 -0
- package/typechain-types/factories/IPMarketFactory__factory.ts +0 -11
- package/typechain-types/factories/IPMarket__factory.ts +72 -29
- package/typechain-types/factories/IPVeToken__factory.ts +1 -1
- package/typechain-types/factories/IPVotingController__factory.ts +0 -37
- package/typechain-types/factories/IPYieldToken__factory.ts +1 -1
- package/typechain-types/factories/IRewardManager__factory.ts +1 -1
- package/typechain-types/factories/MarketMathStatic__factory.ts +146 -0
- package/typechain-types/factories/OracleLib__factory.ts +124 -0
- package/typechain-types/factories/PendleAaveV3SCY__factory.ts +1 -1
- package/typechain-types/factories/PendleERC4626SCY__factory.ts +1 -1
- package/typechain-types/factories/PendleEulerSCY__factory.ts +10 -1
- package/typechain-types/factories/PendleGaugeControllerBaseUpg__factory.ts +65 -3
- package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +73 -13
- package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +79 -23
- package/typechain-types/factories/PendleMarketFactory__factory.ts +84 -86
- package/typechain-types/factories/PendleMarket__factory.ts +131 -37
- package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
- package/typechain-types/factories/PendleQiSAvaxSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleRouter__factory.ts +141 -22
- package/typechain-types/factories/PendleSAvaxSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleSJoeSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleStargateSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +203 -129
- package/typechain-types/factories/PendleWstEthSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleYearnVaultSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldContractFactory__factory.ts +97 -72
- package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
- package/typechain-types/factories/RouterStatic__factory.ts +233 -39
- package/typechain-types/factories/VotingControllerStorageUpg__factory.ts +126 -72
- package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +93 -41
- package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +90 -17
- package/typechain-types/factories/VotingEscrowTokenBase__factory.ts +14 -1
- package/typechain-types/hardhat.d.ts +162 -0
- package/typechain-types/index.ts +36 -0
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleYearnVaultScy.sol/PendleYearnVaultSCY.dbg.json +0 -4
- package/build/artifacts/contracts/core/actions/ActionCore.sol/ActionCore.dbg.json +0 -4
- package/build/artifacts/contracts/core/actions/ActionCore.sol/ActionCore.json +0 -1801
- package/build/artifacts/contracts/core/actions/ActionYT.sol/ActionYT.dbg.json +0 -4
- package/build/artifacts/contracts/core/actions/ActionYT.sol/ActionYT.json +0 -447
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndPTBase.sol/ActionSCYAndPTBase.dbg.json +0 -4
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndPYBase.sol/ActionSCYAndPYBase.dbg.json +0 -4
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndYTBase.sol/ActionSCYAndYTBase.dbg.json +0 -4
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndYTBase.sol/ActionSCYAndYTBase.json +0 -24
- package/build/artifacts/contracts/interfaces/IPActionCore.sol/IPActionCore.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPActionYT.sol/IPActionYT.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +0 -874
- package/contracts/core/actions/ActionCore.sol +0 -382
- package/contracts/core/actions/ActionYT.sol +0 -93
- package/contracts/core/actions/base/ActionSCYAndPTBase.sol +0 -303
- package/contracts/interfaces/IPActionCore.sol +0 -306
- package/contracts/interfaces/IPRouterStatic.sol +0 -152
- package/deployments/43113-markets/benqi-market-599408.json +0 -7
- package/deployments/43113-markets/benqi-market-93bbf0.json +0 -7
- package/deployments/43113-markets/benqi-market-95E744.json +0 -7
- package/deployments/43113-markets/benqi-market-D91a3F.json +0 -7
- package/deployments/80001-markets/benqi-market-007811.json +0 -7
- package/deployments/80001-markets/benqi-market-3fe528.json +0 -7
- package/typechain-types/FeeDistributorAbstract.ts +0 -164
- package/typechain-types/IPVotingControllerStorage.ts +0 -169
- package/typechain-types/factories/FeeDistributorAbstract__factory.ts +0 -90
- package/typechain-types/factories/IPVotingControllerStorage__factory.ts +0 -107
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.15;
|
|
3
|
+
|
|
4
|
+
import "../libraries/math/MarketApproxLib.sol";
|
|
5
|
+
import "../libraries/kyberswap/KyberSwapHelper.sol";
|
|
6
|
+
|
|
7
|
+
interface IPActionAddRemoveLiq {
|
|
8
|
+
event AddLiquidityDualScyAndPt(
|
|
9
|
+
address indexed caller,
|
|
10
|
+
address indexed market,
|
|
11
|
+
address indexed receiver,
|
|
12
|
+
uint256 netScyUsed,
|
|
13
|
+
uint256 netPtUsed,
|
|
14
|
+
uint256 netLpOut
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
event AddLiquidityDualTokenAndPt(
|
|
18
|
+
address indexed caller,
|
|
19
|
+
address indexed market,
|
|
20
|
+
address indexed receiver,
|
|
21
|
+
address tokenIn,
|
|
22
|
+
uint256 tokenUsed,
|
|
23
|
+
uint256 netPtUsed,
|
|
24
|
+
uint256 netLpOut
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
event AddLiquiditySinglePt(
|
|
28
|
+
address indexed caller,
|
|
29
|
+
address indexed market,
|
|
30
|
+
address indexed receiver,
|
|
31
|
+
uint256 netPtIn,
|
|
32
|
+
uint256 netLpOut
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
event AddLiquiditySingleScy(
|
|
36
|
+
address indexed caller,
|
|
37
|
+
address indexed market,
|
|
38
|
+
address indexed receiver,
|
|
39
|
+
uint256 netScyIn,
|
|
40
|
+
uint256 netLpOut
|
|
41
|
+
);
|
|
42
|
+
|
|
43
|
+
event AddLiquiditySingleToken(
|
|
44
|
+
address indexed caller,
|
|
45
|
+
address indexed market,
|
|
46
|
+
address indexed token,
|
|
47
|
+
address receiver,
|
|
48
|
+
uint256 netTokenIn,
|
|
49
|
+
uint256 netLpOut
|
|
50
|
+
);
|
|
51
|
+
|
|
52
|
+
event RemoveLiquidityDualScyAndPt(
|
|
53
|
+
address indexed caller,
|
|
54
|
+
address indexed market,
|
|
55
|
+
address indexed receiver,
|
|
56
|
+
uint256 netLpToRemove,
|
|
57
|
+
uint256 netPtOut,
|
|
58
|
+
uint256 netScyOut
|
|
59
|
+
);
|
|
60
|
+
|
|
61
|
+
event RemoveLiquidityDualTokenAndPt(
|
|
62
|
+
address indexed caller,
|
|
63
|
+
address indexed market,
|
|
64
|
+
address indexed receiver,
|
|
65
|
+
uint256 netLpToRemove,
|
|
66
|
+
uint256 netPtOut,
|
|
67
|
+
address tokenOut,
|
|
68
|
+
uint256 netTokenOut
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
event RemoveLiquiditySinglePt(
|
|
72
|
+
address indexed caller,
|
|
73
|
+
address indexed market,
|
|
74
|
+
address indexed receiver,
|
|
75
|
+
uint256 netLpToRemove,
|
|
76
|
+
uint256 netPtOut
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
event RemoveLiquiditySingleScy(
|
|
80
|
+
address indexed caller,
|
|
81
|
+
address indexed market,
|
|
82
|
+
address indexed receiver,
|
|
83
|
+
uint256 netLpToRemove,
|
|
84
|
+
uint256 netScyOut
|
|
85
|
+
);
|
|
86
|
+
|
|
87
|
+
event RemoveLiquiditySingleToken(
|
|
88
|
+
address indexed caller,
|
|
89
|
+
address indexed market,
|
|
90
|
+
address indexed token,
|
|
91
|
+
address receiver,
|
|
92
|
+
uint256 netLpToRemove,
|
|
93
|
+
uint256 netTokenOut
|
|
94
|
+
);
|
|
95
|
+
|
|
96
|
+
function addLiquidityDualScyAndPt(
|
|
97
|
+
address receiver,
|
|
98
|
+
address market,
|
|
99
|
+
uint256 netScyDesired,
|
|
100
|
+
uint256 netPtDesired,
|
|
101
|
+
uint256 minLpOut
|
|
102
|
+
)
|
|
103
|
+
external
|
|
104
|
+
returns (
|
|
105
|
+
uint256 netLpOut,
|
|
106
|
+
uint256 scyUsed,
|
|
107
|
+
uint256 netPtUsed
|
|
108
|
+
);
|
|
109
|
+
|
|
110
|
+
function addLiquidityDualTokenAndPt(
|
|
111
|
+
address receiver,
|
|
112
|
+
address market,
|
|
113
|
+
address tokenIn,
|
|
114
|
+
uint256 netTokenDesired,
|
|
115
|
+
uint256 netPtDesired,
|
|
116
|
+
uint256 minLpOut
|
|
117
|
+
)
|
|
118
|
+
external
|
|
119
|
+
payable
|
|
120
|
+
returns (
|
|
121
|
+
uint256 netLpOut,
|
|
122
|
+
uint256 netTokenUsed,
|
|
123
|
+
uint256 netPtUsed
|
|
124
|
+
);
|
|
125
|
+
|
|
126
|
+
function addLiquiditySinglePt(
|
|
127
|
+
address receiver,
|
|
128
|
+
address market,
|
|
129
|
+
uint256 netPtIn,
|
|
130
|
+
uint256 minLpOut,
|
|
131
|
+
ApproxParams calldata guessPtSwapToScy
|
|
132
|
+
) external returns (uint256 netLpOut);
|
|
133
|
+
|
|
134
|
+
function addLiquiditySingleScy(
|
|
135
|
+
address receiver,
|
|
136
|
+
address market,
|
|
137
|
+
uint256 netScyIn,
|
|
138
|
+
uint256 minLpOut,
|
|
139
|
+
ApproxParams calldata guessPtReceivedFromScy
|
|
140
|
+
) external returns (uint256 netLpOut);
|
|
141
|
+
|
|
142
|
+
function addLiquiditySingleToken(
|
|
143
|
+
address receiver,
|
|
144
|
+
address market,
|
|
145
|
+
uint256 minLpOut,
|
|
146
|
+
ApproxParams calldata guessPtReceivedFromScy,
|
|
147
|
+
TokenInput calldata input
|
|
148
|
+
) external payable returns (uint256 netLpOut);
|
|
149
|
+
|
|
150
|
+
function removeLiquidityDualScyAndPt(
|
|
151
|
+
address receiver,
|
|
152
|
+
address market,
|
|
153
|
+
uint256 netLpToRemove,
|
|
154
|
+
uint256 minScyOut,
|
|
155
|
+
uint256 minPtOut
|
|
156
|
+
) external returns (uint256 netScyOut, uint256 netPtOut);
|
|
157
|
+
|
|
158
|
+
function removeLiquidityDualTokenAndPt(
|
|
159
|
+
address receiver,
|
|
160
|
+
address market,
|
|
161
|
+
uint256 netLpToRemove,
|
|
162
|
+
address tokenOut,
|
|
163
|
+
uint256 minTokenOut,
|
|
164
|
+
uint256 minPtOut
|
|
165
|
+
) external returns (uint256 netTokenOut, uint256 netPtOut);
|
|
166
|
+
|
|
167
|
+
function removeLiquiditySinglePt(
|
|
168
|
+
address receiver,
|
|
169
|
+
address market,
|
|
170
|
+
uint256 netLpToRemove,
|
|
171
|
+
uint256 minPtOut,
|
|
172
|
+
ApproxParams calldata guessPtOut
|
|
173
|
+
) external returns (uint256 netPtOut);
|
|
174
|
+
|
|
175
|
+
function removeLiquiditySingleScy(
|
|
176
|
+
address receiver,
|
|
177
|
+
address market,
|
|
178
|
+
uint256 netLpToRemove,
|
|
179
|
+
uint256 minScyOut
|
|
180
|
+
) external returns (uint256 netScyOut);
|
|
181
|
+
|
|
182
|
+
function removeLiquiditySingleToken(
|
|
183
|
+
address receiver,
|
|
184
|
+
address market,
|
|
185
|
+
uint256 netLpToRemove,
|
|
186
|
+
TokenOutput calldata output
|
|
187
|
+
) external returns (uint256 netTokenOut);
|
|
188
|
+
}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.15;
|
|
3
|
+
|
|
4
|
+
import "../libraries/math/MarketApproxLib.sol";
|
|
5
|
+
import "../libraries/kyberswap/KyberSwapHelper.sol";
|
|
6
|
+
|
|
7
|
+
interface IPActionMintRedeem {
|
|
8
|
+
event MintScyFromToken(
|
|
9
|
+
address indexed caller,
|
|
10
|
+
address indexed receiver,
|
|
11
|
+
address indexed SCY,
|
|
12
|
+
address tokenIn,
|
|
13
|
+
uint256 netTokenIn,
|
|
14
|
+
uint256 netScyOut
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
event RedeemScyToToken(
|
|
18
|
+
address indexed caller,
|
|
19
|
+
address indexed receiver,
|
|
20
|
+
address indexed SCY,
|
|
21
|
+
uint256 netScyIn,
|
|
22
|
+
address tokenOut,
|
|
23
|
+
uint256 netTokenOut
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
event MintPyFromScy(
|
|
27
|
+
address indexed caller,
|
|
28
|
+
address indexed receiver,
|
|
29
|
+
address indexed YT,
|
|
30
|
+
uint256 netScyIn,
|
|
31
|
+
uint256 netPyOut
|
|
32
|
+
);
|
|
33
|
+
|
|
34
|
+
event RedeemPyToScy(
|
|
35
|
+
address indexed caller,
|
|
36
|
+
address indexed receiver,
|
|
37
|
+
address indexed YT,
|
|
38
|
+
uint256 netPyIn,
|
|
39
|
+
uint256 netScyOut
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
event MintPyFromToken(
|
|
43
|
+
address indexed caller,
|
|
44
|
+
address indexed receiver,
|
|
45
|
+
address indexed YT,
|
|
46
|
+
address tokenIn,
|
|
47
|
+
uint256 netTokenIn,
|
|
48
|
+
uint256 netPyOut
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
event RedeemPyToToken(
|
|
52
|
+
address indexed caller,
|
|
53
|
+
address indexed receiver,
|
|
54
|
+
address indexed YT,
|
|
55
|
+
uint256 netPyIn,
|
|
56
|
+
address tokenOut,
|
|
57
|
+
uint256 netTokenOut
|
|
58
|
+
);
|
|
59
|
+
|
|
60
|
+
function mintScyFromToken(
|
|
61
|
+
address receiver,
|
|
62
|
+
address SCY,
|
|
63
|
+
uint256 minScyOut,
|
|
64
|
+
TokenInput calldata input
|
|
65
|
+
) external payable returns (uint256 netScyOut);
|
|
66
|
+
|
|
67
|
+
function redeemScyToToken(
|
|
68
|
+
address receiver,
|
|
69
|
+
address SCY,
|
|
70
|
+
uint256 netScyIn,
|
|
71
|
+
TokenOutput calldata output
|
|
72
|
+
) external returns (uint256 netTokenOut);
|
|
73
|
+
|
|
74
|
+
function mintPyFromToken(
|
|
75
|
+
address receiver,
|
|
76
|
+
address YT,
|
|
77
|
+
uint256 minPyOut,
|
|
78
|
+
TokenInput calldata input
|
|
79
|
+
) external payable returns (uint256 netPyOut);
|
|
80
|
+
|
|
81
|
+
function redeemPyToToken(
|
|
82
|
+
address receiver,
|
|
83
|
+
address YT,
|
|
84
|
+
uint256 netPyIn,
|
|
85
|
+
TokenOutput calldata output
|
|
86
|
+
) external returns (uint256 netTokenOut);
|
|
87
|
+
|
|
88
|
+
function mintPyFromScy(
|
|
89
|
+
address receiver,
|
|
90
|
+
address YT,
|
|
91
|
+
uint256 netScyIn,
|
|
92
|
+
uint256 minPyOut
|
|
93
|
+
) external returns (uint256 netPyOut);
|
|
94
|
+
|
|
95
|
+
function redeemPyToScy(
|
|
96
|
+
address receiver,
|
|
97
|
+
address YT,
|
|
98
|
+
uint256 netPyIn,
|
|
99
|
+
uint256 minScyOut
|
|
100
|
+
) external returns (uint256 netScyOut);
|
|
101
|
+
|
|
102
|
+
function redeemDueInterestAndRewards(
|
|
103
|
+
address user,
|
|
104
|
+
address[] calldata scys,
|
|
105
|
+
address[] calldata yts,
|
|
106
|
+
address[] calldata markets
|
|
107
|
+
)
|
|
108
|
+
external
|
|
109
|
+
returns (
|
|
110
|
+
uint256[][] memory scyRewards,
|
|
111
|
+
uint256[] memory ytInterests,
|
|
112
|
+
uint256[][] memory ytRewards,
|
|
113
|
+
uint256[][] memory marketRewards
|
|
114
|
+
);
|
|
115
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity 0.8.15;
|
|
3
|
+
|
|
4
|
+
import "../libraries/math/MarketApproxLib.sol";
|
|
5
|
+
import "../libraries/kyberswap/KyberSwapHelper.sol";
|
|
6
|
+
|
|
7
|
+
interface IPActionSwapPT {
|
|
8
|
+
event SwapPtAndScy(
|
|
9
|
+
address indexed caller,
|
|
10
|
+
address indexed market,
|
|
11
|
+
address indexed receiver,
|
|
12
|
+
int256 netPtToAccount,
|
|
13
|
+
int256 netScyToAccount
|
|
14
|
+
);
|
|
15
|
+
|
|
16
|
+
event SwapPtAndToken(
|
|
17
|
+
address indexed caller,
|
|
18
|
+
address indexed market,
|
|
19
|
+
address indexed token,
|
|
20
|
+
address receiver,
|
|
21
|
+
int256 netPtToAccount,
|
|
22
|
+
int256 netTokenToAccount
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
function swapExactPtForScy(
|
|
26
|
+
address receiver,
|
|
27
|
+
address market,
|
|
28
|
+
uint256 exactPtIn,
|
|
29
|
+
uint256 minScyOut
|
|
30
|
+
) external returns (uint256 netScyOut);
|
|
31
|
+
|
|
32
|
+
function swapPtForExactScy(
|
|
33
|
+
address receiver,
|
|
34
|
+
address market,
|
|
35
|
+
uint256 exactScyOut,
|
|
36
|
+
uint256 maxPtIn,
|
|
37
|
+
ApproxParams calldata guessPtIn
|
|
38
|
+
) external returns (uint256 netPtIn);
|
|
39
|
+
|
|
40
|
+
function swapScyForExactPt(
|
|
41
|
+
address receiver,
|
|
42
|
+
address market,
|
|
43
|
+
uint256 exactPtOut,
|
|
44
|
+
uint256 maxScyIn
|
|
45
|
+
) external returns (uint256 netScyIn);
|
|
46
|
+
|
|
47
|
+
function swapExactScyForPt(
|
|
48
|
+
address receiver,
|
|
49
|
+
address market,
|
|
50
|
+
uint256 exactScyIn,
|
|
51
|
+
uint256 minPtOut,
|
|
52
|
+
ApproxParams calldata guessPtOut
|
|
53
|
+
) external returns (uint256 netPtOut);
|
|
54
|
+
|
|
55
|
+
function swapExactTokenForPt(
|
|
56
|
+
address receiver,
|
|
57
|
+
address market,
|
|
58
|
+
uint256 minPtOut,
|
|
59
|
+
ApproxParams calldata guessPtOut,
|
|
60
|
+
TokenInput calldata input
|
|
61
|
+
) external payable returns (uint256 netPtOut);
|
|
62
|
+
|
|
63
|
+
function swapExactPtForToken(
|
|
64
|
+
address receiver,
|
|
65
|
+
address market,
|
|
66
|
+
uint256 exactPtIn,
|
|
67
|
+
TokenOutput calldata output
|
|
68
|
+
) external returns (uint256 netTokenOut);
|
|
69
|
+
}
|
|
@@ -4,20 +4,22 @@ pragma solidity 0.8.15;
|
|
|
4
4
|
import "../libraries/math/MarketApproxLib.sol";
|
|
5
5
|
import "../libraries/kyberswap/KyberSwapHelper.sol";
|
|
6
6
|
|
|
7
|
-
interface
|
|
8
|
-
event
|
|
9
|
-
address indexed
|
|
7
|
+
interface IPActionSwapYT {
|
|
8
|
+
event SwapYtAndScy(
|
|
9
|
+
address indexed caller,
|
|
10
10
|
address indexed market,
|
|
11
|
-
|
|
12
|
-
int256
|
|
11
|
+
address indexed receiver,
|
|
12
|
+
int256 netYtToAccount,
|
|
13
|
+
int256 netScyToAccount
|
|
13
14
|
);
|
|
14
15
|
|
|
15
|
-
event
|
|
16
|
-
address indexed
|
|
16
|
+
event SwapYtAndToken(
|
|
17
|
+
address indexed caller,
|
|
17
18
|
address indexed market,
|
|
18
19
|
address indexed token,
|
|
19
|
-
|
|
20
|
-
int256
|
|
20
|
+
address receiver,
|
|
21
|
+
int256 netYtToAccount,
|
|
22
|
+
int256 netTokenToAccount
|
|
21
23
|
);
|
|
22
24
|
|
|
23
25
|
function swapExactYtForScy(
|
|
@@ -56,7 +58,7 @@ interface IPActionYT {
|
|
|
56
58
|
uint256 minYtOut,
|
|
57
59
|
ApproxParams memory guessYtOut,
|
|
58
60
|
TokenInput calldata input
|
|
59
|
-
) external returns (uint256 netYtOut);
|
|
61
|
+
) external payable returns (uint256 netYtOut);
|
|
60
62
|
|
|
61
63
|
function swapExactYtForToken(
|
|
62
64
|
address receiver,
|
|
@@ -2,7 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
pragma solidity 0.8.15;
|
|
4
4
|
|
|
5
|
-
import "./
|
|
6
|
-
import "./
|
|
5
|
+
import "./IPActionAddRemoveLiq.sol";
|
|
6
|
+
import "./IPActionSwapPT.sol";
|
|
7
|
+
import "./IPActionSwapYT.sol";
|
|
8
|
+
import "./IPActionMintRedeem.sol";
|
|
9
|
+
import "./IPActionMisc.sol";
|
|
7
10
|
|
|
8
|
-
interface IPAllAction is
|
|
11
|
+
interface IPAllAction is
|
|
12
|
+
IPActionAddRemoveLiq,
|
|
13
|
+
IPActionSwapPT,
|
|
14
|
+
IPActionSwapYT,
|
|
15
|
+
IPActionMintRedeem,
|
|
16
|
+
IPActionMisc
|
|
17
|
+
{}
|
|
@@ -6,32 +6,43 @@ import "./IPPrincipalToken.sol";
|
|
|
6
6
|
import "./IPYieldToken.sol";
|
|
7
7
|
import "./ISuperComposableYield.sol";
|
|
8
8
|
import "../libraries/math/MarketMathCore.sol";
|
|
9
|
+
import "./IPGauge.sol";
|
|
9
10
|
|
|
10
|
-
interface IPMarket is IERC20Metadata {
|
|
11
|
-
event Mint(
|
|
11
|
+
interface IPMarket is IERC20Metadata, IPGauge {
|
|
12
|
+
event Mint(
|
|
13
|
+
address indexed receiver,
|
|
14
|
+
uint256 netLpMinted,
|
|
15
|
+
uint256 netScyUsed,
|
|
16
|
+
uint256 netPtUsed
|
|
17
|
+
);
|
|
12
18
|
|
|
13
19
|
event Burn(
|
|
14
20
|
address indexed receiverScy,
|
|
15
21
|
address indexed receiverPt,
|
|
16
|
-
uint256
|
|
17
|
-
uint256
|
|
18
|
-
uint256
|
|
22
|
+
uint256 netLpBurned,
|
|
23
|
+
uint256 netScyOut,
|
|
24
|
+
uint256 netPtOut
|
|
19
25
|
);
|
|
20
26
|
|
|
21
27
|
event Swap(
|
|
22
28
|
address indexed receiver,
|
|
23
|
-
int256
|
|
24
|
-
int256
|
|
29
|
+
int256 netPtOut,
|
|
30
|
+
int256 netScyOut,
|
|
25
31
|
uint256 netScyToReserve
|
|
26
32
|
);
|
|
27
33
|
|
|
28
34
|
event UpdateImpliedRate(uint256 indexed timestamp, uint256 lnLastImpliedRate);
|
|
29
35
|
|
|
30
|
-
|
|
36
|
+
event IncreaseObservationCardinalityNext(
|
|
37
|
+
uint16 observationCardinalityNextOld,
|
|
38
|
+
uint16 observationCardinalityNextNew
|
|
39
|
+
);
|
|
40
|
+
|
|
41
|
+
function mint(address receiver) external returns (uint256 netLpOut);
|
|
31
42
|
|
|
32
43
|
function burn(address receiverScy, address receiverPt)
|
|
33
44
|
external
|
|
34
|
-
returns (uint256
|
|
45
|
+
returns (uint256 netScyOut, uint256 netPtOut);
|
|
35
46
|
|
|
36
47
|
function swapExactPtForScy(
|
|
37
48
|
address receiver,
|
|
@@ -47,7 +58,14 @@ interface IPMarket is IERC20Metadata {
|
|
|
47
58
|
|
|
48
59
|
function redeemRewards(address user) external returns (uint256[] memory);
|
|
49
60
|
|
|
50
|
-
function readState(
|
|
61
|
+
function readState() external view returns (MarketState memory market);
|
|
62
|
+
|
|
63
|
+
function observe(uint32[] memory secondsAgos)
|
|
64
|
+
external
|
|
65
|
+
view
|
|
66
|
+
returns (uint216[] memory lnImpliedRateCumulative);
|
|
67
|
+
|
|
68
|
+
function increaseObservationsCardinalityNext(uint16 cardinalityNext) external;
|
|
51
69
|
|
|
52
70
|
function readTokens()
|
|
53
71
|
external
|
|
@@ -2,12 +2,7 @@
|
|
|
2
2
|
pragma solidity 0.8.15;
|
|
3
3
|
|
|
4
4
|
interface IPMarketFactory {
|
|
5
|
-
event NewMarketConfig(
|
|
6
|
-
address indexed treasury,
|
|
7
|
-
uint96 lnFeeRateRoot,
|
|
8
|
-
uint32 rateOracleTimeWindow,
|
|
9
|
-
uint8 reserveFeePercent
|
|
10
|
-
);
|
|
5
|
+
event NewMarketConfig(address indexed treasury, uint96 lnFeeRateRoot, uint8 reserveFeePercent);
|
|
11
6
|
|
|
12
7
|
event CreateNewMarket(
|
|
13
8
|
address indexed market,
|
|
@@ -27,7 +22,6 @@ interface IPMarketFactory {
|
|
|
27
22
|
returns (
|
|
28
23
|
address treasury,
|
|
29
24
|
uint96 lnFeeRateRoot,
|
|
30
|
-
uint32 rateOracleTimeWindow,
|
|
31
25
|
uint8 reserveFeePercent
|
|
32
26
|
);
|
|
33
27
|
}
|
|
@@ -15,5 +15,5 @@ interface IPVeToken {
|
|
|
15
15
|
|
|
16
16
|
function totalSupplyCurrent() external returns (uint128);
|
|
17
17
|
|
|
18
|
-
function
|
|
18
|
+
function totalSupplyAndBalanceCurrent(address user) external returns (uint128, uint128);
|
|
19
19
|
}
|
|
@@ -7,8 +7,6 @@ interface IPVotingController {
|
|
|
7
7
|
|
|
8
8
|
event RemovePool(uint64 indexed chainId, address indexed pool);
|
|
9
9
|
|
|
10
|
-
event Unvote(address indexed user, address indexed pool, VeBalance vote);
|
|
11
|
-
|
|
12
10
|
event Vote(address indexed user, address indexed pool, uint64 weight, VeBalance vote);
|
|
13
11
|
|
|
14
12
|
event SetPendlePerSec(uint256 newPendlePerSec);
|