@pendle/core-v2 6.3.0-beta → 6.3.0-sweedtest
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/ExcessivelySafeCall.sol/ExcessivelySafeCall.json +2 -2
- 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/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/PendleMerkleDistributor.sol/PendleMerkleDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/PendleMerkleDistributor.sol/PendleMerkleDistributor.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol/PendleMultiTokenMerkleDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol/PendleMultiTokenMerkleDistributor.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/LiquidityMining/libraries/WeekMath.sol/WeekMath.dbg.json +1 -1
- 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/PendleMarketFactoryV6Upg.sol/PendleMarketFactoryV6Upg.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarketFactoryV6Upg.sol/PendleMarketFactoryV6Upg.json +2 -2
- package/build/artifacts/contracts/core/Market/PendleMarketV6.sol/PendleMarketV6.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarketV6.sol/PendleMarketV6.json +2 -2
- package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
- 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/PendleYieldContractFactoryUpg.sol/PendleYieldContractFactoryUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactoryUpg.sol/PendleYieldContractFactoryUpg.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/PendleERC20.sol/PendleERC20.json +2 -2
- 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/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.json +2 -2
- package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.json +2 -2
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableData.json +2 -2
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableV2.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 +18 -2
- package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.json +2 -2
- package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.json +2 -2
- package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.json +2 -2
- package/build/artifacts/contracts/core/libraries/math/PMath.sol/PMath.dbg.json +1 -1
- package/build/artifacts/contracts/cross-chain/FixedPricePTAMM.sol/FixedPricePTAMM.dbg.json +1 -1
- package/build/artifacts/contracts/cross-chain/FixedPricePTAMM.sol/FixedPricePTAMM.json +2 -2
- package/build/artifacts/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol/PendlePTOFTAdapterFactory.dbg.json +1 -1
- package/build/artifacts/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol/PendlePTOFTAdapterFactory.json +2 -2
- package/build/artifacts/contracts/cross-chain/oftImpl/hub/OFTAdapterImpl.sol/OFTAdapterImpl.dbg.json +1 -1
- package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken.dbg.json +1 -1
- package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken.json +2 -2
- package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
- package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
- package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +2 -2
- package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILPWrapper.sol/ILPWrapper.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/IMarketSweed.sol/IMarketSweed.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IMarketSweed.sol/IMarketSweed.json +141 -0
- package/build/artifacts/contracts/interfaces/IOwnable.sol/IOwnable.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPBridgedPrincipalToken.sol/IPBridgedPrincipalToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPChainlinkOracle.sol/IPChainlinkOracle.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPChainlinkOracleEssential.sol/IPChainlinkOracleEssential.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPChainlinkOracleFactory.sol/IPChainlinkOracleFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPChainlinkOracleWithQuote.sol/IPChainlinkOracleWithQuote.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPCommonPoolDeployHelperV2.sol/IPCommonPoolDeployHelperV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPCommonSYFactory.sol/IPCommonSYFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPExchangeRateOracle.sol/IPExchangeRateOracle.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPExchangeRateOracleApp.sol/IPExchangeRateOracleApp.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPExchangeRateOracleApp.sol/IPExchangeRateOracleApp.json +135 -0
- package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMM.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMMSwapCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGovernanceProxy.sol/IPGovernanceProxy.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLPWrapperFactory.sol/IPLPWrapperFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitOrderType.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.json +42 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.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 +13 -0
- package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMerkleDistributor.sol/IPMerkleDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMultiTokenMerkleDistributor.sol/IPMultiTokenMerkleDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPOffchainStorage.sol/IPOffchainStorage.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPOracleForSy.sol/IPOracleForSy.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPTOFTAdapterFactory.sol/IPPTOFTAdapterFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPYLpOracle.sol/IPPYLpOracle.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPausingInterface.sol/IPPausingInterface.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPoolDeployHelperV2.sol/IPPoolDeployHelperV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPriceFeed.sol/IPPriceFeed.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPReflector.sol/IPReflector.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPTokenWithSupplyCap.sol/IPTokenWithSupplyCap.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRedstonePriceFeed.sol/IRedstonePriceFeed.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
- package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.json +2 -2
- package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +2 -2
- package/build/artifacts/contracts/limit/helpers/NonceManager.sol/NonceManager.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/AutomateReady.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/IAutomate.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/IOpsProxyFactory.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/ITaskTreasuryUpgradable.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BalanceReader.sol/BalanceReader.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BalanceReader.sol/BalanceReader.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/BytesLib.sol/BytesLib.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BytesLib.sol/BytesLib.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol/ExpiredLpPtRedeemer.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol/ExpiredLpPtRedeemer.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/LegacyNFTHelper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/LegacyNFTHelper.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/StarNFTV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/LimitBackendHelperV2.sol/LimitBackendHelperV2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/LimitBackendHelperV2.sol/LimitBackendHelperV2.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/MarketSweed.sol/MarketSweed.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/MarketSweed.sol/MarketSweed.json +314 -0
- package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleFeeSetter.sol/PendleFeeSetter.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/PendleFeeSetter.sol/PendleFeeSetter.json +326 -0
- package/build/artifacts/contracts/offchain-helpers/PendleGovernanceProxy.sol/PendleGovernanceProxy.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleGovernanceProxy.sol/PendleGovernanceProxy.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleLPWrapper.sol/PendleLPWrapper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleLPWrapper.sol/PendleLPWrapper.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleLPWrapperFactory.sol/PendleLPWrapperFactory.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleLPWrapperFactory.sol/PendleLPWrapperFactory.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallOwnerV1.sol/PendleMulticallOwnerV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallOwnerV1.sol/PendleMulticallOwnerV1.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV2.sol/PendleMulticallV2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV2.sol/PendleMulticallV2.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleOffchainStorage.sol/PendleOffchainStorage.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleOffchainStorage.sol/PendleOffchainStorage.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleWstETHPriceFeed.sol/PendleWstETHPriceFeed.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleWstETHPriceFeed.sol/PendleWstETHPriceFeed.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/SimulateHelper.sol/SimulateHelper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/SimulateHelper.sol/SimulateHelper.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/SupplyCapReader.sol/IPossibleSupplyCapInterface.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/SupplyCapReader.sol/SupplyCapReader.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol/MarketDeployLib.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol/MarketDeployLib.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/CrossChainOracle/base/PendleCrossChainOracleBaseApp_Init.sol/PendleCrossChainOracleBaseApp_Init.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/CrossChainOracle/base/PendleCrossChainOracleBaseApp_Init.sol/PendleCrossChainOracleBaseApp_Init.json +13 -13
- package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleApp.sol/PendleExchangeRateOracleApp.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleApp.sol/PendleExchangeRateOracleApp.json +150 -12
- package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleV2.sol/PendleExchangeRateOracleV2.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleV2.sol/PendleExchangeRateOracleV2.json +2 -2
- package/build/artifacts/contracts/oracles/CrossChainOracle/libraries/ExchangeRateMsgCodec.sol/ExchangeRateMsgCodec.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/CrossChainOracle/libraries/ExchangeRateMsgCodec.sol/ExchangeRateMsgCodec.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +2 -2
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/StatelessWrapper/PendleLinearDiscountOracleWrapper.sol/PendleLinearDiscountOracleWrapper.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/StatelessWrapper/PendleSparkLinearDiscountOracleFactoryWrapper.sol/PendleSparkLinearDiscountOracleFactoryWrapper.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/StatelessWrapper/PendleSparkLinearDiscountOracleFactoryWrapper.sol/PendleSparkLinearDiscountOracleFactoryWrapper.json +2 -2
- package/build/artifacts/contracts/oracles/internal/PendleBoringOneracle.sol/PendleBoringOneracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleLpLinearDiscountOracle.sol/LPExpiry.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleLpLinearDiscountOracle.sol/PendleLpLinearDiscountOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleLpLinearDiscountOracleFactory.sol/PendleLpLinearDiscountOracleFactory.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PTExpiry.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.json +2 -2
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
- package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +2 -2
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -2
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -2
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -2
- package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
- package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
- package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
- package/build/artifacts/contracts/router/RouterStorage.sol/RouterStorage.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
- package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.json +171 -0
- package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/OKXScaleHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/IAugustusV6.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/ParaswapScaleHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/ParaswapScaleHelper.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
- package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol +15 -17
- package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol +1 -1
- package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol +14 -16
- package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol +2 -3
- package/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol +9 -12
- package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +12 -12
- package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +8 -10
- package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol +6 -12
- package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol +4 -11
- package/contracts/LiquidityMining/PendleMerkleDistributor.sol +11 -13
- package/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol +17 -22
- package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +21 -28
- package/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +31 -27
- package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +19 -23
- package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +7 -8
- package/contracts/LiquidityMining/libraries/VeBalanceLib.sol +6 -5
- package/contracts/core/Market/MarketMathCore.sol +78 -112
- package/contracts/core/Market/OracleLib.sol +34 -41
- package/contracts/core/Market/PendleGauge.sol +8 -8
- package/contracts/core/Market/PendleMarketFactoryV6Upg.sol +19 -16
- package/contracts/core/Market/PendleMarketV6.sol +63 -65
- package/contracts/core/RewardManager/RewardManager.sol +8 -8
- package/contracts/core/RewardManager/RewardManagerAbstract.sol +6 -5
- package/contracts/core/StandardizedYield/PYIndex.sol +2 -2
- package/contracts/core/YieldContracts/InterestManagerYT.sol +8 -9
- package/contracts/core/YieldContracts/PendlePrincipalToken.sol +4 -8
- package/contracts/core/YieldContracts/PendleYieldContractFactoryUpg.sol +15 -12
- package/contracts/core/YieldContracts/PendleYieldToken.sol +54 -41
- package/contracts/core/erc20/PendleERC20.sol +9 -6
- package/contracts/core/libraries/ArrayLib.sol +11 -13
- package/contracts/core/libraries/BaseSplitCodeFactory.sol +22 -29
- package/contracts/core/libraries/BoringOwnableUpgradeableV2.sol +2 -1
- package/contracts/core/libraries/Errors.sol +2 -4
- package/contracts/core/libraries/ExpiryUtilsLib.sol +10 -10
- package/contracts/core/libraries/StringLib.sol +13 -13
- package/contracts/core/libraries/TokenHelper.sol +3 -3
- package/contracts/core/libraries/math/LogExpMath.sol +77 -67
- package/contracts/cross-chain/FixedPricePTAMM.sol +38 -39
- package/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol +1 -1
- package/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol +1 -1
- package/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol +15 -12
- package/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol +21 -24
- package/contracts/interfaces/ILayerZeroEndpoint.sol +5 -3
- package/contracts/interfaces/IMarketSweed.sol +23 -0
- package/contracts/interfaces/IPActionCallbackV3.sol +1 -1
- package/contracts/interfaces/IPActionInfoStatic.sol +1 -3
- package/contracts/interfaces/IPActionMarketAuxStatic.sol +11 -15
- package/contracts/interfaces/IPActionMarketCoreStatic.sol +58 -109
- package/contracts/interfaces/IPActionMintRedeemStatic.sol +21 -26
- package/contracts/interfaces/IPActionMiscV3.sol +24 -44
- package/contracts/interfaces/IPActionSimple.sol +24 -43
- package/contracts/interfaces/IPActionVePendleStatic.sol +4 -5
- package/contracts/interfaces/IPAllActionTypeV3.sol +14 -16
- package/contracts/interfaces/IPAllActionV3.sol +4 -4
- package/contracts/interfaces/IPAllEventsV3.sol +5 -21
- package/contracts/interfaces/IPBridgedPrincipalToken.sol +2 -2
- package/contracts/interfaces/IPCommonSYFactory.sol +3 -6
- package/contracts/interfaces/IPExchangeRateOracleApp.sol +44 -17
- package/contracts/interfaces/IPFeeDistributorV2.sol +13 -16
- package/contracts/interfaces/IPFixedPricePTAMM.sol +22 -34
- package/contracts/interfaces/IPGovernanceProxy.sol +2 -6
- package/contracts/interfaces/IPInterestManagerYTV2.sol +4 -3
- package/contracts/interfaces/IPLimitRouter.sol +16 -16
- package/contracts/interfaces/IPMarket.sol +25 -35
- package/contracts/interfaces/IPMarketFactory.sol +9 -16
- package/contracts/interfaces/IPMerkleDistributor.sol +6 -10
- package/contracts/interfaces/IPMsgSendEndpoint.sol +7 -12
- package/contracts/interfaces/IPMultiTokenMerkleDistributor.sol +6 -12
- package/contracts/interfaces/IPPYLpOracle.sol +1 -4
- package/contracts/interfaces/IPRouterStatic.sol +3 -3
- package/contracts/interfaces/IPVotingController.sol +4 -4
- package/contracts/interfaces/IPVotingEscrowMainchain.sol +1 -1
- package/contracts/interfaces/IPYieldContractFactory.sol +3 -5
- package/contracts/interfaces/IPYieldToken.sol +8 -11
- package/contracts/interfaces/IPYieldTokenV2.sol +8 -11
- package/contracts/interfaces/IStandardizedYield.sol +16 -17
- package/contracts/limit/LimitMathCore.sol +38 -56
- package/contracts/limit/LimitRouterBase.sol +66 -88
- package/contracts/limit/PendleLimitRouter.sol +11 -7
- package/contracts/offchain-helpers/AddressProvider.sol +1 -1
- package/contracts/offchain-helpers/AutomateReady.sol +2 -2
- package/contracts/offchain-helpers/BalanceReader.sol +21 -9
- package/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol +5 -7
- package/contracts/offchain-helpers/Broadcaster.sol +3 -3
- package/contracts/offchain-helpers/BytesLib.sol +3 -5
- package/contracts/offchain-helpers/EmptyUUPS.sol +2 -2
- package/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol +5 -8
- package/contracts/offchain-helpers/LegacyNFTHelper.sol +1 -5
- package/contracts/offchain-helpers/LimitBackendHelperV2.sol +12 -12
- package/contracts/offchain-helpers/MarketSweed.sol +246 -0
- package/contracts/offchain-helpers/Multicall2.sol +9 -7
- package/contracts/offchain-helpers/PendleExchangeRateOracle.sol +4 -8
- package/contracts/offchain-helpers/PendleFeeSetter.sol +149 -0
- package/contracts/offchain-helpers/PendleGovernanceProxy.sol +7 -10
- package/contracts/offchain-helpers/PendleLPWrapper.sol +12 -3
- package/contracts/offchain-helpers/PendleLPWrapperFactory.sol +2 -2
- package/contracts/offchain-helpers/PendleMulticallV1.sol +7 -7
- package/contracts/offchain-helpers/PendleMulticallV2.sol +13 -12
- package/contracts/offchain-helpers/PendleOffchainStorage.sol +1 -1
- package/contracts/offchain-helpers/PendleWstETHPriceFeed.sol +4 -2
- package/contracts/offchain-helpers/SimulateHelper.sol +7 -6
- package/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol +13 -32
- package/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol +7 -11
- package/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol +16 -35
- package/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol +15 -35
- package/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol +12 -13
- package/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol +1 -4
- package/contracts/offchain-helpers/router-static/PendleRouterStatic.sol +1 -1
- package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +12 -9
- package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +60 -91
- package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +103 -190
- package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +26 -26
- package/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol +3 -3
- package/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol +8 -10
- package/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol +100 -40
- package/contracts/oracles/CrossChainOracle/base/PendleCrossChainOracleBaseApp_Init.sol +18 -9
- package/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleApp.sol +118 -52
- package/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleV2.sol +2 -3
- package/contracts/oracles/CrossChainOracle/libraries/ExchangeRateMsgCodec.sol +12 -12
- package/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol +17 -20
- package/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol +15 -19
- package/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol +7 -6
- package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol +13 -9
- package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol +20 -21
- package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol +4 -7
- package/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol +2 -2
- package/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol +13 -10
- package/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol +13 -10
- package/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol +6 -5
- package/contracts/oracles/StatelessWrapper/PendleSparkLinearDiscountOracleFactoryWrapper.sol +1 -1
- package/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol +3 -3
- package/contracts/router/ActionAddRemoveLiqV3.sol +55 -150
- package/contracts/router/ActionCallbackV3.sol +20 -13
- package/contracts/router/ActionMiscV3.sol +54 -78
- package/contracts/router/ActionSimple.sol +76 -128
- package/contracts/router/ActionSwapPTV3.sol +7 -19
- package/contracts/router/ActionSwapYTV3.sol +8 -20
- package/contracts/router/PendleRouterV4.sol +1 -1
- package/contracts/router/Reflector.sol +15 -21
- package/contracts/router/base/ActionBase.sol +61 -105
- package/contracts/router/base/ActionDelegateBase.sol +39 -38
- package/contracts/router/base/CallbackHelper.sol +21 -19
- package/contracts/router/math/ApproxStateLib.sol +28 -28
- package/contracts/router/math/MarketApproxEstimateLib.sol +11 -13
- package/contracts/router/math/MarketApproxLibOnchain.sol +47 -24
- package/contracts/router/math/MarketApproxLibV2.sol +63 -44
- package/contracts/router/swap-aggregator/OKXScaleHelper.sol +191 -55
- package/contracts/router/swap-aggregator/ParaswapScaleHelper.sol +34 -48
- package/contracts/router/swap-aggregator/PendleSwap.sol +26 -28
- package/deployments/1-core.json +5 -2
- package/deployments/1-offchain-helper.json +2 -1
- package/deployments/10-core.json +5 -2
- package/deployments/10-offchain-helper.json +2 -1
- package/deployments/146-core.json +5 -2
- package/deployments/146-offchain-helper.json +2 -1
- package/deployments/42161-core.json +7 -3
- package/deployments/42161-offchain-helper.json +2 -1
- package/deployments/5000-core.json +5 -2
- package/deployments/5000-offchain-helper.json +2 -1
- package/deployments/56-core.json +5 -2
- package/deployments/56-offchain-helper.json +2 -1
- package/deployments/80094-core.json +5 -2
- package/deployments/80094-offchain-helper.json +2 -1
- package/deployments/8453-core.json +5 -2
- package/deployments/8453-offchain-helper.json +2 -1
- package/deployments/9745-core.json +5 -2
- package/deployments/9745-offchain-helper.json +2 -1
- package/deployments/999-core.json +5 -2
- package/deployments/999-offchain-helper.json +2 -1
- package/package.json +4 -6
- package/typechain-types/IMarketSweed.ts +203 -0
- package/typechain-types/IOKXDexRouter.ts +99 -0
- package/typechain-types/IPExchangeRateOracleApp.ts +83 -0
- package/typechain-types/IPLimitRouter.ts +69 -0
- package/typechain-types/IPMarket.ts +13 -0
- package/typechain-types/LimitMathCore.ts +102 -0
- package/typechain-types/MarketSweed.ts +242 -0
- package/typechain-types/OverfillMathLib.ts +81 -0
- package/typechain-types/PendleCrossChainOracleBaseApp_Init.ts +13 -19
- package/typechain-types/PendleExchangeRateOracleApp.ts +73 -9
- package/typechain-types/PendleFeeSetter.ts +188 -3
- package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
- package/typechain-types/factories/ActionCallbackV3__factory.ts +1 -1
- package/typechain-types/factories/ActionDelegateBase__factory.ts +1 -1
- package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMiscV3__factory.ts +1 -1
- package/typechain-types/factories/ActionSimple__factory.ts +1 -1
- package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionStorageV4__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
- package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
- package/typechain-types/factories/AddressProvider__factory.ts +1 -1
- package/typechain-types/factories/BalanceReader__factory.ts +1 -1
- package/typechain-types/factories/BaseSplitCodeFactoryContract__factory.ts +1 -1
- package/typechain-types/factories/BoringOwnableUpgradeableData__factory.ts +1 -1
- package/typechain-types/factories/BoringPYUsdChainlinkAssetOracle__factory.ts +1 -1
- package/typechain-types/factories/BoringPYUsdChainlinkSYOracle__factory.ts +1 -1
- package/typechain-types/factories/Broadcaster__factory.ts +1 -1
- package/typechain-types/factories/EmptyUUPS__factory.ts +1 -1
- package/typechain-types/factories/Errors__factory.ts +17 -1
- package/typechain-types/factories/ExchangeRateMsgCodec__factory.ts +1 -1
- package/typechain-types/factories/ExpiredLpPtRedeemer__factory.ts +1 -1
- package/typechain-types/factories/FixedPricePTAMM__factory.ts +1 -1
- package/typechain-types/factories/{IPActionCrossChain__factory.ts → IMarketSweed__factory.ts} +61 -22
- package/typechain-types/factories/IOKXDexRouter__factory.ts +171 -0
- package/typechain-types/factories/IPExchangeRateOracleApp__factory.ts +135 -0
- package/typechain-types/factories/IPLimitRouter__factory.ts +42 -0
- package/typechain-types/factories/IPMarket__factory.ts +13 -0
- package/typechain-types/factories/LegacyNFTHelper__factory.ts +1 -1
- package/typechain-types/factories/LimitBackendHelperV2__factory.ts +1 -1
- package/typechain-types/factories/LimitMathCore__factory.ts +87 -0
- package/typechain-types/factories/MarketSweed__factory.ts +364 -0
- package/typechain-types/factories/Multicall2__factory.ts +1 -1
- package/typechain-types/factories/OracleLib__factory.ts +1 -1
- package/typechain-types/factories/OverfillMathLib__factory.ts +77 -0
- package/typechain-types/factories/PendleBridgedPrincipalToken__factory.ts +1 -1
- package/typechain-types/factories/PendleChainlinkOracleFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleChainlinkOracleWithQuote__factory.ts +1 -1
- package/typechain-types/factories/PendleChainlinkOracle__factory.ts +1 -1
- package/typechain-types/factories/PendleCommonPoolDeployHelperV2__factory.ts +1 -1
- package/typechain-types/factories/PendleCommonSYFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleCrossChainOracleBaseApp_Init__factory.ts +13 -13
- package/typechain-types/factories/PendleERC20__factory.ts +1 -1
- package/typechain-types/factories/PendleExchangeRateOracleApp__factory.ts +150 -19
- package/typechain-types/factories/PendleExchangeRateOracleV2__factory.ts +1 -1
- package/typechain-types/factories/PendleExchangeRateOracle__factory.ts +1 -1
- package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +1 -1
- package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
- package/typechain-types/factories/PendleFeeSetter__factory.ts +140 -2
- package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGovernanceProxy__factory.ts +1 -1
- package/typechain-types/factories/PendleLPWrapperFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleLPWrapper__factory.ts +1 -1
- package/typechain-types/factories/PendleLimitRouter__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketFactoryV6Upg__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketV6__factory.ts +1 -1
- package/typechain-types/factories/PendleMerkleDistributor__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/PendleMultiTokenMerkleDistributor__factory.ts +1 -1
- package/typechain-types/factories/PendleMulticallOwnerV1__factory.ts +1 -1
- package/typechain-types/factories/PendleMulticallV1__factory.ts +1 -1
- package/typechain-types/factories/PendleMulticallV2__factory.ts +1 -1
- package/typechain-types/factories/PendleOffchainStorage__factory.ts +1 -1
- package/typechain-types/factories/PendlePTOFTAdapterFactory__factory.ts +1 -1
- package/typechain-types/factories/PendlePYLpOracle__factory.ts +1 -1
- package/typechain-types/factories/PendlePoolDeployHelperV2__factory.ts +1 -1
- package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
- package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterV4__factory.ts +1 -1
- package/typechain-types/factories/PendleSparkLinearDiscountOracleFactoryWrapper__factory.ts +1 -1
- package/typechain-types/factories/PendleSparkLinearDiscountOracleFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleSwap__factory.ts +1 -1
- package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleWstETHPriceFeed__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldContractFactoryUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
- package/typechain-types/factories/Reflector__factory.ts +1 -1
- package/typechain-types/factories/SDKErrorsDirectory__factory.ts +1 -1
- package/typechain-types/factories/SimulateHelper__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
- package/typechain-types/hardhat.d.ts +27 -0
- package/typechain-types/index.ts +6 -0
- package/typechain-types/ActionCrossChain.ts +0 -161
- package/typechain-types/BasePendleBridgedPrincipalToken.ts +0 -1689
- package/typechain-types/IPActionCrossChain.ts +0 -161
- package/typechain-types/LimitBackendHelper.ts +0 -287
- package/typechain-types/PendleBridgedPrincipalToken_18Decimals.ts +0 -1689
- package/typechain-types/PendleBridgedPrincipalToken_6Decimals.ts +0 -1689
- package/typechain-types/PendleBridgedPrincipalToken_8Decimals.ts +0 -1689
- package/typechain-types/factories/ActionCrossChain__factory.ts +0 -152
- package/typechain-types/factories/BasePendleBridgedPrincipalToken__factory.ts +0 -1548
- package/typechain-types/factories/LimitBackendHelper__factory.ts +0 -232
- package/typechain-types/factories/PendleBridgedPrincipalToken_18Decimals__factory.ts +0 -1652
- package/typechain-types/factories/PendleBridgedPrincipalToken_6Decimals__factory.ts +0 -1650
- package/typechain-types/factories/PendleBridgedPrincipalToken_8Decimals__factory.ts +0 -1650
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.0;
|
|
3
3
|
|
|
4
|
+
import {IPActionSimple} from "../interfaces/IPActionSimple.sol";
|
|
4
5
|
import {IPMarket} from "../interfaces/IPMarket.sol";
|
|
5
|
-
import {IStandardizedYield} from "../interfaces/IStandardizedYield.sol";
|
|
6
6
|
import {IPPrincipalToken} from "../interfaces/IPPrincipalToken.sol";
|
|
7
|
-
import {
|
|
7
|
+
import {IStandardizedYield} from "../interfaces/IStandardizedYield.sol";
|
|
8
8
|
import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
|
|
9
9
|
|
|
10
|
-
import {TokenHelper} from "../core/libraries/TokenHelper.sol";
|
|
11
|
-
import {PYIndexLib, IPYieldToken, PYIndex} from "../core/StandardizedYield/PYIndex.sol";
|
|
12
10
|
import {MarketState} from "../core/Market/MarketMathCore.sol";
|
|
11
|
+
import {IPYieldToken, PYIndex, PYIndexLib} from "../core/StandardizedYield/PYIndex.sol";
|
|
12
|
+
import {TokenHelper} from "../core/libraries/TokenHelper.sol";
|
|
13
13
|
import {PMath} from "../core/libraries/math/PMath.sol";
|
|
14
14
|
|
|
15
|
-
import {CallbackHelper} from "./base/CallbackHelper.sol";
|
|
16
|
-
import {MarketApproxPtInLibOnchain, MarketApproxPtOutLibOnchain} from "./math/MarketApproxLibOnchain.sol";
|
|
17
15
|
import {TokenInput, TokenOutput} from "../interfaces/IPAllActionTypeV3.sol";
|
|
18
16
|
import {ActionBase} from "./base/ActionBase.sol";
|
|
17
|
+
import {CallbackHelper} from "./base/CallbackHelper.sol";
|
|
18
|
+
import {MarketApproxPtInLibOnchain, MarketApproxPtOutLibOnchain} from "./math/MarketApproxLibOnchain.sol";
|
|
19
19
|
|
|
20
20
|
contract ActionSimple is ActionBase, IPActionSimple {
|
|
21
21
|
using MarketApproxPtInLibOnchain for MarketState;
|
|
@@ -28,37 +28,28 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
28
28
|
/// @notice This function is for internal router use only and should not be called directly.
|
|
29
29
|
/// @dev Use swapExactTokenForPt from the main router instead.
|
|
30
30
|
/// @dev The interface of this simple function is subject to change without notice.
|
|
31
|
-
function swapExactTokenForPtSimple(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
uint256
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
(IStandardizedYield SY, , ) = IPMarket(market).readTokens();
|
|
31
|
+
function swapExactTokenForPtSimple(address receiver, address market, uint256 minPtOut, TokenInput calldata input)
|
|
32
|
+
external
|
|
33
|
+
payable
|
|
34
|
+
returns (uint256 netPtOut, uint256 netSyFee, uint256 netSyInterm)
|
|
35
|
+
{
|
|
36
|
+
(IStandardizedYield SY,,) = IPMarket(market).readTokens();
|
|
38
37
|
netSyInterm = _mintSyFromToken(_entry_swapExactSyForPt(market, false), address(SY), 1, input);
|
|
39
38
|
|
|
40
39
|
(netPtOut, netSyFee) = _swapExactSyForPtSimple(receiver, market, netSyInterm, minPtOut);
|
|
41
40
|
emit SwapPtAndToken(
|
|
42
|
-
msg.sender,
|
|
43
|
-
market,
|
|
44
|
-
input.tokenIn,
|
|
45
|
-
receiver,
|
|
46
|
-
netPtOut.Int(),
|
|
47
|
-
input.netTokenIn.neg(),
|
|
48
|
-
netSyInterm
|
|
41
|
+
msg.sender, market, input.tokenIn, receiver, netPtOut.Int(), input.netTokenIn.neg(), netSyInterm
|
|
49
42
|
);
|
|
50
43
|
}
|
|
51
44
|
|
|
52
45
|
/// @notice This function is for internal router use only and should not be called directly.
|
|
53
46
|
/// @dev Use swapExactSyForPt from the main router instead.
|
|
54
47
|
/// @dev The interface of this simple function is subject to change without notice.
|
|
55
|
-
function swapExactSyForPtSimple(
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
) external returns (uint256 netPtOut, uint256 netSyFee) {
|
|
61
|
-
(IStandardizedYield SY, , ) = IPMarket(market).readTokens();
|
|
48
|
+
function swapExactSyForPtSimple(address receiver, address market, uint256 exactSyIn, uint256 minPtOut)
|
|
49
|
+
external
|
|
50
|
+
returns (uint256 netPtOut, uint256 netSyFee)
|
|
51
|
+
{
|
|
52
|
+
(IStandardizedYield SY,,) = IPMarket(market).readTokens();
|
|
62
53
|
_transferFrom(SY, msg.sender, _entry_swapExactSyForPt(market, false), exactSyIn);
|
|
63
54
|
|
|
64
55
|
(netPtOut, netSyFee) = _swapExactSyForPtSimple(receiver, market, exactSyIn, minPtOut);
|
|
@@ -68,38 +59,29 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
68
59
|
/// @notice This function is for internal router use only and should not be called directly.
|
|
69
60
|
/// @dev Use swapExactTokenForYt from the main router instead.
|
|
70
61
|
/// @dev The interface of this simple function is subject to change without notice.
|
|
71
|
-
function swapExactTokenForYtSimple(
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
uint256
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
62
|
+
function swapExactTokenForYtSimple(address receiver, address market, uint256 minYtOut, TokenInput calldata input)
|
|
63
|
+
external
|
|
64
|
+
payable
|
|
65
|
+
returns (uint256 netYtOut, uint256 netSyFee, uint256 netSyInterm)
|
|
66
|
+
{
|
|
67
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
78
68
|
|
|
79
69
|
netSyInterm = _mintSyFromToken(_entry_swapExactSyForYt(YT, false), address(SY), 1, input);
|
|
80
70
|
(netYtOut, netSyFee) = _swapExactSyForYtSimple(receiver, market, SY, YT, netSyInterm, minYtOut);
|
|
81
71
|
|
|
82
72
|
emit SwapYtAndToken(
|
|
83
|
-
msg.sender,
|
|
84
|
-
market,
|
|
85
|
-
input.tokenIn,
|
|
86
|
-
receiver,
|
|
87
|
-
netYtOut.Int(),
|
|
88
|
-
input.netTokenIn.neg(),
|
|
89
|
-
netSyInterm
|
|
73
|
+
msg.sender, market, input.tokenIn, receiver, netYtOut.Int(), input.netTokenIn.neg(), netSyInterm
|
|
90
74
|
);
|
|
91
75
|
}
|
|
92
76
|
|
|
93
77
|
/// @notice This function is for internal router use only and should not be called directly.
|
|
94
78
|
/// @dev Use swapExactSyForYt from the main router instead.
|
|
95
79
|
/// @dev The interface of this simple function is subject to change without notice.
|
|
96
|
-
function swapExactSyForYtSimple(
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
) external returns (uint256 netYtOut, uint256 netSyFee) {
|
|
102
|
-
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
80
|
+
function swapExactSyForYtSimple(address receiver, address market, uint256 exactSyIn, uint256 minYtOut)
|
|
81
|
+
external
|
|
82
|
+
returns (uint256 netYtOut, uint256 netSyFee)
|
|
83
|
+
{
|
|
84
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
103
85
|
_transferFrom(SY, msg.sender, _entry_swapExactSyForYt(YT, false), exactSyIn);
|
|
104
86
|
|
|
105
87
|
(netYtOut, netSyFee) = _swapExactSyForYtSimple(receiver, market, SY, YT, exactSyIn, minYtOut);
|
|
@@ -109,38 +91,29 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
109
91
|
/// @notice This function is for internal router use only and should not be called directly.
|
|
110
92
|
/// @dev Use addLiquiditySinglePt from the main router instead.
|
|
111
93
|
/// @dev The interface of this simple function is subject to change without notice.
|
|
112
|
-
function addLiquiditySinglePtSimple(
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
uint256 minLpOut
|
|
117
|
-
) external returns (uint256 netLpOut, uint256 netSyFee) {
|
|
94
|
+
function addLiquiditySinglePtSimple(address receiver, address market, uint256 netPtIn, uint256 minLpOut)
|
|
95
|
+
external
|
|
96
|
+
returns (uint256 netLpOut, uint256 netSyFee)
|
|
97
|
+
{
|
|
118
98
|
(, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
119
99
|
_transferFrom(PT, msg.sender, _entry_addLiquiditySinglePt(market, false), netPtIn);
|
|
120
100
|
|
|
121
101
|
uint256 netPtLeft = netPtIn;
|
|
122
102
|
uint256 netSyReceived;
|
|
123
103
|
|
|
124
|
-
(uint256 netPtSwapMarket
|
|
125
|
-
YT.newIndex(),
|
|
126
|
-
netPtLeft,
|
|
127
|
-
netSyReceived,
|
|
128
|
-
block.timestamp
|
|
129
|
-
);
|
|
104
|
+
(uint256 netPtSwapMarket,,,) = _readMarket(market)
|
|
105
|
+
.approxSwapPtToAddLiquidityOnchain(YT.newIndex(), netPtLeft, netSyReceived, block.timestamp);
|
|
130
106
|
|
|
131
107
|
// execute the swap
|
|
132
|
-
(uint256 netSyOutMarket, uint256 netSyFeeMarket) =
|
|
133
|
-
market,
|
|
134
|
-
netPtSwapMarket,
|
|
135
|
-
EMPTY_BYTES
|
|
136
|
-
);
|
|
108
|
+
(uint256 netSyOutMarket, uint256 netSyFeeMarket) =
|
|
109
|
+
IPMarket(market).swapExactPtForSy(market, netPtSwapMarket, EMPTY_BYTES);
|
|
137
110
|
|
|
138
111
|
netPtLeft -= netPtSwapMarket;
|
|
139
112
|
netSyReceived += netSyOutMarket;
|
|
140
113
|
netSyFee += netSyFeeMarket;
|
|
141
114
|
|
|
142
115
|
// execute the addLiquidity
|
|
143
|
-
(netLpOut
|
|
116
|
+
(netLpOut,,) = IPMarket(market).mint(receiver, netSyReceived, netPtLeft);
|
|
144
117
|
|
|
145
118
|
if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
|
|
146
119
|
|
|
@@ -158,33 +131,25 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
158
131
|
uint256 minLpOut,
|
|
159
132
|
TokenInput calldata input
|
|
160
133
|
) external payable returns (uint256 netLpOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
161
|
-
(IStandardizedYield SY
|
|
134
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
162
135
|
|
|
163
136
|
netSyInterm = _mintSyFromToken(_entry_addLiquiditySingleSy(market, false), address(SY), 1, input);
|
|
164
137
|
|
|
165
138
|
(netLpOut, netSyFee) = _addLiquiditySingleSySimple(receiver, market, SY, YT, netSyInterm, minLpOut);
|
|
166
139
|
|
|
167
140
|
emit AddLiquiditySingleToken(
|
|
168
|
-
msg.sender,
|
|
169
|
-
market,
|
|
170
|
-
input.tokenIn,
|
|
171
|
-
receiver,
|
|
172
|
-
input.netTokenIn,
|
|
173
|
-
netLpOut,
|
|
174
|
-
netSyInterm
|
|
141
|
+
msg.sender, market, input.tokenIn, receiver, input.netTokenIn, netLpOut, netSyInterm
|
|
175
142
|
);
|
|
176
143
|
}
|
|
177
144
|
|
|
178
145
|
/// @notice This function is for internal router use only and should not be called directly.
|
|
179
146
|
/// @dev Use addLiquiditySingleSy from the main router instead.
|
|
180
147
|
/// @dev The interface of this simple function is subject to change without notice.
|
|
181
|
-
function addLiquiditySingleSySimple(
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
) external returns (uint256 netLpOut, uint256 netSyFee) {
|
|
187
|
-
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
148
|
+
function addLiquiditySingleSySimple(address receiver, address market, uint256 netSyIn, uint256 minLpOut)
|
|
149
|
+
external
|
|
150
|
+
returns (uint256 netLpOut, uint256 netSyFee)
|
|
151
|
+
{
|
|
152
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
188
153
|
|
|
189
154
|
_transferFrom(SY, msg.sender, _entry_addLiquiditySingleSy(market, false), netSyIn);
|
|
190
155
|
|
|
@@ -196,7 +161,8 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
196
161
|
function _addLiquiditySingleSySimple(
|
|
197
162
|
address receiver,
|
|
198
163
|
address market,
|
|
199
|
-
IStandardizedYield
|
|
164
|
+
IStandardizedYield,
|
|
165
|
+
/*SY*/
|
|
200
166
|
IPYieldToken YT,
|
|
201
167
|
uint256 netSyIn,
|
|
202
168
|
uint256 minLpOut
|
|
@@ -204,24 +170,17 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
204
170
|
uint256 netSyLeft = netSyIn;
|
|
205
171
|
uint256 netPtReceived;
|
|
206
172
|
|
|
207
|
-
(uint256 netPtOutMarket
|
|
208
|
-
YT.newIndex(),
|
|
209
|
-
netSyLeft,
|
|
210
|
-
netPtReceived,
|
|
211
|
-
block.timestamp
|
|
212
|
-
);
|
|
173
|
+
(uint256 netPtOutMarket,,,) = _readMarket(market)
|
|
174
|
+
.approxSwapSyToAddLiquidityOnchain(YT.newIndex(), netSyLeft, netPtReceived, block.timestamp);
|
|
213
175
|
|
|
214
|
-
(uint256 netSySwapMarket, uint256 netSyFeeMarket) =
|
|
215
|
-
market,
|
|
216
|
-
netPtOutMarket,
|
|
217
|
-
EMPTY_BYTES
|
|
218
|
-
);
|
|
176
|
+
(uint256 netSySwapMarket, uint256 netSyFeeMarket) =
|
|
177
|
+
IPMarket(market).swapSyForExactPt(market, netPtOutMarket, EMPTY_BYTES);
|
|
219
178
|
|
|
220
179
|
netSyLeft -= netSySwapMarket;
|
|
221
180
|
netPtReceived += netPtOutMarket;
|
|
222
181
|
netSyFee += netSyFeeMarket;
|
|
223
182
|
|
|
224
|
-
(netLpOut
|
|
183
|
+
(netLpOut,,) = IPMarket(market).mint(receiver, netSyLeft, netPtReceived);
|
|
225
184
|
|
|
226
185
|
if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
|
|
227
186
|
}
|
|
@@ -230,21 +189,16 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
230
189
|
/// @notice This function is for internal router use only and should not be called directly.
|
|
231
190
|
/// @dev Use removeLiquiditySinglePt from the main router instead.
|
|
232
191
|
/// @dev The interface of this simple function is subject to change without notice.
|
|
233
|
-
function removeLiquiditySinglePtSimple(
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
uint256 minPtOut
|
|
238
|
-
) external returns (uint256 netPtOut, uint256 netSyFee) {
|
|
192
|
+
function removeLiquiditySinglePtSimple(address receiver, address market, uint256 netLpToRemove, uint256 minPtOut)
|
|
193
|
+
external
|
|
194
|
+
returns (uint256 netPtOut, uint256 netSyFee)
|
|
195
|
+
{
|
|
239
196
|
uint256 netSyLeft;
|
|
240
197
|
|
|
241
198
|
// execute the burn
|
|
242
199
|
_transferFrom(IERC20(market), msg.sender, market, netLpToRemove);
|
|
243
|
-
(uint256 netSyOutBurn, uint256 netPtOutBurn) =
|
|
244
|
-
_entry_swapExactSyForPt(market, false),
|
|
245
|
-
receiver,
|
|
246
|
-
netLpToRemove
|
|
247
|
-
);
|
|
200
|
+
(uint256 netSyOutBurn, uint256 netPtOutBurn) =
|
|
201
|
+
IPMarket(market).burn(_entry_swapExactSyForPt(market, false), receiver, netLpToRemove);
|
|
248
202
|
netSyLeft += netSyOutBurn;
|
|
249
203
|
netPtOut += netPtOutBurn;
|
|
250
204
|
|
|
@@ -257,20 +211,15 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
257
211
|
emit RemoveLiquiditySinglePt(msg.sender, market, receiver, netLpToRemove, netPtOut);
|
|
258
212
|
}
|
|
259
213
|
|
|
260
|
-
function _swapExactSyForPtSimple(
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
) internal returns (uint256 netPtOut, uint256 netSyFee) {
|
|
266
|
-
(, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
214
|
+
function _swapExactSyForPtSimple(address receiver, address market, uint256 exactSyIn, uint256 minPtOut)
|
|
215
|
+
internal
|
|
216
|
+
returns (uint256 netPtOut, uint256 netSyFee)
|
|
217
|
+
{
|
|
218
|
+
(,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
267
219
|
uint256 netSyLeft = exactSyIn;
|
|
268
220
|
|
|
269
|
-
(uint256 netPtOutMarket
|
|
270
|
-
YT.newIndex(),
|
|
271
|
-
netSyLeft,
|
|
272
|
-
block.timestamp
|
|
273
|
-
);
|
|
221
|
+
(uint256 netPtOutMarket,,) =
|
|
222
|
+
_readMarket(market).approxSwapExactSyForPtOnchain(YT.newIndex(), netSyLeft, block.timestamp);
|
|
274
223
|
|
|
275
224
|
(, uint256 netSyFeeMarket) = IPMarket(market).swapSyForExactPt(receiver, netPtOutMarket, "");
|
|
276
225
|
|
|
@@ -283,24 +232,23 @@ contract ActionSimple is ActionBase, IPActionSimple {
|
|
|
283
232
|
function _swapExactSyForYtSimple(
|
|
284
233
|
address receiver,
|
|
285
234
|
address market,
|
|
286
|
-
IStandardizedYield
|
|
235
|
+
IStandardizedYield,
|
|
236
|
+
/* SY */
|
|
287
237
|
IPYieldToken YT,
|
|
288
238
|
uint256 exactSyIn,
|
|
289
239
|
uint256 minYtOut
|
|
290
240
|
) internal returns (uint256 netYtOut, uint256 netSyFee) {
|
|
291
241
|
uint256 netSyLeft = exactSyIn;
|
|
292
242
|
|
|
293
|
-
(uint256 netYtOutMarket
|
|
294
|
-
YT.newIndex(),
|
|
295
|
-
netSyLeft,
|
|
296
|
-
block.timestamp
|
|
297
|
-
);
|
|
243
|
+
(uint256 netYtOutMarket,,) =
|
|
244
|
+
_readMarket(market).approxSwapExactSyForYtOnchain(YT.newIndex(), netSyLeft, block.timestamp);
|
|
298
245
|
|
|
299
|
-
(, uint256 netSyFeeMarket) = IPMarket(market)
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
246
|
+
(, uint256 netSyFeeMarket) = IPMarket(market)
|
|
247
|
+
.swapExactPtForSy(
|
|
248
|
+
address(YT),
|
|
249
|
+
netYtOutMarket, // exactPtIn = netYtOut
|
|
250
|
+
_encodeSwapExactSyForYt(receiver, YT)
|
|
251
|
+
);
|
|
304
252
|
|
|
305
253
|
netYtOut += netYtOutMarket;
|
|
306
254
|
netSyFee += netSyFeeMarket;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "./base/ActionBase.sol";
|
|
5
4
|
import "../interfaces/IPActionSwapPTV3.sol";
|
|
5
|
+
import "./base/ActionBase.sol";
|
|
6
6
|
import {ActionDelegateBase} from "./base/ActionDelegateBase.sol";
|
|
7
7
|
|
|
8
8
|
contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase, ActionDelegateBase {
|
|
@@ -22,18 +22,12 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase, ActionDelegateBase {
|
|
|
22
22
|
return delegateToSwapExactTokenForPtSimple(receiver, market, minPtOut, input);
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
(IStandardizedYield SY
|
|
25
|
+
(IStandardizedYield SY,,) = IPMarket(market).readTokens();
|
|
26
26
|
netSyInterm = _mintSyFromToken(_entry_swapExactSyForPt(market, limit), address(SY), 1, input);
|
|
27
27
|
|
|
28
28
|
(netPtOut, netSyFee) = _swapExactSyForPt(receiver, market, netSyInterm, minPtOut, guessPtOut, limit);
|
|
29
29
|
emit SwapPtAndToken(
|
|
30
|
-
msg.sender,
|
|
31
|
-
market,
|
|
32
|
-
input.tokenIn,
|
|
33
|
-
receiver,
|
|
34
|
-
netPtOut.Int(),
|
|
35
|
-
input.netTokenIn.neg(),
|
|
36
|
-
netSyInterm
|
|
30
|
+
msg.sender, market, input.tokenIn, receiver, netPtOut.Int(), input.netTokenIn.neg(), netSyInterm
|
|
37
31
|
);
|
|
38
32
|
}
|
|
39
33
|
|
|
@@ -50,7 +44,7 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase, ActionDelegateBase {
|
|
|
50
44
|
return delegateToSwapExactSyForPtSimple(receiver, market, exactSyIn, minPtOut);
|
|
51
45
|
}
|
|
52
46
|
|
|
53
|
-
(IStandardizedYield SY
|
|
47
|
+
(IStandardizedYield SY,,) = IPMarket(market).readTokens();
|
|
54
48
|
_transferFrom(SY, msg.sender, _entry_swapExactSyForPt(market, limit), exactSyIn);
|
|
55
49
|
|
|
56
50
|
(netPtOut, netSyFee) = _swapExactSyForPt(receiver, market, exactSyIn, minPtOut, guessPtOut, limit);
|
|
@@ -65,7 +59,7 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase, ActionDelegateBase {
|
|
|
65
59
|
TokenOutput calldata output,
|
|
66
60
|
LimitOrderData calldata limit
|
|
67
61
|
) external returns (uint256 netTokenOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
68
|
-
(IStandardizedYield SY, IPPrincipalToken PT,
|
|
62
|
+
(IStandardizedYield SY, IPPrincipalToken PT,) = IPMarket(market).readTokens();
|
|
69
63
|
_transferFrom(PT, msg.sender, _entry_swapExactPtForSy(market, limit), exactPtIn);
|
|
70
64
|
|
|
71
65
|
(netSyInterm, netSyFee) = _swapExactPtForSy(address(SY), market, exactPtIn, 0, limit);
|
|
@@ -73,13 +67,7 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase, ActionDelegateBase {
|
|
|
73
67
|
netTokenOut = _redeemSyToToken(receiver, address(SY), netSyInterm, output, false);
|
|
74
68
|
|
|
75
69
|
emit SwapPtAndToken(
|
|
76
|
-
msg.sender,
|
|
77
|
-
market,
|
|
78
|
-
output.tokenOut,
|
|
79
|
-
receiver,
|
|
80
|
-
exactPtIn.neg(),
|
|
81
|
-
netTokenOut.Int(),
|
|
82
|
-
netSyInterm
|
|
70
|
+
msg.sender, market, output.tokenOut, receiver, exactPtIn.neg(), netTokenOut.Int(), netSyInterm
|
|
83
71
|
);
|
|
84
72
|
}
|
|
85
73
|
|
|
@@ -91,7 +79,7 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase, ActionDelegateBase {
|
|
|
91
79
|
uint256 minSyOut,
|
|
92
80
|
LimitOrderData calldata limit
|
|
93
81
|
) external returns (uint256 netSyOut, uint256 netSyFee) {
|
|
94
|
-
(, IPPrincipalToken PT,
|
|
82
|
+
(, IPPrincipalToken PT,) = IPMarket(market).readTokens();
|
|
95
83
|
_transferFrom(PT, msg.sender, _entry_swapExactPtForSy(market, limit), exactPtIn);
|
|
96
84
|
|
|
97
85
|
(netSyOut, netSyFee) = _swapExactPtForSy(receiver, market, exactPtIn, minSyOut, limit);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "./base/ActionBase.sol";
|
|
5
|
-
import "./base/CallbackHelper.sol";
|
|
6
4
|
import "../interfaces/IPActionSwapYTV3.sol";
|
|
5
|
+
import "./base/ActionBase.sol";
|
|
7
6
|
import {ActionDelegateBase} from "./base/ActionDelegateBase.sol";
|
|
7
|
+
import "./base/CallbackHelper.sol";
|
|
8
8
|
|
|
9
9
|
contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase, ActionDelegateBase {
|
|
10
10
|
using PMath for uint256;
|
|
@@ -27,19 +27,13 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase, ActionD
|
|
|
27
27
|
return delegateToSwapExactTokenForYtSimple(receiver, market, minYtOut, input);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
(IStandardizedYield SY
|
|
30
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
31
31
|
|
|
32
32
|
netSyInterm = _mintSyFromToken(_entry_swapExactSyForYt(YT, limit), address(SY), 1, input);
|
|
33
33
|
(netYtOut, netSyFee) = _swapExactSyForYt(receiver, market, SY, YT, netSyInterm, minYtOut, guessYtOut, limit);
|
|
34
34
|
|
|
35
35
|
emit SwapYtAndToken(
|
|
36
|
-
msg.sender,
|
|
37
|
-
market,
|
|
38
|
-
input.tokenIn,
|
|
39
|
-
receiver,
|
|
40
|
-
netYtOut.Int(),
|
|
41
|
-
input.netTokenIn.neg(),
|
|
42
|
-
netSyInterm
|
|
36
|
+
msg.sender, market, input.tokenIn, receiver, netYtOut.Int(), input.netTokenIn.neg(), netSyInterm
|
|
43
37
|
);
|
|
44
38
|
}
|
|
45
39
|
|
|
@@ -56,7 +50,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase, ActionD
|
|
|
56
50
|
return delegateToSwapExactSyForYtSimple(receiver, market, exactSyIn, minYtOut);
|
|
57
51
|
}
|
|
58
52
|
|
|
59
|
-
(IStandardizedYield SY
|
|
53
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
60
54
|
_transferFrom(SY, msg.sender, _entry_swapExactSyForYt(YT, limit), exactSyIn);
|
|
61
55
|
|
|
62
56
|
(netYtOut, netSyFee) = _swapExactSyForYt(receiver, market, SY, YT, exactSyIn, minYtOut, guessYtOut, limit);
|
|
@@ -73,7 +67,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase, ActionD
|
|
|
73
67
|
TokenOutput calldata output,
|
|
74
68
|
LimitOrderData calldata limit
|
|
75
69
|
) external returns (uint256 netTokenOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
76
|
-
(IStandardizedYield SY
|
|
70
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
77
71
|
_transferFrom(YT, msg.sender, _entry_swapExactYtForSy(YT, limit), exactYtIn);
|
|
78
72
|
|
|
79
73
|
(netSyInterm, netSyFee) = _swapExactYtForSy(address(SY), market, SY, YT, exactYtIn, 0, limit);
|
|
@@ -81,13 +75,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase, ActionD
|
|
|
81
75
|
netTokenOut = _redeemSyToToken(receiver, address(SY), netSyInterm, output, false);
|
|
82
76
|
|
|
83
77
|
emit SwapYtAndToken(
|
|
84
|
-
msg.sender,
|
|
85
|
-
market,
|
|
86
|
-
output.tokenOut,
|
|
87
|
-
receiver,
|
|
88
|
-
exactYtIn.neg(),
|
|
89
|
-
netTokenOut.Int(),
|
|
90
|
-
netSyInterm
|
|
78
|
+
msg.sender, market, output.tokenOut, receiver, exactYtIn.neg(), netTokenOut.Int(), netSyInterm
|
|
91
79
|
);
|
|
92
80
|
}
|
|
93
81
|
|
|
@@ -99,7 +87,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase, ActionD
|
|
|
99
87
|
uint256 minSyOut,
|
|
100
88
|
LimitOrderData calldata limit
|
|
101
89
|
) external returns (uint256 netSyOut, uint256 netSyFee) {
|
|
102
|
-
(IStandardizedYield SY
|
|
90
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
103
91
|
_transferFrom(YT, msg.sender, _entry_swapExactYtForSy(YT, limit), exactYtIn);
|
|
104
92
|
|
|
105
93
|
(netSyOut, netSyFee) = _swapExactYtForSy(receiver, market, SY, YT, exactYtIn, minSyOut, limit);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "@openzeppelin/contracts/proxy/Proxy.sol";
|
|
5
4
|
import "../interfaces/IPActionStorageV4.sol";
|
|
6
5
|
import "./RouterStorage.sol";
|
|
6
|
+
import "@openzeppelin/contracts/proxy/Proxy.sol";
|
|
7
7
|
|
|
8
8
|
contract PendleRouterV4 is Proxy, RouterStorage {
|
|
9
9
|
constructor(address _owner, address actionStorage) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
+
import "../core/libraries/TokenHelper.sol";
|
|
4
5
|
import "../interfaces/IPAllActionV3.sol";
|
|
5
|
-
import "../interfaces/IPReflector.sol";
|
|
6
6
|
import "../interfaces/IPMarket.sol";
|
|
7
|
+
import "../interfaces/IPReflector.sol";
|
|
7
8
|
import "../interfaces/IStandardizedYield.sol";
|
|
8
|
-
import "../core/libraries/TokenHelper.sol";
|
|
9
9
|
|
|
10
10
|
contract Reflector is TokenHelper, IPReflector {
|
|
11
11
|
using SafeERC20 for IERC20;
|
|
@@ -33,9 +33,9 @@ contract Reflector is TokenHelper, IPReflector {
|
|
|
33
33
|
bytes calldata data = inputData[4:];
|
|
34
34
|
|
|
35
35
|
if (
|
|
36
|
-
selector == IPActionAddRemoveLiqV3.addLiquiditySingleToken.selector
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
selector == IPActionAddRemoveLiqV3.addLiquiditySingleToken.selector
|
|
37
|
+
|| selector == IPActionSwapPTV3.swapExactTokenForPt.selector
|
|
38
|
+
|| selector == IPActionSwapYTV3.swapExactTokenForYt.selector
|
|
39
39
|
) {
|
|
40
40
|
(
|
|
41
41
|
address v1,
|
|
@@ -49,29 +49,23 @@ contract Reflector is TokenHelper, IPReflector {
|
|
|
49
49
|
value = _scaleTokenInputAndGetValue(v5);
|
|
50
50
|
newCalldata = abi.encodeWithSelector(selector, v1, v2, v3, v4, v5, v6);
|
|
51
51
|
} else if (selector == IPActionAddRemoveLiqV3.addLiquiditySingleTokenKeepYt.selector) {
|
|
52
|
-
(address v1, address v2, uint256 v3, uint256 v4, TokenInput memory v5) =
|
|
53
|
-
data,
|
|
54
|
-
(address, address, uint256, uint256, TokenInput)
|
|
55
|
-
);
|
|
52
|
+
(address v1, address v2, uint256 v3, uint256 v4, TokenInput memory v5) =
|
|
53
|
+
abi.decode(data, (address, address, uint256, uint256, TokenInput));
|
|
56
54
|
|
|
57
55
|
value = _scaleTokenInputAndGetValue(v5);
|
|
58
56
|
newCalldata = abi.encodeWithSelector(selector, v1, v2, v3, v4, v5);
|
|
59
57
|
} else if (
|
|
60
|
-
selector == IPActionAddRemoveLiqV3.addLiquiditySingleSy.selector
|
|
61
|
-
|
|
62
|
-
|
|
58
|
+
selector == IPActionAddRemoveLiqV3.addLiquiditySingleSy.selector
|
|
59
|
+
|| selector == IPActionSwapPTV3.swapExactSyForPt.selector
|
|
60
|
+
|| selector == IPActionSwapYTV3.swapExactSyForYt.selector
|
|
63
61
|
) {
|
|
64
|
-
(address v1, address v2
|
|
65
|
-
data,
|
|
66
|
-
(address, address, uint256, uint256, ApproxParams, LimitOrderData)
|
|
67
|
-
);
|
|
62
|
+
(address v1, address v2,, uint256 v4, ApproxParams memory v5, LimitOrderData memory v6) =
|
|
63
|
+
abi.decode(data, (address, address, uint256, uint256, ApproxParams, LimitOrderData));
|
|
68
64
|
|
|
69
65
|
newCalldata = abi.encodeWithSelector(selector, v1, v2, _scaleSyInput(v2), v4, v5, v6);
|
|
70
66
|
} else if (selector == IPActionAddRemoveLiqV3.addLiquiditySingleSyKeepYt.selector) {
|
|
71
|
-
(address v1, address v2
|
|
72
|
-
data,
|
|
73
|
-
(address, address, uint256, uint256, uint256)
|
|
74
|
-
);
|
|
67
|
+
(address v1, address v2,, uint256 v4, uint256 v5) =
|
|
68
|
+
abi.decode(data, (address, address, uint256, uint256, uint256));
|
|
75
69
|
|
|
76
70
|
newCalldata = abi.encodeWithSelector(selector, v1, v2, _scaleSyInput(v2), v4, v5);
|
|
77
71
|
} else {
|
|
@@ -95,7 +89,7 @@ contract Reflector is TokenHelper, IPReflector {
|
|
|
95
89
|
}
|
|
96
90
|
|
|
97
91
|
function _scaleSyInput(address market) internal returns (uint256 res) {
|
|
98
|
-
(IStandardizedYield SY
|
|
92
|
+
(IStandardizedYield SY,,) = IPMarket(market).readTokens();
|
|
99
93
|
res = SY.balanceOf(address(this));
|
|
100
94
|
|
|
101
95
|
if (!approved[address(SY)]) {
|