@curvefi/llamalend-api 2.0.2 → 2.0.3
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/constants/abis/ControllerV2.json +1891 -0
- package/lib/index.d.ts +2 -2
- package/lib/lendMarkets/LendMarketTemplate.d.ts +9 -5
- package/lib/lendMarkets/LendMarketTemplate.js +1 -1
- package/lib/lendMarkets/fetch/fetchLendMarkets.js +6 -1
- package/lib/lendMarkets/interfaces/v2/loanV2.d.ts +1 -1
- package/lib/lendMarkets/lendMarketConstructor.d.ts +1 -1
- package/lib/lendMarkets/lendMarketConstructor.js +6 -1
- package/lib/lendMarkets/modules/common/loanBase.d.ts +0 -1
- package/lib/lendMarkets/modules/common/loanBase.js +8 -23
- package/lib/lendMarkets/modules/v1/loanV1.d.ts +1 -0
- package/lib/lendMarkets/modules/v1/loanV1.js +19 -0
- package/lib/lendMarkets/modules/v2/loanV2.d.ts +5 -0
- package/lib/lendMarkets/modules/v2/loanV2.js +57 -0
- package/lib/llamalend.d.ts +1 -1
- package/package.json +9 -3
- package/src/constants/abis/ControllerV2.json +1891 -0
- package/src/lendMarkets/LendMarketTemplate.ts +13 -9
- package/src/lendMarkets/fetch/fetchLendMarkets.ts +7 -1
- package/src/lendMarkets/interfaces/v2/loanV2.ts +1 -1
- package/src/lendMarkets/lendMarketConstructor.ts +6 -2
- package/src/lendMarkets/modules/common/loanBase.ts +9 -24
- package/src/lendMarkets/modules/v1/loanV1.ts +12 -1
- package/src/lendMarkets/modules/v2/loanV2.ts +55 -1
- package/src/llamalend.ts +1 -1
package/lib/index.d.ts
CHANGED
|
@@ -26,7 +26,7 @@ export declare function createLlamalend(): {
|
|
|
26
26
|
readonly signerAddress: string;
|
|
27
27
|
LendMarketTemplate: typeof LendMarketTemplate;
|
|
28
28
|
MintMarketTemplate: typeof MintMarketTemplate;
|
|
29
|
-
getLendMarket: (lendMarketId: string) => LendMarketTemplate
|
|
29
|
+
getLendMarket: (lendMarketId: string) => LendMarketTemplate<"v1"> | LendMarketTemplate<"v2">;
|
|
30
30
|
getMintMarket: (mintMarketId: string) => MintMarketTemplate;
|
|
31
31
|
totalSupply: () => Promise<{
|
|
32
32
|
total: string;
|
|
@@ -128,7 +128,7 @@ declare const _default: {
|
|
|
128
128
|
readonly signerAddress: string;
|
|
129
129
|
LendMarketTemplate: typeof LendMarketTemplate;
|
|
130
130
|
MintMarketTemplate: typeof MintMarketTemplate;
|
|
131
|
-
getLendMarket: (lendMarketId: string) => LendMarketTemplate
|
|
131
|
+
getLendMarket: (lendMarketId: string) => LendMarketTemplate<"v1"> | LendMarketTemplate<"v2">;
|
|
132
132
|
getMintMarket: (mintMarketId: string) => MintMarketTemplate;
|
|
133
133
|
totalSupply: () => Promise<{
|
|
134
134
|
total: string;
|
|
@@ -4,11 +4,14 @@ import { ILeverageZapV2 } from "./interfaces/leverageZapV2.js";
|
|
|
4
4
|
import { IUserPosition, IWallet, IPrices, IAmm, IVault } from "./interfaces/common";
|
|
5
5
|
import { IStatsV1, ILoanV1, ILeverageV1 } from "./interfaces/v1";
|
|
6
6
|
import { IStatsV2, ILoanV2, ILeverageV2 } from "./interfaces/v2";
|
|
7
|
-
|
|
7
|
+
type LoanForVersion<V extends 'v1' | 'v2'> = V extends 'v1' ? ILoanV1 : ILoanV2;
|
|
8
|
+
type StatsForVersion<V extends 'v1' | 'v2'> = V extends 'v1' ? IStatsV1 : IStatsV2;
|
|
9
|
+
type LeverageForVersion<V extends 'v1' | 'v2'> = V extends 'v1' ? ILeverageV1 : ILeverageV2;
|
|
10
|
+
export declare class LendMarketTemplate<V extends 'v1' | 'v2' = 'v1' | 'v2'> {
|
|
8
11
|
private llamalend;
|
|
9
12
|
id: string;
|
|
10
13
|
name: string;
|
|
11
|
-
version:
|
|
14
|
+
version: V;
|
|
12
15
|
addresses: {
|
|
13
16
|
amm: string;
|
|
14
17
|
controller: string;
|
|
@@ -41,10 +44,11 @@ export declare class LendMarketTemplate {
|
|
|
41
44
|
prices: IPrices;
|
|
42
45
|
amm: IAmm;
|
|
43
46
|
vault: IVault;
|
|
44
|
-
stats:
|
|
45
|
-
loan:
|
|
46
|
-
leverage:
|
|
47
|
+
stats: StatsForVersion<V>;
|
|
48
|
+
loan: LoanForVersion<V>;
|
|
49
|
+
leverage: LeverageForVersion<V>;
|
|
47
50
|
leverageZapV2: ILeverageZapV2;
|
|
48
51
|
constructor(id: string, marketData: IOneWayMarket, llamalend: Llamalend);
|
|
49
52
|
getLlamalend(): Llamalend;
|
|
50
53
|
}
|
|
54
|
+
export {};
|
|
@@ -29,7 +29,7 @@ export class LendMarketTemplate {
|
|
|
29
29
|
constructor(id, marketData, llamalend) {
|
|
30
30
|
this.swapDataCache = {};
|
|
31
31
|
this.llamalend = llamalend;
|
|
32
|
-
this.version = marketData.version || 'v1';
|
|
32
|
+
this.version = (marketData.version || 'v1');
|
|
33
33
|
this.id = id;
|
|
34
34
|
this.name = marketData.name;
|
|
35
35
|
this.addresses = marketData.addresses;
|
|
@@ -10,14 +10,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { getFactoryMarketDataV1, getFactoryMarketDataV2, getFactoryMarketDataByAPI } from "./fetchFactoryData.js";
|
|
11
11
|
import LlammaABI from '../../constants/abis/Llamma.json' with { type: 'json' };
|
|
12
12
|
import ControllerABI from '../../constants/abis/Controller.json' with { type: 'json' };
|
|
13
|
+
import ControllerV2ABI from '../../constants/abis/ControllerV2.json' with { type: 'json' };
|
|
13
14
|
import MonetaryPolicyABI from '../../constants/abis/MonetaryPolicy.json' with { type: 'json' };
|
|
14
15
|
import VaultABI from '../../constants/abis/Vault.json' with { type: 'json' };
|
|
15
16
|
import GaugeABI from '../../constants/abis/GaugeV5.json' with { type: 'json' };
|
|
16
17
|
import SidechainGaugeABI from '../../constants/abis/SidechainGauge.json' with { type: 'json' };
|
|
18
|
+
const controllerAbiMap = {
|
|
19
|
+
'v1': ControllerABI,
|
|
20
|
+
'v2': ControllerV2ABI,
|
|
21
|
+
};
|
|
17
22
|
const registerMarkets = (llamalend, names, amms, controllers, borrowed_tokens, collateral_tokens, monetary_policies, vaults, gauges, COIN_DATA, version) => {
|
|
18
23
|
amms.forEach((amm, index) => {
|
|
19
24
|
llamalend.setContract(amms[index], LlammaABI);
|
|
20
|
-
llamalend.setContract(controllers[index],
|
|
25
|
+
llamalend.setContract(controllers[index], controllerAbiMap[version]);
|
|
21
26
|
llamalend.setContract(monetary_policies[index], MonetaryPolicyABI);
|
|
22
27
|
llamalend.setContract(vaults[index], VaultABI);
|
|
23
28
|
if (gauges[index]) {
|
|
@@ -42,7 +42,7 @@ export interface ILoanV2 {
|
|
|
42
42
|
repayPrices: (debt: TAmount, address?: string) => Promise<string[]>;
|
|
43
43
|
repayIsApproved: (debt: TAmount) => Promise<boolean>;
|
|
44
44
|
repayApprove: (debt: TAmount) => Promise<string[]>;
|
|
45
|
-
repayHealth: (debt: TAmount, full?: boolean, address?: string) => Promise<string>;
|
|
45
|
+
repayHealth: (debt: TAmount, shrink?: boolean, full?: boolean, address?: string) => Promise<string>;
|
|
46
46
|
repay: (debt: TAmount, address?: string) => Promise<string>;
|
|
47
47
|
repayFutureLeverage: (debt: TAmount, userAddress?: string) => Promise<string>;
|
|
48
48
|
fullRepayIsApproved: (address?: string) => Promise<boolean>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { LendMarketTemplate } from "./LendMarketTemplate.js";
|
|
2
2
|
import type { Llamalend } from "../llamalend.js";
|
|
3
|
-
export declare const getLendMarket: (this: Llamalend, lendMarketId: string) => LendMarketTemplate
|
|
3
|
+
export declare const getLendMarket: (this: Llamalend, lendMarketId: string) => LendMarketTemplate<"v1"> | LendMarketTemplate<"v2">;
|
|
@@ -4,7 +4,12 @@ export const getLendMarket = function (lendMarketId) {
|
|
|
4
4
|
const marketData = this.constants.ONE_WAY_MARKETS[lendMarketId] || this.constants.ONE_WAY_MARKETS_V2[lendMarketId];
|
|
5
5
|
if (!marketData)
|
|
6
6
|
throw new Error(`Lend market with id ${lendMarketId} not found`);
|
|
7
|
-
|
|
7
|
+
if (marketData.version === 'v2') {
|
|
8
|
+
this.lendMarkets[lendMarketId] = new LendMarketTemplate(lendMarketId, marketData, this);
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
this.lendMarkets[lendMarketId] = new LendMarketTemplate(lendMarketId, marketData, this);
|
|
12
|
+
}
|
|
8
13
|
}
|
|
9
14
|
return this.lendMarkets[lendMarketId];
|
|
10
15
|
};
|
|
@@ -71,7 +71,6 @@ export declare class LoanBaseModule {
|
|
|
71
71
|
repayIsApproved(debt: number | string): Promise<boolean>;
|
|
72
72
|
private repayApproveEstimateGas;
|
|
73
73
|
repayApprove(debt: number | string): Promise<string[]>;
|
|
74
|
-
repayHealth(debt: number | string, full?: boolean, address?: string): Promise<string>;
|
|
75
74
|
private _repay;
|
|
76
75
|
repayEstimateGas(debt: number | string, address?: string): Promise<TGas>;
|
|
77
76
|
repay(debt: number | string, address?: string): Promise<string>;
|
|
@@ -162,10 +162,8 @@ export class LoanBaseModule {
|
|
|
162
162
|
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals);
|
|
163
163
|
const _debt = parseUnits(debt, this.market.borrowed_token.decimals);
|
|
164
164
|
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
_health = _health * BigInt(100);
|
|
168
|
-
return formatUnits(_health);
|
|
165
|
+
const _health = yield contract.health_calculator(this.llamalend.constants.ZERO_ADDRESS, _collateral, _debt, full, range, this.llamalend.constantOptions);
|
|
166
|
+
return formatUnits(_health * BigInt(100));
|
|
169
167
|
});
|
|
170
168
|
}
|
|
171
169
|
createLoanIsApproved(collateral) {
|
|
@@ -254,9 +252,8 @@ export class LoanBaseModule {
|
|
|
254
252
|
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals);
|
|
255
253
|
const _debt = parseUnits(debt, this.market.borrowed_token.decimals);
|
|
256
254
|
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
return formatUnits(_health);
|
|
255
|
+
const _health = yield contract.health_calculator(address, _collateral, _debt, full, 0, this.llamalend.constantOptions);
|
|
256
|
+
return formatUnits(_health * BigInt(100));
|
|
260
257
|
});
|
|
261
258
|
}
|
|
262
259
|
borrowMoreIsApproved(collateral) {
|
|
@@ -345,9 +342,8 @@ export class LoanBaseModule {
|
|
|
345
342
|
address = _getAddress.call(this.llamalend, address);
|
|
346
343
|
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals);
|
|
347
344
|
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
return formatUnits(_health);
|
|
345
|
+
const _health = yield contract.health_calculator(address, _collateral, 0, full, 0, this.llamalend.constantOptions);
|
|
346
|
+
return formatUnits(_health * BigInt(100));
|
|
351
347
|
});
|
|
352
348
|
}
|
|
353
349
|
addCollateralIsApproved(collateral) {
|
|
@@ -444,9 +440,8 @@ export class LoanBaseModule {
|
|
|
444
440
|
address = _getAddress.call(this.llamalend, address);
|
|
445
441
|
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals) * BigInt(-1);
|
|
446
442
|
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
return formatUnits(_health);
|
|
443
|
+
const _health = yield contract.health_calculator(address, _collateral, 0, full, 0, this.llamalend.constantOptions);
|
|
444
|
+
return formatUnits(_health * BigInt(100));
|
|
450
445
|
});
|
|
451
446
|
}
|
|
452
447
|
_removeCollateral(collateral, estimateGas) {
|
|
@@ -532,16 +527,6 @@ export class LoanBaseModule {
|
|
|
532
527
|
return yield ensureAllowance.call(this.llamalend, [this.market.borrowed_token.address], [debt], this.market.addresses.controller);
|
|
533
528
|
});
|
|
534
529
|
}
|
|
535
|
-
repayHealth(debt_1) {
|
|
536
|
-
return __awaiter(this, arguments, void 0, function* (debt, full = true, address = "") {
|
|
537
|
-
address = _getAddress.call(this.llamalend, address);
|
|
538
|
-
const _debt = parseUnits(debt) * BigInt(-1);
|
|
539
|
-
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
540
|
-
let _health = yield contract.health_calculator(address, 0, _debt, full, 0, this.llamalend.constantOptions);
|
|
541
|
-
_health = _health * BigInt(100);
|
|
542
|
-
return formatUnits(_health);
|
|
543
|
-
});
|
|
544
|
-
}
|
|
545
530
|
_repay(debt, address, estimateGas) {
|
|
546
531
|
return __awaiter(this, void 0, void 0, function* () {
|
|
547
532
|
address = _getAddress.call(this.llamalend, address);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { LoanBaseModule } from "../common/loanBase.js";
|
|
2
2
|
import { ILoanV1 } from "../../interfaces/v1/loanV1";
|
|
3
3
|
export declare class LoanV1Module extends LoanBaseModule implements ILoanV1 {
|
|
4
|
+
repayHealth(debt: number | string, full?: boolean, address?: string): Promise<string>;
|
|
4
5
|
}
|
|
@@ -1,3 +1,22 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
1
10
|
import { LoanBaseModule } from "../common/loanBase.js";
|
|
11
|
+
import { _getAddress, formatUnits, parseUnits } from "../../../utils";
|
|
2
12
|
export class LoanV1Module extends LoanBaseModule {
|
|
13
|
+
repayHealth(debt_1) {
|
|
14
|
+
return __awaiter(this, arguments, void 0, function* (debt, full = true, address = "") {
|
|
15
|
+
address = _getAddress.call(this.llamalend, address);
|
|
16
|
+
const _debt = parseUnits(debt) * BigInt(-1);
|
|
17
|
+
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
18
|
+
const _health = yield contract.health_calculator(address, 0, _debt, full, 0, this.llamalend.constantOptions);
|
|
19
|
+
return formatUnits(_health * BigInt(100));
|
|
20
|
+
});
|
|
21
|
+
}
|
|
3
22
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { LoanBaseModule } from "../common/loanBase.js";
|
|
2
2
|
import { ILoanV2 } from "../../interfaces/v2";
|
|
3
3
|
export declare class LoanV2Module extends LoanBaseModule implements ILoanV2 {
|
|
4
|
+
createLoanHealth(collateral: number | string, debt: number | string, range: number, full?: boolean): Promise<string>;
|
|
5
|
+
addCollateralHealth(collateral: number | string, full?: boolean, address?: string): Promise<string>;
|
|
6
|
+
removeCollateralHealth(collateral: number | string, full?: boolean, address?: string): Promise<string>;
|
|
7
|
+
borrowMoreHealth(collateral: number | string, debt: number | string, full?: boolean, address?: string): Promise<string>;
|
|
8
|
+
repayHealth(debt: number | string, shrink?: boolean, full?: boolean, address?: string): Promise<string>;
|
|
4
9
|
}
|
|
@@ -1,3 +1,60 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
1
10
|
import { LoanBaseModule } from "../common/loanBase.js";
|
|
11
|
+
import { _getAddress, formatUnits, parseUnits } from "../../../utils";
|
|
2
12
|
export class LoanV2Module extends LoanBaseModule {
|
|
13
|
+
createLoanHealth(collateral_1, debt_1, range_1) {
|
|
14
|
+
return __awaiter(this, arguments, void 0, function* (collateral, debt, range, full = true) {
|
|
15
|
+
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals);
|
|
16
|
+
const _debt = parseUnits(debt, this.market.borrowed_token.decimals);
|
|
17
|
+
const address = _getAddress.call(this.llamalend, '');
|
|
18
|
+
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
19
|
+
const _health = yield contract.create_loan_health_preview(_collateral, _debt, range, address, full, this.llamalend.constantOptions);
|
|
20
|
+
return formatUnits(_health * BigInt(100));
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
addCollateralHealth(collateral_1) {
|
|
24
|
+
return __awaiter(this, arguments, void 0, function* (collateral, full = true, address = "") {
|
|
25
|
+
address = _getAddress.call(this.llamalend, address);
|
|
26
|
+
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals);
|
|
27
|
+
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
28
|
+
const _health = yield contract.add_collateral_health_preview(_collateral, address, address, full, this.llamalend.constantOptions);
|
|
29
|
+
return formatUnits(_health * BigInt(100));
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
removeCollateralHealth(collateral_1) {
|
|
33
|
+
return __awaiter(this, arguments, void 0, function* (collateral, full = true, address = "") {
|
|
34
|
+
address = _getAddress.call(this.llamalend, address);
|
|
35
|
+
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals);
|
|
36
|
+
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
37
|
+
const _health = yield contract.remove_collateral_health_preview(_collateral, address, full, this.llamalend.constantOptions);
|
|
38
|
+
return formatUnits(_health * BigInt(100));
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
borrowMoreHealth(collateral_1, debt_1) {
|
|
42
|
+
return __awaiter(this, arguments, void 0, function* (collateral, debt, full = true, address = "") {
|
|
43
|
+
address = _getAddress.call(this.llamalend, address);
|
|
44
|
+
const _collateral = parseUnits(collateral, this.market.collateral_token.decimals);
|
|
45
|
+
const _debt = parseUnits(debt, this.market.borrowed_token.decimals);
|
|
46
|
+
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
47
|
+
const _health = yield contract.borrow_more_health_preview(_collateral, _debt, address, full, this.llamalend.constantOptions);
|
|
48
|
+
return formatUnits(_health * BigInt(100));
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
repayHealth(debt_1) {
|
|
52
|
+
return __awaiter(this, arguments, void 0, function* (debt, shrink = false, full = true, address = "") {
|
|
53
|
+
address = _getAddress.call(this.llamalend, address);
|
|
54
|
+
const _debt = parseUnits(debt);
|
|
55
|
+
const contract = this.llamalend.contracts[this.market.addresses.controller].contract;
|
|
56
|
+
const _health = yield contract.repay_health_preview(0, _debt, address, address, shrink, full, this.llamalend.constantOptions);
|
|
57
|
+
return formatUnits(_health * BigInt(100));
|
|
58
|
+
});
|
|
59
|
+
}
|
|
3
60
|
}
|
package/lib/llamalend.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ declare class Llamalend implements ILlamalend {
|
|
|
21
21
|
[addres: string]: MintMarketTemplate;
|
|
22
22
|
};
|
|
23
23
|
lendMarkets: {
|
|
24
|
-
[
|
|
24
|
+
[address: string]: LendMarketTemplate<'v1'> | LendMarketTemplate<'v2'>;
|
|
25
25
|
};
|
|
26
26
|
feeData: {
|
|
27
27
|
gasPrice?: number;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@curvefi/llamalend-api",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.3",
|
|
4
4
|
"description": "JavaScript library for Curve Lending",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"author": "Macket",
|
|
@@ -20,7 +20,9 @@
|
|
|
20
20
|
"watch": "tsc --watch",
|
|
21
21
|
"watch:lib": "rm -rf lib && tsc --watch --project tsconfig.build.json"
|
|
22
22
|
},
|
|
23
|
-
"engines": {
|
|
23
|
+
"engines": {
|
|
24
|
+
"node": "24"
|
|
25
|
+
},
|
|
24
26
|
"type": "module",
|
|
25
27
|
"devDependencies": {
|
|
26
28
|
"@eslint/eslintrc": "^3.3.1",
|
|
@@ -35,10 +37,14 @@
|
|
|
35
37
|
"chai": "^5.3.3",
|
|
36
38
|
"eslint": "^9.38.0",
|
|
37
39
|
"globals": "^16.4.0",
|
|
38
|
-
"mocha": "^11.7.
|
|
40
|
+
"mocha": "^11.7.5",
|
|
39
41
|
"typescript": "^5.9.3",
|
|
40
42
|
"vue-eslint-parser": "^10.2.0"
|
|
41
43
|
},
|
|
44
|
+
"overrides": {
|
|
45
|
+
"serialize-javascript": "^7.0.4",
|
|
46
|
+
"diff": "^8.0.3"
|
|
47
|
+
},
|
|
42
48
|
"dependencies": {
|
|
43
49
|
"@curvefi/ethcall": "6.0.16",
|
|
44
50
|
"bignumber.js": "9.3.1",
|