@aurigami/sdk 0.8.0 → 0.8.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.
@@ -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 {};
@@ -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'));
@@ -953,7 +954,8 @@ var networkAddresses = {
953
954
  AURIFAIRLAUNCH: /*#__PURE__*/"0x451d4e8964d79081EFFDAEde236354b20b678640".toLowerCase(),
954
955
  AURILENS: /*#__PURE__*/'0xe8b53eE0443620fB8DcEaEB6DE98ED117971c329'.toLowerCase(),
955
956
  TOKENLOCK: /*#__PURE__*/'0xE28339435478245CB1c57f84D246b67EECb3E204'.toLowerCase(),
956
- FAUCET: /*#__PURE__*/dummyAddress.toLowerCase()
957
+ FAUCET: /*#__PURE__*/dummyAddress.toLowerCase(),
958
+ ETHREPAYHELPER: /*#__PURE__*/"0xFb7c45A326DB421da1CE532420232D655107b110".toLowerCase()
957
959
  },
958
960
  tokens: {
959
961
  AURORA: /*#__PURE__*/"0x8bec47865ade3b172a928df8f990bc7f2a3b9f79".toLowerCase(),
@@ -2645,24 +2647,8 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
2645
2647
  return Promise.all(promises);
2646
2648
 
2647
2649
  case 11:
2648
- _context9.t0 = calcLMRewardApr;
2649
- _context9.next = 14;
2650
- return calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardBorrowSpeed.toString()), plyPrice);
2651
-
2652
- case 14:
2653
- _context9.t1 = _context9.sent;
2654
- _context9.t2 = underlyingPrice.multipliedBy(totalBorrowed.formattedAmount());
2655
- _context9.t3 = ONE_YEAR;
2656
- borrowPlyApy = (0, _context9.t0)(_context9.t1, _context9.t2, _context9.t3);
2657
- _context9.t4 = calcLMRewardApr;
2658
- _context9.next = 21;
2659
- return calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardSupplySpeed.toString()), plyPrice);
2660
-
2661
- case 21:
2662
- _context9.t5 = _context9.sent;
2663
- _context9.t6 = underlyingPrice.multipliedBy(totalDeposited.formattedAmount());
2664
- _context9.t7 = ONE_YEAR;
2665
- depositPlyApy = (0, _context9.t4)(_context9.t5, _context9.t6, _context9.t7);
2650
+ borrowPlyApy = calcLMRewardApr(calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardBorrowSpeed.toString()), plyPrice), underlyingPrice.multipliedBy(totalBorrowed.formattedAmount()), ONE_YEAR);
2651
+ depositPlyApy = calcLMRewardApr(calcValuation(new TokenAmount(PLYToken, rewardSpeeds.plyRewardSupplySpeed.toString()), plyPrice), underlyingPrice.multipliedBy(totalDeposited.formattedAmount()), ONE_YEAR);
2666
2652
  return _context9.abrupt("return", {
2667
2653
  auTokenAddress: this.auToken.address,
2668
2654
  totalTokenDeposited: totalDeposited,
@@ -2674,7 +2660,7 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
2674
2660
  collateralRatio: collateralRatio
2675
2661
  });
2676
2662
 
2677
- case 26:
2663
+ case 14:
2678
2664
  case "end":
2679
2665
  return _context9.stop();
2680
2666
  }
