@pendle/core-v2 3.0.0-beta-10 → 3.0.0-beta-12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/PendleMerkleDistributor.sol/PendleMerkleDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/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/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/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/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/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/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/LinearPreview.sol/LinearPreview.dbg.json +1 -1
- 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/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/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/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
- 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/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/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/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/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +18 -18
- package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
- 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/PMath.sol/PMath.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/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/IVault.sol/IVault.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.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/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/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/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.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/IApeStaking.sol/IApeStaking.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 +1 -1
- 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/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/{IPLimitRouter.sol/ILimitOrderCallee.json → IPActionCallbackV3.sol/IPActionCallbackV3.json} +19 -28
- package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.json +18 -42
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.json +37 -27
- 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/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/IPLimitRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.json +23 -136
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.json +45 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPOrderMixinType.dbg.json +1 -1
- 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/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/IPRouterStatic.sol/IPRouterStatic.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/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/IWETH.sol/IWETH.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/limit/LimitMathCore.sol/LimitMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.json +2 -2
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +62 -132
- package/build/artifacts/contracts/limit/PendleOrderMixin.sol/PendleOrderMixin.dbg.json +1 -1
- package/build/artifacts/contracts/limit/PendleOrderMixin.sol/PendleOrderMixin.json +255 -130
- package/build/artifacts/contracts/limit/helpers/ArgumentsDecoder.sol/ArgumentsDecoder.dbg.json +1 -1
- package/build/artifacts/contracts/limit/helpers/NonceManager.sol/NonceManager.dbg.json +1 -1
- package/build/artifacts/contracts/limit/helpers/Permitable.sol/Permitable.dbg.json +1 -1
- package/build/artifacts/contracts/limit/helpers/RevertReasonParser.sol/RevertReasonParser.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
- 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/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/BytesLib.sol/BytesLib.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/BytesLib.sol/BytesLib.json +10 -0
- package/build/artifacts/contracts/offchain-helpers/ChainlinkRelayerGelato.sol/ChainlinkRelayerGelato.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/LegacyNFTHelper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/StarNFTV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.json +174 -0
- 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/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleMulticallV2.sol/PendleMulticallV2.dbg.json +1 -1
- 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/SimulateHelper.sol/SimulateHelper.dbg.json +4 -0
- package/build/artifacts/contracts/offchain-helpers/SimulateHelper.sol/SimulateHelper.json +84 -0
- package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/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/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
- package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +4 -0
- package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +116 -0
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +36 -60
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -57
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +2 -2
- package/build/artifacts/contracts/router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.json +7 -2
- package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
- 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/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/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/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol +5 -23
- package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol +2 -5
- package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol +6 -20
- package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol +6 -27
- package/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol +1 -2
- package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +1 -1
- package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +16 -17
- package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol +6 -7
- package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol +7 -8
- package/contracts/LiquidityMining/PendleMerkleDistributor.sol +2 -11
- package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol +14 -37
- package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol +19 -34
- package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +4 -14
- package/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +4 -16
- package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +11 -39
- package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +3 -10
- package/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol +1 -1
- package/contracts/LiquidityMining/libraries/VeBalanceLib.sol +5 -20
- package/contracts/LiquidityMining/libraries/VeHistoryLib.sol +1 -3
- package/contracts/core/Market/MarketMathCore.sol +12 -37
- package/contracts/core/Market/OracleLib.sol +6 -24
- package/contracts/core/Market/PendleExternalRewardDistributor.sol +4 -10
- package/contracts/core/Market/PendleGauge.sol +3 -9
- package/contracts/core/Market/PendleMarket.sol +14 -39
- package/contracts/core/Market/PendleMarketFactory.sol +14 -21
- package/contracts/core/Market/v2/PendleGaugeV2.sol +8 -24
- package/contracts/core/Market/v2/PendleMarketFactoryV2.sol +7 -27
- package/contracts/core/Market/v2/PendleMarketV2.sol +13 -36
- package/contracts/core/Market/v3/PendleMarketFactoryV3.sol +137 -0
- package/contracts/core/Market/v3/PendleMarketV3.sol +360 -0
- package/contracts/core/RewardManager/PendleLinearDistributor.sol +143 -0
- package/contracts/core/RewardManager/RewardManager.sol +14 -7
- package/contracts/core/RewardManager/RewardManagerAbstract.sol +5 -17
- package/contracts/core/StandardizedYield/SYBase.sol +10 -40
- package/contracts/core/StandardizedYield/SYBaseUpg.sol +197 -0
- package/contracts/core/StandardizedYield/SYBaseWithRewards.sol +9 -41
- package/contracts/core/StandardizedYield/SYBaseWithRewardsUpg.sol +88 -0
- package/contracts/core/StandardizedYield/SYUtils.sol +1 -4
- package/contracts/core/StandardizedYield/StEthHelper.sol +3 -9
- package/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol +94 -0
- package/contracts/core/StandardizedYield/implementations/AaveV3/libraries/AaveAdapterLib.sol +19 -0
- package/contracts/core/StandardizedYield/implementations/AaveV3/libraries/WadRayMath.sol +126 -0
- package/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol +4 -12
- package/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol +5 -19
- package/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol +4 -14
- package/contracts/core/StandardizedYield/implementations/BalancerStable/AuraSwEthBbAWethSYV2.sol +4 -14
- package/contracts/core/StandardizedYield/implementations/BalancerStable/{PendleAuraWethVethSY.sol → AuraWethVethSYUpg.sol} +13 -20
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol +3 -7
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol +12 -29
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol +12 -29
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol +12 -29
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol +14 -39
- package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol +7 -28
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol +13 -30
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewProxy.sol +1 -1
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV4.sol +50 -153
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV5.sol +50 -157
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol +4 -16
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol +6 -25
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol +36 -34
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol +4 -13
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol +20 -58
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol +28 -79
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV3Upg.sol +310 -0
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol +1 -3
- package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol +2 -6
- package/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol +5 -13
- package/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol +9 -29
- package/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol +2 -8
- package/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol +1 -5
- package/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol +8 -19
- package/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol +7 -25
- package/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol +8 -27
- package/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol +2 -2
- package/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol +4 -9
- package/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol +3 -15
- package/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol +5 -23
- package/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol +10 -40
- package/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol +2 -8
- package/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol +2 -7
- package/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol +5 -20
- package/contracts/core/StandardizedYield/implementations/Flux/FluxTokenLib.sol +6 -4
- package/contracts/core/StandardizedYield/implementations/Flux/PendleFluxLendingSY.sol +3 -11
- package/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol +3 -9
- package/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol +115 -0
- package/contracts/core/StandardizedYield/implementations/GLP/PendleGMV2TokenSY.sol +134 -0
- package/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol +5 -19
- package/contracts/core/StandardizedYield/implementations/HMX/HLPPricingHelper.sol +3 -4
- package/contracts/core/StandardizedYield/implementations/HMX/PendleHlpSY.sol +18 -25
- package/contracts/core/StandardizedYield/implementations/Kyber/KyberMathHelper.sol +425 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/KyberNftManagerBaseUpg.sol +438 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/PendleKyberElasticSYUpg.sol +155 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/FullMath.sol +123 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/LiqDeltaMath.sol +17 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/LiquidityMath.sol +74 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/MathConstants.sol +19 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/QtyDeltaMath.sol +103 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/QuadMath.sol +31 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/ReinvestmentMath.sol +26 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/SafeCast.sol +73 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/SwapMath.sol +272 -0
- package/contracts/core/StandardizedYield/implementations/Kyber/libraries/TickMath.sol +223 -0
- package/contracts/core/StandardizedYield/implementations/MUX/MlpPricingHelper.sol +26 -0
- package/contracts/core/StandardizedYield/implementations/MUX/PendleMlpSY.sol +195 -0
- package/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol +12 -41
- package/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol +1 -1
- package/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol +13 -42
- package/contracts/core/StandardizedYield/implementations/PendleBridgedLSDSY.sol +4 -11
- package/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol +4 -16
- package/contracts/core/StandardizedYield/implementations/PendleEUSDSY.sol +3 -11
- package/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol +3 -11
- package/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol +5 -18
- package/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol +3 -7
- package/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol +5 -18
- package/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol +3 -10
- package/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol +4 -12
- package/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveSY.sol +157 -0
- package/contracts/core/StandardizedYield/implementations/Stader/PendleETHXSY.sol +4 -12
- package/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol +4 -12
- package/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol +9 -29
- package/contracts/core/StandardizedYield/implementations/Thena/ThenaLpHelper.sol +3 -10
- package/contracts/core/StandardizedYield/implementations/Thena/ThenaMath.sol +9 -30
- package/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol +10 -40
- package/contracts/core/YieldContracts/InterestManagerYT.sol +6 -8
- package/contracts/core/YieldContracts/PendlePrincipalToken.sol +1 -1
- package/contracts/core/YieldContracts/PendleYieldContractFactory.sol +2 -3
- package/contracts/core/YieldContracts/PendleYieldToken.sol +17 -44
- package/contracts/core/YieldContractsV2/InterestManagerYTV2.sol +5 -14
- package/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol +1 -1
- package/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol +2 -3
- package/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol +13 -48
- package/contracts/core/erc20/PendleERC20.sol +2 -8
- package/contracts/core/erc20/PendleERC20Permit.sol +2 -6
- package/contracts/core/erc20/PendleERC20PermitUpg.sol +82 -0
- package/contracts/core/erc20/PendleERC20Upg.sol +334 -0
- package/contracts/core/libraries/ArrayLib.sol +7 -8
- package/contracts/core/libraries/BaseSplitCodeFactory.sol +1 -6
- package/contracts/core/libraries/Errors.sol +20 -2
- package/contracts/core/libraries/ExpiryUtilsLib.sol +3 -26
- package/contracts/core/libraries/StringLib.sol +5 -21
- package/contracts/core/libraries/TokenHelper.sol +3 -3
- package/contracts/core/libraries/math/LogExpMath.sol +1 -4
- package/contracts/core/libraries/math/PMath.sol +13 -15
- package/contracts/interfaces/AaveV3/IAaveV3AToken.sol +15 -0
- package/contracts/interfaces/AaveV3/IAaveV3Pool.sol +11 -0
- package/contracts/interfaces/Balancer/IComposableStable.sol +3 -4
- package/contracts/interfaces/Balancer/IERC4626LinearPool.sol +2 -10
- package/contracts/interfaces/Balancer/IMetaStablePool.sol +3 -11
- package/contracts/interfaces/Balancer/IVault.sol +3 -8
- package/contracts/interfaces/BinanceEth/IWBETH.sol +1 -1
- package/contracts/interfaces/Camelot/ICamelotNFTFactory.sol +1 -3
- package/contracts/interfaces/Camelot/ICamelotNFTHandler.sol +2 -10
- package/contracts/interfaces/Camelot/ICamelotNitroPool.sol +0 -1
- package/contracts/interfaces/Camelot/ICamelotNitroPoolFactory.sol +3 -12
- package/contracts/interfaces/Camelot/ICamelotPair.sol +5 -25
- package/contracts/interfaces/Camelot/ICamelotRouter.sol +1 -5
- package/contracts/interfaces/Camelot/IXGrail.sol +3 -11
- package/contracts/interfaces/ConvexCurve/IBooster.sol +1 -3
- package/contracts/interfaces/Curve/ICrvPool.sol +3 -12
- package/contracts/interfaces/Curve/ITriCrvPool.sol +2 -9
- package/contracts/interfaces/Flux/IFluxErc20.sol +1 -1
- package/contracts/interfaces/Flux/IFluxInterestRateModel.sol +1 -5
- package/contracts/interfaces/GMX/IGMXPriceHelper.sol +6 -0
- package/contracts/interfaces/GMX/IGMXVault.sol +2 -9
- package/contracts/interfaces/GMX/IRewardRouterV2.sol +1 -4
- package/contracts/interfaces/HMX/IHLPStaking.sol +1 -1
- package/contracts/interfaces/HMX/IHMXCalculator.sol +1 -1
- package/contracts/interfaces/HMX/IHMXCompounder.sol +1 -1
- package/contracts/interfaces/HMX/IHMXStaking.sol +1 -1
- package/contracts/interfaces/HMX/IHMXVester.sol +1 -1
- package/contracts/interfaces/IApeStaking.sol +3 -9
- package/contracts/interfaces/IBenQiInterestRateModel.sol +1 -5
- package/contracts/interfaces/IDiamondCut.sol +1 -5
- package/contracts/interfaces/IDiamondLoupe.sol +1 -3
- package/contracts/interfaces/ILayerZeroReceiver.sol +1 -6
- package/contracts/interfaces/IPActionAddRemoveLiqV3.sol +10 -2
- package/contracts/interfaces/IPActionCallbackV3.sol +7 -0
- package/contracts/interfaces/IPActionInfoStatic.sol +4 -7
- package/contracts/interfaces/IPActionMarketAuxStatic.sol +5 -9
- package/contracts/interfaces/IPActionMarketCoreStatic.sol +118 -58
- package/contracts/interfaces/IPActionMintRedeemStatic.sol +38 -21
- package/contracts/interfaces/IPActionMiscV3.sol +52 -32
- package/contracts/interfaces/IPActionStorageStatic.sol +5 -1
- package/contracts/interfaces/IPAllActionTypeV3.sol +1 -0
- package/contracts/interfaces/IPAllActionV3.sol +2 -2
- package/contracts/interfaces/IPBulkSeller.sol +49 -0
- package/contracts/interfaces/IPBulkSellerFactory.sol +12 -0
- package/contracts/interfaces/IPBulkSellerSYCallback.sol +6 -0
- package/contracts/interfaces/IPFeeDistributor.sol +1 -3
- package/contracts/interfaces/IPFeeDistributorV2.sol +8 -7
- package/contracts/interfaces/IPGaugeController.sol +2 -8
- package/contracts/interfaces/IPGaugeControllerMainchain.sol +1 -5
- package/contracts/interfaces/IPInterestManagerYT.sol +3 -3
- package/contracts/interfaces/IPInterestManagerYTV2.sol +1 -4
- package/contracts/interfaces/IPLimitRouter.sol +29 -60
- package/contracts/interfaces/IPLinearDistributor.sol +21 -0
- package/contracts/interfaces/IPMarket.sol +4 -17
- package/contracts/interfaces/IPMarketFactory.sol +2 -13
- package/contracts/interfaces/IPMarketFactoryV3.sol +24 -0
- package/contracts/interfaces/IPMarketV3.sol +8 -0
- package/contracts/interfaces/IPOffchainStorage.sol +11 -0
- package/contracts/interfaces/IPPriceFeed.sol +6 -0
- package/contracts/interfaces/IPPtOracle.sol +2 -9
- package/contracts/interfaces/IPRouterHelper.sol +11 -7
- package/contracts/interfaces/IPRouterStatic.sol +1 -3
- package/contracts/interfaces/IPVotingController.sol +7 -19
- package/contracts/interfaces/IPVotingEscrowMainchain.sol +2 -8
- package/contracts/interfaces/IPYieldToken.sol +2 -8
- package/contracts/interfaces/IPYieldTokenV2.sol +1 -6
- package/contracts/interfaces/IPendlePreviewHelper.sol +2 -8
- package/contracts/interfaces/IRewardManager.sol +1 -4
- package/contracts/interfaces/IStETH.sol +1 -4
- package/contracts/interfaces/IStandardizedYield.sol +9 -16
- package/contracts/interfaces/IStargateLP.sol +0 -3
- package/contracts/interfaces/IStargateRouter.sol +1 -5
- package/contracts/interfaces/Kyber/IKyberElasticFactory.sol +157 -0
- package/contracts/interfaces/Kyber/IKyberElasticPool.sol +101 -0
- package/contracts/interfaces/Kyber/IKyberElasticRouter.sol +98 -0
- package/contracts/interfaces/Kyber/IKyberLiquidityMining.sol +209 -0
- package/contracts/interfaces/Kyber/IKyberMathHelper.sol +28 -0
- package/contracts/interfaces/Kyber/IKyberPositionManager.sol +179 -0
- package/contracts/interfaces/Lybra/IEUSD.sol +1 -1
- package/contracts/interfaces/MUX/IMUXRewardRouter.sol +139 -0
- package/contracts/interfaces/Silo/ISilo.sol +298 -0
- package/contracts/interfaces/Silo/ISiloIncentiveController.sol +16 -0
- package/contracts/interfaces/Silo/ISiloLens.sol +6 -0
- package/contracts/interfaces/Stader/IStaderStakeManager.sol +2 -2
- package/contracts/interfaces/Thena/IThenaFactory.sol +1 -5
- package/contracts/interfaces/Thena/IThenaGaugeV2.sol +1 -2
- package/contracts/interfaces/Thena/IThenaPair.sol +3 -5
- package/contracts/limit/LimitMathCore.sol +75 -148
- package/contracts/limit/{PendleOrderMixin.sol → LimitRouterBase.sol} +121 -214
- package/contracts/limit/PendleLimitRouter.sol +15 -17
- package/contracts/offchain-helpers/AutomateReady.sol +17 -32
- package/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol +6 -3
- package/contracts/offchain-helpers/BoringLpSeller.sol +4 -17
- package/contracts/offchain-helpers/BoringPtSeller.sol +2 -7
- package/contracts/offchain-helpers/Broadcaster.sol +1 -1
- package/contracts/offchain-helpers/BytesLib.sol +551 -0
- package/contracts/offchain-helpers/EmptyUUPS.sol +0 -1
- package/contracts/offchain-helpers/LegacyNFTHelper.sol +4 -23
- package/contracts/offchain-helpers/LimitBackendHelper.sol +109 -0
- package/contracts/offchain-helpers/MarketExchangeRateLib.sol +2 -13
- package/contracts/offchain-helpers/Multicall2.sol +2 -7
- package/contracts/offchain-helpers/PendleMulticallV1.sol +7 -7
- package/contracts/offchain-helpers/PendleMulticallV2.sol +12 -13
- package/contracts/offchain-helpers/PendleOffchainStorage.sol +59 -0
- package/contracts/offchain-helpers/SimulateHelper.sol +40 -0
- package/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol +15 -1
- package/contracts/oracles/PendleLpOracleLib.sol +9 -10
- package/contracts/oracles/PendlePtOracle.sol +8 -19
- package/contracts/oracles/PendlePtOracleLib.sol +8 -13
- package/contracts/oracles/samples/PendleLpGlpOracle.sol +6 -10
- package/contracts/oracles/samples/PendlePtGlpOracle.sol +6 -10
- package/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol +8 -15
- package/contracts/router/ActionAddRemoveLiqV3.sol +147 -52
- package/contracts/router/{base/ActionBaseCallback.sol → ActionCallbackV3.sol} +64 -9
- package/contracts/router/ActionMiscV3.sol +47 -46
- package/contracts/router/ActionSwapPTV3.sol +18 -6
- package/contracts/router/ActionSwapYTV3.sol +44 -16
- package/contracts/router/PendleRouterHelper.sol +72 -40
- package/contracts/router/PendleRouterV3.sol +81 -74
- package/contracts/router/base/ActionBase.sol +94 -46
- package/contracts/router/base/CallbackHelper.sol +18 -20
- package/contracts/router/base/MarketApproxLib.sol +36 -32
- package/contracts/router/swap-aggregator/PendleSwap.sol +31 -7
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutorOptimistic.sol +63 -0
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelper.sol +314 -0
- package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2.sol +560 -0
- package/contracts/router/swap-aggregator/kyberswap/{IMetaAggregationRouterV2.sol → interfaces/IMetaAggregationRouterV2.sol} +11 -6
- package/contracts/router/swap-aggregator/kyberswap/{KyberInputScalingHelper.sol → l1-contracts/InputScalingHelper.sol} +70 -19
- package/contracts/router/swap-aggregator/kyberswap/{ScalingDataLib.sol → l1-contracts/ScalingDataLib.sol} +111 -53
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/BytesHelper.sol +29 -0
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataReader.sol +149 -0
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataWriter.sol +118 -0
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/Common.sol +42 -0
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/DexScaler.sol +382 -0
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/ExecutorReader.sol +61 -0
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/InputScalingHelperL2.sol +329 -0
- package/contracts/router/swap-aggregator/kyberswap/l2-contracts/ScalingDataL2Lib.sol +173 -0
- package/contracts/router/swap-aggregator/oneinch/I1inchAggregationRouterV5.sol +4 -10
- package/contracts/router/swap-aggregator/oneinch/OneInchAggregationRouterHelper.sol +20 -14
- package/deployments/1-core.json +5 -2
- package/deployments/1-markets/EPENDLE-SEP2024.json +12 -0
- package/deployments/1-markets/SFRAX-MARCH2024.json +10 -0
- package/deployments/1-markets/SILO-CRVUSD-MARCH2024.json +10 -0
- package/deployments/10-core.json +6 -3
- package/deployments/42161-core.json +7 -3
- package/deployments/42161-markets/AAVE-USDC-JUNE2024.json +11 -0
- package/deployments/42161-markets/ARBSILO-USDC-FEB2024.json +10 -0
- package/deployments/42161-markets/GM-ARB-USDC-MARCH2024.json +10 -0
- package/deployments/42161-markets/KYBER-AXLWSTETH-WSTETH-MARCH2024.json +10 -0
- package/deployments/42161-markets/MLP-MARCH2024.json +10 -0
- package/deployments/42161-markets/WSTETH-ARBITRUM-MARCH2024.json +11 -0
- package/deployments/42161-markets/WSTETHSILO-ETH-MARCH2024.json +11 -0
- package/deployments/56-core.json +5 -2
- package/deployments/merkle-distribution/2023-10-26.json +7300 -0
- package/deployments/merkle-distribution/2023-11-30.json +7730 -0
- package/package.json +8 -8
- package/typechain-types/AccessControlUpgradeable.ts +369 -0
- package/typechain-types/ActionAddRemoveLiq.ts +1239 -0
- package/typechain-types/ActionCallbackV3.ts +164 -0
- package/typechain-types/ActionMintRedeem.ts +673 -0
- package/typechain-types/ActionMisc.ts +155 -0
- package/typechain-types/ActionMiscV3.ts +36 -75
- package/typechain-types/ActionSwapPT.ts +544 -0
- package/typechain-types/ActionSwapYT.ts +730 -0
- package/typechain-types/ActionSwapYTV3.ts +0 -44
- package/typechain-types/AuraWethVethSYUpg.ts +1612 -0
- package/typechain-types/BeaconProxy.ts +97 -0
- package/typechain-types/BulkSeller.ts +743 -0
- package/typechain-types/BulkSellerFactory.ts +712 -0
- package/typechain-types/BulkSellerOffchain.ts +251 -0
- package/typechain-types/ContextUpgradeable.ts +68 -0
- package/typechain-types/EIP712.ts +135 -0
- package/typechain-types/ERC165Upgradeable.ts +113 -0
- package/typechain-types/GMTokenPricingHelper.ts +478 -0
- package/typechain-types/IAccessControlUpgradeable.ts +305 -0
- package/typechain-types/IAggregationExecutorOptimistic.ts +394 -0
- package/typechain-types/IERC165Upgradeable.ts +102 -0
- package/typechain-types/IERC1967.ts +97 -0
- package/typechain-types/IERC5267.ts +135 -0
- package/typechain-types/IERC5267Upgradeable.ts +135 -0
- package/typechain-types/IExecutorHelperL2.ts +2272 -0
- package/typechain-types/IGMXPriceHelper.ts +84 -0
- package/typechain-types/IGMXV2DataStore.ts +87 -0
- package/typechain-types/IGMXV2Oracle.ts +107 -0
- package/typechain-types/IGMXV2Reader.ts +204 -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/IMUXRewardRouter.ts +1599 -0
- package/typechain-types/IPActionAddRemoveLiq.ts +1239 -0
- package/typechain-types/IPActionCallbackV3.ts +164 -0
- package/typechain-types/IPActionMintRedeem.ts +673 -0
- package/typechain-types/IPActionMisc.ts +155 -0
- package/typechain-types/IPActionMiscV3.ts +36 -75
- package/typechain-types/IPActionSwapPT.ts +544 -0
- package/typechain-types/IPActionSwapYT.ts +686 -0
- package/typechain-types/IPAllAction.ts +2935 -0
- package/typechain-types/IPAllActionV3.ts +70 -60
- package/typechain-types/IPBulkSeller.ts +391 -0
- package/typechain-types/IPBulkSellerCallback.ts +115 -0
- package/typechain-types/IPBulkSellerFactory.ts +152 -0
- package/typechain-types/IPLimitRouter.ts +39 -72
- package/typechain-types/IPLimitRouterCallback.ts +120 -0
- package/typechain-types/IPLinearDistributor.ts +199 -0
- package/typechain-types/IPMarketFactoryV3.ts +225 -0
- package/typechain-types/IPMarketV3.ts +1068 -0
- package/typechain-types/IPOffchainStorage.ts +146 -0
- package/typechain-types/IPPriceFeed.ts +81 -0
- package/typechain-types/ISilo.ts +1093 -0
- package/typechain-types/ISiloIncentiveController.ts +129 -0
- package/typechain-types/ISiloLens.ts +107 -0
- package/typechain-types/KyberMathHelper.ts +604 -0
- package/typechain-types/KyberNftManagerBaseUpg.ts +148 -0
- package/typechain-types/LimitBackendHelper.ts +287 -0
- package/typechain-types/MlpPricingHelper.ts +397 -0
- package/typechain-types/PendleAuraBalancerStableLPSYV3Upg.ts +1577 -0
- package/typechain-types/PendleERC20PermitUpg.ts +517 -0
- package/typechain-types/PendleERC20Upg.ts +348 -0
- package/typechain-types/PendleGMV2TokenSY.ts +1434 -0
- package/typechain-types/PendleKyberElasticSYUpg.ts +1648 -0
- package/typechain-types/PendleLimitRouter.ts +110 -92
- package/typechain-types/PendleLinearDistributor.ts +829 -0
- package/typechain-types/PendleMarketFactoryV3.ts +719 -0
- package/typechain-types/PendleMarketV3.ts +1364 -0
- package/typechain-types/PendleMlpSY.ts +1606 -0
- package/typechain-types/PendleOffchainStorage.ts +666 -0
- package/typechain-types/PendleOrderMixin.ts +292 -92
- package/typechain-types/PendleRouter.ts +217 -0
- package/typechain-types/PendleRouterHelper2.ts +185 -0
- package/typechain-types/PendleSiloWithIncentiveSY.ts +1455 -0
- package/typechain-types/PendleSwapBase.ts +126 -0
- package/typechain-types/PendleSwapL1.ts +126 -0
- package/typechain-types/PendleSwapL2.ts +126 -0
- package/typechain-types/ReentrancyGuardUpgradeable.ts +68 -0
- package/typechain-types/SYBaseUpg.ts +1270 -0
- package/typechain-types/SYBaseWithRewardsUpg.ts +1363 -0
- package/typechain-types/ShortStrings.ts +57 -0
- package/typechain-types/SimulateHelper.ts +42 -35
- package/typechain-types/factories/AccessControlUpgradeable__factory.ts +247 -0
- package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
- package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1676 -0
- package/typechain-types/factories/ActionBaseCallback__factory.ts +59 -0
- package/typechain-types/factories/ActionCallbackV3__factory.ts +169 -0
- package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMintRedeem__factory.ts +806 -0
- package/typechain-types/factories/ActionMiscV3__factory.ts +35 -59
- package/typechain-types/factories/ActionMisc__factory.ts +129 -0
- package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapPT__factory.ts +770 -0
- package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -56
- package/typechain-types/factories/ActionSwapYT__factory.ts +1041 -0
- package/typechain-types/factories/ActionVePendleStatic__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 +1264 -0
- package/typechain-types/factories/BeaconProxy__factory.ts +141 -0
- package/typechain-types/factories/Broadcaster__factory.ts +1 -1
- package/typechain-types/factories/BulkSellerFactory__factory.ts +574 -0
- package/typechain-types/factories/BulkSellerOffchain__factory.ts +178 -0
- package/typechain-types/factories/BulkSeller__factory.ts +692 -0
- package/typechain-types/factories/ContextUpgradeable__factory.ts +39 -0
- package/typechain-types/factories/EIP712__factory.ts +85 -0
- package/typechain-types/factories/ERC165Upgradeable__factory.ts +58 -0
- package/typechain-types/factories/Errors__factory.ts +17 -17
- package/typechain-types/factories/GMTokenPricingHelper__factory.ts +354 -0
- package/typechain-types/factories/IAccessControlUpgradeable__factory.ts +202 -0
- package/typechain-types/factories/IAggregationExecutorOptimistic__factory.ts +213 -0
- package/typechain-types/factories/IERC165Upgradeable__factory.ts +45 -0
- package/typechain-types/factories/IERC1967__factory.ts +68 -0
- package/typechain-types/factories/IERC5267Upgradeable__factory.ts +75 -0
- package/typechain-types/factories/IERC5267__factory.ts +72 -0
- package/typechain-types/factories/IExecutorHelperL2__factory.ts +1862 -0
- package/typechain-types/factories/IGMXPriceHelper__factory.ts +45 -0
- package/typechain-types/factories/IGMXV2DataStore__factory.ts +45 -0
- package/typechain-types/factories/IGMXV2Oracle__factory.ts +47 -0
- package/typechain-types/factories/IGMXV2Reader__factory.ts +192 -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/IMUXRewardRouter__factory.ts +885 -0
- package/typechain-types/factories/IPActionAddRemoveLiq__factory.ts +1446 -0
- package/typechain-types/factories/IPActionCallbackV3__factory.ts +83 -0
- package/typechain-types/factories/IPActionMintRedeem__factory.ts +720 -0
- package/typechain-types/factories/IPActionMiscV3__factory.ts +18 -42
- package/typechain-types/factories/IPActionMisc__factory.ts +91 -0
- package/typechain-types/factories/IPActionSwapPT__factory.ts +544 -0
- package/typechain-types/factories/IPActionSwapYT__factory.ts +723 -0
- package/typechain-types/factories/IPAllActionV3__factory.ts +37 -27
- package/typechain-types/factories/IPAllAction__factory.ts +3515 -0
- package/typechain-types/factories/IPBulkSellerCallback__factory.ts +53 -0
- package/typechain-types/factories/IPBulkSellerFactory__factory.ts +107 -0
- package/typechain-types/factories/IPBulkSeller__factory.ts +333 -0
- package/typechain-types/factories/IPLimitRouterCallback__factory.ts +64 -0
- package/typechain-types/factories/IPLimitRouter__factory.ts +23 -136
- package/typechain-types/factories/IPLinearDistributor__factory.ts +150 -0
- package/typechain-types/factories/IPMarketFactoryV3__factory.ts +160 -0
- package/typechain-types/factories/IPMarketV3__factory.ts +845 -0
- package/typechain-types/factories/IPOffchainStorage__factory.ts +82 -0
- package/typechain-types/factories/IPPriceFeed__factory.ts +36 -0
- package/typechain-types/factories/ISiloIncentiveController__factory.ts +67 -0
- package/typechain-types/factories/ISiloLens__factory.ts +47 -0
- package/typechain-types/factories/ISilo__factory.ts +846 -0
- package/typechain-types/factories/KyberMathHelper__factory.ts +430 -0
- package/typechain-types/factories/KyberNftManagerBaseUpg__factory.ts +101 -0
- package/typechain-types/factories/LimitBackendHelper__factory.ts +232 -0
- package/typechain-types/factories/MlpPricingHelper__factory.ts +303 -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 +1209 -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 +389 -0
- package/typechain-types/factories/PendleERC20Upg__factory.ts +261 -0
- 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/PendleGMV2TokenSY__factory.ts +1240 -0
- 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/PendleKyberElasticSYUpg__factory.ts +1351 -0
- package/typechain-types/factories/PendleLimitRouter__factory.ts +61 -131
- package/typechain-types/factories/PendleLinearDistributor__factory.ts +627 -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/PendleMarketFactoryV3__factory.ts +714 -0
- package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketV2__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketV3__factory.ts +1351 -0
- package/typechain-types/factories/PendleMarket__factory.ts +1 -1
- package/typechain-types/factories/PendleMlpSY__factory.ts +1314 -0
- package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleOffchainStorage__factory.ts +492 -0
- package/typechain-types/factories/PendleOracleForSyProxy__factory.ts +1 -1
- package/typechain-types/factories/PendleOrderMixin__factory.ts +254 -129
- 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/PendleRouterHelper2__factory.ts +206 -0
- package/typechain-types/factories/PendleRouterHelper__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterV3__factory.ts +10 -1
- package/typechain-types/factories/PendleRouter__factory.ts +264 -0
- package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSiloWithIncentiveSY__factory.ts +1266 -0
- package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSwapBase__factory.ts +91 -0
- package/typechain-types/factories/PendleSwapL1__factory.ts +126 -0
- package/typechain-types/factories/PendleSwapL2__factory.ts +126 -0
- 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/PtAndLpToAsset__factory.ts +1 -1
- package/typechain-types/factories/ReentrancyGuardUpgradeable__factory.ts +43 -0
- package/typechain-types/factories/SAPE__factory.ts +1 -1
- package/typechain-types/factories/SYBaseUpg__factory.ts +988 -0
- package/typechain-types/factories/SYBaseWithRewardsUpg__factory.ts +1061 -0
- package/typechain-types/factories/ShortStrings__factory.ts +77 -0
- package/typechain-types/factories/SimulateHelper__factory.ts +71 -18
- 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 +763 -16
- package/typechain-types/index.ts +160 -6
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/ILimitOrderCallee.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPOrderMixin.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPOrderMixin.json +0 -438
- package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +0 -4
- package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.json +0 -82
- package/build/artifacts/contracts/router/base/SimulateHelper.sol/SimulateHelper.dbg.json +0 -4
- package/build/artifacts/contracts/router/base/SimulateHelper.sol/SimulateHelper.json +0 -69
- package/contracts/limit/helpers/ArgumentsDecoder.sol +0 -47
- package/contracts/limit/helpers/Permitable.sol +0 -48
- package/contracts/limit/helpers/RevertReasonParser.sol +0 -75
- package/contracts/offchain-helpers/ChainlinkRelayerGelato.sol +0 -37
- package/contracts/offchain-helpers/PtAndLpToAsset.sol +0 -62
- package/contracts/offchain-helpers/router-static/PendleRouterStatic.sol +0 -19
- package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +0 -112
- package/contracts/offchain-helpers/router-static/base/ActionLimitOrdersStatic.sol +0 -145
- package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +0 -171
- package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +0 -582
- package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +0 -116
- package/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol +0 -64
- package/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol +0 -53
- package/contracts/offchain-helpers/router-static/base/StorageLayout.sol +0 -18
- package/contracts/router/base/SimulateHelper.sol +0 -33
- package/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol +0 -231
- package/deployments/1-markets/BALANCER-LP-AURA-VETH-WETH-SEP2024.json +0 -8
- /package/contracts/router/swap-aggregator/kyberswap/{IAggregationExecutor.sol → interfaces/IAggregationExecutor.sol} +0 -0
- /package/deployments/1-markets/{BALANCER-LP-AURA-BBAWETHSWETH-SEP-26-2024.json → deprecated/BALANCER-LP-AURA-BBAWETHSWETH-SEP-26-2024.json} +0 -0
- /package/deployments/1-markets/{BALANCER-LP-AURA-ETHX-BBAWETH-SEP-26-2024.json → deprecated/BALANCER-LP-AURA-ETHX-BBAWETH-SEP-26-2024.json} +0 -0
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
|
|
3
|
-
pragma solidity ^0.8.0;
|
|
4
|
-
|
|
5
|
-
/// @title Library that allows to parse unsuccessful arbitrary calls revert reasons.
|
|
6
|
-
/// See https://solidity.readthedocs.io/en/latest/control-structures.html#revert for details.
|
|
7
|
-
/// Note that we assume revert reason being abi-encoded as Error(string) so it may fail to parse reason
|
|
8
|
-
/// if structured reverts appear in the future.
|
|
9
|
-
///
|
|
10
|
-
/// All unsuccessful parsings get encoded as Unknown(data) string
|
|
11
|
-
|
|
12
|
-
library RevertReasonParser {
|
|
13
|
-
bytes4 private constant _PANIC_SELECTOR = bytes4(keccak256("Panic(uint256)"));
|
|
14
|
-
bytes4 private constant _ERROR_SELECTOR = bytes4(keccak256("Error(string)"));
|
|
15
|
-
|
|
16
|
-
function parse(bytes memory data, string memory prefix) internal pure returns (string memory) {
|
|
17
|
-
if (data.length >= 4) {
|
|
18
|
-
bytes4 selector;
|
|
19
|
-
|
|
20
|
-
assembly {
|
|
21
|
-
// solhint-disable-line no-inline-assembly
|
|
22
|
-
selector := mload(add(data, 0x20))
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
// 68 = 4-byte selector + 32 bytes offset + 32 bytes length
|
|
26
|
-
if (selector == _ERROR_SELECTOR && data.length >= 68) {
|
|
27
|
-
uint256 offset;
|
|
28
|
-
bytes memory reason;
|
|
29
|
-
assembly {
|
|
30
|
-
// solhint-disable-line no-inline-assembly
|
|
31
|
-
// 36 = 32 bytes data length + 4-byte selector
|
|
32
|
-
offset := mload(add(data, 36))
|
|
33
|
-
reason := add(data, add(36, offset))
|
|
34
|
-
}
|
|
35
|
-
/*
|
|
36
|
-
revert reason is padded up to 32 bytes with ABI encoder: Error(string)
|
|
37
|
-
also sometimes there is extra 32 bytes of zeros padded in the end:
|
|
38
|
-
https://github.com/ethereum/solidity/issues/10170
|
|
39
|
-
because of that we can't check for equality and instead check
|
|
40
|
-
that offset + string length + extra 36 bytes is less than overall data length
|
|
41
|
-
*/
|
|
42
|
-
require(data.length >= 36 + offset + reason.length, "Invalid revert reason");
|
|
43
|
-
return string(abi.encodePacked(prefix, "Error(", reason, ")"));
|
|
44
|
-
}
|
|
45
|
-
// 36 = 4-byte selector + 32 bytes integer
|
|
46
|
-
else if (selector == _PANIC_SELECTOR && data.length == 36) {
|
|
47
|
-
uint256 code;
|
|
48
|
-
assembly {
|
|
49
|
-
// solhint-disable-line no-inline-assembly
|
|
50
|
-
// 36 = 32 bytes data length + 4-byte selector
|
|
51
|
-
code := mload(add(data, 36))
|
|
52
|
-
}
|
|
53
|
-
return string(abi.encodePacked(prefix, "Panic(", _toHex(code), ")"));
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return string(abi.encodePacked(prefix, "Unknown(", _toHex(data), ")"));
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
function _toHex(uint256 value) private pure returns (string memory) {
|
|
61
|
-
return _toHex(abi.encodePacked(value));
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
function _toHex(bytes memory data) private pure returns (string memory) {
|
|
65
|
-
bytes16 alphabet = 0x30313233343536373839616263646566;
|
|
66
|
-
bytes memory str = new bytes(2 + data.length * 2);
|
|
67
|
-
str[0] = "0";
|
|
68
|
-
str[1] = "x";
|
|
69
|
-
for (uint256 i = 0; i < data.length; i++) {
|
|
70
|
-
str[2 * i + 2] = alphabet[uint8(data[i] >> 4)];
|
|
71
|
-
str[2 * i + 3] = alphabet[uint8(data[i] & 0x0f)];
|
|
72
|
-
}
|
|
73
|
-
return string(str);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "./AutomateReady.sol";
|
|
5
|
-
import "../core/libraries/BoringOwnableUpgradeable.sol";
|
|
6
|
-
import "../core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol";
|
|
7
|
-
|
|
8
|
-
contract ChainlinkRelayerGelato is AutomateReady, BoringOwnableUpgradeable {
|
|
9
|
-
PendleChainlinkRelayer public immutable relayer;
|
|
10
|
-
|
|
11
|
-
int256 public lastSentAnswer;
|
|
12
|
-
|
|
13
|
-
constructor(address _automate, address _taskCreator, PendleChainlinkRelayer _relayer)
|
|
14
|
-
initializer
|
|
15
|
-
AutomateReady(_automate, _taskCreator)
|
|
16
|
-
{
|
|
17
|
-
__BoringOwnable_init();
|
|
18
|
-
relayer = _relayer;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
receive() external payable {}
|
|
22
|
-
|
|
23
|
-
function withdraw() external onlyOwner {
|
|
24
|
-
payable(owner).transfer(address(this).balance);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
function run() external {
|
|
28
|
-
int256 latestAnswer = IChainlinkAggregator(relayer.chainlinkFeed()).latestAnswer();
|
|
29
|
-
require(lastSentAnswer != latestAnswer, "answer not new");
|
|
30
|
-
|
|
31
|
-
(uint256 fee, address feeToken) = _getFeeDetails();
|
|
32
|
-
_transfer(fee, feeToken);
|
|
33
|
-
|
|
34
|
-
relayer.run{value: address(this).balance}();
|
|
35
|
-
lastSentAnswer = latestAnswer;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.0;
|
|
3
|
-
|
|
4
|
-
import "../interfaces/IPMarket.sol";
|
|
5
|
-
import "../core/libraries/math/PMath.sol";
|
|
6
|
-
import "../core/Market/MarketMathCore.sol";
|
|
7
|
-
|
|
8
|
-
contract PtAndLpToAsset {
|
|
9
|
-
using PMath for int256;
|
|
10
|
-
using PMath for uint256;
|
|
11
|
-
using MarketMathCore for MarketState;
|
|
12
|
-
|
|
13
|
-
function getLpToAssetRate(IPMarket market) public view returns (uint256 lpToAssetRate) {
|
|
14
|
-
MarketState memory state = market.readState(address(0));
|
|
15
|
-
uint256 pyIndexCurrent = _getPYIndexCurrent(market);
|
|
16
|
-
MarketPreCompute memory comp = state.getMarketPreCompute(
|
|
17
|
-
PYIndex.wrap(pyIndexCurrent),
|
|
18
|
-
block.timestamp
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
int256 totalHypotheticalAsset = comp.totalAsset +
|
|
22
|
-
state.totalPt.mulDown(int256(_getPtToAssetRate(market, state, pyIndexCurrent)));
|
|
23
|
-
|
|
24
|
-
lpToAssetRate = uint256(totalHypotheticalAsset.divDown(state.totalLp));
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
function getPtToAssetRate(IPMarket market) public view returns (uint256 ptToAssetRate) {
|
|
28
|
-
MarketState memory state = market.readState(address(0));
|
|
29
|
-
return _getPtToAssetRate(market, state, _getPYIndexCurrent(market));
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
function _getPtToAssetRate(
|
|
33
|
-
IPMarket market,
|
|
34
|
-
MarketState memory state,
|
|
35
|
-
uint256 pyIndexCurrent
|
|
36
|
-
) internal view returns (uint256 ptToAssetRate) {
|
|
37
|
-
if (state.expiry <= block.timestamp) {
|
|
38
|
-
(IStandardizedYield SY, , ) = market.readTokens();
|
|
39
|
-
return (SY.exchangeRate().divDown(pyIndexCurrent));
|
|
40
|
-
}
|
|
41
|
-
uint256 timeToExpiry = state.expiry - block.timestamp;
|
|
42
|
-
int256 assetToPtRate = MarketMathCore._getExchangeRateFromImpliedRate(
|
|
43
|
-
state.lastLnImpliedRate,
|
|
44
|
-
timeToExpiry
|
|
45
|
-
);
|
|
46
|
-
|
|
47
|
-
ptToAssetRate = uint256(PMath.IONE.divDown(assetToPtRate));
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
function _getPYIndexCurrent(IPMarket market) private view returns (uint256) {
|
|
51
|
-
(IStandardizedYield SY, , IPYieldToken YT) = market.readTokens();
|
|
52
|
-
|
|
53
|
-
uint256 syIndex = SY.exchangeRate();
|
|
54
|
-
uint256 pyIndexStored = YT.pyIndexStored();
|
|
55
|
-
|
|
56
|
-
if (YT.doCacheIndexSameBlock() && YT.pyIndexLastUpdatedBlock() == block.number) {
|
|
57
|
-
return pyIndexStored;
|
|
58
|
-
} else {
|
|
59
|
-
return PMath.max(syIndex, pyIndexStored);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "@openzeppelin/contracts/proxy/Proxy.sol";
|
|
5
|
-
import "../../interfaces/IPRouterStatic.sol";
|
|
6
|
-
import "./base/StorageLayout.sol";
|
|
7
|
-
|
|
8
|
-
// solhint-disable no-empty-blocks
|
|
9
|
-
contract PendleRouterStatic is Proxy, StorageLayout {
|
|
10
|
-
constructor(address actionStorage) {
|
|
11
|
-
owner = msg.sender;
|
|
12
|
-
selectorToFacet[IPMiniDiamond.setFacetForSelectors.selector] = actionStorage;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
function _implementation() internal view override returns (address res) {
|
|
16
|
-
res = selectorToFacet[msg.sig];
|
|
17
|
-
require(res != address(0), "selector not found");
|
|
18
|
-
}
|
|
19
|
-
}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "../../../interfaces/IPMarket.sol";
|
|
5
|
-
import "../../../interfaces/IPRouterStatic.sol";
|
|
6
|
-
import "../../../interfaces/IPYieldContractFactory.sol";
|
|
7
|
-
import "../../../interfaces/IPMarketFactory.sol";
|
|
8
|
-
|
|
9
|
-
// solhint-disable no-empty-blocks
|
|
10
|
-
contract ActionInfoStatic is IPActionInfoStatic {
|
|
11
|
-
function getPY(address py) public view returns (address pt, address yt) {
|
|
12
|
-
try IPYieldToken(py).PT() returns (address _pt) {
|
|
13
|
-
pt = _pt;
|
|
14
|
-
yt = py;
|
|
15
|
-
} catch {
|
|
16
|
-
pt = py;
|
|
17
|
-
yt = IPPrincipalToken(py).YT();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
/// can be SY, PY or Market
|
|
22
|
-
function getTokensInOut(address token)
|
|
23
|
-
external
|
|
24
|
-
view
|
|
25
|
-
returns (address[] memory tokensIn, address[] memory tokensOut)
|
|
26
|
-
{
|
|
27
|
-
try IStandardizedYield(token).getTokensIn() returns (address[] memory res) {
|
|
28
|
-
return (res, IStandardizedYield(token).getTokensOut());
|
|
29
|
-
} catch {}
|
|
30
|
-
|
|
31
|
-
try IPYieldToken(token).SY() returns (address SY) {
|
|
32
|
-
return (IStandardizedYield(SY).getTokensIn(), IStandardizedYield(SY).getTokensOut());
|
|
33
|
-
} catch {}
|
|
34
|
-
|
|
35
|
-
try IPMarket(token).readTokens() returns (IStandardizedYield SY, IPPrincipalToken, IPYieldToken) {
|
|
36
|
-
return (SY.getTokensIn(), SY.getTokensOut());
|
|
37
|
-
} catch {}
|
|
38
|
-
|
|
39
|
-
revert("invalid token");
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
function getUserSYInfo(address sy, address user) external returns (UserSYInfo memory res) {
|
|
43
|
-
IStandardizedYield SY = IStandardizedYield(sy);
|
|
44
|
-
|
|
45
|
-
// SY
|
|
46
|
-
res.syBalance = TokenAmount(sy, _balanceOf(sy, user));
|
|
47
|
-
|
|
48
|
-
// Rewards
|
|
49
|
-
uint256[] memory rewardsOut = SY.claimRewards(user);
|
|
50
|
-
address[] memory rewardTokens = SY.getRewardTokens();
|
|
51
|
-
|
|
52
|
-
res.unclaimedRewards = _zipTokenAmounts(rewardTokens, rewardsOut);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
function getUserPYInfo(address py, address user) external returns (UserPYInfo memory res) {
|
|
56
|
-
(address _PT, address _YT) = getPY(py);
|
|
57
|
-
IPYieldToken YT = IPYieldToken(_YT);
|
|
58
|
-
|
|
59
|
-
// PT / YT
|
|
60
|
-
res.ytBalance = TokenAmount(_YT, _balanceOf(_YT, user));
|
|
61
|
-
res.ptBalance = TokenAmount(_PT, _balanceOf(_PT, user));
|
|
62
|
-
|
|
63
|
-
// interest
|
|
64
|
-
(uint256 interestOut, uint256[] memory rewardsOut) = YT.redeemDueInterestAndRewards(user, true, true);
|
|
65
|
-
|
|
66
|
-
res.unclaimedInterest = TokenAmount(YT.SY(), interestOut);
|
|
67
|
-
|
|
68
|
-
// Rewards
|
|
69
|
-
address[] memory rewardTokens = YT.getRewardTokens();
|
|
70
|
-
res.unclaimedRewards = _zipTokenAmounts(rewardTokens, rewardsOut);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
function getUserMarketInfo(address market, address user) external returns (UserMarketInfo memory res) {
|
|
74
|
-
IPMarket _market = IPMarket(market);
|
|
75
|
-
MarketState memory state = _market.readState(address(this));
|
|
76
|
-
|
|
77
|
-
if (uint256(state.totalLp) == 0) return res; // market not initialized
|
|
78
|
-
|
|
79
|
-
// LP PT SY
|
|
80
|
-
(IStandardizedYield SY, IPPrincipalToken PT,) = _market.readTokens();
|
|
81
|
-
|
|
82
|
-
uint256 userLp = _balanceOf(market, user);
|
|
83
|
-
uint256 userPt = (userLp * uint256(state.totalPt)) / uint256(state.totalLp);
|
|
84
|
-
uint256 userSy = (userLp * uint256(state.totalSy)) / uint256(state.totalLp);
|
|
85
|
-
|
|
86
|
-
res.lpBalance = TokenAmount(market, userLp);
|
|
87
|
-
res.ptBalance = TokenAmount(address(PT), userPt);
|
|
88
|
-
res.syBalance = TokenAmount(address(SY), userSy);
|
|
89
|
-
|
|
90
|
-
// Rewards
|
|
91
|
-
uint256[] memory rewardsOut = _market.redeemRewards(user);
|
|
92
|
-
address[] memory rewardTokens = _market.getRewardTokens();
|
|
93
|
-
|
|
94
|
-
res.unclaimedRewards = _zipTokenAmounts(rewardTokens, rewardsOut);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
function _zipTokenAmounts(address[] memory tokens, uint256[] memory amounts)
|
|
98
|
-
internal
|
|
99
|
-
pure
|
|
100
|
-
returns (TokenAmount[] memory res)
|
|
101
|
-
{
|
|
102
|
-
res = new TokenAmount[](tokens.length);
|
|
103
|
-
|
|
104
|
-
for (uint256 i = 0; i < tokens.length; i++) {
|
|
105
|
-
res[i] = TokenAmount(tokens[i], amounts[i]);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
function _balanceOf(address token, address user) internal view returns (uint256) {
|
|
110
|
-
return IERC20(token).balanceOf(user);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "../../../interfaces/IPMarket.sol";
|
|
5
|
-
import "../../../interfaces/IPRouterStatic.sol";
|
|
6
|
-
import "./StorageLayout.sol";
|
|
7
|
-
import {LimitMathCore as LimitMath} from "../../../limit/LimitMathCore.sol";
|
|
8
|
-
|
|
9
|
-
// contract ActionLimitOrdersStatic is StorageLayout, IPOrderMixinType {
|
|
10
|
-
// using PMath for uint256;
|
|
11
|
-
// using PMath for int256;
|
|
12
|
-
|
|
13
|
-
// using LogExpMath for int256;
|
|
14
|
-
// using PYIndexLib for PYIndex;
|
|
15
|
-
// using PYIndexLib for IPYieldToken;
|
|
16
|
-
// using MarketApproxPtInLib for MarketState;
|
|
17
|
-
// using MarketApproxPtOutLib for MarketState;
|
|
18
|
-
// using MarketMathCore for MarketState;
|
|
19
|
-
|
|
20
|
-
// uint256 internal constant _ORDER_DOES_NOT_EXIST = 0;
|
|
21
|
-
// uint256 internal constant _ORDER_FILLED = 1;
|
|
22
|
-
|
|
23
|
-
// IPLimitRouter public limitRouter;
|
|
24
|
-
|
|
25
|
-
// // TODO: opt for bytecode
|
|
26
|
-
|
|
27
|
-
// function normalFillStatic(FillOrderParams[] memory params)
|
|
28
|
-
// external
|
|
29
|
-
// returns (
|
|
30
|
-
// uint256 actualMaking,
|
|
31
|
-
// uint256 actualTaking,
|
|
32
|
-
// uint256 totalFee,
|
|
33
|
-
// NormalResults memory out,
|
|
34
|
-
// FillOrderParams[] memory postConvertedOrders
|
|
35
|
-
// )
|
|
36
|
-
// {
|
|
37
|
-
// OrderType Type = params[0].order.Type;
|
|
38
|
-
// bool tokenFromMaker = (Type == OrderType.SY_FOR_PT || Type == OrderType.SY_FOR_YT);
|
|
39
|
-
|
|
40
|
-
// OnchainParams memory onchain = preProcess(params, tokenFromMaker);
|
|
41
|
-
// out = LimitMath.calcNormalBatch(params, onchain);
|
|
42
|
-
// postConvertedOrders = params;
|
|
43
|
-
|
|
44
|
-
// if (tokenFromMaker) {
|
|
45
|
-
// (actualMaking, actualTaking, totalFee) = (out.totalMaking, out.totalTaking, out.totalFee);
|
|
46
|
-
// } else {
|
|
47
|
-
// (actualMaking, actualTaking, totalFee) = (out.totalMaking, out.totalTaking + out.totalFee, out.totalFee);
|
|
48
|
-
// }
|
|
49
|
-
// }
|
|
50
|
-
|
|
51
|
-
// function flashFillStatic(FillOrderParams[] memory params)
|
|
52
|
-
// external
|
|
53
|
-
// returns (
|
|
54
|
-
// uint256 actualInputFromTaker,
|
|
55
|
-
// uint256 actualOutputToTaker,
|
|
56
|
-
// uint256 totalFee,
|
|
57
|
-
// NormalResults memory out,
|
|
58
|
-
// FillOrderParams[] memory postConvertedOrders
|
|
59
|
-
// )
|
|
60
|
-
// {
|
|
61
|
-
// OrderType Type = params[0].order.Type;
|
|
62
|
-
// bool tokenFromMaker = (Type == OrderType.SY_FOR_PT || Type == OrderType.SY_FOR_YT);
|
|
63
|
-
|
|
64
|
-
// OnchainParams memory onchain = preProcess(params, tokenFromMaker);
|
|
65
|
-
// (out, actualInputFromTaker, actualOutputToTaker) = LimitMath.calcFlashBatch(params, onchain);
|
|
66
|
-
// totalFee = out.totalFee;
|
|
67
|
-
// postConvertedOrders = params;
|
|
68
|
-
// }
|
|
69
|
-
|
|
70
|
-
// function preProcess(FillOrderParams[] memory params, bool tokenToSy)
|
|
71
|
-
// internal
|
|
72
|
-
// returns (OnchainParams memory onchain)
|
|
73
|
-
// {
|
|
74
|
-
// _verifyAndUpdateMakings(params);
|
|
75
|
-
|
|
76
|
-
// address YT = params[0].order.YT;
|
|
77
|
-
// address SY = IPYieldToken(YT).SY();
|
|
78
|
-
// uint256 expiry = IPYieldToken(YT).expiry();
|
|
79
|
-
// require(block.timestamp < expiry, "PY expired");
|
|
80
|
-
|
|
81
|
-
// if (tokenToSy) {
|
|
82
|
-
// _mintSyStatic(params, IStandardizedYield(SY));
|
|
83
|
-
// }
|
|
84
|
-
|
|
85
|
-
// onchain = OnchainParams({
|
|
86
|
-
// timeToExpiry: expiry - block.timestamp,
|
|
87
|
-
// index: IPYieldToken(YT).newIndex(),
|
|
88
|
-
// feeRecipient: IPOrderMixin(limitRouter).feeRecipient(),
|
|
89
|
-
// feeRate: IPOrderMixin(limitRouter).feeRate()
|
|
90
|
-
// });
|
|
91
|
-
// }
|
|
92
|
-
|
|
93
|
-
// function _verifyAndUpdateMakings(FillOrderParams[] memory params) internal view {
|
|
94
|
-
// uint256 len = params.length;
|
|
95
|
-
// for (uint256 i = 0; i < len; i++) {
|
|
96
|
-
// FillOrderParams memory param = params[i];
|
|
97
|
-
|
|
98
|
-
// (, uint256 remainingMakerAmount) = _verifyOrder(param.order);
|
|
99
|
-
// uint256 netMaking = PMath.min(param.makingAmount, remainingMakerAmount);
|
|
100
|
-
|
|
101
|
-
// param.makingAmount = netMaking;
|
|
102
|
-
// }
|
|
103
|
-
// }
|
|
104
|
-
|
|
105
|
-
// function _verifyOrder(Order memory order)
|
|
106
|
-
// internal
|
|
107
|
-
// view
|
|
108
|
-
// returns (bytes32, /*orderHash*/ uint256 /*remainingMakerAmount*/ )
|
|
109
|
-
// {
|
|
110
|
-
// bytes32 orderHash = limitRouter.hashOrder(order);
|
|
111
|
-
// uint256 remainingMakerAmount = limitRouter.remainingRaw(orderHash);
|
|
112
|
-
|
|
113
|
-
// if (remainingMakerAmount == _ORDER_FILLED) return (orderHash, 0);
|
|
114
|
-
|
|
115
|
-
// if (remainingMakerAmount == _ORDER_DOES_NOT_EXIST) {
|
|
116
|
-
// remainingMakerAmount = order.makingAmount;
|
|
117
|
-
// } else {
|
|
118
|
-
// unchecked {
|
|
119
|
-
// remainingMakerAmount -= 1;
|
|
120
|
-
// }
|
|
121
|
-
// }
|
|
122
|
-
|
|
123
|
-
// // Check if order is valid predicate wise
|
|
124
|
-
// if (order.predicate.length > 0) {
|
|
125
|
-
// bool isValidPredicate = limitRouter.checkPredicate(order);
|
|
126
|
-
// require(isValidPredicate, "LOP: predicate returned false");
|
|
127
|
-
// }
|
|
128
|
-
|
|
129
|
-
// return (orderHash, remainingMakerAmount);
|
|
130
|
-
// }
|
|
131
|
-
|
|
132
|
-
// function _mintSyStatic(FillOrderParams[] memory params, IStandardizedYield SY) internal view {
|
|
133
|
-
// uint256 len = params.length;
|
|
134
|
-
// for (uint256 i = 0; i < len; i++) {
|
|
135
|
-
// FillOrderParams memory param = params[i];
|
|
136
|
-
// if (param.makingAmount == 0) continue;
|
|
137
|
-
|
|
138
|
-
// Order memory order = param.order;
|
|
139
|
-
|
|
140
|
-
// if (order.token != address(SY)) {
|
|
141
|
-
// param.makingAmount = SY.previewDeposit(order.token, param.makingAmount);
|
|
142
|
-
// }
|
|
143
|
-
// }
|
|
144
|
-
// }
|
|
145
|
-
// }
|
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "../../../interfaces/IPMarket.sol";
|
|
5
|
-
import "../../../interfaces/IPRouterStatic.sol";
|
|
6
|
-
import "./StorageLayout.sol";
|
|
7
|
-
|
|
8
|
-
contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
|
|
9
|
-
using MarketMathCore for MarketState;
|
|
10
|
-
using PMath for int256;
|
|
11
|
-
using PMath for uint256;
|
|
12
|
-
using LogExpMath for int256;
|
|
13
|
-
using PYIndexLib for PYIndex;
|
|
14
|
-
using PYIndexLib for IPYieldToken;
|
|
15
|
-
|
|
16
|
-
function getMarketState(address market)
|
|
17
|
-
public
|
|
18
|
-
view
|
|
19
|
-
returns (
|
|
20
|
-
address pt,
|
|
21
|
-
address yt,
|
|
22
|
-
address sy,
|
|
23
|
-
int256 impliedYield,
|
|
24
|
-
uint256 marketExchangeRateExcludeFee,
|
|
25
|
-
MarketState memory state
|
|
26
|
-
)
|
|
27
|
-
{
|
|
28
|
-
(IStandardizedYield SY, IPPrincipalToken PT, IPYieldToken YT) = _readTokens(market);
|
|
29
|
-
pt = address(PT);
|
|
30
|
-
yt = address(YT);
|
|
31
|
-
sy = address(SY);
|
|
32
|
-
state = _readState(market);
|
|
33
|
-
impliedYield = _getPtImpliedYield(market);
|
|
34
|
-
marketExchangeRateExcludeFee = getTradeExchangeRateExcludeFee(market, state);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
function getTradeExchangeRateExcludeFee(address market, MarketState memory state) public view returns (uint256) {
|
|
38
|
-
if (IPMarket(market).isExpired()) return PMath.ONE;
|
|
39
|
-
|
|
40
|
-
MarketPreCompute memory comp = state.getMarketPreCompute(_pyIndex(market), block.timestamp);
|
|
41
|
-
int256 preFeeExchangeRate =
|
|
42
|
-
MarketMathCore._getExchangeRate(state.totalPt, comp.totalAsset, comp.rateScalar, comp.rateAnchor, 0);
|
|
43
|
-
return preFeeExchangeRate.Uint();
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
function getTradeExchangeRateIncludeFee(address market, int256 netPtOut) public view returns (uint256) {
|
|
47
|
-
if (IPMarket(market).isExpired()) return PMath.ONE;
|
|
48
|
-
|
|
49
|
-
int256 netPtToAccount = netPtOut;
|
|
50
|
-
MarketState memory state = _readState(market);
|
|
51
|
-
MarketPreCompute memory comp = state.getMarketPreCompute(_pyIndex(market), block.timestamp);
|
|
52
|
-
|
|
53
|
-
int256 preFeeExchangeRate = MarketMathCore._getExchangeRate(
|
|
54
|
-
state.totalPt, comp.totalAsset, comp.rateScalar, comp.rateAnchor, netPtToAccount
|
|
55
|
-
);
|
|
56
|
-
|
|
57
|
-
if (netPtToAccount > 0) {
|
|
58
|
-
int256 postFeeExchangeRate = preFeeExchangeRate.divDown(comp.feeRate);
|
|
59
|
-
if (postFeeExchangeRate < PMath.IONE) {
|
|
60
|
-
revert Errors.MarketExchangeRateBelowOne(postFeeExchangeRate);
|
|
61
|
-
}
|
|
62
|
-
return postFeeExchangeRate.Uint();
|
|
63
|
-
} else {
|
|
64
|
-
return preFeeExchangeRate.mulDown(comp.feeRate).Uint();
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
function calcPriceImpactPt(address market, int256 netPtOut) public view returns (uint256 priceImpact) {
|
|
69
|
-
uint256 preTradeRate = getTradeExchangeRateIncludeFee(market, _getSign(netPtOut));
|
|
70
|
-
uint256 tradedRate = getTradeExchangeRateIncludeFee(market, netPtOut);
|
|
71
|
-
priceImpact = _calculateImpact(preTradeRate, tradedRate);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
function calcPriceImpactYt(address market, int256 netPtOut) public view returns (uint256 priceImpact) {
|
|
75
|
-
uint256 ytPreTradeRate = _calcVirtualYTPrice(getTradeExchangeRateIncludeFee(market, _getSign(netPtOut)));
|
|
76
|
-
uint256 ytTradedRate = _calcVirtualYTPrice(getTradeExchangeRateIncludeFee(market, netPtOut));
|
|
77
|
-
priceImpact = _calculateImpact(ytPreTradeRate, ytTradedRate);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
function calcPriceImpactPY(address market, int256 netPtOut) public view returns (uint256 priceImpact) {
|
|
81
|
-
uint256 ptPreTradeRate = getTradeExchangeRateIncludeFee(market, _getSign(netPtOut));
|
|
82
|
-
uint256 ytPreTradeRate = _calcVirtualYTPrice(ptPreTradeRate);
|
|
83
|
-
uint256 ptTradeRate = getTradeExchangeRateIncludeFee(market, netPtOut);
|
|
84
|
-
uint256 ytTradeRate = _calcVirtualYTPrice(ptTradeRate);
|
|
85
|
-
|
|
86
|
-
uint256 pyPreTradeRate = ytPreTradeRate.divDown(ptPreTradeRate);
|
|
87
|
-
uint256 pyTradeRate = ytTradeRate.divDown(ptTradeRate);
|
|
88
|
-
priceImpact = _calculateImpact(pyPreTradeRate, pyTradeRate);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
function getLpToSyRate(address market) public view returns (uint256) {
|
|
92
|
-
(IStandardizedYield SY,,) = _readTokens(market);
|
|
93
|
-
return getLpToAssetRate(market).divDown(SY.exchangeRate());
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
function getPtToSyRate(address market) public view returns (uint256) {
|
|
97
|
-
(IStandardizedYield SY,,) = _readTokens(market);
|
|
98
|
-
return getPtToAssetRate(market).divDown(SY.exchangeRate());
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
function getLpToAssetRate(address market) public view returns (uint256) {
|
|
102
|
-
MarketState memory state = _readState(market);
|
|
103
|
-
PYIndex pyIndexCurrent = _pyIndex(market);
|
|
104
|
-
MarketPreCompute memory comp = state.getMarketPreCompute(pyIndexCurrent, block.timestamp);
|
|
105
|
-
|
|
106
|
-
int256 totalHypotheticalAsset =
|
|
107
|
-
comp.totalAsset + state.totalPt.mulDown(int256(_getPtToAssetRate(market, state, pyIndexCurrent)));
|
|
108
|
-
|
|
109
|
-
return uint256(totalHypotheticalAsset.divDown(state.totalLp));
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
function getPtToAssetRate(address market) public view returns (uint256) {
|
|
113
|
-
MarketState memory state = _readState(market);
|
|
114
|
-
return _getPtToAssetRate(market, state, _pyIndex(market));
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
function _getPtToAssetRate(address market, MarketState memory state, PYIndex pyIndexCurrent)
|
|
118
|
-
internal
|
|
119
|
-
view
|
|
120
|
-
returns (uint256 ptToAssetRate)
|
|
121
|
-
{
|
|
122
|
-
if (state.expiry <= block.timestamp) {
|
|
123
|
-
(IStandardizedYield SY,,) = _readTokens(market);
|
|
124
|
-
return (SY.exchangeRate().divDown(PYIndex.unwrap(pyIndexCurrent)));
|
|
125
|
-
}
|
|
126
|
-
uint256 timeToExpiry = state.expiry - block.timestamp;
|
|
127
|
-
int256 assetToPtRate = MarketMathCore._getExchangeRateFromImpliedRate(state.lastLnImpliedRate, timeToExpiry);
|
|
128
|
-
|
|
129
|
-
ptToAssetRate = uint256(PMath.IONE.divDown(assetToPtRate));
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
function _getPtImpliedYield(address market) internal view returns (int256) {
|
|
133
|
-
MarketState memory state = _readState(market);
|
|
134
|
-
|
|
135
|
-
int256 lnImpliedRate = (state.lastLnImpliedRate).Int();
|
|
136
|
-
return lnImpliedRate.exp();
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
function _calcVirtualYTPrice(uint256 ptAssetExchangeRate) private pure returns (uint256 ytAssetExchangeRate) {
|
|
140
|
-
// 1 asset = EX pt
|
|
141
|
-
// 1 pt = 1/EX Asset
|
|
142
|
-
// 1 yt + 1/EX Asset = 1 Asset
|
|
143
|
-
// 1 yt = 1 Asset - 1/EX Asset
|
|
144
|
-
// 1 yt = (EX - 1) / EX Asset
|
|
145
|
-
return (ptAssetExchangeRate - PMath.ONE).divDown(ptAssetExchangeRate);
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
function _readState(address market) internal view returns (MarketState memory) {
|
|
149
|
-
return IPMarket(market).readState(address(this));
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
function _readTokens(address market)
|
|
153
|
-
internal
|
|
154
|
-
view
|
|
155
|
-
returns (IStandardizedYield _SY, IPPrincipalToken _PT, IPYieldToken _YT)
|
|
156
|
-
{
|
|
157
|
-
return IPMarket(market).readTokens();
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
function _getSign(int256 netPtOut) private pure returns (int256) {
|
|
161
|
-
return netPtOut > 0 ? int256(1) : int256(-1);
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
function _calculateImpact(uint256 rateBefore, uint256 rateTraded) private pure returns (uint256 impact) {
|
|
165
|
-
impact = (rateBefore.Int() - rateTraded.Int()).abs().divDown(rateBefore);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
function _pyIndex(address market) private view returns (PYIndex) {
|
|
169
|
-
return PYIndex.wrap(IPRouterStatic(address(this)).pyIndexCurrentViewMarket(market));
|
|
170
|
-
}
|
|
171
|
-
}
|