@aurigami/sdk 0.4.2 → 0.5.1
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/SDK.d.ts +5 -3
- package/dist/constants.d.ts +3 -1
- package/dist/priceFetcher.d.ts +2 -1
- package/dist/sdk.cjs.development.js +140 -76
- package/dist/sdk.cjs.development.js.map +1 -1
- package/dist/sdk.cjs.production.min.js +1 -1
- package/dist/sdk.cjs.production.min.js.map +1 -1
- package/dist/sdk.esm.js +142 -79
- package/dist/sdk.esm.js.map +1 -1
- package/dist/types.d.ts +8 -0
- package/package.json +1 -1
- package/src/MoneyMarket.ts +15 -9
- package/src/SDK.ts +45 -11
- package/src/constants.ts +17 -27
- package/src/decimals.ts +10 -14
- package/src/priceFetcher.ts +7 -5
- package/src/types.ts +8 -0
package/dist/SDK.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BlockchainEntity, BlockchainEntityRead } from './BlockchainEntity';
|
|
2
|
-
import { LockingDetails, PlyAuroraPoolDetails, NetworkConnection, UserDetails, UserMarketDetails, CurrencyAmount, HypotheticalStats } from './types';
|
|
2
|
+
import { LockingDetails, PlyAuroraPoolDetails, NetworkConnection, UserDetails, UserMarketDetails, CurrencyAmount, HypotheticalStats, MarketAction } from './types';
|
|
3
3
|
import { TransactionResponse } from '@ethersproject/abstract-provider';
|
|
4
4
|
import { Contract } from 'ethers';
|
|
5
5
|
import { AuriFairLaunch, Comptroller, TokenLock } from '@aurigami/contracts/typechain';
|
|
@@ -16,17 +16,19 @@ export declare class SdkRead extends BlockchainEntityRead {
|
|
|
16
16
|
getPlyAuroraPoolDetails(): Promise<PlyAuroraPoolDetails>;
|
|
17
17
|
getTokenPrice(token: Token): Promise<CurrencyAmount>;
|
|
18
18
|
stakeBalanceOf(user: string): Promise<TokenAmount>;
|
|
19
|
-
calcHypotheticalStats(
|
|
19
|
+
calcHypotheticalStats({ userMarketDetail, currentBorrowLimit, currentBorrowValuation, action, tokenAmount }: {
|
|
20
20
|
userMarketDetail: UserMarketDetails;
|
|
21
21
|
currentBorrowLimit: CurrencyAmount;
|
|
22
22
|
currentBorrowValuation: CurrencyAmount;
|
|
23
|
-
|
|
23
|
+
action: MarketAction;
|
|
24
|
+
tokenAmount?: TokenAmount;
|
|
24
25
|
}): HypotheticalStats;
|
|
25
26
|
}
|
|
26
27
|
export declare class SdkReadWrite extends SdkRead {
|
|
27
28
|
claim(): Promise<TransactionResponse>;
|
|
28
29
|
stake(amount: TokenAmount): Promise<TransactionResponse>;
|
|
29
30
|
unstake(amount: TokenAmount): Promise<TransactionResponse>;
|
|
31
|
+
faucetDrip(): Promise<TransactionResponse>;
|
|
30
32
|
}
|
|
31
33
|
export declare class SDK extends BlockchainEntity {
|
|
32
34
|
constructor();
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import BigNumber from 'bignumber.js';
|
|
2
|
+
import { ethers } from 'ethers';
|
|
2
3
|
export declare const dummyAddress: string;
|
|
3
4
|
export declare const ETHAddress: string;
|
|
4
5
|
export declare const AURORA_CHAINID = 1313161554;
|
|
5
|
-
export declare const DECIMAL_PRECISION =
|
|
6
|
+
export declare const DECIMAL_PRECISION = 10;
|
|
6
7
|
export declare type NetworkAddresses = {
|
|
7
8
|
auTokens: {
|
|
8
9
|
address: string;
|
|
@@ -17,3 +18,4 @@ export declare const REWARDCLAIMSTART = 1640995200;
|
|
|
17
18
|
export declare const ONE_DAY = 86400;
|
|
18
19
|
export declare const ONE_YEAR: number;
|
|
19
20
|
export declare const AurPlyPid = 0;
|
|
21
|
+
export declare const INF: ethers.BigNumber;
|
package/dist/priceFetcher.d.ts
CHANGED
|
@@ -18,4 +18,5 @@ export declare function fetchUnderlyingTokensPrices(provider: providers.Provider
|
|
|
18
18
|
underlyingPrice: BigNumber;
|
|
19
19
|
}[]>;
|
|
20
20
|
export declare function fetchPrice(address: Address, provider: providers.Provider): Promise<BigNumber>;
|
|
21
|
-
export declare function fetchValuation(tokenAmount: TokenAmount, provider: providers.Provider
|
|
21
|
+
export declare function fetchValuation(tokenAmount: TokenAmount, provider: providers.Provider): Promise<BigNumber>;
|
|
22
|
+
export declare function calcValuation(tokenAmount: TokenAmount, price: BigNumber): BigNumber;
|
|
@@ -897,47 +897,52 @@ var BlockchainEntity = /*#__PURE__*/function () {
|
|
|
897
897
|
return BlockchainEntity;
|
|
898
898
|
}();
|
|
899
899
|
|
|
900
|
+
(function (ComptrollerRewardType) {
|
|
901
|
+
ComptrollerRewardType[ComptrollerRewardType["PLY"] = 0] = "PLY";
|
|
902
|
+
ComptrollerRewardType[ComptrollerRewardType["AURORA"] = 1] = "AURORA";
|
|
903
|
+
})(exports.ComptrollerRewardType || (exports.ComptrollerRewardType = {}));
|
|
904
|
+
|
|
905
|
+
(function (MarketAction) {
|
|
906
|
+
MarketAction[MarketAction["Deposit"] = 0] = "Deposit";
|
|
907
|
+
MarketAction[MarketAction["Borrow"] = 1] = "Borrow";
|
|
908
|
+
MarketAction[MarketAction["Withdraw"] = 2] = "Withdraw";
|
|
909
|
+
MarketAction[MarketAction["Repay"] = 3] = "Repay";
|
|
910
|
+
MarketAction[MarketAction["EnableCollateral"] = 4] = "EnableCollateral";
|
|
911
|
+
MarketAction[MarketAction["DisableCollateral"] = 5] = "DisableCollateral";
|
|
912
|
+
})(exports.MarketAction || (exports.MarketAction = {}));
|
|
913
|
+
|
|
900
914
|
var dummyAddress = "0xDEADbeEfEEeEEEeEEEeEEeeeeeEeEEeeeeEEEEeE";
|
|
901
915
|
var ETHAddress = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
|
|
902
916
|
var AURORA_CHAINID = 1313161554;
|
|
903
|
-
var DECIMAL_PRECISION =
|
|
917
|
+
var DECIMAL_PRECISION = 10;
|
|
904
918
|
var networkAddresses = {
|
|
905
919
|
auTokens: [{
|
|
906
|
-
address: /*#__PURE__*/'
|
|
920
|
+
address: /*#__PURE__*/'0x8bA0b797F3A965C12EF49d924d154B71d63316b5'.toLowerCase(),
|
|
907
921
|
underlying: /*#__PURE__*/'0xb12bfca5a55806aaf64e99521918a4bf0fc40802'.toLowerCase()
|
|
908
922
|
}, {
|
|
909
|
-
address: /*#__PURE__*/'
|
|
923
|
+
address: /*#__PURE__*/'0xA2926acb1BEdBC827000FCA08D4279aC3Bb6a443'.toLowerCase(),
|
|
910
924
|
underlying: /*#__PURE__*/ETHAddress.toLowerCase()
|
|
911
925
|
}, {
|
|
912
|
-
address: /*#__PURE__*/'
|
|
926
|
+
address: /*#__PURE__*/'0x4176c37161E1873FA08C8301c45D4cC02293AF44'.toLowerCase(),
|
|
913
927
|
underlying: /*#__PURE__*/'0xf4eb217ba2454613b15dbdea6e5f22276410e89e'.toLowerCase()
|
|
914
928
|
}, {
|
|
915
|
-
address: /*#__PURE__*/'
|
|
929
|
+
address: /*#__PURE__*/'0xaE1B4372e6881f69Caeb44D0793ed710bb345278'.toLowerCase(),
|
|
916
930
|
underlying: /*#__PURE__*/'0x4988a896b1227218e4a686fde5eabdcabd91571f'.toLowerCase()
|
|
917
931
|
}, {
|
|
918
|
-
address: /*#__PURE__*/'
|
|
932
|
+
address: /*#__PURE__*/'0x3d3b76B7E62a1f1bB08684933F63215e0582a149'.toLowerCase(),
|
|
919
933
|
underlying: /*#__PURE__*/'0xe3520349f477a5f6eb06107066048508498a291b'.toLowerCase()
|
|
920
|
-
}, {
|
|
921
|
-
address: /*#__PURE__*/'0x83Ae17f197C1F1260543d4D5A710772761535066'.toLowerCase(),
|
|
922
|
-
underlying: /*#__PURE__*/'0x8bec47865ade3b172a928df8f990bc7f2a3b9f79'.toLowerCase()
|
|
923
|
-
}, {
|
|
924
|
-
address: /*#__PURE__*/'0xcC5CA0156317C1FF2A96E0f45659625081352071'.toLowerCase(),
|
|
925
|
-
underlying: /*#__PURE__*/'0xC42C30aC6Cc15faC9bD938618BcaA1a1FaE8501d'.toLowerCase()
|
|
926
|
-
}, {
|
|
927
|
-
address: /*#__PURE__*/'0x173Bf18675D52B4887C5d40E935C3ab1192aFb4C'.toLowerCase(),
|
|
928
|
-
underlying: /*#__PURE__*/'0xb9b8d9e5557381BF025f1A59B602ad3F19A4e4Be'.toLowerCase()
|
|
929
934
|
}],
|
|
930
935
|
misc: {
|
|
931
|
-
COMPTROLLER: /*#__PURE__*/"
|
|
932
|
-
oracle: /*#__PURE__*/"
|
|
933
|
-
AURIFAIRLAUNCH: /*#__PURE__*/"
|
|
934
|
-
AURILENS: /*#__PURE__*/'
|
|
935
|
-
TOKENLOCK: /*#__PURE__*/'
|
|
936
|
+
COMPTROLLER: /*#__PURE__*/"0x448717B7Be11C3fb7AA7f0284f28B399D0004fE1".toLowerCase(),
|
|
937
|
+
oracle: /*#__PURE__*/"0xfD47837a18ad6a72F564903a7E5162286E059224".toLowerCase(),
|
|
938
|
+
AURIFAIRLAUNCH: /*#__PURE__*/"0x986e3ac1bC3C02714C9Bfd73Cd6a206F10600b4c".toLowerCase(),
|
|
939
|
+
AURILENS: /*#__PURE__*/'0xE770e5f08251622F368Bf1a449E072627Ff6cB62'.toLowerCase(),
|
|
940
|
+
TOKENLOCK: /*#__PURE__*/'0xE130E307eF5b5c157FB233320b7ebD08f2fD320A'.toLowerCase()
|
|
936
941
|
},
|
|
937
942
|
tokens: {
|
|
938
|
-
AURORA: /*#__PURE__*/"
|
|
939
|
-
PLY: /*#__PURE__*/"
|
|
940
|
-
AURPLY: /*#__PURE__*/"
|
|
943
|
+
AURORA: /*#__PURE__*/"0x8BEc47865aDe3B172A928df8f990Bc7f2A3b9f79".toLowerCase(),
|
|
944
|
+
PLY: /*#__PURE__*/"0x706bd3b9473126D2E7dCA097d7AAc5dB74918E6c".toLowerCase(),
|
|
945
|
+
AURPLY: /*#__PURE__*/"0x95890d73F2995E621F6A66EF9b71413926845542".toLowerCase()
|
|
941
946
|
}
|
|
942
947
|
};
|
|
943
948
|
var BORROW_LIMIT_BUFFER = /*#__PURE__*/new BigNumber(0.95);
|
|
@@ -945,25 +950,22 @@ var REWARDCLAIMSTART = 1640995200;
|
|
|
945
950
|
var ONE_DAY = 86400;
|
|
946
951
|
var ONE_YEAR = ONE_DAY * 365;
|
|
947
952
|
var AurPlyPid = 0;
|
|
953
|
+
var INF = /*#__PURE__*/ethers.BigNumber.from(2).pow(256).sub(1);
|
|
948
954
|
|
|
949
955
|
var decimalRecords = {
|
|
950
956
|
'0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee': 18,
|
|
951
|
-
'
|
|
952
|
-
'
|
|
957
|
+
'0x4176c37161e1873fa08c8301c45d4cc02293af44': 8,
|
|
958
|
+
'0x95890d73f2995e621f6a66ef9b71413926845542': 18,
|
|
959
|
+
'0x3d3b76b7e62a1f1bb08684933f63215e0582a149': 8,
|
|
953
960
|
'0xf4eb217ba2454613b15dbdea6e5f22276410e89e': 8,
|
|
954
|
-
'
|
|
955
|
-
'0xfb0e4680b8b1c7b69fb6a3988029c74fea871dd9': 8,
|
|
961
|
+
'0x8ba0b797f3a965c12ef49d924d154b71d63316b5': 8,
|
|
956
962
|
'0xb12bfca5a55806aaf64e99521918a4bf0fc40802': 6,
|
|
957
|
-
'
|
|
958
|
-
'0xc42c30ac6cc15fac9bd938618bcaa1a1fae8501d': 24,
|
|
959
|
-
'0x7b47690b04494a628151dbb86b4cc95cf2629b14': 8,
|
|
960
|
-
'0x822e871518c22e8570cfbea43fddbbff963d4bde': 18,
|
|
961
|
-
'0x2def6eb801757655ad227110d65c80db595bbc60': 8,
|
|
962
|
-
'0x6bb82009b316a9098c23e3962b4371e879c8d23d': 8,
|
|
963
|
+
'0x706bd3b9473126d2e7dca097d7aac5db74918e6c': 18,
|
|
963
964
|
'0x8bec47865ade3b172a928df8f990bc7f2a3b9f79': 18,
|
|
964
|
-
'
|
|
965
|
-
'
|
|
966
|
-
'
|
|
965
|
+
'0xae1b4372e6881f69caeb44d0793ed710bb345278': 8,
|
|
966
|
+
'0x4988a896b1227218e4a686fde5eabdcabd91571f': 6,
|
|
967
|
+
'0xa2926acb1bedbc827000fca08d4279ac3bb6a443': 8,
|
|
968
|
+
'0xe3520349f477a5f6eb06107066048508498a291b': 18
|
|
967
969
|
};
|
|
968
970
|
|
|
969
971
|
function formatObject(object) {
|
|
@@ -1013,11 +1015,6 @@ function calcLMRewardApr(rewardsValue, totalStakeValue, frequencyPerYear) {
|
|
|
1013
1015
|
return rewardsValue.multipliedBy(frequencyPerYear).dividedBy(totalStakeValue);
|
|
1014
1016
|
}
|
|
1015
1017
|
|
|
1016
|
-
(function (ComptrollerRewardType) {
|
|
1017
|
-
ComptrollerRewardType[ComptrollerRewardType["PLY"] = 0] = "PLY";
|
|
1018
|
-
ComptrollerRewardType[ComptrollerRewardType["AURORA"] = 1] = "AURORA";
|
|
1019
|
-
})(exports.ComptrollerRewardType || (exports.ComptrollerRewardType = {}));
|
|
1020
|
-
|
|
1021
1018
|
var Token = function Token(address, decimals) {
|
|
1022
1019
|
this.address = address.toLowerCase();
|
|
1023
1020
|
this.decimals = decimals;
|
|
@@ -2271,31 +2268,25 @@ function _fetchPrice() {
|
|
|
2271
2268
|
return _fetchPrice.apply(this, arguments);
|
|
2272
2269
|
}
|
|
2273
2270
|
|
|
2274
|
-
function fetchValuation(_x13, _x14
|
|
2271
|
+
function fetchValuation(_x13, _x14) {
|
|
2275
2272
|
return _fetchValuation.apply(this, arguments);
|
|
2276
2273
|
}
|
|
2277
2274
|
|
|
2278
2275
|
function _fetchValuation() {
|
|
2279
|
-
_fetchValuation = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee8(tokenAmount, provider
|
|
2276
|
+
_fetchValuation = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee8(tokenAmount, provider) {
|
|
2277
|
+
var price;
|
|
2280
2278
|
return runtime_1.wrap(function _callee8$(_context8) {
|
|
2281
2279
|
while (1) {
|
|
2282
2280
|
switch (_context8.prev = _context8.next) {
|
|
2283
2281
|
case 0:
|
|
2284
|
-
|
|
2285
|
-
_context8.next = 4;
|
|
2286
|
-
break;
|
|
2287
|
-
}
|
|
2288
|
-
|
|
2289
|
-
_context8.next = 3;
|
|
2282
|
+
_context8.next = 2;
|
|
2290
2283
|
return fetchPrice(tokenAmount.token.address, provider);
|
|
2291
2284
|
|
|
2292
|
-
case
|
|
2285
|
+
case 2:
|
|
2293
2286
|
price = _context8.sent;
|
|
2287
|
+
return _context8.abrupt("return", calcValuation(tokenAmount, price));
|
|
2294
2288
|
|
|
2295
2289
|
case 4:
|
|
2296
|
-
return _context8.abrupt("return", new BigNumber(tokenAmount.formattedAmount()).multipliedBy(price));
|
|
2297
|
-
|
|
2298
|
-
case 5:
|
|
2299
2290
|
case "end":
|
|
2300
2291
|
return _context8.stop();
|
|
2301
2292
|
}
|
|
@@ -2305,6 +2296,10 @@ function _fetchValuation() {
|
|
|
2305
2296
|
return _fetchValuation.apply(this, arguments);
|
|
2306
2297
|
}
|
|
2307
2298
|
|
|
2299
|
+
function calcValuation(tokenAmount, price) {
|
|
2300
|
+
return new BigNumber(tokenAmount.formattedAmount()).multipliedBy(price);
|
|
2301
|
+
}
|
|
2302
|
+
|
|
2308
2303
|
var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
2309
2304
|
_inheritsLoose(MoneyMarketRead, _BlockchainEntityRead);
|
|
2310
2305
|
|
|
@@ -2626,7 +2621,7 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
2626
2621
|
case 11:
|
|
2627
2622
|
_context9.t0 = calcLMRewardApr;
|
|
2628
2623
|
_context9.next = 14;
|
|
2629
|
-
return
|
|
2624
|
+
return calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardBorrowSpeed.toString()), plyPrice);
|
|
2630
2625
|
|
|
2631
2626
|
case 14:
|
|
2632
2627
|
_context9.t1 = _context9.sent;
|
|
@@ -2635,7 +2630,7 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
2635
2630
|
borrowPlyApy = (0, _context9.t0)(_context9.t1, _context9.t2, _context9.t3);
|
|
2636
2631
|
_context9.t4 = calcLMRewardApr;
|
|
2637
2632
|
_context9.next = 21;
|
|
2638
|
-
return
|
|
2633
|
+
return calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardSupplySpeed.toString()), plyPrice);
|
|
2639
2634
|
|
|
2640
2635
|
case 21:
|
|
2641
2636
|
_context9.t5 = _context9.sent;
|
|
@@ -2799,9 +2794,17 @@ var MoneyMarketReadWrite = /*#__PURE__*/function (_MoneyMarketRead) {
|
|
|
2799
2794
|
while (1) {
|
|
2800
2795
|
switch (_context14.prev = _context14.next) {
|
|
2801
2796
|
case 0:
|
|
2797
|
+
if (!new BigNumber(amount.rawAmount()).lt(0)) {
|
|
2798
|
+
_context14.next = 2;
|
|
2799
|
+
break;
|
|
2800
|
+
}
|
|
2801
|
+
|
|
2802
|
+
return _context14.abrupt("return", this.auToken.connect(this._networkConnection.signer).redeemUnderlying(INF));
|
|
2803
|
+
|
|
2804
|
+
case 2:
|
|
2802
2805
|
return _context14.abrupt("return", this.auToken.connect(this._networkConnection.signer).redeemUnderlying(amount.rawAmount()));
|
|
2803
2806
|
|
|
2804
|
-
case
|
|
2807
|
+
case 3:
|
|
2805
2808
|
case "end":
|
|
2806
2809
|
return _context14.stop();
|
|
2807
2810
|
}
|
|
@@ -2818,23 +2821,30 @@ var MoneyMarketReadWrite = /*#__PURE__*/function (_MoneyMarketRead) {
|
|
|
2818
2821
|
|
|
2819
2822
|
_proto2.repay = /*#__PURE__*/function () {
|
|
2820
2823
|
var _repay = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee15(amount) {
|
|
2824
|
+
var repayAmount;
|
|
2821
2825
|
return runtime_1.wrap(function _callee15$(_context15) {
|
|
2822
2826
|
while (1) {
|
|
2823
2827
|
switch (_context15.prev = _context15.next) {
|
|
2824
2828
|
case 0:
|
|
2829
|
+
if (new BigNumber(amount.rawAmount()).lt(0)) {
|
|
2830
|
+
repayAmount = INF;
|
|
2831
|
+
} else {
|
|
2832
|
+
repayAmount = ethers.BigNumber.from(amount.rawAmount());
|
|
2833
|
+
}
|
|
2834
|
+
|
|
2825
2835
|
if (!isSameAddress(amount.token.address, ETHAddress)) {
|
|
2826
|
-
_context15.next =
|
|
2836
|
+
_context15.next = 5;
|
|
2827
2837
|
break;
|
|
2828
2838
|
}
|
|
2829
2839
|
|
|
2830
2840
|
return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow({
|
|
2831
|
-
value:
|
|
2841
|
+
value: repayAmount
|
|
2832
2842
|
}));
|
|
2833
2843
|
|
|
2834
|
-
case 4:
|
|
2835
|
-
return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(amount.rawAmount()));
|
|
2836
|
-
|
|
2837
2844
|
case 5:
|
|
2845
|
+
return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(repayAmount));
|
|
2846
|
+
|
|
2847
|
+
case 6:
|
|
2838
2848
|
case "end":
|
|
2839
2849
|
return _context15.stop();
|
|
2840
2850
|
}
|
|
@@ -2918,6 +2928,12 @@ var MoneyMarket = /*#__PURE__*/function (_BlockchainEntity) {
|
|
|
2918
2928
|
return MoneyMarket;
|
|
2919
2929
|
}(BlockchainEntity);
|
|
2920
2930
|
|
|
2931
|
+
var abi$2 = [
|
|
2932
|
+
];
|
|
2933
|
+
var FaucetABI = {
|
|
2934
|
+
abi: abi$2
|
|
2935
|
+
};
|
|
2936
|
+
|
|
2921
2937
|
var SdkRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
2922
2938
|
_inheritsLoose(SdkRead, _BlockchainEntityRead);
|
|
2923
2939
|
|
|
@@ -2987,7 +3003,7 @@ var SdkRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
2987
3003
|
var _getUserDetails = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee2(userAddress) {
|
|
2988
3004
|
var _this2 = this;
|
|
2989
3005
|
|
|
2990
|
-
var marketCount, userMarketDetails, assetsIn, promises, totalBorrowLimit, pricePromises, _loop2, _iterator, _step, underlyingPrices,
|
|
3006
|
+
var marketCount, userMarketDetails, assetsIn, promises, totalBorrowLimit, pricePromises, _loop2, _iterator, _step, underlyingPrices, depositValues, _loop, i, accountLiquidity, rewardBalancesMetadata, lockedAmount, values, borrowedvaluation, bufferedBorrowLimit, minimumBorrowLimitAllowed, borrowableAmount, auToken, moneyMarket, maxWithdrawCap;
|
|
2991
3007
|
|
|
2992
3008
|
return runtime_1.wrap(function _callee2$(_context2) {
|
|
2993
3009
|
while (1) {
|
|
@@ -3036,7 +3052,7 @@ var SdkRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
3036
3052
|
|
|
3037
3053
|
case 12:
|
|
3038
3054
|
underlyingPrices = _context2.sent;
|
|
3039
|
-
|
|
3055
|
+
depositValues = [];
|
|
3040
3056
|
|
|
3041
3057
|
_loop = function _loop() {
|
|
3042
3058
|
var auToken = networkAddresses.auTokens[i];
|
|
@@ -3049,18 +3065,13 @@ var SdkRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
3049
3065
|
userMarketDetails[i].isCollateral = false;
|
|
3050
3066
|
}
|
|
3051
3067
|
|
|
3052
|
-
|
|
3068
|
+
depositValues.push(calcValuation(userMarketDetails[i].depositBalance, underlyingPrices[i]));
|
|
3053
3069
|
};
|
|
3054
3070
|
|
|
3055
3071
|
for (i = 0; i < marketCount; i++) {
|
|
3056
3072
|
_loop();
|
|
3057
3073
|
}
|
|
3058
3074
|
|
|
3059
|
-
_context2.next = 18;
|
|
3060
|
-
return Promise.all(depositValuationPromises);
|
|
3061
|
-
|
|
3062
|
-
case 18:
|
|
3063
|
-
depositValues = _context2.sent;
|
|
3064
3075
|
totalBorrowLimit = depositValues.reduce(function (p, v, index) {
|
|
3065
3076
|
if (userMarketDetails[index].isCollateral) return p.plus(v.multipliedBy(userMarketDetails[index].collateralRatio));
|
|
3066
3077
|
return p;
|
|
@@ -3069,10 +3080,10 @@ var SdkRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
3069
3080
|
promises.push(this._comptroller.getAccountLiquidity(userAddress));
|
|
3070
3081
|
promises.push(this._auriLens.callStatic.getRewardBalancesMetadata(this._comptroller.address, this._auriFairLaunch.address, userAddress, [AurPlyPid]));
|
|
3071
3082
|
promises.push(this._tokenLock.lockedAmounts(userAddress));
|
|
3072
|
-
_context2.next =
|
|
3083
|
+
_context2.next = 23;
|
|
3073
3084
|
return Promise.all(promises);
|
|
3074
3085
|
|
|
3075
|
-
case
|
|
3086
|
+
case 23:
|
|
3076
3087
|
values = _context2.sent;
|
|
3077
3088
|
accountLiquidity = values[0];
|
|
3078
3089
|
rewardBalancesMetadata = values[1];
|
|
@@ -3113,7 +3124,7 @@ var SdkRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
3113
3124
|
}
|
|
3114
3125
|
});
|
|
3115
3126
|
|
|
3116
|
-
case
|
|
3127
|
+
case 34:
|
|
3117
3128
|
case "end":
|
|
3118
3129
|
return _context2.stop();
|
|
3119
3130
|
}
|
|
@@ -3236,15 +3247,41 @@ var SdkRead = /*#__PURE__*/function (_BlockchainEntityRead) {
|
|
|
3236
3247
|
return stakeBalanceOf;
|
|
3237
3248
|
}();
|
|
3238
3249
|
|
|
3239
|
-
_proto.calcHypotheticalStats = function calcHypotheticalStats(
|
|
3240
|
-
var
|
|
3241
|
-
|
|
3250
|
+
_proto.calcHypotheticalStats = function calcHypotheticalStats(_ref) {
|
|
3251
|
+
var userMarketDetail = _ref.userMarketDetail,
|
|
3252
|
+
currentBorrowLimit = _ref.currentBorrowLimit,
|
|
3253
|
+
currentBorrowValuation = _ref.currentBorrowValuation,
|
|
3254
|
+
action = _ref.action,
|
|
3255
|
+
tokenAmount = _ref.tokenAmount;
|
|
3256
|
+
var newBorrowLimit = new BigNumber(currentBorrowLimit.amount),
|
|
3257
|
+
newBorrowValuation = new BigNumber(currentBorrowValuation.amount);
|
|
3258
|
+
|
|
3259
|
+
switch (action) {
|
|
3260
|
+
case exports.MarketAction.EnableCollateral:
|
|
3261
|
+
case exports.MarketAction.DisableCollateral:
|
|
3262
|
+
var deltaBorrowLimit = calcValuation(userMarketDetail.depositBalance, new BigNumber(userMarketDetail.underlyingPrice)).multipliedBy(userMarketDetail.collateralRatio).multipliedBy(BORROW_LIMIT_BUFFER);
|
|
3263
|
+
newBorrowLimit = action == exports.MarketAction.EnableCollateral ? newBorrowLimit.plus(deltaBorrowLimit) : newBorrowLimit.minus(deltaBorrowLimit);
|
|
3264
|
+
break;
|
|
3265
|
+
|
|
3266
|
+
case exports.MarketAction.Deposit:
|
|
3267
|
+
case exports.MarketAction.Withdraw:
|
|
3268
|
+
deltaBorrowLimit = calcValuation(tokenAmount, new BigNumber(userMarketDetail.underlyingPrice)).multipliedBy(userMarketDetail.collateralRatio).multipliedBy(BORROW_LIMIT_BUFFER);
|
|
3269
|
+
newBorrowLimit = action == exports.MarketAction.Deposit ? newBorrowLimit.plus(deltaBorrowLimit) : newBorrowLimit.minus(deltaBorrowLimit);
|
|
3270
|
+
break;
|
|
3271
|
+
|
|
3272
|
+
case exports.MarketAction.Borrow:
|
|
3273
|
+
case exports.MarketAction.Repay:
|
|
3274
|
+
var deltaBorrowValuation = calcValuation(tokenAmount, new BigNumber(userMarketDetail.underlyingPrice));
|
|
3275
|
+
newBorrowValuation = action == exports.MarketAction.Borrow ? newBorrowValuation.plus(deltaBorrowValuation) : newBorrowValuation.minus(deltaBorrowValuation);
|
|
3276
|
+
break;
|
|
3277
|
+
}
|
|
3278
|
+
|
|
3242
3279
|
return {
|
|
3243
3280
|
newBorrowLimit: {
|
|
3244
3281
|
amount: newBorrowLimit.toFixed(DECIMAL_PRECISION),
|
|
3245
3282
|
currency: "USD"
|
|
3246
3283
|
},
|
|
3247
|
-
newBorrowUtilization:
|
|
3284
|
+
newBorrowUtilization: newBorrowValuation.div(newBorrowLimit).toNumber()
|
|
3248
3285
|
};
|
|
3249
3286
|
};
|
|
3250
3287
|
|
|
@@ -3328,6 +3365,31 @@ var SdkReadWrite = /*#__PURE__*/function (_SdkRead) {
|
|
|
3328
3365
|
return unstake;
|
|
3329
3366
|
}();
|
|
3330
3367
|
|
|
3368
|
+
_proto2.faucetDrip = /*#__PURE__*/function () {
|
|
3369
|
+
var _faucetDrip = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee9() {
|
|
3370
|
+
var faucet;
|
|
3371
|
+
return runtime_1.wrap(function _callee9$(_context9) {
|
|
3372
|
+
while (1) {
|
|
3373
|
+
switch (_context9.prev = _context9.next) {
|
|
3374
|
+
case 0:
|
|
3375
|
+
faucet = new ethers.Contract(networkAddresses.misc.FAUCET, FaucetABI.abi, this._networkConnection.provider);
|
|
3376
|
+
return _context9.abrupt("return", faucet.connect(this._networkConnection.signer).drip());
|
|
3377
|
+
|
|
3378
|
+
case 2:
|
|
3379
|
+
case "end":
|
|
3380
|
+
return _context9.stop();
|
|
3381
|
+
}
|
|
3382
|
+
}
|
|
3383
|
+
}, _callee9, this);
|
|
3384
|
+
}));
|
|
3385
|
+
|
|
3386
|
+
function faucetDrip() {
|
|
3387
|
+
return _faucetDrip.apply(this, arguments);
|
|
3388
|
+
}
|
|
3389
|
+
|
|
3390
|
+
return faucetDrip;
|
|
3391
|
+
}();
|
|
3392
|
+
|
|
3331
3393
|
return SdkReadWrite;
|
|
3332
3394
|
}(SdkRead);
|
|
3333
3395
|
var SDK = /*#__PURE__*/function (_BlockchainEntity) {
|
|
@@ -3377,6 +3439,7 @@ exports.BlockchainEntityRead = BlockchainEntityRead;
|
|
|
3377
3439
|
exports.BlockchainEntityReadWrite = BlockchainEntityReadWrite;
|
|
3378
3440
|
exports.DECIMAL_PRECISION = DECIMAL_PRECISION;
|
|
3379
3441
|
exports.ETHAddress = ETHAddress;
|
|
3442
|
+
exports.INF = INF;
|
|
3380
3443
|
exports.MoneyMarket = MoneyMarket;
|
|
3381
3444
|
exports.MoneyMarketRead = MoneyMarketRead;
|
|
3382
3445
|
exports.MoneyMarketReadWrite = MoneyMarketReadWrite;
|
|
@@ -3390,6 +3453,7 @@ exports.SdkReadWrite = SdkReadWrite;
|
|
|
3390
3453
|
exports.Token = Token;
|
|
3391
3454
|
exports.TokenAmount = TokenAmount;
|
|
3392
3455
|
exports.calcLMRewardApr = calcLMRewardApr;
|
|
3456
|
+
exports.calcValuation = calcValuation;
|
|
3393
3457
|
exports.decimalFactor = decimalFactor;
|
|
3394
3458
|
exports.dummyAddress = dummyAddress;
|
|
3395
3459
|
exports.dummyMarketAddress = dummyMarketAddress;
|