@@ -2752,8 +2738,12 @@ var MoneyMarketRead = /*#__PURE__*/function (_BlockchainEntityRead) {
2752
2738
  var MoneyMarketReadWrite = /*#__PURE__*/function (_MoneyMarketRead) {
2753
2739
  _inheritsLoose(MoneyMarketReadWrite, _MoneyMarketRead);
2754
2740
 
2755
- function MoneyMarketReadWrite() {
2756
- return _MoneyMarketRead.apply(this, arguments) || this;
2741
+ function MoneyMarketReadWrite(networkConnection, auToken, underlyingAsset) {
2742
+ var _this3;
2743
+
2744
+ _this3 = _MoneyMarketRead.call(this, networkConnection, auToken, underlyingAsset) || this;
2745
+ _this3._EthRepayHelper = new ethers.Contract(networkAddresses.misc.ETHREPAYHELPER, EthRepayHelperABI.abi, networkConnection.provider);
2746
+ return _this3;
2757
2747
  }
2758
2748
 
2759
2749
  var _proto2 = MoneyMarketReadWrite.prototype;
@@ -2847,61 +2837,31 @@ var MoneyMarketReadWrite = /*#__PURE__*/function (_MoneyMarketRead) {
2847
2837
 
2848
2838
  _proto2.repay = /*#__PURE__*/function () {
2849
2839
  var _repay = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee15(amount) {
2850
- var repayAmount;
2851
2840
  return runtime_1.wrap(function _callee15$(_context15) {
2852
2841
  while (1) {
2853
2842
  switch (_context15.prev = _context15.next) {
2854
2843
  case 0:
2855
- if (!new BigNumber(amount.rawAmount()).lt(0)) {
2856
- _context15.next = 16;
2857
- break;
2858
- }
2859
-
2860
2844
  if (!isSameAddress(amount.token.address, ETHAddress)) {
2861
- _context15.next = 13;
2845
+ _context15.next = 4;
2862
2846
  break;
2863
2847
  }
2864
2848
 
2865
- _context15.t0 = ethers.BigNumber;
2866
- _context15.t1 = this;
2867
- _context15.next = 6;
2868
- return this._networkConnection.signer.getAddress();
2869
-
2870
- case 6:
2871
- _context15.t2 = _context15.sent;
2872
- _context15.next = 9;
2873
- return _context15.t1.getUserBorrowBalance.call(_context15.t1, _context15.t2);
2874
-
2875
- case 9:
2876
- _context15.t3 = _context15.sent.rawAmount();
2877
- repayAmount = _context15.t0.from.call(_context15.t0, _context15.t3);
2878
- _context15.next = 14;
2879
- break;
2880
-
2881
- case 13:
2882
- repayAmount = INF;
2883
-
2884
- case 14:
2885
- _context15.next = 17;
2886
- break;
2887
-
2888
- case 16:
2889
- repayAmount = ethers.BigNumber.from(amount.rawAmount());
2849
+ return _context15.abrupt("return", this._EthRepayHelper.connect(this._networkConnection.signer).repayBorrow({
2850
+ value: amount.rawAmount()
2851
+ }));
2890
2852
 
2891
- case 17:
2892
- if (!isSameAddress(amount.token.address, ETHAddress)) {
2893
- _context15.next = 21;
2853
+ case 4:
2854
+ if (!new BigNumber(amount.rawAmount()).lt(0)) {
2855
+ _context15.next = 8;
2894
2856
  break;
2895
2857
  }
2896
2858
 
2897
- return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow({
2898
- value: repayAmount
2899
- }));
2859
+ return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(INF));
2900
2860
 
2901
- case 21:
2902
- return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(repayAmount));
2861
+ case 8:
2862
+ return _context15.abrupt("return", this.auToken.connect(this._networkConnection.signer).repayBorrow(amount.rawAmount()));
2903
2863
 
2904
- case 22:
2864
+ case 9:
2905
2865
  case "end":
2906
2866
  return _context15.stop();
2907
2867
  }
@@ -2968,12 +2928,12 @@ var MoneyMarket = /*#__PURE__*/function (_BlockchainEntity) {
2968
2928
  _inheritsLoose(MoneyMarket, _BlockchainEntity);
2969
2929
 
2970
2930
  function MoneyMarket(address, underlying) {
2971
- var _this3;
2931
+ var _this4;
2972
2932
 
2973
- _this3 = _BlockchainEntity.call(this) || this;
2974
- _this3.address = validateAndParseAddress(address);
2975
- _this3.underlying = validateAndParseAddress(underlying);
2976
- return _this3;
2933
+ _this4 = _BlockchainEntity.call(this) || this;
2934
+ _this4.address = validateAndParseAddress(address);
2935
+ _this4.underlying = validateAndParseAddress(underlying);
2936
+ return _this4;
2977
2937
  }
2978
2938
 
2979
2939
  var _proto3 = MoneyMarket.prototype;
@@ -2982,6 +2942,10 @@ var MoneyMarket = /*#__PURE__*/function (_BlockchainEntity) {
2982
2942
  return new MoneyMarketRead(networkConnection, this.address, this.underlying);
2983
2943
  };
2984
2944
 
2945
+ _proto3.readWrite = function readWrite(networkConnection) {
2946
+ return new MoneyMarketReadWrite(networkConnection, this.address, this.underlying);
2947
+ };
2948
+
2985
2949
  return MoneyMarket;
2986
2950
  }(BlockchainEntity);
2987
2951