@pendle/core-v2 6.3.0 → 6.3.1
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/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/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/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/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-offchain-helper.json +2 -1
- package/deployments/10-offchain-helper.json +2 -1
- package/deployments/146-offchain-helper.json +2 -1
- package/deployments/42161-offchain-helper.json +2 -1
- package/deployments/5000-offchain-helper.json +2 -1
- package/deployments/56-offchain-helper.json +2 -1
- package/deployments/80094-offchain-helper.json +2 -1
- package/deployments/8453-offchain-helper.json +2 -1
- package/deployments/9745-offchain-helper.json +2 -1
- package/deployments/999-offchain-helper.json +2 -1
- package/package.json +3 -5
- package/typechain-types/ActionCrossChain.ts +161 -0
- package/typechain-types/BasePendleBridgedPrincipalToken.ts +1689 -0
- package/typechain-types/IOKXDexRouter.ts +99 -0
- package/typechain-types/IPActionCrossChain.ts +161 -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/LimitBackendHelper.ts +287 -0
- package/typechain-types/PendleBridgedPrincipalToken_18Decimals.ts +1689 -0
- package/typechain-types/PendleBridgedPrincipalToken_6Decimals.ts +1689 -0
- package/typechain-types/PendleBridgedPrincipalToken_8Decimals.ts +1689 -0
- package/typechain-types/PendleCrossChainOracleBaseApp_Init.ts +13 -19
- package/typechain-types/PendleExchangeRateOracleApp.ts +73 -9
- package/typechain-types/PendleFeeSetter.ts +522 -0
- package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
- package/typechain-types/factories/ActionCallbackV3__factory.ts +1 -1
- package/typechain-types/factories/ActionCrossChain__factory.ts +152 -0
- 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/BasePendleBridgedPrincipalToken__factory.ts +1548 -0
- 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/IOKXDexRouter__factory.ts +171 -0
- package/typechain-types/factories/{IMarketSweed__factory.ts → IPActionCrossChain__factory.ts} +22 -61
- 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/LimitBackendHelper__factory.ts +232 -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 +1 -1
- package/typechain-types/factories/PendleBridgedPrincipalToken_18Decimals__factory.ts +1652 -0
- package/typechain-types/factories/PendleBridgedPrincipalToken_6Decimals__factory.ts +1650 -0
- package/typechain-types/factories/PendleBridgedPrincipalToken_8Decimals__factory.ts +1650 -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 +395 -0
- 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 -27
- package/typechain-types/index.ts +6 -6
- package/typechain-types/IMarketSweed.ts +0 -203
- package/typechain-types/LimitMathCore.ts +0 -102
- package/typechain-types/MarketSweed.ts +0 -255
- package/typechain-types/factories/LimitMathCore__factory.ts +0 -87
- package/typechain-types/factories/MarketSweed__factory.ts +0 -385
|
@@ -3,8 +3,8 @@ pragma solidity ^0.8.17;
|
|
|
3
3
|
|
|
4
4
|
import "../../../interfaces/IPMarket.sol";
|
|
5
5
|
import "../../../interfaces/IPRouterStatic.sol";
|
|
6
|
-
import "./StorageLayout.sol";
|
|
7
6
|
import "./MarketApproxLibV1.sol";
|
|
7
|
+
import "./StorageLayout.sol";
|
|
8
8
|
|
|
9
9
|
contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
10
10
|
using PMath for uint256;
|
|
@@ -21,11 +21,11 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
21
21
|
|
|
22
22
|
address internal constant ROUTER_V4 = 0x888888888889758F76e7103c6CbF23ABbF58F946;
|
|
23
23
|
|
|
24
|
-
function addLiquidityDualSyAndPtStatic(
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
uint256
|
|
28
|
-
|
|
24
|
+
function addLiquidityDualSyAndPtStatic(address market, uint256 netSyDesired, uint256 netPtDesired)
|
|
25
|
+
public
|
|
26
|
+
view
|
|
27
|
+
returns (uint256 netLpOut, uint256 netSyUsed, uint256 netPtUsed)
|
|
28
|
+
{
|
|
29
29
|
MarketState memory state = _readState(market);
|
|
30
30
|
(, netLpOut, netSyUsed, netPtUsed) = state.addLiquidity(netSyDesired, netPtDesired, block.timestamp);
|
|
31
31
|
}
|
|
@@ -57,10 +57,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
/// @dev netPtToSwap is the parameter to approx
|
|
60
|
-
function addLiquiditySinglePtStatic(
|
|
61
|
-
address market,
|
|
62
|
-
uint256 netPtIn
|
|
63
|
-
)
|
|
60
|
+
function addLiquiditySinglePtStatic(address market, uint256 netPtIn)
|
|
64
61
|
public
|
|
65
62
|
view
|
|
66
63
|
returns (
|
|
@@ -75,28 +72,20 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
75
72
|
{
|
|
76
73
|
MarketState memory state = _readState(market);
|
|
77
74
|
|
|
78
|
-
(netPtToSwap
|
|
79
|
-
_pyIndex(market),
|
|
80
|
-
netPtIn,
|
|
81
|
-
0,
|
|
82
|
-
block.timestamp,
|
|
83
|
-
defaultApproxParams
|
|
84
|
-
);
|
|
75
|
+
(netPtToSwap,,,) =
|
|
76
|
+
state.approxSwapPtToAddLiquidity(_pyIndex(market), netPtIn, 0, block.timestamp, defaultApproxParams);
|
|
85
77
|
|
|
86
78
|
state = _readState(market); // re-read
|
|
87
79
|
|
|
88
|
-
(netSyFromSwap, netSyFee,
|
|
89
|
-
(, netLpOut
|
|
80
|
+
(netSyFromSwap, netSyFee,) = state.swapExactPtForSy(_pyIndex(market), netPtToSwap, block.timestamp);
|
|
81
|
+
(, netLpOut,,) = state.addLiquidity(netSyFromSwap, netPtIn - netPtToSwap, block.timestamp);
|
|
90
82
|
|
|
91
83
|
priceImpact = _calcPriceImpactPt(market, netPtToSwap.neg());
|
|
92
84
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
93
85
|
}
|
|
94
86
|
|
|
95
87
|
/// @dev netPtFromSwap is the parameter to approx
|
|
96
|
-
function addLiquiditySingleSyStatic(
|
|
97
|
-
address market,
|
|
98
|
-
uint256 netSyIn
|
|
99
|
-
)
|
|
88
|
+
function addLiquiditySingleSyStatic(address market, uint256 netSyIn)
|
|
100
89
|
public
|
|
101
90
|
view
|
|
102
91
|
returns (
|
|
@@ -111,28 +100,19 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
111
100
|
{
|
|
112
101
|
MarketState memory state = _readState(market);
|
|
113
102
|
|
|
114
|
-
(netPtFromSwap
|
|
115
|
-
_pyIndex(market),
|
|
116
|
-
netSyIn,
|
|
117
|
-
0,
|
|
118
|
-
block.timestamp,
|
|
119
|
-
defaultApproxParams
|
|
120
|
-
);
|
|
103
|
+
(netPtFromSwap,,,) =
|
|
104
|
+
state.approxSwapSyToAddLiquidity(_pyIndex(market), netSyIn, 0, block.timestamp, defaultApproxParams);
|
|
121
105
|
|
|
122
106
|
state = _readState(market); // re-read
|
|
123
107
|
|
|
124
|
-
(netSyToSwap, netSyFee,
|
|
125
|
-
(, netLpOut
|
|
108
|
+
(netSyToSwap, netSyFee,) = state.swapSyForExactPt(_pyIndex(market), netPtFromSwap, block.timestamp);
|
|
109
|
+
(, netLpOut,,) = state.addLiquidity(netSyIn - netSyToSwap, netPtFromSwap, block.timestamp);
|
|
126
110
|
|
|
127
111
|
priceImpact = _calcPriceImpactPt(market, netPtFromSwap.Int());
|
|
128
112
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
129
113
|
}
|
|
130
114
|
|
|
131
|
-
function addLiquiditySingleTokenStatic(
|
|
132
|
-
address market,
|
|
133
|
-
address tokenIn,
|
|
134
|
-
uint256 netTokenIn
|
|
135
|
-
)
|
|
115
|
+
function addLiquiditySingleTokenStatic(address market, address tokenIn, uint256 netTokenIn)
|
|
136
116
|
public
|
|
137
117
|
view
|
|
138
118
|
returns (
|
|
@@ -147,17 +127,11 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
147
127
|
)
|
|
148
128
|
{
|
|
149
129
|
netSyMinted = _mintSyFromTokenStatic(market, tokenIn, netTokenIn);
|
|
150
|
-
(netLpOut, netPtFromSwap, netSyFee, priceImpact, exchangeRateAfter, netSyToSwap) =
|
|
151
|
-
market,
|
|
152
|
-
netSyMinted
|
|
153
|
-
);
|
|
130
|
+
(netLpOut, netPtFromSwap, netSyFee, priceImpact, exchangeRateAfter, netSyToSwap) =
|
|
131
|
+
addLiquiditySingleSyStatic(market, netSyMinted);
|
|
154
132
|
}
|
|
155
133
|
|
|
156
|
-
function addLiquiditySingleTokenKeepYtStatic(
|
|
157
|
-
address market,
|
|
158
|
-
address tokenIn,
|
|
159
|
-
uint256 netTokenIn
|
|
160
|
-
)
|
|
134
|
+
function addLiquiditySingleTokenKeepYtStatic(address market, address tokenIn, uint256 netTokenIn)
|
|
161
135
|
public
|
|
162
136
|
view
|
|
163
137
|
returns (
|
|
@@ -172,10 +146,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
172
146
|
(netLpOut, netYtOut, netSyToPY) = addLiquiditySingleSyKeepYtStatic(market, netSyMinted);
|
|
173
147
|
}
|
|
174
148
|
|
|
175
|
-
function addLiquiditySingleSyKeepYtStatic(
|
|
176
|
-
address market,
|
|
177
|
-
uint256 netSyIn
|
|
178
|
-
)
|
|
149
|
+
function addLiquiditySingleSyKeepYtStatic(address market, uint256 netSyIn)
|
|
179
150
|
public
|
|
180
151
|
view
|
|
181
152
|
returns (
|
|
@@ -192,32 +163,30 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
192
163
|
|
|
193
164
|
netYtOut = index.syToAsset(netSyToPY);
|
|
194
165
|
|
|
195
|
-
(, netLpOut
|
|
166
|
+
(, netLpOut,,) = state.addLiquidity(netSyIn - netSyToPY, netYtOut, block.timestamp);
|
|
196
167
|
}
|
|
197
168
|
|
|
198
|
-
function removeLiquidityDualSyAndPtStatic(
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
169
|
+
function removeLiquidityDualSyAndPtStatic(address market, uint256 netLpToRemove)
|
|
170
|
+
public
|
|
171
|
+
view
|
|
172
|
+
returns (uint256 netSyOut, uint256 netPtOut)
|
|
173
|
+
{
|
|
202
174
|
MarketState memory state = _readState(market);
|
|
203
175
|
(netSyOut, netPtOut) = state.removeLiquidity(netLpToRemove);
|
|
204
176
|
}
|
|
205
177
|
|
|
206
|
-
function removeLiquidityDualTokenAndPtStatic(
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
178
|
+
function removeLiquidityDualTokenAndPtStatic(address market, uint256 netLpToRemove, address tokenOut)
|
|
179
|
+
public
|
|
180
|
+
view
|
|
181
|
+
returns (uint256 netTokenOut, uint256 netPtOut, uint256 netSyToRedeem)
|
|
182
|
+
{
|
|
211
183
|
(netSyToRedeem, netPtOut) = removeLiquidityDualSyAndPtStatic(market, netLpToRemove);
|
|
212
184
|
netTokenOut = _redeemSyToTokenStatic(market, tokenOut, netSyToRedeem);
|
|
213
185
|
}
|
|
214
186
|
|
|
215
187
|
/// @dev netPtFromSwap is the parameter to approx
|
|
216
188
|
/// @notice should revert post-expiry
|
|
217
|
-
function removeLiquiditySinglePtStatic(
|
|
218
|
-
address market,
|
|
219
|
-
uint256 netLpToRemove
|
|
220
|
-
)
|
|
189
|
+
function removeLiquiditySinglePtStatic(address market, uint256 netLpToRemove)
|
|
221
190
|
public
|
|
222
191
|
view
|
|
223
192
|
returns (
|
|
@@ -234,12 +203,8 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
234
203
|
MarketState memory state = _readState(market);
|
|
235
204
|
|
|
236
205
|
(netSyFromBurn, netPtFromBurn) = state.removeLiquidity(netLpToRemove);
|
|
237
|
-
(netPtFromSwap, netSyFee,
|
|
238
|
-
_pyIndex(market),
|
|
239
|
-
netSyFromBurn,
|
|
240
|
-
block.timestamp,
|
|
241
|
-
defaultApproxParams
|
|
242
|
-
);
|
|
206
|
+
(netPtFromSwap, netSyFee,) =
|
|
207
|
+
state.approxSwapExactSyForPt(_pyIndex(market), netSyFromBurn, block.timestamp, defaultApproxParams);
|
|
243
208
|
|
|
244
209
|
netPtOut = netPtFromBurn + netPtFromSwap;
|
|
245
210
|
priceImpact = _calcPriceImpactPt(market, netPtFromSwap.Int());
|
|
@@ -249,10 +214,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
249
214
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
250
215
|
}
|
|
251
216
|
|
|
252
|
-
function removeLiquiditySingleSyStatic(
|
|
253
|
-
address market,
|
|
254
|
-
uint256 netLpToRemove
|
|
255
|
-
)
|
|
217
|
+
function removeLiquiditySingleSyStatic(address market, uint256 netLpToRemove)
|
|
256
218
|
public
|
|
257
219
|
view
|
|
258
220
|
returns (
|
|
@@ -276,7 +238,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
276
238
|
priceImpact = 0;
|
|
277
239
|
exchangeRateAfter = PMath.ONE;
|
|
278
240
|
} else {
|
|
279
|
-
(netSyFromSwap, netSyFee,
|
|
241
|
+
(netSyFromSwap, netSyFee,) = state.swapExactPtForSy(_pyIndex(market), netPtFromBurn, block.timestamp);
|
|
280
242
|
|
|
281
243
|
netSyOut = netSyFromBurn + netSyFromSwap;
|
|
282
244
|
priceImpact = _calcPriceImpactPt(market, netPtFromBurn.neg());
|
|
@@ -284,11 +246,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
284
246
|
}
|
|
285
247
|
}
|
|
286
248
|
|
|
287
|
-
function removeLiquiditySingleTokenStatic(
|
|
288
|
-
address market,
|
|
289
|
-
uint256 netLpToRemove,
|
|
290
|
-
address tokenOut
|
|
291
|
-
)
|
|
249
|
+
function removeLiquiditySingleTokenStatic(address market, uint256 netLpToRemove, address tokenOut)
|
|
292
250
|
public
|
|
293
251
|
view
|
|
294
252
|
returns (
|
|
@@ -303,53 +261,45 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
303
261
|
uint256 netSyFromSwap
|
|
304
262
|
)
|
|
305
263
|
{
|
|
306
|
-
(
|
|
307
|
-
|
|
308
|
-
netSyFee,
|
|
309
|
-
priceImpact,
|
|
310
|
-
exchangeRateAfter,
|
|
311
|
-
netSyFromBurn,
|
|
312
|
-
netPtFromBurn,
|
|
313
|
-
netSyFromSwap
|
|
314
|
-
) = removeLiquiditySingleSyStatic(market, netLpToRemove);
|
|
264
|
+
(netSyOut, netSyFee, priceImpact, exchangeRateAfter, netSyFromBurn, netPtFromBurn, netSyFromSwap) =
|
|
265
|
+
removeLiquiditySingleSyStatic(market, netLpToRemove);
|
|
315
266
|
|
|
316
267
|
netTokenOut = _redeemSyToTokenStatic(market, tokenOut, netSyOut);
|
|
317
268
|
}
|
|
318
269
|
|
|
319
270
|
// ============ SWAP PT ============
|
|
320
271
|
|
|
321
|
-
function swapExactPtForSyStatic(
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
272
|
+
function swapExactPtForSyStatic(address market, uint256 exactPtIn)
|
|
273
|
+
public
|
|
274
|
+
view
|
|
275
|
+
returns (uint256 netSyOut, uint256 netSyFee, uint256 priceImpact, uint256 exchangeRateAfter)
|
|
276
|
+
{
|
|
325
277
|
MarketState memory state = _readState(market);
|
|
326
|
-
(netSyOut, netSyFee,
|
|
278
|
+
(netSyOut, netSyFee,) = state.swapExactPtForSy(_pyIndex(market), exactPtIn, block.timestamp);
|
|
327
279
|
priceImpact = _calcPriceImpactPt(market, exactPtIn.neg());
|
|
328
280
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
329
281
|
}
|
|
330
282
|
|
|
331
|
-
function swapSyForExactPtStatic(
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
283
|
+
function swapSyForExactPtStatic(address market, uint256 exactPtOut)
|
|
284
|
+
public
|
|
285
|
+
view
|
|
286
|
+
returns (uint256 netSyIn, uint256 netSyFee, uint256 priceImpact, uint256 exchangeRateAfter)
|
|
287
|
+
{
|
|
335
288
|
MarketState memory state = _readState(market);
|
|
336
|
-
(netSyIn, netSyFee,
|
|
289
|
+
(netSyIn, netSyFee,) = state.swapSyForExactPt(_pyIndex(market), exactPtOut, block.timestamp);
|
|
337
290
|
priceImpact = _calcPriceImpactPt(market, exactPtOut.Int());
|
|
338
291
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
339
292
|
}
|
|
340
293
|
|
|
341
294
|
/// @dev netPtOut is the parameter to approx
|
|
342
|
-
function swapExactSyForPtStatic(
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
295
|
+
function swapExactSyForPtStatic(address market, uint256 exactSyIn)
|
|
296
|
+
public
|
|
297
|
+
view
|
|
298
|
+
returns (uint256 netPtOut, uint256 netSyFee, uint256 priceImpact, uint256 exchangeRateAfter)
|
|
299
|
+
{
|
|
346
300
|
MarketState memory state = _readState(market);
|
|
347
|
-
(netPtOut, netSyFee,
|
|
348
|
-
_pyIndex(market),
|
|
349
|
-
exactSyIn,
|
|
350
|
-
block.timestamp,
|
|
351
|
-
defaultApproxParams
|
|
352
|
-
);
|
|
301
|
+
(netPtOut, netSyFee,) =
|
|
302
|
+
state.approxSwapExactSyForPt(_pyIndex(market), exactSyIn, block.timestamp, defaultApproxParams);
|
|
353
303
|
priceImpact = _calcPriceImpactPt(market, netPtOut.Int());
|
|
354
304
|
|
|
355
305
|
// Execute swap to calculate exchangeRateAfter
|
|
@@ -358,18 +308,15 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
358
308
|
}
|
|
359
309
|
|
|
360
310
|
/// @dev netPtIn is the parameter to approx
|
|
361
|
-
function swapPtForExactSyStatic(
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
311
|
+
function swapPtForExactSyStatic(address market, uint256 exactSyOut)
|
|
312
|
+
public
|
|
313
|
+
view
|
|
314
|
+
returns (uint256 netPtIn, uint256 netSyFee, uint256 priceImpact, uint256 exchangeRateAfter)
|
|
315
|
+
{
|
|
365
316
|
MarketState memory state = _readState(market);
|
|
366
317
|
|
|
367
|
-
(netPtIn
|
|
368
|
-
_pyIndex(market),
|
|
369
|
-
exactSyOut,
|
|
370
|
-
block.timestamp,
|
|
371
|
-
defaultApproxParams
|
|
372
|
-
);
|
|
318
|
+
(netPtIn,, netSyFee) =
|
|
319
|
+
state.approxSwapPtForExactSy(_pyIndex(market), exactSyOut, block.timestamp, defaultApproxParams);
|
|
373
320
|
priceImpact = _calcPriceImpactPt(market, netPtIn.neg());
|
|
374
321
|
|
|
375
322
|
// Execute swap to calculate exchangeRateAfter
|
|
@@ -377,11 +324,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
377
324
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
378
325
|
}
|
|
379
326
|
|
|
380
|
-
function swapExactTokenForPtStatic(
|
|
381
|
-
address market,
|
|
382
|
-
address tokenIn,
|
|
383
|
-
uint256 amountTokenIn
|
|
384
|
-
)
|
|
327
|
+
function swapExactTokenForPtStatic(address market, address tokenIn, uint256 amountTokenIn)
|
|
385
328
|
public
|
|
386
329
|
view
|
|
387
330
|
returns (
|
|
@@ -397,11 +340,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
397
340
|
(netPtOut, netSyFee, priceImpact, exchangeRateAfter) = swapExactSyForPtStatic(market, netSyMinted);
|
|
398
341
|
}
|
|
399
342
|
|
|
400
|
-
function swapExactPtForTokenStatic(
|
|
401
|
-
address market,
|
|
402
|
-
uint256 exactPtIn,
|
|
403
|
-
address tokenOut
|
|
404
|
-
)
|
|
343
|
+
function swapExactPtForTokenStatic(address market, uint256 exactPtIn, address tokenOut)
|
|
405
344
|
public
|
|
406
345
|
view
|
|
407
346
|
returns (
|
|
@@ -419,10 +358,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
419
358
|
|
|
420
359
|
// ============ SWAP YT ============
|
|
421
360
|
|
|
422
|
-
function swapSyForExactYtStatic(
|
|
423
|
-
address market,
|
|
424
|
-
uint256 exactYtOut
|
|
425
|
-
)
|
|
361
|
+
function swapSyForExactYtStatic(address market, uint256 exactYtOut)
|
|
426
362
|
public
|
|
427
363
|
view
|
|
428
364
|
returns (
|
|
@@ -440,7 +376,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
440
376
|
MarketState memory state = _readState(market);
|
|
441
377
|
PYIndex index = _pyIndex(market);
|
|
442
378
|
|
|
443
|
-
(netSyReceivedInt, netSyFee,
|
|
379
|
+
(netSyReceivedInt, netSyFee,) = state.swapExactPtForSy(_pyIndex(market), exactYtOut, block.timestamp);
|
|
444
380
|
|
|
445
381
|
totalSyNeedInt = index.assetToSyUp(exactYtOut);
|
|
446
382
|
netSyIn = totalSyNeedInt.subMax0(netSyReceivedInt);
|
|
@@ -449,14 +385,15 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
449
385
|
}
|
|
450
386
|
|
|
451
387
|
/// @dev netYtOut is the parameter to approx
|
|
452
|
-
function swapExactSyForYtStatic(
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
388
|
+
function swapExactSyForYtStatic(address market, uint256 exactSyIn)
|
|
389
|
+
public
|
|
390
|
+
view
|
|
391
|
+
returns (uint256 netYtOut, uint256 netSyFee, uint256 priceImpact, uint256 exchangeRateAfter)
|
|
392
|
+
{
|
|
456
393
|
MarketState memory state = _readState(market);
|
|
457
394
|
PYIndex index = _pyIndex(market);
|
|
458
395
|
|
|
459
|
-
(netYtOut, netSyFee,
|
|
396
|
+
(netYtOut, netSyFee,) = state.approxSwapExactSyForYt(index, exactSyIn, block.timestamp, defaultApproxParams);
|
|
460
397
|
|
|
461
398
|
priceImpact = _calcPriceImpactYt(market, netYtOut.neg());
|
|
462
399
|
|
|
@@ -465,10 +402,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
465
402
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
466
403
|
}
|
|
467
404
|
|
|
468
|
-
function swapExactYtForSyStatic(
|
|
469
|
-
address market,
|
|
470
|
-
uint256 exactYtIn
|
|
471
|
-
)
|
|
405
|
+
function swapExactYtForSyStatic(address market, uint256 exactYtIn)
|
|
472
406
|
public
|
|
473
407
|
view
|
|
474
408
|
returns (
|
|
@@ -488,7 +422,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
488
422
|
|
|
489
423
|
PYIndex index = _pyIndex(market);
|
|
490
424
|
|
|
491
|
-
(netSyOwedInt, netSyFee,
|
|
425
|
+
(netSyOwedInt, netSyFee,) = state.swapSyForExactPt(index, exactYtIn, block.timestamp);
|
|
492
426
|
|
|
493
427
|
netPYToRepaySyOwedInt = index.syToAssetUp(netSyOwedInt);
|
|
494
428
|
netPYToRedeemSyOutInt = exactYtIn - netPYToRepaySyOwedInt;
|
|
@@ -497,11 +431,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
497
431
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
498
432
|
}
|
|
499
433
|
|
|
500
|
-
function swapExactYtForTokenStatic(
|
|
501
|
-
address market,
|
|
502
|
-
uint256 exactYtIn,
|
|
503
|
-
address tokenOut
|
|
504
|
-
)
|
|
434
|
+
function swapExactYtForTokenStatic(address market, uint256 exactYtIn, address tokenOut)
|
|
505
435
|
public
|
|
506
436
|
view
|
|
507
437
|
returns (
|
|
@@ -530,15 +460,16 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
530
460
|
}
|
|
531
461
|
|
|
532
462
|
/// @dev netYtIn is the parameter to approx
|
|
533
|
-
function swapYtForExactSyStatic(
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
463
|
+
function swapYtForExactSyStatic(address market, uint256 exactSyOut)
|
|
464
|
+
public
|
|
465
|
+
view
|
|
466
|
+
returns (uint256 netYtIn, uint256 netSyFee, uint256 priceImpact, uint256 exchangeRateAfter)
|
|
467
|
+
{
|
|
537
468
|
MarketState memory state = _readState(market);
|
|
538
469
|
|
|
539
470
|
PYIndex index = _pyIndex(market);
|
|
540
471
|
|
|
541
|
-
(netYtIn
|
|
472
|
+
(netYtIn,, netSyFee) = state.approxSwapYtForExactSy(index, exactSyOut, block.timestamp, defaultApproxParams);
|
|
542
473
|
priceImpact = _calcPriceImpactYt(market, netYtIn.Int());
|
|
543
474
|
|
|
544
475
|
// Execute swap to calculate exchangeRateAfter
|
|
@@ -546,11 +477,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
546
477
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
547
478
|
}
|
|
548
479
|
|
|
549
|
-
function swapExactTokenForYtStatic(
|
|
550
|
-
address market,
|
|
551
|
-
address tokenIn,
|
|
552
|
-
uint256 amountTokenIn
|
|
553
|
-
)
|
|
480
|
+
function swapExactTokenForYtStatic(address market, address tokenIn, uint256 amountTokenIn)
|
|
554
481
|
public
|
|
555
482
|
view
|
|
556
483
|
returns (
|
|
@@ -566,10 +493,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
566
493
|
}
|
|
567
494
|
|
|
568
495
|
// totalPtToSwap is the param to approx
|
|
569
|
-
function swapExactPtForYtStatic(
|
|
570
|
-
address market,
|
|
571
|
-
uint256 exactPtIn
|
|
572
|
-
)
|
|
496
|
+
function swapExactPtForYtStatic(address market, uint256 exactPtIn)
|
|
573
497
|
public
|
|
574
498
|
view
|
|
575
499
|
returns (
|
|
@@ -583,12 +507,8 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
583
507
|
MarketState memory state = _readState(market);
|
|
584
508
|
PYIndex index = _pyIndex(market);
|
|
585
509
|
|
|
586
|
-
(netYtOut, totalPtToSwap, netSyFee) =
|
|
587
|
-
index,
|
|
588
|
-
exactPtIn,
|
|
589
|
-
block.timestamp,
|
|
590
|
-
defaultApproxParams
|
|
591
|
-
);
|
|
510
|
+
(netYtOut, totalPtToSwap, netSyFee) =
|
|
511
|
+
state.approxSwapExactPtForYt(index, exactPtIn, block.timestamp, defaultApproxParams);
|
|
592
512
|
priceImpact = _calcPriceImpactPY(market, totalPtToSwap.neg());
|
|
593
513
|
|
|
594
514
|
// Execute swap to calculate exchangeRateAfter
|
|
@@ -597,10 +517,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
597
517
|
}
|
|
598
518
|
|
|
599
519
|
// totalPtSwapped is the param to approx
|
|
600
|
-
function swapExactYtForPtStatic(
|
|
601
|
-
address market,
|
|
602
|
-
uint256 exactYtIn
|
|
603
|
-
)
|
|
520
|
+
function swapExactYtForPtStatic(address market, uint256 exactYtIn)
|
|
604
521
|
public
|
|
605
522
|
view
|
|
606
523
|
returns (
|
|
@@ -614,12 +531,8 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
614
531
|
MarketState memory state = _readState(market);
|
|
615
532
|
PYIndex index = _pyIndex(market);
|
|
616
533
|
|
|
617
|
-
(netPtOut, totalPtSwapped, netSyFee) =
|
|
618
|
-
index,
|
|
619
|
-
exactYtIn,
|
|
620
|
-
block.timestamp,
|
|
621
|
-
defaultApproxParams
|
|
622
|
-
);
|
|
534
|
+
(netPtOut, totalPtSwapped, netSyFee) =
|
|
535
|
+
state.approxSwapExactYtForPt(index, exactYtIn, block.timestamp, defaultApproxParams);
|
|
623
536
|
|
|
624
537
|
priceImpact = _calcPriceImpactPY(market, totalPtSwapped.Int());
|
|
625
538
|
|
|
@@ -648,19 +561,19 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
648
561
|
return IPRouterStatic(address(this)).calcPriceImpactYt(market, netPtOut);
|
|
649
562
|
}
|
|
650
563
|
|
|
651
|
-
function _mintSyFromTokenStatic(
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
uint256
|
|
655
|
-
|
|
564
|
+
function _mintSyFromTokenStatic(address market, address tokenIn, uint256 netTokenToDeposit)
|
|
565
|
+
internal
|
|
566
|
+
view
|
|
567
|
+
returns (uint256)
|
|
568
|
+
{
|
|
656
569
|
return IPRouterStatic(address(this)).mintSyFromTokenStatic(_getSyMarket(market), tokenIn, netTokenToDeposit);
|
|
657
570
|
}
|
|
658
571
|
|
|
659
|
-
function _redeemSyToTokenStatic(
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
uint256
|
|
663
|
-
|
|
572
|
+
function _redeemSyToTokenStatic(address market, address tokenOut, uint256 netSyToRedeem)
|
|
573
|
+
internal
|
|
574
|
+
view
|
|
575
|
+
returns (uint256)
|
|
576
|
+
{
|
|
664
577
|
return IPRouterStatic(address(this)).redeemSyToTokenStatic(_getSyMarket(market), tokenOut, netSyToRedeem);
|
|
665
578
|
}
|
|
666
579
|
|
|
@@ -673,7 +586,7 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
673
586
|
}
|
|
674
587
|
|
|
675
588
|
function _getSyMarket(address market) internal view returns (address) {
|
|
676
|
-
(IStandardizedYield SY
|
|
589
|
+
(IStandardizedYield SY,,) = IPMarket(market).readTokens();
|
|
677
590
|
return address(SY);
|
|
678
591
|
}
|
|
679
592
|
}
|
|
@@ -16,47 +16,47 @@ contract ActionMintRedeemStatic is StorageLayout, IPActionMintRedeemStatic {
|
|
|
16
16
|
return netPYToRedeem.divDown(pyIndexCurrentViewYt(YT));
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
function mintPyFromTokenStatic(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
uint256
|
|
23
|
-
|
|
19
|
+
function mintPyFromTokenStatic(address YT, address tokenIn, uint256 netTokenIn)
|
|
20
|
+
external
|
|
21
|
+
view
|
|
22
|
+
returns (uint256 netPyOut)
|
|
23
|
+
{
|
|
24
24
|
address SY = IPYieldToken(YT).SY();
|
|
25
25
|
uint256 netSyReceived = mintSyFromTokenStatic(SY, tokenIn, netTokenIn);
|
|
26
26
|
netPyOut = mintPyFromSyStatic(YT, netSyReceived);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
function redeemPyToTokenStatic(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
function redeemPyToTokenStatic(address YT, uint256 netPYToRedeem, address tokenOut)
|
|
30
|
+
external
|
|
31
|
+
view
|
|
32
|
+
returns (uint256 netTokenOut)
|
|
33
|
+
{
|
|
34
34
|
address SY = IPYieldToken(YT).SY();
|
|
35
35
|
uint256 netSyReceived = redeemPyToSyStatic(YT, netPYToRedeem);
|
|
36
36
|
netTokenOut = redeemSyToTokenStatic(SY, tokenOut, netSyReceived);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
function mintSyFromTokenStatic(
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
uint256
|
|
43
|
-
|
|
39
|
+
function mintSyFromTokenStatic(address SY, address tokenIn, uint256 netTokenIn)
|
|
40
|
+
public
|
|
41
|
+
view
|
|
42
|
+
returns (uint256 netSyOut)
|
|
43
|
+
{
|
|
44
44
|
return IStandardizedYield(SY).previewDeposit(tokenIn, netTokenIn);
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
function redeemSyToTokenStatic(
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
uint256
|
|
51
|
-
|
|
47
|
+
function redeemSyToTokenStatic(address SY, address tokenOut, uint256 netSyIn)
|
|
48
|
+
public
|
|
49
|
+
view
|
|
50
|
+
returns (uint256 netTokenOut)
|
|
51
|
+
{
|
|
52
52
|
return IStandardizedYield(SY).previewRedeem(tokenOut, netSyIn);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
-
function getAmountTokenToMintSy(
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
uint256
|
|
59
|
-
|
|
55
|
+
function getAmountTokenToMintSy(address SY, address tokenIn, uint256 netSyOut)
|
|
56
|
+
external
|
|
57
|
+
view
|
|
58
|
+
returns (uint256 netTokenIn)
|
|
59
|
+
{
|
|
60
60
|
uint256 pivotAmount;
|
|
61
61
|
|
|
62
62
|
if (tokenIn == address(0)) pivotAmount = 1e18;
|
|
@@ -96,7 +96,7 @@ contract ActionMintRedeemStatic is StorageLayout, IPActionMintRedeemStatic {
|
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
function pyIndexCurrentViewMarket(address market) public view returns (uint256) {
|
|
99
|
-
(
|
|
99
|
+
(,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
100
100
|
return pyIndexCurrentViewYt(address(YT));
|
|
101
101
|
}
|
|
102
102
|
|
|
@@ -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 "./StorageLayout.sol";
|
|
5
4
|
import "../../../interfaces/IPActionStorageStatic.sol";
|
|
6
5
|
import "../../../interfaces/IPMiniDiamond.sol";
|
|
6
|
+
import "./StorageLayout.sol";
|
|
7
7
|
|
|
8
8
|
contract ActionStorageStatic is StorageLayout, IPActionStorageStatic, IPMiniDiamond {
|
|
9
9
|
function setDefaultApproxParams(ApproxParams memory params) external onlyOwner {
|
|
@@ -20,9 +20,9 @@ contract ActionStorageStatic is StorageLayout, IPActionStorageStatic, IPMiniDiam
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
function setFacetForSelectors(SelectorsToFacet[] calldata arr) external onlyOwner {
|
|
23
|
-
for (uint256 i = 0; i < arr.length;
|
|
23
|
+
for (uint256 i = 0; i < arr.length;) {
|
|
24
24
|
SelectorsToFacet memory s = arr[i];
|
|
25
|
-
for (uint256 j = 0; j < s.selectors.length;
|
|
25
|
+
for (uint256 j = 0; j < s.selectors.length;) {
|
|
26
26
|
selectorToFacet[s.selectors[j]] = s.facet;
|
|
27
27
|
unchecked {
|
|
28
28
|
j++;
|