@gearbox-protocol/sdk 1.16.10 → 1.16.11

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.
@@ -6,6 +6,18 @@ export declare class CreditRewards {
6
6
  static computeReward(creditManager: string, address: string, provider: providers.Provider, toBlock?: number): Promise<BigNumber>;
7
7
  static computeAllRewards(creditManager: string, provider: providers.Provider, toBlock?: number): Promise<Array<Reward>>;
8
8
  static parseEvents(events: Array<TypedEvent>, rewardPerBlock: RangedValue, toBlock: number): Array<Reward>;
9
+ static parseCMEvents(events: Array<TypedEvent>): {
10
+ borrowedRange: Record<string, RangedValue>;
11
+ totalBorrowedRange: RangedValue;
12
+ borrowed: Record<string, BigNumber>;
13
+ totalBorrowed: BigNumber;
14
+ };
15
+ static computeCMStats(creditManager: string, provider: providers.Provider, toBlock?: number): Promise<{
16
+ borrowedRange: Record<string, RangedValue>;
17
+ totalBorrowedRange: RangedValue;
18
+ borrowed: Record<string, BigNumber>;
19
+ totalBorrowed: BigNumber;
20
+ }>;
9
21
  static computeRewardInt(toBlock: number, balance: RangedValue, totalSupply: RangedValue, rewardPerBlock: RangedValue): BigNumber;
10
22
  protected static query(creditFacade: string, provider: providers.Provider, toBlock: number): Promise<Array<TypedEvent>>;
11
23
  protected static getRewardsRange(creditManager: string): RangedValue;
@@ -113,6 +113,13 @@ var CreditRewards = /** @class */ (function () {
113
113
  });
114
114
  };
115
115
  CreditRewards.parseEvents = function (events, rewardPerBlock, toBlock) {
116
+ var _a = CreditRewards.parseCMEvents(events), borrowedRange = _a.borrowedRange, totalBorrowedRange = _a.totalBorrowedRange, borrowed = _a.borrowed;
117
+ return Object.keys(borrowed).map(function (address) { return ({
118
+ address: address.toLowerCase(),
119
+ amount: CreditRewards.computeRewardInt(toBlock, borrowedRange[address], totalBorrowedRange, rewardPerBlock),
120
+ }); });
121
+ };
122
+ CreditRewards.parseCMEvents = function (events) {
116
123
  var borrowedRange = {};
117
124
  var totalBorrowedRange = new range_1.RangedValue();
118
125
  var borrowed = {};
@@ -173,10 +180,53 @@ var CreditRewards = /** @class */ (function () {
173
180
  }
174
181
  }
175
182
  });
176
- return Object.keys(borrowed).map(function (address) { return ({
177
- address: address.toLowerCase(),
178
- amount: CreditRewards.computeRewardInt(toBlock, borrowedRange[address], totalBorrowedRange, rewardPerBlock),
179
- }); });
183
+ return {
184
+ borrowedRange: borrowedRange,
185
+ totalBorrowedRange: totalBorrowedRange,
186
+ borrowed: borrowed,
187
+ totalBorrowed: totalBorrowed,
188
+ };
189
+ };
190
+ CreditRewards.computeCMStats = function (creditManager, provider, toBlock) {
191
+ return __awaiter(this, void 0, void 0, function () {
192
+ var toBlockQuery, _a, cm, cc, _b, _c, creditFacadesEvents, events, _i, creditFacadesEvents_2, cfe, query;
193
+ return __generator(this, function (_d) {
194
+ switch (_d.label) {
195
+ case 0:
196
+ _a = toBlock;
197
+ if (_a) return [3 /*break*/, 2];
198
+ return [4 /*yield*/, provider.getBlockNumber()];
199
+ case 1:
200
+ _a = (_d.sent());
201
+ _d.label = 2;
202
+ case 2:
203
+ toBlockQuery = _a;
204
+ cm = types_1.ICreditManagerV2__factory.connect(creditManager, provider);
205
+ _c = (_b = types_1.ICreditConfigurator__factory).connect;
206
+ return [4 /*yield*/, cm.creditConfigurator()];
207
+ case 3:
208
+ cc = _c.apply(_b, [_d.sent(), provider]);
209
+ return [4 /*yield*/, cc.queryFilter(cc.filters.CreditFacadeUpgraded())];
210
+ case 4:
211
+ creditFacadesEvents = _d.sent();
212
+ events = [];
213
+ _i = 0, creditFacadesEvents_2 = creditFacadesEvents;
214
+ _d.label = 5;
215
+ case 5:
216
+ if (!(_i < creditFacadesEvents_2.length)) return [3 /*break*/, 8];
217
+ cfe = creditFacadesEvents_2[_i];
218
+ return [4 /*yield*/, CreditRewards.query(cfe.args.newCreditFacade, provider, toBlockQuery)];
219
+ case 6:
220
+ query = _d.sent();
221
+ events.push.apply(events, query);
222
+ _d.label = 7;
223
+ case 7:
224
+ _i++;
225
+ return [3 /*break*/, 5];
226
+ case 8: return [2 /*return*/, CreditRewards.parseCMEvents(events)];
227
+ }
228
+ });
229
+ });
180
230
  };
181
231
  CreditRewards.computeRewardInt = function (toBlock, balance, totalSupply, rewardPerBlock) {
182
232
  var keys = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], balance.keys, true), totalSupply.keys, true), rewardPerBlock.keys, true), [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "1.16.10",
3
+ "version": "1.16.11",
4
4
  "description": "Gearbox SDK",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",