@meterio/sumer-js 0.2.149 → 0.2.151

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.
@@ -3,6 +3,7 @@
3
3
  * @desc These methods facilitate interactions with the Comptroller smart
4
4
  * contract.
5
5
  */
6
+ import BN from 'bignumber.js';
6
7
  import { CallOptions, TrxResponse } from './types';
7
8
  /**
8
9
  * Enters the user's address into Sumer Protocol markets.
@@ -77,4 +78,14 @@ export interface SignedRedeemPreview {
77
78
  error?: string;
78
79
  }
79
80
  export declare function redeemFaceValuePreview(chainId: string, redeemer: string, market: string, amount: string | number): Promise<SignedRedeemPreview>;
81
+ export declare function calcPlan(account: string, seizeTokenAddress: string, repayTokenAddress: string): Promise<{
82
+ account: string;
83
+ repayTokenPrice: BN;
84
+ repayTokenAddress: string;
85
+ repayTokens: string;
86
+ seizeTokenPrice: BN;
87
+ seizeTokenAddress: string;
88
+ seizeTokens: string;
89
+ profitUSD: number;
90
+ }>;
80
91
  export {};
@@ -31,13 +31,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
31
31
  return (mod && mod.__esModule) ? mod : { "default": mod };
32
32
  };
33
33
  Object.defineProperty(exports, "__esModule", { value: true });
34
- exports.redeemFaceValuePreview = exports.redeemFaceValueWithPermit = exports.redeemFaceValue = exports.exitMarket = exports.enterMarkets = void 0;
34
+ exports.calcPlan = exports.redeemFaceValuePreview = exports.redeemFaceValueWithPermit = exports.redeemFaceValue = exports.exitMarket = exports.enterMarkets = void 0;
35
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
35
36
  const eth = __importStar(require("./eth"));
36
37
  const helpers_1 = require("./helpers");
37
38
  const constants_1 = require("./constants");
38
39
  const abi_1 = require("./abi");
39
40
  const axios_1 = __importDefault(require("axios"));
40
41
  const util_1 = require("./util");
42
+ const typechain_1 = require("./typechain");
43
+ const CErc20_sol_1 = require("./typechain/factories/contracts/CErc20.sol");
44
+ const _1 = __importDefault(require("."));
45
+ const FeedPriceOracle_sol_1 = require("./typechain/factories/contracts/FeedPriceOracle.sol");
41
46
  const toSDRSymbol = (name) => {
42
47
  if (!name.startsWith('sdr')) {
43
48
  return 'sdr' + name;
@@ -197,4 +202,106 @@ async function redeemFaceValuePreview(chainId, redeemer, market, amount) {
197
202
  return response.data;
198
203
  }
199
204
  exports.redeemFaceValuePreview = redeemFaceValuePreview;
205
+ async function calcPlan(account, seizeTokenAddress, repayTokenAddress) {
206
+ const compoundLensAddress = (0, constants_1.getAddress)(this._network.name, 'CompoundLens');
207
+ const comptrollerAddress = (0, constants_1.getAddress)(this._network.name, 'Comptroller');
208
+ const lens = typechain_1.CompoundLens__factory.connect(compoundLensAddress, this._provider);
209
+ const comptroller = typechain_1.Comptroller__factory.connect(comptrollerAddress, this._provider);
210
+ const seizeToken = CErc20_sol_1.CErc20__factory.connect(seizeTokenAddress, this._provider);
211
+ const repayToken = CErc20_sol_1.CErc20__factory.connect(repayTokenAddress, this._provider);
212
+ // read price data
213
+ const oracleAddress = await comptroller.oracle();
214
+ const oracle = FeedPriceOracle_sol_1.FeedPriceOracle__factory.connect(oracleAddress, this._provider);
215
+ const prices = await oracle.getUnderlyingPrices([seizeTokenAddress, repayTokenAddress]);
216
+ const seizeTokenPrice = new bignumber_js_1.default(prices[0].toString()).div(1e18); // unit: 1
217
+ const repayTokenPrice = new bignumber_js_1.default(prices[1].toString()).div(1e18); // unit: 1
218
+ // read groupId
219
+ const seizeMarket = await comptroller.markets(seizeTokenAddress);
220
+ const repayMarket = await comptroller.markets(repayTokenAddress);
221
+ const seizeGroupId = Number(seizeMarket[1]);
222
+ const repayGroupId = Number(repayMarket[1]);
223
+ // read is ctoken
224
+ const repayIsCToken = await repayToken.isCToken();
225
+ // read exchange rate
226
+ const exchangeRate = new bignumber_js_1.default((await seizeToken.exchangeRateCurrent.staticCall()).toString()).div(1e18); // unit: 1
227
+ // read minCloseValue and closeFactor
228
+ const globalConfig = await comptroller.globalConfig();
229
+ const minCloseValue = new bignumber_js_1.default(globalConfig[1].toString());
230
+ const closeFactor = new bignumber_js_1.default(globalConfig[0].toString()).div(1e18); // unit: 1
231
+ console.log(`minCloseValue: ${minCloseValue}, closeFactor: ${closeFactor}`);
232
+ // protocol share
233
+ const protocolShare = new bignumber_js_1.default(await seizeToken.protocolSeizeShareMantissa()).div(1e18); // unit:1
234
+ const userShare = new bignumber_js_1.default(1).minus(protocolShare);
235
+ // read liquidation incentive
236
+ const incentive = await comptroller.liquidationIncentive();
237
+ let liquidationIncentive = new bignumber_js_1.default(incentive[0].toString()).div(1e4);
238
+ if (repayGroupId == seizeGroupId) {
239
+ if (repayIsCToken) {
240
+ liquidationIncentive = new bignumber_js_1.default(incentive[1].toString()).div(1e4);
241
+ }
242
+ else {
243
+ liquidationIncentive = new bignumber_js_1.default(incentive[2].toString()).div(1e4);
244
+ }
245
+ }
246
+ console.log(`liquidation incentive: ${liquidationIncentive}`);
247
+ const seizePair = _1.default.getTokenPairByAddress(this._network.name, seizeTokenAddress);
248
+ const repayPair = _1.default.getTokenPairByAddress(this._network.name, repayTokenAddress);
249
+ const seizeDecimals = seizePair.ctokenDecimal;
250
+ const repayDecimals = repayPair.ctokenDecimal;
251
+ const seizeSymbol = seizePair.ctokenSym;
252
+ const repaySymbol = repayPair.ctokenSym;
253
+ const seizeSnapshot = await seizeToken.getAccountSnapshot(account);
254
+ const repaySnapshot = await repayToken.getAccountSnapshot(account);
255
+ const seizePosSupply = new bignumber_js_1.default(seizeSnapshot[0].toString()).div(`1e${seizeDecimals}`);
256
+ const repayPosBorrow = new bignumber_js_1.default(repaySnapshot[1].toString()).div(`1e${repayDecimals}`);
257
+ // const price = this.priceListener.getPriceFor(pos.tokenAddress);
258
+ console.log(`seize - ${seizeSymbol} deposit: ${seizePosSupply}, decimals: ${seizeDecimals}, price: ${seizeTokenPrice}`);
259
+ console.log(`repay - ${repaySymbol} borrow: ${repayPosBorrow}, decimals: ${repayDecimals}, price: ${repayTokenPrice}`);
260
+ const maxSeizeTokens = new bignumber_js_1.default(seizePosSupply).times(exchangeRate);
261
+ const maxSeizeUSD = maxSeizeTokens.times(seizeTokenPrice);
262
+ const actualCloseFactor = closeFactor.isGreaterThan(1) ? 1 : closeFactor;
263
+ let maxRepayTokens = repayPosBorrow.times(actualCloseFactor);
264
+ let maxRepayUSD = maxRepayTokens.times(repayTokenPrice);
265
+ if (maxRepayUSD.lt(minCloseValue)) {
266
+ maxRepayTokens = repayPosBorrow;
267
+ maxRepayUSD = repayPosBorrow.times(repayTokenPrice);
268
+ }
269
+ let profitUSD = new bignumber_js_1.default(0);
270
+ let actualRepay = new bignumber_js_1.default(0);
271
+ let actualSeize = new bignumber_js_1.default(0);
272
+ console.log(`maxRepayUSD:${maxRepayUSD.toFixed()}, maxSeizeUSD:${maxSeizeUSD.toFixed()}`);
273
+ const actualMaxRepayUSD = maxRepayUSD.times(liquidationIncentive.plus(1));
274
+ if (actualMaxRepayUSD.gt(maxSeizeUSD)) {
275
+ console.log(`use maxSeizeUSD to calculate`);
276
+ actualSeize = maxSeizeTokens.div(liquidationIncentive.plus(1)).times(liquidationIncentive.times(userShare).plus(1));
277
+ actualRepay = maxSeizeUSD.div(liquidationIncentive.plus(1)).div(repayTokenPrice);
278
+ profitUSD = maxSeizeUSD.div(liquidationIncentive.plus(1)).times(liquidationIncentive).times(userShare);
279
+ console.log(`actual seize: ${actualSeize}`);
280
+ console.log(`actual repay: ${actualRepay}, liquidationIncentive: ${liquidationIncentive}, ${userShare}`);
281
+ console.log(`repayTokenPrice: ${repayTokenPrice} ${repayTokenAddress}`);
282
+ console.log(`actualRepay: ${actualRepay.toFixed()}, profit:${profitUSD.toFixed()} `);
283
+ }
284
+ else {
285
+ console.log(`use maxRepayUSD to calculate`);
286
+ actualRepay = maxRepayTokens;
287
+ actualSeize = maxRepayUSD.times(liquidationIncentive.times(userShare).plus(1)).div(seizeTokenPrice);
288
+ profitUSD = maxRepayUSD.times(liquidationIncentive).times(userShare);
289
+ console.log(`actual repay: ${actualRepay}`);
290
+ console.log(`seizeTokenPrice: ${seizeTokenPrice}, ${seizeTokenAddress}`);
291
+ console.log(`actual seize: ${actualSeize}, liquidationIncentive: ${liquidationIncentive}, ${userShare}`);
292
+ console.log(`actualSeize: ${actualRepay.toFixed()}, profit:${profitUSD.toFixed()} `);
293
+ }
294
+ const plan = {
295
+ account,
296
+ repayTokenPrice,
297
+ repayTokenAddress,
298
+ repayTokens: actualRepay.times(`1e${repayDecimals}`).toFixed(0),
299
+ seizeTokenPrice,
300
+ seizeTokenAddress,
301
+ seizeTokens: actualSeize.times(`1e${seizeDecimals}`).toFixed(0),
302
+ profitUSD: profitUSD.toNumber(),
303
+ };
304
+ return plan;
305
+ }
306
+ exports.calcPlan = calcPlan;
200
307
  //# sourceMappingURL=comptroller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"comptroller.js","sourceRoot":"","sources":["../../src/comptroller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"comptroller.js","sourceRoot":"","sources":["../../src/comptroller.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,gEAA6B;AAC7B,2CAA4B;AAC5B,uCAAiC;AACjC,2CAAyD;AACzD,+BAA2B;AAE3B,kDAAyB;AACzB,iCAAqC;AAErC,2CAAyE;AAEzE,2EAA4E;AAC5E,yCAAqB;AAErB,6FAA8F;AAE9F,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE;IACnC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,GAAG,IAAI,CAAA;IACrB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE;IACvC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACtB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACI,KAAK,UAAU,YAAY,CAAC,UAA6B,EAAE,EAAE,UAAuB,EAAE;IAC3F,MAAM,IAAA,eAAK,EAAC,IAAI,CAAC,CAAA;IACjB,MAAM,WAAW,GAAG,yBAAyB,CAAA;IAE7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,GAAG,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,CAAC,WAAW,GAAG,gDAAgD,CAAC,CAAA;IAC7E,CAAC;IAED,MAAM,SAAS,GAAG,EAAE,CAAA;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,OAAO,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAEpC,IAAI,CAAC,IAAA,2BAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,MAAM,KAAK,CAAC,WAAW,GAAG,mBAAmB,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAA;QAC/F,CAAC;QAED,MAAM,aAAa,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAEhE,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,MAAM,kBAAkB,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IACxE,MAAM,UAAU,GAAG,CAAC,SAAS,CAAC,CAAA;IAC9B,uFAAuF;IAEvF,MAAM,UAAU,mBACd,cAAc,EAAE,IAAI,CAAC,SAAS,EAC9B,GAAG,EAAE,SAAG,CAAC,WAAW,IACjB,OAAO,CACX,CAAA;IAED,oEAAoE;IACpE,OAAO,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,CAAA;AAC5E,CAAC;AArCD,oCAqCC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,UAAuB,EAAE;IACxE,MAAM,IAAA,eAAK,EAAC,IAAI,CAAC,CAAA;IACjB,MAAM,WAAW,GAAG,uBAAuB,CAAA;IAE3C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAChD,MAAM,KAAK,CAAC,WAAW,GAAG,6DAA6D,CAAC,CAAA;IAC1F,CAAC;IAED,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IAE5B,IAAI,CAAC,IAAA,2BAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;QACjD,MAAM,KAAK,CAAC,WAAW,GAAG,mBAAmB,GAAG,MAAM,GAAG,+BAA+B,CAAC,CAAA;IAC3F,CAAC;IAED,MAAM,aAAa,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAE5D,MAAM,kBAAkB,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IACxE,MAAM,UAAU,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAA;IAEhD,MAAM,UAAU,mBACd,cAAc,EAAE,IAAI,CAAC,SAAS,EAC9B,GAAG,EAAE,SAAG,CAAC,WAAW,IACjB,OAAO,CACX,CAAA;IAED,OAAO,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,CAAC,CAAA;AAC1E,CAAC;AA1BD,gCA0BC;AAEM,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,MAAuB,EACvB,SAAmB,EACnB,QAAgB,EAChB,SAAiB,EACjB,UAAuB,EAAE;IAEzB,MAAM,IAAA,eAAK,EAAC,IAAI,CAAC,CAAA;IACjB,MAAM,WAAW,GAAG,4BAA4B,CAAA;IAEhD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAChD,MAAM,KAAK,CAAC,WAAW,GAAG,6DAA6D,CAAC,CAAA;IAC1F,CAAC;IAED,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IAE5B,IAAI,CAAC,IAAA,2BAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;QACjD,MAAM,KAAK,CAAC,WAAW,GAAG,mBAAmB,GAAG,MAAM,GAAG,+BAA+B,CAAC,CAAA;IAC3F,CAAC;IAED,MAAM,aAAa,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAE5D,MAAM,wBAAwB,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA;IACpF,MAAM,UAAU,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;IAExF,MAAM,UAAU,mBACd,cAAc,EAAE,IAAI,CAAC,SAAS,EAC9B,GAAG,EAAE,SAAG,CAAC,iBAAiB,IACvB,OAAO,CACX,CAAA;IAED,OAAO,GAAG,CAAC,GAAG,CAAC,wBAAwB,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,CAAC,CAAA;AACrF,CAAC;AAjCD,0CAiCC;AAEM,KAAK,UAAU,yBAAyB,CAC7C,MAAc,EACd,MAAuB,EACvB,SAAmB,EACnB,iBAAyB,EACzB,kBAA0B,EAC1B,UAAuB,EAAE;IAEzB,MAAM,IAAA,eAAK,EAAC,IAAI,CAAC,CAAA;IACjB,MAAM,WAAW,GAAG,sCAAsC,CAAA;IAE1D,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAChD,MAAM,KAAK,CAAC,WAAW,GAAG,6DAA6D,CAAC,CAAA;IAC1F,CAAC;IAED,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IAEtC,IAAI,CAAC,IAAA,2BAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;QACrD,MAAM,KAAK,CAAC,WAAW,GAAG,mBAAmB,GAAG,UAAU,GAAG,+BAA+B,CAAC,CAAA;IAC/F,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC3D,MAAM,aAAa,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;IAEhE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,mBAAY,EAAC;QACjD,MAAM,EAAE,IAAI,CAAC,SAAS;QACtB,WAAW,EAAE,MAAM;QACnB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;QACzB,iBAAiB,EAAE,YAAY;QAC/B,OAAO,EAAE,aAAa;QACtB,KAAK,EAAE,MAAM;KACd,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG;QACjB,aAAa,CAAC,WAAW,EAAE;QAC3B,MAAM;QACN,SAAS;QACT,iBAAiB;QACjB,kBAAkB;QAClB,QAAQ;QACR,SAAS;KACV,CAAA;IAED,MAAM,UAAU,mBACd,cAAc,EAAE,IAAI,CAAC,SAAS,EAC9B,GAAG,EAAE,SAAG,CAAC,iBAAiB,IACvB,OAAO,CACX,CAAA;IACD,MAAM,wBAAwB,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA;IAEpF,OAAO,GAAG,CAAC,GAAG,CAAC,wBAAwB,EAAE,2BAA2B,EAAE,UAAU,EAAE,UAAU,CAAC,CAAA;AAC/F,CAAC;AAnDD,8DAmDC;AA4BM,KAAK,UAAU,sBAAsB,CAC1C,OAAe,EACf,QAAgB,EAChB,MAAc,EACd,MAAuB;IAEvB,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,qCAAqC,OAAO,IAAI,MAAM,oBAAoB,EAAE;QAC5G,QAAQ;QACR,MAAM;KACP,CAAC,CAAA;IACF,OAAO,QAAQ,CAAC,IAA2B,CAAA;AAC7C,CAAC;AAXD,wDAWC;AAEM,KAAK,UAAU,QAAQ,CAAC,OAAe,EAAE,iBAAyB,EAAE,iBAAyB;IAClG,MAAM,mBAAmB,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAC1E,MAAM,kBAAkB,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IAExE,MAAM,IAAI,GAAG,iCAAqB,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC/E,MAAM,WAAW,GAAG,gCAAoB,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IACpF,MAAM,UAAU,GAAG,4BAAe,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7E,MAAM,UAAU,GAAG,4BAAe,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAE7E,kBAAkB;IAClB,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAA;IAChD,MAAM,MAAM,GAAG,8CAAwB,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC9E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAA;IAEvF,MAAM,eAAe,GAAG,IAAI,sBAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,UAAU;IACzE,MAAM,eAAe,GAAG,IAAI,sBAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,UAAU;IAEzE,eAAe;IACf,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAChE,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAEhE,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;IAE3C,iBAAiB;IACjB,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAA;IAEjD,qBAAqB;IACrB,MAAM,YAAY,GAAG,IAAI,sBAAE,CAAC,CAAC,MAAM,UAAU,CAAC,mBAAmB,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,UAAU;IAEhH,qCAAqC;IACrC,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,CAAA;IACrD,MAAM,aAAa,GAAG,IAAI,sBAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IACxD,MAAM,WAAW,GAAG,IAAI,sBAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,UAAU;IAC3E,OAAO,CAAC,GAAG,CAAC,kBAAkB,aAAa,kBAAkB,WAAW,EAAE,CAAC,CAAA;IAE3E,iBAAiB;IACjB,MAAM,aAAa,GAAG,IAAI,sBAAE,CAAC,MAAM,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,SAAS;IAC/F,MAAM,SAAS,GAAG,IAAI,sBAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;IAEhD,6BAA6B;IAC7B,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,oBAAoB,EAAE,CAAA;IAC1D,IAAI,oBAAoB,GAAG,IAAI,sBAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACnE,IAAI,YAAY,IAAI,YAAY,EAAE,CAAC;QACjC,IAAI,aAAa,EAAE,CAAC;YAClB,oBAAoB,GAAG,IAAI,sBAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACjE,CAAC;aAAM,CAAC;YACN,oBAAoB,GAAG,IAAI,sBAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,0BAA0B,oBAAoB,EAAE,CAAC,CAAA;IAE7D,MAAM,SAAS,GAAG,UAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IACpF,MAAM,SAAS,GAAG,UAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAEpF,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAA;IAC7C,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAA;IAE7C,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAA;IACvC,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAA;IAEvC,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAClE,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAElE,MAAM,cAAc,GAAG,IAAI,sBAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,aAAa,EAAE,CAAC,CAAA;IACpF,MAAM,cAAc,GAAG,IAAI,sBAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,aAAa,EAAE,CAAC,CAAA;IAEpF,kEAAkE;IAClE,OAAO,CAAC,GAAG,CACT,WAAW,WAAW,aAAa,cAAc,eAAe,aAAa,YAAY,eAAe,EAAE,CAC3G,CAAA;IACD,OAAO,CAAC,GAAG,CAAC,WAAW,WAAW,YAAY,cAAc,eAAe,aAAa,YAAY,eAAe,EAAE,CAAC,CAAA;IAEtH,MAAM,cAAc,GAAG,IAAI,sBAAE,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IACjE,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAEzD,MAAM,iBAAiB,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAA;IAExE,IAAI,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAC5D,IAAI,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IACvD,IAAI,WAAW,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,cAAc,GAAG,cAAc,CAAA;QAC/B,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IACrD,CAAC;IAED,IAAI,SAAS,GAAG,IAAI,sBAAE,CAAC,CAAC,CAAC,CAAA;IACzB,IAAI,WAAW,GAAG,IAAI,sBAAE,CAAC,CAAC,CAAC,CAAA;IAC3B,IAAI,WAAW,GAAG,IAAI,sBAAE,CAAC,CAAC,CAAC,CAAA;IAE3B,OAAO,CAAC,GAAG,CAAC,eAAe,WAAW,CAAC,OAAO,EAAE,iBAAiB,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IACzF,MAAM,iBAAiB,GAAG,WAAW,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACzE,IAAI,iBAAiB,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;QAE3C,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACnH,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QAChF,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAEtG,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAA;QAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,2BAA2B,oBAAoB,KAAK,SAAS,EAAE,CAAC,CAAA;QAExG,OAAO,CAAC,GAAG,CAAC,oBAAoB,eAAe,KAAK,iBAAiB,EAAE,CAAC,CAAA;QACxE,OAAO,CAAC,GAAG,CAAC,gBAAgB,WAAW,CAAC,OAAO,EAAE,YAAY,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACtF,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;QAE3C,WAAW,GAAG,cAAc,CAAA;QAC5B,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QACnG,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAEpE,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,EAAE,CAAC,CAAA;QAC3C,OAAO,CAAC,GAAG,CAAC,oBAAoB,eAAe,KAAK,iBAAiB,EAAE,CAAC,CAAA;QACxE,OAAO,CAAC,GAAG,CAAC,iBAAiB,WAAW,2BAA2B,oBAAoB,KAAK,SAAS,EAAE,CAAC,CAAA;QAExG,OAAO,CAAC,GAAG,CAAC,gBAAgB,WAAW,CAAC,OAAO,EAAE,YAAY,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACtF,CAAC;IACD,MAAM,IAAI,GAAG;QACX,OAAO;QACP,eAAe;QACf,iBAAiB;QACjB,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/D,eAAe;QACf,iBAAiB;QACjB,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAE/D,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;KAChC,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAhID,4BAgIC"}
@@ -7,7 +7,7 @@ exports.bitlayer = {
7
7
  "Multicall2": "0x5B256fE9e993902eCe49D138a5b1162cBb529474",
8
8
  "Sumer": "0x553d713e0fB958932b6C40ABAf0b5A1fFae73Da2",
9
9
  "CompoundLens": "0x30E148a79B898EFa1Ab1285F5Eca71972a7e0acE",
10
- "FeedPriceOracle": "0x863656e346d8A42EC7caAAd606611b6fD8916f32",
10
+ "FeedPriceOracle": "0x9aa55bCf3E41D0d98FCe816C4eC6E791B0f6d154",
11
11
  "CompLogic": "0xe19FD48C972E2dB074C4B0B29Ff2f0d3E1aefe52",
12
12
  "RedemptionManager": "0xdD9C863197df28f47721107f94eb031b548B5e48",
13
13
  "Timelock": "0xB2fF02eEF85DC4eaE95Ab32AA887E0cC69DF8d8E",
@@ -38,6 +38,8 @@ export declare const monadtest: {
38
38
  sMON: string;
39
39
  sdrgMON: string;
40
40
  gMON: string;
41
+ sdrshMON: string;
42
+ shMON: string;
41
43
  };
42
44
  tokenPairs: ({
43
45
  ctokenSym: string;
@@ -40,7 +40,9 @@ exports.monadtest = {
40
40
  "sdrsMON": "0x7181fBab419D5e45C07EB11d88Cd2C3230649FB8",
41
41
  "sMON": "0xe1d2439b75fb9746E7Bc6cB777Ae10AA7f7ef9c5",
42
42
  "sdrgMON": "0x229E77fC7Cf9a3e5cE79eE98989853C99e0FD225",
43
- "gMON": "0xaEef2f6B429Cb59C9B2D7bB2141ADa993E8571c3"
43
+ "gMON": "0xaEef2f6B429Cb59C9B2D7bB2141ADa993E8571c3",
44
+ "sdrshMON": "0xC6E4cD806Cb6C1Fd032FA79488344D46afd70baD",
45
+ "shMON": "0x3a98250f98dd388c211206983453837c8365bdc1"
44
46
  },
45
47
  "tokenPairs": [
46
48
  {
@@ -164,6 +166,17 @@ exports.monadtest = {
164
166
  "underlyAddr": "0xaEef2f6B429Cb59C9B2D7bB2141ADa993E8571c3",
165
167
  "assetGroupId": 4
166
168
  },
169
+ {
170
+ "ctokenSym": "sdrshMON",
171
+ "ctokenAddr": "0xC6E4cD806Cb6C1Fd032FA79488344D46afd70baD",
172
+ "underlySym": "shMON",
173
+ "ctokenDecimal": 18,
174
+ "underlyDecimal": 18,
175
+ "ctokenIsEther": false,
176
+ "permitEnabled": false,
177
+ "underlyAddr": "0x3a98250f98dd388c211206983453837c8365bdc1",
178
+ "assetGroupId": 4
179
+ },
167
180
  {
168
181
  "ctokenSym": "sdrMON",
169
182
  "ctokenAddr": "0xd813695790F6224DbefF433414cc0882A1159f3f",
@@ -189,6 +202,7 @@ exports.monadtest = {
189
202
  "WETH",
190
203
  "sMON",
191
204
  "gMON",
205
+ "shMON",
192
206
  "MON"
193
207
  ],
194
208
  "baseRatePerYear": "0",
@@ -1 +1 @@
1
- {"version":3,"file":"monadtest.js","sourceRoot":"","sources":["../../../src/constants/monadtest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monadtest.js","sourceRoot":"","sources":["../../../src/constants/monadtest.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meterio/sumer-js",
3
- "version": "0.2.149",
3
+ "version": "0.2.151",
4
4
  "author": "Decentralized Finance Labs",
5
5
  "description": "A JavaScript SDK for Ethereum and the Sumer Protocol.",
6
6
  "license": "BSD-3-Clause",