@gearbox-protocol/sdk 1.22.0 → 1.22.2

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.
@@ -72,27 +72,33 @@ var APY_DICTIONARY = {
72
72
  var CRV_APY_RESPONSE_DECIMALS = 100;
73
73
  // const CRYPTO = "https://api.curve.fi/api/getPools/ethereum/crypto";
74
74
  // const FACTORY = "https://api.curve.fi/api/getPools/ethereum/factory";
75
- var CURVE_FACTORY_CRYPTO_URL = "https://api.curve.fi/api/getPools/ethereum/factory-crypto";
76
- var CURVE_MAIN_URL = "https://api.curve.fi/api/getPools/ethereum/main";
77
75
  var CURVE_APY_URL = "https://www.convexfinance.com/api/curve-apys";
76
+ var CURVE_MAIN_URL = "https://api.curve.fi/api/getPools/ethereum/main";
77
+ var CURVE_FACTORY_CRYPTO_URL = "https://api.curve.fi/api/getPools/ethereum/factory-crypto";
78
+ var CURVE_CRYPTO_URL = "https://api.curve.fi/api/getPools/ethereum/crypto";
79
+ var CURVE_FACTORY_TRICRYPTO_URL = "https://api.curve.fi/api/getPools/ethereum/factory-tricrypto";
78
80
  function getCurveAPY() {
79
81
  return __awaiter(this, void 0, void 0, function () {
80
- var _a, apyData, factoryCrypto, main, apys_1, _b, factoryCryptoPoolData, _c, mainPoolData, poolDataByID_1, curveAPY, e_1;
81
- return __generator(this, function (_d) {
82
- switch (_d.label) {
82
+ var _a, apyData, main, factoryCrypto, crypto, factoryTricrypto, apys_1, _b, mainPoolData, _c, factoryCryptoPoolData, _d, cryptoPoolData, _e, factoryTricryptoPoolData, poolDataByID_1, curveAPY, e_1;
83
+ return __generator(this, function (_f) {
84
+ switch (_f.label) {
83
85
  case 0:
84
- _d.trys.push([0, 2, , 3]);
86
+ _f.trys.push([0, 2, , 3]);
85
87
  return [4 /*yield*/, Promise.all([
86
88
  axios_1.default.get(CURVE_APY_URL),
87
- axios_1.default.get(CURVE_FACTORY_CRYPTO_URL),
88
89
  axios_1.default.get(CURVE_MAIN_URL),
90
+ axios_1.default.get(CURVE_FACTORY_CRYPTO_URL),
91
+ axios_1.default.get(CURVE_CRYPTO_URL),
92
+ axios_1.default.get(CURVE_FACTORY_TRICRYPTO_URL),
89
93
  ])];
90
94
  case 1:
91
- _a = _d.sent(), apyData = _a[0].data, factoryCrypto = _a[1].data, main = _a[2].data;
95
+ _a = _f.sent(), apyData = _a[0].data, main = _a[1].data, factoryCrypto = _a[2].data, crypto = _a[3].data, factoryTricrypto = _a[4].data;
92
96
  apys_1 = (apyData || {}).apys;
93
- _b = ((factoryCrypto === null || factoryCrypto === void 0 ? void 0 : factoryCrypto.data) || {}).poolData, factoryCryptoPoolData = _b === void 0 ? [] : _b;
94
- _c = ((main === null || main === void 0 ? void 0 : main.data) || {}).poolData, mainPoolData = _c === void 0 ? [] : _c;
95
- poolDataByID_1 = Object.fromEntries(__spreadArray(__spreadArray([], factoryCryptoPoolData.map(function (p) { return [p.id, p]; }), true), mainPoolData.map(function (p) { return [p.id, p]; }), true));
97
+ _b = ((main === null || main === void 0 ? void 0 : main.data) || {}).poolData, mainPoolData = _b === void 0 ? [] : _b;
98
+ _c = ((factoryCrypto === null || factoryCrypto === void 0 ? void 0 : factoryCrypto.data) || {}).poolData, factoryCryptoPoolData = _c === void 0 ? [] : _c;
99
+ _d = ((crypto === null || crypto === void 0 ? void 0 : crypto.data) || {}).poolData, cryptoPoolData = _d === void 0 ? [] : _d;
100
+ _e = ((factoryTricrypto === null || factoryTricrypto === void 0 ? void 0 : factoryTricrypto.data) || {}).poolData, factoryTricryptoPoolData = _e === void 0 ? [] : _e;
101
+ poolDataByID_1 = Object.fromEntries(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], mainPoolData.map(function (p) { return [p.id, p]; }), true), factoryCryptoPoolData.map(function (p) { return [p.id, p]; }), true), cryptoPoolData.map(function (p) { return [p.id, p]; }), true), factoryTricryptoPoolData.map(function (p) { return [p.id, p]; }), true));
96
102
  curveAPY = (0, mappers_1.objectEntries)(APY_DICTIONARY).reduce(function (acc, _a) {
97
103
  var curveSymbol = _a[0], poolId = _a[1];
98
104
  var _b = apys_1[poolId] || {}, baseApy = _b.baseApy, crvApy = _b.crvApy;
@@ -119,7 +125,7 @@ function getCurveAPY() {
119
125
  }, {});
120
126
  return [2 /*return*/, curveAPY];
121
127
  case 2:
122
- e_1 = _d.sent();
128
+ e_1 = _f.sent();
123
129
  console.error(e_1);
124
130
  return [2 /*return*/, null];
125
131
  case 3: return [2 /*return*/];
@@ -11,6 +11,7 @@ export declare class CreditSession {
11
11
  readonly creditManager: string;
12
12
  readonly account: string;
13
13
  readonly underlyingToken: string;
14
+ readonly version: number;
14
15
  readonly since: number;
15
16
  readonly sinceDate: string;
16
17
  readonly closedAt: number;
@@ -28,6 +29,9 @@ export declare class CreditSession {
28
29
  readonly currentBlock: number;
29
30
  readonly currentTimestamp: number;
30
31
  readonly entryPrice: number;
32
+ readonly closePrice: number;
33
+ readonly quoteToken: string;
34
+ readonly tradingToken: string;
31
35
  readonly borrowAPY_RAY: BigNumber;
32
36
  readonly borrowAPY7DAverage: number;
33
37
  readonly totalValueUSD: number;
@@ -47,6 +47,7 @@ var CreditSession = /** @class */ (function () {
47
47
  this.creditManager = (payload.creditManager || "").toLowerCase();
48
48
  this.account = (payload.account || "").toLowerCase();
49
49
  this.underlyingToken = (payload.underlyingToken || "").toLowerCase();
50
+ this.version = payload.version || 2;
50
51
  this.initialAmount = ethers_1.BigNumber.from(payload.initialAmount || 0);
51
52
  this.borrowedAmount = ethers_1.BigNumber.from(payload.borrowedAmount || 0);
52
53
  this.totalValue = ethers_1.BigNumber.from(payload.totalValue || 0);
@@ -60,6 +61,9 @@ var CreditSession = /** @class */ (function () {
60
61
  this.collateralInUSD = payload.collateralInUSD || 0;
61
62
  this.collateralInUnderlying = payload.collateralInUnderlying || 0;
62
63
  this.entryPrice = payload.entryPrice || 0;
64
+ this.closePrice = payload.closePrice || 0;
65
+ this.tradingToken = (payload.tradingToken || "").toLowerCase();
66
+ this.quoteToken = (payload.quoteToken || "").toLowerCase();
63
67
  this.borrowAPY_RAY = ethers_1.BigNumber.from(payload.borrowAPY_RAY || 0);
64
68
  this.borrowAPY7DAverage =
65
69
  (payload.borrowAPY7DAverage || 0) * constants_1.PERCENTAGE_DECIMALS;
@@ -463,6 +463,12 @@ exports.priceFeedsByNetwork = {
463
463
  assets: ["GUSD", "DAI", "USDC", "USDT"],
464
464
  },
465
465
  },
466
+ MIM_3LP3CRV: {
467
+ priceFeedUSD: {
468
+ type: oracles_1.OracleType.CURVE_LP_TOKEN_ORACLE,
469
+ assets: ["MIM", "DAI", "USDC", "USDT"],
470
+ },
471
+ },
466
472
  OHMFRAXBP: {
467
473
  priceFeedUSD: {
468
474
  type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
@@ -735,12 +741,6 @@ exports.priceFeedsByNetwork = {
735
741
  address: { Mainnet: "", Goerli: "" },
736
742
  },
737
743
  },
738
- MIM_3LP3CRV: {
739
- priceFeedUSD: {
740
- type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
741
- assets: ["MIM", "3Crv"],
742
- },
743
- },
744
744
  "50OHM_50DAI": {
745
745
  priceFeedUSD: {
746
746
  type: oracles_1.OracleType.BALANCER_WEIGHTED_LP_ORACLE,
@@ -19,9 +19,13 @@ export interface CreditSessionPayload {
19
19
  account: string;
20
20
  creditManager: string;
21
21
  underlyingToken: string;
22
+ version: number;
22
23
  borrowAPY_RAY: BigNumberish;
23
24
  borrowAPY7DAverage: number;
24
- entryPrice: number;
25
+ entryPrice?: number;
26
+ closePrice?: number;
27
+ quoteToken?: string;
28
+ tradingToken?: string;
25
29
  healthFactor: BigNumberish;
26
30
  leverage: number;
27
31
  tfIndex: number;
@@ -4,8 +4,8 @@ import { TradeAction } from "../pathfinder/tradeTypes";
4
4
  import { PartialRecord } from "../utils/types";
5
5
  import type { SupportedToken, TokenBase } from "./token";
6
6
  import { TokenType } from "./tokenType";
7
- export type CurveMetaTokens = "FRAX3CRV" | "LUSD3CRV" | "gusd3CRV" | "MIM_3LP3CRV";
8
- export type CurveLPToken = "3Crv" | "steCRV" | "crvPlain3andSUSD" | "crvFRAX" | "OHMFRAXBP" | "crvCRVETH" | "crvCVXETH" | "crvUSDTWBTCWETH" | "LDOETH" | CurveMetaTokens;
7
+ export type CurveMetaTokens = "FRAX3CRV" | "LUSD3CRV" | "gusd3CRV" | "MIM_3LP3CRV" | "OHMFRAXBP";
8
+ export type CurveLPToken = "3Crv" | "steCRV" | "crvPlain3andSUSD" | "crvFRAX" | "crvCRVETH" | "crvCVXETH" | "crvUSDTWBTCWETH" | "LDOETH" | CurveMetaTokens;
9
9
  export type CurveLPTokenData = {
10
10
  symbol: CurveLPToken;
11
11
  type: TokenType.CURVE_LP_TOKEN;
@@ -104,6 +104,29 @@ exports.curveMetaTokens = {
104
104
  },
105
105
  ],
106
106
  },
107
+ OHMFRAXBP: {
108
+ name: "Curve.fi Factory Crypto Pool: OHM/FRAXBP",
109
+ symbol: "OHMFRAXBP",
110
+ type: tokenType_1.TokenType.CURVE_LP_TOKEN,
111
+ pool: "CURVE_OHMFRAXBP_POOL",
112
+ lpActions: [
113
+ {
114
+ type: tradeTypes_1.TradeType.CurveWithdrawLP,
115
+ contract: "CURVE_OHMFRAXBP_POOL",
116
+ tokenOut: ["OHM", "FRAX", "USDC"],
117
+ },
118
+ {
119
+ type: tradeTypes_1.TradeType.ConvexDepositLP,
120
+ contract: "CONVEX_BOOSTER",
121
+ tokenOut: "cvxOHMFRAXBP",
122
+ },
123
+ {
124
+ type: tradeTypes_1.TradeType.ConvexDepositLPAndStake,
125
+ contract: "CONVEX_BOOSTER",
126
+ tokenOut: "stkcvxOHMFRAXBP",
127
+ },
128
+ ],
129
+ },
107
130
  };
108
131
  exports.curveTokens = __assign({
109
132
  // CURVE LP TOKENS
@@ -196,28 +219,6 @@ exports.curveTokens = __assign({
196
219
  tokenOut: "stkcvxcrvPlain3andSUSD",
197
220
  },
198
221
  ],
199
- }, OHMFRAXBP: {
200
- name: "Curve.fi Factory Crypto Pool: OHM/FRAXBP",
201
- symbol: "OHMFRAXBP",
202
- type: tokenType_1.TokenType.CURVE_LP_TOKEN,
203
- pool: "CURVE_OHMFRAXBP_POOL",
204
- lpActions: [
205
- {
206
- type: tradeTypes_1.TradeType.CurveWithdrawLP,
207
- contract: "CURVE_OHMFRAXBP_POOL",
208
- tokenOut: ["OHM", "FRAX", "USDC"],
209
- },
210
- {
211
- type: tradeTypes_1.TradeType.ConvexDepositLP,
212
- contract: "CONVEX_BOOSTER",
213
- tokenOut: "cvxOHMFRAXBP",
214
- },
215
- {
216
- type: tradeTypes_1.TradeType.ConvexDepositLPAndStake,
217
- contract: "CONVEX_BOOSTER",
218
- tokenOut: "stkcvxOHMFRAXBP",
219
- },
220
- ],
221
222
  }, crvCRVETH: {
222
223
  name: "Curve CRV-ETH",
223
224
  symbol: "crvCRVETH",
@@ -82,7 +82,7 @@ exports.tokenDataByNetwork = {
82
82
  cvxcrvCRVETH: "0x0Fb8dcdD95e4C48D3dD0eFA4086512f6F8FD4565",
83
83
  cvxcrvCVXETH: "0x0bC857f97c0554d1d0D602b56F2EEcE682016fBA",
84
84
  cvxcrvUSDTWBTCWETH: "0xB77BA8B4b9d981269466eE95796A9Af57d4E82DB",
85
- cvxLDOETH: "0xD533a949740bb3306d119CC777fa900bA034cd52",
85
+ cvxLDOETH: "0x4eBE557ae39F87D2a014719777FD4cF4d01Dc8Ee",
86
86
  // CONVEX PHANTOM TOKEN ADDRESSES
87
87
  stkcvx3Crv: "0xbAc7a431146aeAf3F57A16b9954f332Fd292F270",
88
88
  stkcvxFRAX3CRV: "0xaF314b088B53835d5cF4e4CB81beABa5934a61fe",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "1.22.0",
3
+ "version": "1.22.2",
4
4
  "description": "Gearbox SDK",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",