@curvefi/api 1.11.0 → 1.12.0

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.
package/lib/curve.d.ts CHANGED
@@ -54,7 +54,7 @@ declare class Curve {
54
54
  maxPriorityFeePerGas?: number | ethers.BigNumber;
55
55
  };
56
56
  constructor();
57
- init(providerType: 'JsonRpc' | 'Web3' | 'Infura', providerSettings: {
57
+ init(providerType: 'JsonRpc' | 'Web3' | 'Infura' | 'Alchemy', providerSettings: {
58
58
  url?: string;
59
59
  privateKey?: string;
60
60
  } | {
package/lib/curve.js CHANGED
@@ -103,9 +103,9 @@ var Curve = /** @class */ (function () {
103
103
  ) {
104
104
  if (options === void 0) { options = {}; }
105
105
  return __awaiter(this, void 0, void 0, function () {
106
- var cTokens, yTokens, ycTokens, aTokens, network, customAbiTokens, _a, _i, _b, pool, _c, _d, coinAddr, _e, _f, coinAddr, _g, _h, coinAddr, addressProviderContract, _j;
107
- return __generator(this, function (_k) {
108
- switch (_k.label) {
106
+ var cTokens, yTokens, ycTokens, aTokens, network, _a, customAbiTokens, _b, _i, _c, pool, _d, _e, coinAddr, _f, _g, coinAddr, _h, _j, coinAddr, addressProviderContract, _k;
107
+ return __generator(this, function (_l) {
108
+ switch (_l.label) {
109
109
  case 0:
110
110
  // JsonRpc provider
111
111
  if (providerType.toLowerCase() === 'JsonRpc'.toLowerCase()) {
@@ -134,15 +134,24 @@ var Curve = /** @class */ (function () {
134
134
  providerSettings = providerSettings;
135
135
  this.provider = new ethers_1.ethers.providers.InfuraProvider(providerSettings.network, providerSettings.apiKey);
136
136
  }
137
+ else if (providerType.toLowerCase() === 'Alchemy'.toLowerCase()) {
138
+ providerSettings = providerSettings;
139
+ this.provider = new ethers_1.ethers.providers.AlchemyProvider(providerSettings.network, providerSettings.apiKey);
140
+ }
137
141
  else {
138
142
  throw Error('Wrong providerType');
139
143
  }
144
+ _a = this.provider.network;
145
+ if (_a) return [3 /*break*/, 2];
140
146
  return [4 /*yield*/, this.provider._networkPromise];
141
147
  case 1:
142
- network = _k.sent();
148
+ _a = (_l.sent());
149
+ _l.label = 2;
150
+ case 2:
151
+ network = _a;
143
152
  console.log("CURVE-JS IS CONNECTED TO NETWORK:", network);
144
153
  this.chainId = network.chainId;
145
- if (network.chainId === 1) {
154
+ if (network.chainId === 1 || network.chainId === 1337) {
146
155
  cTokens = coins_ethereum_1.cTokensEthereum;
147
156
  yTokens = coins_ethereum_1.yTokensEthereum;
148
157
  ycTokens = coins_ethereum_1.ycTokensEthereum;
@@ -192,22 +201,25 @@ var Curve = /** @class */ (function () {
192
201
  customAbiTokens = __spreadArray(__spreadArray(__spreadArray(__spreadArray([], cTokens, true), yTokens, true), ycTokens, true), aTokens, true);
193
202
  this.multicallProvider = new ethcall_1.Provider();
194
203
  return [4 /*yield*/, this.multicallProvider.init(this.provider)];
195
- case 2:
196
- _k.sent();
197
- if (!this.signer) return [3 /*break*/, 4];
198
- _a = this;
199
- return [4 /*yield*/, this.signer.getAddress()];
200
204
  case 3:
201
- _a.signerAddress = _k.sent();
202
- _k.label = 4;
205
+ _l.sent();
206
+ if (!this.signer) return [3 /*break*/, 5];
207
+ _b = this;
208
+ return [4 /*yield*/, this.signer.getAddress()];
203
209
  case 4:
210
+ _b.signerAddress = _l.sent();
211
+ return [3 /*break*/, 6];
212
+ case 5:
213
+ this.signerAddress = '';
214
+ _l.label = 6;
215
+ case 6:
204
216
  this.feeData = { gasPrice: options.gasPrice, maxFeePerGas: options.maxFeePerGas, maxPriorityFeePerGas: options.maxPriorityFeePerGas };
205
217
  return [4 /*yield*/, this.updateFeeData()];
206
- case 5:
207
- _k.sent();
218
+ case 7:
219
+ _l.sent();
208
220
  // TODO delete toLowerCase()
209
- for (_i = 0, _b = Object.values(exports.POOLS_DATA); _i < _b.length; _i++) {
210
- pool = _b[_i];
221
+ for (_i = 0, _c = Object.values(exports.POOLS_DATA); _i < _c.length; _i++) {
222
+ pool = _c[_i];
211
223
  this.contracts[pool.swap_address] = {
212
224
  contract: new ethers_1.Contract(pool.swap_address, pool.swap_abi, this.signer || this.provider),
213
225
  multicallContract: new ethcall_1.Contract(pool.swap_address, pool.swap_abi),
@@ -244,8 +256,8 @@ var Curve = /** @class */ (function () {
244
256
  multicallContract: new ethcall_1.Contract(pool.deposit_address, pool.deposit_abi),
245
257
  };
246
258
  }
247
- for (_c = 0, _d = pool.underlying_coin_addresses; _c < _d.length; _c++) {
248
- coinAddr = _d[_c];
259
+ for (_d = 0, _e = pool.underlying_coin_addresses; _d < _e.length; _d++) {
260
+ coinAddr = _e[_d];
249
261
  this.contracts[coinAddr] = {
250
262
  contract: new ethers_1.Contract(coinAddr, ERC20_json_1.default, this.signer || this.provider),
251
263
  multicallContract: new ethcall_1.Contract(coinAddr, ERC20_json_1.default),
@@ -255,8 +267,8 @@ var Curve = /** @class */ (function () {
255
267
  multicallContract: new ethcall_1.Contract(coinAddr, ERC20_json_1.default),
256
268
  };
257
269
  }
258
- for (_e = 0, _f = pool.coin_addresses; _e < _f.length; _e++) {
259
- coinAddr = _f[_e];
270
+ for (_f = 0, _g = pool.coin_addresses; _f < _g.length; _f++) {
271
+ coinAddr = _g[_f];
260
272
  if (customAbiTokens.includes(coinAddr))
261
273
  continue;
262
274
  this.contracts[coinAddr] = {
@@ -269,8 +281,8 @@ var Curve = /** @class */ (function () {
269
281
  };
270
282
  }
271
283
  // TODO add all coins
272
- for (_g = 0, _h = pool.coin_addresses; _g < _h.length; _g++) {
273
- coinAddr = _h[_g];
284
+ for (_h = 0, _j = pool.coin_addresses; _h < _j.length; _h++) {
285
+ coinAddr = _j[_h];
274
286
  if (cTokens.includes(coinAddr)) {
275
287
  this.contracts[coinAddr] = {
276
288
  contract: new ethers_1.Contract(coinAddr, cERC20_json_1.default, this.signer || this.provider),
@@ -328,10 +340,10 @@ var Curve = /** @class */ (function () {
328
340
  multicallContract: new ethcall_1.Contract(exports.ALIASES.address_provider, address_provider_json_1.default),
329
341
  };
330
342
  addressProviderContract = this.contracts[exports.ALIASES.address_provider].contract;
331
- _j = exports.ALIASES;
343
+ _k = exports.ALIASES;
332
344
  return [4 /*yield*/, addressProviderContract.get_address(2, this.constantOptions)];
333
- case 6:
334
- _j.registry_exchange = _k.sent();
345
+ case 8:
346
+ _k.registry_exchange = _l.sent();
335
347
  this.contracts[exports.ALIASES.registry_exchange] = {
336
348
  contract: new ethers_1.Contract(exports.ALIASES.registry_exchange, registry_exchange_json_1.default, this.signer || this.provider),
337
349
  multicallContract: new ethcall_1.Contract(exports.ALIASES.registry_exchange, registry_exchange_json_1.default),
package/lib/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ethers } from "ethers";
2
2
  import { Networkish } from "@ethersproject/networks";
3
3
  import { Pool } from "./pools";
4
- declare function init(providerType: 'JsonRpc' | 'Web3' | 'Infura', providerSettings: {
4
+ declare function init(providerType: 'JsonRpc' | 'Web3' | 'Infura' | 'Alchemy', providerSettings: {
5
5
  url?: string;
6
6
  privateKey?: string;
7
7
  } | {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@curvefi/api",
3
- "version": "1.11.0",
3
+ "version": "1.12.0",
4
4
  "description": "JavaScript library for curve.fi",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {