@sonarwatch/portfolio-core 0.11.39 → 0.11.40
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
CHANGED
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [0.11.40](https://github.com/sonarwatch/portfolio/compare/core-0.11.39...core-0.11.40) (2024-01-19)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
5
9
|
## [0.11.39](https://github.com/sonarwatch/portfolio/compare/core-0.11.38...core-0.11.39) (2024-01-16)
|
|
6
10
|
|
|
7
11
|
|
package/package.json
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { PortfolioAsset, PortfolioAssetCollectible, PortfolioAssetGeneric, PortfolioAssetToken } from '../Portfolio';
|
|
2
|
+
import { Yield } from '../Yield';
|
|
3
|
+
export declare function sortAssetsWithYields(assets: PortfolioAsset[], yields: Yield[][]): {
|
|
4
|
+
sortedAssets: PortfolioAsset[];
|
|
5
|
+
sortedYields: Yield[][];
|
|
6
|
+
};
|
|
2
7
|
export declare function sortMultipleAssets(assets: PortfolioAsset[]): PortfolioAsset[];
|
|
3
8
|
export declare function sortAssetCollectibles(a: PortfolioAssetCollectible, b: PortfolioAssetCollectible): number;
|
|
4
9
|
export declare function sortAssetTokens(a: PortfolioAssetToken, b: PortfolioAssetToken): number;
|
|
5
10
|
export declare function sortAssetGenerics(a: PortfolioAssetGeneric, b: PortfolioAssetGeneric): number;
|
|
11
|
+
export declare function sortAssets(a: PortfolioAsset, b: PortfolioAsset): number;
|
package/src/utils/sortAssets.js
CHANGED
|
@@ -1,41 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sortAssetGenerics = exports.sortAssetTokens = exports.sortAssetCollectibles = exports.sortMultipleAssets = void 0;
|
|
3
|
+
exports.sortAssets = exports.sortAssetGenerics = exports.sortAssetTokens = exports.sortAssetCollectibles = exports.sortMultipleAssets = exports.sortAssetsWithYields = void 0;
|
|
4
4
|
const Portfolio_1 = require("../Portfolio");
|
|
5
5
|
const compareName_1 = require("./compareName");
|
|
6
6
|
const compareUsdValue_1 = require("./compareUsdValue");
|
|
7
|
+
function sortAssetsWithYields(assets, yields) {
|
|
8
|
+
const pairedArray = assets.map((asset, index) => ({
|
|
9
|
+
asset,
|
|
10
|
+
yield: yields[index],
|
|
11
|
+
}));
|
|
12
|
+
pairedArray.sort((a, b) => sortAssets(a.asset, b.asset));
|
|
13
|
+
const sortedAssets = pairedArray.map((pair) => pair.asset);
|
|
14
|
+
const sortedYields = pairedArray.map((pair) => pair.yield);
|
|
15
|
+
return { sortedAssets, sortedYields };
|
|
16
|
+
}
|
|
17
|
+
exports.sortAssetsWithYields = sortAssetsWithYields;
|
|
7
18
|
function sortMultipleAssets(assets) {
|
|
8
19
|
const sortedAssets = [...assets];
|
|
9
|
-
sortedAssets.sort((a, b) =>
|
|
10
|
-
if (a.type === Portfolio_1.PortfolioAssetType.token &&
|
|
11
|
-
b.type === Portfolio_1.PortfolioAssetType.token) {
|
|
12
|
-
return sortAssetTokens(a, b);
|
|
13
|
-
}
|
|
14
|
-
if (a.type === Portfolio_1.PortfolioAssetType.collectible &&
|
|
15
|
-
b.type === Portfolio_1.PortfolioAssetType.collectible) {
|
|
16
|
-
return sortAssetCollectibles(a, b);
|
|
17
|
-
}
|
|
18
|
-
if (a.type === Portfolio_1.PortfolioAssetType.generic &&
|
|
19
|
-
b.type === Portfolio_1.PortfolioAssetType.generic) {
|
|
20
|
-
return sortAssetGenerics(a, b);
|
|
21
|
-
}
|
|
22
|
-
if (a.type === b.type) {
|
|
23
|
-
return (0, compareUsdValue_1.compareUsdValue)(a.value, b.value);
|
|
24
|
-
}
|
|
25
|
-
if (a.type === Portfolio_1.PortfolioAssetType.generic)
|
|
26
|
-
return 1;
|
|
27
|
-
if (b.type === Portfolio_1.PortfolioAssetType.generic)
|
|
28
|
-
return -1;
|
|
29
|
-
if (a.type === Portfolio_1.PortfolioAssetType.token)
|
|
30
|
-
return 1;
|
|
31
|
-
if (b.type === Portfolio_1.PortfolioAssetType.token)
|
|
32
|
-
return -1;
|
|
33
|
-
if (a.type === Portfolio_1.PortfolioAssetType.collectible)
|
|
34
|
-
return 1;
|
|
35
|
-
if (b.type === Portfolio_1.PortfolioAssetType.collectible)
|
|
36
|
-
return -1;
|
|
37
|
-
return 0;
|
|
38
|
-
});
|
|
20
|
+
sortedAssets.sort((a, b) => sortAssets(a, b));
|
|
39
21
|
return sortedAssets;
|
|
40
22
|
}
|
|
41
23
|
exports.sortMultipleAssets = sortMultipleAssets;
|
|
@@ -63,4 +45,35 @@ function sortAssetGenerics(a, b) {
|
|
|
63
45
|
return r;
|
|
64
46
|
}
|
|
65
47
|
exports.sortAssetGenerics = sortAssetGenerics;
|
|
48
|
+
function sortAssets(a, b) {
|
|
49
|
+
if (a.type === Portfolio_1.PortfolioAssetType.token &&
|
|
50
|
+
b.type === Portfolio_1.PortfolioAssetType.token) {
|
|
51
|
+
return sortAssetTokens(a, b);
|
|
52
|
+
}
|
|
53
|
+
if (a.type === Portfolio_1.PortfolioAssetType.collectible &&
|
|
54
|
+
b.type === Portfolio_1.PortfolioAssetType.collectible) {
|
|
55
|
+
return sortAssetCollectibles(a, b);
|
|
56
|
+
}
|
|
57
|
+
if (a.type === Portfolio_1.PortfolioAssetType.generic &&
|
|
58
|
+
b.type === Portfolio_1.PortfolioAssetType.generic) {
|
|
59
|
+
return sortAssetGenerics(a, b);
|
|
60
|
+
}
|
|
61
|
+
if (a.type === b.type) {
|
|
62
|
+
return (0, compareUsdValue_1.compareUsdValue)(a.value, b.value);
|
|
63
|
+
}
|
|
64
|
+
if (a.type === Portfolio_1.PortfolioAssetType.generic)
|
|
65
|
+
return 1;
|
|
66
|
+
if (b.type === Portfolio_1.PortfolioAssetType.generic)
|
|
67
|
+
return -1;
|
|
68
|
+
if (a.type === Portfolio_1.PortfolioAssetType.token)
|
|
69
|
+
return 1;
|
|
70
|
+
if (b.type === Portfolio_1.PortfolioAssetType.token)
|
|
71
|
+
return -1;
|
|
72
|
+
if (a.type === Portfolio_1.PortfolioAssetType.collectible)
|
|
73
|
+
return 1;
|
|
74
|
+
if (b.type === Portfolio_1.PortfolioAssetType.collectible)
|
|
75
|
+
return -1;
|
|
76
|
+
return 0;
|
|
77
|
+
}
|
|
78
|
+
exports.sortAssets = sortAssets;
|
|
66
79
|
//# sourceMappingURL=sortAssets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sortAssets.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/sortAssets.ts"],"names":[],"mappings":";;;AAAA,4CAMsB;
|
|
1
|
+
{"version":3,"file":"sortAssets.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/sortAssets.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,8 +25,15 @@ function sortElementMultiple(element) {
|
|
|
25
25
|
exports.sortElementMultiple = sortElementMultiple;
|
|
26
26
|
function sortElementBorrowLend(element) {
|
|
27
27
|
const sE = element;
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
// Borrows
|
|
29
|
+
const sortedBorrowedAssetsAndYields = (0, sortAssets_1.sortAssetsWithYields)(sE.data.borrowedAssets, sE.data.borrowedYields);
|
|
30
|
+
sE.data.borrowedAssets = sortedBorrowedAssetsAndYields.sortedAssets;
|
|
31
|
+
sE.data.borrowedYields = sortedBorrowedAssetsAndYields.sortedYields;
|
|
32
|
+
// Supplies
|
|
33
|
+
const sortedSuppliedAssetsAndYields = (0, sortAssets_1.sortAssetsWithYields)(sE.data.suppliedAssets, sE.data.suppliedYields);
|
|
34
|
+
sE.data.suppliedAssets = sortedSuppliedAssetsAndYields.sortedAssets;
|
|
35
|
+
sE.data.suppliedYields = sortedSuppliedAssetsAndYields.sortedYields;
|
|
36
|
+
// Rewards
|
|
30
37
|
sE.data.rewardAssets = (0, sortAssets_1.sortMultipleAssets)(sE.data.rewardAssets);
|
|
31
38
|
return sE;
|
|
32
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sortPortfolioElement.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/sortPortfolioElement.ts"],"names":[],"mappings":";;;AAAA,uDAAoD;AACpD,4CAOsB;AACtB,
|
|
1
|
+
{"version":3,"file":"sortPortfolioElement.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/sortPortfolioElement.ts"],"names":[],"mappings":";;;AAAA,uDAAoD;AACpD,4CAOsB;AACtB,6CAAwE;AAExE,SAAgB,oBAAoB,CAClC,OAAyB;IAEzB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,gCAAoB,CAAC,QAAQ;YAChC,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACtC,KAAK,gCAAoB,CAAC,UAAU;YAClC,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC,KAAK,gCAAoB,CAAC,SAAS;YACjC,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvC;YACE,OAAO,OAAO,CAAC;IACnB,CAAC;AACH,CAAC;AAbD,oDAaC;AAED,SAAgB,mBAAmB,CACjC,OAAiC;IAEjC,MAAM,aAAa,GAAG,OAAO,CAAC;IAC9B,aAAa,CAAC,IAAI,CAAC,MAAM,GAAG,IAAA,+BAAkB,EAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1E,OAAO,aAAa,CAAC;AACvB,CAAC;AAND,kDAMC;AAED,SAAgB,qBAAqB,CACnC,OAAmC;IAEnC,MAAM,EAAE,GAAG,OAAO,CAAC;IAEnB,UAAU;IACV,MAAM,6BAA6B,GAAG,IAAA,iCAAoB,EACxD,EAAE,CAAC,IAAI,CAAC,cAAc,EACtB,EAAE,CAAC,IAAI,CAAC,cAAc,CACvB,CAAC;IACF,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,6BAA6B,CAAC,YAAY,CAAC;IACpE,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,6BAA6B,CAAC,YAAY,CAAC;IAEpE,WAAW;IACX,MAAM,6BAA6B,GAAG,IAAA,iCAAoB,EACxD,EAAE,CAAC,IAAI,CAAC,cAAc,EACtB,EAAE,CAAC,IAAI,CAAC,cAAc,CACvB,CAAC;IACF,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,6BAA6B,CAAC,YAAY,CAAC;IACpE,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,6BAA6B,CAAC,YAAY,CAAC;IAEpE,UAAU;IACV,EAAE,CAAC,IAAI,CAAC,YAAY,GAAG,IAAA,+BAAkB,EAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAChE,OAAO,EAAE,CAAC;AACZ,CAAC;AAxBD,sDAwBC;AAED,SAAgB,oBAAoB,CAClC,OAAkC;IAElC,MAAM,aAAa,GAAG,OAAO,CAAC;IAC9B,aAAa,CAAC,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACxE,sBAAsB,CAAC,CAAC,CAAC,CAC1B,CAAC;IACF,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC3C,IAAA,iCAAe,EAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAClC,CAAC;IACF,OAAO,aAAa,CAAC;AACvB,CAAC;AAXD,oDAWC;AAED,SAAgB,sBAAsB,CACpC,kBAAsC;IAEtC,MAAM,UAAU,GAAG,kBAAkB,CAAC;IACtC,UAAU,CAAC,MAAM,GAAG,IAAA,+BAAkB,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC1D,UAAU,CAAC,YAAY,GAAG,IAAA,+BAAkB,EAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACtE,OAAO,UAAU,CAAC;AACpB,CAAC;AAPD,wDAOC"}
|