@curvefi/api 2.66.31 → 2.67.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.
@@ -0,0 +1,2 @@
1
+ import { IDict } from "../../interfaces.js";
2
+ export declare const COINS_HYPERLIQUID: IDict<string>;
@@ -0,0 +1,5 @@
1
+ import { lowerCaseValues } from "../utils.js";
2
+ export const COINS_HYPERLIQUID = lowerCaseValues({
3
+ crv: '0x5af79133999f7908953e94b7a5cf367740ebee35',
4
+ s: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
5
+ });
@@ -16,4 +16,5 @@ import { COINS_FRAXTAL } from "./fraxtal.js";
16
16
  import { COINS_XLAYER } from "./xlayer.js";
17
17
  import { COINS_MANTLE } from "./mantle.js";
18
18
  import { COINS_SONIC } from "./sonic.js";
19
- export { COINS_ETHEREUM, cTokensEthereum, yTokensEthereum, ycTokensEthereum, aTokensEthereum, COINS_POLYGON, aTokensPolygon, COINS_FANTOM, cTokensFantom, aTokensFantom, COINS_AVALANCHE, aTokensAvalanche, COINS_ARBITRUM, COINS_OPTIMISM, COINS_XDAI, COINS_MOONBEAM, COINS_AURORA, COINS_KAVA, COINS_CELO, COINS_ZKSYNC, COINS_BASE, COINS_BSC, COINS_FRAXTAL, COINS_XLAYER, COINS_MANTLE, COINS_SONIC, };
19
+ import { COINS_HYPERLIQUID } from "./hyperliquid.js";
20
+ export { COINS_ETHEREUM, cTokensEthereum, yTokensEthereum, ycTokensEthereum, aTokensEthereum, COINS_POLYGON, aTokensPolygon, COINS_FANTOM, cTokensFantom, aTokensFantom, COINS_AVALANCHE, aTokensAvalanche, COINS_ARBITRUM, COINS_OPTIMISM, COINS_XDAI, COINS_MOONBEAM, COINS_AURORA, COINS_KAVA, COINS_CELO, COINS_ZKSYNC, COINS_BASE, COINS_BSC, COINS_FRAXTAL, COINS_XLAYER, COINS_MANTLE, COINS_SONIC, COINS_HYPERLIQUID, };
@@ -16,4 +16,5 @@ import { COINS_FRAXTAL } from "./fraxtal.js";
16
16
  import { COINS_XLAYER } from "./xlayer.js";
17
17
  import { COINS_MANTLE } from "./mantle.js";
18
18
  import { COINS_SONIC } from "./sonic.js";
19
- export { COINS_ETHEREUM, cTokensEthereum, yTokensEthereum, ycTokensEthereum, aTokensEthereum, COINS_POLYGON, aTokensPolygon, COINS_FANTOM, cTokensFantom, aTokensFantom, COINS_AVALANCHE, aTokensAvalanche, COINS_ARBITRUM, COINS_OPTIMISM, COINS_XDAI, COINS_MOONBEAM, COINS_AURORA, COINS_KAVA, COINS_CELO, COINS_ZKSYNC, COINS_BASE, COINS_BSC, COINS_FRAXTAL, COINS_XLAYER, COINS_MANTLE, COINS_SONIC, };
19
+ import { COINS_HYPERLIQUID } from "./hyperliquid.js";
20
+ export { COINS_ETHEREUM, cTokensEthereum, yTokensEthereum, ycTokensEthereum, aTokensEthereum, COINS_POLYGON, aTokensPolygon, COINS_FANTOM, cTokensFantom, aTokensFantom, COINS_AVALANCHE, aTokensAvalanche, COINS_ARBITRUM, COINS_OPTIMISM, COINS_XDAI, COINS_MOONBEAM, COINS_AURORA, COINS_KAVA, COINS_CELO, COINS_ZKSYNC, COINS_BASE, COINS_BSC, COINS_FRAXTAL, COINS_XLAYER, COINS_MANTLE, COINS_SONIC, COINS_HYPERLIQUID, };
@@ -60,6 +60,11 @@ export declare const tricryptoDeployImplementations: {
60
60
  amm_native_transfers_enabled: string;
61
61
  implementationIdx: number;
62
62
  };
