@pendle/core-v2 2.29.1 → 3.0.0-beta-2
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/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.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/LiquidityMining/libraries/WeekMath.sol/WeekMath.json +2 -2
- package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
- package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
- package/build/artifacts/contracts/core/Market/PendleExternalRewardDistributor.sol/PendleExternalRewardDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleExternalRewardDistributor.sol/PendleExternalRewardDistributor.json +2 -2
- package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
- package/build/artifacts/contracts/core/Market/v2/PendleGaugeV2.sol/PendleGaugeV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v2/PendleMarketFactoryV2.sol/PendleMarketFactoryV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v2/PendleMarketFactoryV2.sol/PendleMarketFactoryV2.json +2 -2
- package/build/artifacts/contracts/core/Market/v2/PendleMarketV2.sol/PendleMarketV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v2/PendleMarketV2.sol/PendleMarketV2.json +2 -2
- package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraSwEthBbAWethSYV2.sol/AuraSwEthBbAWethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraSwEthBbAWethSYV2.sol/AuraSwEthBbAWethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethVethSY.sol/PendleAuraWethVethSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethVethSY.sol/PendleAuraWethVethSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewProxy.sol/ComposableStablePreviewProxy.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV4.sol/ComposableStablePreviewV4.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV5.sol/ComposableStablePreviewV5.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/FluxTokenLib.sol/FluxTokenLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/FluxTokenLib.sol/FluxTokenLib.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/PendleFluxLendingSY.sol/PendleFluxLendingSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/PendleFluxLendingSY.sol/PendleFluxLendingSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/HLPPricingHelper.sol/HLPPricingHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/PendleHlpSY.sol/PendleHlpSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/PendleHlpSY.sol/PendleHlpSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleBridgedLSDSY.sol/PendleBridgedLSDSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleBridgedLSDSY.sol/PendleBridgedLSDSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol/PendleERC4626SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol/PendleERC4626SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleEUSDSY.sol/PendleEUSDSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleEUSDSY.sol/PendleEUSDSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Stader/PendleETHXSY.sol/PendleETHXSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Stader/PendleETHXSY.sol/PendleETHXSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaLpHelper.sol/ThenaLpHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaMath.sol/ThenaMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/IThenaSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/ThenaPreview.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/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
- package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.json +2 -2
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
- package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
- package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.json +2 -2
- package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
- package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.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/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.json +2 -2
- package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +9 -162
- 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/MiniHelpers.sol/MiniHelpers.json +2 -2
- 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/core/libraries/math/PMath.sol/PMath.json +2 -2
- package/build/artifacts/contracts/interfaces/Ankr/IAnkrBNB.sol/IAnkrBNB.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Ankr/IAnkrLiquidStaking.sol/IAnkrLiquidStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IPComposableStablePreview.sol/IPComposableStablePreview.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Balancer/IVersion.sol/IVersion.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotFactory.sol/ICamelotFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTFactory.sol/ICamelotNFTFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTHandler.sol/ICamelotNFTHandler.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPoolFactory.sol/ICamelotNitroPoolFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotRouter.sol/ICamelotRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/ICamelotYieldBooster.sol/ICamelotYieldBooster.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Camelot/IXGrail.sol/IXGrail.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/ICrvDepositor.sol/ICrvDepositor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/ICvxCrv.sol/ICvxCrv.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Flux/IFluxErc20.sol/IFluxErc20.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Flux/IFluxInterestRateModel.sol/IFluxInterestRateModel.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Frax/IFrxEthMinter.sol/IFrxEthMinter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/HMX/IHLPStaking.sol/IHLPStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/HMX/IHMXCalculator.sol/IHMXCalculator.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/HMX/IHMXCompounder.sol/IHMXCompounder.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/HMX/IHMXStaking.sol/IHMXStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/HMX/IHMXVester.sol/IHMXVester.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IDailLikePermit.sol/IDaiLikePermit.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IDailLikePermit.sol/IDaiLikePermit.json +59 -0
- package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.json +1050 -30
- 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/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +0 -45
- package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.json +0 -69
- package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.json +734 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.json +0 -26
- package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.json +688 -108
- package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.json +688 -108
- package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +2550 -331
- package/build/artifacts/contracts/interfaces/IPExternalRewardDistributor.sol/IPExternalRewardDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +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/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/ILimitOrderCallee.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/ILimitOrderCallee.json +77 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.json +779 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPOrderMixin.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPOrderMixin.json +544 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPOrderMixinType.dbg.json +4 -0
- package/build/artifacts/contracts/{router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.json → interfaces/IPLimitRouter.sol/IPOrderMixinType.json} +2 -2
- package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketFactoryV2.sol/IPMarketFactoryV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPOracleForSy.sol/IPOracleForSy.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPtOracle.sol/IPPtOracle.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.json +0 -25
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +0 -140
- 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/IPendlePreviewHelper.sol/IPendlePreviewHelper.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateLP.sol/IStargateLP.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateStaking.sol/IStargateStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ISwETH.sol/ISwETH.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/interfaces/Lybra/IEUSD.sol/IEUSD.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Stader/IStaderStakeManager.sol/IStaderStakeManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Thena/IThenaFactory.sol/IThenaFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Thena/IThenaGaugeV2.sol/IThenaGaugeV2.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Thena/IThenaPair.sol/IThenaPair.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Thena/IThenaRouter.sol/IThenaRouter.dbg.json +1 -1
- package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +4 -0
- package/build/artifacts/contracts/{core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json → limit/LimitMathCore.sol/LimitMathCore.json} +4 -4
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +4 -0
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +910 -0
- package/build/artifacts/contracts/limit/PendleOrderMixin.sol/PendleOrderMixin.dbg.json +4 -0
- package/build/artifacts/contracts/limit/PendleOrderMixin.sol/PendleOrderMixin.json +760 -0
- package/build/artifacts/contracts/limit/helpers/ArgumentsDecoder.sol/ArgumentsDecoder.dbg.json +4 -0
- package/build/artifacts/contracts/limit/helpers/ArgumentsDecoder.sol/ArgumentsDecoder.json +10 -0
- package/build/artifacts/contracts/limit/helpers/NonceManager.sol/NonceManager.dbg.json +4 -0
- package/build/artifacts/contracts/limit/helpers/NonceManager.sol/NonceManager.json +99 -0
- package/build/artifacts/contracts/limit/helpers/Permitable.sol/Permitable.dbg.json +4 -0
- package/build/artifacts/contracts/limit/helpers/Permitable.sol/Permitable.json +10 -0
- package/build/artifacts/contracts/limit/helpers/RevertReasonParser.sol/RevertReasonParser.dbg.json +4 -0
- package/build/artifacts/contracts/limit/helpers/RevertReasonParser.sol/RevertReasonParser.json +10 -0
- 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/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/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
- 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/ChainlinkRelayerAutomation.sol/ChainlinkRelayerAutomation.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/ChainlinkRelayerAutomation.sol/ChainlinkRelayerAutomation.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/ChainlinkRelayerGelato.sol/ChainlinkRelayerGelato.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/ChainlinkRelayerGelato.sol/ChainlinkRelayerGelato.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/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/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.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/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/PtAndLpToAsset.sol/PtAndLpToAsset.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.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 -171
- 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 -47
- 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 -103
- 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 -28
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +2 -2
- package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.json +2 -2
- package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +2 -2
- package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +1052 -32
- package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.json +878 -3
- package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +730 -163
- package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +730 -169
- package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -18
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +3 -33
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.dbg.json +4 -0
- package/build/artifacts/contracts/{interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.json → router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.json} +113 -352
- package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +4 -0
- package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.json +10 -0
- package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.json +0 -59
- package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.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/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/oneinch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/oneinch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +1 -1
- package/contracts/core/Market/PendleMarketFactory.sol +21 -27
- package/contracts/core/libraries/Errors.sol +4 -21
- package/contracts/core/libraries/TokenHelper.sol +7 -7
- package/contracts/interfaces/IDailLikePermit.sol +17 -0
- package/contracts/interfaces/IPActionAddRemoveLiq.sol +16 -18
- package/contracts/interfaces/IPActionMarketCoreStatic.sol +20 -118
- package/contracts/interfaces/IPActionMintRedeemStatic.sol +17 -47
- package/contracts/interfaces/IPActionMisc.sol +88 -1
- package/contracts/interfaces/IPActionStorageStatic.sol +1 -8
- package/contracts/interfaces/IPActionSwapPT.sol +9 -20
- package/contracts/interfaces/IPActionSwapYT.sol +10 -21
- package/contracts/interfaces/IPAllAction.sol +0 -2
- package/contracts/interfaces/IPAllActionType.sol +33 -0
- package/contracts/interfaces/IPLimitRouter.sol +162 -0
- package/contracts/interfaces/IPMarketFactory.sol +2 -0
- package/contracts/interfaces/IPRouterHelper.sol +11 -45
- package/contracts/limit/LimitMathCore.sol +208 -0
- package/contracts/limit/PendleLimitRouter.sol +72 -0
- package/contracts/limit/PendleOrderMixin.sol +526 -0
- package/contracts/limit/helpers/ArgumentsDecoder.sol +47 -0
- package/contracts/limit/helpers/NonceManager.sol +28 -0
- package/contracts/limit/helpers/Permitable.sol +48 -0
- package/contracts/limit/helpers/RevertReasonParser.sol +75 -0
- package/contracts/offchain-helpers/AddressProvider.sol +1 -1
- package/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol +5 -18
- package/contracts/offchain-helpers/Broadcaster.sol +3 -3
- package/contracts/offchain-helpers/ChainlinkRelayerAutomation.sol +6 -13
- package/contracts/offchain-helpers/ChainlinkRelayerGelato.sol +5 -4
- package/contracts/offchain-helpers/EmptyUUPS.sol +2 -1
- package/contracts/offchain-helpers/PendleMulticallV1.sol +9 -11
- package/contracts/offchain-helpers/PendleMulticallV2.sol +1 -1
- package/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol +2 -19
- package/contracts/offchain-helpers/router-static/PendleRouterStatic.sol +1 -1
- package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +5 -18
- package/contracts/offchain-helpers/router-static/base/ActionLimitOrdersStatic.sol +145 -0
- package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +29 -82
- package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +82 -288
- package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +37 -108
- package/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol +4 -16
- package/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol +8 -10
- package/contracts/offchain-helpers/router-static/base/StorageLayout.sol +1 -4
- package/contracts/router/ActionAddRemoveLiq.sol +225 -440
- package/contracts/router/ActionMisc.sol +134 -14
- package/contracts/router/ActionSwapPT.sol +35 -195
- package/contracts/router/ActionSwapYT.sol +127 -288
- package/contracts/router/PendleRouter.sol +104 -128
- package/contracts/router/PendleRouterHelper.sol +100 -186
- package/contracts/router/base/ActionBase.sol +238 -0
- package/contracts/router/base/ActionBaseCallback.sol +25 -124
- package/contracts/router/base/CallbackHelper.sol +31 -110
- package/contracts/router/base/MarketApproxLib.sol +143 -176
- package/contracts/router/swap-aggregator/PendleSwap.sol +9 -20
- package/deployments/42161-core.json +4 -2
- package/package.json +4 -4
- package/typechain-types/ActionAddRemoveLiq.ts +151 -26
- package/typechain-types/ActionLimitOrdersStatic.ts +262 -0
- package/typechain-types/ActionMarketCoreStatic.ts +18 -63
- package/typechain-types/ActionMintRedeem.ts +4 -10
- package/typechain-types/ActionMintRedeemStatic.ts +10 -102
- package/typechain-types/ActionMisc.ts +732 -11
- package/typechain-types/ActionStorageStatic.ts +0 -55
- package/typechain-types/ActionSwapPT.ts +119 -121
- package/typechain-types/ActionSwapYT.ts +124 -126
- package/typechain-types/AuraWethVethSYUpg.ts +1547 -0
- package/typechain-types/EIP712Upgradeable.ts +68 -0
- package/typechain-types/IDaiLikePermit.ts +146 -0
- package/typechain-types/IKyberElasticFactory.ts +734 -0
- package/typechain-types/IKyberElasticPool.ts +514 -0
- package/typechain-types/IKyberElasticRouter.ts +315 -0
- package/typechain-types/IKyberLiquidityMining.ts +968 -0
- package/typechain-types/IKyberMathHelper.ts +231 -0
- package/typechain-types/IKyberPositionManager.ts +773 -0
- package/typechain-types/ILimitOrderCallee.ts +179 -0
- package/typechain-types/IPActionAddRemoveLiq.ts +151 -26
- package/typechain-types/IPActionMarketCoreStatic.ts +18 -63
- package/typechain-types/IPActionMintRedeem.ts +4 -10
- package/typechain-types/IPActionMintRedeemStatic.ts +10 -102
- package/typechain-types/IPActionMisc.ts +688 -11
- package/typechain-types/IPActionStorageStatic.ts +0 -55
- package/typechain-types/IPActionSwapPT.ts +119 -121
- package/typechain-types/IPActionSwapYT.ts +124 -126
- package/typechain-types/IPAllAction.ts +355 -284
- package/typechain-types/IPLimitRouter.ts +702 -0
- package/typechain-types/IPOrderMixin.ts +479 -0
- package/typechain-types/IPRouterHelper.ts +6 -19
- package/typechain-types/IPRouterStatic.ts +28 -220
- package/typechain-types/KyberMathHelper.ts +604 -0
- package/typechain-types/KyberNftManagerBaseUpg.ts +148 -0
- package/typechain-types/NonceManager.ts +209 -0
- package/typechain-types/PendleAuraBalancerStableLPSYV3Upg.ts +1512 -0
- package/typechain-types/PendleERC20PermitUpg.ts +452 -0
- package/typechain-types/PendleERC20Upg.ts +348 -0
- package/typechain-types/PendleKyberElasticSY.ts +1583 -0
- package/typechain-types/PendleLimitRouter.ts +1041 -0
- package/typechain-types/PendleOrderMixin.ts +818 -0
- package/typechain-types/PendleRouterHelper.ts +7 -23
- package/typechain-types/PredicateHelper.ts +298 -0
- package/typechain-types/RouterV2InterfaceForRouterHelper.ts +479 -0
- package/typechain-types/SYBaseUpg.ts +1205 -0
- package/typechain-types/SYBaseWithRewardsUpg.ts +1298 -0
- package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1051 -31
- package/typechain-types/factories/ActionBaseCallback__factory.ts +0 -59
- package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionLimitOrdersStatic__factory.ts +499 -0
- package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -46
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -102
- package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -21
- package/typechain-types/factories/ActionMisc__factory.ts +877 -2
- package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -27
- package/typechain-types/factories/ActionSwapPT__factory.ts +689 -162
- package/typechain-types/factories/ActionSwapYT__factory.ts +692 -186
- package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
- package/typechain-types/factories/AddressProvider__factory.ts +1 -1
- package/typechain-types/factories/AuraEthxBbAWethSY__factory.ts +1 -1
- package/typechain-types/factories/AuraSwEthBbAWethSYV2__factory.ts +1 -1
- package/typechain-types/factories/AuraWethVethSYUpg__factory.ts +1215 -0
- package/typechain-types/factories/AutomationBase__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/Broadcaster__factory.ts +1 -1
- package/typechain-types/factories/CamelotRewardHelper__factory.ts +1 -1
- package/typechain-types/factories/CamelotV1VolatilePreview__factory.ts +1 -1
- package/typechain-types/factories/ChainlinkRelayerAutomation__factory.ts +1 -1
- package/typechain-types/factories/ChainlinkRelayerGelato__factory.ts +1 -1
- package/typechain-types/factories/EIP712Upgradeable__factory.ts +39 -0
- package/typechain-types/factories/ERC20__factory.ts +1 -1
- package/typechain-types/factories/EmptyUUPS__factory.ts +1 -1
- package/typechain-types/factories/Errors__factory.ts +8 -161
- package/typechain-types/factories/IDaiLikePermit__factory.ts +74 -0
- package/typechain-types/factories/IKyberElasticFactory__factory.ts +455 -0
- package/typechain-types/factories/IKyberElasticPool__factory.ts +315 -0
- package/typechain-types/factories/IKyberElasticRouter__factory.ts +240 -0
- package/typechain-types/factories/IKyberLiquidityMining__factory.ts +913 -0
- package/typechain-types/factories/IKyberMathHelper__factory.ts +143 -0
- package/typechain-types/factories/IKyberPositionManager__factory.ts +633 -0
- package/typechain-types/factories/ILimitOrderCallee__factory.ts +92 -0
- package/typechain-types/factories/IPActionAddRemoveLiq__factory.ts +1050 -30
- package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +0 -45
- package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +0 -69
- package/typechain-types/factories/IPActionMintRedeem__factory.ts +0 -20
- package/typechain-types/factories/IPActionMisc__factory.ts +734 -1
- package/typechain-types/factories/IPActionStorageStatic__factory.ts +0 -26
- package/typechain-types/factories/IPActionSwapPT__factory.ts +688 -108
- package/typechain-types/factories/IPActionSwapYT__factory.ts +688 -108
- package/typechain-types/factories/IPAllAction__factory.ts +2550 -331
- package/typechain-types/factories/IPLimitRouter__factory.ts +791 -0
- package/typechain-types/factories/IPOrderMixin__factory.ts +556 -0
- package/typechain-types/factories/IPRouterHelper__factory.ts +0 -25
- package/typechain-types/factories/IPRouterStatic__factory.ts +0 -140
- package/typechain-types/factories/KyberMathHelper__factory.ts +430 -0
- package/typechain-types/factories/KyberNftManagerBaseUpg__factory.ts +101 -0
- package/typechain-types/factories/LegacyNFTHelper__factory.ts +1 -1
- package/typechain-types/factories/LinearPreview__factory.ts +1 -1
- package/typechain-types/factories/MetaStableMath__factory.ts +1 -1
- package/typechain-types/factories/Multicall2__factory.ts +1 -1
- package/typechain-types/factories/NonceManager__factory.ts +149 -0
- package/typechain-types/factories/OracleLib__factory.ts +1 -1
- package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1 -1
- package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraBalancerStableLPSYV3Upg__factory.ts +1160 -0
- package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethVethSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1 -1
- package/typechain-types/factories/PendleBridgedLSDSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
- package/typechain-types/factories/PendleChainlinkReceiver__factory.ts +1 -1
- package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
- package/typechain-types/factories/PendleERC20PermitUpg__factory.ts +340 -0
- package/typechain-types/factories/PendleERC20Permit__factory.ts +1 -1
- package/typechain-types/factories/PendleERC20Upg__factory.ts +261 -0
- package/typechain-types/factories/PendleERC20__factory.ts +1 -1
- package/typechain-types/factories/PendleERC4626SY__factory.ts +1 -1
- package/typechain-types/factories/PendleETHXSY__factory.ts +1 -1
- package/typechain-types/factories/PendleEUSDSY__factory.ts +1 -1
- package/typechain-types/factories/PendleExternalRewardDistributor__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/PendleFluxLendingSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
- package/typechain-types/factories/PendleHlpSY__factory.ts +1 -1
- package/typechain-types/factories/PendleKyberElasticSY__factory.ts +1302 -0
- package/typechain-types/factories/PendleLimitRouter__factory.ts +1064 -0
- package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
- package/typechain-types/factories/PendleLpGlpOracle__factory.ts +1 -1
- package/typechain-types/factories/PendleMantleStakedEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketFactoryV2__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketV2__factory.ts +1 -1
- package/typechain-types/factories/PendleMarket__factory.ts +1 -1
- package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMulticallV1__factory.ts +1 -1
- package/typechain-types/factories/PendleMulticallV2__factory.ts +1 -1
- package/typechain-types/factories/PendleOracleForSyProxy__factory.ts +1 -1
- package/typechain-types/factories/PendleOrderMixin__factory.ts +775 -0
- package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
- package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
- package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
- package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterHelper__factory.ts +2 -32
- package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
- package/typechain-types/factories/PendleRouter__factory.ts +1 -21
- package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSwap__factory.ts +1 -1
- package/typechain-types/factories/PendleThenaSY__factory.ts +1 -1
- package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleWbEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
- package/typechain-types/factories/PredicateHelper__factory.ts +218 -0
- package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
- package/typechain-types/factories/RouterV2InterfaceForRouterHelper__factory.ts +487 -0
- package/typechain-types/factories/SAPE__factory.ts +1 -1
- package/typechain-types/factories/SDKErrorsDirectory__factory.ts +1 -170
- package/typechain-types/factories/SYBaseUpg__factory.ts +939 -0
- package/typechain-types/factories/SYBaseWithRewardsUpg__factory.ts +1012 -0
- package/typechain-types/factories/SwETHSY__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 +81 -63
- package/typechain-types/index.ts +18 -14
- package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +0 -4
- package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +0 -642
- package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +0 -4
- package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +0 -521
- package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.json +0 -321
- package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.json +0 -92
- package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.json +0 -34
- package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +0 -4
- package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +0 -125
- package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +0 -4
- package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +0 -753
- package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +0 -4
- package/contracts/core/BulkSeller/BulkSeller.sol +0 -233
- package/contracts/core/BulkSeller/BulkSellerFactory.sol +0 -85
- package/contracts/core/BulkSeller/BulkSellerMathCore.sol +0 -139
- package/contracts/interfaces/IPActionMintRedeem.sol +0 -108
- package/contracts/interfaces/IPBulkSeller.sol +0 -48
- package/contracts/interfaces/IPBulkSellerFactory.sol +0 -12
- package/contracts/interfaces/IPBulkSellerSYCallback.sol +0 -6
- package/contracts/offchain-helpers/BulkSellerOffchain.sol +0 -69
- package/contracts/router/ActionMintRedeem.sol +0 -134
- package/contracts/router/base/ActionBaseMintRedeem.sol +0 -203
|
@@ -1,28 +1,23 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity 0.8.
|
|
2
|
+
pragma solidity 0.8.21;
|
|
3
3
|
|
|
4
|
-
import "../interfaces/IPAllAction.sol";
|
|
5
4
|
import "../interfaces/IPMarket.sol";
|
|
6
5
|
import "../interfaces/IPRouterHelper.sol";
|
|
7
|
-
import "./base/ActionBaseMintRedeem.sol";
|
|
8
6
|
import "./base/MarketApproxLib.sol";
|
|
9
7
|
import "../interfaces/IAddressProvider.sol";
|
|
8
|
+
import "../core/libraries/TokenHelper.sol";
|
|
10
9
|
|
|
11
10
|
contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
12
|
-
|
|
11
|
+
RouterV2InterfaceForRouterHelper public immutable ROUTER;
|
|
13
12
|
address public immutable WETH;
|
|
14
13
|
|
|
15
14
|
constructor(address _ROUTER, IAddressProvider provider) {
|
|
16
|
-
ROUTER =
|
|
15
|
+
ROUTER = RouterV2InterfaceForRouterHelper(_ROUTER);
|
|
17
16
|
WETH = _getWETHAddress(provider, 1);
|
|
18
17
|
_safeApproveInf(WETH, address(ROUTER));
|
|
19
18
|
}
|
|
20
19
|
|
|
21
|
-
function _getWETHAddress(IAddressProvider provider, uint256 providerId)
|
|
22
|
-
internal
|
|
23
|
-
view
|
|
24
|
-
returns (address)
|
|
25
|
-
{
|
|
20
|
+
function _getWETHAddress(IAddressProvider provider, uint256 providerId) internal view returns (address) {
|
|
26
21
|
return provider.get(providerId);
|
|
27
22
|
}
|
|
28
23
|
|
|
@@ -30,8 +25,8 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
30
25
|
|
|
31
26
|
/**
|
|
32
27
|
* @dev all the parameters for this function should be generated in the same way as they are
|
|
33
|
-
generated for the main Router, except that input.tokenIn & swapData should be generated
|
|
34
|
-
for tokenIn == WETH instead of ETH
|
|
28
|
+
* generated for the main Router, except that input.tokenIn & swapData should be generated
|
|
29
|
+
* for tokenIn == WETH instead of ETH
|
|
35
30
|
*/
|
|
36
31
|
function addLiquiditySingleTokenKeepYtWithEth(
|
|
37
32
|
address receiver,
|
|
@@ -45,77 +40,31 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
45
40
|
_transferIn(NATIVE, msg.sender, input.netTokenIn);
|
|
46
41
|
|
|
47
42
|
_wrap_unwrap_ETH(NATIVE, WETH, input.netTokenIn);
|
|
48
|
-
(netLpOut, netYtOut) = ROUTER.addLiquiditySingleTokenKeepYt(
|
|
49
|
-
receiver,
|
|
50
|
-
market,
|
|
51
|
-
minLpOut,
|
|
52
|
-
minYtOut,
|
|
53
|
-
input
|
|
54
|
-
);
|
|
43
|
+
(netLpOut, netYtOut) = ROUTER.addLiquiditySingleTokenKeepYt(receiver, market, minLpOut, minYtOut, input);
|
|
55
44
|
|
|
56
|
-
emit AddLiquiditySingleTokenKeepYt(
|
|
57
|
-
msg.sender,
|
|
58
|
-
market,
|
|
59
|
-
NATIVE,
|
|
60
|
-
msg.sender,
|
|
61
|
-
input.netTokenIn,
|
|
62
|
-
netLpOut,
|
|
63
|
-
netYtOut
|
|
64
|
-
);
|
|
45
|
+
emit AddLiquiditySingleTokenKeepYt(msg.sender, market, NATIVE, msg.sender, input.netTokenIn, netLpOut, netYtOut);
|
|
65
46
|
}
|
|
66
47
|
|
|
67
48
|
function transferLiquidityDifferentSyNormal(
|
|
68
49
|
RemoveLiquiditySingleTokenStruct calldata fromMarket,
|
|
69
50
|
AddLiquiditySingleTokenStruct calldata toMarket
|
|
70
|
-
)
|
|
71
|
-
external
|
|
72
|
-
returns (
|
|
73
|
-
uint256 netLpOut,
|
|
74
|
-
uint256 netTokenZapIn,
|
|
75
|
-
uint256 netSyFeeOfRemove,
|
|
76
|
-
uint256 netSyFeeOfAdd
|
|
77
|
-
)
|
|
78
|
-
{
|
|
51
|
+
) external returns (uint256 netLpOut, uint256 netTokenZapIn, uint256 netSyFeeOfRemove, uint256 netSyFeeOfAdd) {
|
|
79
52
|
(netTokenZapIn, netSyFeeOfRemove) = removeLiquiditySingleToken(fromMarket);
|
|
80
|
-
(netLpOut, netSyFeeOfAdd) = _addLiquiditySingleToken(
|
|
81
|
-
toMarket,
|
|
82
|
-
fromMarket.output.tokenOut,
|
|
83
|
-
netTokenZapIn
|
|
84
|
-
);
|
|
53
|
+
(netLpOut, netSyFeeOfAdd) = _addLiquiditySingleToken(toMarket, fromMarket.output.tokenOut, netTokenZapIn);
|
|
85
54
|
}
|
|
86
55
|
|
|
87
56
|
function transferLiquidityDifferentSyKeepYt(
|
|
88
57
|
RemoveLiquiditySingleTokenStruct calldata fromMarket,
|
|
89
58
|
AddLiquiditySingleTokenKeepYtStruct calldata toMarket
|
|
90
|
-
)
|
|
91
|
-
external
|
|
92
|
-
returns (
|
|
93
|
-
uint256 netLpOut,
|
|
94
|
-
uint256 netYtOut,
|
|
95
|
-
uint256 netTokenZapIn,
|
|
96
|
-
uint256 netSyFeeOfRemove
|
|
97
|
-
)
|
|
98
|
-
{
|
|
59
|
+
) external returns (uint256 netLpOut, uint256 netYtOut, uint256 netTokenZapIn, uint256 netSyFeeOfRemove) {
|
|
99
60
|
(netTokenZapIn, netSyFeeOfRemove) = removeLiquiditySingleToken(fromMarket);
|
|
100
|
-
(netLpOut, netYtOut) = _addLiquiditySingleTokenKeepYt(
|
|
101
|
-
toMarket,
|
|
102
|
-
fromMarket.output.tokenOut,
|
|
103
|
-
netTokenZapIn
|
|
104
|
-
);
|
|
61
|
+
(netLpOut, netYtOut) = _addLiquiditySingleTokenKeepYt(toMarket, fromMarket.output.tokenOut, netTokenZapIn);
|
|
105
62
|
}
|
|
106
63
|
|
|
107
64
|
function transferLiquiditySameSyNormal(
|
|
108
65
|
RemoveLiquiditySingleSyStruct calldata fromMarket,
|
|
109
66
|
AddLiquiditySingleSyStruct calldata toMarket
|
|
110
|
-
)
|
|
111
|
-
external
|
|
112
|
-
returns (
|
|
113
|
-
uint256 netLpOut,
|
|
114
|
-
uint256 netSyZapIn,
|
|
115
|
-
uint256 netSyFeeOfRemove,
|
|
116
|
-
uint256 netSyFeeOfAdd
|
|
117
|
-
)
|
|
118
|
-
{
|
|
67
|
+
) external returns (uint256 netLpOut, uint256 netSyZapIn, uint256 netSyFeeOfRemove, uint256 netSyFeeOfAdd) {
|
|
119
68
|
(netSyZapIn, netSyFeeOfRemove) = removeLiquiditySingleSy(fromMarket);
|
|
120
69
|
(netLpOut, netSyFeeOfAdd) = _addLiquiditySingleSy(toMarket, netSyZapIn);
|
|
121
70
|
}
|
|
@@ -123,15 +72,7 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
123
72
|
function transferLiquiditySameSyKeepYt(
|
|
124
73
|
RemoveLiquiditySingleSyStruct calldata fromMarket,
|
|
125
74
|
AddLiquiditySingleSyKeepYtStruct calldata toMarket
|
|
126
|
-
)
|
|
127
|
-
external
|
|
128
|
-
returns (
|
|
129
|
-
uint256 netLpOut,
|
|
130
|
-
uint256 netYtOut,
|
|
131
|
-
uint256 netSyZapIn,
|
|
132
|
-
uint256 netSyFeeOfRemove
|
|
133
|
-
)
|
|
134
|
-
{
|
|
75
|
+
) external returns (uint256 netLpOut, uint256 netYtOut, uint256 netSyZapIn, uint256 netSyFeeOfRemove) {
|
|
135
76
|
(netSyZapIn, netSyFeeOfRemove) = removeLiquiditySingleSy(fromMarket);
|
|
136
77
|
(netLpOut, netYtOut) = _addLiquiditySingleSyKeepYt(toMarket, netSyZapIn);
|
|
137
78
|
}
|
|
@@ -140,20 +81,12 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
140
81
|
public
|
|
141
82
|
returns (uint256 netTokenOut, uint256 netSyFee)
|
|
142
83
|
{
|
|
143
|
-
_transferFrom(
|
|
144
|
-
IERC20(fromMarket.market),
|
|
145
|
-
msg.sender,
|
|
146
|
-
address(this),
|
|
147
|
-
fromMarket.netLpToRemove
|
|
148
|
-
);
|
|
84
|
+
_transferFrom(IERC20(fromMarket.market), msg.sender, address(this), fromMarket.netLpToRemove);
|
|
149
85
|
|
|
150
86
|
_safeApproveInf(fromMarket.market, address(ROUTER));
|
|
151
87
|
|
|
152
88
|
(netTokenOut, netSyFee) = ROUTER.removeLiquiditySingleToken(
|
|
153
|
-
address(this),
|
|
154
|
-
fromMarket.market,
|
|
155
|
-
fromMarket.netLpToRemove,
|
|
156
|
-
fromMarket.output
|
|
89
|
+
address(this), fromMarket.market, fromMarket.netLpToRemove, fromMarket.output
|
|
157
90
|
);
|
|
158
91
|
|
|
159
92
|
if (fromMarket.doRedeemRewards) {
|
|
@@ -161,12 +94,7 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
161
94
|
}
|
|
162
95
|
|
|
163
96
|
emit RemoveLiquiditySingleToken(
|
|
164
|
-
msg.sender,
|
|
165
|
-
fromMarket.market,
|
|
166
|
-
fromMarket.output.tokenOut,
|
|
167
|
-
msg.sender,
|
|
168
|
-
fromMarket.netLpToRemove,
|
|
169
|
-
netTokenOut
|
|
97
|
+
msg.sender, fromMarket.market, fromMarket.output.tokenOut, msg.sender, fromMarket.netLpToRemove, netTokenOut
|
|
170
98
|
);
|
|
171
99
|
}
|
|
172
100
|
|
|
@@ -174,33 +102,18 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
174
102
|
public
|
|
175
103
|
returns (uint256 netSyOut, uint256 netSyFee)
|
|
176
104
|
{
|
|
177
|
-
_transferFrom(
|
|
178
|
-
IERC20(fromMarket.market),
|
|
179
|
-
msg.sender,
|
|
180
|
-
address(this),
|
|
181
|
-
fromMarket.netLpToRemove
|
|
182
|
-
);
|
|
105
|
+
_transferFrom(IERC20(fromMarket.market), msg.sender, address(this), fromMarket.netLpToRemove);
|
|
183
106
|
|
|
184
107
|
_safeApproveInf(fromMarket.market, address(ROUTER));
|
|
185
108
|
|
|
186
|
-
(netSyOut, netSyFee) =
|
|
187
|
-
address(this),
|
|
188
|
-
fromMarket.market,
|
|
189
|
-
fromMarket.netLpToRemove,
|
|
190
|
-
0
|
|
191
|
-
);
|
|
109
|
+
(netSyOut, netSyFee) =
|
|
110
|
+
ROUTER.removeLiquiditySingleSy(address(this), fromMarket.market, fromMarket.netLpToRemove, 0);
|
|
192
111
|
|
|
193
112
|
if (fromMarket.doRedeemRewards) {
|
|
194
113
|
IPMarket(fromMarket.market).redeemRewards(msg.sender);
|
|
195
114
|
}
|
|
196
115
|
|
|
197
|
-
emit RemoveLiquiditySingleSy(
|
|
198
|
-
msg.sender,
|
|
199
|
-
fromMarket.market,
|
|
200
|
-
msg.sender,
|
|
201
|
-
fromMarket.netLpToRemove,
|
|
202
|
-
netSyOut
|
|
203
|
-
);
|
|
116
|
+
emit RemoveLiquiditySingleSy(msg.sender, fromMarket.market, msg.sender, fromMarket.netLpToRemove, netSyOut);
|
|
204
117
|
}
|
|
205
118
|
|
|
206
119
|
function _addLiquiditySingleToken(
|
|
@@ -215,33 +128,22 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
215
128
|
|
|
216
129
|
_safeApproveInf(tokenToZapIn, address(ROUTER));
|
|
217
130
|
|
|
218
|
-
(netLpOut, netSyFee) = ROUTER.addLiquiditySingleToken{
|
|
131
|
+
(netLpOut, netSyFee) = ROUTER.addLiquiditySingleToken{value: netNativeToAttach}(
|
|
219
132
|
msg.sender,
|
|
220
133
|
toMarket.market,
|
|
221
134
|
toMarket.minLpOut,
|
|
222
|
-
_scaleApproxParams(
|
|
223
|
-
|
|
224
|
-
toMarket.guessNetTokenIn,
|
|
225
|
-
actualNetTokenIn
|
|
226
|
-
),
|
|
227
|
-
_newTokenInputStruct(tokenToZapIn, actualNetTokenIn, toMarket.bulk)
|
|
135
|
+
_scaleApproxParams(toMarket.guessPtReceivedFromSy, toMarket.guessNetTokenIn, actualNetTokenIn),
|
|
136
|
+
_newTokenInputStruct(tokenToZapIn, actualNetTokenIn)
|
|
228
137
|
);
|
|
229
138
|
|
|
230
|
-
emit AddLiquiditySingleToken(
|
|
231
|
-
msg.sender,
|
|
232
|
-
toMarket.market,
|
|
233
|
-
tokenToZapIn,
|
|
234
|
-
msg.sender,
|
|
235
|
-
actualNetTokenIn,
|
|
236
|
-
netLpOut
|
|
237
|
-
);
|
|
139
|
+
emit AddLiquiditySingleToken(msg.sender, toMarket.market, tokenToZapIn, msg.sender, actualNetTokenIn, netLpOut);
|
|
238
140
|
}
|
|
239
141
|
|
|
240
|
-
function _addLiquiditySingleSy(
|
|
241
|
-
|
|
242
|
-
uint256
|
|
243
|
-
|
|
244
|
-
(IStandardizedYield SY
|
|
142
|
+
function _addLiquiditySingleSy(AddLiquiditySingleSyStruct calldata toMarket, uint256 actualNetSyIn)
|
|
143
|
+
internal
|
|
144
|
+
returns (uint256 netLpOut, uint256 netSyFee)
|
|
145
|
+
{
|
|
146
|
+
(IStandardizedYield SY,,) = IPMarket(toMarket.market).readTokens();
|
|
245
147
|
|
|
246
148
|
_safeApproveInf(address(SY), address(ROUTER));
|
|
247
149
|
|
|
@@ -250,20 +152,10 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
250
152
|
toMarket.market,
|
|
251
153
|
actualNetSyIn,
|
|
252
154
|
toMarket.minLpOut,
|
|
253
|
-
_scaleApproxParams(
|
|
254
|
-
toMarket.guessPtReceivedFromSy,
|
|
255
|
-
toMarket.guessNetSyIn,
|
|
256
|
-
actualNetSyIn
|
|
257
|
-
)
|
|
155
|
+
_scaleApproxParams(toMarket.guessPtReceivedFromSy, toMarket.guessNetSyIn, actualNetSyIn)
|
|
258
156
|
);
|
|
259
157
|
|
|
260
|
-
emit AddLiquiditySingleSy(
|
|
261
|
-
msg.sender,
|
|
262
|
-
toMarket.market,
|
|
263
|
-
msg.sender,
|
|
264
|
-
actualNetSyIn,
|
|
265
|
-
netLpOut
|
|
266
|
-
);
|
|
158
|
+
emit AddLiquiditySingleSy(msg.sender, toMarket.market, msg.sender, actualNetSyIn, netLpOut);
|
|
267
159
|
}
|
|
268
160
|
|
|
269
161
|
function _addLiquiditySingleTokenKeepYt(
|
|
@@ -283,77 +175,99 @@ contract PendleRouterHelper is TokenHelper, IPRouterHelper {
|
|
|
283
175
|
toMarket.market,
|
|
284
176
|
toMarket.minLpOut,
|
|
285
177
|
toMarket.minYtOut,
|
|
286
|
-
_newTokenInputStruct(tokenToZapIn, actualNetTokenIn
|
|
178
|
+
_newTokenInputStruct(tokenToZapIn, actualNetTokenIn)
|
|
287
179
|
);
|
|
288
180
|
|
|
289
181
|
emit AddLiquiditySingleTokenKeepYt(
|
|
290
|
-
msg.sender,
|
|
291
|
-
toMarket.market,
|
|
292
|
-
tokenToZapIn,
|
|
293
|
-
msg.sender,
|
|
294
|
-
actualNetTokenIn,
|
|
295
|
-
netLpOut,
|
|
296
|
-
netYtOut
|
|
182
|
+
msg.sender, toMarket.market, tokenToZapIn, msg.sender, actualNetTokenIn, netLpOut, netYtOut
|
|
297
183
|
);
|
|
298
184
|
}
|
|
299
185
|
|
|
300
|
-
function _addLiquiditySingleSyKeepYt(
|
|
301
|
-
|
|
302
|
-
uint256
|
|
303
|
-
|
|
304
|
-
(IStandardizedYield SY
|
|
186
|
+
function _addLiquiditySingleSyKeepYt(AddLiquiditySingleSyKeepYtStruct calldata toMarket, uint256 actualNetSyIn)
|
|
187
|
+
internal
|
|
188
|
+
returns (uint256 netLpOut, uint256 netYtOut)
|
|
189
|
+
{
|
|
190
|
+
(IStandardizedYield SY,,) = IPMarket(toMarket.market).readTokens();
|
|
305
191
|
|
|
306
192
|
_safeApproveInf(address(SY), address(ROUTER));
|
|
307
193
|
|
|
308
194
|
(netLpOut, netYtOut) = ROUTER.addLiquiditySingleSyKeepYt(
|
|
309
|
-
msg.sender,
|
|
310
|
-
toMarket.market,
|
|
311
|
-
actualNetSyIn,
|
|
312
|
-
toMarket.minLpOut,
|
|
313
|
-
toMarket.minYtOut
|
|
195
|
+
msg.sender, toMarket.market, actualNetSyIn, toMarket.minLpOut, toMarket.minYtOut
|
|
314
196
|
);
|
|
315
197
|
|
|
316
|
-
emit AddLiquiditySingleSyKeepYt(
|
|
317
|
-
msg.sender,
|
|
318
|
-
toMarket.market,
|
|
319
|
-
msg.sender,
|
|
320
|
-
actualNetSyIn,
|
|
321
|
-
netLpOut,
|
|
322
|
-
netYtOut
|
|
323
|
-
);
|
|
198
|
+
emit AddLiquiditySingleSyKeepYt(msg.sender, toMarket.market, msg.sender, actualNetSyIn, netLpOut, netYtOut);
|
|
324
199
|
}
|
|
325
200
|
|
|
326
201
|
// ============ struct helpers ============
|
|
327
202
|
|
|
328
|
-
function _newTokenInputStruct(
|
|
329
|
-
address tokenIn,
|
|
330
|
-
uint256 netTokenIn,
|
|
331
|
-
address bulk
|
|
332
|
-
) internal pure returns (TokenInput memory res) {
|
|
203
|
+
function _newTokenInputStruct(address tokenIn, uint256 netTokenIn) internal pure returns (TokenInput memory res) {
|
|
333
204
|
res.tokenIn = res.tokenMintSy = tokenIn;
|
|
334
205
|
res.netTokenIn = netTokenIn;
|
|
335
|
-
res.bulk = bulk;
|
|
336
206
|
return res;
|
|
337
207
|
}
|
|
338
208
|
|
|
339
209
|
/// @dev either SY or Token here is good since token->sy conversion is almost linearly proportional
|
|
340
|
-
function _scaleApproxParams(
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
210
|
+
function _scaleApproxParams(ApproxParams calldata params, uint256 guessNetTokenIn, uint256 actualNetTokenIn)
|
|
211
|
+
internal
|
|
212
|
+
pure
|
|
213
|
+
returns (ApproxParams memory)
|
|
214
|
+
{
|
|
345
215
|
if (params.guessOffchain == 0) {
|
|
346
216
|
require(params.guessMin == 0 && params.guessMax == type(uint256).max, "invalid guess");
|
|
347
217
|
return params;
|
|
348
218
|
}
|
|
349
219
|
|
|
350
|
-
return
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
});
|
|
220
|
+
return ApproxParams({
|
|
221
|
+
guessMin: (params.guessMin * actualNetTokenIn) / guessNetTokenIn,
|
|
222
|
+
guessMax: (params.guessMax * actualNetTokenIn) / guessNetTokenIn,
|
|
223
|
+
guessOffchain: (params.guessOffchain * actualNetTokenIn) / guessNetTokenIn,
|
|
224
|
+
maxIteration: params.maxIteration,
|
|
225
|
+
eps: params.eps
|
|
226
|
+
});
|
|
358
227
|
}
|
|
359
228
|
}
|
|
229
|
+
|
|
230
|
+
interface RouterV2InterfaceForRouterHelper {
|
|
231
|
+
function addLiquiditySingleSy(
|
|
232
|
+
address receiver,
|
|
233
|
+
address market,
|
|
234
|
+
uint256 netSyIn,
|
|
235
|
+
uint256 minLpOut,
|
|
236
|
+
ApproxParams calldata guessPtReceivedFromSy
|
|
237
|
+
) external returns (uint256 netLpOut, uint256 netSyFee);
|
|
238
|
+
|
|
239
|
+
function addLiquiditySingleToken(
|
|
240
|
+
address receiver,
|
|
241
|
+
address market,
|
|
242
|
+
uint256 minLpOut,
|
|
243
|
+
ApproxParams calldata guessPtReceivedFromSy,
|
|
244
|
+
TokenInput calldata input
|
|
245
|
+
) external payable returns (uint256 netLpOut, uint256 netSyFee);
|
|
246
|
+
|
|
247
|
+
function addLiquiditySingleSyKeepYt(
|
|
248
|
+
address receiver,
|
|
249
|
+
address market,
|
|
250
|
+
uint256 netSyIn,
|
|
251
|
+
uint256 minLpOut,
|
|
252
|
+
uint256 minYtOut
|
|
253
|
+
) external returns (uint256 netLpOut, uint256 netYtOut);
|
|
254
|
+
|
|
255
|
+
function addLiquiditySingleTokenKeepYt(
|
|
256
|
+
address receiver,
|
|
257
|
+
address market,
|
|
258
|
+
uint256 minLpOut,
|
|
259
|
+
uint256 minYtOut,
|
|
260
|
+
TokenInput calldata input
|
|
261
|
+
) external returns (uint256 netLpOut, uint256 netYtOut);
|
|
262
|
+
|
|
263
|
+
function removeLiquiditySingleSy(address receiver, address market, uint256 netLpToRemove, uint256 minSyOut)
|
|
264
|
+
external
|
|
265
|
+
returns (uint256 netSyOut, uint256 netSyFee);
|
|
266
|
+
|
|
267
|
+
function removeLiquiditySingleToken(
|
|
268
|
+
address receiver,
|
|
269
|
+
address market,
|
|
270
|
+
uint256 netLpToRemove,
|
|
271
|
+
TokenOutput calldata output
|
|
272
|
+
) external returns (uint256 netTokenOut, uint256 netSyFee);
|
|
273
|
+
}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity ^0.8.0;
|
|
3
|
+
|
|
4
|
+
import "../../core/libraries/TokenHelper.sol";
|
|
5
|
+
import "../../interfaces/IStandardizedYield.sol";
|
|
6
|
+
import "../../interfaces/IPYieldToken.sol";
|
|
7
|
+
import "../../interfaces/IPAllActionType.sol";
|
|
8
|
+
import "../../interfaces/IPMarket.sol";
|
|
9
|
+
import "../../router/base/MarketApproxLib.sol";
|
|
10
|
+
|
|
11
|
+
import "../../core/libraries/Errors.sol";
|
|
12
|
+
import "../swap-aggregator/IPSwapAggregator.sol";
|
|
13
|
+
|
|
14
|
+
abstract contract ActionBase is TokenHelper {
|
|
15
|
+
using MarketApproxPtOutLib for MarketState;
|
|
16
|
+
using PMath for uint256;
|
|
17
|
+
using PYIndexLib for IPYieldToken;
|
|
18
|
+
|
|
19
|
+
bytes internal constant EMPTY_BYTES = abi.encode();
|
|
20
|
+
|
|
21
|
+
// ----------------- MINT REDEEM SY PY -----------------
|
|
22
|
+
|
|
23
|
+
function _mintSyFromToken(address receiver, address SY, uint256 minSyOut, TokenInput calldata inp)
|
|
24
|
+
internal
|
|
25
|
+
returns (uint256 netSyOut)
|
|
26
|
+
{
|
|
27
|
+
SwapType swapType = inp.swapData.swapType;
|
|
28
|
+
|
|
29
|
+
uint256 netTokenMintSy;
|
|
30
|
+
|
|
31
|
+
if (swapType == SwapType.NONE) {
|
|
32
|
+
_transferIn(inp.tokenIn, msg.sender, inp.netTokenIn);
|
|
33
|
+
netTokenMintSy = inp.netTokenIn;
|
|
34
|
+
} else if (swapType == SwapType.ETH_WETH) {
|
|
35
|
+
_transferIn(inp.tokenIn, msg.sender, inp.netTokenIn);
|
|
36
|
+
_wrap_unwrap_ETH(inp.tokenIn, inp.tokenMintSy, inp.netTokenIn);
|
|
37
|
+
netTokenMintSy = inp.netTokenIn;
|
|
38
|
+
} else {
|
|
39
|
+
_swapTokenInput(inp);
|
|
40
|
+
netTokenMintSy = _selfBalance(inp.tokenMintSy);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
netSyOut = __mintSy(receiver, SY, netTokenMintSy, minSyOut, inp);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
function _swapTokenInput(TokenInput calldata inp) internal {
|
|
47
|
+
if (inp.tokenIn == NATIVE) _transferIn(NATIVE, msg.sender, inp.netTokenIn);
|
|
48
|
+
else _transferFrom(IERC20(inp.tokenIn), msg.sender, inp.pendleSwap, inp.netTokenIn);
|
|
49
|
+
|
|
50
|
+
IPSwapAggregator(inp.pendleSwap).swap{value: inp.tokenIn == NATIVE ? inp.netTokenIn : 0}(
|
|
51
|
+
inp.tokenIn, inp.netTokenIn, inp.swapData
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
function __mintSy(address receiver, address SY, uint256 netTokenMintSy, uint256 minSyOut, TokenInput calldata inp)
|
|
56
|
+
private
|
|
57
|
+
returns (uint256 netSyOut)
|
|
58
|
+
{
|
|
59
|
+
uint256 netNative = inp.tokenMintSy == NATIVE ? netTokenMintSy : 0;
|
|
60
|
+
netSyOut = IStandardizedYield(SY).deposit{value: netNative}(receiver, inp.tokenMintSy, netTokenMintSy, minSyOut);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
function _redeemSyToToken(address receiver, address SY, uint256 netSyIn, TokenOutput calldata out, bool doPull)
|
|
64
|
+
internal
|
|
65
|
+
returns (uint256 netTokenOut)
|
|
66
|
+
{
|
|
67
|
+
SwapType swapType = out.swapData.swapType;
|
|
68
|
+
|
|
69
|
+
if (swapType == SwapType.NONE) {
|
|
70
|
+
netTokenOut = __redeemSy(receiver, SY, netSyIn, out, doPull);
|
|
71
|
+
} else if (swapType == SwapType.ETH_WETH) {
|
|
72
|
+
netTokenOut = __redeemSy(address(this), SY, netSyIn, out, doPull); // ETH:WETH is 1:1
|
|
73
|
+
|
|
74
|
+
_wrap_unwrap_ETH(out.tokenRedeemSy, out.tokenOut, netTokenOut);
|
|
75
|
+
|
|
76
|
+
_transferOut(out.tokenOut, receiver, netTokenOut);
|
|
77
|
+
} else {
|
|
78
|
+
uint256 netTokenRedeemed = __redeemSy(out.pendleSwap, SY, netSyIn, out, doPull);
|
|
79
|
+
|
|
80
|
+
IPSwapAggregator(out.pendleSwap).swap(out.tokenRedeemSy, netTokenRedeemed, out.swapData);
|
|
81
|
+
|
|
82
|
+
netTokenOut = _selfBalance(out.tokenOut);
|
|
83
|
+
|
|
84
|
+
_transferOut(out.tokenOut, receiver, netTokenOut);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
if (netTokenOut < out.minTokenOut) {
|
|
88
|
+
revert Errors.RouterInsufficientTokenOut(netTokenOut, out.minTokenOut);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
function __redeemSy(address receiver, address SY, uint256 netSyIn, TokenOutput calldata out, bool doPull)
|
|
93
|
+
private
|
|
94
|
+
returns (uint256 netTokenRedeemed)
|
|
95
|
+
{
|
|
96
|
+
if (doPull) {
|
|
97
|
+
_transferFrom(IERC20(SY), msg.sender, SY, netSyIn);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
netTokenRedeemed = IStandardizedYield(SY).redeem(receiver, netSyIn, out.tokenRedeemSy, 0, true);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
function _mintPyFromSy(address receiver, address SY, address YT, uint256 netSyIn, uint256 minPyOut, bool doPull)
|
|
104
|
+
internal
|
|
105
|
+
returns (uint256 netPyOut)
|
|
106
|
+
{
|
|
107
|
+
if (doPull) {
|
|
108
|
+
_transferFrom(IERC20(SY), msg.sender, YT, netSyIn);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
netPyOut = IPYieldToken(YT).mintPY(receiver, receiver);
|
|
112
|
+
if (netPyOut < minPyOut) revert Errors.RouterInsufficientPYOut(netPyOut, minPyOut);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
function _redeemPyToSy(address receiver, address YT, uint256 netPyIn, uint256 minSyOut)
|
|
116
|
+
internal
|
|
117
|
+
returns (uint256 netSyOut)
|
|
118
|
+
{
|
|
119
|
+
address PT = IPYieldToken(YT).PT();
|
|
120
|
+
|
|
121
|
+
_transferFrom(IERC20(PT), msg.sender, YT, netPyIn);
|
|
122
|
+
|
|
123
|
+
bool needToBurnYt = (!IPYieldToken(YT).isExpired());
|
|
124
|
+
if (needToBurnYt) _transferFrom(IERC20(YT), msg.sender, YT, netPyIn);
|
|
125
|
+
|
|
126
|
+
netSyOut = IPYieldToken(YT).redeemPY(receiver);
|
|
127
|
+
if (netSyOut < minSyOut) revert Errors.RouterInsufficientSyOut(netSyOut, minSyOut);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
// ----------------- HELPER -----------------
|
|
131
|
+
|
|
132
|
+
function _readMarket(address market) internal view returns (MarketState memory) {
|
|
133
|
+
return IPMarket(market).readState(address(this));
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// ----------------- PT SWAP -----------------
|
|
137
|
+
|
|
138
|
+
function _entry_swapExactPtForSy(address market, LimitOrderData calldata limit) internal view returns (address) {
|
|
139
|
+
return !_isEmptyLimit(limit) ? address(this) : market;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
function _swapExactPtForSy(
|
|
143
|
+
address receiver,
|
|
144
|
+
address market,
|
|
145
|
+
uint256 exactPtIn,
|
|
146
|
+
uint256 minSyOut,
|
|
147
|
+
LimitOrderData calldata limit
|
|
148
|
+
) internal returns (uint256 netSyOut, uint256 netSyFee) {
|
|
149
|
+
(, IPPrincipalToken PT,) = IPMarket(market).readTokens();
|
|
150
|
+
|
|
151
|
+
uint256 netPtLeft = exactPtIn;
|
|
152
|
+
bool doMarketOrder = true;
|
|
153
|
+
|
|
154
|
+
if (!_isEmptyLimit(limit)) {
|
|
155
|
+
(netPtLeft, netSyOut, netSyFee, doMarketOrder) = _fillLimit(receiver, netPtLeft, limit);
|
|
156
|
+
if (doMarketOrder) {
|
|
157
|
+
_transferOut(address(PT), market, netPtLeft);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
if (doMarketOrder) {
|
|
162
|
+
(uint256 netSyOutMarket, uint256 netSyFeeMarket) =
|
|
163
|
+
IPMarket(market).swapExactPtForSy(receiver, netPtLeft, EMPTY_BYTES);
|
|
164
|
+
|
|
165
|
+
netSyOut += netSyOutMarket;
|
|
166
|
+
netSyFee += netSyFeeMarket;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
if (netSyOut < minSyOut) revert Errors.RouterInsufficientSyOut(netSyOut, minSyOut);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
function _entry_swapExactSyForPt(address market, LimitOrderData calldata limit) internal view returns (address) {
|
|
173
|
+
return !_isEmptyLimit(limit) ? address(this) : market;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
function _swapExactSyForPt(
|
|
177
|
+
address receiver,
|
|
178
|
+
address market,
|
|
179
|
+
uint256 exactSyIn,
|
|
180
|
+
uint256 minPtOut,
|
|
181
|
+
ApproxParams calldata guessPtOut,
|
|
182
|
+
LimitOrderData calldata limit
|
|
183
|
+
) internal returns (uint256 netPtOut, uint256 netSyFee) {
|
|
184
|
+
(IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
185
|
+
uint256 netSyLeft = exactSyIn;
|
|
186
|
+
bool doMarketOrder = true;
|
|
187
|
+
|
|
188
|
+
if (!_isEmptyLimit(limit)) {
|
|
189
|
+
(netSyLeft, netPtOut, netSyFee, doMarketOrder) = _fillLimit(receiver, netSyLeft, limit);
|
|
190
|
+
if (doMarketOrder) {
|
|
191
|
+
_transferOut(address(SY), market, netSyLeft);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
if (doMarketOrder) {
|
|
196
|
+
(uint256 netPtOutMarket,) =
|
|
197
|
+
_readMarket(market).approxSwapExactSyForPt(YT.newIndex(), netSyLeft, block.timestamp, guessPtOut);
|
|
198
|
+
|
|
199
|
+
(, uint256 netSyFeeMarket) = IPMarket(market).swapSyForExactPt(receiver, netPtOutMarket, EMPTY_BYTES);
|
|
200
|
+
|
|
201
|
+
netPtOut += netPtOutMarket;
|
|
202
|
+
netSyFee += netSyFeeMarket;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
if (netPtOut < minPtOut) revert Errors.RouterInsufficientPtOut(netPtOut, minPtOut);
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
// ----------------- LIMIT ORDERS -----------------
|
|
209
|
+
function _fillLimit(address receiver, uint256 netInput, LimitOrderData calldata lim)
|
|
210
|
+
internal
|
|
211
|
+
returns (uint256 netLeft, uint256 netOut, uint256 netSyFee, bool doMarketOrder)
|
|
212
|
+
{
|
|
213
|
+
IPLimitRouter router = IPLimitRouter(lim.limitRouter);
|
|
214
|
+
netLeft = netInput;
|
|
215
|
+
|
|
216
|
+
if (lim.normalFills.length != 0) {
|
|
217
|
+
(uint256 actualMaking, uint256 actualTaking, uint256 totalFee) =
|
|
218
|
+
router.normalFill(lim.normalFills, receiver, netLeft, EMPTY_BYTES);
|
|
219
|
+
netOut += actualMaking;
|
|
220
|
+
netSyFee += totalFee;
|
|
221
|
+
netLeft -= actualTaking;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
if (lim.flashFills.length != 0) {
|
|
225
|
+
(uint256 totalOutput, uint256 totalInput, uint256 totalFee) =
|
|
226
|
+
router.flashFill(lim.flashFills, receiver, netLeft, EMPTY_BYTES);
|
|
227
|
+
netOut += totalOutput;
|
|
228
|
+
netSyFee += totalFee;
|
|
229
|
+
netLeft -= totalInput;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
doMarketOrder = netLeft > netInput.mulDown(lim.epsSkipMarket);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
function _isEmptyLimit(LimitOrderData calldata a) internal pure returns (bool) {
|
|
236
|
+
return a.normalFills.length == 0 && a.flashFills.length == 0;
|
|
237
|
+
}
|
|
238
|
+
}
|