@curvefi/api 2.29.0 → 2.30.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.
@@ -221,6 +221,7 @@ function getFactoryPoolsDataFromApi(isCrypto) {
221
221
  swap_abi: factory_crypto_pool_2_json_1.default,
222
222
  gauge_abi: _this.chainId === 1 ? gauge_factory_json_1.default : gauge_child_json_1.default,
223
223
  deposit_abi: basePoolZap.ABI,
224
+ in_api: true,
224
225
  };
225
226
  }
226
227
  else {
@@ -243,6 +244,7 @@ function getFactoryPoolsDataFromApi(isCrypto) {
243
244
  wrapped_decimals: coinDecimals,
244
245
  swap_abi: factory_crypto_pool_2_json_1.default,
245
246
  gauge_abi: _this.chainId === 1 ? gauge_factory_json_1.default : gauge_child_json_1.default,
247
+ in_api: true,
246
248
  };
247
249
  }
248
250
  }
@@ -272,6 +274,7 @@ function getFactoryPoolsDataFromApi(isCrypto) {
272
274
  token_address: pool.address,
273
275
  gauge_address: pool.gaugeAddress ? pool.gaugeAddress : ethers_1.ethers.constants.AddressZero,
274
276
  deposit_address: basePoolZap.address,
277
+ implementation_address: pool.implementationAddress,
275
278
  is_meta: true,
276
279
  is_factory: true,
277
280
  base_pool: basePoolId,
@@ -284,6 +287,7 @@ function getFactoryPoolsDataFromApi(isCrypto) {
284
287
  swap_abi: implementationABIDict[pool.implementationAddress],
285
288
  gauge_abi: _this.chainId === 1 ? gauge_factory_json_1.default : gauge_child_json_1.default,
286
289
  deposit_abi: basePoolZap.ABI,
290
+ in_api: true,
287
291
  };
288
292
  }
289
293
  else {
@@ -296,6 +300,7 @@ function getFactoryPoolsDataFromApi(isCrypto) {
296
300
  swap_address: pool.address,
297
301
  token_address: pool.address,
298
302
  gauge_address: pool.gaugeAddress ? pool.gaugeAddress : ethers_1.ethers.constants.AddressZero,
303
+ implementation_address: pool.implementationAddress,
299
304
  is_plain: true,
300
305
  is_factory: true,
301
306
  underlying_coins: coinNames,
@@ -306,6 +311,7 @@ function getFactoryPoolsDataFromApi(isCrypto) {
306
311
  wrapped_decimals: coinDecimals,
307
312
  swap_abi: implementationABIDict[pool.implementationAddress],
308
313
  gauge_abi: _this.chainId === 1 ? gauge_factory_json_1.default : gauge_child_json_1.default,
314
+ in_api: true,
309
315
  };
310
316
  }
311
317
  });
@@ -1,2 +1,2 @@
1
1
  import { IDict, IPoolData, ICurve } from "../interfaces";
2
- export declare function getCryptoFactoryPoolData(this: ICurve, swapAddress?: string): Promise<IDict<IPoolData>>;
2
+ export declare function getCryptoFactoryPoolData(this: ICurve, fromIdx?: number, swapAddress?: string): Promise<IDict<IPoolData>>;
@@ -61,7 +61,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
61
61
  Object.defineProperty(exports, "__esModule", { value: true });
62
62
  exports.getCryptoFactoryPoolData = void 0;
63
63
  var ethers_1 = require("ethers");
64
- var ethcall_1 = require("ethcall");
65
64
  var ERC20_json_1 = __importDefault(require("../constants/abis/ERC20.json"));
66
65
  var factory_crypto_pool_2_json_1 = __importDefault(require("../constants/abis/factory-crypto/factory-crypto-pool-2.json"));
67
66
  var gauge_factory_json_1 = __importDefault(require("../constants/abis/gauge_factory.json"));
@@ -99,7 +98,8 @@ function getRecentlyCreatedCryptoPoolId(swapAddress) {
99
98
  });
100
99
  });
101
100
  }
