@defisaver/positions-sdk 1.0.26-dev-portfolio-13 → 1.0.26-dev-portfolio-15

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.
@@ -1,4 +1,4 @@
1
1
  import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
2
2
  import { PortfolioPositionsData, PortfolioPositionsDataSlower } from '../types';
3
- export declare function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[]): Promise<PortfolioPositionsData>;
4
- export declare function getPortfolioDataSlower(provider: EthereumProvider, network: NetworkNumber, addresses: EthAddress[]): Promise<PortfolioPositionsDataSlower>;
3
+ export declare function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[], summerFiAddresses: EthAddress[]): Promise<PortfolioPositionsData>;
4
+ export declare function getPortfolioDataSlower(provider: EthereumProvider, network: NetworkNumber, addresses: EthAddress[], isFork?: boolean): Promise<PortfolioPositionsDataSlower>;
@@ -34,7 +34,7 @@ const liquity_1 = require("../liquity");
34
34
  const liquityV2_1 = require("../liquityV2");
35
35
  const fluid_1 = require("../fluid");
36
36
  const eulerHelpers_1 = require("../helpers/eulerHelpers");
37
- function getPortfolioData(provider, network, defaultProvider, addresses) {
37
+ function getPortfolioData(provider, network, defaultProvider, addresses, summerFiAddresses) {
38
38
  return __awaiter(this, void 0, void 0, function* () {
39
39
  const isMainnet = network === common_1.NetworkNumber.Eth;
40
40
  const morphoMarkets = Object.values((0, markets_1.MorphoBlueMarkets)(network)).filter((market) => market.chainIds.includes(network));
@@ -102,8 +102,9 @@ function getPortfolioData(provider, network, defaultProvider, addresses) {
102
102
  compoundV2MarketsData[market.value] = marketData;
103
103
  })),
104
104
  ]);
105
+ const allAddresses = [...addresses, ...summerFiAddresses];
105
106
  const positions = {};
