@ledgerhq/live-countervalues 0.4.6 → 0.5.0-next.0
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 +17 -0
- package/lib/portfolio.d.ts +24 -3
- package/lib/portfolio.d.ts.map +1 -1
- package/lib/portfolio.js +24 -21
- package/lib/portfolio.js.map +1 -1
- package/lib-es/portfolio.d.ts +24 -3
- package/lib-es/portfolio.d.ts.map +1 -1
- package/lib-es/portfolio.js +23 -20
- package/lib-es/portfolio.js.map +1 -1
- package/package.json +6 -6
- package/src/__snapshots__/portfolio.test.ts.snap +2 -2
- package/src/portfolio.ts +33 -23
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @ledgerhq/live-countervalues
|
|
2
2
|
|
|
3
|
+
## 0.5.0-next.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#9691](https://github.com/LedgerHQ/ledger-live/pull/9691) [`a7b1969`](https://github.com/LedgerHQ/ledger-live/commit/a7b19697ff6d4db1e5da365a02db91498a17332c) Thanks [@thesan](https://github.com/thesan)! - Fix trend on range predating owning an asset
|
|
8
|
+
|
|
9
|
+
- [#9669](https://github.com/LedgerHQ/ledger-live/pull/9669) [`b9defcd`](https://github.com/LedgerHQ/ledger-live/commit/b9defcdcb44c6be2c141801a4e0dd27e72f83024) Thanks [@LucasWerey](https://github.com/LucasWerey)! - Add the display of token accounts with the new accounts list UI
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [[`44ae74c`](https://github.com/LedgerHQ/ledger-live/commit/44ae74c272ba803bed7c9f4fc3351e3ce8a15531), [`71bb6a9`](https://github.com/LedgerHQ/ledger-live/commit/71bb6a9adb4ac83172be5def5b25d2836380df1d), [`8ce7b0a`](https://github.com/LedgerHQ/ledger-live/commit/8ce7b0ab2d1d73ef071102f795e7c868c676b1f4), [`46a9620`](https://github.com/LedgerHQ/ledger-live/commit/46a9620b4ea6343efc28792d3b57bf84ee2a23e8), [`1e7d454`](https://github.com/LedgerHQ/ledger-live/commit/1e7d454d99f1f39880f39a120c59020725d26475), [`f1732a7`](https://github.com/LedgerHQ/ledger-live/commit/f1732a795e54f666b67e7686d59926037412caca), [`32d46cc`](https://github.com/LedgerHQ/ledger-live/commit/32d46cc77debe059ae0bcd848a21065dec7ee091), [`d694069`](https://github.com/LedgerHQ/ledger-live/commit/d6940698a49b7a0ed48f84d6e8184d80760cca4f)]:
|
|
14
|
+
- @ledgerhq/coin-framework@2.6.0-next.0
|
|
15
|
+
- @ledgerhq/types-live@6.66.0-next.0
|
|
16
|
+
- @ledgerhq/live-env@2.8.0-next.0
|
|
17
|
+
- @ledgerhq/cryptoassets@13.14.1-next.0
|
|
18
|
+
- @ledgerhq/live-network@2.0.7-next.0
|
|
19
|
+
|
|
3
20
|
## 0.4.6
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
package/lib/portfolio.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CounterValuesState } from "./types";
|
|
2
|
-
import type { Account,
|
|
2
|
+
import type { Account, AccountLike, BalanceHistory, PortfolioRange, PortfolioRangeConfig, AccountPortfolio, Portfolio, CurrencyPortfolio, AssetsDistribution } from "@ledgerhq/types-live";
|
|
3
3
|
import type { Currency } from "@ledgerhq/types-cryptoassets";
|
|
4
4
|
export declare const defaultAssetsDistribution: {
|
|
5
5
|
minShowFirst: number;
|
|
@@ -18,7 +18,27 @@ export declare function getPortfolioRangeConfig(r: PortfolioRange): PortfolioRan
|
|
|
18
18
|
export declare function getPortfolioCount(accounts: AccountLike[], range: PortfolioRange): number;
|
|
19
19
|
export declare function getPortfolioCountByDate(start: Date, range: PortfolioRange): number;
|
|
20
20
|
export declare function getBalanceHistory(account: AccountLike, range: PortfolioRange, count: number): BalanceHistory;
|
|
21
|
-
export declare function getBalanceHistoryWithCountervalue(
|
|
21
|
+
export declare function getBalanceHistoryWithCountervalue(...args: Parameters<typeof getBalanceHistoryWithChanges>): AccountPortfolio;
|
|
22
|
+
declare function getBalanceHistoryWithChanges(account: AccountLike, range: PortfolioRange, count: number, cvState: CounterValuesState, cvCurrency: Currency): {
|
|
23
|
+
history: {
|
|
24
|
+
date: Date;
|
|
25
|
+
value: number;
|
|
26
|
+
countervalue: number | null | undefined;
|
|
27
|
+
}[];
|
|
28
|
+
countervalueAvailable: boolean;
|
|
29
|
+
changes: (start?: number) => {
|
|
30
|
+
countervalueReceiveSum: number;
|
|
31
|
+
countervalueSendSum: number;
|
|
32
|
+
cryptoChange: {
|
|
33
|
+
value: number;
|
|
34
|
+
percentage: null;
|
|
35
|
+
};
|
|
36
|
+
countervalueChange: {
|
|
37
|
+
value: number;
|
|
38
|
+
percentage: number | null | undefined;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
};
|
|
22
42
|
export type GetPortfolioOptionsType = {
|
|
23
43
|
flattenSourceAccounts?: boolean;
|
|
24
44
|
};
|
|
@@ -31,5 +51,6 @@ export type GetPortfolioOptionsType = {
|
|
|
31
51
|
export declare function getPortfolio(topAccounts: AccountLike[], range: PortfolioRange, cvState: CounterValuesState, cvCurrency: Currency, options?: GetPortfolioOptionsType): Portfolio;
|
|
32
52
|
export declare function getCurrencyPortfolio(accounts: AccountLike[], range: PortfolioRange, cvState: CounterValuesState, cvCurrency: Currency): CurrencyPortfolio;
|
|
33
53
|
export declare function getAssetsDistribution(topAccounts: Account[], cvState: CounterValuesState, cvCurrency: Currency, opts?: AssetsDistributionOpts): AssetsDistribution;
|
|
34
|
-
export declare const orderAccountsByFiatValue: (accounts:
|
|
54
|
+
export declare const orderAccountsByFiatValue: (accounts: AccountLike[], counterValueState: CounterValuesState, to: Currency, fullBalance?: boolean) => AccountLike[];
|
|
55
|
+
export {};
|
|
35
56
|
//# sourceMappingURL=portfolio.d.ts.map
|
package/lib/portfolio.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.d.ts","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAQlD,OAAO,KAAK,EACV,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"portfolio.d.ts","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAQlD,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAkB,QAAQ,EAAiB,MAAM,8BAA8B,CAAC;AAE5F,eAAO,MAAM,yBAAyB;;;;;;CAMrC,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG,OAAO,yBAAyB,CAAC;AAMtE,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAEzC;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAExC;AACD,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAGzC;AAmCD,wBAAgB,SAAS,IAAI,MAAM,EAAE,CAEpC;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,CAYjE;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,cAAc,GAAG,oBAAoB,CAE/E;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,cAAc,GAAG,MAAM,CAexF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,MAAM,CAOlF;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,GACZ,cAAc,CAmBhB;AAED,wBAAgB,iCAAiC,CAC/C,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,GACvD,gBAAgB,CAGlB;AAED,iBAAS,4BAA4B,CACnC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ;;cAUZ,IAAI;eACH,MAAM;sBACC,MAAM,GAAG,IAAI,GAAG,SAAS;;;;;;;;;;;;;;;EA0C1C;AAoBD,MAAM,MAAM,uBAAuB,GAAG;IACpC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,WAAW,EAAE,WAAW,EAAE,EAC1B,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ,EACpB,OAAO,CAAC,EAAE,uBAAuB,GAChC,SAAS,CAkEX;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,WAAW,EAAE,EACvB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ,GACnB,iBAAiB,CAwCnB;AAED,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,OAAO,EAAE,EACtB,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ,EACpB,IAAI,CAAC,EAAE,sBAAsB,GAC5B,kBAAkB,CAuGpB;AAQD,eAAO,MAAM,wBAAwB,aACzB,WAAW,EAAE,qBACJ,kBAAkB,MACjC,QAAQ,gBACC,OAAO,kBAgBrB,CAAC"}
|
package/lib/portfolio.js
CHANGED
|
@@ -123,7 +123,12 @@ function getBalanceHistory(account, range, count) {
|
|
|
123
123
|
return history;
|
|
124
124
|
}
|
|
125
125
|
exports.getBalanceHistory = getBalanceHistory;
|
|
126
|
-
function getBalanceHistoryWithCountervalue(
|
|
126
|
+
function getBalanceHistoryWithCountervalue(...args) {
|
|
127
|
+
const { history, countervalueAvailable, changes } = getBalanceHistoryWithChanges(...args);
|
|
128
|
+
return { history, countervalueAvailable, ...changes() };
|
|
129
|
+
}
|
|
130
|
+
exports.getBalanceHistoryWithCountervalue = getBalanceHistoryWithCountervalue;
|
|
131
|
+
function getBalanceHistoryWithChanges(account, range, count, cvState, cvCurrency) {
|
|
127
132
|
const balanceHistory = getBalanceHistory(account, range, count);
|
|
128
133
|
const currency = (0, index_1.getAccountCurrency)(account);
|
|
129
134
|
const counterValues = (0, logic_1.calculateMany)(cvState, balanceHistory, {
|
|
@@ -144,9 +149,9 @@ function getBalanceHistoryWithCountervalue(account, range, count, cvState, cvCur
|
|
|
144
149
|
countervalue,
|
|
145
150
|
});
|
|
146
151
|
}
|
|
147
|
-
function calcChanges(
|
|
148
|
-
const from =
|
|
149
|
-
const to =
|
|
152
|
+
function calcChanges(start = 0) {
|
|
153
|
+
const from = history.at(start) ?? { value: 0, countervalue: 0 };
|
|
154
|
+
const to = history.at(-1) ?? { value: 0, countervalue: 0 };
|
|
150
155
|
return {
|
|
151
156
|
countervalueReceiveSum: 0,
|
|
152
157
|
// not available here
|
|
@@ -164,10 +169,9 @@ function getBalanceHistoryWithCountervalue(account, range, count, cvState, cvCur
|
|
|
164
169
|
return {
|
|
165
170
|
history,
|
|
166
171
|
countervalueAvailable,
|
|
167
|
-
|
|
172
|
+
changes: calcChanges,
|
|
168
173
|
};
|
|
169
174
|
}
|
|
170
|
-
exports.getBalanceHistoryWithCountervalue = getBalanceHistoryWithCountervalue;
|
|
171
175
|
function meaningfulPercentage(deltaChange, balanceDivider, percentageHighThreshold = 100000) {
|
|
172
176
|
if (deltaChange && balanceDivider && balanceDivider !== 0) {
|
|
173
177
|
const percent = deltaChange / balanceDivider;
|
|
@@ -195,15 +199,9 @@ function getPortfolio(topAccounts, range, cvState, cvCurrency, options) {
|
|
|
195
199
|
const availables = [];
|
|
196
200
|
const unavailableAccounts = [];
|
|
197
201
|
for (const account of accounts) {
|
|
198
|
-
const p =
|
|
202
|
+
const p = getBalanceHistoryWithChanges(account, range, count, cvState, cvCurrency);
|
|
199
203
|
if (p.countervalueAvailable) {
|
|
200
|
-
availables.push({
|
|
201
|
-
account,
|
|
202
|
-
history: p.history,
|
|
203
|
-
change: p.countervalueChange,
|
|
204
|
-
countervalueReceiveSum: p.countervalueReceiveSum,
|
|
205
|
-
countervalueSendSum: p.countervalueSendSum,
|
|
206
|
-
});
|
|
204
|
+
availables.push({ account, history: p.history, changes: p.changes });
|
|
207
205
|
}
|
|
208
206
|
else {
|
|
209
207
|
unavailableAccounts.push(account);
|
|
@@ -214,18 +212,23 @@ function getPortfolio(topAccounts, range, cvState, cvCurrency, options) {
|
|
|
214
212
|
date,
|
|
215
213
|
value: histories.reduce((sum, h) => sum + (h[i]?.countervalue ?? 0), 0),
|
|
216
214
|
}));
|
|
217
|
-
const
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
215
|
+
const firstSignificantHistoryIndex = balanceHistory.findIndex(balance => balance.value !== 0);
|
|
216
|
+
const firstSignificantHistoryValue = balanceHistory.at(firstSignificantHistoryIndex)?.value ?? 0;
|
|
217
|
+
const [countervalueChangeValue, countervalueReceiveSum, countervalueSendSum] = availables.reduce((sums, { changes }) => {
|
|
218
|
+
const { countervalueChange, countervalueReceiveSum, countervalueSendSum } = changes(firstSignificantHistoryIndex);
|
|
219
|
+
return [
|
|
220
|
+
sums[0] + countervalueChange.value,
|
|
221
|
+
sums[1] + countervalueReceiveSum,
|
|
222
|
+
sums[2] + countervalueSendSum,
|
|
223
|
+
];
|
|
224
|
+
}, [0, 0, 0]);
|
|
222
225
|
// in case there were no receive, we just track the market change
|
|
223
226
|
// weighted by the current balances
|
|
224
227
|
const balanceDivider = (0, live_env_1.getEnv)("EXPERIMENTAL_ROI_CALCULATION")
|
|
225
228
|
? countervalueReceiveSum === 0
|
|
226
|
-
?
|
|
229
|
+
? firstSignificantHistoryValue + countervalueSendSum
|
|
227
230
|
: countervalueReceiveSum
|
|
228
|
-
:
|
|
231
|
+
: firstSignificantHistoryValue;
|
|
229
232
|
return {
|
|
230
233
|
balanceHistory,
|
|
231
234
|
balanceAvailable: accounts.length === 0 || availables.length > 0,
|
package/lib/portfolio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.js","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"portfolio.js","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"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"}
|
package/lib-es/portfolio.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CounterValuesState } from "./types";
|
|
2
|
-
import type { Account,
|
|
2
|
+
import type { Account, AccountLike, BalanceHistory, PortfolioRange, PortfolioRangeConfig, AccountPortfolio, Portfolio, CurrencyPortfolio, AssetsDistribution } from "@ledgerhq/types-live";
|
|
3
3
|
import type { Currency } from "@ledgerhq/types-cryptoassets";
|
|
4
4
|
export declare const defaultAssetsDistribution: {
|
|
5
5
|
minShowFirst: number;
|
|
@@ -18,7 +18,27 @@ export declare function getPortfolioRangeConfig(r: PortfolioRange): PortfolioRan
|
|
|
18
18
|
export declare function getPortfolioCount(accounts: AccountLike[], range: PortfolioRange): number;
|
|
19
19
|
export declare function getPortfolioCountByDate(start: Date, range: PortfolioRange): number;
|
|
20
20
|
export declare function getBalanceHistory(account: AccountLike, range: PortfolioRange, count: number): BalanceHistory;
|
|
21
|
-
export declare function getBalanceHistoryWithCountervalue(
|
|
21
|
+
export declare function getBalanceHistoryWithCountervalue(...args: Parameters<typeof getBalanceHistoryWithChanges>): AccountPortfolio;
|
|
22
|
+
declare function getBalanceHistoryWithChanges(account: AccountLike, range: PortfolioRange, count: number, cvState: CounterValuesState, cvCurrency: Currency): {
|
|
23
|
+
history: {
|
|
24
|
+
date: Date;
|
|
25
|
+
value: number;
|
|
26
|
+
countervalue: number | null | undefined;
|
|
27
|
+
}[];
|
|
28
|
+
countervalueAvailable: boolean;
|
|
29
|
+
changes: (start?: number) => {
|
|
30
|
+
countervalueReceiveSum: number;
|
|
31
|
+
countervalueSendSum: number;
|
|
32
|
+
cryptoChange: {
|
|
33
|
+
value: number;
|
|
34
|
+
percentage: null;
|
|
35
|
+
};
|
|
36
|
+
countervalueChange: {
|
|
37
|
+
value: number;
|
|
38
|
+
percentage: number | null | undefined;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
};
|
|
22
42
|
export type GetPortfolioOptionsType = {
|
|
23
43
|
flattenSourceAccounts?: boolean;
|
|
24
44
|
};
|
|
@@ -31,5 +51,6 @@ export type GetPortfolioOptionsType = {
|
|
|
31
51
|
export declare function getPortfolio(topAccounts: AccountLike[], range: PortfolioRange, cvState: CounterValuesState, cvCurrency: Currency, options?: GetPortfolioOptionsType): Portfolio;
|
|
32
52
|
export declare function getCurrencyPortfolio(accounts: AccountLike[], range: PortfolioRange, cvState: CounterValuesState, cvCurrency: Currency): CurrencyPortfolio;
|
|
33
53
|
export declare function getAssetsDistribution(topAccounts: Account[], cvState: CounterValuesState, cvCurrency: Currency, opts?: AssetsDistributionOpts): AssetsDistribution;
|
|
34
|
-
export declare const orderAccountsByFiatValue: (accounts:
|
|
54
|
+
export declare const orderAccountsByFiatValue: (accounts: AccountLike[], counterValueState: CounterValuesState, to: Currency, fullBalance?: boolean) => AccountLike[];
|
|
55
|
+
export {};
|
|
35
56
|
//# sourceMappingURL=portfolio.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.d.ts","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAQlD,OAAO,KAAK,EACV,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"portfolio.d.ts","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAQlD,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAkB,QAAQ,EAAiB,MAAM,8BAA8B,CAAC;AAE5F,eAAO,MAAM,yBAAyB;;;;;;CAMrC,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG,OAAO,yBAAyB,CAAC;AAMtE,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAEzC;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAExC;AACD,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAGzC;AAmCD,wBAAgB,SAAS,IAAI,MAAM,EAAE,CAEpC;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,CAYjE;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,cAAc,GAAG,oBAAoB,CAE/E;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,cAAc,GAAG,MAAM,CAexF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,MAAM,CAOlF;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,GACZ,cAAc,CAmBhB;AAED,wBAAgB,iCAAiC,CAC/C,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,GACvD,gBAAgB,CAGlB;AAED,iBAAS,4BAA4B,CACnC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ;;cAUZ,IAAI;eACH,MAAM;sBACC,MAAM,GAAG,IAAI,GAAG,SAAS;;;;;;;;;;;;;;;EA0C1C;AAoBD,MAAM,MAAM,uBAAuB,GAAG;IACpC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,WAAW,EAAE,WAAW,EAAE,EAC1B,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ,EACpB,OAAO,CAAC,EAAE,uBAAuB,GAChC,SAAS,CAkEX;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,WAAW,EAAE,EACvB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ,GACnB,iBAAiB,CAwCnB;AAED,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,OAAO,EAAE,EACtB,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ,EACpB,IAAI,CAAC,EAAE,sBAAsB,GAC5B,kBAAkB,CAuGpB;AAQD,eAAO,MAAM,wBAAwB,aACzB,WAAW,EAAE,qBACJ,kBAAkB,MACjC,QAAQ,gBACC,OAAO,kBAgBrB,CAAC"}
|
package/lib-es/portfolio.js
CHANGED
|
@@ -111,7 +111,11 @@ export function getBalanceHistory(account, range, count) {
|
|
|
111
111
|
}
|
|
112
112
|
return history;
|
|
113
113
|
}
|
|
114
|
-
export function getBalanceHistoryWithCountervalue(
|
|
114
|
+
export function getBalanceHistoryWithCountervalue(...args) {
|
|
115
|
+
const { history, countervalueAvailable, changes } = getBalanceHistoryWithChanges(...args);
|
|
116
|
+
return { history, countervalueAvailable, ...changes() };
|
|
117
|
+
}
|
|
118
|
+
function getBalanceHistoryWithChanges(account, range, count, cvState, cvCurrency) {
|
|
115
119
|
const balanceHistory = getBalanceHistory(account, range, count);
|
|
116
120
|
const currency = getAccountCurrency(account);
|
|
117
121
|
const counterValues = calculateMany(cvState, balanceHistory, {
|
|
@@ -132,9 +136,9 @@ export function getBalanceHistoryWithCountervalue(account, range, count, cvState
|
|
|
132
136
|
countervalue,
|
|
133
137
|
});
|
|
134
138
|
}
|
|
135
|
-
function calcChanges(
|
|
136
|
-
const from =
|
|
137
|
-
const to =
|
|
139
|
+
function calcChanges(start = 0) {
|
|
140
|
+
const from = history.at(start) ?? { value: 0, countervalue: 0 };
|
|
141
|
+
const to = history.at(-1) ?? { value: 0, countervalue: 0 };
|
|
138
142
|
return {
|
|
139
143
|
countervalueReceiveSum: 0,
|
|
140
144
|
// not available here
|
|
@@ -152,7 +156,7 @@ export function getBalanceHistoryWithCountervalue(account, range, count, cvState
|
|
|
152
156
|
return {
|
|
153
157
|
history,
|
|
154
158
|
countervalueAvailable,
|
|
155
|
-
|
|
159
|
+
changes: calcChanges,
|
|
156
160
|
};
|
|
157
161
|
}
|
|
158
162
|
function meaningfulPercentage(deltaChange, balanceDivider, percentageHighThreshold = 100000) {
|
|
@@ -182,15 +186,9 @@ export function getPortfolio(topAccounts, range, cvState, cvCurrency, options) {
|
|
|
182
186
|
const availables = [];
|
|
183
187
|
const unavailableAccounts = [];
|
|
184
188
|
for (const account of accounts) {
|
|
185
|
-
const p =
|
|
189
|
+
const p = getBalanceHistoryWithChanges(account, range, count, cvState, cvCurrency);
|
|
186
190
|
if (p.countervalueAvailable) {
|
|
187
|
-
availables.push({
|
|
188
|
-
account,
|
|
189
|
-
history: p.history,
|
|
190
|
-
change: p.countervalueChange,
|
|
191
|
-
countervalueReceiveSum: p.countervalueReceiveSum,
|
|
192
|
-
countervalueSendSum: p.countervalueSendSum,
|
|
193
|
-
});
|
|
191
|
+
availables.push({ account, history: p.history, changes: p.changes });
|
|
194
192
|
}
|
|
195
193
|
else {
|
|
196
194
|
unavailableAccounts.push(account);
|
|
@@ -201,18 +199,23 @@ export function getPortfolio(topAccounts, range, cvState, cvCurrency, options) {
|
|
|
201
199
|
date,
|
|
202
200
|
value: histories.reduce((sum, h) => sum + (h[i]?.countervalue ?? 0), 0),
|
|
203
201
|
}));
|
|
204
|
-
const
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
202
|
+
const firstSignificantHistoryIndex = balanceHistory.findIndex(balance => balance.value !== 0);
|
|
203
|
+
const firstSignificantHistoryValue = balanceHistory.at(firstSignificantHistoryIndex)?.value ?? 0;
|
|
204
|
+
const [countervalueChangeValue, countervalueReceiveSum, countervalueSendSum] = availables.reduce((sums, { changes }) => {
|
|
205
|
+
const { countervalueChange, countervalueReceiveSum, countervalueSendSum } = changes(firstSignificantHistoryIndex);
|
|
206
|
+
return [
|
|
207
|
+
sums[0] + countervalueChange.value,
|
|
208
|
+
sums[1] + countervalueReceiveSum,
|
|
209
|
+
sums[2] + countervalueSendSum,
|
|
210
|
+
];
|
|
211
|
+
}, [0, 0, 0]);
|
|
209
212
|
// in case there were no receive, we just track the market change
|
|
210
213
|
// weighted by the current balances
|
|
211
214
|
const balanceDivider = getEnv("EXPERIMENTAL_ROI_CALCULATION")
|
|
212
215
|
? countervalueReceiveSum === 0
|
|
213
|
-
?
|
|
216
|
+
? firstSignificantHistoryValue + countervalueSendSum
|
|
214
217
|
: countervalueReceiveSum
|
|
215
|
-
:
|
|
218
|
+
: firstSignificantHistoryValue;
|
|
216
219
|
return {
|
|
217
220
|
balanceHistory,
|
|
218
221
|
balanceAvailable: accounts.length === 0 || availables.length > 0,
|
package/lib-es/portfolio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.js","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"portfolio.js","sourceRoot":"","sources":["../src/portfolio.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/live-countervalues",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0-next.0",
|
|
4
4
|
"description": "Ledger Live countervalues module",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ledger"
|
|
@@ -21,14 +21,14 @@
|
|
|
21
21
|
"types": "lib/index.d.ts",
|
|
22
22
|
"license": "Apache-2.0",
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@ledgerhq/types-live": "6.
|
|
24
|
+
"@ledgerhq/types-live": "6.66.0-next.0",
|
|
25
25
|
"@ledgerhq/types-cryptoassets": "7.21.0",
|
|
26
|
-
"@ledgerhq/cryptoassets": "13.14.0",
|
|
27
|
-
"@ledgerhq/coin-framework": "2.
|
|
26
|
+
"@ledgerhq/cryptoassets": "13.14.1-next.0",
|
|
27
|
+
"@ledgerhq/coin-framework": "2.6.0-next.0",
|
|
28
28
|
"@ledgerhq/logs": "6.12.0",
|
|
29
|
+
"@ledgerhq/live-network": "2.0.7-next.0",
|
|
29
30
|
"@ledgerhq/live-promise": "0.1.0",
|
|
30
|
-
"@ledgerhq/live-env": "2.
|
|
31
|
-
"@ledgerhq/live-network": "2.0.6"
|
|
31
|
+
"@ledgerhq/live-env": "2.8.0-next.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/jest": "^29.5.10",
|
|
@@ -6554,8 +6554,8 @@ exports[`Portfolio getPortfolio snapshot 1`] = `
|
|
|
6554
6554
|
},
|
|
6555
6555
|
],
|
|
6556
6556
|
"countervalueChange": {
|
|
6557
|
-
"percentage":
|
|
6558
|
-
"value":
|
|
6557
|
+
"percentage": 323.64,
|
|
6558
|
+
"value": 16182,
|
|
6559
6559
|
},
|
|
6560
6560
|
"countervalueReceiveSum": 0,
|
|
6561
6561
|
"countervalueSendSum": 0,
|
package/src/portfolio.ts
CHANGED
|
@@ -8,12 +8,10 @@ import {
|
|
|
8
8
|
import { getEnv } from "@ledgerhq/live-env";
|
|
9
9
|
import type {
|
|
10
10
|
Account,
|
|
11
|
-
TokenAccount,
|
|
12
11
|
AccountLike,
|
|
13
12
|
BalanceHistory,
|
|
14
13
|
PortfolioRange,
|
|
15
14
|
PortfolioRangeConfig,
|
|
16
|
-
BalanceHistoryWithCountervalue,
|
|
17
15
|
AccountPortfolio,
|
|
18
16
|
Portfolio,
|
|
19
17
|
CurrencyPortfolio,
|
|
@@ -152,12 +150,19 @@ export function getBalanceHistory(
|
|
|
152
150
|
}
|
|
153
151
|
|
|
154
152
|
export function getBalanceHistoryWithCountervalue(
|
|
153
|
+
...args: Parameters<typeof getBalanceHistoryWithChanges>
|
|
154
|
+
): AccountPortfolio {
|
|
155
|
+
const { history, countervalueAvailable, changes } = getBalanceHistoryWithChanges(...args);
|
|
156
|
+
return { history, countervalueAvailable, ...changes() };
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
function getBalanceHistoryWithChanges(
|
|
155
160
|
account: AccountLike,
|
|
156
161
|
range: PortfolioRange,
|
|
157
162
|
count: number,
|
|
158
163
|
cvState: CounterValuesState,
|
|
159
164
|
cvCurrency: Currency,
|
|
160
|
-
)
|
|
165
|
+
) {
|
|
161
166
|
const balanceHistory = getBalanceHistory(account, range, count);
|
|
162
167
|
const currency = getAccountCurrency(account);
|
|
163
168
|
const counterValues = calculateMany(cvState, balanceHistory, {
|
|
@@ -184,9 +189,9 @@ export function getBalanceHistoryWithCountervalue(
|
|
|
184
189
|
});
|
|
185
190
|
}
|
|
186
191
|
|
|
187
|
-
function calcChanges(
|
|
188
|
-
const from =
|
|
189
|
-
const to =
|
|
192
|
+
function calcChanges(start = 0) {
|
|
193
|
+
const from = history.at(start) ?? { value: 0, countervalue: 0 };
|
|
194
|
+
const to = history.at(-1) ?? { value: 0, countervalue: 0 };
|
|
190
195
|
return {
|
|
191
196
|
countervalueReceiveSum: 0,
|
|
192
197
|
// not available here
|
|
@@ -208,7 +213,7 @@ export function getBalanceHistoryWithCountervalue(
|
|
|
208
213
|
return {
|
|
209
214
|
history,
|
|
210
215
|
countervalueAvailable,
|
|
211
|
-
|
|
216
|
+
changes: calcChanges,
|
|
212
217
|
};
|
|
213
218
|
}
|
|
214
219
|
|
|
@@ -258,15 +263,9 @@ export function getPortfolio(
|
|
|
258
263
|
const unavailableAccounts = [];
|
|
259
264
|
|
|
260
265
|
for (const account of accounts) {
|
|
261
|
-
const p =
|
|
266
|
+
const p = getBalanceHistoryWithChanges(account, range, count, cvState, cvCurrency);
|
|
262
267
|
if (p.countervalueAvailable) {
|
|
263
|
-
availables.push({
|
|
264
|
-
account,
|
|
265
|
-
history: p.history,
|
|
266
|
-
change: p.countervalueChange,
|
|
267
|
-
countervalueReceiveSum: p.countervalueReceiveSum,
|
|
268
|
-
countervalueSendSum: p.countervalueSendSum,
|
|
269
|
-
});
|
|
268
|
+
availables.push({ account, history: p.history, changes: p.changes });
|
|
270
269
|
} else {
|
|
271
270
|
unavailableAccounts.push(account);
|
|
272
271
|
}
|
|
@@ -277,21 +276,32 @@ export function getPortfolio(
|
|
|
277
276
|
date,
|
|
278
277
|
value: histories.reduce((sum, h) => sum + (h[i]?.countervalue ?? 0), 0),
|
|
279
278
|
}));
|
|
279
|
+
|
|
280
|
+
const firstSignificantHistoryIndex = balanceHistory.findIndex(balance => balance.value !== 0);
|
|
281
|
+
const firstSignificantHistoryValue = balanceHistory.at(firstSignificantHistoryIndex)?.value ?? 0;
|
|
282
|
+
|
|
280
283
|
const [countervalueChangeValue, countervalueReceiveSum, countervalueSendSum] = availables.reduce(
|
|
281
|
-
(
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
284
|
+
(sums, { changes }) => {
|
|
285
|
+
const { countervalueChange, countervalueReceiveSum, countervalueSendSum } = changes(
|
|
286
|
+
firstSignificantHistoryIndex,
|
|
287
|
+
);
|
|
288
|
+
return [
|
|
289
|
+
sums[0] + countervalueChange.value,
|
|
290
|
+
sums[1] + countervalueReceiveSum,
|
|
291
|
+
sums[2] + countervalueSendSum,
|
|
292
|
+
];
|
|
293
|
+
},
|
|
286
294
|
[0, 0, 0],
|
|
287
295
|
);
|
|
296
|
+
|
|
288
297
|
// in case there were no receive, we just track the market change
|
|
289
298
|
// weighted by the current balances
|
|
290
299
|
const balanceDivider = getEnv("EXPERIMENTAL_ROI_CALCULATION")
|
|
291
300
|
? countervalueReceiveSum === 0
|
|
292
|
-
?
|
|
301
|
+
? firstSignificantHistoryValue + countervalueSendSum
|
|
293
302
|
: countervalueReceiveSum
|
|
294
|
-
:
|
|
303
|
+
: firstSignificantHistoryValue;
|
|
304
|
+
|
|
295
305
|
return {
|
|
296
306
|
balanceHistory,
|
|
297
307
|
balanceAvailable: accounts.length === 0 || availables.length > 0,
|
|
@@ -473,7 +483,7 @@ const assetsDistributionNotAvailable: AssetsDistribution = {
|
|
|
473
483
|
};
|
|
474
484
|
|
|
475
485
|
export const orderAccountsByFiatValue = (
|
|
476
|
-
accounts:
|
|
486
|
+
accounts: AccountLike[],
|
|
477
487
|
counterValueState: CounterValuesState,
|
|
478
488
|
to: Currency,
|
|
479
489
|
fullBalance: boolean = true,
|