@enzymefinance/testutils 4.0.0-next.6 → 4.0.0-next.7
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/CHANGELOG.md +8 -0
- package/dist/declarations/src/deployment.d.ts +19 -16
- package/dist/declarations/src/scaffolding/assets.d.ts +1 -1
- package/dist/declarations/src/scaffolding/core.d.ts +2 -3
- package/dist/declarations/src/scaffolding/extensions/external-positions/actions.d.ts +2 -1
- package/dist/declarations/src/scaffolding/extensions/external-positions/mocks.d.ts +4 -1
- package/dist/declarations/src/scaffolding/extensions/external-positions/uniswap-v3-liquidity.d.ts +12 -11
- package/dist/declarations/src/scaffolding/extensions/fees.d.ts +3 -3
- package/dist/declarations/src/scaffolding/extensions/integrations/aave.d.ts +2 -2
- package/dist/declarations/src/scaffolding/extensions/integrations/compound.d.ts +30 -2
- package/dist/declarations/src/scaffolding/extensions/integrations/curve.d.ts +13 -71
- package/dist/declarations/src/scaffolding/extensions/integrations/idle.d.ts +3 -3
- package/dist/declarations/src/scaffolding/extensions/integrations/olympusV2.d.ts +2 -2
- package/dist/declarations/src/scaffolding/extensions/integrations/synthetix.d.ts +5 -10
- package/dist/declarations/src/scaffolding/extensions/integrations/yearn.d.ts +2 -2
- package/dist/declarations/src/scaffolding/extensions/integrations/zeroExV2.d.ts +1 -1
- package/dist/declarations/src/scaffolding/extensions/policies.d.ts +8 -8
- package/dist/declarations/src/whales.d.ts +6 -3
- package/dist/enzymefinance-testutils.browser.cjs.js +403 -344
- package/dist/enzymefinance-testutils.browser.esm.js +402 -338
- package/dist/enzymefinance-testutils.cjs.dev.js +403 -344
- package/dist/enzymefinance-testutils.cjs.prod.js +403 -344
- package/dist/enzymefinance-testutils.esm.js +402 -338
- package/package.json +6 -6
- package/src/deployment.ts +19 -15
- package/src/scaffolding/core.ts +1 -9
- package/src/scaffolding/extensions/external-positions/actions.ts +6 -1
- package/src/scaffolding/extensions/external-positions/mocks.ts +7 -10
- package/src/scaffolding/extensions/external-positions/uniswap-v3-liquidity.ts +18 -24
- package/src/scaffolding/extensions/integrations/compound.ts +163 -2
- package/src/scaffolding/extensions/integrations/curve.ts +21 -238
- package/src/scaffolding/extensions/integrations/synthetix.ts +6 -25
- package/src/types.d.ts +1 -0
- package/src/whales.ts +8 -3
|
@@ -6,7 +6,6 @@ import type {
|
|
|
6
6
|
CurveExchangeAdapter,
|
|
7
7
|
CurveLiquidityAaveAdapter,
|
|
8
8
|
CurveLiquidityAdapter,
|
|
9
|
-
CurveLiquidityEursAdapter,
|
|
10
9
|
CurveLiquiditySethAdapter,
|
|
11
10
|
CurveLiquidityStethAdapter,
|
|
12
11
|
CurveRedeemType,
|
|
@@ -23,12 +22,6 @@ import {
|
|
|
23
22
|
curveAaveUnstakeAndRedeemArgs,
|
|
24
23
|
curveAaveUnstakeArgs,
|
|
25
24
|
curveClaimRewardsArgs,
|
|
26
|
-
curveEursLendAndStakeArgs,
|
|
27
|
-
curveEursLendArgs,
|
|
28
|
-
curveEursRedeemArgs,
|
|
29
|
-
curveEursStakeArgs,
|
|
30
|
-
curveEursUnstakeAndRedeemArgs,
|
|
31
|
-
curveEursUnstakeArgs,
|
|
32
25
|
curveLendAndStakeArgs,
|
|
33
26
|
curveLendArgs,
|
|
34
27
|
curveRedeemArgs,
|
|
@@ -146,17 +139,17 @@ export function curveClaimRewards({
|
|
|
146
139
|
integrationManager,
|
|
147
140
|
fundOwner,
|
|
148
141
|
curveLiquidityAdapter,
|
|
149
|
-
|
|
142
|
+
stakingToken,
|
|
150
143
|
}: {
|
|
151
144
|
comptrollerProxy: ComptrollerLib;
|
|
152
145
|
integrationManager: IntegrationManager;
|
|
153
146
|
fundOwner: SignerWithAddress;
|
|
154
147
|
curveLiquidityAdapter: CurveLiquidityAdapter;
|
|
155
|
-
|
|
148
|
+
stakingToken: AddressLike;
|
|
156
149
|
}) {
|
|
157
150
|
const callArgs = callOnIntegrationArgs({
|
|
158
151
|
adapter: curveLiquidityAdapter,
|
|
159
|
-
encodedCallArgs: curveClaimRewardsArgs({
|
|
152
|
+
encodedCallArgs: curveClaimRewardsArgs({ stakingToken }),
|
|
160
153
|
selector: claimRewardsSelector,
|
|
161
154
|
});
|
|
162
155
|
|
|
@@ -207,8 +200,8 @@ export async function curveLendAndStake({
|
|
|
207
200
|
curveLiquidityAdapter,
|
|
208
201
|
pool,
|
|
209
202
|
orderedOutgoingAssetAmounts,
|
|
210
|
-
|
|
211
|
-
|
|
203
|
+
incomingStakingToken,
|
|
204
|
+
minIncomingStakingTokenAmount = BigNumber.from(1),
|
|
212
205
|
useUnderlyings,
|
|
213
206
|
}: {
|
|
214
207
|
comptrollerProxy: ComptrollerLib;
|
|
@@ -217,15 +210,15 @@ export async function curveLendAndStake({
|
|
|
217
210
|
curveLiquidityAdapter: CurveLiquidityAdapter;
|
|
218
211
|
pool: AddressLike;
|
|
219
212
|
orderedOutgoingAssetAmounts: BigNumberish[];
|
|
220
|
-
|
|
221
|
-
|
|
213
|
+
incomingStakingToken: AddressLike;
|
|
214
|
+
minIncomingStakingTokenAmount?: BigNumberish;
|
|
222
215
|
useUnderlyings: boolean;
|
|
223
216
|
}) {
|
|
224
217
|
const callArgs = callOnIntegrationArgs({
|
|
225
218
|
adapter: curveLiquidityAdapter,
|
|
226
219
|
encodedCallArgs: curveLendAndStakeArgs({
|
|
227
|
-
|
|
228
|
-
|
|
220
|
+
incomingStakingToken,
|
|
221
|
+
minIncomingStakingTokenAmount,
|
|
229
222
|
orderedOutgoingAssetAmounts,
|
|
230
223
|
pool,
|
|
231
224
|
useUnderlyings,
|
|
@@ -282,7 +275,7 @@ export async function curveStake({
|
|
|
282
275
|
signer,
|
|
283
276
|
curveLiquidityAdapter,
|
|
284
277
|
pool,
|
|
285
|
-
|
|
278
|
+
incomingStakingToken,
|
|
286
279
|
amount,
|
|
287
280
|
}: {
|
|
288
281
|
comptrollerProxy: ComptrollerLib;
|
|
@@ -290,14 +283,14 @@ export async function curveStake({
|
|
|
290
283
|
signer: SignerWithAddress;
|
|
291
284
|
curveLiquidityAdapter: CurveLiquidityAdapter;
|
|
292
285
|
pool: AddressLike;
|
|
293
|
-
|
|
286
|
+
incomingStakingToken: AddressLike;
|
|
294
287
|
amount: BigNumberish;
|
|
295
288
|
}) {
|
|
296
289
|
const callArgs = callOnIntegrationArgs({
|
|
297
290
|
adapter: curveLiquidityAdapter,
|
|
298
291
|
encodedCallArgs: curveStakeArgs({
|
|
299
292
|
amount,
|
|
300
|
-
|
|
293
|
+
incomingStakingToken,
|
|
301
294
|
pool,
|
|
302
295
|
}),
|
|
303
296
|
selector: stakeSelector,
|
|
@@ -314,7 +307,7 @@ export async function curveUnstake({
|
|
|
314
307
|
signer,
|
|
315
308
|
curveLiquidityAdapter,
|
|
316
309
|
pool,
|
|
317
|
-
|
|
310
|
+
outgoingStakingToken,
|
|
318
311
|
amount,
|
|
319
312
|
}: {
|
|
320
313
|
comptrollerProxy: ComptrollerLib;
|
|
@@ -322,14 +315,14 @@ export async function curveUnstake({
|
|
|
322
315
|
signer: SignerWithAddress;
|
|
323
316
|
curveLiquidityAdapter: CurveLiquidityAdapter;
|
|
324
317
|
pool: AddressLike;
|
|
325
|
-
|
|
318
|
+
outgoingStakingToken: AddressLike;
|
|
326
319
|
amount: BigNumberish;
|
|
327
320
|
}) {
|
|
328
321
|
const callArgs = callOnIntegrationArgs({
|
|
329
322
|
adapter: curveLiquidityAdapter,
|
|
330
323
|
encodedCallArgs: curveUnstakeArgs({
|
|
331
324
|
amount,
|
|
332
|
-
|
|
325
|
+
outgoingStakingToken,
|
|
333
326
|
pool,
|
|
334
327
|
}),
|
|
335
328
|
selector: unstakeSelector,
|
|
@@ -346,8 +339,8 @@ export async function curveUnstakeAndRedeem({
|
|
|
346
339
|
signer,
|
|
347
340
|
curveLiquidityAdapter,
|
|
348
341
|
pool,
|
|
349
|
-
|
|
350
|
-
|
|
342
|
+
outgoingStakingToken,
|
|
343
|
+
outgoingStakingTokenAmount,
|
|
351
344
|
useUnderlyings,
|
|
352
345
|
redeemType,
|
|
353
346
|
incomingAssetData,
|
|
@@ -357,8 +350,8 @@ export async function curveUnstakeAndRedeem({
|
|
|
357
350
|
signer: SignerWithAddress;
|
|
358
351
|
curveLiquidityAdapter: CurveLiquidityAdapter;
|
|
359
352
|
pool: AddressLike;
|
|
360
|
-
|
|
361
|
-
|
|
353
|
+
outgoingStakingToken: StandardToken;
|
|
354
|
+
outgoingStakingTokenAmount: BigNumberish;
|
|
362
355
|
useUnderlyings: boolean;
|
|
363
356
|
redeemType: CurveRedeemType;
|
|
364
357
|
incomingAssetData: BytesLike;
|
|
@@ -367,8 +360,8 @@ export async function curveUnstakeAndRedeem({
|
|
|
367
360
|
adapter: curveLiquidityAdapter,
|
|
368
361
|
encodedCallArgs: curveUnstakeAndRedeemArgs({
|
|
369
362
|
incomingAssetData,
|
|
370
|
-
|
|
371
|
-
|
|
363
|
+
outgoingStakingToken,
|
|
364
|
+
outgoingStakingTokenAmount,
|
|
372
365
|
pool,
|
|
373
366
|
redeemType,
|
|
374
367
|
useUnderlyings,
|
|
@@ -615,216 +608,6 @@ export function curveAaveUnstake({
|
|
|
615
608
|
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
616
609
|
}
|
|
617
610
|
|
|
618
|
-
// eurs pool
|
|
619
|
-
|
|
620
|
-
export function curveEursClaimRewards({
|
|
621
|
-
comptrollerProxy,
|
|
622
|
-
integrationManager,
|
|
623
|
-
fundOwner,
|
|
624
|
-
curveLiquidityEursAdapter,
|
|
625
|
-
}: {
|
|
626
|
-
comptrollerProxy: ComptrollerLib;
|
|
627
|
-
integrationManager: IntegrationManager;
|
|
628
|
-
fundOwner: SignerWithAddress;
|
|
629
|
-
curveLiquidityEursAdapter: CurveLiquidityEursAdapter;
|
|
630
|
-
}) {
|
|
631
|
-
const callArgs = callOnIntegrationArgs({
|
|
632
|
-
adapter: curveLiquidityEursAdapter,
|
|
633
|
-
encodedCallArgs: constants.HashZero,
|
|
634
|
-
selector: claimRewardsSelector,
|
|
635
|
-
});
|
|
636
|
-
|
|
637
|
-
return comptrollerProxy
|
|
638
|
-
.connect(fundOwner)
|
|
639
|
-
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
640
|
-
}
|
|
641
|
-
|
|
642
|
-
export function curveEursLend({
|
|
643
|
-
comptrollerProxy,
|
|
644
|
-
integrationManager,
|
|
645
|
-
fundOwner,
|
|
646
|
-
curveLiquidityEursAdapter,
|
|
647
|
-
outgoingEursAmount,
|
|
648
|
-
outgoingSeurAmount,
|
|
649
|
-
minIncomingLPTokenAmount,
|
|
650
|
-
}: {
|
|
651
|
-
comptrollerProxy: ComptrollerLib;
|
|
652
|
-
integrationManager: IntegrationManager;
|
|
653
|
-
fundOwner: SignerWithAddress;
|
|
654
|
-
curveLiquidityEursAdapter: CurveLiquidityEursAdapter;
|
|
655
|
-
outgoingEursAmount: BigNumberish;
|
|
656
|
-
outgoingSeurAmount: BigNumberish;
|
|
657
|
-
minIncomingLPTokenAmount: BigNumberish;
|
|
658
|
-
}) {
|
|
659
|
-
const callArgs = callOnIntegrationArgs({
|
|
660
|
-
adapter: curveLiquidityEursAdapter,
|
|
661
|
-
encodedCallArgs: curveEursLendArgs({
|
|
662
|
-
minIncomingLPTokenAmount,
|
|
663
|
-
outgoingEursAmount,
|
|
664
|
-
outgoingSeurAmount,
|
|
665
|
-
}),
|
|
666
|
-
selector: lendSelector,
|
|
667
|
-
});
|
|
668
|
-
|
|
669
|
-
return comptrollerProxy
|
|
670
|
-
.connect(fundOwner)
|
|
671
|
-
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
672
|
-
}
|
|
673
|
-
|
|
674
|
-
export function curveEursLendAndStake({
|
|
675
|
-
comptrollerProxy,
|
|
676
|
-
integrationManager,
|
|
677
|
-
fundOwner,
|
|
678
|
-
curveLiquidityEursAdapter,
|
|
679
|
-
outgoingEursAmount,
|
|
680
|
-
outgoingSeurAmount,
|
|
681
|
-
minIncomingLiquidityGaugeTokenAmount,
|
|
682
|
-
}: {
|
|
683
|
-
comptrollerProxy: ComptrollerLib;
|
|
684
|
-
integrationManager: IntegrationManager;
|
|
685
|
-
fundOwner: SignerWithAddress;
|
|
686
|
-
curveLiquidityEursAdapter: CurveLiquidityEursAdapter;
|
|
687
|
-
outgoingEursAmount: BigNumberish;
|
|
688
|
-
outgoingSeurAmount: BigNumberish;
|
|
689
|
-
minIncomingLiquidityGaugeTokenAmount: BigNumberish;
|
|
690
|
-
}) {
|
|
691
|
-
const callArgs = callOnIntegrationArgs({
|
|
692
|
-
adapter: curveLiquidityEursAdapter,
|
|
693
|
-
encodedCallArgs: curveEursLendAndStakeArgs({
|
|
694
|
-
minIncomingLiquidityGaugeTokenAmount,
|
|
695
|
-
outgoingEursAmount,
|
|
696
|
-
outgoingSeurAmount,
|
|
697
|
-
}),
|
|
698
|
-
selector: lendAndStakeSelector,
|
|
699
|
-
});
|
|
700
|
-
|
|
701
|
-
return comptrollerProxy
|
|
702
|
-
.connect(fundOwner)
|
|
703
|
-
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
704
|
-
}
|
|
705
|
-
|
|
706
|
-
export function curveEursRedeem({
|
|
707
|
-
comptrollerProxy,
|
|
708
|
-
integrationManager,
|
|
709
|
-
fundOwner,
|
|
710
|
-
curveLiquidityEursAdapter,
|
|
711
|
-
outgoingLPTokenAmount,
|
|
712
|
-
minIncomingEursAmount,
|
|
713
|
-
minIncomingSeurAmount,
|
|
714
|
-
receiveSingleAsset,
|
|
715
|
-
}: {
|
|
716
|
-
comptrollerProxy: ComptrollerLib;
|
|
717
|
-
integrationManager: IntegrationManager;
|
|
718
|
-
fundOwner: SignerWithAddress;
|
|
719
|
-
curveLiquidityEursAdapter: CurveLiquidityEursAdapter;
|
|
720
|
-
outgoingLPTokenAmount: BigNumberish;
|
|
721
|
-
minIncomingEursAmount: BigNumberish;
|
|
722
|
-
minIncomingSeurAmount: BigNumberish;
|
|
723
|
-
receiveSingleAsset: boolean;
|
|
724
|
-
}) {
|
|
725
|
-
const callArgs = callOnIntegrationArgs({
|
|
726
|
-
adapter: curveLiquidityEursAdapter,
|
|
727
|
-
encodedCallArgs: curveEursRedeemArgs({
|
|
728
|
-
minIncomingEursAmount,
|
|
729
|
-
minIncomingSeurAmount,
|
|
730
|
-
outgoingLPTokenAmount,
|
|
731
|
-
receiveSingleAsset,
|
|
732
|
-
}),
|
|
733
|
-
selector: redeemSelector,
|
|
734
|
-
});
|
|
735
|
-
|
|
736
|
-
return comptrollerProxy
|
|
737
|
-
.connect(fundOwner)
|
|
738
|
-
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
739
|
-
}
|
|
740
|
-
|
|
741
|
-
export function curveEursStake({
|
|
742
|
-
comptrollerProxy,
|
|
743
|
-
integrationManager,
|
|
744
|
-
fundOwner,
|
|
745
|
-
curveLiquidityEursAdapter,
|
|
746
|
-
outgoingLPTokenAmount,
|
|
747
|
-
}: {
|
|
748
|
-
comptrollerProxy: ComptrollerLib;
|
|
749
|
-
integrationManager: IntegrationManager;
|
|
750
|
-
fundOwner: SignerWithAddress;
|
|
751
|
-
curveLiquidityEursAdapter: CurveLiquidityEursAdapter;
|
|
752
|
-
outgoingLPTokenAmount: BigNumberish;
|
|
753
|
-
}) {
|
|
754
|
-
const callArgs = callOnIntegrationArgs({
|
|
755
|
-
adapter: curveLiquidityEursAdapter,
|
|
756
|
-
encodedCallArgs: curveEursStakeArgs({
|
|
757
|
-
outgoingLPTokenAmount,
|
|
758
|
-
}),
|
|
759
|
-
selector: stakeSelector,
|
|
760
|
-
});
|
|
761
|
-
|
|
762
|
-
return comptrollerProxy
|
|
763
|
-
.connect(fundOwner)
|
|
764
|
-
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
765
|
-
}
|
|
766
|
-
|
|
767
|
-
export function curveEursUnstakeAndRedeem({
|
|
768
|
-
comptrollerProxy,
|
|
769
|
-
integrationManager,
|
|
770
|
-
fundOwner,
|
|
771
|
-
curveLiquidityEursAdapter,
|
|
772
|
-
outgoingLiquidityGaugeTokenAmount,
|
|
773
|
-
minIncomingEursAmount,
|
|
774
|
-
minIncomingSeurAmount,
|
|
775
|
-
receiveSingleAsset,
|
|
776
|
-
}: {
|
|
777
|
-
comptrollerProxy: ComptrollerLib;
|
|
778
|
-
integrationManager: IntegrationManager;
|
|
779
|
-
fundOwner: SignerWithAddress;
|
|
780
|
-
curveLiquidityEursAdapter: CurveLiquidityEursAdapter;
|
|
781
|
-
outgoingLiquidityGaugeTokenAmount: BigNumberish;
|
|
782
|
-
minIncomingEursAmount: BigNumberish;
|
|
783
|
-
minIncomingSeurAmount: BigNumberish;
|
|
784
|
-
receiveSingleAsset: boolean;
|
|
785
|
-
}) {
|
|
786
|
-
const callArgs = callOnIntegrationArgs({
|
|
787
|
-
adapter: curveLiquidityEursAdapter,
|
|
788
|
-
encodedCallArgs: curveEursUnstakeAndRedeemArgs({
|
|
789
|
-
minIncomingEursAmount,
|
|
790
|
-
minIncomingSeurAmount,
|
|
791
|
-
outgoingLiquidityGaugeTokenAmount,
|
|
792
|
-
receiveSingleAsset,
|
|
793
|
-
}),
|
|
794
|
-
selector: unstakeAndRedeemSelector,
|
|
795
|
-
});
|
|
796
|
-
|
|
797
|
-
return comptrollerProxy
|
|
798
|
-
.connect(fundOwner)
|
|
799
|
-
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
800
|
-
}
|
|
801
|
-
|
|
802
|
-
export function curveEursUnstake({
|
|
803
|
-
comptrollerProxy,
|
|
804
|
-
integrationManager,
|
|
805
|
-
fundOwner,
|
|
806
|
-
curveLiquidityEursAdapter,
|
|
807
|
-
outgoingLiquidityGaugeTokenAmount,
|
|
808
|
-
}: {
|
|
809
|
-
comptrollerProxy: ComptrollerLib;
|
|
810
|
-
integrationManager: IntegrationManager;
|
|
811
|
-
fundOwner: SignerWithAddress;
|
|
812
|
-
curveLiquidityEursAdapter: CurveLiquidityEursAdapter;
|
|
813
|
-
outgoingLiquidityGaugeTokenAmount: BigNumberish;
|
|
814
|
-
}) {
|
|
815
|
-
const callArgs = callOnIntegrationArgs({
|
|
816
|
-
adapter: curveLiquidityEursAdapter,
|
|
817
|
-
encodedCallArgs: curveEursUnstakeArgs({
|
|
818
|
-
outgoingLiquidityGaugeTokenAmount,
|
|
819
|
-
}),
|
|
820
|
-
selector: unstakeSelector,
|
|
821
|
-
});
|
|
822
|
-
|
|
823
|
-
return comptrollerProxy
|
|
824
|
-
.connect(fundOwner)
|
|
825
|
-
.callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
|
|
826
|
-
}
|
|
827
|
-
|
|
828
611
|
// sETH pool
|
|
829
612
|
|
|
830
613
|
export function curveSethClaimRewards({
|
|
@@ -2,7 +2,6 @@ import type { AddressLike } from '@enzymefinance/ethers';
|
|
|
2
2
|
import type {
|
|
3
3
|
ComptrollerLib,
|
|
4
4
|
IntegrationManager,
|
|
5
|
-
ISynthetixAddressResolver,
|
|
6
5
|
StandardToken,
|
|
7
6
|
SynthetixAdapter,
|
|
8
7
|
VaultLib,
|
|
@@ -22,39 +21,24 @@ import { utils } from 'ethers';
|
|
|
22
21
|
|
|
23
22
|
export async function synthetixAssignExchangeDelegate({
|
|
24
23
|
comptrollerProxy,
|
|
25
|
-
|
|
24
|
+
synthetixDelegateApprovals,
|
|
26
25
|
fundOwner,
|
|
27
26
|
delegate,
|
|
28
27
|
}: {
|
|
29
28
|
comptrollerProxy: ComptrollerLib;
|
|
30
|
-
|
|
29
|
+
synthetixDelegateApprovals: AddressLike;
|
|
31
30
|
fundOwner: Signer;
|
|
32
31
|
delegate: AddressLike;
|
|
33
32
|
}) {
|
|
34
|
-
const delegateApprovals = await synthetixResolveAddress({
|
|
35
|
-
addressResolver,
|
|
36
|
-
name: 'DelegateApprovals',
|
|
37
|
-
});
|
|
38
|
-
|
|
39
33
|
await comptrollerProxy
|
|
40
34
|
.connect(fundOwner)
|
|
41
35
|
.vaultCallOnContract(
|
|
42
|
-
|
|
36
|
+
synthetixDelegateApprovals,
|
|
43
37
|
synthetixAssignExchangeDelegateSelector,
|
|
44
38
|
encodeArgs(['address'], [delegate]),
|
|
45
39
|
);
|
|
46
40
|
}
|
|
47
41
|
|
|
48
|
-
export async function synthetixResolveAddress({
|
|
49
|
-
addressResolver,
|
|
50
|
-
name,
|
|
51
|
-
}: {
|
|
52
|
-
addressResolver: ISynthetixAddressResolver;
|
|
53
|
-
name: string;
|
|
54
|
-
}) {
|
|
55
|
-
return addressResolver.requireAndGetAddress(utils.formatBytes32String(name), `Missing ${name}`);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
42
|
export async function synthetixRedeem({
|
|
59
43
|
comptrollerProxy,
|
|
60
44
|
integrationManager,
|
|
@@ -91,8 +75,7 @@ export async function synthetixTakeOrder({
|
|
|
91
75
|
synthetixAdapter,
|
|
92
76
|
outgoingAsset,
|
|
93
77
|
outgoingAssetAmount = utils.parseEther('1'),
|
|
94
|
-
|
|
95
|
-
minIncomingAssetAmount = utils.parseEther('1'),
|
|
78
|
+
minIncomingSusdAmount = utils.parseEther('1'),
|
|
96
79
|
seedFund = false,
|
|
97
80
|
}: {
|
|
98
81
|
comptrollerProxy: ComptrollerLib;
|
|
@@ -102,8 +85,7 @@ export async function synthetixTakeOrder({
|
|
|
102
85
|
synthetixAdapter: SynthetixAdapter;
|
|
103
86
|
outgoingAsset: StandardToken;
|
|
104
87
|
outgoingAssetAmount?: BigNumberish;
|
|
105
|
-
|
|
106
|
-
minIncomingAssetAmount?: BigNumberish;
|
|
88
|
+
minIncomingSusdAmount?: BigNumberish;
|
|
107
89
|
seedFund?: boolean;
|
|
108
90
|
}) {
|
|
109
91
|
if (seedFund) {
|
|
@@ -112,8 +94,7 @@ export async function synthetixTakeOrder({
|
|
|
112
94
|
}
|
|
113
95
|
|
|
114
96
|
const takeOrderArgs = synthetixTakeOrderArgs({
|
|
115
|
-
|
|
116
|
-
minIncomingAssetAmount,
|
|
97
|
+
minIncomingSusdAmount,
|
|
117
98
|
outgoingAsset,
|
|
118
99
|
outgoingAssetAmount,
|
|
119
100
|
});
|
package/src/types.d.ts
CHANGED
package/src/whales.ts
CHANGED
|
@@ -35,17 +35,22 @@ const whales = {
|
|
|
35
35
|
ceth: '0x8aceab8167c80cb8b3de7fa6228b889bb1130ee8',
|
|
36
36
|
cuni: '0x39d8014b4f40d2cbc441137011d32023f4f1fd87',
|
|
37
37
|
cusdc: '0xe1ed4da4284924ddaf69983b4d813fb1be58c380',
|
|
38
|
+
// fTokens
|
|
39
|
+
fdai7: '0x88884e35d7006ae84efef09ee6bc6a43dd8e2bb8',
|
|
40
|
+
feth7: '0xcd2ba6a4d50745b0b4096186f925115387852c15',
|
|
41
|
+
fdai8: '0x93f3f612a525a59523e91cc5552f718df9fc0746',
|
|
42
|
+
ftribe8: '0xdb5ac83c137321da29a59a7592232bc4ed461730',
|
|
38
43
|
// ptTokens
|
|
39
44
|
ptUsdc: '0xd18236cd213f39d078177b6f6908f0e44e88e4aa',
|
|
40
|
-
// synths
|
|
45
|
+
// synths (unsupported)
|
|
41
46
|
seth: '0xc34a7c65aa08cb36744bda8eeec7b8e9891e147c',
|
|
42
|
-
seur: '0xc3f2f91723b16b95bef0619b2504c049075d5b0b',
|
|
43
47
|
sxag: '0x40d68c490bf7262ec40048099aec23535f734be2',
|
|
44
48
|
sxau: '0x92eb453b7b5b8d41edb44e2c8b8b53eb70a482c7',
|
|
45
49
|
// misc
|
|
46
50
|
lidoSteth: '0x31f644e2dd5d74f5c8d6d9de89dd517474d51800',
|
|
47
|
-
eurs: '0x98ed26de6451db36246672df78ae7c50f2c76f6d',
|
|
48
51
|
ust: '0xf584f8728b874a6a5c7a8d4d387c9aae9172d621',
|
|
52
|
+
// Curve steth pool related
|
|
53
|
+
stecrv: '0x56c915758ad3f76fd287fff7563ee313142fb663',
|
|
49
54
|
} as const;
|
|
50
55
|
/* eslint-enable sort-keys-fix/sort-keys-fix */
|
|
51
56
|
|