@sonarwatch/portfolio-core 0.12.37 → 0.12.39
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/CHANGELOG.md +16 -0
- package/package.json +1 -1
- package/src/Portfolio.d.ts +9 -11
- package/src/Portfolio.js.map +1 -1
- package/src/utils/getAddressFromAsset.js +1 -1
- package/src/utils/getAddressFromAsset.js.map +1 -1
- package/src/utils/getAssetsFromElement.js +6 -1
- package/src/utils/getAssetsFromElement.js.map +1 -1
- package/src/utils/getElementLendingValues.d.ts +3 -3
- package/src/utils/getElementLendingValues.js +5 -5
- package/src/utils/getElementLendingValues.js.map +1 -1
- package/src/utils/getElementNFTLendingValues.d.ts +13 -0
- package/src/utils/getElementNFTLendingValues.js +35 -0
- package/src/utils/getElementNFTLendingValues.js.map +1 -0
- package/src/utils/index.d.ts +1 -0
- package/src/utils/index.js +1 -0
- package/src/utils/index.js.map +1 -1
- package/src/utils/sortPortfolioElement.js +1 -2
- package/src/utils/sortPortfolioElement.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [0.12.39](https://github.com/sonarwatch/portfolio/compare/core-0.12.38...core-0.12.39) (2024-06-25)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [0.12.38](https://github.com/sonarwatch/portfolio/compare/core-0.12.37...core-0.12.38) (2024-06-25)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## [0.12.37](https://github.com/sonarwatch/portfolio/compare/core-0.12.36...core-0.12.37) (2024-06-25)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## [0.12.36](https://github.com/sonarwatch/portfolio/compare/core-0.12.35...core-0.12.36) (2024-06-21)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
5
21
|
## [0.12.37](https://github.com/sonarwatch/portfolio/compare/core-0.12.36...core-0.12.37) (2024-06-21)
|
|
6
22
|
|
|
7
23
|
|
package/package.json
CHANGED
package/src/Portfolio.d.ts
CHANGED
|
@@ -60,9 +60,10 @@ export type PortfolioAssetCommon = {
|
|
|
60
60
|
*/
|
|
61
61
|
export type PortfolioAssetGenericData = {
|
|
62
62
|
name?: string;
|
|
63
|
-
amount
|
|
64
|
-
price
|
|
63
|
+
amount?: number;
|
|
64
|
+
price?: UsdValue;
|
|
65
65
|
imageUri?: string;
|
|
66
|
+
address?: string;
|
|
66
67
|
};
|
|
67
68
|
/**
|
|
68
69
|
* Represents a generic portfolio asset.
|
|
@@ -227,10 +228,7 @@ export type LevPosition = {
|
|
|
227
228
|
* Represents the data of a leverage portfolio element.
|
|
228
229
|
*/
|
|
229
230
|
export type PortfolioElementLeverageData = {
|
|
230
|
-
|
|
231
|
-
levValue: UsdValue;
|
|
232
|
-
rewardAssets: PortfolioAsset[];
|
|
233
|
-
rewardValue: UsdValue;
|
|
231
|
+
positions: LevPosition[];
|
|
234
232
|
value: UsdValue;
|
|
235
233
|
};
|
|
236
234
|
/**
|
|
@@ -261,15 +259,15 @@ export type PortfolioElementBorrowLendData = {
|
|
|
261
259
|
*/
|
|
262
260
|
rewardAssets: PortfolioAsset[];
|
|
263
261
|
/**
|
|
264
|
-
* The
|
|
262
|
+
* The unsettled part of the portfolio element.
|
|
265
263
|
*/
|
|
266
|
-
|
|
264
|
+
unsettled?: {
|
|
267
265
|
/**
|
|
268
|
-
* The
|
|
266
|
+
* The unsettled assets.
|
|
269
267
|
*/
|
|
270
|
-
|
|
268
|
+
assets: PortfolioAssetGeneric[];
|
|
271
269
|
/**
|
|
272
|
-
* The
|
|
270
|
+
* The unsettled value.
|
|
273
271
|
*/
|
|
274
272
|
value: UsdValue;
|
|
275
273
|
};
|
package/src/Portfolio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Portfolio.js","sourceRoot":"","sources":["../../../../packages/core/src/Portfolio.ts"],"names":[],"mappings":";;;AAMA;;GAEG;AACU,QAAA,kBAAkB,GAAG;IAChC,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAClB,CAAC;AAyCX;;GAEG;AACU,QAAA,oBAAoB,GAAG;IAClC,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;CACZ,CAAC;
|
|
1
|
+
{"version":3,"file":"Portfolio.js","sourceRoot":"","sources":["../../../../packages/core/src/Portfolio.ts"],"names":[],"mappings":";;;AAMA;;GAEG;AACU,QAAA,kBAAkB,GAAG;IAChC,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAClB,CAAC;AAyCX;;GAEG;AACU,QAAA,oBAAoB,GAAG;IAClC,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;CACZ,CAAC;AA4LX,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,+BAAe,CAAA;AACjB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAddressFromAsset.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getAddressFromAsset.ts"],"names":[],"mappings":";;;AAEA,SAAgB,mBAAmB,CAAC,KAAqB;IACvD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QAC5B,KAAK,aAAa;YAChB,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QAC5B,KAAK,SAAS;YACZ,OAAO,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"getAddressFromAsset.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getAddressFromAsset.ts"],"names":[],"mappings":";;;AAEA,SAAgB,mBAAmB,CAAC,KAAqB;IACvD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QAC5B,KAAK,aAAa;YAChB,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QAC5B,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;QACpC;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAXD,kDAWC"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getAssetsFromElement = void 0;
|
|
4
4
|
const Portfolio_1 = require("../Portfolio");
|
|
5
5
|
function getAssetsFromElement(element) {
|
|
6
|
+
var _a;
|
|
6
7
|
switch (element.type) {
|
|
7
8
|
case Portfolio_1.PortfolioElementType.multiple:
|
|
8
9
|
return [...element.data.assets];
|
|
@@ -12,7 +13,11 @@ function getAssetsFromElement(element) {
|
|
|
12
13
|
...element.data.liquidities.map((l) => l.rewardAssets).flat(1),
|
|
13
14
|
];
|
|
14
15
|
case Portfolio_1.PortfolioElementType.borrowlend:
|
|
15
|
-
return [
|
|
16
|
+
return [
|
|
17
|
+
...element.data.suppliedAssets,
|
|
18
|
+
...element.data.rewardAssets,
|
|
19
|
+
...(((_a = element.data.unsettled) === null || _a === void 0 ? void 0 : _a.assets) || []),
|
|
20
|
+
];
|
|
16
21
|
case Portfolio_1.PortfolioElementType.leverage:
|
|
17
22
|
return [];
|
|
18
23
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAssetsFromElement.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getAssetsFromElement.ts"],"names":[],"mappings":";;;AAAA,4CAIsB;AAEtB,SAAgB,oBAAoB,CAClC,OAAyB
|
|
1
|
+
{"version":3,"file":"getAssetsFromElement.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getAssetsFromElement.ts"],"names":[],"mappings":";;;AAAA,4CAIsB;AAEtB,SAAgB,oBAAoB,CAClC,OAAyB;;IAEzB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,gCAAoB,CAAC,QAAQ;YAChC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,KAAK,gCAAoB,CAAC,SAAS;YACjC,OAAO;gBACL,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxD,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;aAC/D,CAAC;QACJ,KAAK,gCAAoB,CAAC,UAAU;YAClC,OAAO;gBACL,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc;gBAC9B,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY;gBAC5B,GAAG,CAAC,CAAA,MAAA,OAAO,CAAC,IAAI,CAAC,SAAS,0CAAE,MAAM,KAAI,EAAE,CAAC;aAC1C,CAAC;QACJ,KAAK,gCAAoB,CAAC,QAAQ;YAChC,OAAO,EAAE,CAAC;QACZ;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAtBD,oDAsBC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PortfolioAsset } from '../Portfolio';
|
|
2
2
|
import { UsdValue } from '../UsdValue';
|
|
3
3
|
export declare function getElementLendingValues(params: {
|
|
4
4
|
suppliedAssets: PortfolioAsset[];
|
|
@@ -6,12 +6,12 @@ export declare function getElementLendingValues(params: {
|
|
|
6
6
|
rewardAssets: PortfolioAsset[];
|
|
7
7
|
suppliedLtvs?: number[];
|
|
8
8
|
borrowedWeights?: number[];
|
|
9
|
-
|
|
9
|
+
unsettledAssets?: PortfolioAsset[];
|
|
10
10
|
}): {
|
|
11
11
|
borrowedValue: UsdValue;
|
|
12
12
|
suppliedValue: UsdValue;
|
|
13
13
|
rewardValue: UsdValue;
|
|
14
14
|
healthRatio: number | null;
|
|
15
|
-
|
|
15
|
+
unsettledValue: UsdValue;
|
|
16
16
|
value: number | null;
|
|
17
17
|
};
|
|
@@ -21,8 +21,8 @@ function getHealthRatio(suppliedAssets, borrowedAssets, suppliedLtvs, borrowedWe
|
|
|
21
21
|
return (suppliesWeightedValue - borrowsWeightedValue) / suppliesWeightedValue;
|
|
22
22
|
}
|
|
23
23
|
function getElementLendingValues(params) {
|
|
24
|
-
const { suppliedAssets, borrowedAssets, rewardAssets, suppliedLtvs, borrowedWeights,
|
|
25
|
-
const
|
|
24
|
+
const { suppliedAssets, borrowedAssets, rewardAssets, suppliedLtvs, borrowedWeights, unsettledAssets, } = params;
|
|
25
|
+
const unsettledValue = (0, getUsdValueSumStrict_1.getUsdValueSumStrict)((unsettledAssets === null || unsettledAssets === void 0 ? void 0 : unsettledAssets.map((p) => p.value)) || []);
|
|
26
26
|
const rewardValue = rewardAssets.reduce((acc, asset) => acc !== null && asset.value !== null ? acc + asset.value : null, 0);
|
|
27
27
|
const suppliedValue = suppliedAssets.reduce((acc, asset) => acc !== null && asset.value !== null ? acc + asset.value : null, 0);
|
|
28
28
|
const borrowedValue = borrowedAssets.reduce((acc, asset) => acc !== null && asset.value !== null ? acc + asset.value : null, 0);
|
|
@@ -33,14 +33,14 @@ function getElementLendingValues(params) {
|
|
|
33
33
|
: null;
|
|
34
34
|
if (rewardValue !== null && value !== null)
|
|
35
35
|
value += rewardValue;
|
|
36
|
-
if (
|
|
37
|
-
value +=
|
|
36
|
+
if (unsettledValue !== null && value !== null)
|
|
37
|
+
value += unsettledValue;
|
|
38
38
|
return {
|
|
39
39
|
borrowedValue,
|
|
40
40
|
suppliedValue,
|
|
41
41
|
rewardValue,
|
|
42
42
|
healthRatio,
|
|
43
|
-
|
|
43
|
+
unsettledValue,
|
|
44
44
|
value,
|
|
45
45
|
};
|
|
46
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getElementLendingValues.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getElementLendingValues.ts"],"names":[],"mappings":";;;AAEA,iEAA8D;AAE9D,SAAS,cAAc,CACrB,cAAgC,EAChC,cAAgC,EAChC,YAAuB,EACvB,eAA0B;IAE1B,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC/B,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;QAC/D,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAE1C,MAAM,gBAAgB,GACpB,eAAe,IAAI,IAAI,KAAK,CAAS,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,gBAAgB,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;QACnD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IAExE,MAAM,qBAAqB,GAAW,cAAc,CAAC,MAAM,CACzD,CAAC,GAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC5B,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;QAClC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QACzC,CAAC,CAAC,CAAC,EACP,CAAC,CACF,CAAC;IACF,MAAM,oBAAoB,GAAW,cAAc,CAAC,MAAM,CACxD,CAAC,GAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC5B,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;QAClC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC;QAC7C,CAAC,CAAC,CAAC,EACP,CAAC,CACF,CAAC;IACF,OAAO,CAAC,qBAAqB,GAAG,oBAAoB,CAAC,GAAG,qBAAqB,CAAC;AAChF,CAAC;AAED,SAAgB,uBAAuB,CAAC,MAOvC;IACC,MAAM,EACJ,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,
|
|
1
|
+
{"version":3,"file":"getElementLendingValues.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getElementLendingValues.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { PortfolioAsset } from '../Portfolio';
|
|
2
|
+
import { UsdValue } from '../UsdValue';
|
|
3
|
+
export declare function getElementNFTLendingValues(params: {
|
|
4
|
+
suppliedAssets: PortfolioAsset[];
|
|
5
|
+
borrowedAssets: PortfolioAsset[];
|
|
6
|
+
rewardAssets: PortfolioAsset[];
|
|
7
|
+
lender: boolean;
|
|
8
|
+
}): {
|
|
9
|
+
borrowedValue: UsdValue;
|
|
10
|
+
suppliedValue: UsdValue;
|
|
11
|
+
rewardValue: UsdValue;
|
|
12
|
+
value: UsdValue;
|
|
13
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getElementNFTLendingValues = void 0;
|
|
4
|
+
function getElementNFTLendingValues(params) {
|
|
5
|
+
const { suppliedAssets, borrowedAssets, rewardAssets, lender } = params;
|
|
6
|
+
const suppliedValue = suppliedAssets.reduce((acc, asset) => acc !== null && asset.value !== null ? acc + asset.value : null, 0);
|
|
7
|
+
const borrowedValue = borrowedAssets.reduce((acc, asset) => acc !== null && asset.value !== null ? acc + asset.value : null, 0);
|
|
8
|
+
const rewardValue = rewardAssets.reduce((acc, asset) => acc !== null && asset.value !== null ? acc + asset.value : null, 0);
|
|
9
|
+
// Total value
|
|
10
|
+
let value = null;
|
|
11
|
+
if (borrowedValue == null) {
|
|
12
|
+
// it's an offer
|
|
13
|
+
value = suppliedValue;
|
|
14
|
+
}
|
|
15
|
+
else if (suppliedValue !== null) {
|
|
16
|
+
if (lender) {
|
|
17
|
+
// supplied sol, nft as collat
|
|
18
|
+
value = Math.min(suppliedValue, borrowedValue);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
// supplied nft as collat, borrow sol
|
|
22
|
+
value = Math.max(suppliedValue - borrowedValue, 0);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (rewardValue !== null && value !== null)
|
|
26
|
+
value += rewardValue;
|
|
27
|
+
return {
|
|
28
|
+
borrowedValue,
|
|
29
|
+
suppliedValue,
|
|
30
|
+
rewardValue,
|
|
31
|
+
value,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
exports.getElementNFTLendingValues = getElementNFTLendingValues;
|
|
35
|
+
//# sourceMappingURL=getElementNFTLendingValues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getElementNFTLendingValues.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getElementNFTLendingValues.ts"],"names":[],"mappings":";;;AAGA,SAAgB,0BAA0B,CAAC,MAK1C;IACC,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAExE,MAAM,aAAa,GAAa,cAAc,CAAC,MAAM,CACnD,CAAC,GAAa,EAAE,KAAK,EAAE,EAAE,CACvB,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACjE,CAAC,CACF,CAAC;IACF,MAAM,aAAa,GAAa,cAAc,CAAC,MAAM,CACnD,CAAC,GAAa,EAAE,KAAK,EAAE,EAAE,CACvB,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACjE,CAAC,CACF,CAAC;IACF,MAAM,WAAW,GAAa,YAAY,CAAC,MAAM,CAC/C,CAAC,GAAa,EAAE,KAAK,EAAE,EAAE,CACvB,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACjE,CAAC,CACF,CAAC;IAEF,cAAc;IACd,IAAI,KAAK,GAAG,IAAI,CAAC;IAEjB,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;QAC1B,gBAAgB;QAChB,KAAK,GAAG,aAAa,CAAC;IACxB,CAAC;SAAM,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,8BAA8B;YAC9B,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,qCAAqC;YACrC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IACD,IAAI,WAAW,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI;QAAE,KAAK,IAAI,WAAW,CAAC;IAEjE,OAAO;QACL,aAAa;QACb,aAAa;QACb,WAAW;QACX,KAAK;KACN,CAAC;AACJ,CAAC;AA/CD,gEA+CC"}
|
package/src/utils/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export * from './validTokenAddress';
|
|
|
6
6
|
export * from './formatAddress';
|
|
7
7
|
export * from './formatTokenAddress';
|
|
8
8
|
export * from './getElementLendingValues';
|
|
9
|
+
export * from './getElementNFTLendingValues';
|
|
9
10
|
export * from './compareName';
|
|
10
11
|
export * from './compareUsdValue';
|
|
11
12
|
export * from './formatTokenPrice';
|
package/src/utils/index.js
CHANGED
|
@@ -22,6 +22,7 @@ __exportStar(require("./validTokenAddress"), exports);
|
|
|
22
22
|
__exportStar(require("./formatAddress"), exports);
|
|
23
23
|
__exportStar(require("./formatTokenAddress"), exports);
|
|
24
24
|
__exportStar(require("./getElementLendingValues"), exports);
|
|
25
|
+
__exportStar(require("./getElementNFTLendingValues"), exports);
|
|
25
26
|
__exportStar(require("./compareName"), exports);
|
|
26
27
|
__exportStar(require("./compareUsdValue"), exports);
|
|
27
28
|
__exportStar(require("./formatTokenPrice"), exports);
|
package/src/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,kEAAgD;AAChD,sDAAoC;AACpC,iDAA+B;AAC/B,sDAAoC;AACpC,kDAAgC;AAChC,uDAAqC;AACrC,4DAA0C;AAC1C,gDAA8B;AAC9B,oDAAkC;AAClC,qDAAmC;AACnC,+DAA6C;AAC7C,2DAAyC;AACzC,uDAAqC;AACrC,mDAAiC;AACjC,wDAAsC;AACtC,+DAA6C;AAC7C,kEAAgD;AAChD,yDAAuC;AACvC,0DAAwC;AACxC,8DAA4C;AAC5C,mDAAiC;AACjC,yDAAuC;AACvC,mEAAiD;AACjD,+CAA6B;AAC7B,yDAAuC;AACvC,0DAAwC;AACxC,4DAA0C;AAC1C,wDAAsC;AACtC,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,sDAAoC;AACpC,uDAAqC;AACrC,8DAA4C;AAC5C,8DAA4C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,kEAAgD;AAChD,sDAAoC;AACpC,iDAA+B;AAC/B,sDAAoC;AACpC,kDAAgC;AAChC,uDAAqC;AACrC,4DAA0C;AAC1C,+DAA6C;AAC7C,gDAA8B;AAC9B,oDAAkC;AAClC,qDAAmC;AACnC,+DAA6C;AAC7C,2DAAyC;AACzC,uDAAqC;AACrC,mDAAiC;AACjC,wDAAsC;AACtC,+DAA6C;AAC7C,kEAAgD;AAChD,yDAAuC;AACvC,0DAAwC;AACxC,8DAA4C;AAC5C,mDAAiC;AACjC,yDAAuC;AACvC,mEAAiD;AACjD,+CAA6B;AAC7B,yDAAuC;AACvC,0DAAwC;AACxC,4DAA0C;AAC1C,wDAAsC;AACtC,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,sDAAoC;AACpC,uDAAqC;AACrC,8DAA4C;AAC5C,8DAA4C"}
|
|
@@ -56,8 +56,7 @@ function sortPortfolioLiquidity(portfolioLiquidity) {
|
|
|
56
56
|
exports.sortPortfolioLiquidity = sortPortfolioLiquidity;
|
|
57
57
|
function sortElementLeverage(element) {
|
|
58
58
|
const sortedElement = Object.assign({}, element);
|
|
59
|
-
sortedElement.data.
|
|
60
|
-
sortedElement.data.levPositions.sort((a, b) => (0, compareUsdValue_1.compareUsdValue)(a.value, b.value));
|
|
59
|
+
sortedElement.data.positions.sort((a, b) => (0, compareUsdValue_1.compareUsdValue)(a.value, b.value));
|
|
61
60
|
return sortedElement;
|
|
62
61
|
}
|
|
63
62
|
exports.sortElementLeverage = sortElementLeverage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sortPortfolioElement.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/sortPortfolioElement.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sortPortfolioElement.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/sortPortfolioElement.ts"],"names":[],"mappings":"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"}
|