@pendle/core-v2 3.0.0-beta-11 → 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/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 +19 -1
- 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/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 +51 -26
- package/contracts/interfaces/IPActionStorageStatic.sol +5 -1
- package/contracts/interfaces/IPAllActionTypeV3.sol +1 -0
- 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 +24 -19
- 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 +69 -60
- package/contracts/limit/{PendleOrderMixin.sol → LimitRouterBase.sol} +96 -79
- package/contracts/limit/PendleLimitRouter.sol +9 -13
- 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 +26 -14
- package/contracts/offchain-helpers/EmptyUUPS.sol +0 -1
- package/contracts/offchain-helpers/LegacyNFTHelper.sol +4 -23
- package/contracts/offchain-helpers/LimitBackendHelper.sol +25 -16
- 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 +6 -7
- 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/ActionCallbackV3.sol +11 -4
- package/contracts/router/ActionMiscV3.sol +43 -33
- package/contracts/router/ActionSwapPTV3.sol +18 -6
- package/contracts/router/ActionSwapYTV3.sol +42 -14
- package/contracts/router/PendleRouterHelper.sol +72 -40
- package/contracts/router/PendleRouterV3.sol +50 -50
- package/contracts/router/base/ActionBase.sol +86 -43
- 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 +5 -2
- 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/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/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,64 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "./StorageLayout.sol";
|
|
5
|
-
import "../../../interfaces/IPActionStorageStatic.sol";
|
|
6
|
-
import "../../../interfaces/IPMiniDiamond.sol";
|
|
7
|
-
|
|
8
|
-
contract ActionStorageStatic is StorageLayout, IPActionStorageStatic, IPMiniDiamond {
|
|
9
|
-
function setDefaultApproxParams(ApproxParams memory params) external onlyOwner {
|
|
10
|
-
defaultApproxParams = params;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
function getDefaultApproxParams() external view returns (ApproxParams memory) {
|
|
14
|
-
return defaultApproxParams;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
function getOwnerAndPendingOwner() external view returns (address _owner, address _pendingOwner) {
|
|
18
|
-
_owner = owner;
|
|
19
|
-
_pendingOwner = pendingOwner;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
function setFacetForSelectors(SelectorsToFacet[] calldata arr) external onlyOwner {
|
|
23
|
-
for (uint256 i = 0; i < arr.length;) {
|
|
24
|
-
SelectorsToFacet memory s = arr[i];
|
|
25
|
-
for (uint256 j = 0; j < s.selectors.length;) {
|
|
26
|
-
selectorToFacet[s.selectors[j]] = s.facet;
|
|
27
|
-
unchecked {
|
|
28
|
-
j++;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
unchecked {
|
|
32
|
-
i++;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
function facetAddress(bytes4 selector) external view returns (address res) {
|
|
38
|
-
res = selectorToFacet[selector];
|
|
39
|
-
require(res != address(0), "selector not found");
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
// Ownable
|
|
43
|
-
function transferOwnership(address newOwner, bool direct, bool renounce) external onlyOwner {
|
|
44
|
-
if (direct) {
|
|
45
|
-
require(newOwner != address(0) || renounce, "Ownable: zero address");
|
|
46
|
-
|
|
47
|
-
emit OwnershipTransferred(owner, newOwner);
|
|
48
|
-
owner = newOwner;
|
|
49
|
-
pendingOwner = address(0);
|
|
50
|
-
} else {
|
|
51
|
-
pendingOwner = newOwner;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
function claimOwnership() external {
|
|
56
|
-
address _pendingOwner = pendingOwner;
|
|
57
|
-
|
|
58
|
-
require(msg.sender == _pendingOwner, "Ownable: caller != pending owner");
|
|
59
|
-
|
|
60
|
-
emit OwnershipTransferred(owner, _pendingOwner);
|
|
61
|
-
owner = _pendingOwner;
|
|
62
|
-
pendingOwner = address(0);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "../../../core/libraries/MiniHelpers.sol";
|
|
5
|
-
import "../../../interfaces/IPRouterStatic.sol";
|
|
6
|
-
import "../../../interfaces/IPVotingEscrowMainchain.sol";
|
|
7
|
-
import "../../../LiquidityMining/libraries/VeBalanceLib.sol";
|
|
8
|
-
|
|
9
|
-
contract ActionVePendleStatic is IPActionVePendleStatic {
|
|
10
|
-
using VeBalanceLib for VeBalance;
|
|
11
|
-
using VeBalanceLib for LockedPosition;
|
|
12
|
-
|
|
13
|
-
uint128 private constant MAX_LOCK_TIME = 104 weeks;
|
|
14
|
-
uint128 private constant MIN_LOCK_TIME = 1 weeks;
|
|
15
|
-
|
|
16
|
-
IPVotingEscrowMainchain private immutable vePENDLE;
|
|
17
|
-
|
|
18
|
-
constructor(IPVotingEscrowMainchain _vePENDLE) {
|
|
19
|
-
vePENDLE = _vePENDLE;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
function increaseLockPositionStatic(address user, uint128 additionalAmountToLock, uint128 newExpiry)
|
|
23
|
-
external
|
|
24
|
-
view
|
|
25
|
-
returns (uint128 newVeBalance)
|
|
26
|
-
{
|
|
27
|
-
if (!WeekMath.isValidWTime(newExpiry)) revert Errors.InvalidWTime(newExpiry);
|
|
28
|
-
if (MiniHelpers.isTimeInThePast(newExpiry)) revert Errors.ExpiryInThePast(newExpiry);
|
|
29
|
-
|
|
30
|
-
if (newExpiry > block.timestamp + MAX_LOCK_TIME) revert Errors.VEExceededMaxLockTime();
|
|
31
|
-
if (newExpiry < block.timestamp + MIN_LOCK_TIME) revert Errors.VEInsufficientLockTime();
|
|
32
|
-
|
|
33
|
-
LockedPosition memory oldPosition;
|
|
34
|
-
|
|
35
|
-
{
|
|
36
|
-
(uint128 amount, uint128 expiry) = vePENDLE.positionData(user);
|
|
37
|
-
oldPosition = LockedPosition(amount, expiry);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
if (newExpiry < oldPosition.expiry) revert Errors.VENotAllowedReduceExpiry();
|
|
41
|
-
|
|
42
|
-
uint128 newTotalAmountLocked = additionalAmountToLock + oldPosition.amount;
|
|
43
|
-
if (newTotalAmountLocked == 0) revert Errors.VEZeroAmountLocked();
|
|
44
|
-
|
|
45
|
-
uint128 additionalDurationToLock = newExpiry - oldPosition.expiry;
|
|
46
|
-
|
|
47
|
-
LockedPosition memory newPosition =
|
|
48
|
-
LockedPosition(oldPosition.amount + additionalAmountToLock, oldPosition.expiry + additionalDurationToLock);
|
|
49
|
-
|
|
50
|
-
VeBalance memory newBalance = newPosition.convertToVeBalance();
|
|
51
|
-
return newBalance.getCurrentValue();
|
|
52
|
-
}
|
|
53
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
-
pragma solidity ^0.8.17;
|
|
3
|
-
|
|
4
|
-
import "../../../router/base/MarketApproxLib.sol";
|
|
5
|
-
|
|
6
|
-
abstract contract StorageLayout {
|
|
7
|
-
address internal owner;
|
|
8
|
-
address internal pendingOwner;
|
|
9
|
-
|
|
10
|
-
mapping(bytes4 => address) internal selectorToFacet;
|
|
11
|
-
|
|
12
|
-
ApproxParams internal defaultApproxParams;
|
|
13
|
-
|
|
14
|
-
modifier onlyOwner() {
|
|
15
|
-
require(msg.sender == owner, "Ownable: caller is not the owner");
|
|
16
|
-
_;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
@@ -1,231 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
pragma solidity ^0.8.0;
|
|
3
|
-
|
|
4
|
-
interface IExecutorHelper {
|
|
5
|
-
struct Swap {
|
|
6
|
-
bytes data;
|
|
7
|
-
bytes4 functionSelector;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
struct SwapExecutorDescription {
|
|
11
|
-
Swap[][] swapSequences;
|
|
12
|
-
address tokenIn;
|
|
13
|
-
address tokenOut;
|
|
14
|
-
uint256 minTotalAmountOut;
|
|
15
|
-
address to;
|
|
16
|
-
uint256 deadline;
|
|
17
|
-
bytes destTokenFeeData;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
struct UniSwap {
|
|
21
|
-
address pool;
|
|
22
|
-
address tokenIn;
|
|
23
|
-
address tokenOut;
|
|
24
|
-
address recipient;
|
|
25
|
-
uint256 collectAmount; // amount that should be transferred to the pool
|
|
26
|
-
uint32 swapFee;
|
|
27
|
-
uint32 feePrecision;
|
|
28
|
-
uint32 tokenWeightInput;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
struct StableSwap {
|
|
32
|
-
address pool;
|
|
33
|
-
address tokenFrom;
|
|
34
|
-
address tokenTo;
|
|
35
|
-
uint8 tokenIndexFrom;
|
|
36
|
-
uint8 tokenIndexTo;
|
|
37
|
-
uint256 dx;
|
|
38
|
-
uint256 poolLength;
|
|
39
|
-
address poolLp;
|
|
40
|
-
bool isSaddle; // true: saddle, false: stable
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
struct CurveSwap {
|
|
44
|
-
address pool;
|
|
45
|
-
address tokenFrom;
|
|
46
|
-
address tokenTo;
|
|
47
|
-
int128 tokenIndexFrom;
|
|
48
|
-
int128 tokenIndexTo;
|
|
49
|
-
uint256 dx;
|
|
50
|
-
bool usePoolUnderlying;
|
|
51
|
-
bool useTriCrypto;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
struct UniswapV3KSElastic {
|
|
55
|
-
address recipient;
|
|
56
|
-
address pool;
|
|
57
|
-
address tokenIn;
|
|
58
|
-
address tokenOut;
|
|
59
|
-
uint256 swapAmount;
|
|
60
|
-
uint160 sqrtPriceLimitX96;
|
|
61
|
-
bool isUniV3; // true = UniV3, false = KSElastic
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
struct BalancerV2 {
|
|
65
|
-
address vault;
|
|
66
|
-
bytes32 poolId;
|
|
67
|
-
address assetIn;
|
|
68
|
-
address assetOut;
|
|
69
|
-
uint256 amount;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
struct DODO {
|
|
73
|
-
address recipient;
|
|
74
|
-
address pool;
|
|
75
|
-
address tokenFrom;
|
|
76
|
-
address tokenTo;
|
|
77
|
-
uint256 amount;
|
|
78
|
-
address sellHelper;
|
|
79
|
-
bool isSellBase;
|
|
80
|
-
bool isVersion2;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
struct GMX {
|
|
84
|
-
address vault;
|
|
85
|
-
address tokenIn;
|
|
86
|
-
address tokenOut;
|
|
87
|
-
uint256 amount;
|
|
88
|
-
address receiver;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
struct Synthetix {
|
|
92
|
-
address synthetixProxy;
|
|
93
|
-
address tokenIn;
|
|
94
|
-
address tokenOut;
|
|
95
|
-
bytes32 sourceCurrencyKey;
|
|
96
|
-
uint256 sourceAmount;
|
|
97
|
-
bytes32 destinationCurrencyKey;
|
|
98
|
-
bool useAtomicExchange;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
struct Platypus {
|
|
102
|
-
address pool;
|
|
103
|
-
address tokenIn;
|
|
104
|
-
address tokenOut;
|
|
105
|
-
address recipient;
|
|
106
|
-
uint256 collectAmount; // amount that should be transferred to the pool
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
struct PSM {
|
|
110
|
-
address router;
|
|
111
|
-
address tokenIn;
|
|
112
|
-
address tokenOut;
|
|
113
|
-
uint256 amountIn;
|
|
114
|
-
address recipient;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
struct WSTETH {
|
|
118
|
-
address pool;
|
|
119
|
-
uint256 amount;
|
|
120
|
-
bool isWrapping;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
struct Maverick {
|
|
124
|
-
address pool;
|
|
125
|
-
address tokenIn;
|
|
126
|
-
address tokenOut;
|
|
127
|
-
address recipient;
|
|
128
|
-
uint256 swapAmount;
|
|
129
|
-
uint256 sqrtPriceLimitD18;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
function executeUniswap(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
133
|
-
external
|
|
134
|
-
payable
|
|
135
|
-
returns (uint256);
|
|
136
|
-
|
|
137
|
-
function executeStableSwap(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
138
|
-
external
|
|
139
|
-
payable
|
|
140
|
-
returns (uint256);
|
|
141
|
-
|
|
142
|
-
function executeCurve(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
143
|
-
external
|
|
144
|
-
payable
|
|
145
|
-
returns (uint256);
|
|
146
|
-
|
|
147
|
-
function executeKSClassic(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
148
|
-
external
|
|
149
|
-
payable
|
|
150
|
-
returns (uint256);
|
|
151
|
-
|
|
152
|
-
function executeUniV3KSElastic(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
153
|
-
external
|
|
154
|
-
payable
|
|
155
|
-
returns (uint256);
|
|
156
|
-
|
|
157
|
-
function executeRfq(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
158
|
-
external
|
|
159
|
-
payable
|
|
160
|
-
returns (uint256);
|
|
161
|
-
|
|
162
|
-
function executeBalV2(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
163
|
-
external
|
|
164
|
-
payable
|
|
165
|
-
returns (uint256);
|
|
166
|
-
|
|
167
|
-
function executeDODO(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
168
|
-
external
|
|
169
|
-
payable
|
|
170
|
-
returns (uint256);
|
|
171
|
-
|
|
172
|
-
function executeVelodrome(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
173
|
-
external
|
|
174
|
-
payable
|
|
175
|
-
returns (uint256);
|
|
176
|
-
|
|
177
|
-
function executeGMX(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
178
|
-
external
|
|
179
|
-
payable
|
|
180
|
-
returns (uint256);
|
|
181
|
-
|
|
182
|
-
function executePlatypus(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
183
|
-
external
|
|
184
|
-
payable
|
|
185
|
-
returns (uint256);
|
|
186
|
-
|
|
187
|
-
function executeWrappedstETH(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
188
|
-
external
|
|
189
|
-
payable
|
|
190
|
-
returns (uint256);
|
|
191
|
-
|
|
192
|
-
function executeStEth(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
193
|
-
external
|
|
194
|
-
payable
|
|
195
|
-
returns (uint256);
|
|
196
|
-
|
|
197
|
-
function executeSynthetix(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
198
|
-
external
|
|
199
|
-
payable
|
|
200
|
-
returns (uint256);
|
|
201
|
-
|
|
202
|
-
function executeHashflow(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
203
|
-
external
|
|
204
|
-
payable
|
|
205
|
-
returns (uint256);
|
|
206
|
-
|
|
207
|
-
function executePSM(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
208
|
-
external
|
|
209
|
-
payable
|
|
210
|
-
returns (uint256);
|
|
211
|
-
|
|
212
|
-
function executeFrax(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
213
|
-
external
|
|
214
|
-
payable
|
|
215
|
-
returns (uint256);
|
|
216
|
-
|
|
217
|
-
function executeCamelot(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
218
|
-
external
|
|
219
|
-
payable
|
|
220
|
-
returns (uint256);
|
|
221
|
-
|
|
222
|
-
function executeKyberLimitOrder(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
223
|
-
external
|
|
224
|
-
payable
|
|
225
|
-
returns (uint256);
|
|
226
|
-
|
|
227
|
-
function executeMaverick(bytes memory data, uint256 flagsAndPrevAmountOut)
|
|
228
|
-
external
|
|
229
|
-
payable
|
|
230
|
-
returns (uint256);
|
|
231
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"SY": "0xFb087F3Da58e59f4707f2E38e98B44F194468ccD",
|
|
3
|
-
"YT": "0xbf3aDc8976917574dd8FC3363884167F58F9AD79",
|
|
4
|
-
"PT": "0x046ffBC0458a409Fe5b7e3053bDbEd8a98681bC8",
|
|
5
|
-
"market": "0xb089C87F41BF37afdD71280660ffED15E3162fF8",
|
|
6
|
-
"scalarRoot": 43700151949000000000,
|
|
7
|
-
"initialAnchor": 1056065157000000000
|
|
8
|
-
}
|
|
File without changes
|
|
File without changes
|