63
+ 999: {
64
+ amm_native_transfers_disabled: string;
65
+ amm_native_transfers_enabled: string;
66
+ implementationIdx: number;
67
+ };
63
68
  1284: {
64
69
  amm_native_transfers_disabled: string;
65
70
  amm_native_transfers_enabled: string;
@@ -77,6 +77,11 @@ export const tricryptoDeployImplementations = {
77
77
  amm_native_transfers_enabled: '0x18d01726FeDaBd91579A9368DFB2F8A24f905280'.toLowerCase(),
78
78
  implementationIdx: 0,
79
79
  },
80
+ 999: {
81
+ amm_native_transfers_disabled: '0x635742dCC8313DCf8c904206037d962c042EAfBd'.toLowerCase(), // 1
82
+ amm_native_transfers_enabled: '0x0000000000000000000000000000000000000000'.toLowerCase(), // 0
83
+ implementationIdx: 1,
84
+ },
80
85
  1284: {
81
86
  amm_native_transfers_disabled: '0x0000000000000000000000000000000000000000'.toLowerCase(),
82
87
  amm_native_transfers_enabled: '0x0000000000000000000000000000000000000000'.toLowerCase(),
@@ -153,6 +158,9 @@ export const CRYPTO_FACTORY_CONSTANTS = {
153
158
  324: {
154
159
  tricryptoDeployImplementations: tricryptoDeployImplementations[324],
155
160
  },
161
+ 999: {
162
+ tricryptoDeployImplementations: tricryptoDeployImplementations[999],
163
+ },
156
164
  1284: {
157
165
  tricryptoDeployImplementations: tricryptoDeployImplementations[1284],
158
166
  },
@@ -395,6 +395,9 @@ export const STABLE_FACTORY_CONSTANTS = {
395
395
  324: {
396
396
  stableNgBasePoolZap: stableNgBasePoolZap,
397
397
  },
398
+ 999: {
399
+ stableNgBasePoolZap: stableNgBasePoolZap,
400
+ },
398
401
  1284: {
399
402
  implementationABIDict: implementationABIDictMoonbeam,
400
403
  },
@@ -1,6 +1,6 @@
1
1
  import { lowerCaseValues } from "./utils.js";
2
- import { POOLS_DATA_ETHEREUM, LLAMMAS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, POOLS_DATA_ARBITRUM, POOLS_DATA_OPTIMISM, POOLS_DATA_XDAI, POOLS_DATA_MOONBEAM, POOLS_DATA_AURORA, POOLS_DATA_KAVA, POOLS_DATA_CELO, POOLS_DATA_ZKSYNC, POOLS_DATA_BASE, POOLS_DATA_BSC, POOLS_DATA_FRAXTAL, POOLS_DATA_XLAYER, POOLS_DATA_MANTLE, POOLS_DATA_SONIC, } from './pools/index.js';
3
- import { COINS_ETHEREUM, cTokensEthereum, yTokensEthereum, ycTokensEthereum, aTokensEthereum, COINS_OPTIMISM, COINS_POLYGON, aTokensPolygon, COINS_FANTOM, cTokensFantom, aTokensFantom, COINS_AVALANCHE, aTokensAvalanche, COINS_ARBITRUM, COINS_XDAI, COINS_MOONBEAM, COINS_AURORA, COINS_KAVA, COINS_CELO, COINS_ZKSYNC, COINS_BASE, COINS_BSC, COINS_FRAXTAL, COINS_XLAYER, COINS_MANTLE, COINS_SONIC, } from "./coins/index.js";
2
+ import { POOLS_DATA_ETHEREUM, LLAMMAS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, POOLS_DATA_ARBITRUM, POOLS_DATA_OPTIMISM, POOLS_DATA_XDAI, POOLS_DATA_MOONBEAM, POOLS_DATA_AURORA, POOLS_DATA_KAVA, POOLS_DATA_CELO, POOLS_DATA_ZKSYNC, POOLS_DATA_BASE, POOLS_DATA_BSC, POOLS_DATA_FRAXTAL, POOLS_DATA_XLAYER, POOLS_DATA_MANTLE, POOLS_DATA_SONIC, POOLS_DATA_HYPERLIQUID, } from './pools/index.js';
3
+ import { COINS_ETHEREUM, cTokensEthereum, yTokensEthereum, ycTokensEthereum, aTokensEthereum, COINS_OPTIMISM, COINS_POLYGON, aTokensPolygon, COINS_FANTOM, cTokensFantom, aTokensFantom, COINS_AVALANCHE, aTokensAvalanche, COINS_ARBITRUM, COINS_XDAI, COINS_MOONBEAM, COINS_AURORA, COINS_KAVA, COINS_CELO, COINS_ZKSYNC, COINS_BASE, COINS_BSC, COINS_FRAXTAL, COINS_XLAYER, COINS_MANTLE, COINS_SONIC, COINS_HYPERLIQUID, } from "./coins/index.js";
4
4
  const ALIASES_ETHEREUM = lowerCaseValues({
5
5
  "crv": "0xD533a949740bb3306d119CC777fa900bA034cd52", // <--- CHANGE
6
6
  "minter": '0xd061D61a4d941c39E5453435B6345Dc261C2fcE0', // <--- RECOVERED
@@ -306,18 +306,32 @@ const ALIASES_MANTLE = lowerCaseValues({
306
306
  "factory_admin": '0x0000000000000000000000000000000000000000',
307
307
  });
308
308
  const ALIASES_SONIC = lowerCaseValues({
309
- "crv": "0x5af79133999f7908953e94b7a5cf367740ebee35", //
310
- "child_gauge_factory": "0xf3A431008396df8A8b2DF492C913706BDB0874ef", //
309
+ "crv": "0x5af79133999f7908953e94b7a5cf367740ebee35",
310
+ "child_gauge_factory": "0xf3A431008396df8A8b2DF492C913706BDB0874ef",
311
311
  "voting_escrow": "0x0000000000000000000000000000000000000000",
312
312
  "fee_distributor": "0x0000000000000000000000000000000000000000",
313
313
  "gauge_controller": "0x0000000000000000000000000000000000000000",
314
- "address_provider": "0x87FE17697D0f14A222e8bEf386a0860eCffDD617", //
315
- "router": "0x5eeE3091f747E60a045a2E715a4c71e600e31F6E", //
316
- "deposit_and_stake": "0x505d666E4DD174DcDD7FA090ed95554486d2Be44", //
317
- "stable_ng_factory": '0x7C2085419BE6a04f4ad88ea91bC9F5C6E6C463D8', //
318
- "twocrypto_factory": '0x1A83348F9cCFD3Fe1A8C0adBa580Ac4e267Fe495', //
319
- "tricrypto_factory": '0x635742dCC8313DCf8c904206037d962c042EAfBd', //
320
- "factory_admin": '0x0000000000000000000000000000000000000000', //
314
+ "address_provider": "0x87FE17697D0f14A222e8bEf386a0860eCffDD617",
315
+ "router": "0x5eeE3091f747E60a045a2E715a4c71e600e31F6E",
316
+ "deposit_and_stake": "0x505d666E4DD174DcDD7FA090ed95554486d2Be44",
317
+ "stable_ng_factory": '0x7C2085419BE6a04f4ad88ea91bC9F5C6E6C463D8',
318
+ "twocrypto_factory": '0x1A83348F9cCFD3Fe1A8C0adBa580Ac4e267Fe495',
319
+ "tricrypto_factory": '0x635742dCC8313DCf8c904206037d962c042EAfBd',
320
+ "factory_admin": '0x0000000000000000000000000000000000000000',
321
+ });
322
+ const ALIASES_HYPERLIQUID = lowerCaseValues({
323
+ "crv": "0x0000000000000000000000000000000000000000", //
324
+ "child_gauge_factory": "0x8b3EFBEfa6eD222077455d6f0DCdA3bF4f3F57A6", //
325
+ "voting_escrow": "0x0000000000000000000000000000000000000000",
326
+ "fee_distributor": "0x0000000000000000000000000000000000000000",
327
+ "gauge_controller": "0x0000000000000000000000000000000000000000",
328
+ "address_provider": "0x87FE17697D0f14A222e8bEf386a0860eCffDD617",
329
+ "router": "0xd2002373543Ce3527023C75e7518C274A51ce712", //
330
+ "deposit_and_stake": "0x5a8C93EE12a8Df4455BA111647AdA41f29D5CfcC", //
331
+ "stable_ng_factory": '0x604388Bb1159AFd21eB5191cE22b4DeCdEE2Ae22', //
332
+ "twocrypto_factory": '0xc9Fe0C63Af9A39402e8a5514f9c43Af0322b665F', //
333
+ "tricrypto_factory": '0x5702BDB1Ec244704E3cBBaAE11a0275aE5b07499', //
334
+ "factory_admin": '0x0000000000000000000000000000000000000000',
321
335
  });
322
336
  export const NETWORK_CONSTANTS = {
323
337
  1: {
@@ -448,6 +462,18 @@ export const NETWORK_CONSTANTS = {
448
462
  wrappedAddress: '0x5AEa5775959fBC2557Cc8789bC1bf90A239D9a91'.toLowerCase(),
449
463
  },
450
464
  },
465
+ 999: {
466
+ NAME: 'hyperliquid',
467
+ ALIASES: ALIASES_HYPERLIQUID,
468
+ POOLS_DATA: POOLS_DATA_HYPERLIQUID,
469
+ COINS: COINS_HYPERLIQUID,
470
+ NATIVE_COIN: {
471
+ symbol: 'HYPE',
472
+ wrappedSymbol: 'WHYPE',
473
+ address: "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
474
+ wrappedAddress: '0x5555555555555555555555555555555555555555'.toLowerCase(),
475
+ },
476
+ },
451
477
  1284: {
452
478
  NAME: 'moonbeam',
453
479
  ALIASES: ALIASES_MOONBEAM,
@@ -0,0 +1,2 @@
1
+ import { IPoolData, IDict } from "../../interfaces.js";
2
+ export declare const POOLS_DATA_HYPERLIQUID: IDict<IPoolData>;
@@ -0,0 +1,2 @@
1
+ import { lowerCasePoolDataAddresses } from "../utils.js";
2
+ export const POOLS_DATA_HYPERLIQUID = lowerCasePoolDataAddresses({});
@@ -17,4 +17,5 @@ import { POOLS_DATA_FRAXTAL } from "./fraxtal.js";
17
17
  import { POOLS_DATA_XLAYER } from "./xlayer.js";
18
18
  import { POOLS_DATA_MANTLE } from "./mantle.js";
19
19
  import { POOLS_DATA_SONIC } from "./sonic.js";
20
- export { POOLS_DATA_ETHEREUM, LLAMMAS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, POOLS_DATA_ARBITRUM, POOLS_DATA_OPTIMISM, POOLS_DATA_XDAI, POOLS_DATA_MOONBEAM, POOLS_DATA_AURORA, POOLS_DATA_KAVA, POOLS_DATA_CELO, POOLS_DATA_ZKSYNC, POOLS_DATA_BASE, POOLS_DATA_BSC, POOLS_DATA_FRAXTAL, POOLS_DATA_XLAYER, POOLS_DATA_MANTLE, POOLS_DATA_SONIC, };
20
+ import { POOLS_DATA_HYPERLIQUID } from "./hyperliquid.js";
21
+ export { POOLS_DATA_ETHEREUM, LLAMMAS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, POOLS_DATA_ARBITRUM, POOLS_DATA_OPTIMISM, POOLS_DATA_XDAI, POOLS_DATA_MOONBEAM, POOLS_DATA_AURORA, POOLS_DATA_KAVA, POOLS_DATA_CELO, POOLS_DATA_ZKSYNC, POOLS_DATA_BASE, POOLS_DATA_BSC, POOLS_DATA_FRAXTAL, POOLS_DATA_XLAYER, POOLS_DATA_MANTLE, POOLS_DATA_SONIC, POOLS_DATA_HYPERLIQUID, };
@@ -17,4 +17,5 @@ import { POOLS_DATA_FRAXTAL } from "./fraxtal.js";
17
17
  import { POOLS_DATA_XLAYER } from "./xlayer.js";
18
18
  import { POOLS_DATA_MANTLE } from "./mantle.js";
19
19
  import { POOLS_DATA_SONIC } from "./sonic.js";
20
- export { POOLS_DATA_ETHEREUM, LLAMMAS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, POOLS_DATA_ARBITRUM, POOLS_DATA_OPTIMISM, POOLS_DATA_XDAI, POOLS_DATA_MOONBEAM, POOLS_DATA_AURORA, POOLS_DATA_KAVA, POOLS_DATA_CELO, POOLS_DATA_ZKSYNC, POOLS_DATA_BASE, POOLS_DATA_BSC, POOLS_DATA_FRAXTAL, POOLS_DATA_XLAYER, POOLS_DATA_MANTLE, POOLS_DATA_SONIC, };
20
+ import { POOLS_DATA_HYPERLIQUID } from "./hyperliquid.js";
21
+ export { POOLS_DATA_ETHEREUM, LLAMMAS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, POOLS_DATA_ARBITRUM, POOLS_DATA_OPTIMISM, POOLS_DATA_XDAI, POOLS_DATA_MOONBEAM, POOLS_DATA_AURORA, POOLS_DATA_KAVA, POOLS_DATA_CELO, POOLS_DATA_ZKSYNC, POOLS_DATA_BASE, POOLS_DATA_BSC, POOLS_DATA_FRAXTAL, POOLS_DATA_XLAYER, POOLS_DATA_MANTLE, POOLS_DATA_SONIC, POOLS_DATA_HYPERLIQUID, };
@@ -1,5 +1,5 @@
1
1
  export const volumeNetworks = {
2
- getVolumes: [1, 10, 100, 137, 250, 252, 8453, 42161, 146],
2
+ getVolumes: [1, 10, 100, 137, 250, 252, 999, 8453, 42161, 146],
3
3
  getSubgraphData: [43114],
4
4
  getFactoryAPYs: [56, 196, 324, 1284, 2222, 5000, 42220, 1313161554],
5
5
  };
package/lib/curve.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { BigNumberish, BrowserProvider, Contract, ethers, JsonRpcProvider, Networkish, Numeric, Signer } from "ethers";
2
2
  import { Contract as MulticallContract, Provider as MulticallProvider } from "@curvefi/ethcall";
3
- import { IPoolData, IDict, ICurve, IChainId, IFactoryPoolType, Abi, INetworkConstants, IPoolType, IExtendedPoolDataFromApi } from "./interfaces";
3
+ import { Abi, IChainId, ICurve, IDict, IExtendedPoolDataFromApi, IFactoryPoolType, INetworkConstants, IPoolData, IPoolType } from "./interfaces";
4
4
  export declare const OLD_CHAINS: number[];
5
5
  export declare const memoizedContract: () => (address: string, abi: any, provider: BrowserProvider | JsonRpcProvider | Signer) => Contract;
6
6
  export declare const memoizedMulticallContract: () => (address: string, abi: any) => MulticallContract;
package/lib/curve.js CHANGED
@@ -621,20 +621,18 @@ export class Curve {
621
621
  AbstractProvider.prototype.estimateGas = AbstractProvider.prototype.originalEstimate;
622
622
  }
623
623
  const originalEstimate = AbstractProvider.prototype.estimateGas;
624
- const oldEstimate = originalEstimate.bind(this);
625
624
  //Override
626
625
  const newEstimate = function (arg) {
627
626
  return __awaiter(this, void 0, void 0, function* () {
628
- const L2EstimateGas = oldEstimate;
629
627
  const L1GasUsed = yield curveInstance.contracts[curveInstance.constants.ALIASES.gas_oracle_blob].contract.getL1GasUsed(arg.data);
630
628
  const L1Fee = yield curveInstance.contracts[curveInstance.constants.ALIASES.gas_oracle_blob].contract.getL1Fee(arg.data);
631
629
  curveInstance.L1WeightedGasPrice = Number(L1Fee) / Number(L1GasUsed);
632
- const L2GasUsed = yield L2EstimateGas(arg);
630
+ const L2GasUsed = yield originalEstimate.call(this, arg);
633
631
  return [L2GasUsed, L1GasUsed];
634
632
  });
635
633
  };
636
634
  AbstractProvider.prototype.estimateGas = newEstimate;
637
- AbstractProvider.prototype.originalEstimate = oldEstimate;
635
+ AbstractProvider.prototype.originalEstimate = originalEstimate;
638
636
  }
639
637
  else {
640
638
  if ('originalEstimate' in AbstractProvider.prototype) {
package/lib/utils.js CHANGED
@@ -315,6 +315,7 @@ export function _getUsdRate(assetId) {
315
315
  250: 'fantom',
316
316
  252: 'fraxtal',
317
317
  324: 'zksync',
318
+ 999: 'hyperliquid',
318
319
  1284: 'moonbeam',
319
320
  2222: 'kava',
320
321
  5000: 'mantle',
@@ -336,6 +337,7 @@ export function _getUsdRate(assetId) {
336
337
  252: 'frax-share',
337
338
  324: 'ethereum',
338
339
  1284: 'moonbeam',
340
+ 999: 'hyperliquid',
339
341
  2222: 'kava',
340
342
  5000: 'mantle',
341
343
  8453: 'ethereum',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@curvefi/api",
3
- "version": "2.66.31",
3
+ "version": "2.67.1",
4
4
  "description": "JavaScript library for curve.finance",
5
5
  "main": "lib/index.js",
6
6
  "author": "Macket",
@@ -42,7 +42,7 @@
42
42
  "vue-eslint-parser": "^10.1.3"
43
43
  },
44
44
  "dependencies": {
45
- "@curvefi/ethcall": "^6.0.13",
45
+ "@curvefi/ethcall": "^6.0.14",
46
46
  "bignumber.js": "^9.3.0",
47
47
  "ethers": "^6.14.1",
48
48
  "memoizee": "^0.4.17"