@aurigami/sdk 1.7.2 → 1.7.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.
@@ -14,6 +14,7 @@ export declare type NetworkAddresses = {
14
14
  tokens: Record<string, string>;
15
15
  };
16
16
  export declare const networkAddresses: NetworkAddresses;
17
+ export declare const DEPOSIT_ONLY_TOKENS: string[];
17
18
  export declare const PRICE_WHITELISTED: Set<string>;
18
19
  export declare const REWARD_CLAIM_START = 1651759200;
19
20
  export declare const BORROW_LIMIT_BUFFER: BigNumber;
@@ -1,6 +1,6 @@
1
1
  import { AuriFairLaunch, AuriInternalLens, AuriLens, Comptroller, IERC20, PULP } from '@aurigami/contracts/typechain';
2
2
  import { Contract } from 'ethers';
3
- import { NetworkConnection } from '../types';
3
+ import { AuTokenWithUnderlying, NetworkConnection } from '../types';
4
4
  import { BlockchainEntityRead } from './BlockchainEntity';
5
5
  export declare class AuriEnv extends BlockchainEntityRead {
6
6
  comptroller: Comptroller;
@@ -10,5 +10,6 @@ export declare class AuriEnv extends BlockchainEntityRead {
10
10
  pulp: PULP;
11
11
  auriInternalLens: AuriInternalLens;
12
12
  getContract<CType extends Contract>(address: string, abi: any): CType;
13
+ getAuTokenContracts(): AuTokenWithUnderlying[];
13
14
  constructor(networkConnection: NetworkConnection);
14
15
  }
@@ -5,6 +5,7 @@ export declare class TokenAmount {
5
5
  private rawAmnt;
6
6
  constructor(token: Token, amount: string, isRaw?: boolean);
7
7
  formattedAmount(): string;
8
+ formattedAmountWithSymbol(): string;
8
9
  rawAmount(): string;
9
10
  static fromAddressAndAmount(tokenAddress: Address, amount: string, isRaw?: boolean): TokenAmount;
10
11
  }
@@ -9,6 +9,7 @@ export declare const getCurrentTimestamp: () => number;
9
9
  export declare function validateAndParseAddress(address: Address): Address;
10
10
  export declare function getDecimal(address: Address): number;
11
11
  export declare function getSymbol(address: Address): string;
12
+ export declare function getUnderlying(address: Address): Address;
12
13
  export declare function calcLMRewardApr(rewardsValue: BigNumber, totalStakeValue: BigNumber, frequencyPerYear: number): BigNumber;
13
14
  export declare function getBlockTimestamp(provider: Provider, blockNumber: number): Promise<number>;
14
15
  export declare function getBlocksTimestampViaRPC(provider: Provider, blocksNumber: number[]): Promise<number[]>;
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * as abis from './abis';
1
2
  export * from './consts';
2
3
  export * from './contracts';
3
4
  export * from './entities';
@@ -7,26 +7,47 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  var BigNumber = _interopDefault(require('bignumber.js'));
8
8
  var ethers = require('ethers');
9
9
  var utils = require('ethers/lib/utils');
10
- var MAINNET_ADDRESSES = _interopDefault(require('@aurigami/contracts/deployments/aurora_mainnet.json'));
11
- var aurora_testnet_json = _interopDefault(require('@aurigami/contracts/deployments/aurora_testnet.json'));
12
10
  var abis = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuErc20.sol/AuErc20.json'));
13
11
  var abis$1 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuETH.sol/AuETH.json'));
14
12
  var AuriAirdropABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuriAirdrop.sol/AuriAirdrop.json'));
15
13
  var abis$2 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuriFairLaunch.sol/AuriFairLaunch.json'));
16
14
  var abis$3 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuriLens.sol/AuriLens.json'));
17
15
  var AuriOracleABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuriOracle.sol/AuriOracle.json'));
18
- var AuTokenABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuToken.sol/AuToken.json'));
19
- var abis$4 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/Comptroller.sol/Comptroller.json'));
20
- var abis$5 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/EthRepayHelper.sol/EthRepayHelper.json'));
21
- var abis$6 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/interfaces/EIP20Interface.sol/EIP20Interface.json'));
22
- var abis$7 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/mock/AuriInternalLens.sol/AuriInternalLens.json'));
16
+ var abis$4 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuToken.sol/AuToken.json'));
17
+ var abis$5 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/Comptroller.sol/Comptroller.json'));
18
+ var abis$6 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/EthRepayHelper.sol/EthRepayHelper.json'));
19
+ var abis$7 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/interfaces/EIP20Interface.sol/EIP20Interface.json'));
20
+ var abis$8 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/mock/AuriInternalLens.sol/AuriInternalLens.json'));
23
21
  var IUniswapV2PairABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/mock/IUniswapV2Pair.sol/IUniswapV2Pair.json'));
24
- var abis$8 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/mock/Multicall2.sol/Multicall2.json'));
25
- var abis$9 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/PULP.sol/PULP.json'));
26
- var abis$a = _interopDefault(require('@aurigami/contracts/artifacts/contracts/ReferralDirectory.sol/ReferralDirectory.json'));
22
+ var abis$9 = _interopDefault(require('@aurigami/contracts/artifacts/contracts/mock/Multicall2.sol/Multicall2.json'));
23
+ var abis$a = _interopDefault(require('@aurigami/contracts/artifacts/contracts/PULP.sol/PULP.json'));
24
+ var abis$b = _interopDefault(require('@aurigami/contracts/artifacts/contracts/ReferralDirectory.sol/ReferralDirectory.json'));
25
+ var MAINNET_ADDRESSES = _interopDefault(require('@aurigami/contracts/deployments/aurora_mainnet.json'));
26
+ var aurora_testnet_json = _interopDefault(require('@aurigami/contracts/deployments/aurora_testnet.json'));
27
27
  var abstractSigner = require('@ethersproject/abstract-signer');
28
28
  var axios = _interopDefault(require('axios'));
29
29
 
30
+
31
+
32
+ var index = {
33
+ __proto__: null,
34
+ AuriOracleABI: AuriOracleABI,
35
+ AuTokenABI: abis$4,
36
+ IUniswapV2PairABI: IUniswapV2PairABI,
37
+ AuriAirdropABI: AuriAirdropABI,
38
+ AuriFairLaunchABI: abis$2,
39
+ AuriLensABI: abis$3,
40
+ ComptrollerABI: abis$5,
41
+ EIP20InterfaceABI: abis$7,
42
+ ReferralDirectoryABI: abis$b,
43
+ AuErc20ABI: abis,
44
+ AuETHABI: abis$1,
45
+ EthRepayHelperABI: abis$6,
46
+ Multicall2ABI: abis$9,
47
+ PulpABI: abis$a,
48
+ AuriInternalLensABI: abis$8
49
+ };
50
+
30
51
  var dummyAddress = '0xDEADbeEfEEeEEEeEEEeEEeeeeeEeEEeeeeEEEEeE';
31
52
  var ETHAddress = '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE';
32
53
  var AURORA_CHAINID = 1313161554;
@@ -102,7 +123,8 @@ var networkAddresses = {
102
123
  PLYWNEAR: /*#__PURE__*/MAINNET_ADDRESSES.ply_wnear_lp.toLowerCase(),
103
124
  USN: /*#__PURE__*/'0x5183e1b1091804bc2602586919e6880ac1cf2896'.toLowerCase()
104
125
  }
105
- }; // All token that we can calculate the price via oracle + coingecko
126
+ };
127
+ var DEPOSIT_ONLY_TOKENS = [/*#__PURE__*/MAINNET_ADDRESSES.auTokens.STNEAR.toLowerCase(), /*#__PURE__*/MAINNET_ADDRESSES.auTokens.AURORA.toLowerCase(), /*#__PURE__*/MAINNET_ADDRESSES.auTokens.TRI.toLowerCase(), /*#__PURE__*/MAINNET_ADDRESSES.auTokens.PLY.toLowerCase(), /*#__PURE__*/MAINNET_ADDRESSES.auTokens.USN.toLowerCase()]; // All token that we can calculate the price via oracle + coingecko
106
128
 