102
- function getCryptoFactoryIdsAndSwapAddresses() {
101
+ function getCryptoFactoryIdsAndSwapAddresses(fromIdx) {
102
+ if (fromIdx === void 0) { fromIdx = 0; }
103
103
  return __awaiter(this, void 0, void 0, function () {
104
104
  var factoryContract, factoryMulticallContract, poolCount, _a, _b, _c, calls, i, factories, swapAddresses;
105
105
  return __generator(this, function (_e) {
@@ -113,12 +113,14 @@ function getCryptoFactoryIdsAndSwapAddresses() {
113
113
  case 1:
114
114
  poolCount = _a.apply(void 0, [_c.apply(_b, [_e.sent(), 0])]);
115
115
  calls = [];
116
- for (i = 0; i < poolCount; i++) {
116
+ for (i = fromIdx; i < poolCount; i++) {
117
117
  calls.push(factoryMulticallContract.pool_list(i));
118
118
  }
119
+ if (calls.length === 0)
120
+ return [2 /*return*/, [[], []]];
119
121
  return [4 /*yield*/, this.multicallProvider.all(calls)];
120
122
  case 2:
121
- factories = (_e.sent()).map(function (addr, i) { return ({ id: "factory-crypto-".concat(i), address: addr.toLowerCase() }); });
123
+ factories = (_e.sent()).map(function (addr, i) { return ({ id: "factory-crypto-".concat(fromIdx + i), address: addr.toLowerCase() }); });
122
124
  swapAddresses = Object.values(this.constants.POOLS_DATA).map(function (pool) { return pool.swap_address.toLowerCase(); });
123
125
  factories = factories.filter(function (f) { return !swapAddresses.includes(f.address); });
124
126
  return [2 /*return*/, [factories.map(function (f) { return f.id; }), factories.map(function (f) { return f.address; })]];
@@ -126,114 +128,51 @@ function getCryptoFactoryIdsAndSwapAddresses() {
126
128
  });
127
129
  });
128
130
  }
129
- function setCryptoFactorySwapContracts(factorySwapAddresses) {
131
+ function _handleCoinAddresses(coinAddresses) {
130
132
  var _this = this;
131
- factorySwapAddresses.forEach(function (addr) {
132
- _this.contracts[addr] = {
133
- contract: new ethers_1.Contract(addr, factory_crypto_pool_2_json_1.default, _this.signer || _this.provider),
134
- multicallContract: new ethcall_1.Contract(addr, factory_crypto_pool_2_json_1.default),
135
- };
136
- });
133
+ return coinAddresses.map(function (addresses) { return addresses.map(function (addr) { return _this.chainId === 137 && addr === "0x0000000000000000000000000000000000001010" ? _this.constants.NATIVE_TOKEN.wrappedAddress : addr.toLowerCase(); }); });
137
134
  }
138
- function getCryptoFactoryTokenAddresses(factorySwapAddresses) {
135
+ function getPoolsData(factorySwapAddresses) {
139
136
  return __awaiter(this, void 0, void 0, function () {
140
- var factoryMulticallContract, calls, _i, factorySwapAddresses_1, addr;
137
+ var factoryMulticallContract, calls, _i, factorySwapAddresses_1, addr, res, tokenAddresses, gaugeAddresses, coinAddresses;
141
138
  return __generator(this, function (_a) {
142
139
  switch (_a.label) {
143
- case 0: return [4 /*yield*/, this.contracts[this.constants.ALIASES.crypto_factory].multicallContract];
144
- case 1:
145
- factoryMulticallContract = _a.sent();
140
+ case 0:
141
+ factoryMulticallContract = this.contracts[this.constants.ALIASES.crypto_factory].multicallContract;
146
142
  calls = [];
147
143
  for (_i = 0, factorySwapAddresses_1 = factorySwapAddresses; _i < factorySwapAddresses_1.length; _i++) {
148
144
  addr = factorySwapAddresses_1[_i];
149
145
  calls.push(factoryMulticallContract.get_token(addr));
146
+ calls.push(factoryMulticallContract.get_gauge(addr));
147
+ calls.push(factoryMulticallContract.get_coins(addr));
150
148
  }
151
149
  return [4 /*yield*/, this.multicallProvider.all(calls)];
152
- case 2: return [2 /*return*/, (_a.sent()).map(function (addr) { return addr.toLowerCase(); })];
150
+ case 1:
151
+ res = _a.sent();
152
+ tokenAddresses = res.filter(function (a, i) { return i % 3 == 0; }).map(function (a) { return a.toLowerCase(); });
153
+ gaugeAddresses = res.filter(function (a, i) { return i % 3 == 1; }).map(function (a) { return a.toLowerCase(); });
154
+ coinAddresses = _handleCoinAddresses.call(this, res.filter(function (a, i) { return i % 3 == 2; }));
155
+ return [2 /*return*/, [tokenAddresses, gaugeAddresses, coinAddresses]];
153
156
  }
154
157
  });
155
158
  });
156
159
  }
157
- function setCryptoFactoryTokenContracts(factoryTokenAddresses) {
160
+ function setCryptoFactorySwapContracts(factorySwapAddresses) {
158
161
  var _this = this;
159
- factoryTokenAddresses.forEach(function (addr) {
160
- _this.contracts[addr] = {
161
- contract: new ethers_1.Contract(addr, ERC20_json_1.default, _this.signer || _this.provider),
162
- multicallContract: new ethcall_1.Contract(addr, ERC20_json_1.default),
163
- };
162
+ factorySwapAddresses.forEach(function (addr) {
163
+ _this.setContract(addr, factory_crypto_pool_2_json_1.default);
164
164
  });
165
165
  }
166
- function getCryptoFactoryGaugeAddresses(factorySwapAddresses) {
167
- return __awaiter(this, void 0, void 0, function () {
168
- var factoryMulticallContract, calls, _i, factorySwapAddresses_2, addr;
169
- return __generator(this, function (_a) {
170
- switch (_a.label) {
171
- case 0: return [4 /*yield*/, this.contracts[this.constants.ALIASES.crypto_factory].multicallContract];
172
- case 1:
173
- factoryMulticallContract = _a.sent();
174
- calls = [];
175
- for (_i = 0, factorySwapAddresses_2 = factorySwapAddresses; _i < factorySwapAddresses_2.length; _i++) {
176
- addr = factorySwapAddresses_2[_i];
177
- calls.push(factoryMulticallContract.get_gauge(addr));
178
- }
179
- return [4 /*yield*/, this.multicallProvider.all(calls)];
180
- case 2: return [2 /*return*/, (_a.sent()).map(function (addr) { return addr.toLowerCase(); })];
181
- }
182
- });
166
+ function setCryptoFactoryTokenContracts(factoryTokenAddresses) {
167
+ var _this = this;
168
+ factoryTokenAddresses.forEach(function (addr) {
169
+ _this.setContract(addr, ERC20_json_1.default);
183
170
  });
184
171
  }
185
172
  function setCryptoFactoryGaugeContracts(factoryGaugeAddresses) {
186
173
  var _this = this;
187
174
  factoryGaugeAddresses.filter(function (addr) { return addr !== ethers_1.ethers.constants.AddressZero; }).forEach(function (addr, i) {
188
- _this.contracts[addr] = {
189
- contract: new ethers_1.Contract(addr, _this.chainId === 1 ? gauge_factory_json_1.default : gauge_child_json_1.default, _this.signer || _this.provider),
190
- multicallContract: new ethcall_1.Contract(addr, _this.chainId === 1 ? gauge_factory_json_1.default : gauge_child_json_1.default),
191
- };
192
- });
193
- }
194
- function getCryptoFactorySymbolsAndNames(factoryTokenAddresses) {
195
- return __awaiter(this, void 0, void 0, function () {
196
- var calls, _i, factoryTokenAddresses_1, addr, res, symbols, names, i;
197
- return __generator(this, function (_a) {
198
- switch (_a.label) {
199
- case 0:
200
- calls = [];
201
- for (_i = 0, factoryTokenAddresses_1 = factoryTokenAddresses; _i < factoryTokenAddresses_1.length; _i++) {
202
- addr = factoryTokenAddresses_1[_i];
203
- calls.push(this.contracts[addr].multicallContract.symbol(), this.contracts[addr].multicallContract.name());
204
- }
205
- return [4 /*yield*/, this.multicallProvider.all(calls)];
206
- case 1:
207
- res = _a.sent();
208
- symbols = [];
209
- names = [];
210
- for (i = 0; i < factoryTokenAddresses.length; i++) {
211
- symbols.push(res[2 * i]);
212
- names.push(res[(2 * i) + 1]);
213
- }
214
- return [2 /*return*/, [symbols, names]];
215
- }
216
- });
217
- });
218
- }
219
- function getCryptoFactoryCoinAddresses(factorySwapAddresses) {
220
- return __awaiter(this, void 0, void 0, function () {
221
- var factoryMulticallContract, calls, _i, factorySwapAddresses_3, addr;
222
- var _this = this;
223
- return __generator(this, function (_a) {
224
- switch (_a.label) {
225
- case 0: return [4 /*yield*/, this.contracts[this.constants.ALIASES.crypto_factory].multicallContract];
226
- case 1:
227
- factoryMulticallContract = _a.sent();
228
- calls = [];
229
- for (_i = 0, factorySwapAddresses_3 = factorySwapAddresses; _i < factorySwapAddresses_3.length; _i++) {
230
- addr = factorySwapAddresses_3[_i];
231
- calls.push(factoryMulticallContract.get_coins(addr));
232
- }
233
- return [4 /*yield*/, this.multicallProvider.all(calls)];
234
- case 2: return [2 /*return*/, (_a.sent()).map(function (addresses) { return addresses.map(function (addr) { return _this.chainId === 137 && addr === "0x0000000000000000000000000000000000001010" ? _this.constants.NATIVE_TOKEN.wrappedAddress : addr.toLowerCase(); }); })];
235
- }
236
- });
175
+ _this.setContract(addr, _this.chainId === 1 ? gauge_factory_json_1.default : gauge_child_json_1.default);
237
176
  });
238
177
  }
239
178
  function setCryptoFactoryCoinsContracts(coinAddresses) {
@@ -242,19 +181,12 @@ function setCryptoFactoryCoinsContracts(coinAddresses) {
242
181
  var addr = flattenedCoinAddresses_1[_i];
243
182
  if (addr in this.contracts)
244
183
  continue;
245
- this.contracts[addr] = {
246
- contract: new ethers_1.Contract(addr, ERC20_json_1.default, this.signer || this.provider),
247
- multicallContract: new ethcall_1.Contract(addr, ERC20_json_1.default),
248
- };
184
+ this.setContract(addr, ERC20_json_1.default);
249
185
  }
250
186
  }
251
187
  function getCryptoFactoryUnderlyingCoinAddresses(coinAddresses) {
252
- return __awaiter(this, void 0, void 0, function () {
253
- var _this = this;
254
- return __generator(this, function (_a) {
255
- return [2 /*return*/, coinAddresses.map(function (coins) { return coins.map(function (c) { return c === _this.constants.NATIVE_TOKEN.wrappedAddress ? _this.constants.NATIVE_TOKEN.address : c; }); })];
256
- });
257
- });
188
+ var _this = this;
189
+ return coinAddresses.map(function (coins) { return coins.map(function (c) { return c === _this.constants.NATIVE_TOKEN.wrappedAddress ? _this.constants.NATIVE_TOKEN.address : c; }); });
258
190
  }
259
191
  function getExistingCoinAddressNameDict() {
260
192
  var dict = {};
@@ -277,20 +209,21 @@ function getExistingCoinAddressNameDict() {
277
209
  dict[this.constants.NATIVE_TOKEN.address] = this.constants.NATIVE_TOKEN.symbol;
278
210
  return dict;
279
211
  }
280
- function getCoinAddressNameDict(coinAddresses, existingCoinAddrNameDict) {
212
+ function getCoinsData(tokenAddresses, coinAddresses, existingCoinAddrNameDict, existingCoinAddrDecimalsDict) {
281
213
  return __awaiter(this, void 0, void 0, function () {
282
- var flattenedCoinAddresses, newCoinAddresses, coinAddrNamesDict, _i, flattenedCoinAddresses_2, addr, calls, names;
283
- var _this = this;
284
- return __generator(this, function (_a) {
285
- switch (_a.label) {
214
+ var flattenedCoinAddresses, newCoinAddresses, coinAddrNamesDict, coinAddrDecimalsDict, _i, flattenedCoinAddresses_2, addr, calls, _a, tokenAddresses_1, addr, _b, newCoinAddresses_1, addr, res, res1, tokenSymbols, tokenNames, res2, symbols, decimals;
215
+ return __generator(this, function (_c) {
216
+ switch (_c.label) {
286
217
  case 0:
287
218
  flattenedCoinAddresses = Array.from(new Set(deepFlatten(coinAddresses)));
288
219
  newCoinAddresses = [];
289
220
  coinAddrNamesDict = {};
221
+ coinAddrDecimalsDict = {};
290
222
  for (_i = 0, flattenedCoinAddresses_2 = flattenedCoinAddresses; _i < flattenedCoinAddresses_2.length; _i++) {
291
223
  addr = flattenedCoinAddresses_2[_i];
292
224
  if (addr in existingCoinAddrNameDict) {
293
225
  coinAddrNamesDict[addr] = existingCoinAddrNameDict[addr];
226
+ coinAddrDecimalsDict[addr] = existingCoinAddrDecimalsDict[addr];
294
227
  }
295
228
  else if (addr === "0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2") {
296
229
  coinAddrNamesDict[addr] = "MKR";
@@ -299,100 +232,69 @@ function getCoinAddressNameDict(coinAddresses, existingCoinAddrNameDict) {
299
232
  newCoinAddresses.push(addr);
300
233
  }
301
234
  }
302
- calls = newCoinAddresses.map(function (addr) {
303
- return _this.contracts[addr].multicallContract.symbol();
304
- });
305
- return [4 /*yield*/, this.multicallProvider.all(calls)];
306
- case 1:
307
- names = _a.sent();
308
- newCoinAddresses.forEach(function (addr, i) {
309
- coinAddrNamesDict[addr] = names[i];
310
- });
311
- coinAddrNamesDict[this.constants.NATIVE_TOKEN.address] = this.constants.NATIVE_TOKEN.symbol;
312
- return [2 /*return*/, coinAddrNamesDict];
313
- }
314
- });
315
- });
316
- }
317
- function getCoinAddressDecimalsDict(coinAddresses, existingCoinAddressDecimalsDict) {
318
- return __awaiter(this, void 0, void 0, function () {
319
- var flattenedCoinAddresses, newCoinAddresses, coinAddressDecimalsDict, _i, flattenedCoinAddresses_3, addr, calls, decimals;
320
- var _this = this;
321
- return __generator(this, function (_a) {
322
- switch (_a.label) {
323
- case 0:
324
- flattenedCoinAddresses = Array.from(new Set(deepFlatten(coinAddresses)));
325
- newCoinAddresses = [];
326
- coinAddressDecimalsDict = {};
327
- for (_i = 0, flattenedCoinAddresses_3 = flattenedCoinAddresses; _i < flattenedCoinAddresses_3.length; _i++) {
328
- addr = flattenedCoinAddresses_3[_i];
329
- if (addr in existingCoinAddressDecimalsDict) {
330
- coinAddressDecimalsDict[addr] = existingCoinAddressDecimalsDict[addr];
331
- }
332
- else {
333
- newCoinAddresses.push(addr);
334
- }
235
+ calls = [];
236
+ for (_a = 0, tokenAddresses_1 = tokenAddresses; _a < tokenAddresses_1.length; _a++) {
237
+ addr = tokenAddresses_1[_a];
238
+ calls.push(this.contracts[addr].multicallContract.symbol());
239
+ calls.push(this.contracts[addr].multicallContract.name());
240
+ }
241
+ for (_b = 0, newCoinAddresses_1 = newCoinAddresses; _b < newCoinAddresses_1.length; _b++) {
242
+ addr = newCoinAddresses_1[_b];
243
+ calls.push(this.contracts[addr].multicallContract.symbol());
244
+ calls.push(this.contracts[addr].multicallContract.decimals());
335
245
  }
336
- calls = newCoinAddresses.map(function (addr) {
337
- return _this.contracts[addr].multicallContract.decimals();
338
- });
339
246
  return [4 /*yield*/, this.multicallProvider.all(calls)];
340
247
  case 1:
341
- decimals = (_a.sent()).map(function (_d) { return Number(ethers_1.ethers.utils.formatUnits(_d, 0)); });
248
+ res = _c.sent();
249
+ res1 = res.slice(0, tokenAddresses.length * 2);
250
+ tokenSymbols = res1.filter(function (a, i) { return i % 2 == 0; });
251
+ tokenNames = res1.filter(function (a, i) { return i % 2 == 1; });
252
+ res2 = res.slice(tokenAddresses.length * 2);
253
+ symbols = res2.filter(function (a, i) { return i % 2 == 0; });
254
+ decimals = res2.filter(function (a, i) { return i % 2 == 1; }).map(function (_d) { return Number(ethers_1.ethers.utils.formatUnits(_d, 0)); });
342
255
  newCoinAddresses.forEach(function (addr, i) {
343
- coinAddressDecimalsDict[addr] = decimals[i];
256
+ coinAddrNamesDict[addr] = symbols[i];
257
+ coinAddrDecimalsDict[addr] = decimals[i];
344
258
  });
345
- coinAddressDecimalsDict[this.constants.NATIVE_TOKEN.address] = 18;
346
- return [2 /*return*/, coinAddressDecimalsDict];
259
+ coinAddrNamesDict[this.constants.NATIVE_TOKEN.address] = this.constants.NATIVE_TOKEN.symbol;
260
+ return [2 /*return*/, [tokenSymbols, tokenNames, coinAddrNamesDict, coinAddrDecimalsDict]];
347
261
  }
348
262
  });
349
263
  });
350
264
  }
351
- function getCryptoFactoryPoolData(swapAddress) {
265
+ function getCryptoFactoryPoolData(fromIdx, swapAddress) {
266
+ if (fromIdx === void 0) { fromIdx = 0; }
352
267
  return __awaiter(this, void 0, void 0, function () {
353
- var _a, poolIds, swapAddresses, _b, tokenAddresses, gaugeAddresses, _c, poolSymbols, poolNames, coinAddresses, underlyingCoinAddresses, existingCoinAddressNameDict, coinAddressNameDict, coinAddressDecimalsDict, CRYPTO_FACTORY_POOLS_DATA, i, lpTokenBasePoolIdDict, basePoolIdZapDict, basePoolId, allPoolsData, basePoolCoinNames, basePoolCoinAddresses, basePoolDecimals, basePoolZap;
354
- return __generator(this, function (_e) {
355
- switch (_e.label) {
268
+ var _a, poolIds, swapAddresses, _b, _c, tokenAddresses, gaugeAddresses, coinAddresses, underlyingCoinAddresses, existingCoinAddressNameDict, _e, poolSymbols, poolNames, coinAddressNameDict, coinAddressDecimalsDict, CRYPTO_FACTORY_POOLS_DATA, i, lpTokenBasePoolIdDict, basePoolIdZapDict, basePoolId, allPoolsData, basePoolCoinNames, basePoolCoinAddresses, basePoolDecimals, basePoolZap;
269
+ return __generator(this, function (_f) {
270
+ switch (_f.label) {
356
271
  case 0:
357
272
  if (!swapAddress) return [3 /*break*/, 2];
358
273
  return [4 /*yield*/, getRecentlyCreatedCryptoPoolId.call(this, swapAddress)];
359
274
  case 1:
360
- _b = [[_e.sent()], [swapAddress.toLowerCase()]];
275
+ _b = [[_f.sent()], [swapAddress.toLowerCase()]];
361
276
  return [3 /*break*/, 4];
362
- case 2: return [4 /*yield*/, getCryptoFactoryIdsAndSwapAddresses.call(this)];
277
+ case 2: return [4 /*yield*/, getCryptoFactoryIdsAndSwapAddresses.call(this, fromIdx)];
363
278
  case 3:
364
- _b = _e.sent();
365
- _e.label = 4;
279
+ _b = _f.sent();
280
+ _f.label = 4;
366
281
  case 4:
367
282
  _a = _b, poolIds = _a[0], swapAddresses = _a[1];
368
- // const [poolIds, swapAddresses] = await getCryptoFactoryIdsAndSwapAddresses.call(this);
369
- setCryptoFactorySwapContracts.call(this, swapAddresses);
370
- return [4 /*yield*/, getCryptoFactoryTokenAddresses.call(this, swapAddresses)];
283
+ if (poolIds.length === 0)
284
+ return [2 /*return*/, {}];
285
+ return [4 /*yield*/, getPoolsData.call(this, swapAddresses)];
371
286
  case 5:
372
- tokenAddresses = _e.sent();
287
+ _c = _f.sent(), tokenAddresses = _c[0], gaugeAddresses = _c[1], coinAddresses = _c[2];
288
+ setCryptoFactorySwapContracts.call(this, swapAddresses);
373
289
  setCryptoFactoryTokenContracts.call(this, tokenAddresses);
374
- return [4 /*yield*/, getCryptoFactoryGaugeAddresses.call(this, swapAddresses)];
375
- case 6:
376
- gaugeAddresses = _e.sent();
377
290
  setCryptoFactoryGaugeContracts.call(this, gaugeAddresses);
378
- return [4 /*yield*/, getCryptoFactorySymbolsAndNames.call(this, tokenAddresses)];
379
- case 7:
380
- _c = _e.sent(), poolSymbols = _c[0], poolNames = _c[1];
381
- return [4 /*yield*/, getCryptoFactoryCoinAddresses.call(this, swapAddresses)];
382
- case 8:
383
- coinAddresses = _e.sent();
384
291
  setCryptoFactoryCoinsContracts.call(this, coinAddresses);
385
- return [4 /*yield*/, getCryptoFactoryUnderlyingCoinAddresses.call(this, coinAddresses)];
386
- case 9:
387
- underlyingCoinAddresses = _e.sent();
388
- existingCoinAddressNameDict = getExistingCoinAddressNameDict.call(this);
389
- return [4 /*yield*/, getCoinAddressNameDict.call(this, coinAddresses, existingCoinAddressNameDict)];
390
- case 10:
391
- coinAddressNameDict = _e.sent();
392
- return [4 /*yield*/, getCoinAddressDecimalsDict.call(this, coinAddresses, this.constants.DECIMALS)];
393
- case 11:
394
- coinAddressDecimalsDict = _e.sent();
395
292
  common_1.setFactoryZapContracts.call(this, true);
293
+ underlyingCoinAddresses = getCryptoFactoryUnderlyingCoinAddresses.call(this, coinAddresses);
294
+ existingCoinAddressNameDict = getExistingCoinAddressNameDict.call(this);
295
+ return [4 /*yield*/, getCoinsData.call(this, tokenAddresses, coinAddresses, existingCoinAddressNameDict, this.constants.DECIMALS)];
296
+ case 6:
297
+ _e = _f.sent(), poolSymbols = _e[0], poolNames = _e[1], coinAddressNameDict = _e[2], coinAddressDecimalsDict = _e[3];
396
298
  CRYPTO_FACTORY_POOLS_DATA = {};
397
299
  for (i = 0; i < poolIds.length; i++) {
398
300
  lpTokenBasePoolIdDict = constants_crypto_1.CRYPTO_FACTORY_CONSTANTS[this.chainId].lpTokenBasePoolIdDict;
@@ -1,2 +1,2 @@
1
1
  import { IDict, IPoolData, ICurve } from "../interfaces";
2
- export declare function getFactoryPoolData(this: ICurve, swapAddress?: string): Promise<IDict<IPoolData>>;
2
+ export declare function getFactoryPoolData(this: ICurve, fromIdx?: number, swapAddress?: string): Promise<IDict<IPoolData>>;