@enzymefinance/testutils 4.0.0 → 4.0.3
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/dist/index.d.ts +1566 -0
- package/dist/index.js +3375 -0
- package/dist/index.mjs +3375 -0
- package/package.json +74 -11
- package/CHANGELOG.md +0 -84
- package/dist/declarations/src/assertions.d.ts +0 -4
- package/dist/declarations/src/deployment.d.ts +0 -188
- package/dist/declarations/src/gasRelayer.d.ts +0 -56
- package/dist/declarations/src/helpers.d.ts +0 -16
- package/dist/declarations/src/index.d.ts +0 -6
- package/dist/declarations/src/scaffolding/assets.d.ts +0 -10
- package/dist/declarations/src/scaffolding/chainlink.d.ts +0 -3
- package/dist/declarations/src/scaffolding/common.d.ts +0 -7
- package/dist/declarations/src/scaffolding/core.d.ts +0 -16
- package/dist/declarations/src/scaffolding/extensions/common.d.ts +0 -11
- package/dist/declarations/src/scaffolding/extensions/external-positions/aave-debt.d.ts +0 -51
- package/dist/declarations/src/scaffolding/extensions/external-positions/actions.d.ts +0 -36
- package/dist/declarations/src/scaffolding/extensions/external-positions/compound.d.ts +0 -56
- package/dist/declarations/src/scaffolding/extensions/external-positions/index.d.ts +0 -5
- package/dist/declarations/src/scaffolding/extensions/external-positions/mocks.d.ts +0 -56
- package/dist/declarations/src/scaffolding/extensions/external-positions/uniswap-v3-liquidity.d.ts +0 -100
- package/dist/declarations/src/scaffolding/extensions/fees.d.ts +0 -12
- package/dist/declarations/src/scaffolding/extensions/index.d.ts +0 -5
- package/dist/declarations/src/scaffolding/extensions/integrations/aave.d.ts +0 -20
- package/dist/declarations/src/scaffolding/extensions/integrations/compound.d.ts +0 -56
- package/dist/declarations/src/scaffolding/extensions/integrations/curve.d.ts +0 -106
- package/dist/declarations/src/scaffolding/extensions/integrations/idle.d.ts +0 -28
- package/dist/declarations/src/scaffolding/extensions/integrations/index.d.ts +0 -14
- package/dist/declarations/src/scaffolding/extensions/integrations/mock.d.ts +0 -32
- package/dist/declarations/src/scaffolding/extensions/integrations/olympusV2.d.ts +0 -17
- package/dist/declarations/src/scaffolding/extensions/integrations/paraSwapV5.d.ts +0 -23
- package/dist/declarations/src/scaffolding/extensions/integrations/poolTogetherV4.d.ts +0 -29
- package/dist/declarations/src/scaffolding/extensions/integrations/synthetix.d.ts +0 -28
- package/dist/declarations/src/scaffolding/extensions/integrations/trackedAssets.d.ts +0 -15
- package/dist/declarations/src/scaffolding/extensions/integrations/uniswapV2.d.ts +0 -46
- package/dist/declarations/src/scaffolding/extensions/integrations/uniswapV3.d.ts +0 -15
- package/dist/declarations/src/scaffolding/extensions/integrations/yearn.d.ts +0 -22
- package/dist/declarations/src/scaffolding/extensions/integrations/zeroExV2.d.ts +0 -12
- package/dist/declarations/src/scaffolding/extensions/policies.d.ts +0 -17
- package/dist/declarations/src/scaffolding/index.d.ts +0 -8
- package/dist/declarations/src/scaffolding/setup.d.ts +0 -77
- package/dist/declarations/src/scaffolding/shares.d.ts +0 -35
- package/dist/declarations/src/scaffolding/vaultCalls.d.ts +0 -32
- package/dist/declarations/src/whales.d.ts +0 -49
- package/dist/enzymefinance-testutils.browser.cjs.js +0 -4158
- package/dist/enzymefinance-testutils.browser.esm.js +0 -4028
- package/dist/enzymefinance-testutils.cjs.d.ts +0 -1
- package/dist/enzymefinance-testutils.cjs.dev.js +0 -4158
- package/dist/enzymefinance-testutils.cjs.js +0 -7
- package/dist/enzymefinance-testutils.cjs.prod.js +0 -4158
- package/dist/enzymefinance-testutils.esm.js +0 -4028
- package/src/assertions.ts +0 -23
- package/src/deployment.ts +0 -280
- package/src/gasRelayer.ts +0 -95
- package/src/helpers.ts +0 -39
- package/src/index.ts +0 -6
- package/src/scaffolding/assets.ts +0 -37
- package/src/scaffolding/chainlink.ts +0 -8
- package/src/scaffolding/common.ts +0 -11
- package/src/scaffolding/core.ts +0 -103
- package/src/scaffolding/extensions/common.ts +0 -30
- package/src/scaffolding/extensions/external-positions/aave-debt.ts +0 -179
- package/src/scaffolding/extensions/external-positions/actions.ts +0 -108
- package/src/scaffolding/extensions/external-positions/compound.ts +0 -190
- package/src/scaffolding/extensions/external-positions/index.ts +0 -5
- package/src/scaffolding/extensions/external-positions/mocks.ts +0 -191
- package/src/scaffolding/extensions/external-positions/uniswap-v3-liquidity.ts +0 -284
- package/src/scaffolding/extensions/fees.ts +0 -70
- package/src/scaffolding/extensions/index.ts +0 -5
- package/src/scaffolding/extensions/integrations/aave.ts +0 -78
- package/src/scaffolding/extensions/integrations/compound.ts +0 -255
- package/src/scaffolding/extensions/integrations/curve.ts +0 -354
- package/src/scaffolding/extensions/integrations/idle.ts +0 -104
- package/src/scaffolding/extensions/integrations/index.ts +0 -14
- package/src/scaffolding/extensions/integrations/mock.ts +0 -116
- package/src/scaffolding/extensions/integrations/olympusV2.ts +0 -71
- package/src/scaffolding/extensions/integrations/paraSwapV5.ts +0 -73
- package/src/scaffolding/extensions/integrations/poolTogetherV4.ts +0 -117
- package/src/scaffolding/extensions/integrations/synthetix.ts +0 -111
- package/src/scaffolding/extensions/integrations/trackedAssets.ts +0 -48
- package/src/scaffolding/extensions/integrations/uniswapV2.ts +0 -175
- package/src/scaffolding/extensions/integrations/uniswapV3.ts +0 -55
- package/src/scaffolding/extensions/integrations/yearn.ts +0 -79
- package/src/scaffolding/extensions/integrations/zeroExV2.ts +0 -47
- package/src/scaffolding/extensions/policies.ts +0 -112
- package/src/scaffolding/index.ts +0 -8
- package/src/scaffolding/setup.ts +0 -243
- package/src/scaffolding/shares.ts +0 -80
- package/src/scaffolding/vaultCalls.ts +0 -105
- package/src/types.d.ts +0 -2
- package/src/whales.ts +0 -82
- package/tsconfig.json +0 -5
|
@@ -1,4158 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
|
|
6
|
-
var _regeneratorRuntime = require('@babel/runtime/regenerator');
|
|
7
|
-
var protocol = require('@enzymefinance/protocol');
|
|
8
|
-
var ethers = require('ethers');
|
|
9
|
-
var ethers$1 = require('@enzymefinance/ethers');
|
|
10
|
-
var _taggedTemplateLiteral = require('@babel/runtime/helpers/taggedTemplateLiteral');
|
|
11
|
-
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
12
|
-
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
13
|
-
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
14
|
-
|
|
15
|
-
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
16
|
-
|
|
17
|
-
var _regeneratorRuntime__default = /*#__PURE__*/_interopDefault(_regeneratorRuntime);
|
|
18
|
-
|
|
19
|
-
function getNamedSigner(_x) {
|
|
20
|
-
return _getNamedSigner.apply(this, arguments);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
function _getNamedSigner() {
|
|
24
|
-
_getNamedSigner = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(name) {
|
|
25
|
-
var accounts;
|
|
26
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
27
|
-
while (1) {
|
|
28
|
-
switch (_context.prev = _context.next) {
|
|
29
|
-
case 0:
|
|
30
|
-
_context.next = 2;
|
|
31
|
-
return hre.getNamedAccounts();
|
|
32
|
-
|
|
33
|
-
case 2:
|
|
34
|
-
accounts = _context.sent;
|
|
35
|
-
|
|
36
|
-
if (accounts[name]) {
|
|
37
|
-
_context.next = 5;
|
|
38
|
-
break;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
throw new Error("Missing account with name ".concat(name));
|
|
42
|
-
|
|
43
|
-
case 5:
|
|
44
|
-
return _context.abrupt("return", provider.getSignerWithAddress(accounts[name]));
|
|
45
|
-
|
|
46
|
-
case 6:
|
|
47
|
-
case "end":
|
|
48
|
-
return _context.stop();
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}, _callee);
|
|
52
|
-
}));
|
|
53
|
-
return _getNamedSigner.apply(this, arguments);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
function getUnnamedSigners() {
|
|
57
|
-
return _getUnnamedSigners.apply(this, arguments);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
function _getUnnamedSigners() {
|
|
61
|
-
_getUnnamedSigners = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2() {
|
|
62
|
-
var accounts;
|
|
63
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
64
|
-
while (1) {
|
|
65
|
-
switch (_context2.prev = _context2.next) {
|
|
66
|
-
case 0:
|
|
67
|
-
_context2.next = 2;
|
|
68
|
-
return hre.getUnnamedAccounts();
|
|
69
|
-
|
|
70
|
-
case 2:
|
|
71
|
-
accounts = _context2.sent;
|
|
72
|
-
return _context2.abrupt("return", Promise.all(accounts.map(function (account) {
|
|
73
|
-
return provider.getSignerWithAddress(account);
|
|
74
|
-
})));
|
|
75
|
-
|
|
76
|
-
case 4:
|
|
77
|
-
case "end":
|
|
78
|
-
return _context2.stop();
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}, _callee2);
|
|
82
|
-
}));
|
|
83
|
-
return _getUnnamedSigners.apply(this, arguments);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
function deployProtocolFixture() {
|
|
87
|
-
return _deployProtocolFixture.apply(this, arguments);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
function _deployProtocolFixture() {
|
|
91
|
-
_deployProtocolFixture = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3() {
|
|
92
|
-
var fixture, deployer, accounts, config, deployment;
|
|
93
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
94
|
-
while (1) {
|
|
95
|
-
switch (_context3.prev = _context3.next) {
|
|
96
|
-
case 0:
|
|
97
|
-
_context3.next = 2;
|
|
98
|
-
return hre.deployments.fixture();
|
|
99
|
-
|
|
100
|
-
case 2:
|
|
101
|
-
fixture = _context3.sent;
|
|
102
|
-
_context3.next = 5;
|
|
103
|
-
return getNamedSigner('deployer');
|
|
104
|
-
|
|
105
|
-
case 5:
|
|
106
|
-
deployer = _context3.sent;
|
|
107
|
-
_context3.next = 8;
|
|
108
|
-
return getUnnamedSigners();
|
|
109
|
-
|
|
110
|
-
case 8:
|
|
111
|
-
accounts = _context3.sent;
|
|
112
|
-
config = fixture['Config'].linkedData; // prettier-ignore
|
|
113
|
-
|
|
114
|
-
deployment = {
|
|
115
|
-
aaveAdapter: new protocol.AaveAdapter(fixture['AaveAdapter'].address, deployer),
|
|
116
|
-
aaveDebtPositionLib: new protocol.AaveDebtPositionLib(fixture['AaveDebtPositionLib'].address, deployer),
|
|
117
|
-
aaveDebtPositionParser: new protocol.AaveDebtPositionParser(fixture['AaveDebtPositionParser'].address, deployer),
|
|
118
|
-
aavePriceFeed: new protocol.AavePriceFeed(fixture['AavePriceFeed'].address, deployer),
|
|
119
|
-
addressListRegistry: new protocol.AddressListRegistry(fixture['AddressListRegistry'].address, deployer),
|
|
120
|
-
allowedAdapterIncomingAssetsPolicy: new protocol.AllowedAdapterIncomingAssetsPolicy(fixture['AllowedAdapterIncomingAssetsPolicy'].address, deployer),
|
|
121
|
-
allowedAdaptersPolicy: new protocol.AllowedAdaptersPolicy(fixture['AllowedAdaptersPolicy'].address, deployer),
|
|
122
|
-
allowedAssetsForRedemptionPolicy: new protocol.AllowedAssetsForRedemptionPolicy(fixture['AllowedAssetsForRedemptionPolicy'].address, deployer),
|
|
123
|
-
allowedDepositRecipientsPolicy: new protocol.AllowedDepositRecipientsPolicy(fixture['AllowedDepositRecipientsPolicy'].address, deployer),
|
|
124
|
-
allowedExternalPositionTypesPolicy: new protocol.AllowedExternalPositionTypesPolicy(fixture['AllowedExternalPositionTypesPolicy'].address, deployer),
|
|
125
|
-
allowedSharesTransferRecipientsPolicy: new protocol.AllowedSharesTransferRecipientsPolicy(fixture['AllowedSharesTransferRecipientsPolicy'].address, deployer),
|
|
126
|
-
compoundAdapter: new protocol.CompoundAdapter(fixture['CompoundAdapter'].address, deployer),
|
|
127
|
-
compoundDebtPositionLib: new protocol.CompoundDebtPositionLib(fixture['CompoundDebtPositionLib'].address, deployer),
|
|
128
|
-
compoundDebtPositionParser: new protocol.CompoundDebtPositionParser(fixture['CompoundDebtPositionParser'].address, deployer),
|
|
129
|
-
compoundPriceFeed: new protocol.CompoundPriceFeed(fixture['CompoundPriceFeed'].address, deployer),
|
|
130
|
-
comptrollerLib: new protocol.ComptrollerLib(fixture['ComptrollerLib'].address, deployer),
|
|
131
|
-
convexCurveLpStakingAdapter: new protocol.ConvexCurveLpStakingAdapter(fixture['ConvexCurveLpStakingAdapter'].address, deployer),
|
|
132
|
-
convexCurveLpStakingWrapperFactory: new protocol.ConvexCurveLpStakingWrapperFactory(fixture['ConvexCurveLpStakingWrapperFactory'].address, deployer),
|
|
133
|
-
convexCurveLpStakingWrapperPriceFeed: new protocol.ConvexCurveLpStakingWrapperPriceFeed(fixture['ConvexCurveLpStakingWrapperPriceFeed'].address, deployer),
|
|
134
|
-
cumulativeSlippageTolerancePolicy: new protocol.CumulativeSlippageTolerancePolicy(fixture['CumulativeSlippageTolerancePolicy'].address, deployer),
|
|
135
|
-
curveExchangeAdapter: new protocol.CurveExchangeAdapter(fixture['CurveExchangeAdapter'].address, deployer),
|
|
136
|
-
curveLiquidityAdapter: new protocol.CurveLiquidityAdapter(fixture['CurveLiquidityAdapter'].address, deployer),
|
|
137
|
-
curvePriceFeed: new protocol.CurvePriceFeed(fixture['CurvePriceFeed'].address, deployer),
|
|
138
|
-
depositWrapper: new protocol.DepositWrapper(fixture['DepositWrapper'].address, deployer),
|
|
139
|
-
dispatcher: new protocol.Dispatcher(fixture['Dispatcher'].address, deployer),
|
|
140
|
-
entranceRateBurnFee: new protocol.EntranceRateBurnFee(fixture['EntranceRateBurnFee'].address, deployer),
|
|
141
|
-
entranceRateDirectFee: new protocol.EntranceRateDirectFee(fixture['EntranceRateDirectFee'].address, deployer),
|
|
142
|
-
exitRateBurnFee: new protocol.ExitRateBurnFee(fixture['ExitRateBurnFee'].address, deployer),
|
|
143
|
-
exitRateDirectFee: new protocol.ExitRateDirectFee(fixture['ExitRateDirectFee'].address, deployer),
|
|
144
|
-
externalPositionFactory: new protocol.ExternalPositionFactory(fixture['ExternalPositionFactory'].address, deployer),
|
|
145
|
-
externalPositionManager: new protocol.ExternalPositionManager(fixture['ExternalPositionManager'].address, deployer),
|
|
146
|
-
feeManager: new protocol.FeeManager(fixture['FeeManager'].address, deployer),
|
|
147
|
-
fundDeployer: new protocol.FundDeployer(fixture['FundDeployer'].address, deployer),
|
|
148
|
-
fundValueCalculator: new protocol.FundValueCalculator(fixture['FundValueCalculator'].address, deployer),
|
|
149
|
-
fundValueCalculatorRouter: new protocol.FundValueCalculatorRouter(fixture['FundValueCalculatorRouter'].address, deployer),
|
|
150
|
-
fundValueCalculatorUsdWrapper: new protocol.FundValueCalculatorUsdWrapper(fixture['FundValueCalculatorUsdWrapper'].address, deployer),
|
|
151
|
-
fuseAdapter: new protocol.FuseAdapter(fixture['FuseAdapter'].address, deployer),
|
|
152
|
-
fusePriceFeed: new protocol.FusePriceFeed(fixture['FusePriceFeed'].address, deployer),
|
|
153
|
-
gasRelayPaymasterFactory: new protocol.GasRelayPaymasterFactory(fixture['GasRelayPaymasterFactory'].address, deployer),
|
|
154
|
-
idleAdapter: new protocol.IdleAdapter(fixture['IdleAdapter'].address, deployer),
|
|
155
|
-
idlePriceFeed: new protocol.IdlePriceFeed(fixture['IdlePriceFeed'].address, deployer),
|
|
156
|
-
integrationManager: new protocol.IntegrationManager(fixture['IntegrationManager'].address, deployer),
|
|
157
|
-
lidoStethPriceFeed: new protocol.LidoStethPriceFeed(fixture['LidoStethPriceFeed'].address, deployer),
|
|
158
|
-
managementFee: new protocol.ManagementFee(fixture['ManagementFee'].address, deployer),
|
|
159
|
-
minAssetBalancesPostRedemptionPolicy: new protocol.MinAssetBalancesPostRedemptionPolicy(fixture['MinAssetBalancesPostRedemptionPolicy'].address, deployer),
|
|
160
|
-
minMaxInvestmentPolicy: new protocol.MinMaxInvestmentPolicy(fixture['MinMaxInvestmentPolicy'].address, deployer),
|
|
161
|
-
olympusV2Adapter: new protocol.OlympusV2Adapter(fixture['OlympusV2Adapter'].address, deployer),
|
|
162
|
-
onlyRemoveDustExternalPositionPolicy: new protocol.OnlyRemoveDustExternalPositionPolicy(fixture['OnlyRemoveDustExternalPositionPolicy'].address, deployer),
|
|
163
|
-
onlyUntrackDustOrPricelessAssetsPolicy: new protocol.OnlyUntrackDustOrPricelessAssetsPolicy(fixture['OnlyUntrackDustOrPricelessAssetsPolicy'].address, deployer),
|
|
164
|
-
paraSwapV5Adapter: new protocol.ParaSwapV5Adapter(fixture['ParaSwapV5Adapter'].address, deployer),
|
|
165
|
-
performanceFee: new protocol.PerformanceFee(fixture['PerformanceFee'].address, deployer),
|
|
166
|
-
policyManager: new protocol.PolicyManager(fixture['PolicyManager'].address, deployer),
|
|
167
|
-
poolTogetherV4Adapter: new protocol.PoolTogetherV4Adapter(fixture['PoolTogetherV4Adapter'].address, deployer),
|
|
168
|
-
poolTogetherV4PriceFeed: new protocol.PoolTogetherV4PriceFeed(fixture['PoolTogetherV4PriceFeed'].address, deployer),
|
|
169
|
-
protocolFeeReserveLib: new protocol.ProtocolFeeReserveLib(fixture['ProtocolFeeReserveLib'].address, deployer),
|
|
170
|
-
protocolFeeReserveProxy: new protocol.ProtocolFeeReserveLib(fixture['ProtocolFeeReserveProxy'].address, deployer),
|
|
171
|
-
protocolFeeTracker: new protocol.ProtocolFeeTracker(fixture['ProtocolFeeTracker'].address, deployer),
|
|
172
|
-
revertingPriceFeed: new protocol.RevertingPriceFeed(fixture['RevertingPriceFeed'].address, deployer),
|
|
173
|
-
synthetixAdapter: new protocol.SynthetixAdapter(fixture['SynthetixAdapter'].address, deployer),
|
|
174
|
-
uniswapV2ExchangeAdapter: new protocol.UniswapV2ExchangeAdapter(fixture['UniswapV2ExchangeAdapter'].address, deployer),
|
|
175
|
-
uniswapV2LiquidityAdapter: new protocol.UniswapV2LiquidityAdapter(fixture['UniswapV2LiquidityAdapter'].address, deployer),
|
|
176
|
-
uniswapV2PoolPriceFeed: new protocol.UniswapV2PoolPriceFeed(fixture['UniswapV2PoolPriceFeed'].address, deployer),
|
|
177
|
-
uniswapV3Adapter: new protocol.UniswapV3Adapter(fixture['UniswapV3Adapter'].address, deployer),
|
|
178
|
-
unpermissionedActionsWrapper: new protocol.UnpermissionedActionsWrapper(fixture['UnpermissionedActionsWrapper'].address, deployer),
|
|
179
|
-
usdEthSimulatedAggregator: new protocol.UsdEthSimulatedAggregator(fixture['UsdEthSimulatedAggregator'].address, deployer),
|
|
180
|
-
valueInterpreter: new protocol.ValueInterpreter(fixture['ValueInterpreter'].address, deployer),
|
|
181
|
-
vaultLib: new protocol.VaultLib(fixture['VaultLib'].address, deployer),
|
|
182
|
-
yearnVaultV2Adapter: new protocol.YearnVaultV2Adapter(fixture['YearnVaultV2Adapter'].address, deployer),
|
|
183
|
-
yearnVaultV2PriceFeed: new protocol.YearnVaultV2PriceFeed(fixture['YearnVaultV2PriceFeed'].address, deployer),
|
|
184
|
-
zeroExV2Adapter: new protocol.ZeroExV2Adapter(fixture['ZeroExV2Adapter'].address, deployer)
|
|
185
|
-
};
|
|
186
|
-
return _context3.abrupt("return", {
|
|
187
|
-
accounts: accounts,
|
|
188
|
-
config: config,
|
|
189
|
-
deployer: deployer,
|
|
190
|
-
deployment: deployment
|
|
191
|
-
});
|
|
192
|
-
|
|
193
|
-
case 12:
|
|
194
|
-
case "end":
|
|
195
|
-
return _context3.stop();
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
}, _callee3);
|
|
199
|
-
}));
|
|
200
|
-
return _deployProtocolFixture.apply(this, arguments);
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
function addTrackedAssetsToVault(_ref) {
|
|
204
|
-
var signer = _ref.signer,
|
|
205
|
-
comptrollerProxy = _ref.comptrollerProxy,
|
|
206
|
-
integrationManager = _ref.integrationManager,
|
|
207
|
-
assets = _ref.assets;
|
|
208
|
-
return comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.AddTrackedAssetsToVault, protocol.addTrackedAssetsToVaultArgs({
|
|
209
|
-
assets: assets
|
|
210
|
-
}));
|
|
211
|
-
}
|
|
212
|
-
function removeTrackedAssetsFromVault(_ref2) {
|
|
213
|
-
var signer = _ref2.signer,
|
|
214
|
-
comptrollerProxy = _ref2.comptrollerProxy,
|
|
215
|
-
integrationManager = _ref2.integrationManager,
|
|
216
|
-
assets = _ref2.assets;
|
|
217
|
-
return comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.RemoveTrackedAssetsFromVault, protocol.removeTrackedAssetsFromVaultArgs({
|
|
218
|
-
assets: assets
|
|
219
|
-
}));
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
function addNewAssetsToFund(_x) {
|
|
223
|
-
return _addNewAssetsToFund.apply(this, arguments);
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
function _addNewAssetsToFund() {
|
|
227
|
-
_addNewAssetsToFund = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
228
|
-
var signer, comptrollerProxy, integrationManager, assets, _ref$amounts, amounts, receipt, vaultProxy, i;
|
|
229
|
-
|
|
230
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
231
|
-
while (1) {
|
|
232
|
-
switch (_context.prev = _context.next) {
|
|
233
|
-
case 0:
|
|
234
|
-
signer = _ref.signer, comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, assets = _ref.assets, _ref$amounts = _ref.amounts, amounts = _ref$amounts === void 0 ? new Array(assets.length).fill(1) : _ref$amounts;
|
|
235
|
-
// First, add tracked assets
|
|
236
|
-
receipt = addTrackedAssetsToVault({
|
|
237
|
-
assets: assets,
|
|
238
|
-
comptrollerProxy: comptrollerProxy,
|
|
239
|
-
integrationManager: integrationManager,
|
|
240
|
-
signer: signer
|
|
241
|
-
}); // Then seed the vault with balances as necessary
|
|
242
|
-
|
|
243
|
-
_context.next = 4;
|
|
244
|
-
return comptrollerProxy.getVaultProxy();
|
|
245
|
-
|
|
246
|
-
case 4:
|
|
247
|
-
vaultProxy = _context.sent;
|
|
248
|
-
_context.t0 = _regeneratorRuntime__default['default'].keys(assets);
|
|
249
|
-
|
|
250
|
-
case 6:
|
|
251
|
-
if ((_context.t1 = _context.t0()).done) {
|
|
252
|
-
_context.next = 13;
|
|
253
|
-
break;
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
i = _context.t1.value;
|
|
257
|
-
|
|
258
|
-
if (!(amounts[i] > 0)) {
|
|
259
|
-
_context.next = 11;
|
|
260
|
-
break;
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
_context.next = 11;
|
|
264
|
-
return assets[i].transfer(vaultProxy, amounts[i]);
|
|
265
|
-
|
|
266
|
-
case 11:
|
|
267
|
-
_context.next = 6;
|
|
268
|
-
break;
|
|
269
|
-
|
|
270
|
-
case 13:
|
|
271
|
-
return _context.abrupt("return", receipt);
|
|
272
|
-
|
|
273
|
-
case 14:
|
|
274
|
-
case "end":
|
|
275
|
-
return _context.stop();
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
}, _callee);
|
|
279
|
-
}));
|
|
280
|
-
return _addNewAssetsToFund.apply(this, arguments);
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
function updateChainlinkAggregator(_x, _x2) {
|
|
284
|
-
return _updateChainlinkAggregator.apply(this, arguments);
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
function _updateChainlinkAggregator() {
|
|
288
|
-
_updateChainlinkAggregator = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(aggregator, price) {
|
|
289
|
-
var answer, block;
|
|
290
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
291
|
-
while (1) {
|
|
292
|
-
switch (_context.prev = _context.next) {
|
|
293
|
-
case 0:
|
|
294
|
-
if (!(price !== null && price !== void 0)) {
|
|
295
|
-
_context.next = 4;
|
|
296
|
-
break;
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
_context.t0 = price;
|
|
300
|
-
_context.next = 7;
|
|
301
|
-
break;
|
|
302
|
-
|
|
303
|
-
case 4:
|
|
304
|
-
_context.next = 6;
|
|
305
|
-
return aggregator.latestAnswer();
|
|
306
|
-
|
|
307
|
-
case 6:
|
|
308
|
-
_context.t0 = _context.sent;
|
|
309
|
-
|
|
310
|
-
case 7:
|
|
311
|
-
answer = _context.t0;
|
|
312
|
-
_context.next = 10;
|
|
313
|
-
return aggregator.provider.getBlock('latest');
|
|
314
|
-
|
|
315
|
-
case 10:
|
|
316
|
-
block = _context.sent;
|
|
317
|
-
_context.next = 13;
|
|
318
|
-
return aggregator.setLatestAnswer(answer, block.timestamp);
|
|
319
|
-
|
|
320
|
-
case 13:
|
|
321
|
-
case "end":
|
|
322
|
-
return _context.stop();
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
|
-
}, _callee);
|
|
326
|
-
}));
|
|
327
|
-
return _updateChainlinkAggregator.apply(this, arguments);
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
function getAssetBalances(_x) {
|
|
331
|
-
return _getAssetBalances.apply(this, arguments);
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
function _getAssetBalances() {
|
|
335
|
-
_getAssetBalances = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
336
|
-
var account, assets;
|
|
337
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
338
|
-
while (1) {
|
|
339
|
-
switch (_context.prev = _context.next) {
|
|
340
|
-
case 0:
|
|
341
|
-
account = _ref.account, assets = _ref.assets;
|
|
342
|
-
return _context.abrupt("return", Promise.all(assets.map(function (asset) {
|
|
343
|
-
return new protocol.StandardToken(asset, provider).balanceOf(account);
|
|
344
|
-
})));
|
|
345
|
-
|
|
346
|
-
case 2:
|
|
347
|
-
case "end":
|
|
348
|
-
return _context.stop();
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
}, _callee);
|
|
352
|
-
}));
|
|
353
|
-
return _getAssetBalances.apply(this, arguments);
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
function getAssetUnit(_x2) {
|
|
357
|
-
return _getAssetUnit.apply(this, arguments);
|
|
358
|
-
}
|
|
359
|
-
|
|
360
|
-
function _getAssetUnit() {
|
|
361
|
-
_getAssetUnit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(asset) {
|
|
362
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
363
|
-
while (1) {
|
|
364
|
-
switch (_context2.prev = _context2.next) {
|
|
365
|
-
case 0:
|
|
366
|
-
_context2.t0 = ethers.utils;
|
|
367
|
-
_context2.next = 3;
|
|
368
|
-
return asset.decimals();
|
|
369
|
-
|
|
370
|
-
case 3:
|
|
371
|
-
_context2.t1 = _context2.sent;
|
|
372
|
-
return _context2.abrupt("return", _context2.t0.parseUnits.call(_context2.t0, '1', _context2.t1));
|
|
373
|
-
|
|
374
|
-
case 5:
|
|
375
|
-
case "end":
|
|
376
|
-
return _context2.stop();
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
}, _callee2);
|
|
380
|
-
}));
|
|
381
|
-
return _getAssetUnit.apply(this, arguments);
|
|
382
|
-
}
|
|
383
|
-
|
|
384
|
-
// TODO: Should refactor this function to take all deployment contracts and set up everything by default,
|
|
385
|
-
// unless overrides are passed-in
|
|
386
|
-
function createFundDeployer(_x) {
|
|
387
|
-
return _createFundDeployer.apply(this, arguments);
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
function _createFundDeployer() {
|
|
391
|
-
_createFundDeployer = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
392
|
-
var deployer, externalPositionManager, dispatcher, gasRelayPaymasterFactory, valueInterpreter, vaultLib, _ref$setOnDispatcher, setOnDispatcher, _ref$setReleaseLive, setReleaseLive, mlnToken, wethToken, protocolFeeReserve, nextFundDeployer, nextPolicyManager, nextExternalPositionManager, nextFeeManager, nextIntegrationManager, nextComptrollerLib, nextProtocolFeeTracker, nextVaultLib;
|
|
393
|
-
|
|
394
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
395
|
-
while (1) {
|
|
396
|
-
switch (_context.prev = _context.next) {
|
|
397
|
-
case 0:
|
|
398
|
-
deployer = _ref.deployer, externalPositionManager = _ref.externalPositionManager, dispatcher = _ref.dispatcher, gasRelayPaymasterFactory = _ref.gasRelayPaymasterFactory, valueInterpreter = _ref.valueInterpreter, vaultLib = _ref.vaultLib, _ref$setOnDispatcher = _ref.setOnDispatcher, setOnDispatcher = _ref$setOnDispatcher === void 0 ? true : _ref$setOnDispatcher, _ref$setReleaseLive = _ref.setReleaseLive, setReleaseLive = _ref$setReleaseLive === void 0 ? true : _ref$setReleaseLive;
|
|
399
|
-
_context.next = 3;
|
|
400
|
-
return vaultLib.getMlnToken();
|
|
401
|
-
|
|
402
|
-
case 3:
|
|
403
|
-
mlnToken = _context.sent;
|
|
404
|
-
_context.next = 6;
|
|
405
|
-
return vaultLib.getWethToken();
|
|
406
|
-
|
|
407
|
-
case 6:
|
|
408
|
-
wethToken = _context.sent;
|
|
409
|
-
_context.next = 9;
|
|
410
|
-
return vaultLib.getProtocolFeeReserve();
|
|
411
|
-
|
|
412
|
-
case 9:
|
|
413
|
-
protocolFeeReserve = _context.sent;
|
|
414
|
-
_context.next = 12;
|
|
415
|
-
return protocol.FundDeployer.deploy(deployer, dispatcher, gasRelayPaymasterFactory);
|
|
416
|
-
|
|
417
|
-
case 12:
|
|
418
|
-
nextFundDeployer = _context.sent;
|
|
419
|
-
_context.next = 15;
|
|
420
|
-
return protocol.PolicyManager.deploy(deployer, nextFundDeployer, gasRelayPaymasterFactory);
|
|
421
|
-
|
|
422
|
-
case 15:
|
|
423
|
-
nextPolicyManager = _context.sent;
|
|
424
|
-
_context.t0 = protocol.ExternalPositionManager;
|
|
425
|
-
_context.t1 = deployer;
|
|
426
|
-
_context.t2 = nextFundDeployer;
|
|
427
|
-
_context.next = 21;
|
|
428
|
-
return externalPositionManager.getExternalPositionFactory();
|
|
429
|
-
|
|
430
|
-
case 21:
|
|
431
|
-
_context.t3 = _context.sent;
|
|
432
|
-
_context.t4 = nextPolicyManager;
|
|
433
|
-
_context.next = 25;
|
|
434
|
-
return _context.t0.deploy.call(_context.t0, _context.t1, _context.t2, _context.t3, _context.t4);
|
|
435
|
-
|
|
436
|
-
case 25:
|
|
437
|
-
nextExternalPositionManager = _context.sent;
|
|
438
|
-
_context.next = 28;
|
|
439
|
-
return protocol.FeeManager.deploy(deployer, nextFundDeployer);
|
|
440
|
-
|
|
441
|
-
case 28:
|
|
442
|
-
nextFeeManager = _context.sent;
|
|
443
|
-
_context.next = 31;
|
|
444
|
-
return protocol.IntegrationManager.deploy(deployer, nextFundDeployer, nextPolicyManager, valueInterpreter);
|
|
445
|
-
|
|
446
|
-
case 31:
|
|
447
|
-
nextIntegrationManager = _context.sent;
|
|
448
|
-
_context.next = 34;
|
|
449
|
-
return protocol.ComptrollerLib.deploy(deployer, dispatcher, protocolFeeReserve, nextFundDeployer, valueInterpreter, nextExternalPositionManager, nextFeeManager, nextIntegrationManager, nextPolicyManager, gasRelayPaymasterFactory, mlnToken, wethToken);
|
|
450
|
-
|
|
451
|
-
case 34:
|
|
452
|
-
nextComptrollerLib = _context.sent;
|
|
453
|
-
_context.next = 37;
|
|
454
|
-
return nextFundDeployer.setComptrollerLib(nextComptrollerLib);
|
|
455
|
-
|
|
456
|
-
case 37:
|
|
457
|
-
_context.next = 39;
|
|
458
|
-
return protocol.ProtocolFeeTracker.deploy(deployer, nextFundDeployer);
|
|
459
|
-
|
|
460
|
-
case 39:
|
|
461
|
-
nextProtocolFeeTracker = _context.sent;
|
|
462
|
-
_context.next = 42;
|
|
463
|
-
return nextFundDeployer.setProtocolFeeTracker(nextProtocolFeeTracker);
|
|
464
|
-
|
|
465
|
-
case 42:
|
|
466
|
-
_context.t5 = protocol.VaultLib;
|
|
467
|
-
_context.t6 = deployer;
|
|
468
|
-
_context.t7 = externalPositionManager;
|
|
469
|
-
_context.next = 47;
|
|
470
|
-
return vaultLib.getGasRelayPaymasterFactory();
|
|
471
|
-
|
|
472
|
-
case 47:
|
|
473
|
-
_context.t8 = _context.sent;
|
|
474
|
-
_context.next = 50;
|
|
475
|
-
return vaultLib.getProtocolFeeReserve();
|
|
476
|
-
|
|
477
|
-
case 50:
|
|
478
|
-
_context.t9 = _context.sent;
|
|
479
|
-
_context.t10 = nextProtocolFeeTracker;
|
|
480
|
-
_context.next = 54;
|
|
481
|
-
return vaultLib.getMlnToken();
|
|
482
|
-
|
|
483
|
-
case 54:
|
|
484
|
-
_context.t11 = _context.sent;
|
|
485
|
-
_context.next = 57;
|
|
486
|
-
return vaultLib.getMlnBurner();
|
|
487
|
-
|
|
488
|
-
case 57:
|
|
489
|
-
_context.t12 = _context.sent;
|
|
490
|
-
_context.next = 60;
|
|
491
|
-
return vaultLib.getWethToken();
|
|
492
|
-
|
|
493
|
-
case 60:
|
|
494
|
-
_context.t13 = _context.sent;
|
|
495
|
-
_context.next = 63;
|
|
496
|
-
return vaultLib.getPositionsLimit();
|
|
497
|
-
|
|
498
|
-
case 63:
|
|
499
|
-
_context.t14 = _context.sent;
|
|
500
|
-
_context.next = 66;
|
|
501
|
-
return _context.t5.deploy.call(_context.t5, _context.t6, _context.t7, _context.t8, _context.t9, _context.t10, _context.t11, _context.t12, _context.t13, _context.t14);
|
|
502
|
-
|
|
503
|
-
case 66:
|
|
504
|
-
nextVaultLib = _context.sent;
|
|
505
|
-
_context.next = 69;
|
|
506
|
-
return nextFundDeployer.setVaultLib(nextVaultLib);
|
|
507
|
-
|
|
508
|
-
case 69:
|
|
509
|
-
if (!setReleaseLive) {
|
|
510
|
-
_context.next = 72;
|
|
511
|
-
break;
|
|
512
|
-
}
|
|
513
|
-
|
|
514
|
-
_context.next = 72;
|
|
515
|
-
return nextFundDeployer.setReleaseLive();
|
|
516
|
-
|
|
517
|
-
case 72:
|
|
518
|
-
if (!setOnDispatcher) {
|
|
519
|
-
_context.next = 75;
|
|
520
|
-
break;
|
|
521
|
-
}
|
|
522
|
-
|
|
523
|
-
_context.next = 75;
|
|
524
|
-
return dispatcher.setCurrentFundDeployer(nextFundDeployer);
|
|
525
|
-
|
|
526
|
-
case 75:
|
|
527
|
-
return _context.abrupt("return", nextFundDeployer);
|
|
528
|
-
|
|
529
|
-
case 76:
|
|
530
|
-
case "end":
|
|
531
|
-
return _context.stop();
|
|
532
|
-
}
|
|
533
|
-
}
|
|
534
|
-
}, _callee);
|
|
535
|
-
}));
|
|
536
|
-
return _createFundDeployer.apply(this, arguments);
|
|
537
|
-
}
|
|
538
|
-
|
|
539
|
-
function callOnExtension(_x) {
|
|
540
|
-
return _callOnExtension.apply(this, arguments);
|
|
541
|
-
}
|
|
542
|
-
|
|
543
|
-
function _callOnExtension() {
|
|
544
|
-
_callOnExtension = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
545
|
-
var comptrollerProxy, extension, actionId, _ref$callArgs, callArgs, signer, callOnExtensionTx;
|
|
546
|
-
|
|
547
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
548
|
-
while (1) {
|
|
549
|
-
switch (_context.prev = _context.next) {
|
|
550
|
-
case 0:
|
|
551
|
-
comptrollerProxy = _ref.comptrollerProxy, extension = _ref.extension, actionId = _ref.actionId, _ref$callArgs = _ref.callArgs, callArgs = _ref$callArgs === void 0 ? '0x' : _ref$callArgs, signer = _ref.signer;
|
|
552
|
-
|
|
553
|
-
if (signer) {
|
|
554
|
-
callOnExtensionTx = comptrollerProxy.connect(signer).callOnExtension(extension, actionId, callArgs);
|
|
555
|
-
} else {
|
|
556
|
-
callOnExtensionTx = comptrollerProxy.callOnExtension(extension, actionId, callArgs);
|
|
557
|
-
}
|
|
558
|
-
|
|
559
|
-
_context.next = 4;
|
|
560
|
-
return expect(callOnExtensionTx).resolves.toBeReceipt();
|
|
561
|
-
|
|
562
|
-
case 4:
|
|
563
|
-
return _context.abrupt("return", callOnExtensionTx);
|
|
564
|
-
|
|
565
|
-
case 5:
|
|
566
|
-
case "end":
|
|
567
|
-
return _context.stop();
|
|
568
|
-
}
|
|
569
|
-
}
|
|
570
|
-
}, _callee);
|
|
571
|
-
}));
|
|
572
|
-
return _callOnExtension.apply(this, arguments);
|
|
573
|
-
}
|
|
574
|
-
|
|
575
|
-
function callOnExternalPosition(_x) {
|
|
576
|
-
return _callOnExternalPosition.apply(this, arguments);
|
|
577
|
-
}
|
|
578
|
-
|
|
579
|
-
function _callOnExternalPosition() {
|
|
580
|
-
_callOnExternalPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
581
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, actionId, actionArgs, callArgs;
|
|
582
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
583
|
-
while (1) {
|
|
584
|
-
switch (_context.prev = _context.next) {
|
|
585
|
-
case 0:
|
|
586
|
-
signer = _ref.signer, comptrollerProxy = _ref.comptrollerProxy, externalPositionManager = _ref.externalPositionManager, externalPositionProxy = _ref.externalPositionProxy, actionId = _ref.actionId, actionArgs = _ref.actionArgs;
|
|
587
|
-
callArgs = protocol.callOnExternalPositionArgs({
|
|
588
|
-
actionArgs: actionArgs,
|
|
589
|
-
actionId: actionId,
|
|
590
|
-
externalPositionProxy: externalPositionProxy
|
|
591
|
-
});
|
|
592
|
-
return _context.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.CallOnExternalPosition, callArgs));
|
|
593
|
-
|
|
594
|
-
case 3:
|
|
595
|
-
case "end":
|
|
596
|
-
return _context.stop();
|
|
597
|
-
}
|
|
598
|
-
}
|
|
599
|
-
}, _callee);
|
|
600
|
-
}));
|
|
601
|
-
return _callOnExternalPosition.apply(this, arguments);
|
|
602
|
-
}
|
|
603
|
-
|
|
604
|
-
function createExternalPosition(_x2) {
|
|
605
|
-
return _createExternalPosition.apply(this, arguments);
|
|
606
|
-
}
|
|
607
|
-
|
|
608
|
-
function _createExternalPosition() {
|
|
609
|
-
_createExternalPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
610
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionTypeId, _ref2$initializationD, initializationData, _ref2$callOnExternalP, callOnExternalPositionData, receipt, event, externalPositionProxy;
|
|
611
|
-
|
|
612
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
613
|
-
while (1) {
|
|
614
|
-
switch (_context2.prev = _context2.next) {
|
|
615
|
-
case 0:
|
|
616
|
-
signer = _ref2.signer, comptrollerProxy = _ref2.comptrollerProxy, externalPositionManager = _ref2.externalPositionManager, externalPositionTypeId = _ref2.externalPositionTypeId, _ref2$initializationD = _ref2.initializationData, initializationData = _ref2$initializationD === void 0 ? '0x' : _ref2$initializationD, _ref2$callOnExternalP = _ref2.callOnExternalPositionData, callOnExternalPositionData = _ref2$callOnExternalP === void 0 ? '0x' : _ref2$callOnExternalP;
|
|
617
|
-
_context2.next = 3;
|
|
618
|
-
return comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.CreateExternalPosition, protocol.encodeArgs(['uint256', 'bytes', 'bytes'], [externalPositionTypeId, initializationData, callOnExternalPositionData]));
|
|
619
|
-
|
|
620
|
-
case 3:
|
|
621
|
-
receipt = _context2.sent;
|
|
622
|
-
event = ethers$1.extractEvent(receipt, externalPositionManager.abi.getEvent('ExternalPositionDeployedForFund'));
|
|
623
|
-
externalPositionProxy = new protocol.IExternalPositionProxy(event[0].args.externalPosition, signer);
|
|
624
|
-
return _context2.abrupt("return", {
|
|
625
|
-
externalPositionProxy: externalPositionProxy,
|
|
626
|
-
receipt: receipt
|
|
627
|
-
});
|
|
628
|
-
|
|
629
|
-
case 7:
|
|
630
|
-
case "end":
|
|
631
|
-
return _context2.stop();
|
|
632
|
-
}
|
|
633
|
-
}
|
|
634
|
-
}, _callee2);
|
|
635
|
-
}));
|
|
636
|
-
return _createExternalPosition.apply(this, arguments);
|
|
637
|
-
}
|
|
638
|
-
|
|
639
|
-
function reactivateExternalPosition(_x3) {
|
|
640
|
-
return _reactivateExternalPosition.apply(this, arguments);
|
|
641
|
-
}
|
|
642
|
-
|
|
643
|
-
function _reactivateExternalPosition() {
|
|
644
|
-
_reactivateExternalPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
645
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, callArgs;
|
|
646
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
647
|
-
while (1) {
|
|
648
|
-
switch (_context3.prev = _context3.next) {
|
|
649
|
-
case 0:
|
|
650
|
-
signer = _ref3.signer, comptrollerProxy = _ref3.comptrollerProxy, externalPositionManager = _ref3.externalPositionManager, externalPositionProxy = _ref3.externalPositionProxy;
|
|
651
|
-
callArgs = protocol.externalPositionReactivateArgs({
|
|
652
|
-
externalPositionProxy: externalPositionProxy
|
|
653
|
-
});
|
|
654
|
-
return _context3.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.ReactivateExternalPosition, callArgs));
|
|
655
|
-
|
|
656
|
-
case 3:
|
|
657
|
-
case "end":
|
|
658
|
-
return _context3.stop();
|
|
659
|
-
}
|
|
660
|
-
}
|
|
661
|
-
}, _callee3);
|
|
662
|
-
}));
|
|
663
|
-
return _reactivateExternalPosition.apply(this, arguments);
|
|
664
|
-
}
|
|
665
|
-
|
|
666
|
-
function removeExternalPosition(_x4) {
|
|
667
|
-
return _removeExternalPosition.apply(this, arguments);
|
|
668
|
-
}
|
|
669
|
-
|
|
670
|
-
function _removeExternalPosition() {
|
|
671
|
-
_removeExternalPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref4) {
|
|
672
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, callArgs;
|
|
673
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
674
|
-
while (1) {
|
|
675
|
-
switch (_context4.prev = _context4.next) {
|
|
676
|
-
case 0:
|
|
677
|
-
signer = _ref4.signer, comptrollerProxy = _ref4.comptrollerProxy, externalPositionManager = _ref4.externalPositionManager, externalPositionProxy = _ref4.externalPositionProxy;
|
|
678
|
-
callArgs = protocol.externalPositionRemoveArgs({
|
|
679
|
-
externalPositionProxy: externalPositionProxy
|
|
680
|
-
});
|
|
681
|
-
return _context4.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.RemoveExternalPosition, callArgs));
|
|
682
|
-
|
|
683
|
-
case 3:
|
|
684
|
-
case "end":
|
|
685
|
-
return _context4.stop();
|
|
686
|
-
}
|
|
687
|
-
}
|
|
688
|
-
}, _callee4);
|
|
689
|
-
}));
|
|
690
|
-
return _removeExternalPosition.apply(this, arguments);
|
|
691
|
-
}
|
|
692
|
-
|
|
693
|
-
function compoundDebtPositionAddCollateral(_x) {
|
|
694
|
-
return _compoundDebtPositionAddCollateral.apply(this, arguments);
|
|
695
|
-
}
|
|
696
|
-
|
|
697
|
-
function _compoundDebtPositionAddCollateral() {
|
|
698
|
-
_compoundDebtPositionAddCollateral = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
699
|
-
var comptrollerProxy, externalPositionManager, fundOwner, assets, amounts, externalPositionProxy, cTokens, actionArgs;
|
|
700
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
701
|
-
while (1) {
|
|
702
|
-
switch (_context.prev = _context.next) {
|
|
703
|
-
case 0:
|
|
704
|
-
comptrollerProxy = _ref.comptrollerProxy, externalPositionManager = _ref.externalPositionManager, fundOwner = _ref.fundOwner, assets = _ref.assets, amounts = _ref.amounts, externalPositionProxy = _ref.externalPositionProxy, cTokens = _ref.cTokens;
|
|
705
|
-
actionArgs = protocol.compoundExternalPositionActionArgs({
|
|
706
|
-
amounts: amounts,
|
|
707
|
-
assets: assets,
|
|
708
|
-
data: protocol.encodeArgs(['address[]'], [cTokens])
|
|
709
|
-
});
|
|
710
|
-
return _context.abrupt("return", callOnExternalPosition({
|
|
711
|
-
actionArgs: actionArgs,
|
|
712
|
-
actionId: protocol.CompoundDebtPositionActionId.AddCollateralAssets,
|
|
713
|
-
comptrollerProxy: comptrollerProxy,
|
|
714
|
-
externalPositionManager: externalPositionManager,
|
|
715
|
-
externalPositionProxy: externalPositionProxy,
|
|
716
|
-
signer: fundOwner
|
|
717
|
-
}));
|
|
718
|
-
|
|
719
|
-
case 3:
|
|
720
|
-
case "end":
|
|
721
|
-
return _context.stop();
|
|
722
|
-
}
|
|
723
|
-
}
|
|
724
|
-
}, _callee);
|
|
725
|
-
}));
|
|
726
|
-
return _compoundDebtPositionAddCollateral.apply(this, arguments);
|
|
727
|
-
}
|
|
728
|
-
|
|
729
|
-
function compoundDebtPositionBorrow(_x2) {
|
|
730
|
-
return _compoundDebtPositionBorrow.apply(this, arguments);
|
|
731
|
-
}
|
|
732
|
-
|
|
733
|
-
function _compoundDebtPositionBorrow() {
|
|
734
|
-
_compoundDebtPositionBorrow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
735
|
-
var comptrollerProxy, externalPositionManager, fundOwner, externalPositionProxy, assets, amounts, cTokens, actionArgs;
|
|
736
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
737
|
-
while (1) {
|
|
738
|
-
switch (_context2.prev = _context2.next) {
|
|
739
|
-
case 0:
|
|
740
|
-
comptrollerProxy = _ref2.comptrollerProxy, externalPositionManager = _ref2.externalPositionManager, fundOwner = _ref2.fundOwner, externalPositionProxy = _ref2.externalPositionProxy, assets = _ref2.assets, amounts = _ref2.amounts, cTokens = _ref2.cTokens;
|
|
741
|
-
actionArgs = protocol.compoundExternalPositionActionArgs({
|
|
742
|
-
amounts: amounts,
|
|
743
|
-
assets: assets,
|
|
744
|
-
data: protocol.encodeArgs(['address[]'], [cTokens])
|
|
745
|
-
});
|
|
746
|
-
return _context2.abrupt("return", callOnExternalPosition({
|
|
747
|
-
actionArgs: actionArgs,
|
|
748
|
-
actionId: protocol.CompoundDebtPositionActionId.BorrowAsset,
|
|
749
|
-
comptrollerProxy: comptrollerProxy,
|
|
750
|
-
externalPositionManager: externalPositionManager,
|
|
751
|
-
externalPositionProxy: externalPositionProxy,
|
|
752
|
-
signer: fundOwner
|
|
753
|
-
}));
|
|
754
|
-
|
|
755
|
-
case 3:
|
|
756
|
-
case "end":
|
|
757
|
-
return _context2.stop();
|
|
758
|
-
}
|
|
759
|
-
}
|
|
760
|
-
}, _callee2);
|
|
761
|
-
}));
|
|
762
|
-
return _compoundDebtPositionBorrow.apply(this, arguments);
|
|
763
|
-
}
|
|
764
|
-
|
|
765
|
-
function compoundDebtPositionClaimComp(_x3) {
|
|
766
|
-
return _compoundDebtPositionClaimComp.apply(this, arguments);
|
|
767
|
-
}
|
|
768
|
-
|
|
769
|
-
function _compoundDebtPositionClaimComp() {
|
|
770
|
-
_compoundDebtPositionClaimComp = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
771
|
-
var comptrollerProxy, externalPositionManager, fundOwner, externalPositionProxy, actionArgs;
|
|
772
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
773
|
-
while (1) {
|
|
774
|
-
switch (_context3.prev = _context3.next) {
|
|
775
|
-
case 0:
|
|
776
|
-
comptrollerProxy = _ref3.comptrollerProxy, externalPositionManager = _ref3.externalPositionManager, fundOwner = _ref3.fundOwner, externalPositionProxy = _ref3.externalPositionProxy;
|
|
777
|
-
actionArgs = protocol.compoundExternalPositionActionArgs({
|
|
778
|
-
amounts: [],
|
|
779
|
-
assets: [],
|
|
780
|
-
data: '0x'
|
|
781
|
-
});
|
|
782
|
-
return _context3.abrupt("return", callOnExternalPosition({
|
|
783
|
-
actionArgs: actionArgs,
|
|
784
|
-
actionId: protocol.CompoundDebtPositionActionId.ClaimComp,
|
|
785
|
-
comptrollerProxy: comptrollerProxy,
|
|
786
|
-
externalPositionManager: externalPositionManager,
|
|
787
|
-
externalPositionProxy: externalPositionProxy,
|
|
788
|
-
signer: fundOwner
|
|
789
|
-
}));
|
|
790
|
-
|
|
791
|
-
case 3:
|
|
792
|
-
case "end":
|
|
793
|
-
return _context3.stop();
|
|
794
|
-
}
|
|
795
|
-
}
|
|
796
|
-
}, _callee3);
|
|
797
|
-
}));
|
|
798
|
-
return _compoundDebtPositionClaimComp.apply(this, arguments);
|
|
799
|
-
}
|
|
800
|
-
|
|
801
|
-
function compoundDebtPositionRemoveCollateral(_x4) {
|
|
802
|
-
return _compoundDebtPositionRemoveCollateral.apply(this, arguments);
|
|
803
|
-
}
|
|
804
|
-
|
|
805
|
-
function _compoundDebtPositionRemoveCollateral() {
|
|
806
|
-
_compoundDebtPositionRemoveCollateral = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref4) {
|
|
807
|
-
var comptrollerProxy, externalPositionManager, fundOwner, assets, amounts, externalPositionProxy, cTokens, actionArgs;
|
|
808
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
809
|
-
while (1) {
|
|
810
|
-
switch (_context4.prev = _context4.next) {
|
|
811
|
-
case 0:
|
|
812
|
-
comptrollerProxy = _ref4.comptrollerProxy, externalPositionManager = _ref4.externalPositionManager, fundOwner = _ref4.fundOwner, assets = _ref4.assets, amounts = _ref4.amounts, externalPositionProxy = _ref4.externalPositionProxy, cTokens = _ref4.cTokens;
|
|
813
|
-
actionArgs = protocol.compoundExternalPositionActionArgs({
|
|
814
|
-
amounts: amounts,
|
|
815
|
-
assets: assets,
|
|
816
|
-
data: protocol.encodeArgs(['address[]'], [cTokens])
|
|
817
|
-
});
|
|
818
|
-
return _context4.abrupt("return", callOnExternalPosition({
|
|
819
|
-
actionArgs: actionArgs,
|
|
820
|
-
actionId: protocol.CompoundDebtPositionActionId.RemoveCollateralAssets,
|
|
821
|
-
comptrollerProxy: comptrollerProxy,
|
|
822
|
-
externalPositionManager: externalPositionManager,
|
|
823
|
-
externalPositionProxy: externalPositionProxy,
|
|
824
|
-
signer: fundOwner
|
|
825
|
-
}));
|
|
826
|
-
|
|
827
|
-
case 3:
|
|
828
|
-
case "end":
|
|
829
|
-
return _context4.stop();
|
|
830
|
-
}
|
|
831
|
-
}
|
|
832
|
-
}, _callee4);
|
|
833
|
-
}));
|
|
834
|
-
return _compoundDebtPositionRemoveCollateral.apply(this, arguments);
|
|
835
|
-
}
|
|
836
|
-
|
|
837
|
-
function compoundDebtPositionRepayBorrow(_x5) {
|
|
838
|
-
return _compoundDebtPositionRepayBorrow.apply(this, arguments);
|
|
839
|
-
}
|
|
840
|
-
|
|
841
|
-
function _compoundDebtPositionRepayBorrow() {
|
|
842
|
-
_compoundDebtPositionRepayBorrow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(_ref5) {
|
|
843
|
-
var comptrollerProxy, externalPositionManager, fundOwner, assets, amounts, externalPositionProxy, cTokens, actionArgs;
|
|
844
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
845
|
-
while (1) {
|
|
846
|
-
switch (_context5.prev = _context5.next) {
|
|
847
|
-
case 0:
|
|
848
|
-
comptrollerProxy = _ref5.comptrollerProxy, externalPositionManager = _ref5.externalPositionManager, fundOwner = _ref5.fundOwner, assets = _ref5.assets, amounts = _ref5.amounts, externalPositionProxy = _ref5.externalPositionProxy, cTokens = _ref5.cTokens;
|
|
849
|
-
actionArgs = protocol.compoundExternalPositionActionArgs({
|
|
850
|
-
amounts: amounts,
|
|
851
|
-
assets: assets,
|
|
852
|
-
data: protocol.encodeArgs(['address[]'], [cTokens])
|
|
853
|
-
});
|
|
854
|
-
return _context5.abrupt("return", callOnExternalPosition({
|
|
855
|
-
actionArgs: actionArgs,
|
|
856
|
-
actionId: protocol.CompoundDebtPositionActionId.RepayBorrowedAssets,
|
|
857
|
-
comptrollerProxy: comptrollerProxy,
|
|
858
|
-
externalPositionManager: externalPositionManager,
|
|
859
|
-
externalPositionProxy: externalPositionProxy,
|
|
860
|
-
signer: fundOwner
|
|
861
|
-
}));
|
|
862
|
-
|
|
863
|
-
case 3:
|
|
864
|
-
case "end":
|
|
865
|
-
return _context5.stop();
|
|
866
|
-
}
|
|
867
|
-
}
|
|
868
|
-
}, _callee5);
|
|
869
|
-
}));
|
|
870
|
-
return _compoundDebtPositionRepayBorrow.apply(this, arguments);
|
|
871
|
-
}
|
|
872
|
-
|
|
873
|
-
function createCompoundDebtPosition(_x6) {
|
|
874
|
-
return _createCompoundDebtPosition.apply(this, arguments);
|
|
875
|
-
}
|
|
876
|
-
|
|
877
|
-
function _createCompoundDebtPosition() {
|
|
878
|
-
_createCompoundDebtPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee6(_ref6) {
|
|
879
|
-
var signer, comptrollerProxy, externalPositionManager;
|
|
880
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee6$(_context6) {
|
|
881
|
-
while (1) {
|
|
882
|
-
switch (_context6.prev = _context6.next) {
|
|
883
|
-
case 0:
|
|
884
|
-
signer = _ref6.signer, comptrollerProxy = _ref6.comptrollerProxy, externalPositionManager = _ref6.externalPositionManager;
|
|
885
|
-
return _context6.abrupt("return", createExternalPosition({
|
|
886
|
-
comptrollerProxy: comptrollerProxy,
|
|
887
|
-
externalPositionManager: externalPositionManager,
|
|
888
|
-
externalPositionTypeId: protocol.ExternalPositionType.CompoundDebtPosition,
|
|
889
|
-
signer: signer
|
|
890
|
-
}));
|
|
891
|
-
|
|
892
|
-
case 2:
|
|
893
|
-
case "end":
|
|
894
|
-
return _context6.stop();
|
|
895
|
-
}
|
|
896
|
-
}
|
|
897
|
-
}, _callee6);
|
|
898
|
-
}));
|
|
899
|
-
return _createCompoundDebtPosition.apply(this, arguments);
|
|
900
|
-
}
|
|
901
|
-
|
|
902
|
-
function createMockExternalPosition(_x) {
|
|
903
|
-
return _createMockExternalPosition.apply(this, arguments);
|
|
904
|
-
}
|
|
905
|
-
|
|
906
|
-
function _createMockExternalPosition() {
|
|
907
|
-
_createMockExternalPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
908
|
-
var comptrollerProxy, externalPositionManager, externalPositionFactory, defaultActionAssetsToTransfer, defaultActionAmountsToTransfer, defaultActionAssetsToReceive, fundOwner, deployer, vaultProxy, typeId, mockGenericExternalPositionLib, mockExternalPositionParser, receipt, externalPositionProxy;
|
|
909
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
910
|
-
while (1) {
|
|
911
|
-
switch (_context.prev = _context.next) {
|
|
912
|
-
case 0:
|
|
913
|
-
comptrollerProxy = _ref.comptrollerProxy, externalPositionManager = _ref.externalPositionManager, externalPositionFactory = _ref.externalPositionFactory, defaultActionAssetsToTransfer = _ref.defaultActionAssetsToTransfer, defaultActionAmountsToTransfer = _ref.defaultActionAmountsToTransfer, defaultActionAssetsToReceive = _ref.defaultActionAssetsToReceive, fundOwner = _ref.fundOwner, deployer = _ref.deployer;
|
|
914
|
-
_context.t0 = protocol.VaultLib;
|
|
915
|
-
_context.next = 4;
|
|
916
|
-
return comptrollerProxy.getVaultProxy();
|
|
917
|
-
|
|
918
|
-
case 4:
|
|
919
|
-
_context.t1 = _context.sent;
|
|
920
|
-
_context.t2 = deployer;
|
|
921
|
-
vaultProxy = new _context.t0(_context.t1, _context.t2);
|
|
922
|
-
_context.next = 9;
|
|
923
|
-
return externalPositionFactory.getPositionTypeCounter();
|
|
924
|
-
|
|
925
|
-
case 9:
|
|
926
|
-
typeId = _context.sent;
|
|
927
|
-
_context.next = 12;
|
|
928
|
-
return externalPositionFactory.addNewPositionTypes(['TEST']);
|
|
929
|
-
|
|
930
|
-
case 12:
|
|
931
|
-
_context.next = 14;
|
|
932
|
-
return protocol.MockGenericExternalPositionLib.deploy(deployer);
|
|
933
|
-
|
|
934
|
-
case 14:
|
|
935
|
-
mockGenericExternalPositionLib = _context.sent;
|
|
936
|
-
_context.next = 17;
|
|
937
|
-
return protocol.MockGenericExternalPositionParser.deploy(deployer);
|
|
938
|
-
|
|
939
|
-
case 17:
|
|
940
|
-
mockExternalPositionParser = _context.sent;
|
|
941
|
-
mockExternalPositionParser.setAssetsForAction(0, defaultActionAssetsToTransfer, defaultActionAmountsToTransfer, defaultActionAssetsToReceive);
|
|
942
|
-
_context.next = 21;
|
|
943
|
-
return externalPositionManager.updateExternalPositionTypesInfo([typeId], [mockGenericExternalPositionLib], [mockExternalPositionParser]);
|
|
944
|
-
|
|
945
|
-
case 21:
|
|
946
|
-
_context.next = 23;
|
|
947
|
-
return createExternalPosition({
|
|
948
|
-
comptrollerProxy: comptrollerProxy,
|
|
949
|
-
externalPositionManager: externalPositionManager,
|
|
950
|
-
externalPositionTypeId: typeId,
|
|
951
|
-
signer: fundOwner
|
|
952
|
-
});
|
|
953
|
-
|
|
954
|
-
case 23:
|
|
955
|
-
receipt = _context.sent;
|
|
956
|
-
_context.next = 26;
|
|
957
|
-
return vaultProxy.getActiveExternalPositions();
|
|
958
|
-
|
|
959
|
-
case 26:
|
|
960
|
-
externalPositionProxy = _context.sent[0];
|
|
961
|
-
return _context.abrupt("return", {
|
|
962
|
-
externalPositionProxy: externalPositionProxy,
|
|
963
|
-
mockExternalPositionParser: mockExternalPositionParser,
|
|
964
|
-
mockGenericExternalPositionLib: mockGenericExternalPositionLib,
|
|
965
|
-
receipt: receipt,
|
|
966
|
-
typeId: typeId
|
|
967
|
-
});
|
|
968
|
-
|
|
969
|
-
case 28:
|
|
970
|
-
case "end":
|
|
971
|
-
return _context.stop();
|
|
972
|
-
}
|
|
973
|
-
}
|
|
974
|
-
}, _callee);
|
|
975
|
-
}));
|
|
976
|
-
return _createMockExternalPosition.apply(this, arguments);
|
|
977
|
-
}
|
|
978
|
-
|
|
979
|
-
function mockExternalPositionAddDebtAssets(_x2) {
|
|
980
|
-
return _mockExternalPositionAddDebtAssets.apply(this, arguments);
|
|
981
|
-
}
|
|
982
|
-
|
|
983
|
-
function _mockExternalPositionAddDebtAssets() {
|
|
984
|
-
_mockExternalPositionAddDebtAssets = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
985
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, assets, amounts, actionArgs;
|
|
986
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
987
|
-
while (1) {
|
|
988
|
-
switch (_context2.prev = _context2.next) {
|
|
989
|
-
case 0:
|
|
990
|
-
signer = _ref2.signer, comptrollerProxy = _ref2.comptrollerProxy, externalPositionManager = _ref2.externalPositionManager, externalPositionProxy = _ref2.externalPositionProxy, assets = _ref2.assets, amounts = _ref2.amounts;
|
|
991
|
-
actionArgs = protocol.mockGenericExternalPositionActionArgs({
|
|
992
|
-
amounts: amounts,
|
|
993
|
-
assets: assets
|
|
994
|
-
});
|
|
995
|
-
return _context2.abrupt("return", callOnExternalPosition({
|
|
996
|
-
actionArgs: actionArgs,
|
|
997
|
-
actionId: protocol.MockGenericExternalPositionActionId.AddDebtAssets,
|
|
998
|
-
comptrollerProxy: comptrollerProxy,
|
|
999
|
-
externalPositionManager: externalPositionManager,
|
|
1000
|
-
externalPositionProxy: externalPositionProxy,
|
|
1001
|
-
signer: signer
|
|
1002
|
-
}));
|
|
1003
|
-
|
|
1004
|
-
case 3:
|
|
1005
|
-
case "end":
|
|
1006
|
-
return _context2.stop();
|
|
1007
|
-
}
|
|
1008
|
-
}
|
|
1009
|
-
}, _callee2);
|
|
1010
|
-
}));
|
|
1011
|
-
return _mockExternalPositionAddDebtAssets.apply(this, arguments);
|
|
1012
|
-
}
|
|
1013
|
-
|
|
1014
|
-
function mockExternalPositionAddManagedAssets(_x3) {
|
|
1015
|
-
return _mockExternalPositionAddManagedAssets.apply(this, arguments);
|
|
1016
|
-
}
|
|
1017
|
-
|
|
1018
|
-
function _mockExternalPositionAddManagedAssets() {
|
|
1019
|
-
_mockExternalPositionAddManagedAssets = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
1020
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, assets, amounts, actionArgs;
|
|
1021
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
1022
|
-
while (1) {
|
|
1023
|
-
switch (_context3.prev = _context3.next) {
|
|
1024
|
-
case 0:
|
|
1025
|
-
signer = _ref3.signer, comptrollerProxy = _ref3.comptrollerProxy, externalPositionManager = _ref3.externalPositionManager, externalPositionProxy = _ref3.externalPositionProxy, assets = _ref3.assets, amounts = _ref3.amounts;
|
|
1026
|
-
actionArgs = protocol.mockGenericExternalPositionActionArgs({
|
|
1027
|
-
amounts: amounts,
|
|
1028
|
-
assets: assets
|
|
1029
|
-
});
|
|
1030
|
-
return _context3.abrupt("return", callOnExternalPosition({
|
|
1031
|
-
actionArgs: actionArgs,
|
|
1032
|
-
actionId: protocol.MockGenericExternalPositionActionId.AddManagedAssets,
|
|
1033
|
-
comptrollerProxy: comptrollerProxy,
|
|
1034
|
-
externalPositionManager: externalPositionManager,
|
|
1035
|
-
externalPositionProxy: externalPositionProxy,
|
|
1036
|
-
signer: signer
|
|
1037
|
-
}));
|
|
1038
|
-
|
|
1039
|
-
case 3:
|
|
1040
|
-
case "end":
|
|
1041
|
-
return _context3.stop();
|
|
1042
|
-
}
|
|
1043
|
-
}
|
|
1044
|
-
}, _callee3);
|
|
1045
|
-
}));
|
|
1046
|
-
return _mockExternalPositionAddManagedAssets.apply(this, arguments);
|
|
1047
|
-
}
|
|
1048
|
-
|
|
1049
|
-
function mockExternalPositionRemoveDebtAssets(_x4) {
|
|
1050
|
-
return _mockExternalPositionRemoveDebtAssets.apply(this, arguments);
|
|
1051
|
-
}
|
|
1052
|
-
|
|
1053
|
-
function _mockExternalPositionRemoveDebtAssets() {
|
|
1054
|
-
_mockExternalPositionRemoveDebtAssets = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref4) {
|
|
1055
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, assets, amounts, actionArgs;
|
|
1056
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
1057
|
-
while (1) {
|
|
1058
|
-
switch (_context4.prev = _context4.next) {
|
|
1059
|
-
case 0:
|
|
1060
|
-
signer = _ref4.signer, comptrollerProxy = _ref4.comptrollerProxy, externalPositionManager = _ref4.externalPositionManager, externalPositionProxy = _ref4.externalPositionProxy, assets = _ref4.assets, amounts = _ref4.amounts;
|
|
1061
|
-
actionArgs = protocol.mockGenericExternalPositionActionArgs({
|
|
1062
|
-
amounts: amounts,
|
|
1063
|
-
assets: assets
|
|
1064
|
-
});
|
|
1065
|
-
return _context4.abrupt("return", callOnExternalPosition({
|
|
1066
|
-
actionArgs: actionArgs,
|
|
1067
|
-
actionId: protocol.MockGenericExternalPositionActionId.RemoveDebtAssets,
|
|
1068
|
-
comptrollerProxy: comptrollerProxy,
|
|
1069
|
-
externalPositionManager: externalPositionManager,
|
|
1070
|
-
externalPositionProxy: externalPositionProxy,
|
|
1071
|
-
signer: signer
|
|
1072
|
-
}));
|
|
1073
|
-
|
|
1074
|
-
case 3:
|
|
1075
|
-
case "end":
|
|
1076
|
-
return _context4.stop();
|
|
1077
|
-
}
|
|
1078
|
-
}
|
|
1079
|
-
}, _callee4);
|
|
1080
|
-
}));
|
|
1081
|
-
return _mockExternalPositionRemoveDebtAssets.apply(this, arguments);
|
|
1082
|
-
}
|
|
1083
|
-
|
|
1084
|
-
function mockExternalPositionRemoveManagedAssets(_x5) {
|
|
1085
|
-
return _mockExternalPositionRemoveManagedAssets.apply(this, arguments);
|
|
1086
|
-
}
|
|
1087
|
-
|
|
1088
|
-
function _mockExternalPositionRemoveManagedAssets() {
|
|
1089
|
-
_mockExternalPositionRemoveManagedAssets = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(_ref5) {
|
|
1090
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, assets, amounts, actionArgs;
|
|
1091
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
1092
|
-
while (1) {
|
|
1093
|
-
switch (_context5.prev = _context5.next) {
|
|
1094
|
-
case 0:
|
|
1095
|
-
signer = _ref5.signer, comptrollerProxy = _ref5.comptrollerProxy, externalPositionManager = _ref5.externalPositionManager, externalPositionProxy = _ref5.externalPositionProxy, assets = _ref5.assets, amounts = _ref5.amounts;
|
|
1096
|
-
actionArgs = protocol.mockGenericExternalPositionActionArgs({
|
|
1097
|
-
amounts: amounts,
|
|
1098
|
-
assets: assets
|
|
1099
|
-
});
|
|
1100
|
-
return _context5.abrupt("return", callOnExternalPosition({
|
|
1101
|
-
actionArgs: actionArgs,
|
|
1102
|
-
actionId: protocol.MockGenericExternalPositionActionId.RemoveManagedAssets,
|
|
1103
|
-
comptrollerProxy: comptrollerProxy,
|
|
1104
|
-
externalPositionManager: externalPositionManager,
|
|
1105
|
-
externalPositionProxy: externalPositionProxy,
|
|
1106
|
-
signer: signer
|
|
1107
|
-
}));
|
|
1108
|
-
|
|
1109
|
-
case 3:
|
|
1110
|
-
case "end":
|
|
1111
|
-
return _context5.stop();
|
|
1112
|
-
}
|
|
1113
|
-
}
|
|
1114
|
-
}, _callee5);
|
|
1115
|
-
}));
|
|
1116
|
-
return _mockExternalPositionRemoveManagedAssets.apply(this, arguments);
|
|
1117
|
-
}
|
|
1118
|
-
|
|
1119
|
-
function aaveDebtPositionAddCollateral(_x) {
|
|
1120
|
-
return _aaveDebtPositionAddCollateral.apply(this, arguments);
|
|
1121
|
-
}
|
|
1122
|
-
|
|
1123
|
-
function _aaveDebtPositionAddCollateral() {
|
|
1124
|
-
_aaveDebtPositionAddCollateral = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
1125
|
-
var comptrollerProxy, externalPositionManager, signer, aTokens, amounts, externalPositionProxy, actionArgs;
|
|
1126
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
1127
|
-
while (1) {
|
|
1128
|
-
switch (_context.prev = _context.next) {
|
|
1129
|
-
case 0:
|
|
1130
|
-
comptrollerProxy = _ref.comptrollerProxy, externalPositionManager = _ref.externalPositionManager, signer = _ref.signer, aTokens = _ref.aTokens, amounts = _ref.amounts, externalPositionProxy = _ref.externalPositionProxy;
|
|
1131
|
-
actionArgs = protocol.aaveDebtPositionAddCollateralArgs({
|
|
1132
|
-
aTokens: aTokens,
|
|
1133
|
-
amounts: amounts
|
|
1134
|
-
});
|
|
1135
|
-
return _context.abrupt("return", callOnExternalPosition({
|
|
1136
|
-
actionArgs: actionArgs,
|
|
1137
|
-
actionId: protocol.AaveDebtPositionActionId.AddCollateralAssets,
|
|
1138
|
-
comptrollerProxy: comptrollerProxy,
|
|
1139
|
-
externalPositionManager: externalPositionManager,
|
|
1140
|
-
externalPositionProxy: externalPositionProxy,
|
|
1141
|
-
signer: signer
|
|
1142
|
-
}));
|
|
1143
|
-
|
|
1144
|
-
case 3:
|
|
1145
|
-
case "end":
|
|
1146
|
-
return _context.stop();
|
|
1147
|
-
}
|
|
1148
|
-
}
|
|
1149
|
-
}, _callee);
|
|
1150
|
-
}));
|
|
1151
|
-
return _aaveDebtPositionAddCollateral.apply(this, arguments);
|
|
1152
|
-
}
|
|
1153
|
-
|
|
1154
|
-
function aaveDebtPositionBorrow(_x2) {
|
|
1155
|
-
return _aaveDebtPositionBorrow.apply(this, arguments);
|
|
1156
|
-
}
|
|
1157
|
-
|
|
1158
|
-
function _aaveDebtPositionBorrow() {
|
|
1159
|
-
_aaveDebtPositionBorrow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
1160
|
-
var comptrollerProxy, externalPositionManager, signer, tokens, amounts, externalPositionProxy, actionArgs;
|
|
1161
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
1162
|
-
while (1) {
|
|
1163
|
-
switch (_context2.prev = _context2.next) {
|
|
1164
|
-
case 0:
|
|
1165
|
-
comptrollerProxy = _ref2.comptrollerProxy, externalPositionManager = _ref2.externalPositionManager, signer = _ref2.signer, tokens = _ref2.tokens, amounts = _ref2.amounts, externalPositionProxy = _ref2.externalPositionProxy;
|
|
1166
|
-
actionArgs = protocol.aaveDebtPositionBorrowArgs({
|
|
1167
|
-
amounts: amounts,
|
|
1168
|
-
tokens: tokens
|
|
1169
|
-
});
|
|
1170
|
-
return _context2.abrupt("return", callOnExternalPosition({
|
|
1171
|
-
actionArgs: actionArgs,
|
|
1172
|
-
actionId: protocol.AaveDebtPositionActionId.BorrowAsset,
|
|
1173
|
-
comptrollerProxy: comptrollerProxy,
|
|
1174
|
-
externalPositionManager: externalPositionManager,
|
|
1175
|
-
externalPositionProxy: externalPositionProxy,
|
|
1176
|
-
signer: signer
|
|
1177
|
-
}));
|
|
1178
|
-
|
|
1179
|
-
case 3:
|
|
1180
|
-
case "end":
|
|
1181
|
-
return _context2.stop();
|
|
1182
|
-
}
|
|
1183
|
-
}
|
|
1184
|
-
}, _callee2);
|
|
1185
|
-
}));
|
|
1186
|
-
return _aaveDebtPositionBorrow.apply(this, arguments);
|
|
1187
|
-
}
|
|
1188
|
-
|
|
1189
|
-
function aaveDebtPositionClaimRewards(_x3) {
|
|
1190
|
-
return _aaveDebtPositionClaimRewards.apply(this, arguments);
|
|
1191
|
-
}
|
|
1192
|
-
|
|
1193
|
-
function _aaveDebtPositionClaimRewards() {
|
|
1194
|
-
_aaveDebtPositionClaimRewards = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
1195
|
-
var comptrollerProxy, externalPositionManager, signer, assets, externalPositionProxy, actionArgs;
|
|
1196
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
1197
|
-
while (1) {
|
|
1198
|
-
switch (_context3.prev = _context3.next) {
|
|
1199
|
-
case 0:
|
|
1200
|
-
comptrollerProxy = _ref3.comptrollerProxy, externalPositionManager = _ref3.externalPositionManager, signer = _ref3.signer, assets = _ref3.assets, externalPositionProxy = _ref3.externalPositionProxy;
|
|
1201
|
-
actionArgs = protocol.aaveDebtPositionClaimRewardsArgs({
|
|
1202
|
-
assets: assets
|
|
1203
|
-
});
|
|
1204
|
-
return _context3.abrupt("return", callOnExternalPosition({
|
|
1205
|
-
actionArgs: actionArgs,
|
|
1206
|
-
actionId: protocol.AaveDebtPositionActionId.ClaimRewards,
|
|
1207
|
-
comptrollerProxy: comptrollerProxy,
|
|
1208
|
-
externalPositionManager: externalPositionManager,
|
|
1209
|
-
externalPositionProxy: externalPositionProxy,
|
|
1210
|
-
signer: signer
|
|
1211
|
-
}));
|
|
1212
|
-
|
|
1213
|
-
case 3:
|
|
1214
|
-
case "end":
|
|
1215
|
-
return _context3.stop();
|
|
1216
|
-
}
|
|
1217
|
-
}
|
|
1218
|
-
}, _callee3);
|
|
1219
|
-
}));
|
|
1220
|
-
return _aaveDebtPositionClaimRewards.apply(this, arguments);
|
|
1221
|
-
}
|
|
1222
|
-
|
|
1223
|
-
function aaveDebtPositionRemoveCollateral(_x4) {
|
|
1224
|
-
return _aaveDebtPositionRemoveCollateral.apply(this, arguments);
|
|
1225
|
-
}
|
|
1226
|
-
|
|
1227
|
-
function _aaveDebtPositionRemoveCollateral() {
|
|
1228
|
-
_aaveDebtPositionRemoveCollateral = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref4) {
|
|
1229
|
-
var comptrollerProxy, externalPositionManager, signer, aTokens, amounts, externalPositionProxy, actionArgs;
|
|
1230
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
1231
|
-
while (1) {
|
|
1232
|
-
switch (_context4.prev = _context4.next) {
|
|
1233
|
-
case 0:
|
|
1234
|
-
comptrollerProxy = _ref4.comptrollerProxy, externalPositionManager = _ref4.externalPositionManager, signer = _ref4.signer, aTokens = _ref4.aTokens, amounts = _ref4.amounts, externalPositionProxy = _ref4.externalPositionProxy;
|
|
1235
|
-
actionArgs = protocol.aaveDebtPositionRemoveCollateralArgs({
|
|
1236
|
-
aTokens: aTokens,
|
|
1237
|
-
amounts: amounts
|
|
1238
|
-
});
|
|
1239
|
-
return _context4.abrupt("return", callOnExternalPosition({
|
|
1240
|
-
actionArgs: actionArgs,
|
|
1241
|
-
actionId: protocol.AaveDebtPositionActionId.RemoveCollateralAssets,
|
|
1242
|
-
comptrollerProxy: comptrollerProxy,
|
|
1243
|
-
externalPositionManager: externalPositionManager,
|
|
1244
|
-
externalPositionProxy: externalPositionProxy,
|
|
1245
|
-
signer: signer
|
|
1246
|
-
}));
|
|
1247
|
-
|
|
1248
|
-
case 3:
|
|
1249
|
-
case "end":
|
|
1250
|
-
return _context4.stop();
|
|
1251
|
-
}
|
|
1252
|
-
}
|
|
1253
|
-
}, _callee4);
|
|
1254
|
-
}));
|
|
1255
|
-
return _aaveDebtPositionRemoveCollateral.apply(this, arguments);
|
|
1256
|
-
}
|
|
1257
|
-
|
|
1258
|
-
function aaveDebtPositionRepayBorrow(_x5) {
|
|
1259
|
-
return _aaveDebtPositionRepayBorrow.apply(this, arguments);
|
|
1260
|
-
}
|
|
1261
|
-
|
|
1262
|
-
function _aaveDebtPositionRepayBorrow() {
|
|
1263
|
-
_aaveDebtPositionRepayBorrow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(_ref5) {
|
|
1264
|
-
var comptrollerProxy, externalPositionManager, signer, tokens, amounts, externalPositionProxy, actionArgs;
|
|
1265
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
1266
|
-
while (1) {
|
|
1267
|
-
switch (_context5.prev = _context5.next) {
|
|
1268
|
-
case 0:
|
|
1269
|
-
comptrollerProxy = _ref5.comptrollerProxy, externalPositionManager = _ref5.externalPositionManager, signer = _ref5.signer, tokens = _ref5.tokens, amounts = _ref5.amounts, externalPositionProxy = _ref5.externalPositionProxy;
|
|
1270
|
-
actionArgs = protocol.aaveDebtPositionRepayBorrowArgs({
|
|
1271
|
-
amounts: amounts,
|
|
1272
|
-
tokens: tokens
|
|
1273
|
-
});
|
|
1274
|
-
return _context5.abrupt("return", callOnExternalPosition({
|
|
1275
|
-
actionArgs: actionArgs,
|
|
1276
|
-
actionId: protocol.AaveDebtPositionActionId.RepayBorrowedAssets,
|
|
1277
|
-
comptrollerProxy: comptrollerProxy,
|
|
1278
|
-
externalPositionManager: externalPositionManager,
|
|
1279
|
-
externalPositionProxy: externalPositionProxy,
|
|
1280
|
-
signer: signer
|
|
1281
|
-
}));
|
|
1282
|
-
|
|
1283
|
-
case 3:
|
|
1284
|
-
case "end":
|
|
1285
|
-
return _context5.stop();
|
|
1286
|
-
}
|
|
1287
|
-
}
|
|
1288
|
-
}, _callee5);
|
|
1289
|
-
}));
|
|
1290
|
-
return _aaveDebtPositionRepayBorrow.apply(this, arguments);
|
|
1291
|
-
}
|
|
1292
|
-
|
|
1293
|
-
function createAaveDebtPosition(_x6) {
|
|
1294
|
-
return _createAaveDebtPosition.apply(this, arguments);
|
|
1295
|
-
}
|
|
1296
|
-
|
|
1297
|
-
function _createAaveDebtPosition() {
|
|
1298
|
-
_createAaveDebtPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee6(_ref6) {
|
|
1299
|
-
var signer, comptrollerProxy, externalPositionManager;
|
|
1300
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee6$(_context6) {
|
|
1301
|
-
while (1) {
|
|
1302
|
-
switch (_context6.prev = _context6.next) {
|
|
1303
|
-
case 0:
|
|
1304
|
-
signer = _ref6.signer, comptrollerProxy = _ref6.comptrollerProxy, externalPositionManager = _ref6.externalPositionManager;
|
|
1305
|
-
return _context6.abrupt("return", createExternalPosition({
|
|
1306
|
-
comptrollerProxy: comptrollerProxy,
|
|
1307
|
-
externalPositionManager: externalPositionManager,
|
|
1308
|
-
externalPositionTypeId: protocol.ExternalPositionType.AaveDebtPosition,
|
|
1309
|
-
signer: signer
|
|
1310
|
-
}));
|
|
1311
|
-
|
|
1312
|
-
case 2:
|
|
1313
|
-
case "end":
|
|
1314
|
-
return _context6.stop();
|
|
1315
|
-
}
|
|
1316
|
-
}
|
|
1317
|
-
}, _callee6);
|
|
1318
|
-
}));
|
|
1319
|
-
return _createAaveDebtPosition.apply(this, arguments);
|
|
1320
|
-
}
|
|
1321
|
-
|
|
1322
|
-
var _templateObject$3;
|
|
1323
|
-
exports.UniswapV3FeeAmount = void 0;
|
|
1324
|
-
|
|
1325
|
-
(function (UniswapV3FeeAmount) {
|
|
1326
|
-
UniswapV3FeeAmount[UniswapV3FeeAmount["LOW"] = 500] = "LOW";
|
|
1327
|
-
UniswapV3FeeAmount[UniswapV3FeeAmount["MEDIUM"] = 3000] = "MEDIUM";
|
|
1328
|
-
UniswapV3FeeAmount[UniswapV3FeeAmount["HIGH"] = 10000] = "HIGH";
|
|
1329
|
-
})(exports.UniswapV3FeeAmount || (exports.UniswapV3FeeAmount = {}));
|
|
1330
|
-
|
|
1331
|
-
var uniswapV3LiquidityPositionGetMinTick = function uniswapV3LiquidityPositionGetMinTick(tickSpacing) {
|
|
1332
|
-
return Math.ceil(-887272 / tickSpacing) * tickSpacing;
|
|
1333
|
-
};
|
|
1334
|
-
var uniswapV3LiquidityPositionGetMaxTick = function uniswapV3LiquidityPositionGetMaxTick(tickSpacing) {
|
|
1335
|
-
return Math.floor(887272 / tickSpacing) * tickSpacing;
|
|
1336
|
-
};
|
|
1337
|
-
var IUniswapV3NonFungibleTokenManager = ethers$1.contract()(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral(["\n function positions(uint256 tokenId) view returns (uint96 nonce, address operator, address token0, address token1, uint24 fee, int24 tickLower, int24 tickUpper, uint128 liquidity, uint256 feeGrowthInside0LastX128, uint256 feeGrowthInside1LastX128, uint128 tokensOwed0, uint128 tokensOwed1)\n"])));
|
|
1338
|
-
function createUniswapV3LiquidityPosition(_x) {
|
|
1339
|
-
return _createUniswapV3LiquidityPosition.apply(this, arguments);
|
|
1340
|
-
}
|
|
1341
|
-
|
|
1342
|
-
function _createUniswapV3LiquidityPosition() {
|
|
1343
|
-
_createUniswapV3LiquidityPosition = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
1344
|
-
var signer, comptrollerProxy, externalPositionManager, _ref$callOnExternalPo, callOnExternalPositionData, _yield$createExternal, externalPositionProxyContract, receipt;
|
|
1345
|
-
|
|
1346
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
1347
|
-
while (1) {
|
|
1348
|
-
switch (_context.prev = _context.next) {
|
|
1349
|
-
case 0:
|
|
1350
|
-
signer = _ref.signer, comptrollerProxy = _ref.comptrollerProxy, externalPositionManager = _ref.externalPositionManager, _ref$callOnExternalPo = _ref.callOnExternalPositionData, callOnExternalPositionData = _ref$callOnExternalPo === void 0 ? '0x' : _ref$callOnExternalPo;
|
|
1351
|
-
_context.next = 3;
|
|
1352
|
-
return createExternalPosition({
|
|
1353
|
-
callOnExternalPositionData: callOnExternalPositionData,
|
|
1354
|
-
comptrollerProxy: comptrollerProxy,
|
|
1355
|
-
externalPositionManager: externalPositionManager,
|
|
1356
|
-
externalPositionTypeId: protocol.ExternalPositionType.UniswapV3LiquidityPosition,
|
|
1357
|
-
signer: signer
|
|
1358
|
-
});
|
|
1359
|
-
|
|
1360
|
-
case 3:
|
|
1361
|
-
_yield$createExternal = _context.sent;
|
|
1362
|
-
externalPositionProxyContract = _yield$createExternal.externalPositionProxy;
|
|
1363
|
-
receipt = _yield$createExternal.receipt;
|
|
1364
|
-
return _context.abrupt("return", {
|
|
1365
|
-
externalPositionProxyAddress: externalPositionProxyContract.address,
|
|
1366
|
-
receipt: receipt
|
|
1367
|
-
});
|
|
1368
|
-
|
|
1369
|
-
case 7:
|
|
1370
|
-
case "end":
|
|
1371
|
-
return _context.stop();
|
|
1372
|
-
}
|
|
1373
|
-
}
|
|
1374
|
-
}, _callee);
|
|
1375
|
-
}));
|
|
1376
|
-
return _createUniswapV3LiquidityPosition.apply(this, arguments);
|
|
1377
|
-
}
|
|
1378
|
-
|
|
1379
|
-
function uniswapV3LiquidityPositionAddLiquidity(_x2) {
|
|
1380
|
-
return _uniswapV3LiquidityPositionAddLiquidity.apply(this, arguments);
|
|
1381
|
-
}
|
|
1382
|
-
|
|
1383
|
-
function _uniswapV3LiquidityPositionAddLiquidity() {
|
|
1384
|
-
_uniswapV3LiquidityPositionAddLiquidity = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
1385
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, nftId, amount0Desired, amount1Desired, _ref2$amount0Min, amount0Min, _ref2$amount1Min, amount1Min, actionArgs, callArgs;
|
|
1386
|
-
|
|
1387
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
1388
|
-
while (1) {
|
|
1389
|
-
switch (_context2.prev = _context2.next) {
|
|
1390
|
-
case 0:
|
|
1391
|
-
signer = _ref2.signer, comptrollerProxy = _ref2.comptrollerProxy, externalPositionManager = _ref2.externalPositionManager, externalPositionProxy = _ref2.externalPositionProxy, nftId = _ref2.nftId, amount0Desired = _ref2.amount0Desired, amount1Desired = _ref2.amount1Desired, _ref2$amount0Min = _ref2.amount0Min, amount0Min = _ref2$amount0Min === void 0 ? 0 : _ref2$amount0Min, _ref2$amount1Min = _ref2.amount1Min, amount1Min = _ref2$amount1Min === void 0 ? 0 : _ref2$amount1Min;
|
|
1392
|
-
actionArgs = protocol.uniswapV3LiquidityPositionAddLiquidityArgs({
|
|
1393
|
-
amount0Desired: amount0Desired,
|
|
1394
|
-
amount0Min: amount0Min,
|
|
1395
|
-
amount1Desired: amount1Desired,
|
|
1396
|
-
amount1Min: amount1Min,
|
|
1397
|
-
nftId: nftId
|
|
1398
|
-
});
|
|
1399
|
-
callArgs = protocol.callOnExternalPositionArgs({
|
|
1400
|
-
actionArgs: actionArgs,
|
|
1401
|
-
actionId: protocol.UniswapV3LiquidityPositionActionId.AddLiquidity,
|
|
1402
|
-
externalPositionProxy: externalPositionProxy
|
|
1403
|
-
});
|
|
1404
|
-
return _context2.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.CallOnExternalPosition, callArgs));
|
|
1405
|
-
|
|
1406
|
-
case 4:
|
|
1407
|
-
case "end":
|
|
1408
|
-
return _context2.stop();
|
|
1409
|
-
}
|
|
1410
|
-
}
|
|
1411
|
-
}, _callee2);
|
|
1412
|
-
}));
|
|
1413
|
-
return _uniswapV3LiquidityPositionAddLiquidity.apply(this, arguments);
|
|
1414
|
-
}
|
|
1415
|
-
|
|
1416
|
-
function uniswapV3LiquidityPositionCollect(_x3) {
|
|
1417
|
-
return _uniswapV3LiquidityPositionCollect.apply(this, arguments);
|
|
1418
|
-
}
|
|
1419
|
-
|
|
1420
|
-
function _uniswapV3LiquidityPositionCollect() {
|
|
1421
|
-
_uniswapV3LiquidityPositionCollect = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
1422
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, nftId, actionArgs, callArgs;
|
|
1423
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
1424
|
-
while (1) {
|
|
1425
|
-
switch (_context3.prev = _context3.next) {
|
|
1426
|
-
case 0:
|
|
1427
|
-
signer = _ref3.signer, comptrollerProxy = _ref3.comptrollerProxy, externalPositionManager = _ref3.externalPositionManager, externalPositionProxy = _ref3.externalPositionProxy, nftId = _ref3.nftId;
|
|
1428
|
-
actionArgs = protocol.uniswapV3LiquidityPositionCollectArgs({
|
|
1429
|
-
nftId: nftId
|
|
1430
|
-
});
|
|
1431
|
-
callArgs = protocol.callOnExternalPositionArgs({
|
|
1432
|
-
actionArgs: actionArgs,
|
|
1433
|
-
actionId: protocol.UniswapV3LiquidityPositionActionId.Collect,
|
|
1434
|
-
externalPositionProxy: externalPositionProxy
|
|
1435
|
-
});
|
|
1436
|
-
return _context3.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.CallOnExternalPosition, callArgs));
|
|
1437
|
-
|
|
1438
|
-
case 4:
|
|
1439
|
-
case "end":
|
|
1440
|
-
return _context3.stop();
|
|
1441
|
-
}
|
|
1442
|
-
}
|
|
1443
|
-
}, _callee3);
|
|
1444
|
-
}));
|
|
1445
|
-
return _uniswapV3LiquidityPositionCollect.apply(this, arguments);
|
|
1446
|
-
}
|
|
1447
|
-
|
|
1448
|
-
function uniswapV3LiquidityPositionMint(_x4) {
|
|
1449
|
-
return _uniswapV3LiquidityPositionMint.apply(this, arguments);
|
|
1450
|
-
}
|
|
1451
|
-
|
|
1452
|
-
function _uniswapV3LiquidityPositionMint() {
|
|
1453
|
-
_uniswapV3LiquidityPositionMint = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref4) {
|
|
1454
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, token0, token1, fee, tickLower, tickUpper, amount0Desired, amount1Desired, _ref4$amount0Min, amount0Min, _ref4$amount1Min, amount1Min, actionArgs, callArgs, receipt, externalPosition, nftId;
|
|
1455
|
-
|
|
1456
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
1457
|
-
while (1) {
|
|
1458
|
-
switch (_context4.prev = _context4.next) {
|
|
1459
|
-
case 0:
|
|
1460
|
-
signer = _ref4.signer, comptrollerProxy = _ref4.comptrollerProxy, externalPositionManager = _ref4.externalPositionManager, externalPositionProxy = _ref4.externalPositionProxy, token0 = _ref4.token0, token1 = _ref4.token1, fee = _ref4.fee, tickLower = _ref4.tickLower, tickUpper = _ref4.tickUpper, amount0Desired = _ref4.amount0Desired, amount1Desired = _ref4.amount1Desired, _ref4$amount0Min = _ref4.amount0Min, amount0Min = _ref4$amount0Min === void 0 ? 0 : _ref4$amount0Min, _ref4$amount1Min = _ref4.amount1Min, amount1Min = _ref4$amount1Min === void 0 ? 0 : _ref4$amount1Min;
|
|
1461
|
-
actionArgs = protocol.uniswapV3LiquidityPositionMintArgs({
|
|
1462
|
-
amount0Desired: amount0Desired,
|
|
1463
|
-
amount0Min: amount0Min,
|
|
1464
|
-
amount1Desired: amount1Desired,
|
|
1465
|
-
amount1Min: amount1Min,
|
|
1466
|
-
fee: fee,
|
|
1467
|
-
tickLower: tickLower,
|
|
1468
|
-
tickUpper: tickUpper,
|
|
1469
|
-
token0: token0,
|
|
1470
|
-
token1: token1
|
|
1471
|
-
});
|
|
1472
|
-
callArgs = protocol.callOnExternalPositionArgs({
|
|
1473
|
-
actionArgs: actionArgs,
|
|
1474
|
-
actionId: protocol.UniswapV3LiquidityPositionActionId.Mint,
|
|
1475
|
-
externalPositionProxy: externalPositionProxy
|
|
1476
|
-
});
|
|
1477
|
-
_context4.next = 5;
|
|
1478
|
-
return comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.CallOnExternalPosition, callArgs);
|
|
1479
|
-
|
|
1480
|
-
case 5:
|
|
1481
|
-
receipt = _context4.sent;
|
|
1482
|
-
externalPosition = new protocol.UniswapV3LiquidityPositionLib(externalPositionProxy, provider);
|
|
1483
|
-
nftId = ethers$1.extractEvent(receipt, externalPosition.abi.getEvent('NFTPositionAdded'))[0].args.tokenId;
|
|
1484
|
-
return _context4.abrupt("return", {
|
|
1485
|
-
nftId: nftId,
|
|
1486
|
-
receipt: receipt
|
|
1487
|
-
});
|
|
1488
|
-
|
|
1489
|
-
case 9:
|
|
1490
|
-
case "end":
|
|
1491
|
-
return _context4.stop();
|
|
1492
|
-
}
|
|
1493
|
-
}
|
|
1494
|
-
}, _callee4);
|
|
1495
|
-
}));
|
|
1496
|
-
return _uniswapV3LiquidityPositionMint.apply(this, arguments);
|
|
1497
|
-
}
|
|
1498
|
-
|
|
1499
|
-
function uniswapV3LiquidityPositionPurge(_x5) {
|
|
1500
|
-
return _uniswapV3LiquidityPositionPurge.apply(this, arguments);
|
|
1501
|
-
}
|
|
1502
|
-
|
|
1503
|
-
function _uniswapV3LiquidityPositionPurge() {
|
|
1504
|
-
_uniswapV3LiquidityPositionPurge = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(_ref5) {
|
|
1505
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, nftId, liquidity, _ref5$amount0Min, amount0Min, _ref5$amount1Min, amount1Min, actionArgs, callArgs;
|
|
1506
|
-
|
|
1507
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
1508
|
-
while (1) {
|
|
1509
|
-
switch (_context5.prev = _context5.next) {
|
|
1510
|
-
case 0:
|
|
1511
|
-
signer = _ref5.signer, comptrollerProxy = _ref5.comptrollerProxy, externalPositionManager = _ref5.externalPositionManager, externalPositionProxy = _ref5.externalPositionProxy, nftId = _ref5.nftId, liquidity = _ref5.liquidity, _ref5$amount0Min = _ref5.amount0Min, amount0Min = _ref5$amount0Min === void 0 ? 0 : _ref5$amount0Min, _ref5$amount1Min = _ref5.amount1Min, amount1Min = _ref5$amount1Min === void 0 ? 0 : _ref5$amount1Min;
|
|
1512
|
-
actionArgs = protocol.uniswapV3LiquidityPositionPurgeArgs({
|
|
1513
|
-
amount0Min: amount0Min,
|
|
1514
|
-
amount1Min: amount1Min,
|
|
1515
|
-
liquidity: liquidity,
|
|
1516
|
-
nftId: nftId
|
|
1517
|
-
});
|
|
1518
|
-
callArgs = protocol.callOnExternalPositionArgs({
|
|
1519
|
-
actionArgs: actionArgs,
|
|
1520
|
-
actionId: protocol.UniswapV3LiquidityPositionActionId.Purge,
|
|
1521
|
-
externalPositionProxy: externalPositionProxy
|
|
1522
|
-
});
|
|
1523
|
-
return _context5.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.CallOnExternalPosition, callArgs));
|
|
1524
|
-
|
|
1525
|
-
case 4:
|
|
1526
|
-
case "end":
|
|
1527
|
-
return _context5.stop();
|
|
1528
|
-
}
|
|
1529
|
-
}
|
|
1530
|
-
}, _callee5);
|
|
1531
|
-
}));
|
|
1532
|
-
return _uniswapV3LiquidityPositionPurge.apply(this, arguments);
|
|
1533
|
-
}
|
|
1534
|
-
|
|
1535
|
-
function uniswapV3LiquidityPositionRemoveLiquidity(_x6) {
|
|
1536
|
-
return _uniswapV3LiquidityPositionRemoveLiquidity.apply(this, arguments);
|
|
1537
|
-
}
|
|
1538
|
-
|
|
1539
|
-
function _uniswapV3LiquidityPositionRemoveLiquidity() {
|
|
1540
|
-
_uniswapV3LiquidityPositionRemoveLiquidity = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee6(_ref6) {
|
|
1541
|
-
var signer, comptrollerProxy, externalPositionManager, externalPositionProxy, nftId, liquidity, _ref6$amount0Min, amount0Min, _ref6$amount1Min, amount1Min, actionArgs, callArgs;
|
|
1542
|
-
|
|
1543
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee6$(_context6) {
|
|
1544
|
-
while (1) {
|
|
1545
|
-
switch (_context6.prev = _context6.next) {
|
|
1546
|
-
case 0:
|
|
1547
|
-
signer = _ref6.signer, comptrollerProxy = _ref6.comptrollerProxy, externalPositionManager = _ref6.externalPositionManager, externalPositionProxy = _ref6.externalPositionProxy, nftId = _ref6.nftId, liquidity = _ref6.liquidity, _ref6$amount0Min = _ref6.amount0Min, amount0Min = _ref6$amount0Min === void 0 ? 0 : _ref6$amount0Min, _ref6$amount1Min = _ref6.amount1Min, amount1Min = _ref6$amount1Min === void 0 ? 0 : _ref6$amount1Min;
|
|
1548
|
-
actionArgs = protocol.uniswapV3LiquidityPositionRemoveLiquidityArgs({
|
|
1549
|
-
amount0Min: amount0Min,
|
|
1550
|
-
amount1Min: amount1Min,
|
|
1551
|
-
liquidity: liquidity,
|
|
1552
|
-
nftId: nftId
|
|
1553
|
-
});
|
|
1554
|
-
callArgs = protocol.callOnExternalPositionArgs({
|
|
1555
|
-
actionArgs: actionArgs,
|
|
1556
|
-
actionId: protocol.UniswapV3LiquidityPositionActionId.RemoveLiquidity,
|
|
1557
|
-
externalPositionProxy: externalPositionProxy
|
|
1558
|
-
});
|
|
1559
|
-
return _context6.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(externalPositionManager, protocol.ExternalPositionManagerActionId.CallOnExternalPosition, callArgs));
|
|
1560
|
-
|
|
1561
|
-
case 4:
|
|
1562
|
-
case "end":
|
|
1563
|
-
return _context6.stop();
|
|
1564
|
-
}
|
|
1565
|
-
}
|
|
1566
|
-
}, _callee6);
|
|
1567
|
-
}));
|
|
1568
|
-
return _uniswapV3LiquidityPositionRemoveLiquidity.apply(this, arguments);
|
|
1569
|
-
}
|
|
1570
|
-
|
|
1571
|
-
function uniswapV3OrderTokenPair(_ref7) {
|
|
1572
|
-
var tokenA = _ref7.tokenA,
|
|
1573
|
-
tokenB = _ref7.tokenB;
|
|
1574
|
-
var tokenAAddress = ethers$1.resolveAddress(tokenA);
|
|
1575
|
-
var tokenBAddress = ethers$1.resolveAddress(tokenB);
|
|
1576
|
-
return tokenAAddress < tokenBAddress ? {
|
|
1577
|
-
token0: tokenAAddress,
|
|
1578
|
-
token1: tokenBAddress
|
|
1579
|
-
} : {
|
|
1580
|
-
token0: tokenBAddress,
|
|
1581
|
-
token1: tokenAAddress
|
|
1582
|
-
};
|
|
1583
|
-
}
|
|
1584
|
-
|
|
1585
|
-
function generateFeeManagerConfigWithMockFees(_x) {
|
|
1586
|
-
return _generateFeeManagerConfigWithMockFees.apply(this, arguments);
|
|
1587
|
-
}
|
|
1588
|
-
|
|
1589
|
-
function _generateFeeManagerConfigWithMockFees() {
|
|
1590
|
-
_generateFeeManagerConfigWithMockFees = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
1591
|
-
var deployer, fees, feeManagerSettingsData;
|
|
1592
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
1593
|
-
while (1) {
|
|
1594
|
-
switch (_context.prev = _context.next) {
|
|
1595
|
-
case 0:
|
|
1596
|
-
deployer = _ref.deployer;
|
|
1597
|
-
_context.next = 3;
|
|
1598
|
-
return generateMockFees({
|
|
1599
|
-
deployer: deployer
|
|
1600
|
-
});
|
|
1601
|
-
|
|
1602
|
-
case 3:
|
|
1603
|
-
fees = _context.sent;
|
|
1604
|
-
feeManagerSettingsData = [ethers.utils.randomBytes(10), '0x', ethers.utils.randomBytes(2)];
|
|
1605
|
-
return _context.abrupt("return", protocol.feeManagerConfigArgs({
|
|
1606
|
-
fees: Object.values(fees),
|
|
1607
|
-
settings: feeManagerSettingsData
|
|
1608
|
-
}));
|
|
1609
|
-
|
|
1610
|
-
case 6:
|
|
1611
|
-
case "end":
|
|
1612
|
-
return _context.stop();
|
|
1613
|
-
}
|
|
1614
|
-
}
|
|
1615
|
-
}, _callee);
|
|
1616
|
-
}));
|
|
1617
|
-
return _generateFeeManagerConfigWithMockFees.apply(this, arguments);
|
|
1618
|
-
}
|
|
1619
|
-
|
|
1620
|
-
function generateMockFees(_x2) {
|
|
1621
|
-
return _generateMockFees.apply(this, arguments);
|
|
1622
|
-
}
|
|
1623
|
-
|
|
1624
|
-
function _generateMockFees() {
|
|
1625
|
-
_generateMockFees = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
1626
|
-
var deployer, mockContinuousFeeSettleOnly, mockContinuousFeeWithGavAndUpdates, mockPostBuySharesFee;
|
|
1627
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
1628
|
-
while (1) {
|
|
1629
|
-
switch (_context2.prev = _context2.next) {
|
|
1630
|
-
case 0:
|
|
1631
|
-
deployer = _ref2.deployer;
|
|
1632
|
-
_context2.next = 3;
|
|
1633
|
-
return protocol.IFee.mock(deployer);
|
|
1634
|
-
|
|
1635
|
-
case 3:
|
|
1636
|
-
mockContinuousFeeSettleOnly = _context2.sent;
|
|
1637
|
-
_context2.next = 6;
|
|
1638
|
-
return protocol.IFee.mock(deployer);
|
|
1639
|
-
|
|
1640
|
-
case 6:
|
|
1641
|
-
mockContinuousFeeWithGavAndUpdates = _context2.sent;
|
|
1642
|
-
_context2.next = 9;
|
|
1643
|
-
return protocol.IFee.mock(deployer);
|
|
1644
|
-
|
|
1645
|
-
case 9:
|
|
1646
|
-
mockPostBuySharesFee = _context2.sent;
|
|
1647
|
-
_context2.next = 12;
|
|
1648
|
-
return Promise.all([// Continuous fee the mimics ManagementFee
|
|
1649
|
-
mockContinuousFeeSettleOnly.getRecipientForFund.returns(ethers.constants.AddressZero), mockContinuousFeeSettleOnly.settle.returns(protocol.FeeSettlementType.None, ethers.constants.AddressZero, 0), mockContinuousFeeSettleOnly.payout.returns(false), mockContinuousFeeSettleOnly.addFundSettings.returns(undefined), mockContinuousFeeSettleOnly.activateForFund.returns(undefined), mockContinuousFeeSettleOnly.update.returns(undefined), mockContinuousFeeSettleOnly.settlesOnHook.returns(false, false), mockContinuousFeeSettleOnly.settlesOnHook.given(protocol.FeeHook.Continuous).returns(true, false), mockContinuousFeeSettleOnly.settlesOnHook.given(protocol.FeeHook.PreBuyShares).returns(true, false), mockContinuousFeeSettleOnly.settlesOnHook.given(protocol.FeeHook.PreRedeemShares).returns(true, false), mockContinuousFeeSettleOnly.updatesOnHook.returns(false, false), // Continuous fee the mimics PerformanceFee
|
|
1650
|
-
mockContinuousFeeWithGavAndUpdates.getRecipientForFund.returns(ethers.constants.AddressZero), mockContinuousFeeWithGavAndUpdates.settle.returns(protocol.FeeSettlementType.None, ethers.constants.AddressZero, 0), mockContinuousFeeWithGavAndUpdates.payout.returns(false), mockContinuousFeeWithGavAndUpdates.addFundSettings.returns(undefined), mockContinuousFeeWithGavAndUpdates.activateForFund.returns(undefined), mockContinuousFeeWithGavAndUpdates.update.returns(undefined), mockContinuousFeeWithGavAndUpdates.settlesOnHook.returns(false, false), mockContinuousFeeWithGavAndUpdates.settlesOnHook.given(protocol.FeeHook.Continuous).returns(true, true), mockContinuousFeeWithGavAndUpdates.settlesOnHook.given(protocol.FeeHook.PreBuyShares).returns(true, true), mockContinuousFeeWithGavAndUpdates.settlesOnHook.given(protocol.FeeHook.PreRedeemShares).returns(true, true), mockContinuousFeeWithGavAndUpdates.updatesOnHook.returns(false, false), mockContinuousFeeWithGavAndUpdates.updatesOnHook.given(protocol.FeeHook.Continuous).returns(true, true), mockContinuousFeeWithGavAndUpdates.updatesOnHook.given(protocol.FeeHook.PostBuyShares).returns(true, true), mockContinuousFeeWithGavAndUpdates.updatesOnHook.given(protocol.FeeHook.PreRedeemShares).returns(true, true), // PostBuyShares fee
|
|
1651
|
-
mockPostBuySharesFee.getRecipientForFund.returns(ethers.constants.AddressZero), mockPostBuySharesFee.settle.returns(protocol.FeeSettlementType.None, ethers.constants.AddressZero, 0), mockPostBuySharesFee.payout.returns(false), mockPostBuySharesFee.addFundSettings.returns(undefined), mockPostBuySharesFee.activateForFund.returns(undefined), mockPostBuySharesFee.update.returns(undefined), mockPostBuySharesFee.settlesOnHook.returns(false, false), mockPostBuySharesFee.settlesOnHook.given(protocol.FeeHook.PostBuyShares).returns(true, false), mockPostBuySharesFee.updatesOnHook.returns(false, false)]);
|
|
1652
|
-
|
|
1653
|
-
case 12:
|
|
1654
|
-
return _context2.abrupt("return", {
|
|
1655
|
-
mockContinuousFeeSettleOnly: mockContinuousFeeSettleOnly,
|
|
1656
|
-
mockContinuousFeeWithGavAndUpdates: mockContinuousFeeWithGavAndUpdates,
|
|
1657
|
-
mockPostBuySharesFee: mockPostBuySharesFee
|
|
1658
|
-
});
|
|
1659
|
-
|
|
1660
|
-
case 13:
|
|
1661
|
-
case "end":
|
|
1662
|
-
return _context2.stop();
|
|
1663
|
-
}
|
|
1664
|
-
}
|
|
1665
|
-
}, _callee2);
|
|
1666
|
-
}));
|
|
1667
|
-
return _generateMockFees.apply(this, arguments);
|
|
1668
|
-
}
|
|
1669
|
-
|
|
1670
|
-
function aaveLend(_x) {
|
|
1671
|
-
return _aaveLend.apply(this, arguments);
|
|
1672
|
-
}
|
|
1673
|
-
|
|
1674
|
-
function _aaveLend() {
|
|
1675
|
-
_aaveLend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
1676
|
-
var comptrollerProxy, integrationManager, fundOwner, aaveAdapter, aToken, _ref$amount, amount, lendArgs, callArgs, lendTx;
|
|
1677
|
-
|
|
1678
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
1679
|
-
while (1) {
|
|
1680
|
-
switch (_context.prev = _context.next) {
|
|
1681
|
-
case 0:
|
|
1682
|
-
comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, aaveAdapter = _ref.aaveAdapter, aToken = _ref.aToken, _ref$amount = _ref.amount, amount = _ref$amount === void 0 ? ethers.utils.parseEther('1') : _ref$amount;
|
|
1683
|
-
lendArgs = protocol.aaveLendArgs({
|
|
1684
|
-
aToken: aToken,
|
|
1685
|
-
amount: amount
|
|
1686
|
-
});
|
|
1687
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
1688
|
-
adapter: aaveAdapter,
|
|
1689
|
-
encodedCallArgs: lendArgs,
|
|
1690
|
-
selector: protocol.lendSelector
|
|
1691
|
-
});
|
|
1692
|
-
lendTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
1693
|
-
return _context.abrupt("return", lendTx);
|
|
1694
|
-
|
|
1695
|
-
case 5:
|
|
1696
|
-
case "end":
|
|
1697
|
-
return _context.stop();
|
|
1698
|
-
}
|
|
1699
|
-
}
|
|
1700
|
-
}, _callee);
|
|
1701
|
-
}));
|
|
1702
|
-
return _aaveLend.apply(this, arguments);
|
|
1703
|
-
}
|
|
1704
|
-
|
|
1705
|
-
function aaveRedeem(_x2) {
|
|
1706
|
-
return _aaveRedeem.apply(this, arguments);
|
|
1707
|
-
}
|
|
1708
|
-
|
|
1709
|
-
function _aaveRedeem() {
|
|
1710
|
-
_aaveRedeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
1711
|
-
var comptrollerProxy, integrationManager, fundOwner, aaveAdapter, aToken, _ref2$amount, amount, redeemArgs, callArgs, redeemTx;
|
|
1712
|
-
|
|
1713
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
1714
|
-
while (1) {
|
|
1715
|
-
switch (_context2.prev = _context2.next) {
|
|
1716
|
-
case 0:
|
|
1717
|
-
comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, fundOwner = _ref2.fundOwner, aaveAdapter = _ref2.aaveAdapter, aToken = _ref2.aToken, _ref2$amount = _ref2.amount, amount = _ref2$amount === void 0 ? ethers.utils.parseEther('1') : _ref2$amount;
|
|
1718
|
-
redeemArgs = protocol.aaveRedeemArgs({
|
|
1719
|
-
aToken: aToken,
|
|
1720
|
-
amount: amount
|
|
1721
|
-
});
|
|
1722
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
1723
|
-
adapter: aaveAdapter,
|
|
1724
|
-
encodedCallArgs: redeemArgs,
|
|
1725
|
-
selector: protocol.redeemSelector
|
|
1726
|
-
});
|
|
1727
|
-
redeemTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
1728
|
-
return _context2.abrupt("return", redeemTx);
|
|
1729
|
-
|
|
1730
|
-
case 5:
|
|
1731
|
-
case "end":
|
|
1732
|
-
return _context2.stop();
|
|
1733
|
-
}
|
|
1734
|
-
}
|
|
1735
|
-
}, _callee2);
|
|
1736
|
-
}));
|
|
1737
|
-
return _aaveRedeem.apply(this, arguments);
|
|
1738
|
-
}
|
|
1739
|
-
|
|
1740
|
-
var _templateObject$2;
|
|
1741
|
-
var ICompoundComptroller = ethers$1.contract()(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n function claimComp(address)\n"])));
|
|
1742
|
-
function assertCompoundLend(_x) {
|
|
1743
|
-
return _assertCompoundLend.apply(this, arguments);
|
|
1744
|
-
}
|
|
1745
|
-
|
|
1746
|
-
function _assertCompoundLend() {
|
|
1747
|
-
_assertCompoundLend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
1748
|
-
var tokenWhale, comptrollerProxy, vaultProxy, integrationManager, fundOwner, compoundAdapter, _ref$tokenAmount, tokenAmount, cToken, compoundPriceFeed, token, rateBefore, minIncomingCTokenAmount, _yield$getAssetBalanc, _yield$getAssetBalanc2, preTxIncomingAssetBalance, preTxOutgoingAssetBalance, lendReceipt, rate, _yield$getAssetBalanc3, _yield$getAssetBalanc4, postTxIncomingAssetBalance, postTxOutgoingAssetBalance, expectedCTokenAmount;
|
|
1749
|
-
|
|
1750
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
1751
|
-
while (1) {
|
|
1752
|
-
switch (_context.prev = _context.next) {
|
|
1753
|
-
case 0:
|
|
1754
|
-
tokenWhale = _ref.tokenWhale, comptrollerProxy = _ref.comptrollerProxy, vaultProxy = _ref.vaultProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, compoundAdapter = _ref.compoundAdapter, _ref$tokenAmount = _ref.tokenAmount, tokenAmount = _ref$tokenAmount === void 0 ? ethers.utils.parseEther('1') : _ref$tokenAmount, cToken = _ref.cToken, compoundPriceFeed = _ref.compoundPriceFeed;
|
|
1755
|
-
_context.t0 = protocol.StandardToken;
|
|
1756
|
-
_context.next = 4;
|
|
1757
|
-
return compoundPriceFeed.getTokenFromCToken.args(cToken).call();
|
|
1758
|
-
|
|
1759
|
-
case 4:
|
|
1760
|
-
_context.t1 = _context.sent;
|
|
1761
|
-
_context.t2 = tokenWhale;
|
|
1762
|
-
token = new _context.t0(_context.t1, _context.t2);
|
|
1763
|
-
_context.next = 9;
|
|
1764
|
-
return token.connect(tokenWhale).transfer(vaultProxy, tokenAmount);
|
|
1765
|
-
|
|
1766
|
-
case 9:
|
|
1767
|
-
_context.next = 11;
|
|
1768
|
-
return cToken.exchangeRateStored.call();
|
|
1769
|
-
|
|
1770
|
-
case 11:
|
|
1771
|
-
rateBefore = _context.sent;
|
|
1772
|
-
// Exchange rate stored can have a small deviation from exchangeRateStored
|
|
1773
|
-
minIncomingCTokenAmount = tokenAmount.mul(ethers.utils.parseEther('1')).div(rateBefore).mul(ethers.BigNumber.from('999')).div(ethers.BigNumber.from('1000'));
|
|
1774
|
-
_context.next = 15;
|
|
1775
|
-
return getAssetBalances({
|
|
1776
|
-
account: vaultProxy,
|
|
1777
|
-
assets: [cToken, token]
|
|
1778
|
-
});
|
|
1779
|
-
|
|
1780
|
-
case 15:
|
|
1781
|
-
_yield$getAssetBalanc = _context.sent;
|
|
1782
|
-
_yield$getAssetBalanc2 = _slicedToArray(_yield$getAssetBalanc, 2);
|
|
1783
|
-
preTxIncomingAssetBalance = _yield$getAssetBalanc2[0];
|
|
1784
|
-
preTxOutgoingAssetBalance = _yield$getAssetBalanc2[1];
|
|
1785
|
-
_context.next = 21;
|
|
1786
|
-
return compoundLend({
|
|
1787
|
-
cToken: cToken,
|
|
1788
|
-
cTokenAmount: minIncomingCTokenAmount,
|
|
1789
|
-
compoundAdapter: compoundAdapter,
|
|
1790
|
-
comptrollerProxy: comptrollerProxy,
|
|
1791
|
-
fundOwner: fundOwner,
|
|
1792
|
-
integrationManager: integrationManager,
|
|
1793
|
-
tokenAmount: tokenAmount
|
|
1794
|
-
});
|
|
1795
|
-
|
|
1796
|
-
case 21:
|
|
1797
|
-
lendReceipt = _context.sent;
|
|
1798
|
-
_context.next = 24;
|
|
1799
|
-
return cToken.exchangeRateStored();
|
|
1800
|
-
|
|
1801
|
-
case 24:
|
|
1802
|
-
rate = _context.sent;
|
|
1803
|
-
_context.next = 27;
|
|
1804
|
-
return getAssetBalances({
|
|
1805
|
-
account: vaultProxy,
|
|
1806
|
-
assets: [cToken, token]
|
|
1807
|
-
});
|
|
1808
|
-
|
|
1809
|
-
case 27:
|
|
1810
|
-
_yield$getAssetBalanc3 = _context.sent;
|
|
1811
|
-
_yield$getAssetBalanc4 = _slicedToArray(_yield$getAssetBalanc3, 2);
|
|
1812
|
-
postTxIncomingAssetBalance = _yield$getAssetBalanc4[0];
|
|
1813
|
-
postTxOutgoingAssetBalance = _yield$getAssetBalanc4[1];
|
|
1814
|
-
expectedCTokenAmount = tokenAmount.mul(ethers.utils.parseEther('1')).div(rate);
|
|
1815
|
-
expect(postTxIncomingAssetBalance).toEqBigNumber(preTxIncomingAssetBalance.add(expectedCTokenAmount));
|
|
1816
|
-
expect(postTxOutgoingAssetBalance).toEqBigNumber(preTxOutgoingAssetBalance.sub(tokenAmount));
|
|
1817
|
-
return _context.abrupt("return", lendReceipt);
|
|
1818
|
-
|
|
1819
|
-
case 35:
|
|
1820
|
-
case "end":
|
|
1821
|
-
return _context.stop();
|
|
1822
|
-
}
|
|
1823
|
-
}
|
|
1824
|
-
}, _callee);
|
|
1825
|
-
}));
|
|
1826
|
-
return _assertCompoundLend.apply(this, arguments);
|
|
1827
|
-
}
|
|
1828
|
-
|
|
1829
|
-
function assertCompoundRedeem(_x2) {
|
|
1830
|
-
return _assertCompoundRedeem.apply(this, arguments);
|
|
1831
|
-
}
|
|
1832
|
-
|
|
1833
|
-
function _assertCompoundRedeem() {
|
|
1834
|
-
_assertCompoundRedeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
1835
|
-
var comptrollerProxy, vaultProxy, integrationManager, fundOwner, compoundAdapter, cToken, compoundPriceFeed, cTokenAmount, token, _yield$getAssetBalanc5, _yield$getAssetBalanc6, preTxIncomingAssetBalance, preTxOutgoingAssetBalance, rateBefore, minIncomingTokenAmount, redeemReceipt, _yield$getAssetBalanc7, _yield$getAssetBalanc8, postTxIncomingAssetBalance, postTxOutgoingAssetBalance, rate, expectedTokenAmount;
|
|
1836
|
-
|
|
1837
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
1838
|
-
while (1) {
|
|
1839
|
-
switch (_context2.prev = _context2.next) {
|
|
1840
|
-
case 0:
|
|
1841
|
-
comptrollerProxy = _ref2.comptrollerProxy, vaultProxy = _ref2.vaultProxy, integrationManager = _ref2.integrationManager, fundOwner = _ref2.fundOwner, compoundAdapter = _ref2.compoundAdapter, cToken = _ref2.cToken, compoundPriceFeed = _ref2.compoundPriceFeed;
|
|
1842
|
-
_context2.t0 = ethers.utils;
|
|
1843
|
-
_context2.next = 4;
|
|
1844
|
-
return cToken.decimals();
|
|
1845
|
-
|
|
1846
|
-
case 4:
|
|
1847
|
-
_context2.t1 = _context2.sent;
|
|
1848
|
-
cTokenAmount = _context2.t0.parseUnits.call(_context2.t0, '1', _context2.t1);
|
|
1849
|
-
_context2.next = 8;
|
|
1850
|
-
return cToken.transfer(vaultProxy, cTokenAmount);
|
|
1851
|
-
|
|
1852
|
-
case 8:
|
|
1853
|
-
_context2.t2 = protocol.StandardToken;
|
|
1854
|
-
_context2.next = 11;
|
|
1855
|
-
return compoundPriceFeed.getTokenFromCToken.args(cToken).call();
|
|
1856
|
-
|
|
1857
|
-
case 11:
|
|
1858
|
-
_context2.t3 = _context2.sent;
|
|
1859
|
-
_context2.t4 = provider;
|
|
1860
|
-
token = new _context2.t2(_context2.t3, _context2.t4);
|
|
1861
|
-
_context2.next = 16;
|
|
1862
|
-
return getAssetBalances({
|
|
1863
|
-
account: vaultProxy,
|
|
1864
|
-
assets: [token, cToken]
|
|
1865
|
-
});
|
|
1866
|
-
|
|
1867
|
-
case 16:
|
|
1868
|
-
_yield$getAssetBalanc5 = _context2.sent;
|
|
1869
|
-
_yield$getAssetBalanc6 = _slicedToArray(_yield$getAssetBalanc5, 2);
|
|
1870
|
-
preTxIncomingAssetBalance = _yield$getAssetBalanc6[0];
|
|
1871
|
-
preTxOutgoingAssetBalance = _yield$getAssetBalanc6[1];
|
|
1872
|
-
_context2.next = 22;
|
|
1873
|
-
return cToken.exchangeRateStored();
|
|
1874
|
-
|
|
1875
|
-
case 22:
|
|
1876
|
-
rateBefore = _context2.sent;
|
|
1877
|
-
minIncomingTokenAmount = cTokenAmount.mul(rateBefore).div(ethers.utils.parseEther('1'));
|
|
1878
|
-
_context2.next = 26;
|
|
1879
|
-
return compoundRedeem({
|
|
1880
|
-
cToken: cToken,
|
|
1881
|
-
cTokenAmount: cTokenAmount,
|
|
1882
|
-
compoundAdapter: compoundAdapter,
|
|
1883
|
-
comptrollerProxy: comptrollerProxy,
|
|
1884
|
-
fundOwner: fundOwner,
|
|
1885
|
-
integrationManager: integrationManager,
|
|
1886
|
-
tokenAmount: minIncomingTokenAmount,
|
|
1887
|
-
vaultProxy: vaultProxy
|
|
1888
|
-
});
|
|
1889
|
-
|
|
1890
|
-
case 26:
|
|
1891
|
-
redeemReceipt = _context2.sent;
|
|
1892
|
-
_context2.next = 29;
|
|
1893
|
-
return getAssetBalances({
|
|
1894
|
-
account: vaultProxy,
|
|
1895
|
-
assets: [token, cToken]
|
|
1896
|
-
});
|
|
1897
|
-
|
|
1898
|
-
case 29:
|
|
1899
|
-
_yield$getAssetBalanc7 = _context2.sent;
|
|
1900
|
-
_yield$getAssetBalanc8 = _slicedToArray(_yield$getAssetBalanc7, 2);
|
|
1901
|
-
postTxIncomingAssetBalance = _yield$getAssetBalanc8[0];
|
|
1902
|
-
postTxOutgoingAssetBalance = _yield$getAssetBalanc8[1];
|
|
1903
|
-
_context2.next = 35;
|
|
1904
|
-
return cToken.exchangeRateStored();
|
|
1905
|
-
|
|
1906
|
-
case 35:
|
|
1907
|
-
rate = _context2.sent;
|
|
1908
|
-
expectedTokenAmount = cTokenAmount.mul(rate).div(ethers.utils.parseEther('1'));
|
|
1909
|
-
expect(postTxIncomingAssetBalance).toEqBigNumber(preTxIncomingAssetBalance.add(expectedTokenAmount));
|
|
1910
|
-
expect(postTxOutgoingAssetBalance).toEqBigNumber(preTxOutgoingAssetBalance.sub(cTokenAmount));
|
|
1911
|
-
return _context2.abrupt("return", redeemReceipt);
|
|
1912
|
-
|
|
1913
|
-
case 40:
|
|
1914
|
-
case "end":
|
|
1915
|
-
return _context2.stop();
|
|
1916
|
-
}
|
|
1917
|
-
}
|
|
1918
|
-
}, _callee2);
|
|
1919
|
-
}));
|
|
1920
|
-
return _assertCompoundRedeem.apply(this, arguments);
|
|
1921
|
-
}
|
|
1922
|
-
|
|
1923
|
-
function compoundClaim(_x3) {
|
|
1924
|
-
return _compoundClaim.apply(this, arguments);
|
|
1925
|
-
}
|
|
1926
|
-
|
|
1927
|
-
function _compoundClaim() {
|
|
1928
|
-
_compoundClaim = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
1929
|
-
var comptrollerProxy, integrationManager, fundOwner, compoundAdapter, compoundComptroller, cTokens, claimArgs, callArgs, claimRewardsTx;
|
|
1930
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
1931
|
-
while (1) {
|
|
1932
|
-
switch (_context3.prev = _context3.next) {
|
|
1933
|
-
case 0:
|
|
1934
|
-
comptrollerProxy = _ref3.comptrollerProxy, integrationManager = _ref3.integrationManager, fundOwner = _ref3.fundOwner, compoundAdapter = _ref3.compoundAdapter, compoundComptroller = _ref3.compoundComptroller, cTokens = _ref3.cTokens;
|
|
1935
|
-
claimArgs = protocol.compoundClaimRewardsArgs({
|
|
1936
|
-
cTokens: cTokens,
|
|
1937
|
-
compoundComptroller: compoundComptroller
|
|
1938
|
-
});
|
|
1939
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
1940
|
-
adapter: compoundAdapter,
|
|
1941
|
-
encodedCallArgs: claimArgs,
|
|
1942
|
-
selector: protocol.claimRewardsSelector
|
|
1943
|
-
});
|
|
1944
|
-
claimRewardsTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
1945
|
-
return _context3.abrupt("return", claimRewardsTx);
|
|
1946
|
-
|
|
1947
|
-
case 5:
|
|
1948
|
-
case "end":
|
|
1949
|
-
return _context3.stop();
|
|
1950
|
-
}
|
|
1951
|
-
}
|
|
1952
|
-
}, _callee3);
|
|
1953
|
-
}));
|
|
1954
|
-
return _compoundClaim.apply(this, arguments);
|
|
1955
|
-
}
|
|
1956
|
-
|
|
1957
|
-
function compoundLend(_x4) {
|
|
1958
|
-
return _compoundLend.apply(this, arguments);
|
|
1959
|
-
}
|
|
1960
|
-
|
|
1961
|
-
function _compoundLend() {
|
|
1962
|
-
_compoundLend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref4) {
|
|
1963
|
-
var comptrollerProxy, integrationManager, fundOwner, compoundAdapter, cToken, _ref4$tokenAmount, tokenAmount, _ref4$cTokenAmount, cTokenAmount, lendArgs, callArgs, lendTx;
|
|
1964
|
-
|
|
1965
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
1966
|
-
while (1) {
|
|
1967
|
-
switch (_context4.prev = _context4.next) {
|
|
1968
|
-
case 0:
|
|
1969
|
-
comptrollerProxy = _ref4.comptrollerProxy, integrationManager = _ref4.integrationManager, fundOwner = _ref4.fundOwner, compoundAdapter = _ref4.compoundAdapter, cToken = _ref4.cToken, _ref4$tokenAmount = _ref4.tokenAmount, tokenAmount = _ref4$tokenAmount === void 0 ? ethers.utils.parseEther('1') : _ref4$tokenAmount, _ref4$cTokenAmount = _ref4.cTokenAmount, cTokenAmount = _ref4$cTokenAmount === void 0 ? ethers.utils.parseEther('1') : _ref4$cTokenAmount;
|
|
1970
|
-
lendArgs = protocol.compoundArgs({
|
|
1971
|
-
cToken: cToken,
|
|
1972
|
-
minIncomingAssetAmount: cTokenAmount,
|
|
1973
|
-
outgoingAssetAmount: tokenAmount
|
|
1974
|
-
});
|
|
1975
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
1976
|
-
adapter: compoundAdapter,
|
|
1977
|
-
encodedCallArgs: lendArgs,
|
|
1978
|
-
selector: protocol.lendSelector
|
|
1979
|
-
});
|
|
1980
|
-
lendTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
1981
|
-
return _context4.abrupt("return", lendTx);
|
|
1982
|
-
|
|
1983
|
-
case 5:
|
|
1984
|
-
case "end":
|
|
1985
|
-
return _context4.stop();
|
|
1986
|
-
}
|
|
1987
|
-
}
|
|
1988
|
-
}, _callee4);
|
|
1989
|
-
}));
|
|
1990
|
-
return _compoundLend.apply(this, arguments);
|
|
1991
|
-
}
|
|
1992
|
-
|
|
1993
|
-
function compoundRedeem(_x5) {
|
|
1994
|
-
return _compoundRedeem.apply(this, arguments);
|
|
1995
|
-
}
|
|
1996
|
-
|
|
1997
|
-
function _compoundRedeem() {
|
|
1998
|
-
_compoundRedeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(_ref5) {
|
|
1999
|
-
var comptrollerProxy, integrationManager, fundOwner, compoundAdapter, cToken, _ref5$tokenAmount, tokenAmount, _ref5$cTokenAmount, cTokenAmount, redeemArgs, callArgs, redeemTx;
|
|
2000
|
-
|
|
2001
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
2002
|
-
while (1) {
|
|
2003
|
-
switch (_context5.prev = _context5.next) {
|
|
2004
|
-
case 0:
|
|
2005
|
-
comptrollerProxy = _ref5.comptrollerProxy, integrationManager = _ref5.integrationManager, fundOwner = _ref5.fundOwner, compoundAdapter = _ref5.compoundAdapter, cToken = _ref5.cToken, _ref5$tokenAmount = _ref5.tokenAmount, tokenAmount = _ref5$tokenAmount === void 0 ? ethers.utils.parseEther('1') : _ref5$tokenAmount, _ref5$cTokenAmount = _ref5.cTokenAmount, cTokenAmount = _ref5$cTokenAmount === void 0 ? ethers.utils.parseEther('1') : _ref5$cTokenAmount;
|
|
2006
|
-
redeemArgs = protocol.compoundArgs({
|
|
2007
|
-
cToken: ethers$1.resolveAddress(cToken),
|
|
2008
|
-
minIncomingAssetAmount: tokenAmount,
|
|
2009
|
-
outgoingAssetAmount: cTokenAmount
|
|
2010
|
-
});
|
|
2011
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2012
|
-
adapter: compoundAdapter,
|
|
2013
|
-
encodedCallArgs: redeemArgs,
|
|
2014
|
-
selector: protocol.redeemSelector
|
|
2015
|
-
});
|
|
2016
|
-
redeemTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2017
|
-
return _context5.abrupt("return", redeemTx);
|
|
2018
|
-
|
|
2019
|
-
case 5:
|
|
2020
|
-
case "end":
|
|
2021
|
-
return _context5.stop();
|
|
2022
|
-
}
|
|
2023
|
-
}
|
|
2024
|
-
}, _callee5);
|
|
2025
|
-
}));
|
|
2026
|
-
return _compoundRedeem.apply(this, arguments);
|
|
2027
|
-
}
|
|
2028
|
-
|
|
2029
|
-
var _templateObject$1, _templateObject2, _templateObject3, _templateObject4;
|
|
2030
|
-
var CurveLiquidityGaugeV2 = ethers$1.contract()(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n function claim_rewards(address)\n function integrate_fraction(address) view returns (uint256)\n"])));
|
|
2031
|
-
var CurveRegistry = ethers$1.contract()(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n function get_coins(address) view returns (address[8])\n function get_lp_token(address) view returns (address)\n"]))); // prettier-ignore
|
|
2032
|
-
|
|
2033
|
-
var CurveSwaps = ethers$1.contract()(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n function get_best_rate(address _from, address to, uint256 amount) view returns (address bestPool, uint256 amountReceived)\n"])));
|
|
2034
|
-
var CurveMinter = ethers$1.contract()(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n function mint_for(address,address)\n"]))); // exchanges
|
|
2035
|
-
|
|
2036
|
-
function curveTakeOrder(_x) {
|
|
2037
|
-
return _curveTakeOrder.apply(this, arguments);
|
|
2038
|
-
} // combined liquidity
|
|
2039
|
-
|
|
2040
|
-
function _curveTakeOrder() {
|
|
2041
|
-
_curveTakeOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
2042
|
-
var comptrollerProxy, integrationManager, fundOwner, curveExchangeAdapter, pool, outgoingAsset, _ref$outgoingAssetAmo, outgoingAssetAmount, incomingAsset, _ref$minIncomingAsset, minIncomingAssetAmount, takeOrderArgs, callArgs;
|
|
2043
|
-
|
|
2044
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2045
|
-
while (1) {
|
|
2046
|
-
switch (_context.prev = _context.next) {
|
|
2047
|
-
case 0:
|
|
2048
|
-
comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, curveExchangeAdapter = _ref.curveExchangeAdapter, pool = _ref.pool, outgoingAsset = _ref.outgoingAsset, _ref$outgoingAssetAmo = _ref.outgoingAssetAmount, outgoingAssetAmount = _ref$outgoingAssetAmo === void 0 ? ethers.utils.parseEther('1') : _ref$outgoingAssetAmo, incomingAsset = _ref.incomingAsset, _ref$minIncomingAsset = _ref.minIncomingAssetAmount, minIncomingAssetAmount = _ref$minIncomingAsset === void 0 ? ethers.utils.parseEther('1') : _ref$minIncomingAsset;
|
|
2049
|
-
takeOrderArgs = protocol.curveTakeOrderArgs({
|
|
2050
|
-
incomingAsset: incomingAsset,
|
|
2051
|
-
minIncomingAssetAmount: minIncomingAssetAmount,
|
|
2052
|
-
outgoingAsset: outgoingAsset,
|
|
2053
|
-
outgoingAssetAmount: outgoingAssetAmount,
|
|
2054
|
-
pool: pool
|
|
2055
|
-
});
|
|
2056
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2057
|
-
adapter: curveExchangeAdapter,
|
|
2058
|
-
encodedCallArgs: takeOrderArgs,
|
|
2059
|
-
selector: protocol.takeOrderSelector
|
|
2060
|
-
});
|
|
2061
|
-
return _context.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2062
|
-
|
|
2063
|
-
case 4:
|
|
2064
|
-
case "end":
|
|
2065
|
-
return _context.stop();
|
|
2066
|
-
}
|
|
2067
|
-
}
|
|
2068
|
-
}, _callee);
|
|
2069
|
-
}));
|
|
2070
|
-
return _curveTakeOrder.apply(this, arguments);
|
|
2071
|
-
}
|
|
2072
|
-
|
|
2073
|
-
function curveClaimRewards(_ref2) {
|
|
2074
|
-
var comptrollerProxy = _ref2.comptrollerProxy,
|
|
2075
|
-
integrationManager = _ref2.integrationManager,
|
|
2076
|
-
fundOwner = _ref2.fundOwner,
|
|
2077
|
-
curveLiquidityAdapter = _ref2.curveLiquidityAdapter,
|
|
2078
|
-
stakingToken = _ref2.stakingToken;
|
|
2079
|
-
var callArgs = protocol.callOnIntegrationArgs({
|
|
2080
|
-
adapter: curveLiquidityAdapter,
|
|
2081
|
-
encodedCallArgs: protocol.curveClaimRewardsArgs({
|
|
2082
|
-
stakingToken: stakingToken
|
|
2083
|
-
}),
|
|
2084
|
-
selector: protocol.claimRewardsSelector
|
|
2085
|
-
});
|
|
2086
|
-
return comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2087
|
-
}
|
|
2088
|
-
function curveLend(_x2) {
|
|
2089
|
-
return _curveLend.apply(this, arguments);
|
|
2090
|
-
}
|
|
2091
|
-
|
|
2092
|
-
function _curveLend() {
|
|
2093
|
-
_curveLend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref3) {
|
|
2094
|
-
var comptrollerProxy, integrationManager, signer, curveLiquidityAdapter, pool, orderedOutgoingAssetAmounts, _ref3$minIncomingLpTo, minIncomingLpTokenAmount, useUnderlyings, callArgs;
|
|
2095
|
-
|
|
2096
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
2097
|
-
while (1) {
|
|
2098
|
-
switch (_context2.prev = _context2.next) {
|
|
2099
|
-
case 0:
|
|
2100
|
-
comptrollerProxy = _ref3.comptrollerProxy, integrationManager = _ref3.integrationManager, signer = _ref3.signer, curveLiquidityAdapter = _ref3.curveLiquidityAdapter, pool = _ref3.pool, orderedOutgoingAssetAmounts = _ref3.orderedOutgoingAssetAmounts, _ref3$minIncomingLpTo = _ref3.minIncomingLpTokenAmount, minIncomingLpTokenAmount = _ref3$minIncomingLpTo === void 0 ? ethers.BigNumber.from(1) : _ref3$minIncomingLpTo, useUnderlyings = _ref3.useUnderlyings;
|
|
2101
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2102
|
-
adapter: curveLiquidityAdapter,
|
|
2103
|
-
encodedCallArgs: protocol.curveLendArgs({
|
|
2104
|
-
minIncomingLpTokenAmount: minIncomingLpTokenAmount,
|
|
2105
|
-
orderedOutgoingAssetAmounts: orderedOutgoingAssetAmounts,
|
|
2106
|
-
pool: pool,
|
|
2107
|
-
useUnderlyings: useUnderlyings
|
|
2108
|
-
}),
|
|
2109
|
-
selector: protocol.lendSelector
|
|
2110
|
-
});
|
|
2111
|
-
return _context2.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2112
|
-
|
|
2113
|
-
case 3:
|
|
2114
|
-
case "end":
|
|
2115
|
-
return _context2.stop();
|
|
2116
|
-
}
|
|
2117
|
-
}
|
|
2118
|
-
}, _callee2);
|
|
2119
|
-
}));
|
|
2120
|
-
return _curveLend.apply(this, arguments);
|
|
2121
|
-
}
|
|
2122
|
-
|
|
2123
|
-
function curveLendAndStake(_x3) {
|
|
2124
|
-
return _curveLendAndStake.apply(this, arguments);
|
|
2125
|
-
}
|
|
2126
|
-
|
|
2127
|
-
function _curveLendAndStake() {
|
|
2128
|
-
_curveLendAndStake = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref4) {
|
|
2129
|
-
var comptrollerProxy, integrationManager, signer, curveLiquidityAdapter, pool, orderedOutgoingAssetAmounts, incomingStakingToken, _ref4$minIncomingStak, minIncomingStakingTokenAmount, useUnderlyings, callArgs;
|
|
2130
|
-
|
|
2131
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
2132
|
-
while (1) {
|
|
2133
|
-
switch (_context3.prev = _context3.next) {
|
|
2134
|
-
case 0:
|
|
2135
|
-
comptrollerProxy = _ref4.comptrollerProxy, integrationManager = _ref4.integrationManager, signer = _ref4.signer, curveLiquidityAdapter = _ref4.curveLiquidityAdapter, pool = _ref4.pool, orderedOutgoingAssetAmounts = _ref4.orderedOutgoingAssetAmounts, incomingStakingToken = _ref4.incomingStakingToken, _ref4$minIncomingStak = _ref4.minIncomingStakingTokenAmount, minIncomingStakingTokenAmount = _ref4$minIncomingStak === void 0 ? ethers.BigNumber.from(1) : _ref4$minIncomingStak, useUnderlyings = _ref4.useUnderlyings;
|
|
2136
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2137
|
-
adapter: curveLiquidityAdapter,
|
|
2138
|
-
encodedCallArgs: protocol.curveLendAndStakeArgs({
|
|
2139
|
-
incomingStakingToken: incomingStakingToken,
|
|
2140
|
-
minIncomingStakingTokenAmount: minIncomingStakingTokenAmount,
|
|
2141
|
-
orderedOutgoingAssetAmounts: orderedOutgoingAssetAmounts,
|
|
2142
|
-
pool: pool,
|
|
2143
|
-
useUnderlyings: useUnderlyings
|
|
2144
|
-
}),
|
|
2145
|
-
selector: protocol.lendAndStakeSelector
|
|
2146
|
-
});
|
|
2147
|
-
return _context3.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2148
|
-
|
|
2149
|
-
case 3:
|
|
2150
|
-
case "end":
|
|
2151
|
-
return _context3.stop();
|
|
2152
|
-
}
|
|
2153
|
-
}
|
|
2154
|
-
}, _callee3);
|
|
2155
|
-
}));
|
|
2156
|
-
return _curveLendAndStake.apply(this, arguments);
|
|
2157
|
-
}
|
|
2158
|
-
|
|
2159
|
-
function curveRedeem(_x4) {
|
|
2160
|
-
return _curveRedeem.apply(this, arguments);
|
|
2161
|
-
}
|
|
2162
|
-
|
|
2163
|
-
function _curveRedeem() {
|
|
2164
|
-
_curveRedeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref5) {
|
|
2165
|
-
var comptrollerProxy, integrationManager, signer, curveLiquidityAdapter, pool, outgoingLpTokenAmount, useUnderlyings, redeemType, incomingAssetData, callArgs;
|
|
2166
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
2167
|
-
while (1) {
|
|
2168
|
-
switch (_context4.prev = _context4.next) {
|
|
2169
|
-
case 0:
|
|
2170
|
-
comptrollerProxy = _ref5.comptrollerProxy, integrationManager = _ref5.integrationManager, signer = _ref5.signer, curveLiquidityAdapter = _ref5.curveLiquidityAdapter, pool = _ref5.pool, outgoingLpTokenAmount = _ref5.outgoingLpTokenAmount, useUnderlyings = _ref5.useUnderlyings, redeemType = _ref5.redeemType, incomingAssetData = _ref5.incomingAssetData;
|
|
2171
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2172
|
-
adapter: curveLiquidityAdapter,
|
|
2173
|
-
encodedCallArgs: protocol.curveRedeemArgs({
|
|
2174
|
-
incomingAssetData: incomingAssetData,
|
|
2175
|
-
outgoingLpTokenAmount: outgoingLpTokenAmount,
|
|
2176
|
-
pool: pool,
|
|
2177
|
-
redeemType: redeemType,
|
|
2178
|
-
useUnderlyings: useUnderlyings
|
|
2179
|
-
}),
|
|
2180
|
-
selector: protocol.redeemSelector
|
|
2181
|
-
});
|
|
2182
|
-
return _context4.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2183
|
-
|
|
2184
|
-
case 3:
|
|
2185
|
-
case "end":
|
|
2186
|
-
return _context4.stop();
|
|
2187
|
-
}
|
|
2188
|
-
}
|
|
2189
|
-
}, _callee4);
|
|
2190
|
-
}));
|
|
2191
|
-
return _curveRedeem.apply(this, arguments);
|
|
2192
|
-
}
|
|
2193
|
-
|
|
2194
|
-
function curveStake(_x5) {
|
|
2195
|
-
return _curveStake.apply(this, arguments);
|
|
2196
|
-
}
|
|
2197
|
-
|
|
2198
|
-
function _curveStake() {
|
|
2199
|
-
_curveStake = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(_ref6) {
|
|
2200
|
-
var comptrollerProxy, integrationManager, signer, curveLiquidityAdapter, pool, incomingStakingToken, amount, callArgs;
|
|
2201
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
2202
|
-
while (1) {
|
|
2203
|
-
switch (_context5.prev = _context5.next) {
|
|
2204
|
-
case 0:
|
|
2205
|
-
comptrollerProxy = _ref6.comptrollerProxy, integrationManager = _ref6.integrationManager, signer = _ref6.signer, curveLiquidityAdapter = _ref6.curveLiquidityAdapter, pool = _ref6.pool, incomingStakingToken = _ref6.incomingStakingToken, amount = _ref6.amount;
|
|
2206
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2207
|
-
adapter: curveLiquidityAdapter,
|
|
2208
|
-
encodedCallArgs: protocol.curveStakeArgs({
|
|
2209
|
-
amount: amount,
|
|
2210
|
-
incomingStakingToken: incomingStakingToken,
|
|
2211
|
-
pool: pool
|
|
2212
|
-
}),
|
|
2213
|
-
selector: protocol.stakeSelector
|
|
2214
|
-
});
|
|
2215
|
-
return _context5.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2216
|
-
|
|
2217
|
-
case 3:
|
|
2218
|
-
case "end":
|
|
2219
|
-
return _context5.stop();
|
|
2220
|
-
}
|
|
2221
|
-
}
|
|
2222
|
-
}, _callee5);
|
|
2223
|
-
}));
|
|
2224
|
-
return _curveStake.apply(this, arguments);
|
|
2225
|
-
}
|
|
2226
|
-
|
|
2227
|
-
function curveUnstake(_x6) {
|
|
2228
|
-
return _curveUnstake.apply(this, arguments);
|
|
2229
|
-
}
|
|
2230
|
-
|
|
2231
|
-
function _curveUnstake() {
|
|
2232
|
-
_curveUnstake = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee6(_ref7) {
|
|
2233
|
-
var comptrollerProxy, integrationManager, signer, curveLiquidityAdapter, pool, outgoingStakingToken, amount, callArgs;
|
|
2234
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee6$(_context6) {
|
|
2235
|
-
while (1) {
|
|
2236
|
-
switch (_context6.prev = _context6.next) {
|
|
2237
|
-
case 0:
|
|
2238
|
-
comptrollerProxy = _ref7.comptrollerProxy, integrationManager = _ref7.integrationManager, signer = _ref7.signer, curveLiquidityAdapter = _ref7.curveLiquidityAdapter, pool = _ref7.pool, outgoingStakingToken = _ref7.outgoingStakingToken, amount = _ref7.amount;
|
|
2239
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2240
|
-
adapter: curveLiquidityAdapter,
|
|
2241
|
-
encodedCallArgs: protocol.curveUnstakeArgs({
|
|
2242
|
-
amount: amount,
|
|
2243
|
-
outgoingStakingToken: outgoingStakingToken,
|
|
2244
|
-
pool: pool
|
|
2245
|
-
}),
|
|
2246
|
-
selector: protocol.unstakeSelector
|
|
2247
|
-
});
|
|
2248
|
-
return _context6.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2249
|
-
|
|
2250
|
-
case 3:
|
|
2251
|
-
case "end":
|
|
2252
|
-
return _context6.stop();
|
|
2253
|
-
}
|
|
2254
|
-
}
|
|
2255
|
-
}, _callee6);
|
|
2256
|
-
}));
|
|
2257
|
-
return _curveUnstake.apply(this, arguments);
|
|
2258
|
-
}
|
|
2259
|
-
|
|
2260
|
-
function curveUnstakeAndRedeem(_x7) {
|
|
2261
|
-
return _curveUnstakeAndRedeem.apply(this, arguments);
|
|
2262
|
-
}
|
|
2263
|
-
|
|
2264
|
-
function _curveUnstakeAndRedeem() {
|
|
2265
|
-
_curveUnstakeAndRedeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee7(_ref8) {
|
|
2266
|
-
var comptrollerProxy, integrationManager, signer, curveLiquidityAdapter, pool, outgoingStakingToken, outgoingStakingTokenAmount, useUnderlyings, redeemType, incomingAssetData, callArgs;
|
|
2267
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee7$(_context7) {
|
|
2268
|
-
while (1) {
|
|
2269
|
-
switch (_context7.prev = _context7.next) {
|
|
2270
|
-
case 0:
|
|
2271
|
-
comptrollerProxy = _ref8.comptrollerProxy, integrationManager = _ref8.integrationManager, signer = _ref8.signer, curveLiquidityAdapter = _ref8.curveLiquidityAdapter, pool = _ref8.pool, outgoingStakingToken = _ref8.outgoingStakingToken, outgoingStakingTokenAmount = _ref8.outgoingStakingTokenAmount, useUnderlyings = _ref8.useUnderlyings, redeemType = _ref8.redeemType, incomingAssetData = _ref8.incomingAssetData;
|
|
2272
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2273
|
-
adapter: curveLiquidityAdapter,
|
|
2274
|
-
encodedCallArgs: protocol.curveUnstakeAndRedeemArgs({
|
|
2275
|
-
incomingAssetData: incomingAssetData,
|
|
2276
|
-
outgoingStakingToken: outgoingStakingToken,
|
|
2277
|
-
outgoingStakingTokenAmount: outgoingStakingTokenAmount,
|
|
2278
|
-
pool: pool,
|
|
2279
|
-
redeemType: redeemType,
|
|
2280
|
-
useUnderlyings: useUnderlyings
|
|
2281
|
-
}),
|
|
2282
|
-
selector: protocol.unstakeAndRedeemSelector
|
|
2283
|
-
});
|
|
2284
|
-
return _context7.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2285
|
-
|
|
2286
|
-
case 3:
|
|
2287
|
-
case "end":
|
|
2288
|
-
return _context7.stop();
|
|
2289
|
-
}
|
|
2290
|
-
}
|
|
2291
|
-
}, _callee7);
|
|
2292
|
-
}));
|
|
2293
|
-
return _curveUnstakeAndRedeem.apply(this, arguments);
|
|
2294
|
-
}
|
|
2295
|
-
|
|
2296
|
-
function idleClaimRewards(_x) {
|
|
2297
|
-
return _idleClaimRewards.apply(this, arguments);
|
|
2298
|
-
}
|
|
2299
|
-
|
|
2300
|
-
function _idleClaimRewards() {
|
|
2301
|
-
_idleClaimRewards = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
2302
|
-
var comptrollerProxy, integrationManager, fundOwner, idleAdapter, idleToken, callArgs;
|
|
2303
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2304
|
-
while (1) {
|
|
2305
|
-
switch (_context.prev = _context.next) {
|
|
2306
|
-
case 0:
|
|
2307
|
-
comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, idleAdapter = _ref.idleAdapter, idleToken = _ref.idleToken;
|
|
2308
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2309
|
-
adapter: idleAdapter,
|
|
2310
|
-
encodedCallArgs: protocol.idleClaimRewardsArgs({
|
|
2311
|
-
idleToken: idleToken
|
|
2312
|
-
}),
|
|
2313
|
-
selector: protocol.claimRewardsSelector
|
|
2314
|
-
});
|
|
2315
|
-
return _context.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2316
|
-
|
|
2317
|
-
case 3:
|
|
2318
|
-
case "end":
|
|
2319
|
-
return _context.stop();
|
|
2320
|
-
}
|
|
2321
|
-
}
|
|
2322
|
-
}, _callee);
|
|
2323
|
-
}));
|
|
2324
|
-
return _idleClaimRewards.apply(this, arguments);
|
|
2325
|
-
}
|
|
2326
|
-
|
|
2327
|
-
function idleLend(_x2) {
|
|
2328
|
-
return _idleLend.apply(this, arguments);
|
|
2329
|
-
}
|
|
2330
|
-
|
|
2331
|
-
function _idleLend() {
|
|
2332
|
-
_idleLend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
2333
|
-
var comptrollerProxy, integrationManager, fundOwner, idleAdapter, idleToken, outgoingUnderlyingAmount, _ref2$minIncomingIdle, minIncomingIdleTokenAmount, callArgs;
|
|
2334
|
-
|
|
2335
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
2336
|
-
while (1) {
|
|
2337
|
-
switch (_context2.prev = _context2.next) {
|
|
2338
|
-
case 0:
|
|
2339
|
-
comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, fundOwner = _ref2.fundOwner, idleAdapter = _ref2.idleAdapter, idleToken = _ref2.idleToken, outgoingUnderlyingAmount = _ref2.outgoingUnderlyingAmount, _ref2$minIncomingIdle = _ref2.minIncomingIdleTokenAmount, minIncomingIdleTokenAmount = _ref2$minIncomingIdle === void 0 ? ethers.BigNumber.from(1) : _ref2$minIncomingIdle;
|
|
2340
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2341
|
-
adapter: idleAdapter,
|
|
2342
|
-
encodedCallArgs: protocol.idleLendArgs({
|
|
2343
|
-
idleToken: idleToken,
|
|
2344
|
-
minIncomingIdleTokenAmount: minIncomingIdleTokenAmount,
|
|
2345
|
-
outgoingUnderlyingAmount: outgoingUnderlyingAmount
|
|
2346
|
-
}),
|
|
2347
|
-
selector: protocol.lendSelector
|
|
2348
|
-
});
|
|
2349
|
-
return _context2.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2350
|
-
|
|
2351
|
-
case 3:
|
|
2352
|
-
case "end":
|
|
2353
|
-
return _context2.stop();
|
|
2354
|
-
}
|
|
2355
|
-
}
|
|
2356
|
-
}, _callee2);
|
|
2357
|
-
}));
|
|
2358
|
-
return _idleLend.apply(this, arguments);
|
|
2359
|
-
}
|
|
2360
|
-
|
|
2361
|
-
function idleRedeem(_x3) {
|
|
2362
|
-
return _idleRedeem.apply(this, arguments);
|
|
2363
|
-
}
|
|
2364
|
-
|
|
2365
|
-
function _idleRedeem() {
|
|
2366
|
-
_idleRedeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
2367
|
-
var comptrollerProxy, integrationManager, fundOwner, idleAdapter, idleToken, outgoingIdleTokenAmount, _ref3$minIncomingUnde, minIncomingUnderlyingAmount, callArgs;
|
|
2368
|
-
|
|
2369
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
2370
|
-
while (1) {
|
|
2371
|
-
switch (_context3.prev = _context3.next) {
|
|
2372
|
-
case 0:
|
|
2373
|
-
comptrollerProxy = _ref3.comptrollerProxy, integrationManager = _ref3.integrationManager, fundOwner = _ref3.fundOwner, idleAdapter = _ref3.idleAdapter, idleToken = _ref3.idleToken, outgoingIdleTokenAmount = _ref3.outgoingIdleTokenAmount, _ref3$minIncomingUnde = _ref3.minIncomingUnderlyingAmount, minIncomingUnderlyingAmount = _ref3$minIncomingUnde === void 0 ? ethers.BigNumber.from(1) : _ref3$minIncomingUnde;
|
|
2374
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2375
|
-
adapter: idleAdapter,
|
|
2376
|
-
encodedCallArgs: protocol.idleRedeemArgs({
|
|
2377
|
-
idleToken: idleToken,
|
|
2378
|
-
minIncomingUnderlyingAmount: minIncomingUnderlyingAmount,
|
|
2379
|
-
outgoingIdleTokenAmount: outgoingIdleTokenAmount
|
|
2380
|
-
}),
|
|
2381
|
-
selector: protocol.redeemSelector
|
|
2382
|
-
});
|
|
2383
|
-
return _context3.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2384
|
-
|
|
2385
|
-
case 3:
|
|
2386
|
-
case "end":
|
|
2387
|
-
return _context3.stop();
|
|
2388
|
-
}
|
|
2389
|
-
}
|
|
2390
|
-
}, _callee3);
|
|
2391
|
-
}));
|
|
2392
|
-
return _idleRedeem.apply(this, arguments);
|
|
2393
|
-
}
|
|
2394
|
-
|
|
2395
|
-
var mockGenericRemoveOnlySelector = protocol.sighash(ethers.utils.FunctionFragment.fromString('removeOnly(address,bytes,bytes)'));
|
|
2396
|
-
var mockGenericSwapASelector = protocol.sighash(ethers.utils.FunctionFragment.fromString('swapA(address,bytes,bytes)'));
|
|
2397
|
-
var mockGenericSwapBSelector = protocol.sighash(ethers.utils.FunctionFragment.fromString('swapB(address,bytes,bytes)'));
|
|
2398
|
-
var mockGenericSwapDirectFromVaultSelector = protocol.sighash(ethers.utils.FunctionFragment.fromString('swapDirectFromVault(address,bytes,bytes)'));
|
|
2399
|
-
var mockGenericSwapViaApprovalSelector = protocol.sighash(ethers.utils.FunctionFragment.fromString('swapViaApproval(address,bytes,bytes)'));
|
|
2400
|
-
function mockGenericSwapArgs(_ref) {
|
|
2401
|
-
var _ref$spendAssets = _ref.spendAssets,
|
|
2402
|
-
spendAssets = _ref$spendAssets === void 0 ? [] : _ref$spendAssets,
|
|
2403
|
-
_ref$actualSpendAsset = _ref.actualSpendAssetAmounts,
|
|
2404
|
-
actualSpendAssetAmounts = _ref$actualSpendAsset === void 0 ? [] : _ref$actualSpendAsset,
|
|
2405
|
-
_ref$maxSpendAssetAmo = _ref.maxSpendAssetAmounts,
|
|
2406
|
-
maxSpendAssetAmounts = _ref$maxSpendAssetAmo === void 0 ? actualSpendAssetAmounts : _ref$maxSpendAssetAmo,
|
|
2407
|
-
_ref$incomingAssets = _ref.incomingAssets,
|
|
2408
|
-
incomingAssets = _ref$incomingAssets === void 0 ? [] : _ref$incomingAssets,
|
|
2409
|
-
_ref$actualIncomingAs = _ref.actualIncomingAssetAmounts,
|
|
2410
|
-
actualIncomingAssetAmounts = _ref$actualIncomingAs === void 0 ? [] : _ref$actualIncomingAs,
|
|
2411
|
-
_ref$minIncomingAsset = _ref.minIncomingAssetAmounts,
|
|
2412
|
-
minIncomingAssetAmounts = _ref$minIncomingAsset === void 0 ? actualIncomingAssetAmounts : _ref$minIncomingAsset;
|
|
2413
|
-
return protocol.encodeArgs(['address[]', 'uint256[]', 'uint256[]', 'address[]', 'uint256[]', 'uint256[]'], [spendAssets, maxSpendAssetAmounts, actualSpendAssetAmounts, incomingAssets, minIncomingAssetAmounts, actualIncomingAssetAmounts]);
|
|
2414
|
-
}
|
|
2415
|
-
function mockGenericSwap(_x) {
|
|
2416
|
-
return _mockGenericSwap.apply(this, arguments);
|
|
2417
|
-
}
|
|
2418
|
-
|
|
2419
|
-
function _mockGenericSwap() {
|
|
2420
|
-
_mockGenericSwap = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref2) {
|
|
2421
|
-
var comptrollerProxy, vaultProxy, integrationManager, fundOwner, mockGenericAdapter, _ref2$selector, selector, _ref2$spendAssets, spendAssets, _ref2$actualSpendAsse, actualSpendAssetAmounts, _ref2$maxSpendAssetAm, maxSpendAssetAmounts, _ref2$incomingAssets, incomingAssets, _ref2$actualIncomingA, actualIncomingAssetAmounts, _ref2$minIncomingAsse, minIncomingAssetAmounts, _ref2$seedFund, seedFund, key, swapArgs, callArgs, swapTx;
|
|
2422
|
-
|
|
2423
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2424
|
-
while (1) {
|
|
2425
|
-
switch (_context.prev = _context.next) {
|
|
2426
|
-
case 0:
|
|
2427
|
-
comptrollerProxy = _ref2.comptrollerProxy, vaultProxy = _ref2.vaultProxy, integrationManager = _ref2.integrationManager, fundOwner = _ref2.fundOwner, mockGenericAdapter = _ref2.mockGenericAdapter, _ref2$selector = _ref2.selector, selector = _ref2$selector === void 0 ? mockGenericSwapASelector : _ref2$selector, _ref2$spendAssets = _ref2.spendAssets, spendAssets = _ref2$spendAssets === void 0 ? [] : _ref2$spendAssets, _ref2$actualSpendAsse = _ref2.actualSpendAssetAmounts, actualSpendAssetAmounts = _ref2$actualSpendAsse === void 0 ? [] : _ref2$actualSpendAsse, _ref2$maxSpendAssetAm = _ref2.maxSpendAssetAmounts, maxSpendAssetAmounts = _ref2$maxSpendAssetAm === void 0 ? actualSpendAssetAmounts : _ref2$maxSpendAssetAm, _ref2$incomingAssets = _ref2.incomingAssets, incomingAssets = _ref2$incomingAssets === void 0 ? [] : _ref2$incomingAssets, _ref2$actualIncomingA = _ref2.actualIncomingAssetAmounts, actualIncomingAssetAmounts = _ref2$actualIncomingA === void 0 ? [] : _ref2$actualIncomingA, _ref2$minIncomingAsse = _ref2.minIncomingAssetAmounts, minIncomingAssetAmounts = _ref2$minIncomingAsse === void 0 ? actualIncomingAssetAmounts : _ref2$minIncomingAsse, _ref2$seedFund = _ref2.seedFund, seedFund = _ref2$seedFund === void 0 ? false : _ref2$seedFund;
|
|
2428
|
-
|
|
2429
|
-
if (!seedFund) {
|
|
2430
|
-
_context.next = 9;
|
|
2431
|
-
break;
|
|
2432
|
-
}
|
|
2433
|
-
|
|
2434
|
-
_context.t0 = _regeneratorRuntime__default['default'].keys(spendAssets);
|
|
2435
|
-
|
|
2436
|
-
case 3:
|
|
2437
|
-
if ((_context.t1 = _context.t0()).done) {
|
|
2438
|
-
_context.next = 9;
|
|
2439
|
-
break;
|
|
2440
|
-
}
|
|
2441
|
-
|
|
2442
|
-
key = _context.t1.value;
|
|
2443
|
-
_context.next = 7;
|
|
2444
|
-
return spendAssets[key].transfer(vaultProxy, maxSpendAssetAmounts[key]);
|
|
2445
|
-
|
|
2446
|
-
case 7:
|
|
2447
|
-
_context.next = 3;
|
|
2448
|
-
break;
|
|
2449
|
-
|
|
2450
|
-
case 9:
|
|
2451
|
-
swapArgs = mockGenericSwapArgs({
|
|
2452
|
-
actualIncomingAssetAmounts: actualIncomingAssetAmounts,
|
|
2453
|
-
actualSpendAssetAmounts: actualSpendAssetAmounts,
|
|
2454
|
-
incomingAssets: incomingAssets,
|
|
2455
|
-
maxSpendAssetAmounts: maxSpendAssetAmounts,
|
|
2456
|
-
minIncomingAssetAmounts: minIncomingAssetAmounts,
|
|
2457
|
-
spendAssets: spendAssets
|
|
2458
|
-
});
|
|
2459
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2460
|
-
adapter: mockGenericAdapter,
|
|
2461
|
-
encodedCallArgs: swapArgs,
|
|
2462
|
-
selector: selector
|
|
2463
|
-
});
|
|
2464
|
-
swapTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2465
|
-
_context.next = 14;
|
|
2466
|
-
return expect(swapTx).resolves.toBeReceipt();
|
|
2467
|
-
|
|
2468
|
-
case 14:
|
|
2469
|
-
return _context.abrupt("return", swapTx);
|
|
2470
|
-
|
|
2471
|
-
case 15:
|
|
2472
|
-
case "end":
|
|
2473
|
-
return _context.stop();
|
|
2474
|
-
}
|
|
2475
|
-
}
|
|
2476
|
-
}, _callee);
|
|
2477
|
-
}));
|
|
2478
|
-
return _mockGenericSwap.apply(this, arguments);
|
|
2479
|
-
}
|
|
2480
|
-
|
|
2481
|
-
function olympusV2Stake(_x) {
|
|
2482
|
-
return _olympusV2Stake.apply(this, arguments);
|
|
2483
|
-
}
|
|
2484
|
-
|
|
2485
|
-
function _olympusV2Stake() {
|
|
2486
|
-
_olympusV2Stake = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
2487
|
-
var comptrollerProxy, integrationManager, signer, olympusV2Adapter, amount, stakeArgs, callArgs, stakeTx;
|
|
2488
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2489
|
-
while (1) {
|
|
2490
|
-
switch (_context.prev = _context.next) {
|
|
2491
|
-
case 0:
|
|
2492
|
-
comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, signer = _ref.signer, olympusV2Adapter = _ref.olympusV2Adapter, amount = _ref.amount;
|
|
2493
|
-
stakeArgs = protocol.olympusV2StakeArgs({
|
|
2494
|
-
amount: amount
|
|
2495
|
-
});
|
|
2496
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2497
|
-
adapter: olympusV2Adapter,
|
|
2498
|
-
encodedCallArgs: stakeArgs,
|
|
2499
|
-
selector: protocol.stakeSelector
|
|
2500
|
-
});
|
|
2501
|
-
stakeTx = comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2502
|
-
return _context.abrupt("return", stakeTx);
|
|
2503
|
-
|
|
2504
|
-
case 5:
|
|
2505
|
-
case "end":
|
|
2506
|
-
return _context.stop();
|
|
2507
|
-
}
|
|
2508
|
-
}
|
|
2509
|
-
}, _callee);
|
|
2510
|
-
}));
|
|
2511
|
-
return _olympusV2Stake.apply(this, arguments);
|
|
2512
|
-
}
|
|
2513
|
-
|
|
2514
|
-
function olympusV2Unstake(_x2) {
|
|
2515
|
-
return _olympusV2Unstake.apply(this, arguments);
|
|
2516
|
-
}
|
|
2517
|
-
|
|
2518
|
-
function _olympusV2Unstake() {
|
|
2519
|
-
_olympusV2Unstake = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
2520
|
-
var comptrollerProxy, integrationManager, signer, olympusV2Adapter, amount, unstakeArgs, callArgs, unstakeTx;
|
|
2521
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
2522
|
-
while (1) {
|
|
2523
|
-
switch (_context2.prev = _context2.next) {
|
|
2524
|
-
case 0:
|
|
2525
|
-
comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, signer = _ref2.signer, olympusV2Adapter = _ref2.olympusV2Adapter, amount = _ref2.amount;
|
|
2526
|
-
unstakeArgs = protocol.olympusV2UnstakeArgs({
|
|
2527
|
-
amount: amount
|
|
2528
|
-
});
|
|
2529
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2530
|
-
adapter: olympusV2Adapter,
|
|
2531
|
-
encodedCallArgs: unstakeArgs,
|
|
2532
|
-
selector: protocol.unstakeSelector
|
|
2533
|
-
});
|
|
2534
|
-
unstakeTx = comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2535
|
-
return _context2.abrupt("return", unstakeTx);
|
|
2536
|
-
|
|
2537
|
-
case 5:
|
|
2538
|
-
case "end":
|
|
2539
|
-
return _context2.stop();
|
|
2540
|
-
}
|
|
2541
|
-
}
|
|
2542
|
-
}, _callee2);
|
|
2543
|
-
}));
|
|
2544
|
-
return _olympusV2Unstake.apply(this, arguments);
|
|
2545
|
-
}
|
|
2546
|
-
|
|
2547
|
-
function paraSwapV5GenerateDummyPaths(_ref) {
|
|
2548
|
-
var toTokens = _ref.toTokens;
|
|
2549
|
-
return toTokens.map(function (toToken) {
|
|
2550
|
-
return {
|
|
2551
|
-
// Not supported in our protocol
|
|
2552
|
-
adapters: [],
|
|
2553
|
-
to: toToken,
|
|
2554
|
-
totalNetworkFee: 0 // Can ignore this param in the dummy
|
|
2555
|
-
|
|
2556
|
-
};
|
|
2557
|
-
});
|
|
2558
|
-
}
|
|
2559
|
-
function paraSwapV5TakeOrder(_x) {
|
|
2560
|
-
return _paraSwapV5TakeOrder.apply(this, arguments);
|
|
2561
|
-
}
|
|
2562
|
-
|
|
2563
|
-
function _paraSwapV5TakeOrder() {
|
|
2564
|
-
_paraSwapV5TakeOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref2) {
|
|
2565
|
-
var comptrollerProxy, integrationManager, fundOwner, paraSwapV5Adapter, outgoingAsset, outgoingAssetAmount, _ref2$minIncomingAsse, minIncomingAssetAmount, _ref2$expectedIncomin, expectedIncomingAssetAmount, _ref2$uuid, uuid, paths, takeOrderArgs, callArgs;
|
|
2566
|
-
|
|
2567
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2568
|
-
while (1) {
|
|
2569
|
-
switch (_context.prev = _context.next) {
|
|
2570
|
-
case 0:
|
|
2571
|
-
comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, fundOwner = _ref2.fundOwner, paraSwapV5Adapter = _ref2.paraSwapV5Adapter, outgoingAsset = _ref2.outgoingAsset, outgoingAssetAmount = _ref2.outgoingAssetAmount, _ref2$minIncomingAsse = _ref2.minIncomingAssetAmount, minIncomingAssetAmount = _ref2$minIncomingAsse === void 0 ? 1 : _ref2$minIncomingAsse, _ref2$expectedIncomin = _ref2.expectedIncomingAssetAmount, expectedIncomingAssetAmount = _ref2$expectedIncomin === void 0 ? minIncomingAssetAmount : _ref2$expectedIncomin, _ref2$uuid = _ref2.uuid, uuid = _ref2$uuid === void 0 ? ethers.utils.randomBytes(16) : _ref2$uuid, paths = _ref2.paths;
|
|
2572
|
-
takeOrderArgs = protocol.paraSwapV5TakeOrderArgs({
|
|
2573
|
-
expectedIncomingAssetAmount: expectedIncomingAssetAmount,
|
|
2574
|
-
minIncomingAssetAmount: minIncomingAssetAmount,
|
|
2575
|
-
outgoingAsset: outgoingAsset,
|
|
2576
|
-
outgoingAssetAmount: outgoingAssetAmount,
|
|
2577
|
-
paths: paths,
|
|
2578
|
-
uuid: uuid
|
|
2579
|
-
});
|
|
2580
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2581
|
-
adapter: paraSwapV5Adapter,
|
|
2582
|
-
encodedCallArgs: takeOrderArgs,
|
|
2583
|
-
selector: protocol.takeOrderSelector
|
|
2584
|
-
});
|
|
2585
|
-
return _context.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2586
|
-
|
|
2587
|
-
case 4:
|
|
2588
|
-
case "end":
|
|
2589
|
-
return _context.stop();
|
|
2590
|
-
}
|
|
2591
|
-
}
|
|
2592
|
-
}, _callee);
|
|
2593
|
-
}));
|
|
2594
|
-
return _paraSwapV5TakeOrder.apply(this, arguments);
|
|
2595
|
-
}
|
|
2596
|
-
|
|
2597
|
-
function poolTogetherV4Lend(_x) {
|
|
2598
|
-
return _poolTogetherV4Lend.apply(this, arguments);
|
|
2599
|
-
}
|
|
2600
|
-
|
|
2601
|
-
function _poolTogetherV4Lend() {
|
|
2602
|
-
_poolTogetherV4Lend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
2603
|
-
var comptrollerProxy, integrationManager, fundOwner, poolTogetherV4Adapter, ptToken, _ref$amount, amount, lendArgs, callArgs, lendTx;
|
|
2604
|
-
|
|
2605
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2606
|
-
while (1) {
|
|
2607
|
-
switch (_context.prev = _context.next) {
|
|
2608
|
-
case 0:
|
|
2609
|
-
comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, poolTogetherV4Adapter = _ref.poolTogetherV4Adapter, ptToken = _ref.ptToken, _ref$amount = _ref.amount, amount = _ref$amount === void 0 ? ethers.utils.parseEther('1') : _ref$amount;
|
|
2610
|
-
lendArgs = protocol.poolTogetherV4LendArgs({
|
|
2611
|
-
amount: amount,
|
|
2612
|
-
ptToken: ptToken
|
|
2613
|
-
});
|
|
2614
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2615
|
-
adapter: poolTogetherV4Adapter,
|
|
2616
|
-
encodedCallArgs: lendArgs,
|
|
2617
|
-
selector: protocol.lendSelector
|
|
2618
|
-
});
|
|
2619
|
-
lendTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2620
|
-
return _context.abrupt("return", lendTx);
|
|
2621
|
-
|
|
2622
|
-
case 5:
|
|
2623
|
-
case "end":
|
|
2624
|
-
return _context.stop();
|
|
2625
|
-
}
|
|
2626
|
-
}
|
|
2627
|
-
}, _callee);
|
|
2628
|
-
}));
|
|
2629
|
-
return _poolTogetherV4Lend.apply(this, arguments);
|
|
2630
|
-
}
|
|
2631
|
-
|
|
2632
|
-
function poolTogetherV4Redeem(_x2) {
|
|
2633
|
-
return _poolTogetherV4Redeem.apply(this, arguments);
|
|
2634
|
-
}
|
|
2635
|
-
|
|
2636
|
-
function _poolTogetherV4Redeem() {
|
|
2637
|
-
_poolTogetherV4Redeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
2638
|
-
var comptrollerProxy, integrationManager, fundOwner, poolTogetherV4Adapter, ptToken, _ref2$amount, amount, redeemArgs, callArgs, redeemTx;
|
|
2639
|
-
|
|
2640
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
2641
|
-
while (1) {
|
|
2642
|
-
switch (_context2.prev = _context2.next) {
|
|
2643
|
-
case 0:
|
|
2644
|
-
comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, fundOwner = _ref2.fundOwner, poolTogetherV4Adapter = _ref2.poolTogetherV4Adapter, ptToken = _ref2.ptToken, _ref2$amount = _ref2.amount, amount = _ref2$amount === void 0 ? ethers.utils.parseEther('1') : _ref2$amount;
|
|
2645
|
-
redeemArgs = protocol.poolTogetherV4RedeemArgs({
|
|
2646
|
-
amount: amount,
|
|
2647
|
-
ptToken: ptToken
|
|
2648
|
-
});
|
|
2649
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2650
|
-
adapter: poolTogetherV4Adapter,
|
|
2651
|
-
encodedCallArgs: redeemArgs,
|
|
2652
|
-
selector: protocol.redeemSelector
|
|
2653
|
-
});
|
|
2654
|
-
redeemTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2655
|
-
return _context2.abrupt("return", redeemTx);
|
|
2656
|
-
|
|
2657
|
-
case 5:
|
|
2658
|
-
case "end":
|
|
2659
|
-
return _context2.stop();
|
|
2660
|
-
}
|
|
2661
|
-
}
|
|
2662
|
-
}, _callee2);
|
|
2663
|
-
}));
|
|
2664
|
-
return _poolTogetherV4Redeem.apply(this, arguments);
|
|
2665
|
-
}
|
|
2666
|
-
|
|
2667
|
-
function poolTogetherV4ClaimRewards(_x3) {
|
|
2668
|
-
return _poolTogetherV4ClaimRewards.apply(this, arguments);
|
|
2669
|
-
}
|
|
2670
|
-
|
|
2671
|
-
function _poolTogetherV4ClaimRewards() {
|
|
2672
|
-
_poolTogetherV4ClaimRewards = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
2673
|
-
var comptrollerProxy, integrationManager, fundOwner, poolTogetherV4Adapter, prizeDistributor, drawIds, winningPicks, claimRewardsArgs, callArgs, claimTx;
|
|
2674
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
2675
|
-
while (1) {
|
|
2676
|
-
switch (_context3.prev = _context3.next) {
|
|
2677
|
-
case 0:
|
|
2678
|
-
comptrollerProxy = _ref3.comptrollerProxy, integrationManager = _ref3.integrationManager, fundOwner = _ref3.fundOwner, poolTogetherV4Adapter = _ref3.poolTogetherV4Adapter, prizeDistributor = _ref3.prizeDistributor, drawIds = _ref3.drawIds, winningPicks = _ref3.winningPicks;
|
|
2679
|
-
claimRewardsArgs = protocol.poolTogetherV4ClaimRewardsArgs({
|
|
2680
|
-
drawIds: drawIds,
|
|
2681
|
-
prizeDistributor: prizeDistributor,
|
|
2682
|
-
winningPicks: winningPicks
|
|
2683
|
-
});
|
|
2684
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2685
|
-
adapter: poolTogetherV4Adapter,
|
|
2686
|
-
encodedCallArgs: claimRewardsArgs,
|
|
2687
|
-
selector: protocol.claimRewardsSelector
|
|
2688
|
-
});
|
|
2689
|
-
claimTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2690
|
-
return _context3.abrupt("return", claimTx);
|
|
2691
|
-
|
|
2692
|
-
case 5:
|
|
2693
|
-
case "end":
|
|
2694
|
-
return _context3.stop();
|
|
2695
|
-
}
|
|
2696
|
-
}
|
|
2697
|
-
}, _callee3);
|
|
2698
|
-
}));
|
|
2699
|
-
return _poolTogetherV4ClaimRewards.apply(this, arguments);
|
|
2700
|
-
}
|
|
2701
|
-
|
|
2702
|
-
function synthetixAssignExchangeDelegate(_x) {
|
|
2703
|
-
return _synthetixAssignExchangeDelegate.apply(this, arguments);
|
|
2704
|
-
}
|
|
2705
|
-
|
|
2706
|
-
function _synthetixAssignExchangeDelegate() {
|
|
2707
|
-
_synthetixAssignExchangeDelegate = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
2708
|
-
var comptrollerProxy, synthetixDelegateApprovals, fundOwner, delegate;
|
|
2709
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2710
|
-
while (1) {
|
|
2711
|
-
switch (_context.prev = _context.next) {
|
|
2712
|
-
case 0:
|
|
2713
|
-
comptrollerProxy = _ref.comptrollerProxy, synthetixDelegateApprovals = _ref.synthetixDelegateApprovals, fundOwner = _ref.fundOwner, delegate = _ref.delegate;
|
|
2714
|
-
_context.next = 3;
|
|
2715
|
-
return comptrollerProxy.connect(fundOwner).vaultCallOnContract(synthetixDelegateApprovals, protocol.synthetixAssignExchangeDelegateSelector, protocol.encodeArgs(['address'], [delegate]));
|
|
2716
|
-
|
|
2717
|
-
case 3:
|
|
2718
|
-
case "end":
|
|
2719
|
-
return _context.stop();
|
|
2720
|
-
}
|
|
2721
|
-
}
|
|
2722
|
-
}, _callee);
|
|
2723
|
-
}));
|
|
2724
|
-
return _synthetixAssignExchangeDelegate.apply(this, arguments);
|
|
2725
|
-
}
|
|
2726
|
-
|
|
2727
|
-
function synthetixRedeem(_x2) {
|
|
2728
|
-
return _synthetixRedeem.apply(this, arguments);
|
|
2729
|
-
}
|
|
2730
|
-
|
|
2731
|
-
function _synthetixRedeem() {
|
|
2732
|
-
_synthetixRedeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
2733
|
-
var comptrollerProxy, integrationManager, signer, synthetixAdapter, synths, redeemArgs, callArgs;
|
|
2734
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
2735
|
-
while (1) {
|
|
2736
|
-
switch (_context2.prev = _context2.next) {
|
|
2737
|
-
case 0:
|
|
2738
|
-
comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, signer = _ref2.signer, synthetixAdapter = _ref2.synthetixAdapter, synths = _ref2.synths;
|
|
2739
|
-
redeemArgs = protocol.synthetixRedeemArgs({
|
|
2740
|
-
synths: synths
|
|
2741
|
-
});
|
|
2742
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2743
|
-
adapter: synthetixAdapter,
|
|
2744
|
-
encodedCallArgs: redeemArgs,
|
|
2745
|
-
selector: protocol.redeemSelector
|
|
2746
|
-
});
|
|
2747
|
-
return _context2.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2748
|
-
|
|
2749
|
-
case 4:
|
|
2750
|
-
case "end":
|
|
2751
|
-
return _context2.stop();
|
|
2752
|
-
}
|
|
2753
|
-
}
|
|
2754
|
-
}, _callee2);
|
|
2755
|
-
}));
|
|
2756
|
-
return _synthetixRedeem.apply(this, arguments);
|
|
2757
|
-
}
|
|
2758
|
-
|
|
2759
|
-
function synthetixTakeOrder(_x3) {
|
|
2760
|
-
return _synthetixTakeOrder.apply(this, arguments);
|
|
2761
|
-
}
|
|
2762
|
-
|
|
2763
|
-
function _synthetixTakeOrder() {
|
|
2764
|
-
_synthetixTakeOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
2765
|
-
var comptrollerProxy, vaultProxy, integrationManager, fundOwner, synthetixAdapter, outgoingAsset, _ref3$outgoingAssetAm, outgoingAssetAmount, _ref3$minIncomingSusd, minIncomingSusdAmount, _ref3$seedFund, seedFund, takeOrderArgs, callArgs;
|
|
2766
|
-
|
|
2767
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
2768
|
-
while (1) {
|
|
2769
|
-
switch (_context3.prev = _context3.next) {
|
|
2770
|
-
case 0:
|
|
2771
|
-
comptrollerProxy = _ref3.comptrollerProxy, vaultProxy = _ref3.vaultProxy, integrationManager = _ref3.integrationManager, fundOwner = _ref3.fundOwner, synthetixAdapter = _ref3.synthetixAdapter, outgoingAsset = _ref3.outgoingAsset, _ref3$outgoingAssetAm = _ref3.outgoingAssetAmount, outgoingAssetAmount = _ref3$outgoingAssetAm === void 0 ? ethers.utils.parseEther('1') : _ref3$outgoingAssetAm, _ref3$minIncomingSusd = _ref3.minIncomingSusdAmount, minIncomingSusdAmount = _ref3$minIncomingSusd === void 0 ? ethers.utils.parseEther('1') : _ref3$minIncomingSusd, _ref3$seedFund = _ref3.seedFund, seedFund = _ref3$seedFund === void 0 ? false : _ref3$seedFund;
|
|
2772
|
-
|
|
2773
|
-
if (!seedFund) {
|
|
2774
|
-
_context3.next = 4;
|
|
2775
|
-
break;
|
|
2776
|
-
}
|
|
2777
|
-
|
|
2778
|
-
_context3.next = 4;
|
|
2779
|
-
return outgoingAsset.transfer(vaultProxy, outgoingAssetAmount);
|
|
2780
|
-
|
|
2781
|
-
case 4:
|
|
2782
|
-
takeOrderArgs = protocol.synthetixTakeOrderArgs({
|
|
2783
|
-
minIncomingSusdAmount: minIncomingSusdAmount,
|
|
2784
|
-
outgoingAsset: outgoingAsset,
|
|
2785
|
-
outgoingAssetAmount: outgoingAssetAmount
|
|
2786
|
-
});
|
|
2787
|
-
_context3.next = 7;
|
|
2788
|
-
return protocol.callOnIntegrationArgs({
|
|
2789
|
-
adapter: synthetixAdapter,
|
|
2790
|
-
encodedCallArgs: takeOrderArgs,
|
|
2791
|
-
selector: protocol.takeOrderSelector
|
|
2792
|
-
});
|
|
2793
|
-
|
|
2794
|
-
case 7:
|
|
2795
|
-
callArgs = _context3.sent;
|
|
2796
|
-
return _context3.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2797
|
-
|
|
2798
|
-
case 9:
|
|
2799
|
-
case "end":
|
|
2800
|
-
return _context3.stop();
|
|
2801
|
-
}
|
|
2802
|
-
}
|
|
2803
|
-
}, _callee3);
|
|
2804
|
-
}));
|
|
2805
|
-
return _synthetixTakeOrder.apply(this, arguments);
|
|
2806
|
-
}
|
|
2807
|
-
|
|
2808
|
-
var _templateObject;
|
|
2809
|
-
var UniswapV2Factory = ethers$1.contract()(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n function createPair(address,address) returns (address)\n function getPair(address,address) view returns (address)\n"])));
|
|
2810
|
-
function uniswapV2Lend(_x) {
|
|
2811
|
-
return _uniswapV2Lend.apply(this, arguments);
|
|
2812
|
-
}
|
|
2813
|
-
|
|
2814
|
-
function _uniswapV2Lend() {
|
|
2815
|
-
_uniswapV2Lend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
2816
|
-
var comptrollerProxy, vaultProxy, integrationManager, fundOwner, uniswapV2LiquidityAdapter, tokenA, tokenB, amountADesired, amountBDesired, amountAMin, amountBMin, minPoolTokenAmount, _ref$seedFund, seedFund, lendArgs, callArgs, lendTx;
|
|
2817
|
-
|
|
2818
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2819
|
-
while (1) {
|
|
2820
|
-
switch (_context.prev = _context.next) {
|
|
2821
|
-
case 0:
|
|
2822
|
-
comptrollerProxy = _ref.comptrollerProxy, vaultProxy = _ref.vaultProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, uniswapV2LiquidityAdapter = _ref.uniswapV2LiquidityAdapter, tokenA = _ref.tokenA, tokenB = _ref.tokenB, amountADesired = _ref.amountADesired, amountBDesired = _ref.amountBDesired, amountAMin = _ref.amountAMin, amountBMin = _ref.amountBMin, minPoolTokenAmount = _ref.minPoolTokenAmount, _ref$seedFund = _ref.seedFund, seedFund = _ref$seedFund === void 0 ? false : _ref$seedFund;
|
|
2823
|
-
|
|
2824
|
-
if (!seedFund) {
|
|
2825
|
-
_context.next = 6;
|
|
2826
|
-
break;
|
|
2827
|
-
}
|
|
2828
|
-
|
|
2829
|
-
_context.next = 4;
|
|
2830
|
-
return tokenA.transfer(vaultProxy, amountADesired);
|
|
2831
|
-
|
|
2832
|
-
case 4:
|
|
2833
|
-
_context.next = 6;
|
|
2834
|
-
return tokenB.transfer(vaultProxy, amountBDesired);
|
|
2835
|
-
|
|
2836
|
-
case 6:
|
|
2837
|
-
lendArgs = protocol.uniswapV2LendArgs({
|
|
2838
|
-
amountADesired: amountADesired,
|
|
2839
|
-
amountAMin: amountAMin,
|
|
2840
|
-
amountBDesired: amountBDesired,
|
|
2841
|
-
amountBMin: amountBMin,
|
|
2842
|
-
minPoolTokenAmount: minPoolTokenAmount,
|
|
2843
|
-
tokenA: tokenA,
|
|
2844
|
-
tokenB: tokenB
|
|
2845
|
-
});
|
|
2846
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2847
|
-
adapter: uniswapV2LiquidityAdapter,
|
|
2848
|
-
encodedCallArgs: lendArgs,
|
|
2849
|
-
selector: protocol.lendSelector
|
|
2850
|
-
});
|
|
2851
|
-
lendTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2852
|
-
_context.next = 11;
|
|
2853
|
-
return expect(lendTx).resolves.toBeReceipt();
|
|
2854
|
-
|
|
2855
|
-
case 11:
|
|
2856
|
-
return _context.abrupt("return", lendTx);
|
|
2857
|
-
|
|
2858
|
-
case 12:
|
|
2859
|
-
case "end":
|
|
2860
|
-
return _context.stop();
|
|
2861
|
-
}
|
|
2862
|
-
}
|
|
2863
|
-
}, _callee);
|
|
2864
|
-
}));
|
|
2865
|
-
return _uniswapV2Lend.apply(this, arguments);
|
|
2866
|
-
}
|
|
2867
|
-
|
|
2868
|
-
function uniswapV2Redeem(_x2) {
|
|
2869
|
-
return _uniswapV2Redeem.apply(this, arguments);
|
|
2870
|
-
}
|
|
2871
|
-
|
|
2872
|
-
function _uniswapV2Redeem() {
|
|
2873
|
-
_uniswapV2Redeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
2874
|
-
var comptrollerProxy, integrationManager, fundOwner, uniswapV2LiquidityAdapter, poolTokenAmount, tokenA, tokenB, amountAMin, amountBMin, redeemArgs, callArgs, redeemTx;
|
|
2875
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
2876
|
-
while (1) {
|
|
2877
|
-
switch (_context2.prev = _context2.next) {
|
|
2878
|
-
case 0:
|
|
2879
|
-
comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, fundOwner = _ref2.fundOwner, uniswapV2LiquidityAdapter = _ref2.uniswapV2LiquidityAdapter, poolTokenAmount = _ref2.poolTokenAmount, tokenA = _ref2.tokenA, tokenB = _ref2.tokenB, amountAMin = _ref2.amountAMin, amountBMin = _ref2.amountBMin;
|
|
2880
|
-
redeemArgs = protocol.uniswapV2RedeemArgs({
|
|
2881
|
-
amountAMin: amountAMin,
|
|
2882
|
-
amountBMin: amountBMin,
|
|
2883
|
-
poolTokenAmount: poolTokenAmount,
|
|
2884
|
-
tokenA: tokenA,
|
|
2885
|
-
tokenB: tokenB
|
|
2886
|
-
});
|
|
2887
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2888
|
-
adapter: uniswapV2LiquidityAdapter,
|
|
2889
|
-
encodedCallArgs: redeemArgs,
|
|
2890
|
-
selector: protocol.redeemSelector
|
|
2891
|
-
});
|
|
2892
|
-
redeemTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
2893
|
-
_context2.next = 6;
|
|
2894
|
-
return expect(redeemTx).resolves.toBeReceipt();
|
|
2895
|
-
|
|
2896
|
-
case 6:
|
|
2897
|
-
return _context2.abrupt("return", redeemTx);
|
|
2898
|
-
|
|
2899
|
-
case 7:
|
|
2900
|
-
case "end":
|
|
2901
|
-
return _context2.stop();
|
|
2902
|
-
}
|
|
2903
|
-
}
|
|
2904
|
-
}, _callee2);
|
|
2905
|
-
}));
|
|
2906
|
-
return _uniswapV2Redeem.apply(this, arguments);
|
|
2907
|
-
}
|
|
2908
|
-
|
|
2909
|
-
function uniswapV2TakeOrder(_x3) {
|
|
2910
|
-
return _uniswapV2TakeOrder.apply(this, arguments);
|
|
2911
|
-
}
|
|
2912
|
-
|
|
2913
|
-
function _uniswapV2TakeOrder() {
|
|
2914
|
-
_uniswapV2TakeOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
2915
|
-
var comptrollerProxy, vaultProxy, integrationManager, fundOwner, uniswapV2ExchangeAdapter, path, outgoingAssetAmount, minIncomingAssetAmount, _ref3$seedFund, seedFund, takeOrderArgs, callArgs;
|
|
2916
|
-
|
|
2917
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
2918
|
-
while (1) {
|
|
2919
|
-
switch (_context3.prev = _context3.next) {
|
|
2920
|
-
case 0:
|
|
2921
|
-
comptrollerProxy = _ref3.comptrollerProxy, vaultProxy = _ref3.vaultProxy, integrationManager = _ref3.integrationManager, fundOwner = _ref3.fundOwner, uniswapV2ExchangeAdapter = _ref3.uniswapV2ExchangeAdapter, path = _ref3.path, outgoingAssetAmount = _ref3.outgoingAssetAmount, minIncomingAssetAmount = _ref3.minIncomingAssetAmount, _ref3$seedFund = _ref3.seedFund, seedFund = _ref3$seedFund === void 0 ? false : _ref3$seedFund;
|
|
2922
|
-
|
|
2923
|
-
if (!seedFund) {
|
|
2924
|
-
_context3.next = 4;
|
|
2925
|
-
break;
|
|
2926
|
-
}
|
|
2927
|
-
|
|
2928
|
-
_context3.next = 4;
|
|
2929
|
-
return path[0].transfer(vaultProxy, outgoingAssetAmount);
|
|
2930
|
-
|
|
2931
|
-
case 4:
|
|
2932
|
-
takeOrderArgs = protocol.uniswapV2TakeOrderArgs({
|
|
2933
|
-
minIncomingAssetAmount: minIncomingAssetAmount,
|
|
2934
|
-
outgoingAssetAmount: outgoingAssetAmount,
|
|
2935
|
-
path: path
|
|
2936
|
-
});
|
|
2937
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2938
|
-
adapter: uniswapV2ExchangeAdapter,
|
|
2939
|
-
encodedCallArgs: takeOrderArgs,
|
|
2940
|
-
selector: protocol.takeOrderSelector
|
|
2941
|
-
});
|
|
2942
|
-
return _context3.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2943
|
-
|
|
2944
|
-
case 7:
|
|
2945
|
-
case "end":
|
|
2946
|
-
return _context3.stop();
|
|
2947
|
-
}
|
|
2948
|
-
}
|
|
2949
|
-
}, _callee3);
|
|
2950
|
-
}));
|
|
2951
|
-
return _uniswapV2TakeOrder.apply(this, arguments);
|
|
2952
|
-
}
|
|
2953
|
-
|
|
2954
|
-
function uniswapV3TakeOrder(_x) {
|
|
2955
|
-
return _uniswapV3TakeOrder.apply(this, arguments);
|
|
2956
|
-
}
|
|
2957
|
-
|
|
2958
|
-
function _uniswapV3TakeOrder() {
|
|
2959
|
-
_uniswapV3TakeOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
2960
|
-
var comptrollerProxy, integrationManager, fundOwner, uniswapV3Adapter, pathAddresses, pathFees, outgoingAssetAmount, _ref$minIncomingAsset, minIncomingAssetAmount, _ref$seedFund, seedFund, vaultProxy, takeOrderArgs, callArgs;
|
|
2961
|
-
|
|
2962
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
2963
|
-
while (1) {
|
|
2964
|
-
switch (_context.prev = _context.next) {
|
|
2965
|
-
case 0:
|
|
2966
|
-
comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, uniswapV3Adapter = _ref.uniswapV3Adapter, pathAddresses = _ref.pathAddresses, pathFees = _ref.pathFees, outgoingAssetAmount = _ref.outgoingAssetAmount, _ref$minIncomingAsset = _ref.minIncomingAssetAmount, minIncomingAssetAmount = _ref$minIncomingAsset === void 0 ? 1 : _ref$minIncomingAsset, _ref$seedFund = _ref.seedFund, seedFund = _ref$seedFund === void 0 ? false : _ref$seedFund;
|
|
2967
|
-
|
|
2968
|
-
if (!seedFund) {
|
|
2969
|
-
_context.next = 7;
|
|
2970
|
-
break;
|
|
2971
|
-
}
|
|
2972
|
-
|
|
2973
|
-
_context.next = 4;
|
|
2974
|
-
return comptrollerProxy.getVaultProxy();
|
|
2975
|
-
|
|
2976
|
-
case 4:
|
|
2977
|
-
vaultProxy = _context.sent;
|
|
2978
|
-
_context.next = 7;
|
|
2979
|
-
return pathAddresses[0].transfer(vaultProxy, outgoingAssetAmount);
|
|
2980
|
-
|
|
2981
|
-
case 7:
|
|
2982
|
-
takeOrderArgs = protocol.uniswapV3TakeOrderArgs({
|
|
2983
|
-
minIncomingAssetAmount: minIncomingAssetAmount,
|
|
2984
|
-
outgoingAssetAmount: outgoingAssetAmount,
|
|
2985
|
-
pathAddresses: pathAddresses,
|
|
2986
|
-
pathFees: pathFees
|
|
2987
|
-
});
|
|
2988
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
2989
|
-
adapter: uniswapV3Adapter,
|
|
2990
|
-
encodedCallArgs: takeOrderArgs,
|
|
2991
|
-
selector: protocol.takeOrderSelector
|
|
2992
|
-
});
|
|
2993
|
-
return _context.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
2994
|
-
|
|
2995
|
-
case 10:
|
|
2996
|
-
case "end":
|
|
2997
|
-
return _context.stop();
|
|
2998
|
-
}
|
|
2999
|
-
}
|
|
3000
|
-
}, _callee);
|
|
3001
|
-
}));
|
|
3002
|
-
return _uniswapV3TakeOrder.apply(this, arguments);
|
|
3003
|
-
}
|
|
3004
|
-
|
|
3005
|
-
function yearnVaultV2Lend(_x) {
|
|
3006
|
-
return _yearnVaultV2Lend.apply(this, arguments);
|
|
3007
|
-
}
|
|
3008
|
-
|
|
3009
|
-
function _yearnVaultV2Lend() {
|
|
3010
|
-
_yearnVaultV2Lend = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
3011
|
-
var signer, comptrollerProxy, integrationManager, yearnVaultV2Adapter, yVault, outgoingUnderlyingAmount, _ref$minIncomingYVaul, minIncomingYVaultSharesAmount, callArgs;
|
|
3012
|
-
|
|
3013
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3014
|
-
while (1) {
|
|
3015
|
-
switch (_context.prev = _context.next) {
|
|
3016
|
-
case 0:
|
|
3017
|
-
signer = _ref.signer, comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, yearnVaultV2Adapter = _ref.yearnVaultV2Adapter, yVault = _ref.yVault, outgoingUnderlyingAmount = _ref.outgoingUnderlyingAmount, _ref$minIncomingYVaul = _ref.minIncomingYVaultSharesAmount, minIncomingYVaultSharesAmount = _ref$minIncomingYVaul === void 0 ? ethers.BigNumber.from(1) : _ref$minIncomingYVaul;
|
|
3018
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
3019
|
-
adapter: yearnVaultV2Adapter,
|
|
3020
|
-
encodedCallArgs: protocol.yearnVaultV2LendArgs({
|
|
3021
|
-
minIncomingYVaultSharesAmount: minIncomingYVaultSharesAmount,
|
|
3022
|
-
outgoingUnderlyingAmount: outgoingUnderlyingAmount,
|
|
3023
|
-
yVault: yVault
|
|
3024
|
-
}),
|
|
3025
|
-
selector: protocol.lendSelector
|
|
3026
|
-
});
|
|
3027
|
-
return _context.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
3028
|
-
|
|
3029
|
-
case 3:
|
|
3030
|
-
case "end":
|
|
3031
|
-
return _context.stop();
|
|
3032
|
-
}
|
|
3033
|
-
}
|
|
3034
|
-
}, _callee);
|
|
3035
|
-
}));
|
|
3036
|
-
return _yearnVaultV2Lend.apply(this, arguments);
|
|
3037
|
-
}
|
|
3038
|
-
|
|
3039
|
-
function yearnVaultV2Redeem(_x2) {
|
|
3040
|
-
return _yearnVaultV2Redeem.apply(this, arguments);
|
|
3041
|
-
}
|
|
3042
|
-
|
|
3043
|
-
function _yearnVaultV2Redeem() {
|
|
3044
|
-
_yearnVaultV2Redeem = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
3045
|
-
var signer, comptrollerProxy, integrationManager, yearnVaultV2Adapter, yVault, maxOutgoingYVaultSharesAmount, _ref2$minIncomingUnde, minIncomingUnderlyingAmount, _ref2$slippageToleran, slippageToleranceBps, callArgs;
|
|
3046
|
-
|
|
3047
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
3048
|
-
while (1) {
|
|
3049
|
-
switch (_context2.prev = _context2.next) {
|
|
3050
|
-
case 0:
|
|
3051
|
-
signer = _ref2.signer, comptrollerProxy = _ref2.comptrollerProxy, integrationManager = _ref2.integrationManager, yearnVaultV2Adapter = _ref2.yearnVaultV2Adapter, yVault = _ref2.yVault, maxOutgoingYVaultSharesAmount = _ref2.maxOutgoingYVaultSharesAmount, _ref2$minIncomingUnde = _ref2.minIncomingUnderlyingAmount, minIncomingUnderlyingAmount = _ref2$minIncomingUnde === void 0 ? ethers.BigNumber.from(1) : _ref2$minIncomingUnde, _ref2$slippageToleran = _ref2.slippageToleranceBps, slippageToleranceBps = _ref2$slippageToleran === void 0 ? 1 : _ref2$slippageToleran;
|
|
3052
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
3053
|
-
adapter: yearnVaultV2Adapter,
|
|
3054
|
-
encodedCallArgs: protocol.yearnVaultV2RedeemArgs({
|
|
3055
|
-
maxOutgoingYVaultSharesAmount: maxOutgoingYVaultSharesAmount,
|
|
3056
|
-
minIncomingUnderlyingAmount: minIncomingUnderlyingAmount,
|
|
3057
|
-
slippageToleranceBps: slippageToleranceBps,
|
|
3058
|
-
yVault: yVault
|
|
3059
|
-
}),
|
|
3060
|
-
selector: protocol.redeemSelector
|
|
3061
|
-
});
|
|
3062
|
-
return _context2.abrupt("return", comptrollerProxy.connect(signer).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
3063
|
-
|
|
3064
|
-
case 3:
|
|
3065
|
-
case "end":
|
|
3066
|
-
return _context2.stop();
|
|
3067
|
-
}
|
|
3068
|
-
}
|
|
3069
|
-
}, _callee2);
|
|
3070
|
-
}));
|
|
3071
|
-
return _yearnVaultV2Redeem.apply(this, arguments);
|
|
3072
|
-
}
|
|
3073
|
-
|
|
3074
|
-
function zeroExV2TakeOrder(_x) {
|
|
3075
|
-
return _zeroExV2TakeOrder.apply(this, arguments);
|
|
3076
|
-
}
|
|
3077
|
-
|
|
3078
|
-
function _zeroExV2TakeOrder() {
|
|
3079
|
-
_zeroExV2TakeOrder = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
3080
|
-
var comptrollerProxy, integrationManager, fundOwner, zeroExV2Adapter, signedOrder, takerAssetFillAmount, takeOrderArgs, callArgs;
|
|
3081
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3082
|
-
while (1) {
|
|
3083
|
-
switch (_context.prev = _context.next) {
|
|
3084
|
-
case 0:
|
|
3085
|
-
comptrollerProxy = _ref.comptrollerProxy, integrationManager = _ref.integrationManager, fundOwner = _ref.fundOwner, zeroExV2Adapter = _ref.zeroExV2Adapter, signedOrder = _ref.signedOrder, takerAssetFillAmount = _ref.takerAssetFillAmount;
|
|
3086
|
-
takeOrderArgs = protocol.zeroExV2TakeOrderArgs({
|
|
3087
|
-
signedOrder: signedOrder,
|
|
3088
|
-
takerAssetFillAmount: takerAssetFillAmount
|
|
3089
|
-
});
|
|
3090
|
-
callArgs = protocol.callOnIntegrationArgs({
|
|
3091
|
-
adapter: zeroExV2Adapter,
|
|
3092
|
-
encodedCallArgs: takeOrderArgs,
|
|
3093
|
-
selector: protocol.takeOrderSelector
|
|
3094
|
-
});
|
|
3095
|
-
return _context.abrupt("return", comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, protocol.IntegrationManagerActionId.CallOnIntegration, callArgs));
|
|
3096
|
-
|
|
3097
|
-
case 4:
|
|
3098
|
-
case "end":
|
|
3099
|
-
return _context.stop();
|
|
3100
|
-
}
|
|
3101
|
-
}
|
|
3102
|
-
}, _callee);
|
|
3103
|
-
}));
|
|
3104
|
-
return _zeroExV2TakeOrder.apply(this, arguments);
|
|
3105
|
-
}
|
|
3106
|
-
|
|
3107
|
-
function generatePolicyManagerConfigWithMockPolicies(_x) {
|
|
3108
|
-
return _generatePolicyManagerConfigWithMockPolicies.apply(this, arguments);
|
|
3109
|
-
}
|
|
3110
|
-
|
|
3111
|
-
function _generatePolicyManagerConfigWithMockPolicies() {
|
|
3112
|
-
_generatePolicyManagerConfigWithMockPolicies = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
3113
|
-
var deployer, policies, policiesSettingsData;
|
|
3114
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3115
|
-
while (1) {
|
|
3116
|
-
switch (_context.prev = _context.next) {
|
|
3117
|
-
case 0:
|
|
3118
|
-
deployer = _ref.deployer;
|
|
3119
|
-
_context.t0 = Object;
|
|
3120
|
-
_context.next = 4;
|
|
3121
|
-
return generateMockPolicies({
|
|
3122
|
-
deployer: deployer
|
|
3123
|
-
});
|
|
3124
|
-
|
|
3125
|
-
case 4:
|
|
3126
|
-
_context.t1 = _context.sent;
|
|
3127
|
-
policies = _context.t0.values.call(_context.t0, _context.t1);
|
|
3128
|
-
// Guarantees one policy has settings data
|
|
3129
|
-
policiesSettingsData = [].concat(_toConsumableArray(new Array(policies.length - 1).fill(ethers.constants.HashZero)), [ethers.utils.randomBytes(10)]);
|
|
3130
|
-
return _context.abrupt("return", protocol.policyManagerConfigArgs({
|
|
3131
|
-
policies: policies,
|
|
3132
|
-
settings: policiesSettingsData
|
|
3133
|
-
}));
|
|
3134
|
-
|
|
3135
|
-
case 8:
|
|
3136
|
-
case "end":
|
|
3137
|
-
return _context.stop();
|
|
3138
|
-
}
|
|
3139
|
-
}
|
|
3140
|
-
}, _callee);
|
|
3141
|
-
}));
|
|
3142
|
-
return _generatePolicyManagerConfigWithMockPolicies.apply(this, arguments);
|
|
3143
|
-
}
|
|
3144
|
-
|
|
3145
|
-
function generateMockPolicies(_x2) {
|
|
3146
|
-
return _generateMockPolicies.apply(this, arguments);
|
|
3147
|
-
}
|
|
3148
|
-
|
|
3149
|
-
function _generateMockPolicies() {
|
|
3150
|
-
_generateMockPolicies = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
3151
|
-
var deployer, mockAddTrackedAssetsPolicy, mockCreateExternalPositionPolicy, mockPostBuySharesPolicy, mockPostCallOnExternalPositionPolicy, mockPostCoIPolicy, mockRedeemSharesForSpecificAssetsPolicy, mockPreTransferSharesPolicy, mockRemoveExternalPositionPolicy;
|
|
3152
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
3153
|
-
while (1) {
|
|
3154
|
-
switch (_context2.prev = _context2.next) {
|
|
3155
|
-
case 0:
|
|
3156
|
-
deployer = _ref2.deployer;
|
|
3157
|
-
_context2.next = 3;
|
|
3158
|
-
return protocol.IPolicy.mock(deployer);
|
|
3159
|
-
|
|
3160
|
-
case 3:
|
|
3161
|
-
mockAddTrackedAssetsPolicy = _context2.sent;
|
|
3162
|
-
_context2.next = 6;
|
|
3163
|
-
return protocol.IPolicy.mock(deployer);
|
|
3164
|
-
|
|
3165
|
-
case 6:
|
|
3166
|
-
mockCreateExternalPositionPolicy = _context2.sent;
|
|
3167
|
-
_context2.next = 9;
|
|
3168
|
-
return protocol.IPolicy.mock(deployer);
|
|
3169
|
-
|
|
3170
|
-
case 9:
|
|
3171
|
-
mockPostBuySharesPolicy = _context2.sent;
|
|
3172
|
-
_context2.next = 12;
|
|
3173
|
-
return protocol.IPolicy.mock(deployer);
|
|
3174
|
-
|
|
3175
|
-
case 12:
|
|
3176
|
-
mockPostCallOnExternalPositionPolicy = _context2.sent;
|
|
3177
|
-
_context2.next = 15;
|
|
3178
|
-
return protocol.IPolicy.mock(deployer);
|
|
3179
|
-
|
|
3180
|
-
case 15:
|
|
3181
|
-
mockPostCoIPolicy = _context2.sent;
|
|
3182
|
-
_context2.next = 18;
|
|
3183
|
-
return protocol.IPolicy.mock(deployer);
|
|
3184
|
-
|
|
3185
|
-
case 18:
|
|
3186
|
-
mockRedeemSharesForSpecificAssetsPolicy = _context2.sent;
|
|
3187
|
-
_context2.next = 21;
|
|
3188
|
-
return protocol.IPolicy.mock(deployer);
|
|
3189
|
-
|
|
3190
|
-
case 21:
|
|
3191
|
-
mockPreTransferSharesPolicy = _context2.sent;
|
|
3192
|
-
_context2.next = 24;
|
|
3193
|
-
return protocol.IPolicy.mock(deployer);
|
|
3194
|
-
|
|
3195
|
-
case 24:
|
|
3196
|
-
mockRemoveExternalPositionPolicy = _context2.sent;
|
|
3197
|
-
_context2.next = 27;
|
|
3198
|
-
return Promise.all([// AddTrackedAssets
|
|
3199
|
-
mockAddTrackedAssetsPolicy.identifier.returns("MOCK_ADD_TRACKED_ASSETS"), mockAddTrackedAssetsPolicy.addFundSettings.returns(undefined), mockAddTrackedAssetsPolicy.activateForFund.returns(undefined), mockAddTrackedAssetsPolicy.canDisable.returns(false), mockAddTrackedAssetsPolicy.validateRule.returns(true), mockAddTrackedAssetsPolicy.implementedHooks.returns([protocol.PolicyHook.AddTrackedAssets]), mockAddTrackedAssetsPolicy.updateFundSettings.returns(undefined), // CreateExternalPosition
|
|
3200
|
-
mockCreateExternalPositionPolicy.identifier.returns("MOCK_CREATE_EXTERNAL_POSITION"), mockCreateExternalPositionPolicy.addFundSettings.returns(undefined), mockCreateExternalPositionPolicy.activateForFund.returns(undefined), mockCreateExternalPositionPolicy.canDisable.returns(false), mockCreateExternalPositionPolicy.validateRule.returns(true), mockCreateExternalPositionPolicy.implementedHooks.returns([protocol.PolicyHook.CreateExternalPosition]), mockCreateExternalPositionPolicy.updateFundSettings.returns(undefined), // PostBuyShares
|
|
3201
|
-
mockPostBuySharesPolicy.identifier.returns("MOCK_POST_BUY_SHARES"), mockPostBuySharesPolicy.addFundSettings.returns(undefined), mockPostBuySharesPolicy.activateForFund.returns(undefined), mockPostBuySharesPolicy.canDisable.returns(false), mockPostBuySharesPolicy.validateRule.returns(true), mockPostBuySharesPolicy.implementedHooks.returns([protocol.PolicyHook.PostBuyShares]), mockPostBuySharesPolicy.updateFundSettings.returns(undefined), // PostCallOnExternalPosition
|
|
3202
|
-
mockPostCallOnExternalPositionPolicy.identifier.returns("MOCK_POST_CALL_ON_EXTERNAL_POSITION"), mockPostCallOnExternalPositionPolicy.addFundSettings.returns(undefined), mockPostCallOnExternalPositionPolicy.activateForFund.returns(undefined), mockPostCallOnExternalPositionPolicy.canDisable.returns(false), mockPostCallOnExternalPositionPolicy.validateRule.returns(true), mockPostCallOnExternalPositionPolicy.implementedHooks.returns([protocol.PolicyHook.PostCallOnExternalPosition]), mockPostCallOnExternalPositionPolicy.updateFundSettings.returns(undefined), // PostCallOnIntegration
|
|
3203
|
-
mockPostCoIPolicy.identifier.returns("MOCK_POST_CALL_ON_INTEGRATION"), mockPostCoIPolicy.addFundSettings.returns(undefined), mockPostCoIPolicy.activateForFund.returns(undefined), mockPostCoIPolicy.canDisable.returns(false), mockPostCoIPolicy.validateRule.returns(true), mockPostCoIPolicy.implementedHooks.returns([protocol.PolicyHook.PostCallOnIntegration]), mockPostCoIPolicy.updateFundSettings.returns(undefined), // PreTransferSharesPolicy
|
|
3204
|
-
mockPreTransferSharesPolicy.identifier.returns("MOCK_PRE_TRANSFER_SHARES"), mockPreTransferSharesPolicy.addFundSettings.returns(undefined), mockPreTransferSharesPolicy.activateForFund.returns(undefined), mockPreTransferSharesPolicy.canDisable.returns(false), mockPreTransferSharesPolicy.validateRule.returns(true), mockPreTransferSharesPolicy.implementedHooks.returns([protocol.PolicyHook.PreTransferShares]), mockPreTransferSharesPolicy.updateFundSettings.returns(undefined), // RedeemSharesForSpecificAssets
|
|
3205
|
-
mockRedeemSharesForSpecificAssetsPolicy.identifier.returns("MOCK_REDEEM_SHARES_FOR_SPECIFIC_ASSETS"), mockRedeemSharesForSpecificAssetsPolicy.addFundSettings.returns(undefined), mockRedeemSharesForSpecificAssetsPolicy.activateForFund.returns(undefined), mockRedeemSharesForSpecificAssetsPolicy.canDisable.returns(false), mockRedeemSharesForSpecificAssetsPolicy.validateRule.returns(true), mockRedeemSharesForSpecificAssetsPolicy.implementedHooks.returns([protocol.PolicyHook.RedeemSharesForSpecificAssets]), mockRedeemSharesForSpecificAssetsPolicy.updateFundSettings.returns(undefined), // RemoveExternalPosition
|
|
3206
|
-
mockRemoveExternalPositionPolicy.identifier.returns("MOCK_REMOVE_EXTERNAL_POSITION"), mockRemoveExternalPositionPolicy.addFundSettings.returns(undefined), mockRemoveExternalPositionPolicy.activateForFund.returns(undefined), mockRemoveExternalPositionPolicy.canDisable.returns(false), mockRemoveExternalPositionPolicy.validateRule.returns(true), mockRemoveExternalPositionPolicy.implementedHooks.returns([protocol.PolicyHook.RedeemSharesForSpecificAssets]), mockRemoveExternalPositionPolicy.updateFundSettings.returns(undefined)]);
|
|
3207
|
-
|
|
3208
|
-
case 27:
|
|
3209
|
-
return _context2.abrupt("return", {
|
|
3210
|
-
mockAddTrackedAssetsPolicy: mockAddTrackedAssetsPolicy,
|
|
3211
|
-
mockCreateExternalPositionPolicy: mockCreateExternalPositionPolicy,
|
|
3212
|
-
mockPostBuySharesPolicy: mockPostBuySharesPolicy,
|
|
3213
|
-
mockPostCallOnExternalPositionPolicy: mockPostCallOnExternalPositionPolicy,
|
|
3214
|
-
mockPostCoIPolicy: mockPostCoIPolicy,
|
|
3215
|
-
mockPreTransferSharesPolicy: mockPreTransferSharesPolicy,
|
|
3216
|
-
mockRedeemSharesForSpecificAssetsPolicy: mockRedeemSharesForSpecificAssetsPolicy,
|
|
3217
|
-
mockRemoveExternalPositionPolicy: mockRemoveExternalPositionPolicy
|
|
3218
|
-
});
|
|
3219
|
-
|
|
3220
|
-
case 28:
|
|
3221
|
-
case "end":
|
|
3222
|
-
return _context2.stop();
|
|
3223
|
-
}
|
|
3224
|
-
}
|
|
3225
|
-
}, _callee2);
|
|
3226
|
-
}));
|
|
3227
|
-
return _generateMockPolicies.apply(this, arguments);
|
|
3228
|
-
}
|
|
3229
|
-
|
|
3230
|
-
function assertEvent(receipt, event, match) {
|
|
3231
|
-
var _events$shift;
|
|
3232
|
-
|
|
3233
|
-
var events = ethers$1.extractEvent(receipt, event);
|
|
3234
|
-
expect(events.length).toBe(1);
|
|
3235
|
-
expect(receipt).toHaveEmittedWith(event, match);
|
|
3236
|
-
var args = (_events$shift = events.shift()) === null || _events$shift === void 0 ? void 0 : _events$shift.args; // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
3237
|
-
|
|
3238
|
-
return args;
|
|
3239
|
-
}
|
|
3240
|
-
function assertNoEvent(receipt, event) {
|
|
3241
|
-
var events = ethers$1.extractEvent(receipt, event);
|
|
3242
|
-
expect(events.length).toBe(0);
|
|
3243
|
-
}
|
|
3244
|
-
|
|
3245
|
-
function buyShares(_x) {
|
|
3246
|
-
return _buyShares.apply(this, arguments);
|
|
3247
|
-
}
|
|
3248
|
-
|
|
3249
|
-
function _buyShares() {
|
|
3250
|
-
_buyShares = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(options) {
|
|
3251
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3252
|
-
while (1) {
|
|
3253
|
-
switch (_context.prev = _context.next) {
|
|
3254
|
-
case 0:
|
|
3255
|
-
_context.next = 2;
|
|
3256
|
-
return buySharesFunction(options);
|
|
3257
|
-
|
|
3258
|
-
case 2:
|
|
3259
|
-
return _context.abrupt("return", _context.sent.send());
|
|
3260
|
-
|
|
3261
|
-
case 3:
|
|
3262
|
-
case "end":
|
|
3263
|
-
return _context.stop();
|
|
3264
|
-
}
|
|
3265
|
-
}
|
|
3266
|
-
}, _callee);
|
|
3267
|
-
}));
|
|
3268
|
-
return _buyShares.apply(this, arguments);
|
|
3269
|
-
}
|
|
3270
|
-
|
|
3271
|
-
function buySharesFunction(_x2) {
|
|
3272
|
-
return _buySharesFunction.apply(this, arguments);
|
|
3273
|
-
}
|
|
3274
|
-
|
|
3275
|
-
function _buySharesFunction() {
|
|
3276
|
-
_buySharesFunction = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref) {
|
|
3277
|
-
var comptrollerProxy, denominationAsset, buyer, investmentAmount, _ref$minSharesQuantit, minSharesQuantity, _ref$seedBuyer, seedBuyer;
|
|
3278
|
-
|
|
3279
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
3280
|
-
while (1) {
|
|
3281
|
-
switch (_context2.prev = _context2.next) {
|
|
3282
|
-
case 0:
|
|
3283
|
-
comptrollerProxy = _ref.comptrollerProxy, denominationAsset = _ref.denominationAsset, buyer = _ref.buyer, investmentAmount = _ref.investmentAmount, _ref$minSharesQuantit = _ref.minSharesQuantity, minSharesQuantity = _ref$minSharesQuantit === void 0 ? 1 : _ref$minSharesQuantit, _ref$seedBuyer = _ref.seedBuyer, seedBuyer = _ref$seedBuyer === void 0 ? false : _ref$seedBuyer;
|
|
3284
|
-
|
|
3285
|
-
if (!(investmentAmount == undefined)) {
|
|
3286
|
-
_context2.next = 7;
|
|
3287
|
-
break;
|
|
3288
|
-
}
|
|
3289
|
-
|
|
3290
|
-
_context2.t0 = ethers.utils;
|
|
3291
|
-
_context2.next = 5;
|
|
3292
|
-
return denominationAsset.decimals();
|
|
3293
|
-
|
|
3294
|
-
case 5:
|
|
3295
|
-
_context2.t1 = _context2.sent;
|
|
3296
|
-
investmentAmount = _context2.t0.parseUnits.call(_context2.t0, '1', _context2.t1);
|
|
3297
|
-
|
|
3298
|
-
case 7:
|
|
3299
|
-
if (!seedBuyer) {
|
|
3300
|
-
_context2.next = 10;
|
|
3301
|
-
break;
|
|
3302
|
-
}
|
|
3303
|
-
|
|
3304
|
-
_context2.next = 10;
|
|
3305
|
-
return denominationAsset.transfer(buyer, investmentAmount);
|
|
3306
|
-
|
|
3307
|
-
case 10:
|
|
3308
|
-
_context2.next = 12;
|
|
3309
|
-
return denominationAsset.connect(buyer).approve(comptrollerProxy, investmentAmount);
|
|
3310
|
-
|
|
3311
|
-
case 12:
|
|
3312
|
-
return _context2.abrupt("return", comptrollerProxy.connect(buyer).buyShares.args(investmentAmount, minSharesQuantity).ref);
|
|
3313
|
-
|
|
3314
|
-
case 13:
|
|
3315
|
-
case "end":
|
|
3316
|
-
return _context2.stop();
|
|
3317
|
-
}
|
|
3318
|
-
}
|
|
3319
|
-
}, _callee2);
|
|
3320
|
-
}));
|
|
3321
|
-
return _buySharesFunction.apply(this, arguments);
|
|
3322
|
-
}
|
|
3323
|
-
|
|
3324
|
-
function redeemSharesForSpecificAssets(_x3) {
|
|
3325
|
-
return _redeemSharesForSpecificAssets.apply(this, arguments);
|
|
3326
|
-
}
|
|
3327
|
-
|
|
3328
|
-
function _redeemSharesForSpecificAssets() {
|
|
3329
|
-
_redeemSharesForSpecificAssets = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref2) {
|
|
3330
|
-
var comptrollerProxy, signer, _ref2$recipient, recipient, _ref2$quantity, quantity, payoutAssets, payoutAssetPercentages;
|
|
3331
|
-
|
|
3332
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
3333
|
-
while (1) {
|
|
3334
|
-
switch (_context3.prev = _context3.next) {
|
|
3335
|
-
case 0:
|
|
3336
|
-
comptrollerProxy = _ref2.comptrollerProxy, signer = _ref2.signer, _ref2$recipient = _ref2.recipient, recipient = _ref2$recipient === void 0 ? signer : _ref2$recipient, _ref2$quantity = _ref2.quantity, quantity = _ref2$quantity === void 0 ? ethers.constants.MaxUint256 : _ref2$quantity, payoutAssets = _ref2.payoutAssets, payoutAssetPercentages = _ref2.payoutAssetPercentages;
|
|
3337
|
-
return _context3.abrupt("return", comptrollerProxy.connect(signer).redeemSharesForSpecificAssets(recipient, quantity, payoutAssets, payoutAssetPercentages));
|
|
3338
|
-
|
|
3339
|
-
case 2:
|
|
3340
|
-
case "end":
|
|
3341
|
-
return _context3.stop();
|
|
3342
|
-
}
|
|
3343
|
-
}
|
|
3344
|
-
}, _callee3);
|
|
3345
|
-
}));
|
|
3346
|
-
return _redeemSharesForSpecificAssets.apply(this, arguments);
|
|
3347
|
-
}
|
|
3348
|
-
|
|
3349
|
-
function redeemSharesInKind(_x4) {
|
|
3350
|
-
return _redeemSharesInKind.apply(this, arguments);
|
|
3351
|
-
}
|
|
3352
|
-
|
|
3353
|
-
function _redeemSharesInKind() {
|
|
3354
|
-
_redeemSharesInKind = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref3) {
|
|
3355
|
-
var comptrollerProxy, signer, _ref3$recipient, recipient, _ref3$quantity, quantity, _ref3$additionalAsset, additionalAssets, _ref3$assetsToSkip, assetsToSkip;
|
|
3356
|
-
|
|
3357
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
3358
|
-
while (1) {
|
|
3359
|
-
switch (_context4.prev = _context4.next) {
|
|
3360
|
-
case 0:
|
|
3361
|
-
comptrollerProxy = _ref3.comptrollerProxy, signer = _ref3.signer, _ref3$recipient = _ref3.recipient, recipient = _ref3$recipient === void 0 ? signer : _ref3$recipient, _ref3$quantity = _ref3.quantity, quantity = _ref3$quantity === void 0 ? ethers.constants.MaxUint256 : _ref3$quantity, _ref3$additionalAsset = _ref3.additionalAssets, additionalAssets = _ref3$additionalAsset === void 0 ? [] : _ref3$additionalAsset, _ref3$assetsToSkip = _ref3.assetsToSkip, assetsToSkip = _ref3$assetsToSkip === void 0 ? [] : _ref3$assetsToSkip;
|
|
3362
|
-
return _context4.abrupt("return", comptrollerProxy.connect(signer).redeemSharesInKind(recipient, quantity, additionalAssets, assetsToSkip));
|
|
3363
|
-
|
|
3364
|
-
case 2:
|
|
3365
|
-
case "end":
|
|
3366
|
-
return _context4.stop();
|
|
3367
|
-
}
|
|
3368
|
-
}
|
|
3369
|
-
}, _callee4);
|
|
3370
|
-
}));
|
|
3371
|
-
return _redeemSharesInKind.apply(this, arguments);
|
|
3372
|
-
}
|
|
3373
|
-
|
|
3374
|
-
function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
3375
|
-
|
|
3376
|
-
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
3377
|
-
function createComptrollerProxy(_x) {
|
|
3378
|
-
return _createComptrollerProxy.apply(this, arguments);
|
|
3379
|
-
}
|
|
3380
|
-
|
|
3381
|
-
function _createComptrollerProxy() {
|
|
3382
|
-
_createComptrollerProxy = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
3383
|
-
var signer, comptrollerLib, denominationAsset, _ref$sharesActionTime, sharesActionTimelock, constructData, comptrollerProxyContract;
|
|
3384
|
-
|
|
3385
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3386
|
-
while (1) {
|
|
3387
|
-
switch (_context.prev = _context.next) {
|
|
3388
|
-
case 0:
|
|
3389
|
-
signer = _ref.signer, comptrollerLib = _ref.comptrollerLib, denominationAsset = _ref.denominationAsset, _ref$sharesActionTime = _ref.sharesActionTimelock, sharesActionTimelock = _ref$sharesActionTime === void 0 ? 0 : _ref$sharesActionTime;
|
|
3390
|
-
constructData = protocol.encodeFunctionData(comptrollerLib.init.fragment, [denominationAsset, sharesActionTimelock]);
|
|
3391
|
-
_context.next = 4;
|
|
3392
|
-
return protocol.ComptrollerProxy.deploy(signer, constructData, comptrollerLib);
|
|
3393
|
-
|
|
3394
|
-
case 4:
|
|
3395
|
-
comptrollerProxyContract = _context.sent;
|
|
3396
|
-
return _context.abrupt("return", {
|
|
3397
|
-
comptrollerProxy: new protocol.ComptrollerLib(comptrollerProxyContract, signer),
|
|
3398
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
3399
|
-
receipt: comptrollerProxyContract.deployment
|
|
3400
|
-
});
|
|
3401
|
-
|
|
3402
|
-
case 6:
|
|
3403
|
-
case "end":
|
|
3404
|
-
return _context.stop();
|
|
3405
|
-
}
|
|
3406
|
-
}
|
|
3407
|
-
}, _callee);
|
|
3408
|
-
}));
|
|
3409
|
-
return _createComptrollerProxy.apply(this, arguments);
|
|
3410
|
-
}
|
|
3411
|
-
|
|
3412
|
-
function createMigrationRequest(_x2) {
|
|
3413
|
-
return _createMigrationRequest.apply(this, arguments);
|
|
3414
|
-
} // TODO: should we pass in the fundOwner as a signer also so we can connect comptroller proxy and vault proxy to that acct instead?
|
|
3415
|
-
|
|
3416
|
-
function _createMigrationRequest() {
|
|
3417
|
-
_createMigrationRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref2) {
|
|
3418
|
-
var signer, fundDeployer, vaultProxy, denominationAsset, _ref2$sharesActionTim, sharesActionTimelock, _ref2$feeManagerConfi, feeManagerConfigData, _ref2$policyManagerCo, policyManagerConfigData, _ref2$bypassPrevRelea, bypassPrevReleaseFailure, receipt, comptrollerDeployedArgs;
|
|
3419
|
-
|
|
3420
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
3421
|
-
while (1) {
|
|
3422
|
-
switch (_context2.prev = _context2.next) {
|
|
3423
|
-
case 0:
|
|
3424
|
-
signer = _ref2.signer, fundDeployer = _ref2.fundDeployer, vaultProxy = _ref2.vaultProxy, denominationAsset = _ref2.denominationAsset, _ref2$sharesActionTim = _ref2.sharesActionTimelock, sharesActionTimelock = _ref2$sharesActionTim === void 0 ? 0 : _ref2$sharesActionTim, _ref2$feeManagerConfi = _ref2.feeManagerConfigData, feeManagerConfigData = _ref2$feeManagerConfi === void 0 ? '0x' : _ref2$feeManagerConfi, _ref2$policyManagerCo = _ref2.policyManagerConfigData, policyManagerConfigData = _ref2$policyManagerCo === void 0 ? '0x' : _ref2$policyManagerCo, _ref2$bypassPrevRelea = _ref2.bypassPrevReleaseFailure, bypassPrevReleaseFailure = _ref2$bypassPrevRelea === void 0 ? false : _ref2$bypassPrevRelea;
|
|
3425
|
-
_context2.next = 3;
|
|
3426
|
-
return fundDeployer.connect(signer).createMigrationRequest(vaultProxy, denominationAsset, sharesActionTimelock, feeManagerConfigData, policyManagerConfigData, bypassPrevReleaseFailure);
|
|
3427
|
-
|
|
3428
|
-
case 3:
|
|
3429
|
-
receipt = _context2.sent;
|
|
3430
|
-
comptrollerDeployedArgs = assertEvent(receipt, 'ComptrollerProxyDeployed', {
|
|
3431
|
-
comptrollerProxy: expect.any(String),
|
|
3432
|
-
creator: signer,
|
|
3433
|
-
denominationAsset: denominationAsset,
|
|
3434
|
-
sharesActionTimelock: ethers.BigNumber.from(sharesActionTimelock)
|
|
3435
|
-
});
|
|
3436
|
-
return _context2.abrupt("return", {
|
|
3437
|
-
comptrollerProxy: new protocol.ComptrollerLib(comptrollerDeployedArgs.comptrollerProxy, signer),
|
|
3438
|
-
receipt: receipt
|
|
3439
|
-
});
|
|
3440
|
-
|
|
3441
|
-
case 6:
|
|
3442
|
-
case "end":
|
|
3443
|
-
return _context2.stop();
|
|
3444
|
-
}
|
|
3445
|
-
}
|
|
3446
|
-
}, _callee2);
|
|
3447
|
-
}));
|
|
3448
|
-
return _createMigrationRequest.apply(this, arguments);
|
|
3449
|
-
}
|
|
3450
|
-
|
|
3451
|
-
function createNewFund(_x3) {
|
|
3452
|
-
return _createNewFund.apply(this, arguments);
|
|
3453
|
-
}
|
|
3454
|
-
|
|
3455
|
-
function _createNewFund() {
|
|
3456
|
-
_createNewFund = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3(_ref3) {
|
|
3457
|
-
var signer, fundDeployer, denominationAsset, _ref3$sharesActionTim, sharesActionTimelock, _ref3$fundOwner, fundOwner, _ref3$fundName, fundName, _ref3$fundSymbol, fundSymbol, _ref3$feeManagerConfi, feeManagerConfig, _ref3$policyManagerCo, policyManagerConfig, investment, receipt, comptrollerDeployedArgs, comptrollerProxy, newFundDeployedArgs, vaultProxy;
|
|
3458
|
-
|
|
3459
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
3460
|
-
while (1) {
|
|
3461
|
-
switch (_context3.prev = _context3.next) {
|
|
3462
|
-
case 0:
|
|
3463
|
-
signer = _ref3.signer, fundDeployer = _ref3.fundDeployer, denominationAsset = _ref3.denominationAsset, _ref3$sharesActionTim = _ref3.sharesActionTimelock, sharesActionTimelock = _ref3$sharesActionTim === void 0 ? 0 : _ref3$sharesActionTim, _ref3$fundOwner = _ref3.fundOwner, fundOwner = _ref3$fundOwner === void 0 ? ethers$1.randomAddress() : _ref3$fundOwner, _ref3$fundName = _ref3.fundName, fundName = _ref3$fundName === void 0 ? 'My Fund' : _ref3$fundName, _ref3$fundSymbol = _ref3.fundSymbol, fundSymbol = _ref3$fundSymbol === void 0 ? '' : _ref3$fundSymbol, _ref3$feeManagerConfi = _ref3.feeManagerConfig, feeManagerConfig = _ref3$feeManagerConfi === void 0 ? '0x' : _ref3$feeManagerConfi, _ref3$policyManagerCo = _ref3.policyManagerConfig, policyManagerConfig = _ref3$policyManagerCo === void 0 ? '0x' : _ref3$policyManagerCo, investment = _ref3.investment;
|
|
3464
|
-
_context3.next = 3;
|
|
3465
|
-
return fundDeployer.connect(signer).createNewFund(fundOwner, fundName, fundSymbol, denominationAsset, sharesActionTimelock, feeManagerConfig, policyManagerConfig);
|
|
3466
|
-
|
|
3467
|
-
case 3:
|
|
3468
|
-
receipt = _context3.sent;
|
|
3469
|
-
comptrollerDeployedArgs = assertEvent(receipt, 'ComptrollerProxyDeployed', {
|
|
3470
|
-
comptrollerProxy: expect.any(String),
|
|
3471
|
-
creator: signer,
|
|
3472
|
-
denominationAsset: denominationAsset,
|
|
3473
|
-
sharesActionTimelock: ethers.BigNumber.from(sharesActionTimelock)
|
|
3474
|
-
});
|
|
3475
|
-
comptrollerProxy = new protocol.ComptrollerLib(comptrollerDeployedArgs.comptrollerProxy, signer);
|
|
3476
|
-
newFundDeployedArgs = assertEvent(receipt, 'NewFundCreated', {
|
|
3477
|
-
comptrollerProxy: comptrollerProxy,
|
|
3478
|
-
creator: signer,
|
|
3479
|
-
vaultProxy: expect.any(String)
|
|
3480
|
-
});
|
|
3481
|
-
vaultProxy = new protocol.VaultLib(newFundDeployedArgs.vaultProxy, signer);
|
|
3482
|
-
|
|
3483
|
-
if (!(investment != null)) {
|
|
3484
|
-
_context3.next = 11;
|
|
3485
|
-
break;
|
|
3486
|
-
}
|
|
3487
|
-
|
|
3488
|
-
_context3.next = 11;
|
|
3489
|
-
return buyShares(_objectSpread$1({
|
|
3490
|
-
comptrollerProxy: comptrollerProxy,
|
|
3491
|
-
denominationAsset: denominationAsset
|
|
3492
|
-
}, investment));
|
|
3493
|
-
|
|
3494
|
-
case 11:
|
|
3495
|
-
return _context3.abrupt("return", {
|
|
3496
|
-
comptrollerProxy: comptrollerProxy,
|
|
3497
|
-
receipt: receipt,
|
|
3498
|
-
vaultProxy: vaultProxy
|
|
3499
|
-
});
|
|
3500
|
-
|
|
3501
|
-
case 12:
|
|
3502
|
-
case "end":
|
|
3503
|
-
return _context3.stop();
|
|
3504
|
-
}
|
|
3505
|
-
}
|
|
3506
|
-
}, _callee3);
|
|
3507
|
-
}));
|
|
3508
|
-
return _createNewFund.apply(this, arguments);
|
|
3509
|
-
}
|
|
3510
|
-
|
|
3511
|
-
function createReconfigurationRequest(_x4) {
|
|
3512
|
-
return _createReconfigurationRequest.apply(this, arguments);
|
|
3513
|
-
}
|
|
3514
|
-
|
|
3515
|
-
function _createReconfigurationRequest() {
|
|
3516
|
-
_createReconfigurationRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(_ref4) {
|
|
3517
|
-
var signer, fundDeployer, vaultProxy, denominationAsset, _ref4$sharesActionTim, sharesActionTimelock, _ref4$feeManagerConfi, feeManagerConfigData, _ref4$policyManagerCo, policyManagerConfigData, receipt, comptrollerDeployedArgs;
|
|
3518
|
-
|
|
3519
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
3520
|
-
while (1) {
|
|
3521
|
-
switch (_context4.prev = _context4.next) {
|
|
3522
|
-
case 0:
|
|
3523
|
-
signer = _ref4.signer, fundDeployer = _ref4.fundDeployer, vaultProxy = _ref4.vaultProxy, denominationAsset = _ref4.denominationAsset, _ref4$sharesActionTim = _ref4.sharesActionTimelock, sharesActionTimelock = _ref4$sharesActionTim === void 0 ? 0 : _ref4$sharesActionTim, _ref4$feeManagerConfi = _ref4.feeManagerConfigData, feeManagerConfigData = _ref4$feeManagerConfi === void 0 ? '0x' : _ref4$feeManagerConfi, _ref4$policyManagerCo = _ref4.policyManagerConfigData, policyManagerConfigData = _ref4$policyManagerCo === void 0 ? '0x' : _ref4$policyManagerCo;
|
|
3524
|
-
_context4.next = 3;
|
|
3525
|
-
return fundDeployer.connect(signer).createReconfigurationRequest(vaultProxy, denominationAsset, sharesActionTimelock, feeManagerConfigData, policyManagerConfigData);
|
|
3526
|
-
|
|
3527
|
-
case 3:
|
|
3528
|
-
receipt = _context4.sent;
|
|
3529
|
-
comptrollerDeployedArgs = assertEvent(receipt, 'ComptrollerProxyDeployed', {
|
|
3530
|
-
comptrollerProxy: expect.any(String),
|
|
3531
|
-
creator: signer,
|
|
3532
|
-
denominationAsset: denominationAsset,
|
|
3533
|
-
sharesActionTimelock: ethers.BigNumber.from(sharesActionTimelock)
|
|
3534
|
-
});
|
|
3535
|
-
return _context4.abrupt("return", {
|
|
3536
|
-
comptrollerProxy: new protocol.ComptrollerLib(comptrollerDeployedArgs.comptrollerProxy, signer),
|
|
3537
|
-
receipt: receipt
|
|
3538
|
-
});
|
|
3539
|
-
|
|
3540
|
-
case 6:
|
|
3541
|
-
case "end":
|
|
3542
|
-
return _context4.stop();
|
|
3543
|
-
}
|
|
3544
|
-
}
|
|
3545
|
-
}, _callee4);
|
|
3546
|
-
}));
|
|
3547
|
-
return _createReconfigurationRequest.apply(this, arguments);
|
|
3548
|
-
}
|
|
3549
|
-
|
|
3550
|
-
function createVaultProxy(_x5) {
|
|
3551
|
-
return _createVaultProxy.apply(this, arguments);
|
|
3552
|
-
}
|
|
3553
|
-
|
|
3554
|
-
function _createVaultProxy() {
|
|
3555
|
-
_createVaultProxy = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5(_ref5) {
|
|
3556
|
-
var signer, vaultLib, fundOwner, fundAccessor, _ref5$fundName, fundName, constructData, vaultProxyContract;
|
|
3557
|
-
|
|
3558
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
3559
|
-
while (1) {
|
|
3560
|
-
switch (_context5.prev = _context5.next) {
|
|
3561
|
-
case 0:
|
|
3562
|
-
signer = _ref5.signer, vaultLib = _ref5.vaultLib, fundOwner = _ref5.fundOwner, fundAccessor = _ref5.fundAccessor, _ref5$fundName = _ref5.fundName, fundName = _ref5$fundName === void 0 ? 'My Fund' : _ref5$fundName;
|
|
3563
|
-
constructData = protocol.encodeFunctionData(vaultLib.init.fragment, [fundOwner, fundAccessor, fundName]);
|
|
3564
|
-
_context5.next = 4;
|
|
3565
|
-
return protocol.VaultProxy.deploy(signer, constructData, vaultLib);
|
|
3566
|
-
|
|
3567
|
-
case 4:
|
|
3568
|
-
vaultProxyContract = _context5.sent;
|
|
3569
|
-
return _context5.abrupt("return", new protocol.VaultLib(vaultProxyContract, fundAccessor));
|
|
3570
|
-
|
|
3571
|
-
case 6:
|
|
3572
|
-
case "end":
|
|
3573
|
-
return _context5.stop();
|
|
3574
|
-
}
|
|
3575
|
-
}
|
|
3576
|
-
}, _callee5);
|
|
3577
|
-
}));
|
|
3578
|
-
return _createVaultProxy.apply(this, arguments);
|
|
3579
|
-
}
|
|
3580
|
-
|
|
3581
|
-
function setupGasRelayerPaymaster(_x6) {
|
|
3582
|
-
return _setupGasRelayerPaymaster.apply(this, arguments);
|
|
3583
|
-
}
|
|
3584
|
-
|
|
3585
|
-
function _setupGasRelayerPaymaster() {
|
|
3586
|
-
_setupGasRelayerPaymaster = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee6(_ref6) {
|
|
3587
|
-
var signer, vaultProxy, fundAccessor, weth, _ref6$startingBalance, startingBalance, comptrollerProxy, receipt, eventArgs;
|
|
3588
|
-
|
|
3589
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee6$(_context6) {
|
|
3590
|
-
while (1) {
|
|
3591
|
-
switch (_context6.prev = _context6.next) {
|
|
3592
|
-
case 0:
|
|
3593
|
-
signer = _ref6.signer, vaultProxy = _ref6.vaultProxy, fundAccessor = _ref6.fundAccessor, weth = _ref6.weth, _ref6$startingBalance = _ref6.startingBalance, startingBalance = _ref6$startingBalance === void 0 ? ethers.utils.parseUnits('10', 18) : _ref6$startingBalance;
|
|
3594
|
-
_context6.next = 3;
|
|
3595
|
-
return weth.transfer(vaultProxy, startingBalance);
|
|
3596
|
-
|
|
3597
|
-
case 3:
|
|
3598
|
-
comptrollerProxy = new protocol.ComptrollerLib(fundAccessor, signer);
|
|
3599
|
-
_context6.next = 6;
|
|
3600
|
-
return comptrollerProxy.deployGasRelayPaymaster();
|
|
3601
|
-
|
|
3602
|
-
case 6:
|
|
3603
|
-
receipt = _context6.sent;
|
|
3604
|
-
eventArgs = assertEvent(receipt, 'GasRelayPaymasterSet', {
|
|
3605
|
-
gasRelayPaymaster: expect.any(String)
|
|
3606
|
-
});
|
|
3607
|
-
return _context6.abrupt("return", new protocol.GasRelayPaymasterLib(eventArgs.gasRelayPaymaster, signer));
|
|
3608
|
-
|
|
3609
|
-
case 9:
|
|
3610
|
-
case "end":
|
|
3611
|
-
return _context6.stop();
|
|
3612
|
-
}
|
|
3613
|
-
}
|
|
3614
|
-
}, _callee6);
|
|
3615
|
-
}));
|
|
3616
|
-
return _setupGasRelayerPaymaster.apply(this, arguments);
|
|
3617
|
-
}
|
|
3618
|
-
|
|
3619
|
-
function vaultCallCreateNewList(_x) {
|
|
3620
|
-
return _vaultCallCreateNewList.apply(this, arguments);
|
|
3621
|
-
}
|
|
3622
|
-
|
|
3623
|
-
function _vaultCallCreateNewList() {
|
|
3624
|
-
_vaultCallCreateNewList = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(_ref) {
|
|
3625
|
-
var addressListRegistry, comptrollerProxy, items, owner, signer, updateType, listCount;
|
|
3626
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3627
|
-
while (1) {
|
|
3628
|
-
switch (_context.prev = _context.next) {
|
|
3629
|
-
case 0:
|
|
3630
|
-
addressListRegistry = _ref.addressListRegistry, comptrollerProxy = _ref.comptrollerProxy, items = _ref.items, owner = _ref.owner, signer = _ref.signer, updateType = _ref.updateType;
|
|
3631
|
-
_context.next = 3;
|
|
3632
|
-
return comptrollerProxy.connect(signer).vaultCallOnContract(addressListRegistry.address, protocol.addressListRegistryCreateListSelector, protocol.encodeArgs(['address', 'uint8', 'address[]'], [owner, updateType, items]));
|
|
3633
|
-
|
|
3634
|
-
case 3:
|
|
3635
|
-
_context.next = 5;
|
|
3636
|
-
return addressListRegistry.getListCount();
|
|
3637
|
-
|
|
3638
|
-
case 5:
|
|
3639
|
-
listCount = _context.sent;
|
|
3640
|
-
return _context.abrupt("return", listCount.sub(1));
|
|
3641
|
-
|
|
3642
|
-
case 7:
|
|
3643
|
-
case "end":
|
|
3644
|
-
return _context.stop();
|
|
3645
|
-
}
|
|
3646
|
-
}
|
|
3647
|
-
}, _callee);
|
|
3648
|
-
}));
|
|
3649
|
-
return _vaultCallCreateNewList.apply(this, arguments);
|
|
3650
|
-
}
|
|
3651
|
-
|
|
3652
|
-
function vaultCallCurveMinterMint(_ref2) {
|
|
3653
|
-
var comptrollerProxy = _ref2.comptrollerProxy,
|
|
3654
|
-
minter = _ref2.minter,
|
|
3655
|
-
gauge = _ref2.gauge;
|
|
3656
|
-
return comptrollerProxy.vaultCallOnContract(minter, protocol.curveMinterMintSelector, protocol.encodeArgs(['address'], [gauge]));
|
|
3657
|
-
}
|
|
3658
|
-
function vaultCallCurveMinterMintMany(_ref3) {
|
|
3659
|
-
var comptrollerProxy = _ref3.comptrollerProxy,
|
|
3660
|
-
minter = _ref3.minter,
|
|
3661
|
-
gauges = _ref3.gauges;
|
|
3662
|
-
var gaugesFormatted = new Array(8).fill(ethers.constants.AddressZero);
|
|
3663
|
-
|
|
3664
|
-
for (var i in gauges) {
|
|
3665
|
-
gaugesFormatted[i] = gauges[i];
|
|
3666
|
-
}
|
|
3667
|
-
|
|
3668
|
-
return comptrollerProxy.vaultCallOnContract(minter, protocol.curveMinterMintManySelector, protocol.encodeArgs(['address[8]'], [gaugesFormatted]));
|
|
3669
|
-
}
|
|
3670
|
-
function vaultCallCurveMinterToggleApproveMint(_ref4) {
|
|
3671
|
-
var comptrollerProxy = _ref4.comptrollerProxy,
|
|
3672
|
-
minter = _ref4.minter,
|
|
3673
|
-
account = _ref4.account;
|
|
3674
|
-
return comptrollerProxy.vaultCallOnContract(minter, protocol.curveMinterToggleApproveMintSelector, protocol.encodeArgs(['address'], [account]));
|
|
3675
|
-
}
|
|
3676
|
-
function vaultCallStartAssetBypassTimelock(_ref5) {
|
|
3677
|
-
var comptrollerProxy = _ref5.comptrollerProxy,
|
|
3678
|
-
contract = _ref5.contract,
|
|
3679
|
-
asset = _ref5.asset;
|
|
3680
|
-
return comptrollerProxy.vaultCallOnContract(contract, protocol.sighash(ethers.utils.FunctionFragment.fromString('startAssetBypassTimelock(address)')), protocol.encodeArgs(['address'], [asset]));
|
|
3681
|
-
}
|
|
3682
|
-
|
|
3683
|
-
function transactionTimestamp(_x) {
|
|
3684
|
-
return _transactionTimestamp.apply(this, arguments);
|
|
3685
|
-
}
|
|
3686
|
-
|
|
3687
|
-
function _transactionTimestamp() {
|
|
3688
|
-
_transactionTimestamp = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(receipt) {
|
|
3689
|
-
var block;
|
|
3690
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3691
|
-
while (1) {
|
|
3692
|
-
switch (_context.prev = _context.next) {
|
|
3693
|
-
case 0:
|
|
3694
|
-
_context.next = 2;
|
|
3695
|
-
return provider.getBlock(receipt.blockNumber);
|
|
3696
|
-
|
|
3697
|
-
case 2:
|
|
3698
|
-
block = _context.sent;
|
|
3699
|
-
return _context.abrupt("return", block.timestamp);
|
|
3700
|
-
|
|
3701
|
-
case 4:
|
|
3702
|
-
case "end":
|
|
3703
|
-
return _context.stop();
|
|
3704
|
-
}
|
|
3705
|
-
}
|
|
3706
|
-
}, _callee);
|
|
3707
|
-
}));
|
|
3708
|
-
return _transactionTimestamp.apply(this, arguments);
|
|
3709
|
-
}
|
|
3710
|
-
|
|
3711
|
-
function calcMlnValueAndBurnAmountForSharesBuyback(_x2) {
|
|
3712
|
-
return _calcMlnValueAndBurnAmountForSharesBuyback.apply(this, arguments);
|
|
3713
|
-
}
|
|
3714
|
-
|
|
3715
|
-
function _calcMlnValueAndBurnAmountForSharesBuyback() {
|
|
3716
|
-
_calcMlnValueAndBurnAmountForSharesBuyback = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(_ref) {
|
|
3717
|
-
var valueInterpreter, mln, denominationAsset, sharesSupply, gav, buybackSharesAmount, grossShareValue, denominationAssetValueOfBuyback, mlnValueOfBuyback, mlnAmountToBurn;
|
|
3718
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
3719
|
-
while (1) {
|
|
3720
|
-
switch (_context2.prev = _context2.next) {
|
|
3721
|
-
case 0:
|
|
3722
|
-
valueInterpreter = _ref.valueInterpreter, mln = _ref.mln, denominationAsset = _ref.denominationAsset, sharesSupply = _ref.sharesSupply, gav = _ref.gav, buybackSharesAmount = _ref.buybackSharesAmount;
|
|
3723
|
-
// Calculate expected mlnValue of shares to buyback
|
|
3724
|
-
// TODO: calcGrossShareValue can also be a helper util
|
|
3725
|
-
grossShareValue = ethers.BigNumber.from(gav).mul(ethers.utils.parseEther('1')).div(sharesSupply);
|
|
3726
|
-
denominationAssetValueOfBuyback = grossShareValue.mul(buybackSharesAmount).div(ethers.utils.parseEther('1'));
|
|
3727
|
-
_context2.next = 5;
|
|
3728
|
-
return valueInterpreter.calcCanonicalAssetValue.args(denominationAsset, denominationAssetValueOfBuyback, mln).call();
|
|
3729
|
-
|
|
3730
|
-
case 5:
|
|
3731
|
-
mlnValueOfBuyback = _context2.sent;
|
|
3732
|
-
// 50% discount
|
|
3733
|
-
mlnAmountToBurn = mlnValueOfBuyback.div(2);
|
|
3734
|
-
return _context2.abrupt("return", {
|
|
3735
|
-
mlnAmountToBurn: mlnAmountToBurn,
|
|
3736
|
-
mlnValue: mlnValueOfBuyback
|
|
3737
|
-
});
|
|
3738
|
-
|
|
3739
|
-
case 8:
|
|
3740
|
-
case "end":
|
|
3741
|
-
return _context2.stop();
|
|
3742
|
-
}
|
|
3743
|
-
}
|
|
3744
|
-
}, _callee2);
|
|
3745
|
-
}));
|
|
3746
|
-
return _calcMlnValueAndBurnAmountForSharesBuyback.apply(this, arguments);
|
|
3747
|
-
}
|
|
3748
|
-
|
|
3749
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
3750
|
-
|
|
3751
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
3752
|
-
|
|
3753
|
-
/* eslint-disable sort-keys-fix/sort-keys-fix */
|
|
3754
|
-
var whales = {
|
|
3755
|
-
// primitives
|
|
3756
|
-
bat: '0x12274c71304bc0e6b38a56b94d2949b118feb838',
|
|
3757
|
-
bnb: '0xbe0eb53f46cd790cd13851d5eff43d12404d33e8',
|
|
3758
|
-
bnt: '0x7d1ed1601a12a172269436fa95fe156650603c1d',
|
|
3759
|
-
busd: '0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503',
|
|
3760
|
-
comp: '0x0f50d31b3eaefd65236dd3736b863cffa4c63c4e',
|
|
3761
|
-
crv: '0x4ce799e6eD8D64536b67dD428565d52A531B3640',
|
|
3762
|
-
dai: '0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503',
|
|
3763
|
-
knc: '0x09d51654bd9efbfcb56da3491989cc1444095fff',
|
|
3764
|
-
ldo: '0x3dba737ccc50a32a1764b493285dd51c8af6c278',
|
|
3765
|
-
link: '0xbe6977e08d4479c0a6777539ae0e8fa27be4e9d6',
|
|
3766
|
-
mana: '0xefb94ac00f1cee8a89d5c3f49faa799da6f03024',
|
|
3767
|
-
mln: '0xd8f8a53945bcfbbc19da162aa405e662ef71c40d',
|
|
3768
|
-
ohm: '0x71a53aff36a699110d66d6bdfff2320caf8d2d59',
|
|
3769
|
-
rep: '0xc6a043b07d33b6f30d8cb501026c391cfd25abe1',
|
|
3770
|
-
ren: '0xbe0eb53f46cd790cd13851d5eff43d12404d33e8',
|
|
3771
|
-
susd: '0xa5f7a39e55d7878bc5bd754ee5d6bd7a7662355b',
|
|
3772
|
-
sohm: '0xf280f037cdbda99727ddf5dfede91e68fa78605c',
|
|
3773
|
-
uni: '0x47173b170c64d16393a52e6c480b3ad8c302ba1e',
|
|
3774
|
-
usdc: '0xae2d4617c862309a3d75a0ffb358c7a5009c673f',
|
|
3775
|
-
usdt: '0x5041ed759dd4afc3a72b8192c143f72f4724081a',
|
|
3776
|
-
weth: '0xe08A8b19e5722a201EaF20A6BC595eF655397bd5',
|
|
3777
|
-
zrx: '0x206376e8940e42538781cd94ef024df3c1e0fd43',
|
|
3778
|
-
// aTokens
|
|
3779
|
-
ausdc: '0x3DdfA8eC3052539b6C9549F12cEA2C295cfF5296',
|
|
3780
|
-
ausdt: '0x7d6149ad9a573a6e2ca6ebf7d4897c1b766841b4',
|
|
3781
|
-
// cTokens
|
|
3782
|
-
ccomp: '0xd74f186194ab9219fafac5c2fe4b3270169666db',
|
|
3783
|
-
cdai: '0xab4ce310054a11328685ece1043211b68ba5d082',
|
|
3784
|
-
ceth: '0x8aceab8167c80cb8b3de7fa6228b889bb1130ee8',
|
|
3785
|
-
cuni: '0x39d8014b4f40d2cbc441137011d32023f4f1fd87',
|
|
3786
|
-
cusdc: '0xe1ed4da4284924ddaf69983b4d813fb1be58c380',
|
|
3787
|
-
// fTokens
|
|
3788
|
-
fdai7: '0x88884e35d7006ae84efef09ee6bc6a43dd8e2bb8',
|
|
3789
|
-
feth7: '0xcd2ba6a4d50745b0b4096186f925115387852c15',
|
|
3790
|
-
fdai8: '0x93f3f612a525a59523e91cc5552f718df9fc0746',
|
|
3791
|
-
ftribe8: '0xdb5ac83c137321da29a59a7592232bc4ed461730',
|
|
3792
|
-
// ptTokens
|
|
3793
|
-
ptUsdc: '0xd18236cd213f39d078177b6f6908f0e44e88e4aa',
|
|
3794
|
-
// synths (unsupported)
|
|
3795
|
-
seth: '0xc34a7c65aa08cb36744bda8eeec7b8e9891e147c',
|
|
3796
|
-
sxag: '0x40d68c490bf7262ec40048099aec23535f734be2',
|
|
3797
|
-
sxau: '0x92eb453b7b5b8d41edb44e2c8b8b53eb70a482c7',
|
|
3798
|
-
// misc
|
|
3799
|
-
lidoSteth: '0x31f644e2dd5d74f5c8d6d9de89dd517474d51800',
|
|
3800
|
-
ust: '0xf584f8728b874a6a5c7a8d4d387c9aae9172d621',
|
|
3801
|
-
// Curve steth pool related
|
|
3802
|
-
stecrv: '0x56c915758ad3f76fd287fff7563ee313142fb663'
|
|
3803
|
-
};
|
|
3804
|
-
/* eslint-enable sort-keys-fix/sort-keys-fix */
|
|
3805
|
-
|
|
3806
|
-
function unlockWhale(_x) {
|
|
3807
|
-
return _unlockWhale.apply(this, arguments);
|
|
3808
|
-
}
|
|
3809
|
-
|
|
3810
|
-
function _unlockWhale() {
|
|
3811
|
-
_unlockWhale = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(token) {
|
|
3812
|
-
var address;
|
|
3813
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3814
|
-
while (1) {
|
|
3815
|
-
switch (_context.prev = _context.next) {
|
|
3816
|
-
case 0:
|
|
3817
|
-
address = ethers$1.resolveAddress(whales[token]);
|
|
3818
|
-
_context.next = 3;
|
|
3819
|
-
return provider.send('hardhat_impersonateAccount', [address]);
|
|
3820
|
-
|
|
3821
|
-
case 3:
|
|
3822
|
-
return _context.abrupt("return", provider.getSignerWithAddress(address));
|
|
3823
|
-
|
|
3824
|
-
case 4:
|
|
3825
|
-
case "end":
|
|
3826
|
-
return _context.stop();
|
|
3827
|
-
}
|
|
3828
|
-
}
|
|
3829
|
-
}, _callee);
|
|
3830
|
-
}));
|
|
3831
|
-
return _unlockWhale.apply(this, arguments);
|
|
3832
|
-
}
|
|
3833
|
-
|
|
3834
|
-
function unlockAllWhales() {
|
|
3835
|
-
return _unlockAllWhales.apply(this, arguments);
|
|
3836
|
-
}
|
|
3837
|
-
|
|
3838
|
-
function _unlockAllWhales() {
|
|
3839
|
-
_unlockAllWhales = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee3() {
|
|
3840
|
-
var keys, signers;
|
|
3841
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee3$(_context3) {
|
|
3842
|
-
while (1) {
|
|
3843
|
-
switch (_context3.prev = _context3.next) {
|
|
3844
|
-
case 0:
|
|
3845
|
-
keys = Object.keys(whales);
|
|
3846
|
-
_context3.next = 3;
|
|
3847
|
-
return Promise.all(keys.map( /*#__PURE__*/function () {
|
|
3848
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee2(token) {
|
|
3849
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee2$(_context2) {
|
|
3850
|
-
while (1) {
|
|
3851
|
-
switch (_context2.prev = _context2.next) {
|
|
3852
|
-
case 0:
|
|
3853
|
-
return _context2.abrupt("return", unlockWhale(token));
|
|
3854
|
-
|
|
3855
|
-
case 1:
|
|
3856
|
-
case "end":
|
|
3857
|
-
return _context2.stop();
|
|
3858
|
-
}
|
|
3859
|
-
}
|
|
3860
|
-
}, _callee2);
|
|
3861
|
-
}));
|
|
3862
|
-
|
|
3863
|
-
return function (_x2) {
|
|
3864
|
-
return _ref.apply(this, arguments);
|
|
3865
|
-
};
|
|
3866
|
-
}()));
|
|
3867
|
-
|
|
3868
|
-
case 3:
|
|
3869
|
-
signers = _context3.sent;
|
|
3870
|
-
return _context3.abrupt("return", keys.reduce(function (carry, key, index) {
|
|
3871
|
-
return _objectSpread(_objectSpread({}, carry), {}, _defineProperty({}, key, signers[index]));
|
|
3872
|
-
}, {}));
|
|
3873
|
-
|
|
3874
|
-
case 5:
|
|
3875
|
-
case "end":
|
|
3876
|
-
return _context3.stop();
|
|
3877
|
-
}
|
|
3878
|
-
}
|
|
3879
|
-
}, _callee3);
|
|
3880
|
-
}));
|
|
3881
|
-
return _unlockAllWhales.apply(this, arguments);
|
|
3882
|
-
}
|
|
3883
|
-
|
|
3884
|
-
function unlockWhales() {
|
|
3885
|
-
return _unlockWhales.apply(this, arguments);
|
|
3886
|
-
}
|
|
3887
|
-
|
|
3888
|
-
function _unlockWhales() {
|
|
3889
|
-
_unlockWhales = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5() {
|
|
3890
|
-
var _len,
|
|
3891
|
-
tokens,
|
|
3892
|
-
_key,
|
|
3893
|
-
signers,
|
|
3894
|
-
_args5 = arguments;
|
|
3895
|
-
|
|
3896
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
3897
|
-
while (1) {
|
|
3898
|
-
switch (_context5.prev = _context5.next) {
|
|
3899
|
-
case 0:
|
|
3900
|
-
for (_len = _args5.length, tokens = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
3901
|
-
tokens[_key] = _args5[_key];
|
|
3902
|
-
}
|
|
3903
|
-
|
|
3904
|
-
_context5.next = 3;
|
|
3905
|
-
return Promise.all(tokens.map( /*#__PURE__*/function () {
|
|
3906
|
-
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(token) {
|
|
3907
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
3908
|
-
while (1) {
|
|
3909
|
-
switch (_context4.prev = _context4.next) {
|
|
3910
|
-
case 0:
|
|
3911
|
-
return _context4.abrupt("return", unlockWhale(token));
|
|
3912
|
-
|
|
3913
|
-
case 1:
|
|
3914
|
-
case "end":
|
|
3915
|
-
return _context4.stop();
|
|
3916
|
-
}
|
|
3917
|
-
}
|
|
3918
|
-
}, _callee4);
|
|
3919
|
-
}));
|
|
3920
|
-
|
|
3921
|
-
return function (_x3) {
|
|
3922
|
-
return _ref2.apply(this, arguments);
|
|
3923
|
-
};
|
|
3924
|
-
}()));
|
|
3925
|
-
|
|
3926
|
-
case 3:
|
|
3927
|
-
signers = _context5.sent;
|
|
3928
|
-
return _context5.abrupt("return", tokens.reduce(function (carry, key, index) {
|
|
3929
|
-
return _objectSpread(_objectSpread({}, carry), {}, _defineProperty({}, key, signers[index]));
|
|
3930
|
-
}, {}));
|
|
3931
|
-
|
|
3932
|
-
case 5:
|
|
3933
|
-
case "end":
|
|
3934
|
-
return _context5.stop();
|
|
3935
|
-
}
|
|
3936
|
-
}
|
|
3937
|
-
}, _callee5);
|
|
3938
|
-
}));
|
|
3939
|
-
return _unlockWhales.apply(this, arguments);
|
|
3940
|
-
}
|
|
3941
|
-
|
|
3942
|
-
function relayTransaction(_x) {
|
|
3943
|
-
return _relayTransaction.apply(this, arguments);
|
|
3944
|
-
}
|
|
3945
|
-
|
|
3946
|
-
function _relayTransaction() {
|
|
3947
|
-
_relayTransaction = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee(options) {
|
|
3948
|
-
var signer, _yield$createSignedRe, relayData, relayRequest, signedRelayRequest, defaultGasLimit, defaultMaxAcceptance, mergedRelayRequest, relayHub;
|
|
3949
|
-
|
|
3950
|
-
return _regeneratorRuntime__default['default'].wrap(function _callee$(_context) {
|
|
3951
|
-
while (1) {
|
|
3952
|
-
switch (_context.prev = _context.next) {
|
|
3953
|
-
case 0:
|
|
3954
|
-
signer = options.sendFunction.contract.signer;
|
|
3955
|
-
|
|
3956
|
-
if (signer && protocol.isTypedDataSigner(signer)) {
|
|
3957
|
-
_context.next = 3;
|
|
3958
|
-
break;
|
|
3959
|
-
}
|
|
3960
|
-
|
|
3961
|
-
throw new Error('Missing or invalid signer');
|
|
3962
|
-
|
|
3963
|
-
case 3:
|
|
3964
|
-
_context.next = 5;
|
|
3965
|
-
return protocol.createSignedRelayRequest(options);
|
|
3966
|
-
|
|
3967
|
-
case 5:
|
|
3968
|
-
_yield$createSignedRe = _context.sent;
|
|
3969
|
-
relayData = _yield$createSignedRe.relayData;
|
|
3970
|
-
relayRequest = _yield$createSignedRe.relayRequest;
|
|
3971
|
-
signedRelayRequest = _yield$createSignedRe.signedRelayRequest;
|
|
3972
|
-
// NOTE: In the real implementation, we fetch these from the relayer.
|
|
3973
|
-
defaultGasLimit = 12450000;
|
|
3974
|
-
defaultMaxAcceptance = ethers.BigNumber.from(150000); // NOTE: There is an inconsistency between how the typed data object shape and the relayCall argument.
|
|
3975
|
-
|
|
3976
|
-
mergedRelayRequest = {
|
|
3977
|
-
relayData: relayData,
|
|
3978
|
-
request: relayRequest
|
|
3979
|
-
};
|
|
3980
|
-
relayHub = new protocol.IGsnRelayHub(options.relayHub, provider.getSigner(options.relayWorker));
|
|
3981
|
-
return _context.abrupt("return", relayHub.relayCall.args(defaultMaxAcceptance, mergedRelayRequest, signedRelayRequest, '0x', defaultGasLimit).gas(defaultGasLimit, relayData.gasPrice).send());
|
|
3982
|
-
|
|
3983
|
-
case 14:
|
|
3984
|
-
case "end":
|
|
3985
|
-
return _context.stop();
|
|
3986
|
-
}
|
|
3987
|
-
}
|
|
3988
|
-
}, _callee);
|
|
3989
|
-
}));
|
|
3990
|
-
return _relayTransaction.apply(this, arguments);
|
|
3991
|
-
}
|
|
3992
|
-
|
|
3993
|
-
var relayed = ethers.utils.EventFragment.fromString('TransactionRelayed(address indexed relayManager, address indexed relayWorker, address indexed from, address to, address paymaster, bytes4 selector, uint8 status, uint256 charge)');
|
|
3994
|
-
var rejected = ethers.utils.EventFragment.fromString('TransactionRejectedByPaymaster(address indexed relayManager, address indexed paymaster, address indexed from, address to, address relayWorker, bytes4 selector, uint256 innerGasUsed, bytes reason)');
|
|
3995
|
-
function assertDidRelay(receipt) {
|
|
3996
|
-
return assertEvent(receipt, relayed, {
|
|
3997
|
-
charge: expect.anything(),
|
|
3998
|
-
from: expect.any(String),
|
|
3999
|
-
paymaster: expect.any(String),
|
|
4000
|
-
relayManager: expect.any(String),
|
|
4001
|
-
relayWorker: expect.any(String),
|
|
4002
|
-
selector: expect.any(String),
|
|
4003
|
-
status: expect.anything(),
|
|
4004
|
-
to: expect.any(String)
|
|
4005
|
-
});
|
|
4006
|
-
}
|
|
4007
|
-
function assertDidRelaySuccessfully(receipt) {
|
|
4008
|
-
var result = assertDidRelay(receipt);
|
|
4009
|
-
expect(result.status).toEqBigNumber(0);
|
|
4010
|
-
}
|
|
4011
|
-
function assertDidRelayWithError(receipt) {
|
|
4012
|
-
var result = assertDidRelay(receipt);
|
|
4013
|
-
expect(result.status).toEqBigNumber(1);
|
|
4014
|
-
}
|
|
4015
|
-
function assertDidRelayWithCharge(receipt, amount, tolerance) {
|
|
4016
|
-
var result = assertDidRelay(receipt);
|
|
4017
|
-
expect(result.charge).toBeAroundBigNumber(amount, tolerance);
|
|
4018
|
-
}
|
|
4019
|
-
function assertPaymasterDidReject(receipt) {
|
|
4020
|
-
return assertEvent(receipt, rejected, {
|
|
4021
|
-
from: expect.any(String),
|
|
4022
|
-
innerGasUsed: expect.anything(),
|
|
4023
|
-
paymaster: expect.any(String),
|
|
4024
|
-
reason: expect.any(String),
|
|
4025
|
-
relayManager: expect.any(String),
|
|
4026
|
-
relayWorker: expect.any(String),
|
|
4027
|
-
selector: expect.any(String),
|
|
4028
|
-
to: expect.any(String)
|
|
4029
|
-
});
|
|
4030
|
-
}
|
|
4031
|
-
function assertPaymasterDidRejectForReason(receipt, reason) {
|
|
4032
|
-
var params = assertPaymasterDidReject(receipt);
|
|
4033
|
-
expect(ethers.utils.toUtf8String('0x' + params.reason.substr(138))).toMatch(reason);
|
|
4034
|
-
}
|
|
4035
|
-
|
|
4036
|
-
exports.CurveLiquidityGaugeV2 = CurveLiquidityGaugeV2;
|
|
4037
|
-
exports.CurveMinter = CurveMinter;
|
|
4038
|
-
exports.CurveRegistry = CurveRegistry;
|
|
4039
|
-
exports.CurveSwaps = CurveSwaps;
|
|
4040
|
-
exports.ICompoundComptroller = ICompoundComptroller;
|
|
4041
|
-
exports.IUniswapV3NonFungibleTokenManager = IUniswapV3NonFungibleTokenManager;
|
|
4042
|
-
exports.UniswapV2Factory = UniswapV2Factory;
|
|
4043
|
-
exports.aaveDebtPositionAddCollateral = aaveDebtPositionAddCollateral;
|
|
4044
|
-
exports.aaveDebtPositionBorrow = aaveDebtPositionBorrow;
|
|
4045
|
-
exports.aaveDebtPositionClaimRewards = aaveDebtPositionClaimRewards;
|
|
4046
|
-
exports.aaveDebtPositionRemoveCollateral = aaveDebtPositionRemoveCollateral;
|
|
4047
|
-
exports.aaveDebtPositionRepayBorrow = aaveDebtPositionRepayBorrow;
|
|
4048
|
-
exports.aaveLend = aaveLend;
|
|
4049
|
-
exports.aaveRedeem = aaveRedeem;
|
|
4050
|
-
exports.addNewAssetsToFund = addNewAssetsToFund;
|
|
4051
|
-
exports.addTrackedAssetsToVault = addTrackedAssetsToVault;
|
|
4052
|
-
exports.assertCompoundLend = assertCompoundLend;
|
|
4053
|
-
exports.assertCompoundRedeem = assertCompoundRedeem;
|
|
4054
|
-
exports.assertDidRelay = assertDidRelay;
|
|
4055
|
-
exports.assertDidRelaySuccessfully = assertDidRelaySuccessfully;
|
|
4056
|
-
exports.assertDidRelayWithCharge = assertDidRelayWithCharge;
|
|
4057
|
-
exports.assertDidRelayWithError = assertDidRelayWithError;
|
|
4058
|
-
exports.assertEvent = assertEvent;
|
|
4059
|
-
exports.assertNoEvent = assertNoEvent;
|
|
4060
|
-
exports.assertPaymasterDidReject = assertPaymasterDidReject;
|
|
4061
|
-
exports.assertPaymasterDidRejectForReason = assertPaymasterDidRejectForReason;
|
|
4062
|
-
exports.buyShares = buyShares;
|
|
4063
|
-
exports.buySharesFunction = buySharesFunction;
|
|
4064
|
-
exports.calcMlnValueAndBurnAmountForSharesBuyback = calcMlnValueAndBurnAmountForSharesBuyback;
|
|
4065
|
-
exports.callOnExtension = callOnExtension;
|
|
4066
|
-
exports.callOnExternalPosition = callOnExternalPosition;
|
|
4067
|
-
exports.compoundClaim = compoundClaim;
|
|
4068
|
-
exports.compoundDebtPositionAddCollateral = compoundDebtPositionAddCollateral;
|
|
4069
|
-
exports.compoundDebtPositionBorrow = compoundDebtPositionBorrow;
|
|
4070
|
-
exports.compoundDebtPositionClaimComp = compoundDebtPositionClaimComp;
|
|
4071
|
-
exports.compoundDebtPositionRemoveCollateral = compoundDebtPositionRemoveCollateral;
|
|
4072
|
-
exports.compoundDebtPositionRepayBorrow = compoundDebtPositionRepayBorrow;
|
|
4073
|
-
exports.compoundLend = compoundLend;
|
|
4074
|
-
exports.compoundRedeem = compoundRedeem;
|
|
4075
|
-
exports.createAaveDebtPosition = createAaveDebtPosition;
|
|
4076
|
-
exports.createCompoundDebtPosition = createCompoundDebtPosition;
|
|
4077
|
-
exports.createComptrollerProxy = createComptrollerProxy;
|
|
4078
|
-
exports.createExternalPosition = createExternalPosition;
|
|
4079
|
-
exports.createFundDeployer = createFundDeployer;
|
|
4080
|
-
exports.createMigrationRequest = createMigrationRequest;
|
|
4081
|
-
exports.createMockExternalPosition = createMockExternalPosition;
|
|
4082
|
-
exports.createNewFund = createNewFund;
|
|
4083
|
-
exports.createReconfigurationRequest = createReconfigurationRequest;
|
|
4084
|
-
exports.createUniswapV3LiquidityPosition = createUniswapV3LiquidityPosition;
|
|
4085
|
-
exports.createVaultProxy = createVaultProxy;
|
|
4086
|
-
exports.curveClaimRewards = curveClaimRewards;
|
|
4087
|
-
exports.curveLend = curveLend;
|
|
4088
|
-
exports.curveLendAndStake = curveLendAndStake;
|
|
4089
|
-
exports.curveRedeem = curveRedeem;
|
|
4090
|
-
exports.curveStake = curveStake;
|
|
4091
|
-
exports.curveTakeOrder = curveTakeOrder;
|
|
4092
|
-
exports.curveUnstake = curveUnstake;
|
|
4093
|
-
exports.curveUnstakeAndRedeem = curveUnstakeAndRedeem;
|
|
4094
|
-
exports.deployProtocolFixture = deployProtocolFixture;
|
|
4095
|
-
exports.generateFeeManagerConfigWithMockFees = generateFeeManagerConfigWithMockFees;
|
|
4096
|
-
exports.generateMockFees = generateMockFees;
|
|
4097
|
-
exports.generateMockPolicies = generateMockPolicies;
|
|
4098
|
-
exports.generatePolicyManagerConfigWithMockPolicies = generatePolicyManagerConfigWithMockPolicies;
|
|
4099
|
-
exports.getAssetBalances = getAssetBalances;
|
|
4100
|
-
exports.getAssetUnit = getAssetUnit;
|
|
4101
|
-
exports.getNamedSigner = getNamedSigner;
|
|
4102
|
-
exports.getUnnamedSigners = getUnnamedSigners;
|
|
4103
|
-
exports.idleClaimRewards = idleClaimRewards;
|
|
4104
|
-
exports.idleLend = idleLend;
|
|
4105
|
-
exports.idleRedeem = idleRedeem;
|
|
4106
|
-
exports.mockExternalPositionAddDebtAssets = mockExternalPositionAddDebtAssets;
|
|
4107
|
-
exports.mockExternalPositionAddManagedAssets = mockExternalPositionAddManagedAssets;
|
|
4108
|
-
exports.mockExternalPositionRemoveDebtAssets = mockExternalPositionRemoveDebtAssets;
|
|
4109
|
-
exports.mockExternalPositionRemoveManagedAssets = mockExternalPositionRemoveManagedAssets;
|
|
4110
|
-
exports.mockGenericRemoveOnlySelector = mockGenericRemoveOnlySelector;
|
|
4111
|
-
exports.mockGenericSwap = mockGenericSwap;
|
|
4112
|
-
exports.mockGenericSwapASelector = mockGenericSwapASelector;
|
|
4113
|
-
exports.mockGenericSwapArgs = mockGenericSwapArgs;
|
|
4114
|
-
exports.mockGenericSwapBSelector = mockGenericSwapBSelector;
|
|
4115
|
-
exports.mockGenericSwapDirectFromVaultSelector = mockGenericSwapDirectFromVaultSelector;
|
|
4116
|
-
exports.mockGenericSwapViaApprovalSelector = mockGenericSwapViaApprovalSelector;
|
|
4117
|
-
exports.olympusV2Stake = olympusV2Stake;
|
|
4118
|
-
exports.olympusV2Unstake = olympusV2Unstake;
|
|
4119
|
-
exports.paraSwapV5GenerateDummyPaths = paraSwapV5GenerateDummyPaths;
|
|
4120
|
-
exports.paraSwapV5TakeOrder = paraSwapV5TakeOrder;
|
|
4121
|
-
exports.poolTogetherV4ClaimRewards = poolTogetherV4ClaimRewards;
|
|
4122
|
-
exports.poolTogetherV4Lend = poolTogetherV4Lend;
|
|
4123
|
-
exports.poolTogetherV4Redeem = poolTogetherV4Redeem;
|
|
4124
|
-
exports.reactivateExternalPosition = reactivateExternalPosition;
|
|
4125
|
-
exports.redeemSharesForSpecificAssets = redeemSharesForSpecificAssets;
|
|
4126
|
-
exports.redeemSharesInKind = redeemSharesInKind;
|
|
4127
|
-
exports.relayTransaction = relayTransaction;
|
|
4128
|
-
exports.removeExternalPosition = removeExternalPosition;
|
|
4129
|
-
exports.removeTrackedAssetsFromVault = removeTrackedAssetsFromVault;
|
|
4130
|
-
exports.setupGasRelayerPaymaster = setupGasRelayerPaymaster;
|
|
4131
|
-
exports.synthetixAssignExchangeDelegate = synthetixAssignExchangeDelegate;
|
|
4132
|
-
exports.synthetixRedeem = synthetixRedeem;
|
|
4133
|
-
exports.synthetixTakeOrder = synthetixTakeOrder;
|
|
4134
|
-
exports.transactionTimestamp = transactionTimestamp;
|
|
4135
|
-
exports.uniswapV2Lend = uniswapV2Lend;
|
|
4136
|
-
exports.uniswapV2Redeem = uniswapV2Redeem;
|
|
4137
|
-
exports.uniswapV2TakeOrder = uniswapV2TakeOrder;
|
|
4138
|
-
exports.uniswapV3LiquidityPositionAddLiquidity = uniswapV3LiquidityPositionAddLiquidity;
|
|
4139
|
-
exports.uniswapV3LiquidityPositionCollect = uniswapV3LiquidityPositionCollect;
|
|
4140
|
-
exports.uniswapV3LiquidityPositionGetMaxTick = uniswapV3LiquidityPositionGetMaxTick;
|
|
4141
|
-
exports.uniswapV3LiquidityPositionGetMinTick = uniswapV3LiquidityPositionGetMinTick;
|
|
4142
|
-
exports.uniswapV3LiquidityPositionMint = uniswapV3LiquidityPositionMint;
|
|
4143
|
-
exports.uniswapV3LiquidityPositionPurge = uniswapV3LiquidityPositionPurge;
|
|
4144
|
-
exports.uniswapV3LiquidityPositionRemoveLiquidity = uniswapV3LiquidityPositionRemoveLiquidity;
|
|
4145
|
-
exports.uniswapV3OrderTokenPair = uniswapV3OrderTokenPair;
|
|
4146
|
-
exports.uniswapV3TakeOrder = uniswapV3TakeOrder;
|
|
4147
|
-
exports.unlockAllWhales = unlockAllWhales;
|
|
4148
|
-
exports.unlockWhale = unlockWhale;
|
|
4149
|
-
exports.unlockWhales = unlockWhales;
|
|
4150
|
-
exports.updateChainlinkAggregator = updateChainlinkAggregator;
|
|
4151
|
-
exports.vaultCallCreateNewList = vaultCallCreateNewList;
|
|
4152
|
-
exports.vaultCallCurveMinterMint = vaultCallCurveMinterMint;
|
|
4153
|
-
exports.vaultCallCurveMinterMintMany = vaultCallCurveMinterMintMany;
|
|
4154
|
-
exports.vaultCallCurveMinterToggleApproveMint = vaultCallCurveMinterToggleApproveMint;
|
|
4155
|
-
exports.vaultCallStartAssetBypassTimelock = vaultCallStartAssetBypassTimelock;
|
|
4156
|
-
exports.yearnVaultV2Lend = yearnVaultV2Lend;
|
|
4157
|
-
exports.yearnVaultV2Redeem = yearnVaultV2Redeem;
|
|
4158
|
-
exports.zeroExV2TakeOrder = zeroExV2TakeOrder;
|