@aurigami/sdk 0.6.5 → 0.6.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.
@@ -1,7 +1,7 @@
1
1
  import { BlockchainEntity, BlockchainEntityRead } from './BlockchainEntity';
2
2
  import { MoneyMarketDetails, NetworkConnection, Address } from './types';
3
3
  import { BigNumber as BN } from 'ethers';
4
- import { AuErc20, AuETH, AuriLens, Comptroller } from "@aurigami/contracts/typechain";
4
+ import { AuErc20, AuETH, AuriLens, Comptroller, EthRepayHelper } from "@aurigami/contracts/typechain";
5
5
  import { TransactionResponse } from '@ethersproject/abstract-provider';
6
6
  import BigNumber from "bignumber.js";
7
7
  import { Token } from './token';
@@ -31,6 +31,8 @@ export declare class MoneyMarketRead extends BlockchainEntityRead {
31
31
  getUserDepositBalance(userAddress: string): Promise<TokenAmount>;
32
32
  }
33
33
  export declare class MoneyMarketReadWrite extends MoneyMarketRead {
34
+ protected _EthRepayHelper: EthRepayHelper;
35
+ constructor(networkConnection: NetworkConnection, auToken: Address, underlyingAsset: Address);
34
36
  deposit(amount: TokenAmount): Promise<TransactionResponse>;
35
37
  borrow(amount: TokenAmount): Promise<TransactionResponse>;
36
38
  withdraw(amount: TokenAmount): Promise<TransactionResponse>;
@@ -43,5 +45,6 @@ export declare class MoneyMarket extends BlockchainEntity {
43
45
  protected underlying: Address;
44
46
  constructor(address: string, underlying: string);
45
47
  read(networkConnection: NetworkConnection): MoneyMarketRead;
48
+ readWrite(networkConnection: NetworkConnection): MoneyMarketReadWrite;
46
49
  }
47
50
  export {};
@@ -6,6 +6,7 @@ export declare const AURORA_CHAINID = 1313161554;
6
6
  export declare const DECIMAL_PRECISION = 10;
7
7
  export declare type NetworkAddresses = {
8
8
  auTokens: {
9
+ name: string;
9
10
  address: string;
10
11
  underlying: string;
11
12
  }[];
@@ -12,6 +12,7 @@ var AuErc20ABI = _interopDefault(require('@aurigami/contracts/artifacts/contract
12
12
  var AuETHABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuETH.sol/AuETH.json'));
13
13
  var ComptrollerABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/Comptroller.sol/Comptroller.json'));
14
14
  var AuriLensABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuriLens.sol/AuriLens.json'));
15
+ var EthRepayHelperABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/EthRepayHelper.sol/EthRepayHelper.json'));
15
16
  var axios = _interopDefault(require('axios'));
16
17
  var TokenLockABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/TokenLock.sol/TokenLock.json'));
17
18
  var AuriFairLaunchABI = _interopDefault(require('@aurigami/contracts/artifacts/contracts/AuriFairLaunch.sol/AuriFairLaunch.json'));
@@ -919,38 +920,46 @@ var AURORA_CHAINID = 1313161554;
919
920
  var DECIMAL_PRECISION = 10;
920
921
  var networkAddresses = {
921
922
  auTokens: [{
922
- address: /*#__PURE__*/'0x1c7EB2ADdC2df2F28E9631cce970D2E2DF22429A'.toLowerCase(),
923
- underlying: /*#__PURE__*/'0x3dcB6AdF46E4d854E94719b6ed9cfab6939cC1Cb'.toLowerCase()
923
+ name: "auUSDC",
924
+ address: /*#__PURE__*/'0x7A9984522bC81B348d66379ed36Be5BD6147820E'.toLowerCase(),
925
+ underlying: /*#__PURE__*/'0xe1Db3E2f129539b2399d8Cd9e808305c85f0c82f'.toLowerCase()
924
926
  }, {
925
- address: /*#__PURE__*/'0xdaE860b77c26498e7Bd8e16Fb80AD572FaB9688f'.toLowerCase(),
927
+ name: "auETH",
928
+ address: /*#__PURE__*/'0x0e2E6069231928429F36dCA288466bC738e602b3'.toLowerCase(),
926
929
  underlying: /*#__PURE__*/ETHAddress.toLowerCase()
927
930
  }, {
928
- address: /*#__PURE__*/'0x5329f32A9dDaC3d274Cc670B284561b0086D2244'.toLowerCase(),
929
- underlying: /*#__PURE__*/'0x6fF98E346Ba4C56fBc3Ebc3f92477ffCe09D96AB'.toLowerCase()
931
+ name: "auWBTC",
932
+ address: /*#__PURE__*/'0x981bD5832EAB9C8F607940E0e9faCBf8C09ee20a'.toLowerCase(),
933
+ underlying: /*#__PURE__*/'0xA69506eAbdC11BBdAf2259882A02a91B66E6d7E1'.toLowerCase()
930
934
  }, {
931
- address: /*#__PURE__*/'0x57E15Bf9Bc4c8a7AFd3C8DBE153ED29eC90B68Fa'.toLowerCase(),
932
- underlying: /*#__PURE__*/'0x05b8777B6c280DB4E61CF0F63d59b4Ac8ec70538'.toLowerCase()
935
+ name: "auUSDT",
936
+ address: /*#__PURE__*/'0xDACC02a4Ff16Ea3c1515AdbfdCeb7B1F448B79c8'.toLowerCase(),
937
+ underlying: /*#__PURE__*/'0x4459ED2dEFFe0569AE748aD5D7cFEFDeeF667E87'.toLowerCase()
933
938
  }, {
934
- address: /*#__PURE__*/'0xdCdA4c7eF408961200193d7180357AEC404C267A'.toLowerCase(),
935
- underlying: /*#__PURE__*/'0xd94951E6B276fD4327FFBD3253b6307d112403e2'.toLowerCase()
939
+ name: "auDAI",
940
+ address: /*#__PURE__*/'0xC337343d1ac9F77B1305261CCD17e3799F088D4B'.toLowerCase(),
941
+ underlying: /*#__PURE__*/'0x1c9998C7768517b83136d3b237a31bc69eDc9028'.toLowerCase()
936
942
  }, {
937
- address: /*#__PURE__*/'0xa8474c18f502551937367120a6D8453dA785f1DD'.toLowerCase(),
938
- underlying: /*#__PURE__*/'0x84B5C41DC786316c5aA319B5A22CA77472e1d31f'.toLowerCase()
943
+ name: "auPLY",
944
+ address: /*#__PURE__*/'0x5e063B255e2437D75180117905499139a93f16E6'.toLowerCase(),
945
+ underlying: /*#__PURE__*/'0x3cD388c98FE71fE1a37272279F4b50bF27037E23'.toLowerCase()
939
946
  }, {
940
- address: /*#__PURE__*/'0x2Db190F0Db94E78B87D805e022D2a07803652211'.toLowerCase(),
941
- underlying: /*#__PURE__*/'0xb2cBCe33a6fb7D2efFb1cF73A654a4c0c9255874'.toLowerCase()
947
+ name: "auWNEAR",
948
+ address: /*#__PURE__*/'0x910fb0AE51761ccCDBbD9ced613e6A4dc571594a'.toLowerCase(),
949
+ underlying: /*#__PURE__*/'0x01B2EDff9b095DC270beca46E2eFB41a3ecEE169'.toLowerCase()
942
950
  }],
943
951
  misc: {
944
- COMPTROLLER: /*#__PURE__*/"0x1626d7941DF19781657a921014597c449F86941e".toLowerCase(),
945
- oracle: /*#__PURE__*/"0xe0E2Bb669a75Ae2384371cB4c4c95ff6fC1581b0".toLowerCase(),
946
- AURIFAIRLAUNCH: /*#__PURE__*/"0x4e91CdfeA23f44D4269E66494fe532867a0fAe5E".toLowerCase(),
947
- AURILENS: /*#__PURE__*/'0x680e15080Df9ff61131499D21aa5Ca9Bd05E60e0'.toLowerCase(),
948
- TOKENLOCK: /*#__PURE__*/'0xc77E562C41ec3Ce860b5424758B77ad0aDb1bB93'.toLowerCase(),
949
- FAUCET: /*#__PURE__*/'0x8F791d611D71699B76C03857A51D7B7E5E66f01E'.toLowerCase()
952
+ COMPTROLLER: /*#__PURE__*/"0x79e62AAfc1675c9F737Ec4Bb949115bfC8D2E2E6".toLowerCase(),
953
+ oracle: /*#__PURE__*/"0xAc99efFDF7a8934e35Ad13880D25127c548A7e6d".toLowerCase(),
954
+ AURIFAIRLAUNCH: /*#__PURE__*/"0xD204fD43bFe4aAEB9aB993c116c1dECdDF1b9F1A".toLowerCase(),
955
+ AURILENS: /*#__PURE__*/'0x0Aa7Ce0f5D6259412602A230C3Ed83eDc857bDa1'.toLowerCase(),
956
+ TOKENLOCK: /*#__PURE__*/'0x1b5c4c6A77f784104662B293a0166B27aF71d2c0'.toLowerCase(),
957
+ FAUCET: /*#__PURE__*/"0xe8b53eE0443620fB8DcEaEB6DE98ED117971c329".toLowerCase(),
958
+ ETHREPAYHELPER: /*#__PURE__*/"0x0b28E2F1767623f2D5Cd59165e79f83E3D63b71F".toLowerCase()
950
959
  },
951
960
  tokens: {
952
- AURORA: /*#__PURE__*/"0xd3F181B767cbb4e399ABbf4c2d42AEF19E177D30".toLowerCase(),
953
- PLY: /*#__PURE__*/"0x84B5C41DC786316c5aA319B5A22CA77472e1d31f".toLowerCase(),
961
+ AURORA: /*#__PURE__*/dummyAddress.toLowerCase(),
962
+ PLY: /*#__PURE__*/"0x3cD388c98FE71fE1a37272279F4b50bF27037E23".toLowerCase(),
954
963
  AURPLY: /*#__PURE__*/dummyAddress.toLowerCase()
955
964
  }
956
965
  };
@@ -963,20 +972,19 @@ var INF = /*#__PURE__*/ethers.BigNumber.from(2).pow(256).sub(1);
963
972
 
964
973
  var decimalRecords = {
965
974
  '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee': 18,
966
- '0xa8474c18f502551937367120a6d8453da785f1dd': 8,
967
- '0x2db190f0db94e78b87d805e022d2a07803652211': 8,
968
- '0xdae860b77c26498e7bd8e16fb80ad572fab9688f': 8,
969
- '0x84b5c41dc786316c5aa319b5a22ca77472e1d31f': 18,
970
- '0xb2cbce33a6fb7d2effb1cf73a654a4c0c9255874': 24,
971
- '0x05b8777b6c280db4e61cf0f63d59b4ac8ec70538': 6,
972
- '0x6ff98e346ba4c56fbc3ebc3f92477ffce09d96ab': 8,
973
- '0x3dcb6adf46e4d854e94719b6ed9cfab6939cc1cb': 6,
974
- '0xd3f181b767cbb4e399abbf4c2d42aef19e177d30': 18,
975
- '0xdcda4c7ef408961200193d7180357aec404c267a': 8,
976
- '0x1c7eb2addc2df2f28e9631cce970d2e2df22429a': 8,
977
- '0x5329f32a9ddac3d274cc670b284561b0086d2244': 8,
978
- '0xd94951e6b276fd4327ffbd3253b6307d112403e2': 18,
979
- '0x57e15bf9bc4c8a7afd3c8dbe153ed29ec90b68fa': 8
975
+ '0xdacc02a4ff16ea3c1515adbfdceb7b1f448b79c8': 8,
976
+ '0x01b2edff9b095dc270beca46e2efb41a3ecee169': 24,
977
+ '0x4459ed2deffe0569ae748ad5d7cfefdeef667e87': 6,
978
+ '0x3cd388c98fe71fe1a37272279f4b50bf27037e23': 18,
979
+ '0x1c9998c7768517b83136d3b237a31bc69edc9028': 18,
980
+ '0x7a9984522bc81b348d66379ed36be5bd6147820e': 8,
981
+ '0x0e2e6069231928429f36dca288466bc738e602b3': 8,
982
+ '0x981bd5832eab9c8f607940e0e9facbf8c09ee20a': 8,
983
+ '0xa69506eabdc11bbdaf2259882a02a91b66e6d7e1': 8,
984
+ '0x910fb0ae51761cccdbbd9ced613e6a4dc571594a': 8,
985
+ '0xe1db3e2f129539b2399d8cd9e808305c85f0c82f': 6,
986
+ '0x5e063b255e2437d75180117905499139a93f16e6': 8,
987
+ '0xc337343d1ac9f77b1305261ccd17e3799f088d4b': 8
980
988
  };
981
989
 
982
990
  function formatObject(object) {
@@ -2267,7 +2275,7 @@ function _fetchPrice() {
2267
2275
  return _context7.abrupt("return", fetchPriceFromOracle(matchingAuToken.address, getDecimal(address), provider));
2268
2276
 
2269
2277
  case 7:
2270
- if (!isSameAddress(address, networkAddresses.misc.AUPLYLP)) {
2278
+ if (!isSameAddress(address, networkAddresses.tokens.AUPLYLP)) {
2271
2279
  _context7.next = 11;
2272
2280
  break;
2273
2281
  }
@@ -2638,24 +2646,8 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
2638
2646
  return Promise.all(promises);
2639
2647
 
2640
2648
  case 11:
2641
- _context9.t0 = calcLMRewardApr;
2642
- _context9.next = 14;
2643
- return calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardBorrowSpeed.toString()), plyPrice);
2644
-
2645
- case 14:
2646
- _context9.t1 = _context9.sent;
2647
- _context9.t2 = underlyingPrice.multipliedBy(totalBorrowed.formattedAmount());
2648
- _context9.t3 = ONE_YEAR;
2649
- borrowPlyApy = (0, _context9.t0)(_context9.t1, _context9.t2, _context9.t3);
2650
- _context9.t4 = calcLMRewardApr;
2651
- _context9.next = 21;
2652
- return calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardSupplySpeed.toString()), plyPrice);
2653
-
2654
- case 21:
2655
- _context9.t5 = _context9.sent;
2656
- _context9.t6 = underlyingPrice.multipliedBy(totalDeposited.formattedAmount());
2657
- _context9.t7 = ONE_YEAR;
2658
- depositPlyApy = (0, _context9.t4)(_context9.t5, _context9.t6, _context9.t7);
2649
+ borrowPlyApy = calcLMRewardApr(calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardBorrowSpeed.toString()), plyPrice), underlyingPrice.multipliedBy(totalBorrowed.formattedAmount()), ONE_YEAR);
2650
+ depositPlyApy = calcLMRewardApr(calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardSupplySpeed.toString()), plyPrice), underlyingPrice.multipliedBy(totalDeposited.formattedAmount()), ONE_YEAR);
2659
2651
  return _context9.abrupt("return", {
2660
2652
  auTokenAddress: this.auToken.address,
2661
2653
  totalTokenDeposited: totalDeposited,
@@ -2667,7 +2659,7 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
2667
2659
  collateralRatio: collateralRatio
2668
2660
  });