106
- for (const address of addresses) {
107
+ for (const address of allAddresses) {
107
108
  positions[address.toLowerCase()] = {
108
109
  aaveV3: {},
109
110
  morphoBlue: {},
@@ -117,7 +118,7 @@ function getPortfolioData(provider, network, defaultProvider, addresses) {
117
118
  };
118
119
  }
119
120
  yield Promise.all([
120
- ...aaveV3Markets.map((market) => addresses.map((address) => __awaiter(this, void 0, void 0, function* () {
121
+ ...aaveV3Markets.map((market) => allAddresses.map((address) => __awaiter(this, void 0, void 0, function* () {
121
122
  const accData = yield (0, aaveV3_1._getAaveV3AccountData)(client, network, address, Object.assign({ selectedMarket: market }, aaveV3MarketsData[market.value]));
122
123
  if (new decimal_js_1.default(accData.suppliedUsd).gt(0))
123
124
  positions[address.toLowerCase()].aaveV3[market.value] = accData;
@@ -132,7 +133,7 @@ function getPortfolioData(provider, network, defaultProvider, addresses) {
132
133
  if (new decimal_js_1.default(accData.suppliedUsd).gt(0))
133
134
  positions[address.toLowerCase()].compoundV3[market.value] = accData;
134
135
  }))).flat(),
135
- ...sparkMarkets.map((market) => addresses.map((address) => __awaiter(this, void 0, void 0, function* () {
136
+ ...sparkMarkets.map((market) => allAddresses.map((address) => __awaiter(this, void 0, void 0, function* () {
136
137
  const accData = yield (0, spark_1._getSparkAccountData)(client, network, address, { selectedMarket: market, assetsData: sparkMarketsData[market.value].assetsData });
137
138
  if (new decimal_js_1.default(accData.suppliedUsd).gt(0))
138
139
  positions[address.toLowerCase()].spark[market.value] = accData;
@@ -180,8 +181,8 @@ function getPortfolioData(provider, network, defaultProvider, addresses) {
180
181
  return positions;
181
182
  });
182
183
  }
183
- function getPortfolioDataSlower(provider, network, addresses) {
184
- return __awaiter(this, void 0, void 0, function* () {
184
+ function getPortfolioDataSlower(provider_1, network_1, addresses_1) {
185
+ return __awaiter(this, arguments, void 0, function* (provider, network, addresses, isFork = false) {
185
186
  const crvUsdMarkets = Object.values((0, markets_1.CrvUsdMarkets)(network)).filter((market) => market.chainIds.includes(network));
186
187
  const llamaLendMarkets = [common_1.NetworkNumber.Eth, common_1.NetworkNumber.Arb].includes(network) ? Object.values((0, markets_1.LlamaLendMarkets)(network)).filter((market) => market.chainIds.includes(network)) : [];
187
188
  const liquityV2Markets = Object.values((0, markets_1.LiquityV2Markets)(network)).filter((market) => market.chainIds.includes(network));
@@ -240,7 +241,7 @@ function getPortfolioDataSlower(provider, network, addresses) {
240
241
  }
241
242
  }))).flat(),
242
243
  ...liquityV2Markets.map((market) => addresses.map((address) => __awaiter(this, void 0, void 0, function* () {
243
- const troveIds = yield (0, liquityV2_1._getLiquityV2UserTroveIds)(client, network, market, liquityV2MarketsData[market.value].marketData.troveNFTAddress, false, address);
244
+ const troveIds = yield (0, liquityV2_1._getLiquityV2UserTroveIds)(client, network, market, liquityV2MarketsData[market.value].marketData.troveNFTAddress, isFork, address);
244
245
  return Promise.all(troveIds.troves.map((troveId) => __awaiter(this, void 0, void 0, function* () {
245
246
  const troveData = yield (0, liquityV2_1._getLiquityV2TroveData)(client, network, {
246
247
  selectedMarket: market,
@@ -1,4 +1,4 @@
1
1
  import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
2
2
  import { PortfolioPositionsData, PortfolioPositionsDataSlower } from '../types';
3
- export declare function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[]): Promise<PortfolioPositionsData>;
4
- export declare function getPortfolioDataSlower(provider: EthereumProvider, network: NetworkNumber, addresses: EthAddress[]): Promise<PortfolioPositionsDataSlower>;
3
+ export declare function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[], summerFiAddresses: EthAddress[]): Promise<PortfolioPositionsData>;
4
+ export declare function getPortfolioDataSlower(provider: EthereumProvider, network: NetworkNumber, addresses: EthAddress[], isFork?: boolean): Promise<PortfolioPositionsDataSlower>;
@@ -27,7 +27,7 @@ import { _getLiquityTroveInfo } from '../liquity';
27
27
  import { _getLiquityV2MarketData, _getLiquityV2TroveData, _getLiquityV2UserTroveIds } from '../liquityV2';
28
28
  import { _getUserPositions } from '../fluid';
29
29
  import { getEulerV2SubAccounts } from '../helpers/eulerHelpers';
30
- export function getPortfolioData(provider, network, defaultProvider, addresses) {
30
+ export function getPortfolioData(provider, network, defaultProvider, addresses, summerFiAddresses) {
31
31
  return __awaiter(this, void 0, void 0, function* () {
32
32
  const isMainnet = network === NetworkNumber.Eth;
33
33
  const morphoMarkets = Object.values(MorphoBlueMarkets(network)).filter((market) => market.chainIds.includes(network));
@@ -95,8 +95,9 @@ export function getPortfolioData(provider, network, defaultProvider, addresses)
95
95
  compoundV2MarketsData[market.value] = marketData;
96
96
  })),
97
97
  ]);
98
+ const allAddresses = [...addresses, ...summerFiAddresses];
98
99
  const positions = {};
99
- for (const address of addresses) {
100
+ for (const address of allAddresses) {
100
101
  positions[address.toLowerCase()] = {
101
102
  aaveV3: {},
102
103
  morphoBlue: {},
@@ -110,7 +111,7 @@ export function getPortfolioData(provider, network, defaultProvider, addresses)
110
111
  };
111
112
  }
112
113
  yield Promise.all([
113
- ...aaveV3Markets.map((market) => addresses.map((address) => __awaiter(this, void 0, void 0, function* () {
114
+ ...aaveV3Markets.map((market) => allAddresses.map((address) => __awaiter(this, void 0, void 0, function* () {
114
115
  const accData = yield _getAaveV3AccountData(client, network, address, Object.assign({ selectedMarket: market }, aaveV3MarketsData[market.value]));
115
116
  if (new Dec(accData.suppliedUsd).gt(0))
116
117
  positions[address.toLowerCase()].aaveV3[market.value] = accData;
@@ -125,7 +126,7 @@ export function getPortfolioData(provider, network, defaultProvider, addresses)
125
126
  if (new Dec(accData.suppliedUsd).gt(0))
126
127
  positions[address.toLowerCase()].compoundV3[market.value] = accData;
127
128
  }))).flat(),
128
- ...sparkMarkets.map((market) => addresses.map((address) => __awaiter(this, void 0, void 0, function* () {
129
+ ...sparkMarkets.map((market) => allAddresses.map((address) => __awaiter(this, void 0, void 0, function* () {
129
130
  const accData = yield _getSparkAccountData(client, network, address, { selectedMarket: market, assetsData: sparkMarketsData[market.value].assetsData });
130
131
  if (new Dec(accData.suppliedUsd).gt(0))
131
132
  positions[address.toLowerCase()].spark[market.value] = accData;
@@ -173,8 +174,8 @@ export function getPortfolioData(provider, network, defaultProvider, addresses)
173
174
  return positions;
174
175
  });
175
176
  }
176
- export function getPortfolioDataSlower(provider, network, addresses) {
177
- return __awaiter(this, void 0, void 0, function* () {
177
+ export function getPortfolioDataSlower(provider_1, network_1, addresses_1) {
178
+ return __awaiter(this, arguments, void 0, function* (provider, network, addresses, isFork = false) {
178
179
  const crvUsdMarkets = Object.values(CrvUsdMarkets(network)).filter((market) => market.chainIds.includes(network));
179
180
  const llamaLendMarkets = [NetworkNumber.Eth, NetworkNumber.Arb].includes(network) ? Object.values(LlamaLendMarkets(network)).filter((market) => market.chainIds.includes(network)) : [];
180
181
  const liquityV2Markets = Object.values(LiquityV2Markets(network)).filter((market) => market.chainIds.includes(network));
@@ -233,7 +234,7 @@ export function getPortfolioDataSlower(provider, network, addresses) {
233
234
  }
234
235
  }))).flat(),
235
236
  ...liquityV2Markets.map((market) => addresses.map((address) => __awaiter(this, void 0, void 0, function* () {
236
- const troveIds = yield _getLiquityV2UserTroveIds(client, network, market, liquityV2MarketsData[market.value].marketData.troveNFTAddress, false, address);
237
+ const troveIds = yield _getLiquityV2UserTroveIds(client, network, market, liquityV2MarketsData[market.value].marketData.troveNFTAddress, isFork, address);
237
238
  return Promise.all(troveIds.troves.map((troveId) => __awaiter(this, void 0, void 0, function* () {
238
239
  const troveData = yield _getLiquityV2TroveData(client, network, {
239
240
  selectedMarket: market,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/positions-sdk",
3
- "version": "1.0.26-dev-portfolio-13",
3
+ "version": "1.0.26-dev-portfolio-15",
4
4
  "description": "",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
@@ -16,7 +16,6 @@ import {
16
16
  CrvUSDGlobalMarketData,
17
17
  EulerV2FullMarketData,
18
18
  LiquityV2MarketData,
19
- LiquityV2Versions,
20
19
  LlamaLendGlobalMarketData,
21
20
  MorphoBlueMarketInfo,
22
21
  PortfolioPositionsData,
@@ -39,7 +38,7 @@ import { _getLiquityV2MarketData, _getLiquityV2TroveData, _getLiquityV2UserTrove
39
38
  import { _getUserPositions } from '../fluid';
40
39
  import { getEulerV2SubAccounts } from '../helpers/eulerHelpers';
41
40
 
42
- export async function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[]): Promise<PortfolioPositionsData> {
41
+ export async function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[], summerFiAddresses: EthAddress[]): Promise<PortfolioPositionsData> {
43
42
  const isMainnet = network === NetworkNumber.Eth;
44
43
 
45
44
  const morphoMarkets = Object.values(MorphoBlueMarkets(network)).filter((market) => market.chainIds.includes(network));
@@ -110,8 +109,10 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
110
109
  }),
111
110
  ]);
112
111
 
112
+ const allAddresses = [...addresses, ...summerFiAddresses];
113
+
113
114
  const positions: PortfolioPositionsData = {};
114
- for (const address of addresses) {
115
+ for (const address of allAddresses) {
115
116
  positions[address.toLowerCase() as EthAddress] = {
116
117
  aaveV3: {},
117
118
  morphoBlue: {},
@@ -126,7 +127,7 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
126
127
  }
127
128
 
128
129
  await Promise.all([
129
- ...aaveV3Markets.map((market) => addresses.map(async (address) => {
130
+ ...aaveV3Markets.map((market) => allAddresses.map(async (address) => {
130
131
  const accData = await _getAaveV3AccountData(client, network, address, { selectedMarket: market, ...aaveV3MarketsData[market.value] });
131
132
  if (new Dec(accData.suppliedUsd).gt(0)) positions[address.toLowerCase() as EthAddress].aaveV3[market.value] = accData;
132
133
  })).flat(),
@@ -138,7 +139,7 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
138
139
  const accData = await _getCompoundV3AccountData(client, network, address, ZERO_ADDRESS, { selectedMarket: market, assetsData: compoundV3MarketsData[market.value].assetsData });
139
140
  if (new Dec(accData.suppliedUsd).gt(0)) positions[address.toLowerCase() as EthAddress].compoundV3[market.value] = accData;
140
141
  })).flat(),
141
- ...sparkMarkets.map((market) => addresses.map(async (address) => {
142
+ ...sparkMarkets.map((market) => allAddresses.map(async (address) => {
142
143
  const accData = await _getSparkAccountData(client, network, address, { selectedMarket: market, assetsData: sparkMarketsData[market.value].assetsData });
143
144
  if (new Dec(accData.suppliedUsd).gt(0)) positions[address.toLowerCase() as EthAddress].spark[market.value] = accData;
144
145
  })).flat(),
@@ -179,7 +180,7 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
179
180
  return positions;
180
181
  }
181
182
 
182
- export async function getPortfolioDataSlower(provider: EthereumProvider, network: NetworkNumber, addresses: EthAddress[]): Promise<PortfolioPositionsDataSlower> {
183
+ export async function getPortfolioDataSlower(provider: EthereumProvider, network: NetworkNumber, addresses: EthAddress[], isFork: boolean = false): Promise<PortfolioPositionsDataSlower> {
183
184
  const crvUsdMarkets = Object.values(CrvUsdMarkets(network)).filter((market) => market.chainIds.includes(network));
184
185
  const llamaLendMarkets = [NetworkNumber.Eth, NetworkNumber.Arb].includes(network) ? Object.values(LlamaLendMarkets(network)).filter((market) => market.chainIds.includes(network)) : [];
185
186
  const liquityV2Markets = Object.values(LiquityV2Markets(network)).filter((market) => market.chainIds.includes(network));
@@ -243,7 +244,7 @@ export async function getPortfolioDataSlower(provider: EthereumProvider, network
243
244
  }
244
245
  })).flat(),
245
246
  ...liquityV2Markets.map((market) => addresses.map(async (address) => {
246
- const troveIds = await _getLiquityV2UserTroveIds(client, network, market, liquityV2MarketsData[market.value].marketData.troveNFTAddress, false, address);
247
+ const troveIds = await _getLiquityV2UserTroveIds(client, network, market, liquityV2MarketsData[market.value].marketData.troveNFTAddress, isFork, address);
247
248
  return Promise.all(troveIds.troves.map(async (troveId) => {
248
249
  const troveData = await _getLiquityV2TroveData(client, network, {
249
250
  selectedMarket: market,