@pendle/core-v2 5.8.3-factory → 5.8.4-beta
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/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.json +21 -2
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -2
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -2
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -2
- package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
- package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
- package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
- package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/OKXScaleHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/IAugustusV6.dbg.json +4 -0
- package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/IAugustusV6.json +577 -0
- package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/ParaswapScaleHelper.dbg.json +4 -0
- package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/ParaswapScaleHelper.json +10 -0
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +191 -2
- package/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol +2 -0
- package/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol +1 -5
- package/contracts/router/swap-aggregator/IPSwapAggregator.sol +1 -1
- package/contracts/router/swap-aggregator/OKXScaleHelper.sol +13 -10
- package/contracts/router/swap-aggregator/ParaswapScaleHelper.sol +252 -0
- package/contracts/router/swap-aggregator/PendleSwap.sol +25 -5
- package/deployments/1-core.json +2 -2
- package/deployments/10-core.json +2 -2
- package/deployments/146-core.json +9 -10
- package/deployments/42161-core.json +3 -3
- package/deployments/5000-core.json +2 -2
- package/deployments/56-core.json +2 -2
- package/deployments/80094-core.json +2 -2
- package/deployments/8453-core.json +2 -2
- package/package.json +1 -1
- package/typechain-types/PendleCommonSYFactory.ts +31 -0
- package/typechain-types/PendleSwap.ts +280 -0
- package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
- package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMiscV3__factory.ts +1 -1
- package/typechain-types/factories/ActionSimple__factory.ts +1 -1
- package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionStorageV4__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
- package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
- package/typechain-types/factories/PendleCommonPoolDeployHelperV2__factory.ts +1 -1
- package/typechain-types/factories/PendleCommonSYFactory__factory.ts +20 -1
- package/typechain-types/factories/PendlePoolDeployHelperV2__factory.ts +1 -1
- package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterV4__factory.ts +1 -1
- package/typechain-types/factories/PendleSwap__factory.ts +190 -1
- package/typechain-types/factories/Reflector__factory.ts +1 -1
- package/typechain-types/hardhat.d.ts +0 -18
- package/typechain-types/index.ts +0 -4
- package/build/artifacts/contracts/interfaces/IPMarketSwapNSeed.sol/IPMarketSwapNSeed.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPMarketSwapNSeed.sol/IPMarketSwapNSeed.json +0 -10
- package/build/artifacts/contracts/offchain-helpers/SwapNSeed.sol/MarketSwapNSeed.dbg.json +0 -4
- package/build/artifacts/contracts/offchain-helpers/SwapNSeed.sol/MarketSwapNSeed.json +0 -232
- package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchAggregationRouterV6.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchAggregationRouterV6.json +0 -214
- package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchCommonType.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchCommonType.json +0 -10
- package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/OneInchScaleHelper.dbg.json +0 -4
- package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/OneInchScaleHelper.json +0 -10
- package/contracts/interfaces/IPMarketSwapNSeed.sol +0 -10
- package/contracts/offchain-helpers/SwapNSeed.sol +0 -221
- package/contracts/router/swap-aggregator/OneInchScaleHelper.sol +0 -120
- package/deployments/merkle-distribution/2023-04-27.json +0 -3342
- package/deployments/merkle-distribution/2023-05-25.json +0 -3749
- package/deployments/merkle-distribution/2023-06-29.json +0 -4729
- package/deployments/merkle-distribution/2023-07-27.json +0 -5525
- package/deployments/merkle-distribution/2023-08-31.json +0 -6135
- package/deployments/merkle-distribution/2023-09-28.json +0 -6770
- package/deployments/merkle-distribution/2023-10-26.json +0 -7300
- package/deployments/merkle-distribution/2023-11-30.json +0 -7730
- package/deployments/merkle-distribution/2023-12-28.json +0 -8225
- package/deployments/merkle-distribution/2024-01-25.json +0 -9615
- package/deployments/merkle-distribution/2024-02-29.json +0 -12125
- package/deployments/merkle-distribution/2024-03-28.json +0 -12725
- package/deployments/merkle-distribution/2024-04-25.json +0 -14930
- package/deployments/merkle-distribution/2024-05-30.json +0 -17255
- package/deployments/merkle-distribution/2024-06-27.json +0 -18995
- package/deployments/merkle-distribution/2024-07-25.json +0 -20365
- package/deployments/merkle-distribution/2024-08-29.json +0 -21525
- package/deployments/merkle-distribution/2024-09-26-retroactive.json +0 -21525
- package/deployments/merkle-distribution/2024-09-26.json +0 -22340
- package/deployments/merkle-distribution/2024-10-31.json +0 -23370
- package/deployments/merkle-distribution/2024-11-28.json +0 -24040
- package/deployments/merkle-distribution/2024-12-26.json +0 -25555
- package/deployments/merkle-distribution/2024-12-31-snapshot.json +0 -65767
- package/deployments/merkle-distribution/2025-01-30.json +0 -28060
- package/deployments/merkle-distribution/2025-02-27.json +0 -29930
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
|
|
3
|
+
pragma solidity ^0.8.17;
|
|
4
|
+
|
|
5
|
+
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
|
|
6
|
+
|
|
7
|
+
interface IAugustusV6 {
|
|
8
|
+
// ============ Generic Swap ============
|
|
9
|
+
struct GenericData {
|
|
10
|
+
IERC20 srcToken;
|
|
11
|
+
IERC20 destToken;
|
|
12
|
+
uint256 fromAmount;
|
|
13
|
+
uint256 toAmount;
|
|
14
|
+
uint256 quotedAmount;
|
|
15
|
+
bytes32 metadata;
|
|
16
|
+
address payable beneficiary;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function swapExactAmountIn(
|
|
20
|
+
address executor,
|
|
21
|
+
GenericData calldata swapData,
|
|
22
|
+
uint256 partnerAndFee,
|
|
23
|
+
bytes calldata permit,
|
|
24
|
+
bytes calldata executorData
|
|
25
|
+
) external payable;
|
|
26
|
+
|
|
27
|
+
// ============ UniswapV2 Swap ============
|
|
28
|
+
struct UniswapV2Data {
|
|
29
|
+
IERC20 srcToken;
|
|
30
|
+
IERC20 destToken;
|
|
31
|
+
uint256 fromAmount;
|
|
32
|
+
uint256 toAmount;
|
|
33
|
+
uint256 quotedAmount;
|
|
34
|
+
bytes32 metadata;
|
|
35
|
+
address payable beneficiary;
|
|
36
|
+
bytes pools;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function swapExactAmountInOnUniswapV2(
|
|
40
|
+
UniswapV2Data calldata uniData,
|
|
41
|
+
uint256 partnerAndFee,
|
|
42
|
+
bytes calldata permit
|
|
43
|
+
) external payable returns (uint256 receivedAmount, uint256 paraswapShare, uint256 partnerShare);
|
|
44
|
+
|
|
45
|
+
// ============ UniswapV3 Swap ============
|
|
46
|
+
struct UniswapV3Data {
|
|
47
|
+
IERC20 srcToken;
|
|
48
|
+
IERC20 destToken;
|
|
49
|
+
uint256 fromAmount;
|
|
50
|
+
uint256 toAmount;
|
|
51
|
+
uint256 quotedAmount;
|
|
52
|
+
bytes32 metadata;
|
|
53
|
+
address payable beneficiary;
|
|
54
|
+
bytes pools;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
function swapExactAmountInOnUniswapV3(
|
|
58
|
+
UniswapV3Data calldata uniData,
|
|
59
|
+
uint256 partnerAndFee,
|
|
60
|
+
bytes calldata permit
|
|
61
|
+
) external payable returns (uint256 receivedAmount, uint256 paraswapShare, uint256 partnerShare);
|
|
62
|
+
|
|
63
|
+
// ============ BalancerV2 Swap ============
|
|
64
|
+
struct BalancerV2Data {
|
|
65
|
+
uint256 fromAmount;
|
|
66
|
+
uint256 toAmount;
|
|
67
|
+
uint256 quotedAmount;
|
|
68
|
+
bytes32 metadata;
|
|
69
|
+
uint256 beneficiaryAndApproveFlag;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function swapExactAmountInOnBalancerV2(
|
|
73
|
+
BalancerV2Data calldata balancerData,
|
|
74
|
+
uint256 partnerAndFee,
|
|
75
|
+
bytes calldata permit,
|
|
76
|
+
bytes calldata data
|
|
77
|
+
) external payable returns (uint256 receivedAmount, uint256 paraswapShare, uint256 partnerShare);
|
|
78
|
+
|
|
79
|
+
// ============ CurveV1 Swap ============
|
|
80
|
+
struct CurveV1Data {
|
|
81
|
+
uint256 curveData;
|
|
82
|
+
uint256 curveAssets;
|
|
83
|
+
IERC20 srcToken;
|
|
84
|
+
IERC20 destToken;
|
|
85
|
+
uint256 fromAmount;
|
|
86
|
+
uint256 toAmount;
|
|
87
|
+
uint256 quotedAmount;
|
|
88
|
+
bytes32 metadata;
|
|
89
|
+
address payable beneficiary;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
function swapExactAmountInOnCurveV1(
|
|
93
|
+
CurveV1Data calldata curveV1Data,
|
|
94
|
+
uint256 partnerAndFee,
|
|
95
|
+
bytes calldata permit
|
|
96
|
+
) external payable returns (uint256 receivedAmount, uint256 paraswapShare, uint256 partnerShare);
|
|
97
|
+
|
|
98
|
+
// ============ CurveV2 Swap ============
|
|
99
|
+
struct CurveV2Data {
|
|
100
|
+
uint256 curveData;
|
|
101
|
+
uint256 i;
|
|
102
|
+
uint256 j;
|
|
103
|
+
address poolAddress;
|
|
104
|
+
IERC20 srcToken;
|
|
105
|
+
IERC20 destToken;
|
|
106
|
+
uint256 fromAmount;
|
|
107
|
+
uint256 toAmount;
|
|
108
|
+
uint256 quotedAmount;
|
|
109
|
+
bytes32 metadata;
|
|
110
|
+
address payable beneficiary;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
function swapExactAmountInOnCurveV2(
|
|
114
|
+
CurveV2Data calldata curveV2Data,
|
|
115
|
+
uint256 partnerAndFee,
|
|
116
|
+
bytes calldata permit
|
|
117
|
+
) external payable returns (uint256 receivedAmount, uint256 paraswapShare, uint256 partnerShare);
|
|
118
|
+
|
|
119
|
+
// ============ MakerPSM Swap ============
|
|
120
|
+
struct MakerPSMData {
|
|
121
|
+
IERC20 srcToken;
|
|
122
|
+
IERC20 destToken;
|
|
123
|
+
uint256 fromAmount;
|
|
124
|
+
uint256 toAmount;
|
|
125
|
+
uint256 toll;
|
|
126
|
+
uint256 to18ConversionFactor;
|
|
127
|
+
address exchange;
|
|
128
|
+
address gemJoinAddress;
|
|
129
|
+
bytes32 metadata;
|
|
130
|
+
uint256 beneficiaryDirectionApproveFlag;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
function swapExactAmountInOutOnMakerPSM(
|
|
134
|
+
MakerPSMData calldata makerPSMData,
|
|
135
|
+
bytes calldata permit
|
|
136
|
+
) external returns (uint256 spentAmount, uint256 receivedAmount);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
contract ParaswapScaleHelper {
|
|
140
|
+
function _paraswapScaling(
|
|
141
|
+
bytes calldata rawCallData,
|
|
142
|
+
uint256 amountIn
|
|
143
|
+
) internal pure returns (bytes memory scaledCallData) {
|
|
144
|
+
bytes4 selector = bytes4(rawCallData[:4]);
|
|
145
|
+
bytes calldata dataToDecode = rawCallData[4:];
|
|
146
|
+
|
|
147
|
+
// Handle Generic Swap
|
|
148
|
+
if (selector == IAugustusV6.swapExactAmountIn.selector) {
|
|
149
|
+
(
|
|
150
|
+
address executor,
|
|
151
|
+
IAugustusV6.GenericData memory swapData,
|
|
152
|
+
uint256 partnerAndFee,
|
|
153
|
+
bytes memory permit,
|
|
154
|
+
bytes memory executorData
|
|
155
|
+
) = abi.decode(dataToDecode, (address, IAugustusV6.GenericData, uint256, bytes, bytes));
|
|
156
|
+
|
|
157
|
+
// Direct scaling calculation
|
|
158
|
+
swapData.toAmount = (swapData.toAmount * amountIn) / swapData.fromAmount;
|
|
159
|
+
swapData.quotedAmount = (swapData.quotedAmount * amountIn) / swapData.fromAmount;
|
|
160
|
+
swapData.fromAmount = amountIn;
|
|
161
|
+
|
|
162
|
+
return abi.encodeWithSelector(selector, executor, swapData, partnerAndFee, permit, executorData);
|
|
163
|
+
}
|
|
164
|
+
// Handle UniswapV2
|
|
165
|
+
else if (selector == IAugustusV6.swapExactAmountInOnUniswapV2.selector) {
|
|
166
|
+
(IAugustusV6.UniswapV2Data memory uniData, uint256 partnerAndFee, bytes memory permit) = abi.decode(
|
|
167
|
+
dataToDecode,
|
|
168
|
+
(IAugustusV6.UniswapV2Data, uint256, bytes)
|
|
169
|
+
);
|
|
170
|
+
|
|
171
|
+
// Direct scaling calculation
|
|
172
|
+
uniData.toAmount = (uniData.toAmount * amountIn) / uniData.fromAmount;
|
|
173
|
+
uniData.quotedAmount = (uniData.quotedAmount * amountIn) / uniData.fromAmount;
|
|
174
|
+
uniData.fromAmount = amountIn;
|
|
175
|
+
|
|
176
|
+
return abi.encodeWithSelector(selector, uniData, partnerAndFee, permit);
|
|
177
|
+
}
|
|
178
|
+
// Handle UniswapV3
|
|
179
|
+
else if (selector == IAugustusV6.swapExactAmountInOnUniswapV3.selector) {
|
|
180
|
+
(IAugustusV6.UniswapV3Data memory uniV3Data, uint256 partnerAndFee, bytes memory permit) = abi.decode(
|
|
181
|
+
dataToDecode,
|
|
182
|
+
(IAugustusV6.UniswapV3Data, uint256, bytes)
|
|
183
|
+
);
|
|
184
|
+
|
|
185
|
+
// Direct scaling calculation
|
|
186
|
+
uniV3Data.toAmount = (uniV3Data.toAmount * amountIn) / uniV3Data.fromAmount;
|
|
187
|
+
uniV3Data.quotedAmount = (uniV3Data.quotedAmount * amountIn) / uniV3Data.fromAmount;
|
|
188
|
+
uniV3Data.fromAmount = amountIn;
|
|
189
|
+
|
|
190
|
+
return abi.encodeWithSelector(selector, uniV3Data, partnerAndFee, permit);
|
|
191
|
+
}
|
|
192
|
+
// Handle BalancerV2
|
|
193
|
+
else if (selector == IAugustusV6.swapExactAmountInOnBalancerV2.selector) {
|
|
194
|
+
(
|
|
195
|
+
IAugustusV6.BalancerV2Data memory balancerData,
|
|
196
|
+
uint256 partnerAndFee,
|
|
197
|
+
bytes memory permit,
|
|
198
|
+
bytes memory data
|
|
199
|
+
) = abi.decode(dataToDecode, (IAugustusV6.BalancerV2Data, uint256, bytes, bytes));
|
|
200
|
+
|
|
201
|
+
// Direct scaling calculation
|
|
202
|
+
balancerData.toAmount = (balancerData.toAmount * amountIn) / balancerData.fromAmount;
|
|
203
|
+
balancerData.quotedAmount = (balancerData.quotedAmount * amountIn) / balancerData.fromAmount;
|
|
204
|
+
balancerData.fromAmount = amountIn;
|
|
205
|
+
|
|
206
|
+
return abi.encodeWithSelector(selector, balancerData, partnerAndFee, permit, data);
|
|
207
|
+
}
|
|
208
|
+
// Handle CurveV1
|
|
209
|
+
else if (selector == IAugustusV6.swapExactAmountInOnCurveV1.selector) {
|
|
210
|
+
(IAugustusV6.CurveV1Data memory curveV1Data, uint256 partnerAndFee, bytes memory permit) = abi.decode(
|
|
211
|
+
dataToDecode,
|
|
212
|
+
(IAugustusV6.CurveV1Data, uint256, bytes)
|
|
213
|
+
);
|
|
214
|
+
|
|
215
|
+
// Direct scaling calculation
|
|
216
|
+
curveV1Data.toAmount = (curveV1Data.toAmount * amountIn) / curveV1Data.fromAmount;
|
|
217
|
+
curveV1Data.quotedAmount = (curveV1Data.quotedAmount * amountIn) / curveV1Data.fromAmount;
|
|
218
|
+
curveV1Data.fromAmount = amountIn;
|
|
219
|
+
|
|
220
|
+
return abi.encodeWithSelector(selector, curveV1Data, partnerAndFee, permit);
|
|
221
|
+
}
|
|
222
|
+
// Handle CurveV2
|
|
223
|
+
else if (selector == IAugustusV6.swapExactAmountInOnCurveV2.selector) {
|
|
224
|
+
(IAugustusV6.CurveV2Data memory curveV2Data, uint256 partnerAndFee, bytes memory permit) = abi.decode(
|
|
225
|
+
dataToDecode,
|
|
226
|
+
(IAugustusV6.CurveV2Data, uint256, bytes)
|
|
227
|
+
);
|
|
228
|
+
|
|
229
|
+
// Direct scaling calculation
|
|
230
|
+
curveV2Data.toAmount = (curveV2Data.toAmount * amountIn) / curveV2Data.fromAmount;
|
|
231
|
+
curveV2Data.quotedAmount = (curveV2Data.quotedAmount * amountIn) / curveV2Data.fromAmount;
|
|
232
|
+
curveV2Data.fromAmount = amountIn;
|
|
233
|
+
|
|
234
|
+
return abi.encodeWithSelector(selector, curveV2Data, partnerAndFee, permit);
|
|
235
|
+
}
|
|
236
|
+
// Handle MakerPSM
|
|
237
|
+
else if (selector == IAugustusV6.swapExactAmountInOutOnMakerPSM.selector) {
|
|
238
|
+
(IAugustusV6.MakerPSMData memory makerPSMData, bytes memory permit) = abi.decode(
|
|
239
|
+
dataToDecode,
|
|
240
|
+
(IAugustusV6.MakerPSMData, bytes)
|
|
241
|
+
);
|
|
242
|
+
|
|
243
|
+
// Direct scaling calculation
|
|
244
|
+
makerPSMData.toAmount = (makerPSMData.toAmount * amountIn) / makerPSMData.fromAmount;
|
|
245
|
+
makerPSMData.fromAmount = amountIn;
|
|
246
|
+
|
|
247
|
+
return abi.encodeWithSelector(selector, makerPSMData, permit);
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
revert("ParaswapScaleHelper: Unsupported swap selector");
|
|
251
|
+
}
|
|
252
|
+
}
|
|
@@ -5,14 +5,32 @@ import "../../core/libraries/TokenHelper.sol";
|
|
|
5
5
|
import "./IPSwapAggregator.sol";
|
|
6
6
|
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
|
|
7
7
|
import "./OKXScaleHelper.sol";
|
|
8
|
-
import "./
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
import "./ParaswapScaleHelper.sol";
|
|
9
|
+
|
|
10
|
+
import "../../core/libraries/BoringOwnableUpgradeable.sol";
|
|
11
|
+
import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
|
|
12
|
+
|
|
13
|
+
contract PendleSwap is
|
|
14
|
+
IPSwapAggregator,
|
|
15
|
+
TokenHelper,
|
|
16
|
+
OKXScaleHelper,
|
|
17
|
+
ParaswapScaleHelper,
|
|
18
|
+
BoringOwnableUpgradeable,
|
|
19
|
+
UUPSUpgradeable
|
|
20
|
+
{
|
|
11
21
|
using Address for address;
|
|
12
22
|
using SafeERC20 for IERC20;
|
|
13
23
|
|
|
14
24
|
address private constant KYBER_SCALING_HELPER = 0x2f577A41BeC1BE1152AeEA12e73b7391d15f655D;
|
|
15
25
|
|
|
26
|
+
constructor() {
|
|
27
|
+
_disableInitializers();
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function initialize() external initializer {
|
|
31
|
+
__BoringOwnable_init();
|
|
32
|
+
}
|
|
33
|
+
|
|
16
34
|
function swap(address tokenIn, uint256 amountIn, SwapData calldata data) external payable {
|
|
17
35
|
_approveForExtRouter(tokenIn, data);
|
|
18
36
|
data.extRouter.functionCallWithValue(
|
|
@@ -54,10 +72,10 @@ contract PendleSwap is IPSwapAggregator, TokenHelper, OKXScaleHelper, OneInchSca
|
|
|
54
72
|
require(isSuccess, "PendleSwap: Kyber scaling failed");
|
|
55
73
|
} else if (swapType == SwapType.ODOS) {
|
|
56
74
|
scaledCallData = _odosScaling(rawCallData, amountIn);
|
|
75
|
+
} else if (swapType == SwapType.PARASWAP) {
|
|
76
|
+
scaledCallData = _paraswapScaling(rawCallData, amountIn);
|
|
57
77
|
} else if (swapType == SwapType.OKX) {
|
|
58
78
|
scaledCallData = _okxScaling(rawCallData, amountIn);
|
|
59
|
-
} else if (swapType == SwapType.ONE_INCH) {
|
|
60
|
-
scaledCallData = _oneInchScaling(rawCallData, amountIn);
|
|
61
79
|
} else {
|
|
62
80
|
assert(false);
|
|
63
81
|
}
|
|
@@ -86,6 +104,8 @@ contract PendleSwap is IPSwapAggregator, TokenHelper, OKXScaleHelper, OneInchSca
|
|
|
86
104
|
}
|
|
87
105
|
|
|
88
106
|
receive() external payable {}
|
|
107
|
+
|
|
108
|
+
function _authorizeUpgrade(address) internal virtual override onlyOwner {}
|
|
89
109
|
}
|
|
90
110
|
|
|
91
111
|
interface IKyberScalingHelper {
|
package/deployments/1-core.json
CHANGED
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"ActionStorageV4": "0x6a0Ed0A9193FCBe7ae9B0F3D90F88e365Cca64fC"
|
|
33
33
|
},
|
|
34
34
|
"routerStatic": "0x263833d47eA3fA4a30f269323aba6a107f9eB14C",
|
|
35
|
-
"pendleSwap": "
|
|
35
|
+
"pendleSwap": "0xFE6228A3866426e96611ED7A3D0Dee918244fcB3",
|
|
36
36
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
37
37
|
"yieldContractFactoryV3": "0xdF3601014686674e53d1Fa52F7602525483F9122",
|
|
38
38
|
"marketFactoryV3": "0x1A6fCc85557BC4fB7B534ed835a03EF056552D52",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"poolDeployHelperV2": "0xF642d8Daa026B8aEd6dFE82FACbA2E077AF199E2",
|
|
45
45
|
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
46
46
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
47
|
-
"reflector": "
|
|
47
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
48
48
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
49
49
|
"syFactory": "0x466CeD3b33045Ea986B2f306C8D0aA8067961CF8",
|
|
50
50
|
"sparkLinearDiscountOracleFactory": "0x34C91651A070664279866E5f3d6B4d5F65cbbFFb",
|
package/deployments/10-core.json
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"ActionStorageV4": "0x6a0Ed0A9193FCBe7ae9B0F3D90F88e365Cca64fC"
|
|
32
32
|
},
|
|
33
33
|
"routerStatic": "0x704478Dd72FD7F9B83d1F1e0fc18C14B54F034d0",
|
|
34
|
-
"pendleSwap": "
|
|
34
|
+
"pendleSwap": "0xd4e9B0d466789d7F6201442eecCBA6a75A552db0",
|
|
35
35
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
36
36
|
"yieldContractFactoryV3": "0xfa6B22FC4c3Ad88B68c16b3061a16b1714F6Bd57",
|
|
37
37
|
"marketFactoryV3": "0x4A2B38b9cBd83c86F261a4d64c243795D4d44aBC",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"poolDeployHelper": "0x439B4d66255eFf74e621FBacb00D7162b588Ff4b",
|
|
43
43
|
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
44
44
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
45
|
-
"reflector": "
|
|
45
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
46
46
|
"vePendleAirdropDistributor": "0x3942F7B55094250644cFfDa7160226Caa349A38E",
|
|
47
47
|
"externalRewardsDistributor": "0xae898a7d07f8e27f25e13d0f351a7401f9a5bf9d",
|
|
48
48
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
@@ -28,24 +28,23 @@
|
|
|
28
28
|
"ActionStorageV4": "0xdED51dca2ECED7a0BAab3D9711A87f214769Da0f"
|
|
29
29
|
},
|
|
30
30
|
"routerStatic": "0x0013ACc071f732fd6BF8210AB46A3794a7D8945e",
|
|
31
|
-
"pendleSwap": "
|
|
31
|
+
"pendleSwap": "0xFE6228A3866426e96611ED7A3D0Dee918244fcB3",
|
|
32
32
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
33
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
34
|
+
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
33
35
|
"yieldContractFactoryV5": "0x0582D93FD9c9d42f26bE5D86a5f75291F92102C2",
|
|
34
36
|
"marketFactoryV5": "0xFeE31A6eC6eBefa0b5A594Bf5b1139e3c6fAA0fB",
|
|
35
37
|
"poolDeployHelperV2": "0x0b692f06CA82e3075dC537224450885Fd138e655",
|
|
36
|
-
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
37
38
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
38
|
-
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
39
|
-
"vePendleAirdropDistributor": "0x3942F7B55094250644cFfDa7160226Caa349A38E",
|
|
40
|
-
"externalRewardsDistributor": "0xae898a7d07f8e27f25e13d0f351a7401f9a5bf9d",
|
|
41
39
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
42
40
|
"syFactory": "0x466CeD3b33045Ea986B2f306C8D0aA8067961CF8",
|
|
43
|
-
"sparkLinearDiscountOracleFactory": "0x34C91651A070664279866E5f3d6B4d5F65cbbFFb",
|
|
44
|
-
"beta": {
|
|
45
|
-
"PendleChainlinkOracleFactory": "0x0000000000000000000000000000000000000000"
|
|
46
|
-
},
|
|
47
41
|
"receiverEndpoint": "0x3209E9412cca80B18338f2a56ADA59c484c39644",
|
|
48
42
|
"vePendle": "0xE017CCC08505Ac8fbb5a364680e459d9fBaEE74d",
|
|
49
43
|
"gaugeController": "0xeE708FC793a02F1eDd5BB9DBD7fD13010D1F7136",
|
|
50
|
-
"
|
|
44
|
+
"sparkLinearDiscountOracleFactory": "0x34C91651A070664279866E5f3d6B4d5F65cbbFFb",
|
|
45
|
+
"vePendleAirdropDistributor": "0x3942F7B55094250644cFfDa7160226Caa349A38E",
|
|
46
|
+
"externalRewardsDistributor": "0xae898a7d07f8e27f25e13d0f351a7401f9a5bf9d",
|
|
47
|
+
"beta": {
|
|
48
|
+
"PendleChainlinkOracleFactory": "0x0000000000000000000000000000000000000000"
|
|
49
|
+
}
|
|
51
50
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"chainId": 42161,
|
|
5
5
|
"treasury": "0xCbcb48e22622a3778b6F14C2f5d258Ba026b05e6",
|
|
6
6
|
"governance": "0x7877AdFaDEd756f3248a0EBfe8Ac2E2eF87b75Ac",
|
|
7
|
-
"devMultisig": "
|
|
7
|
+
"devMultisig": "0xE6F0489ED91dc27f40f9dbe8f81fccbFC16b9cb1",
|
|
8
8
|
"pendle": "0x0c880f6761F1af8d9Aa9C466984b80DAb9a8c9e8",
|
|
9
9
|
"lzEndpoint": "0x3c2269811836af69497E5F486A85D7316753cf62",
|
|
10
10
|
"wrappedNative": "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"ActionStorageV4": "0x6a0Ed0A9193FCBe7ae9B0F3D90F88e365Cca64fC"
|
|
32
32
|
},
|
|
33
33
|
"routerStatic": "0xAdB09F65bd90d19e3148D9ccb693F3161C6DB3E8",
|
|
34
|
-
"pendleSwap": "
|
|
34
|
+
"pendleSwap": "0xFE6228A3866426e96611ED7A3D0Dee918244fcB3",
|
|
35
35
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
36
36
|
"yieldContractFactoryV3": "0xEb38531db128EcA928aea1B1CE9E5609B15ba146",
|
|
37
37
|
"marketFactoryV3": "0x2FCb47B58350cD377f94d3821e7373Df60bD9Ced",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"poolDeployHelper": "0xEE2eF4ADaf5Bd61FD107fD169CAe3AB79958B928",
|
|
43
43
|
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
44
44
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
45
|
-
"reflector": "
|
|
45
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
46
46
|
"vePendleAirdropDistributor": "0x3942F7B55094250644cFfDa7160226Caa349A38E",
|
|
47
47
|
"externalRewardsDistributor": "0xae898a7d07f8e27f25e13d0f351a7401f9a5bf9d",
|
|
48
48
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"ActionStorageV4": "0x6a0Ed0A9193FCBe7ae9B0F3D90F88e365Cca64fC"
|
|
30
30
|
},
|
|
31
31
|
"routerStatic": "0xCAd502Bb55d1A3F79952F969BFF3f011CF30a94a",
|
|
32
|
-
"pendleSwap": "
|
|
32
|
+
"pendleSwap": "0xFE6228A3866426e96611ED7A3D0Dee918244fcB3",
|
|
33
33
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
34
34
|
"yieldContractFactoryV3": "0x964840644B88C583500F473E4B829Ab629aF96A8",
|
|
35
35
|
"marketFactoryV3": "0xD228EC1f7D4313fe321fab511A872475D07F5bA6",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"poolDeployHelperV2": "0x6E716B682D0b63E7BF2C7b1cD20F2Fc2F3596fc7",
|
|
42
42
|
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
43
43
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
44
|
-
"reflector": "
|
|
44
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
45
45
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
46
46
|
"syFactory": "0x466CeD3b33045Ea986B2f306C8D0aA8067961CF8",
|
|
47
47
|
"receiverEndpoint": "0xf799E4c029d14f41Dc1918C9A4C67242F565710e",
|
package/deployments/56-core.json
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"ActionStorageV4": "0x6a0Ed0A9193FCBe7ae9B0F3D90F88e365Cca64fC"
|
|
32
32
|
},
|
|
33
33
|
"routerStatic": "0x2700ADB035F82a11899ce1D3f1BF8451c296eABb",
|
|
34
|
-
"pendleSwap": "
|
|
34
|
+
"pendleSwap": "0xFE6228A3866426e96611ED7A3D0Dee918244fcB3",
|
|
35
35
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
36
36
|
"yieldContractFactoryV3": "0x40Ae6da2d92aa3DCb7f8d7a7209FD12BDfcb7C85",
|
|
37
37
|
"marketFactoryV3": "0xC40fEbF5A33b8C92B187d9be0fD3fe0ac2E4B07c",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"poolDeployHelper": "0xF536323e5825dCb1Bc9b4DE74D63111189532b5f",
|
|
43
43
|
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
44
44
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
45
|
-
"reflector": "
|
|
45
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
46
46
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
47
47
|
"syFactory": "0x466CeD3b33045Ea986B2f306C8D0aA8067961CF8",
|
|
48
48
|
"sparkLinearDiscountOracleFactory": "0x34C91651A070664279866E5f3d6B4d5F65cbbFFb",
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
"ActionStorageV4": "0xdED51dca2ECED7a0BAab3D9711A87f214769Da0f"
|
|
29
29
|
},
|
|
30
30
|
"routerStatic": "0x6813d43782395A1F2AAb42f39aeEDE03ac655e09",
|
|
31
|
-
"pendleSwap": "
|
|
31
|
+
"pendleSwap": "0xFE6228A3866426e96611ED7A3D0Dee918244fcB3",
|
|
32
32
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
33
33
|
"yieldContractFactoryV5": "0x2bEa6BfD8fbFF45aA2a893EB3B6d85D10EFcC70E",
|
|
34
34
|
"marketFactoryV5": "0x8A09574b0401A856d89d1b583eE22E8cb0C5530B",
|
|
35
35
|
"poolDeployHelperV2": "0x96F77F24b3d17166FcaF3a9E3B8330fF38B966F9",
|
|
36
36
|
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
37
37
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
38
|
-
"reflector": "
|
|
38
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
39
39
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
40
40
|
"syFactory": "0x466CeD3b33045Ea986B2f306C8D0aA8067961CF8",
|
|
41
41
|
"sparkLinearDiscountOracleFactory": "0x34C91651A070664279866E5f3d6B4d5F65cbbFFb",
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
"ActionStorageV4": "0x6a0Ed0A9193FCBe7ae9B0F3D90F88e365Cca64fC"
|
|
29
29
|
},
|
|
30
30
|
"routerStatic": "0xB4205a645c7e920BD8504181B1D7f2c5C955C3e7",
|
|
31
|
-
"pendleSwap": "
|
|
31
|
+
"pendleSwap": "0xFE6228A3866426e96611ED7A3D0Dee918244fcB3",
|
|
32
32
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
33
33
|
"yieldContractFactoryV5": "0x963ddBB35c1AE44e2a159E3b5fb5177E0B32660d",
|
|
34
34
|
"marketFactoryV5": "0x59968008a703dC13E6beaECed644bdCe4ee45d13",
|
|
35
35
|
"poolDeployHelper": "0x8D77771fA2518474cc83a613ef3d6140A84dbe56",
|
|
36
36
|
"limitRouter": "0x000000000000c9B3E2C3Ec88B1B4c0cD853f4321",
|
|
37
37
|
"proxyAdmin": "0xA28c08f165116587D4F3E708743B4dEe155c5E64",
|
|
38
|
-
"reflector": "
|
|
38
|
+
"reflector": "0x73d5DBF81A4f3bFa7b335e6a2d4638D6017a4fA8",
|
|
39
39
|
"commonDeploy": "0x2Ed473F528E5B320f850d17ADfe0e558f0298aA9",
|
|
40
40
|
"syFactory": "0x466CeD3b33045Ea986B2f306C8D0aA8067961CF8",
|
|
41
41
|
"sparkLinearDiscountOracleFactory": "0x34C91651A070664279866E5f3d6B4d5F65cbbFFb",
|
package/package.json
CHANGED
|
@@ -50,6 +50,7 @@ export interface PendleCommonSYFactoryInterface extends utils.Interface {
|
|
|
50
50
|
"creationCodes(bytes32)": FunctionFragment;
|
|
51
51
|
"deploySY(bytes32,bytes,address)": FunctionFragment;
|
|
52
52
|
"deployUpgradableSY(bytes32,bytes,bytes,address)": FunctionFragment;
|
|
53
|
+
"implementations(bytes32)": FunctionFragment;
|
|
53
54
|
"initialize(address)": FunctionFragment;
|
|
54
55
|
"nonce()": FunctionFragment;
|
|
55
56
|
"owner()": FunctionFragment;
|
|
@@ -75,6 +76,10 @@ export interface PendleCommonSYFactoryInterface extends utils.Interface {
|
|
|
75
76
|
functionFragment: "deployUpgradableSY",
|
|
76
77
|
values: [BytesLike, BytesLike, BytesLike, string]
|
|
77
78
|
): string;
|
|
79
|
+
encodeFunctionData(
|
|
80
|
+
functionFragment: "implementations",
|
|
81
|
+
values: [BytesLike]
|
|
82
|
+
): string;
|
|
78
83
|
encodeFunctionData(functionFragment: "initialize", values: [string]): string;
|
|
79
84
|
encodeFunctionData(functionFragment: "nonce", values?: undefined): string;
|
|
80
85
|
encodeFunctionData(functionFragment: "owner", values?: undefined): string;
|
|
@@ -108,6 +113,10 @@ export interface PendleCommonSYFactoryInterface extends utils.Interface {
|
|
|
108
113
|
functionFragment: "deployUpgradableSY",
|
|
109
114
|
data: BytesLike
|
|
110
115
|
): Result;
|
|
116
|
+
decodeFunctionResult(
|
|
117
|
+
functionFragment: "implementations",
|
|
118
|
+
data: BytesLike
|
|
119
|
+
): Result;
|
|
111
120
|
decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
|
|
112
121
|
decodeFunctionResult(functionFragment: "nonce", data: BytesLike): Result;
|
|
113
122
|
decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
|
|
@@ -224,6 +233,11 @@ export interface PendleCommonSYFactory extends BaseContract {
|
|
|
224
233
|
overrides?: Overrides & { from?: string | Promise<string> }
|
|
225
234
|
): Promise<ContractTransaction>;
|
|
226
235
|
|
|
236
|
+
implementations(
|
|
237
|
+
arg0: BytesLike,
|
|
238
|
+
overrides?: CallOverrides
|
|
239
|
+
): Promise<[string]>;
|
|
240
|
+
|
|
227
241
|
initialize(
|
|
228
242
|
_owner: string,
|
|
229
243
|
overrides?: Overrides & { from?: string | Promise<string> }
|
|
@@ -282,6 +296,8 @@ export interface PendleCommonSYFactory extends BaseContract {
|
|
|
282
296
|
overrides?: Overrides & { from?: string | Promise<string> }
|
|
283
297
|
): Promise<ContractTransaction>;
|
|
284
298
|
|
|
299
|
+
implementations(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
|
|
300
|
+
|
|
285
301
|
initialize(
|
|
286
302
|
_owner: string,
|
|
287
303
|
overrides?: Overrides & { from?: string | Promise<string> }
|
|
@@ -338,6 +354,11 @@ export interface PendleCommonSYFactory extends BaseContract {
|
|
|
338
354
|
overrides?: CallOverrides
|
|
339
355
|
): Promise<string>;
|
|
340
356
|
|
|
357
|
+
implementations(
|
|
358
|
+
arg0: BytesLike,
|
|
359
|
+
overrides?: CallOverrides
|
|
360
|
+
): Promise<string>;
|
|
361
|
+
|
|
341
362
|
initialize(_owner: string, overrides?: CallOverrides): Promise<void>;
|
|
342
363
|
|
|
343
364
|
nonce(overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -418,6 +439,11 @@ export interface PendleCommonSYFactory extends BaseContract {
|
|
|
418
439
|
overrides?: Overrides & { from?: string | Promise<string> }
|
|
419
440
|
): Promise<BigNumber>;
|
|
420
441
|
|
|
442
|
+
implementations(
|
|
443
|
+
arg0: BytesLike,
|
|
444
|
+
overrides?: CallOverrides
|
|
445
|
+
): Promise<BigNumber>;
|
|
446
|
+
|
|
421
447
|
initialize(
|
|
422
448
|
_owner: string,
|
|
423
449
|
overrides?: Overrides & { from?: string | Promise<string> }
|
|
@@ -470,6 +496,11 @@ export interface PendleCommonSYFactory extends BaseContract {
|
|
|
470
496
|
overrides?: Overrides & { from?: string | Promise<string> }
|
|
471
497
|
): Promise<PopulatedTransaction>;
|
|
472
498
|
|
|
499
|
+
implementations(
|
|
500
|
+
arg0: BytesLike,
|
|
501
|
+
overrides?: CallOverrides
|
|
502
|
+
): Promise<PopulatedTransaction>;
|
|
503
|
+
|
|
473
504
|
initialize(
|
|
474
505
|
_owner: string,
|
|
475
506
|
overrides?: Overrides & { from?: string | Promise<string> }
|