107
129
  var PRICE_WHITELISTED = /*#__PURE__*/new Set( /*#__PURE__*/[].concat( /*#__PURE__*/networkAddresses.auTokens.map(function (t) {
108
130
  return t.underlying;
@@ -312,13 +334,13 @@ var AuriEnv = /*#__PURE__*/function (_BlockchainEntityRead) {
312
334
  var _this;
313
335
 
314
336
  _this = _BlockchainEntityRead.call(this, networkConnection) || this;
315
- _this.comptroller = _this.getContract(networkAddresses.misc.COMPTROLLER, abis$4.abi);
337
+ _this.comptroller = _this.getContract(networkAddresses.misc.COMPTROLLER, abis$5.abi);
316
338
  _this.auriFairLaunch = _this.getContract(networkAddresses.misc.AURIFAIRLAUNCH, abis$2.abi);
317
339
  _this.auriLens = _this.getContract(networkAddresses.misc.AURILENS, abis$3.abi);
318
- _this.ply = _this.getContract(networkAddresses.tokens.PLY, abis$6.abi);
319
- _this.pulp = _this.getContract(networkAddresses.tokens.PULP, abis$9.abi); // this.faucet = this.getContract<Faucet>(networkAddresses.misc.FAUCET, abis.FaucetABI.abi);
340
+ _this.ply = _this.getContract(networkAddresses.tokens.PLY, abis$7.abi);
341
+ _this.pulp = _this.getContract(networkAddresses.tokens.PULP, abis$a.abi); // this.faucet = this.getContract<Faucet>(networkAddresses.misc.FAUCET, abis.FaucetABI.abi);
320
342
 
321
- _this.auriInternalLens = _this.getContract(networkAddresses.misc.AURI_INTERNAL_LENS, abis$7.abi);
343
+ _this.auriInternalLens = _this.getContract(networkAddresses.misc.AURI_INTERNAL_LENS, abis$8.abi);
322
344
  return _this;
323
345
  } // public faucet: Faucet;
324
346
 
@@ -329,6 +351,17 @@ var AuriEnv = /*#__PURE__*/function (_BlockchainEntityRead) {
329
351
  return new ethers.Contract(address, abi, this._networkConnection.provider);
330
352
  };
331
353
 
354
+ _proto.getAuTokenContracts = function getAuTokenContracts() {
355
+ var _this2 = this;
356
+
357
+ return networkAddresses.auTokens.map(function (auToken) {
358
+ var contract = _this2.getContract(auToken.address, abis$4.abi);
359
+
360
+ contract.underlying = auToken.underlying;
361
+ return contract;
362
+ });
363
+ };
364
+
332
365
  return AuriEnv;
333
366
  }(BlockchainEntityRead);
334
367
 
@@ -1094,7 +1127,9 @@ try {
1094
1127
 
1095
1128
  var symbolRecords = /*#__PURE__*/Object.fromEntries( /*#__PURE__*/networkAddresses.auTokens.map(function (e) {
1096
1129
  return [e.address.toLowerCase(), e.name];
1097
- }));
1130
+ }).concat( /*#__PURE__*/networkAddresses.auTokens.map(function (e) {
1131
+ return [e.underlying.toLowerCase(), e.name.slice(2)];
1132
+ })));
1098
1133
 
1099
1134
  var AURORA_API_BASE_URL = 'https://api.aurorascan.dev/api';
1100
1135
  function getQuery(_x, _x2, _x3) {
@@ -1207,6 +1242,18 @@ function getSymbol(address) {
1207
1242
  assert(symbolRecords[addressLowercase] != undefined, 'Symbol not found for ' + address);
1208
1243
  return symbolRecords[addressLowercase];
1209
1244
  }
1245
+ function getUnderlying(address) {
1246
+ var addressLowercase = address.toLowerCase();
1247
+ var matching = networkAddresses.auTokens.filter(function (e) {
1248
+ return e.address == addressLowercase;
1249
+ });
1250
+
1251
+ if (matching.length == 0) {
1252
+ throw new Error('Underlying not found for ' + address);
1253
+ }
1254
+
1255
+ return matching[0].underlying;
1256
+ }
1210
1257
  function calcLMRewardApr(rewardsValue, totalStakeValue, frequencyPerYear) {
1211
1258
  if (rewardsValue.isZero()) {
1212
1259
  return new BigNumber(0);
@@ -1477,6 +1524,10 @@ var TokenAmount = /*#__PURE__*/function () {
1477
1524
  return new BigNumber(this.rawAmnt).div(decimalFactor(this.token.decimals)).toString();
1478
1525
  };
1479
1526
 
1527
+ _proto.formattedAmountWithSymbol = function formattedAmountWithSymbol() {
1528
+ return this.formattedAmount() + " " + getSymbol(this.token.address);
1529
+ };
1530
+
1480
1531
  _proto.rawAmount = function rawAmount() {
1481
1532
  return this.rawAmnt;
1482
1533
  };
@@ -2193,7 +2244,7 @@ var TransferEventQuery = /*#__PURE__*/function (_BlockchainEntityRead) {
2193
2244
  var _this;
2194
2245
 
2195
2246
  _this = _BlockchainEntityRead.call(this, networkConnection) || this;
2196
- _this.auToken = new ethers.Contract(tokenAddr, AuTokenABI.abi, _this._networkConnection.provider);
2247
+ _this.auToken = new ethers.Contract(tokenAddr, abis$4.abi, _this._networkConnection.provider);
2197
2248
  return _this;
2198
2249
  }
2199
2250
  /**
@@ -2303,6 +2354,7 @@ var helpers = {
2303
2354
  validateAndParseAddress: validateAndParseAddress,
2304
2355
  getDecimal: getDecimal,
2305
2356
  getSymbol: getSymbol,
2357
+ getUnderlying: getUnderlying,
2306
2358
  calcLMRewardApr: calcLMRewardApr,
2307
2359
  getBlockTimestamp: getBlockTimestamp,
2308
2360
  getBlocksTimestampViaRPC: getBlocksTimestampViaRPC,
@@ -2965,7 +3017,7 @@ var MoneyMarketReadWrite = /*#__PURE__*/function (_MoneyMarketRead) {
2965
3017
  var _this3;
2966
3018
 
2967
3019
  _this3 = _MoneyMarketRead.call(this, networkConnection, auToken, underlyingAsset) || this;
2968
- _this3._EthRepayHelper = new ethers.Contract(networkAddresses.misc.ETHREPAYHELPER, abis$5.abi, networkConnection.provider);
3020
+ _this3._EthRepayHelper = new ethers.Contract(networkAddresses.misc.ETHREPAYHELPER, abis$6.abi, networkConnection.provider);
2969
3021
  return _this3;
2970
3022
  }
2971
3023
 
@@ -3179,7 +3231,7 @@ var MulticallRead = /*#__PURE__*/function (_BlockchainEntityRead) {
3179
3231
  var _this;
3180
3232
 
3181
3233
  _this = _BlockchainEntityRead.call(this, networkConnection) || this;
3182
- _this.multicall = new ethers.Contract(networkAddresses.misc.MULTICALL, abis$8.abi, networkConnection.provider);
3234
+ _this.multicall = new ethers.Contract(networkAddresses.misc.MULTICALL, abis$9.abi, networkConnection.provider);
3183
3235
  return _this;
3184
3236
  }
3185
3237
  /**
@@ -3751,7 +3803,7 @@ var StakingRead = /*#__PURE__*/function (_BlockchainEntityRead) {
3751
3803
  while (1) {
3752
3804
  switch (_context3.prev = _context3.next) {
3753
3805
  case 0:
3754
- lpContract = new ethers.Contract(networkAddresses.tokens.PLYWNEAR, abis$6.abi, this._networkConnection.provider);
3806
+ lpContract = new ethers.Contract(networkAddresses.tokens.PLYWNEAR, abis$7.abi, this._networkConnection.provider);
3755
3807
  _context3.next = 3;
3756
3808
  return lpContract.balanceOf(user);
3757
3809
 
@@ -4244,7 +4296,7 @@ var MiscRead = /*#__PURE__*/function (_BlockchainEntityRead) {
4244
4296
  dust = new BigNumber(0.1);
4245
4297
  oracle = this.env.getContract(networkAddresses.misc.oracle, AuriOracleABI.abi);
4246
4298
  tokens = tokenAddresses.map(function (addr) {
4247
- return _this3.env.getContract(addr, AuTokenABI.abi);
4299
+ return _this3.env.getContract(addr, abis$4.abi);
4248
4300
  });
4249
4301
  _context5.next = 6;
4250
4302
  return oracle.getUnderlyingPrices(tokenAddresses);
@@ -4342,7 +4394,7 @@ var ReferralRead = /*#__PURE__*/function (_BlockchainEntityRead) {
4342
4394
  var _this;
4343
4395
 
4344
4396
  _this = _BlockchainEntityRead.call(this, networkConnection) || this;
4345
- _this.referral = new ethers.Contract(networkAddresses.misc.REFERRAL, abis$a.abi, networkConnection.provider);
4397
+ _this.referral = new ethers.Contract(networkAddresses.misc.REFERRAL, abis$b.abi, networkConnection.provider);
4346
4398
  return _this;
4347
4399
  }
4348
4400
  /**
@@ -5042,6 +5094,7 @@ exports.BlockchainEntityRead = BlockchainEntityRead;
5042
5094
  exports.BlockchainEntityReadWrite = BlockchainEntityReadWrite;
5043
5095
  exports.DECIMAL_PRECISION = DECIMAL_PRECISION;
5044
5096
  exports.DEPOSIT_NEAR_REWARDS_PER_WEEK = DEPOSIT_NEAR_REWARDS_PER_WEEK;
5097
+ exports.DEPOSIT_ONLY_TOKENS = DEPOSIT_ONLY_TOKENS;
5045
5098
  exports.ETHAddress = ETHAddress;
5046
5099
  exports.HARDCODE_PRICE_TOKENS = HARDCODE_PRICE_TOKENS;
5047
5100
  exports.INF = INF;
@@ -5073,6 +5126,7 @@ exports.StakingReadWrite = StakingReadWrite;
5073
5126
  exports.Token = Token;
5074
5127
  exports.TokenAmount = TokenAmount;
5075
5128
  exports.TransferEventQuery = TransferEventQuery;
5129
+ exports.abis = index;
5076
5130
  exports.assert = assert;
5077
5131
  exports.calcLMRewardApr = calcLMRewardApr;
5078
5132
  exports.calcValuation = calcValuation;
@@ -5112,6 +5166,7 @@ exports.getDecimal = getDecimal;
5112
5166
  exports.getPaginatedApi = getPaginatedApi;
5113
5167
  exports.getQuery = getQuery;
5114
5168
  exports.getSymbol = getSymbol;
5169
+ exports.getUnderlying = getUnderlying;
5115
5170
  exports.isSameAddress = isSameAddress;
5116
5171
  exports.networkAddresses = networkAddresses;
5117
5172
  exports.queryGraphQL = queryGraphQL;