2669
2661
 
2670
- case 26:
2662
+ case 14:
2671
2663
  case "end":
2672
2664
  return _context9.stop();
2673
2665
  }
@@ -2745,8 +2737,12 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
2745
2737
  var MoneyMarketReadWrite = /*#__PURE__*/function (_MoneyMarketRead) {
2746
2738
  _inheritsLoose(MoneyMarketReadWrite, _MoneyMarketRead);
2747
2739
 
2748
- function MoneyMarketReadWrite() {
2749
- return _MoneyMarketRead.apply(this, arguments) || this;
2740
+ function MoneyMarketReadWrite(networkConnection, auToken, underlyingAsset) {
2741
+ var _this3;
2742
+
2743
+ _this3 = _MoneyMarketRead.call(this, networkConnection, auToken, underlyingAsset) || this;
2744
+ _this3._EthRepayHelper = new ethers.Contract(networkAddresses.misc.ETHREPAYHELPER, EthRepayHelperABI.abi, networkConnection.provider);
2745
+ return _this3;
2750
2746
  }
2751
2747
 
2752
2748
  var _proto2 = MoneyMarketReadWrite.prototype;
@@ -2840,61 +2836,31 @@ var MoneyMarketReadWrite = /*#__PURE__*/function (_MoneyMarketRead) {
2840
2836
 
2841
2837
  _proto2.repay = /*#__PURE__*/function () {
2842
2838
  var _repay = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee15(amount) {
2843
- var repayAmount;
2844
2839
  return runtime_1.wrap(function _callee15$(_context15) {
2845
2840
  while (1) {
2846
2841
  switch (_context15.prev = _context15.next) {
2847
2842
  case 0:
2848
- if (!new BigNumber(amount.rawAmount()).lt(0)) {
2849
- _context15.next = 16;
2850
- break;
2851
- }
2852
-
2853
2843
  if (!isSameAddress(amount.token.address, ETHAddress)) {
2854
- _context15.next = 13;
2844
+ _context15.next = 4;
2855
2845
  break;
2856
2846
  }
2857
2847
 
2858
- _context15.t0 = ethers.BigNumber;
2859
- _context15.t1 = this;
2860
- _context15.next = 6;
2861
- return this._networkConnection.signer.getAddress();
2862
-
2863
- case 6:
2864
- _context15.t2 = _context15.sent;
2865
- _context15.next = 9;
2866
- return _context15.t1.getUserBorrowBalance.call(_context15.t1, _context15.t2);
2867
-
2868
- case 9:
2869
- _context15.t3 = _context15.sent.rawAmount();
2870
- repayAmount = _context15.t0.from.call(_context15.t0, _context15.t3);
2871
- _context15.next = 14;
2872
- break;
2873
-
2874
- case 13:
2875
- repayAmount = INF;
2876
-
2877
- case 14:
2878
- _context15.next = 17;
2879
- break;
2880
-
2881
- case 16:
2882
- repayAmount = ethers.BigNumber.from(amount.rawAmount());
2848
+ return _context15.abrupt("return", this._EthRepayHelper.connect(this._networkConnection.signer).repayBorrow({
2849
+ value: amount.rawAmount()
2850
+ }));
2883
2851
 
2884
- case 17:
2885
- if (!isSameAddress(amount.token.address, ETHAddress)) {
2886
- _context15.next = 21;
2852
+ case 4:
2853
+ if (!new BigNumber(amount.rawAmount()).lt(0)) {
2854
+ _context15.next = 8;
2887
2855
  break;
2888
2856
  }
2889
2857
 
2890
- return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow({
2891
- value: repayAmount
2892
- }));
2858
+ return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(INF));
2893
2859
 
2894
- case 21:
2895
- return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(repayAmount));
2860
+ case 8:
2861
+ return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(amount.rawAmount()));
2896
2862
 
2897
- case 22:
2863
+ case 9:
2898
2864
  case "end":
2899
2865
  return _context15.stop();
2900
2866
  }
@@ -2961,12 +2927,12 @@ var MoneyMarket = /*#__PURE__*/function (_BlockchainEntity) {
2961
2927
  _inheritsLoose(MoneyMarket, _BlockchainEntity);
2962
2928
 
2963
2929
  function MoneyMarket(address, underlying) {
2964
- var _this3;
2930
+ var _this4;
2965
2931
 
2966
- _this3 = _BlockchainEntity.call(this) || this;
2967
- _this3.address = validateAndParseAddress(address);
2968
- _this3.underlying = validateAndParseAddress(underlying);
2969
- return _this3;
2932
+ _this4 = _BlockchainEntity.call(this) || this;
2933
+ _this4.address = validateAndParseAddress(address);
2934
+ _this4.underlying = validateAndParseAddress(underlying);
2935
+ return _this4;
2970
2936
  }
2971
2937
 
2972
2938
  var _proto3 = MoneyMarket.prototype;
@@ -2975,6 +2941,10 @@ var MoneyMarket = /*#__PURE__*/function (_BlockchainEntity) {
2975
2941
  return new MoneyMarketRead(networkConnection, this.address, this.underlying);
2976
2942
  };
2977
2943
 
2944
+ _proto3.readWrite = function readWrite(networkConnection) {
2945
+ return new MoneyMarketReadWrite(networkConnection, this.address, this.underlying);
2946
+ };
2947
+
2978
2948
  return MoneyMarket;
2979
2949
  }(BlockchainEntity);
2980
2950
 
@@ -3376,7 +3346,7 @@ var SdkReadWrite = /*#__PURE__*/function (_SdkRead) {
3376
3346
  while (1) {
3377
3347
  switch (_context7.prev = _context7.next) {
3378
3348
  case 0:
3379
- return _context7.abrupt("return", this._auriFairLaunch.connect(this._networkConnection.signer).deposit(AurPlyPid, amount.rawAmount(), false));
3349
+ return _context7.abrupt("return", this._auriFairLaunch.connect(this._networkConnection.signer).deposit(AurPlyPid, amount.rawAmount()));
3380
3350
 
3381
3351
  case 1:
3382
3352
  case "end":