@ledgerhq/live-countervalues 0.1.2 → 0.1.3-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/.unimportedrc.json +1 -1
- package/CHANGELOG.md +12 -0
- package/lib/logic.d.ts +6 -0
- package/lib/logic.d.ts.map +1 -1
- package/lib/logic.js +25 -4
- package/lib/logic.js.map +1 -1
- package/lib/portfolio.d.ts +66 -0
- package/lib/portfolio.d.ts.map +1 -0
- package/lib/portfolio.js +428 -0
- package/lib/portfolio.js.map +1 -0
- package/lib/portfolio.test.d.ts +2 -0
- package/lib/portfolio.test.d.ts.map +1 -0
- package/lib/portfolio.test.js +278 -0
- package/lib/portfolio.test.js.map +1 -0
- package/lib-es/logic.d.ts +6 -0
- package/lib-es/logic.d.ts.map +1 -1
- package/lib-es/logic.js +22 -3
- package/lib-es/logic.js.map +1 -1
- package/lib-es/portfolio.d.ts +66 -0
- package/lib-es/portfolio.d.ts.map +1 -0
- package/lib-es/portfolio.js +411 -0
- package/lib-es/portfolio.js.map +1 -0
- package/lib-es/portfolio.test.d.ts +2 -0
- package/lib-es/portfolio.test.d.ts.map +1 -0
- package/lib-es/portfolio.test.js +276 -0
- package/lib-es/portfolio.test.js.map +1 -0
- package/package.json +7 -7
- package/src/__snapshots__/portfolio.test.ts.snap +7461 -0
- package/src/logic.ts +39 -13
- package/src/portfolio.test.ts +323 -0
- package/src/portfolio.ts +539 -0
package/.unimportedrc.json
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @ledgerhq/live-countervalues
|
|
2
2
|
|
|
3
|
+
## 0.1.3-next.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [[`4744c31`](https://github.com/LedgerHQ/ledger-live/commit/4744c3136021f1f47ad1617f2c84f47ac0647370), [`0dd1546`](https://github.com/LedgerHQ/ledger-live/commit/0dd15467070cbf7fcbb9d9055a4535f6a25b2ad0), [`4715e4c`](https://github.com/LedgerHQ/ledger-live/commit/4715e4c411fa2396330ebcb810aeb6bfc9892e88), [`6de15bc`](https://github.com/LedgerHQ/ledger-live/commit/6de15bc96e8b97a2a6815cf3fb1da874f7044b49), [`9c83695`](https://github.com/LedgerHQ/ledger-live/commit/9c8369580b91d82021d4ec28ad7a49dc4ba42e4f), [`2fd465e`](https://github.com/LedgerHQ/ledger-live/commit/2fd465ee730b11594d231503cfb940b984fa2f5a), [`dfac39b`](https://github.com/LedgerHQ/ledger-live/commit/dfac39b2086f0475d1bc8065032bfe27cbf424f6), [`7fb3eb2`](https://github.com/LedgerHQ/ledger-live/commit/7fb3eb266acdca143c94d2fce74329809ebfbb79), [`dfac39b`](https://github.com/LedgerHQ/ledger-live/commit/dfac39b2086f0475d1bc8065032bfe27cbf424f6), [`b34f5cd`](https://github.com/LedgerHQ/ledger-live/commit/b34f5cdda0b7bf34750d258cc8b1c91304516360), [`d870e90`](https://github.com/LedgerHQ/ledger-live/commit/d870e904a0dde5f8abf05f930f5f545828eccbc9), [`dfac39b`](https://github.com/LedgerHQ/ledger-live/commit/dfac39b2086f0475d1bc8065032bfe27cbf424f6), [`2e5185b`](https://github.com/LedgerHQ/ledger-live/commit/2e5185b3dba497c956272068128e49db72e8af2a)]:
|
|
8
|
+
- @ledgerhq/live-env@2.0.0-next.0
|
|
9
|
+
- @ledgerhq/cryptoassets@12.0.0-next.0
|
|
10
|
+
- @ledgerhq/types-live@6.45.0-next.0
|
|
11
|
+
- @ledgerhq/coin-framework@0.11.3-next.0
|
|
12
|
+
- @ledgerhq/live-network@1.2.0-next.0
|
|
13
|
+
- @ledgerhq/types-cryptoassets@7.10.0-next.0
|
|
14
|
+
|
|
3
15
|
## 0.1.2
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/lib/logic.d.ts
CHANGED
|
@@ -3,6 +3,12 @@ import type { Account } from "@ledgerhq/types-live";
|
|
|
3
3
|
import type { Currency } from "@ledgerhq/types-cryptoassets";
|
|
4
4
|
export declare function exportCountervalues({ data, status }: CounterValuesState): CounterValuesStateRaw;
|
|
5
5
|
export declare function importCountervalues({ status, ...rest }: CounterValuesStateRaw, settings: CountervaluesSettings): CounterValuesState;
|
|
6
|
+
export declare function trackingPairForTopCoins(marketcapIds: string[], size: number, countervalue: Currency, startDate: Date): {
|
|
7
|
+
from: import("@ledgerhq/types-cryptoassets").CryptoCurrency;
|
|
8
|
+
to: Currency;
|
|
9
|
+
startDate: Date;
|
|
10
|
+
}[];
|
|
11
|
+
export declare function inferTrackingPairForAccountsUnresolved(accounts: Account[], countervalue: Currency): TrackingPair[];
|
|
6
12
|
export declare function inferTrackingPairForAccounts(accounts: Account[], countervalue: Currency): TrackingPair[];
|
|
7
13
|
/**
|
|
8
14
|
* yield the ids of the tracking pairs as stored in the database
|
package/lib/logic.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../src/logic.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EAGZ,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAWjB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../src/logic.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EAGZ,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAWjB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAK7D,wBAAgB,mBAAmB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,kBAAkB,GAAG,qBAAqB,CAc/F;AAGD,wBAAgB,mBAAmB,CACjC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,qBAAqB,EAC1C,QAAQ,EAAE,qBAAqB,GAC9B,kBAAkB,CA0BpB;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,EAAE,EACtB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,QAAQ,EACtB,SAAS,EAAE,IAAI;;;;IAehB;AAGD,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,QAAQ,GACrB,YAAY,EAAE,CAchB;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,QAAQ,GACrB,YAAY,EAAE,CAEhB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,CAEvE;AAED,eAAO,MAAM,YAAY,EAAE,kBAI1B,CAAC;AAIF,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CA+M7B;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,kBAAkB,EACzB,IAAI,EAAE;IACJ,IAAI,EAAE,QAAQ,CAAC;IACf,EAAE,EAAE,QAAQ,CAAC;CACd,GACA,gBAAgB,GAAG,IAAI,GAAG,SAAS,CAGrC;AACD,wBAAgB,SAAS,CACvB,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,gBAAgB,EAC1C,KAAK,EAAE;IACL,IAAI,EAAE,QAAQ,CAAC;IACf,EAAE,EAAE,QAAQ,CAAC;IACb,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;CAChC,GACA,MAAM,GAAG,IAAI,GAAG,SAAS,CAM3B;AACD,wBAAgB,SAAS,CACvB,KAAK,EAAE,kBAAkB,EACzB,YAAY,EAAE;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,EAAE,EAAE,QAAQ,CAAC;IACb,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,MAAM,GAAG,IAAI,GAAG,SAAS,CAuB3B;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,kBAAkB,EACzB,UAAU,EAAE,KAAK,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;CAC/B,CAAC,EACF,YAAY,EAAE;IACZ,IAAI,EAAE,QAAQ,CAAC;IACf,EAAE,EAAE,QAAQ,CAAC;IACb,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CA0BlC;AA0ED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA+B1E"}
|
package/lib/logic.js
CHANGED
|
@@ -23,12 +23,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
23
23
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.resolveTrackingPairs = exports.calculateMany = exports.calculate = exports.lenseRate = exports.lenseRateMap = exports.loadCountervalues = exports.initialState = exports.trackingPairIds = exports.inferTrackingPairForAccounts = exports.importCountervalues = exports.exportCountervalues = void 0;
|
|
26
|
+
exports.resolveTrackingPairs = exports.calculateMany = exports.calculate = exports.lenseRate = exports.lenseRateMap = exports.loadCountervalues = exports.initialState = exports.trackingPairIds = exports.inferTrackingPairForAccounts = exports.inferTrackingPairForAccountsUnresolved = exports.trackingPairForTopCoins = exports.importCountervalues = exports.exportCountervalues = void 0;
|
|
27
27
|
const logs_1 = require("@ledgerhq/logs");
|
|
28
28
|
const helpers_1 = require("@ledgerhq/coin-framework/account/helpers");
|
|
29
29
|
const live_promise_1 = require("@ledgerhq/live-promise");
|
|
30
30
|
const helpers_2 = require("./helpers");
|
|
31
31
|
const api_1 = __importDefault(require("./api"));
|
|
32
|
+
const currencies_1 = require("@ledgerhq/cryptoassets/currencies");
|
|
32
33
|
// yield raw version of the countervalues state to be saved in a db
|
|
33
34
|
function exportCountervalues({ data, status }) {
|
|
34
35
|
const out = { status };
|
|
@@ -63,12 +64,28 @@ function importCountervalues(_a, settings) {
|
|
|
63
64
|
};
|
|
64
65
|
}
|
|
65
66
|
exports.importCountervalues = importCountervalues;
|
|
67
|
+
function trackingPairForTopCoins(marketcapIds, size, countervalue, startDate) {
|
|
68
|
+
const pairs = [];
|
|
69
|
+
for (let i = 0; i < marketcapIds.length && pairs.length < size; i++) {
|
|
70
|
+
const id = marketcapIds[i];
|
|
71
|
+
const currency = (0, currencies_1.findCryptoCurrencyById)(id);
|
|
72
|
+
if (currency) {
|
|
73
|
+
pairs.push({
|
|
74
|
+
from: currency,
|
|
75
|
+
to: countervalue,
|
|
76
|
+
startDate,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return pairs;
|
|
81
|
+
}
|
|
82
|
+
exports.trackingPairForTopCoins = trackingPairForTopCoins;
|
|
66
83
|
// infer the tracking pair from user accounts to know which pairs are concerned
|
|
67
|
-
function
|
|
84
|
+
function inferTrackingPairForAccountsUnresolved(accounts, countervalue) {
|
|
68
85
|
const yearAgo = new Date();
|
|
69
86
|
yearAgo.setFullYear(yearAgo.getFullYear() - 1);
|
|
70
87
|
yearAgo.setHours(0, 0, 0, 0);
|
|
71
|
-
return
|
|
88
|
+
return (0, helpers_1.flattenAccounts)(accounts)
|
|
72
89
|
.filter(a => !(0, helpers_1.isAccountEmpty)(a))
|
|
73
90
|
.map(account => {
|
|
74
91
|
const currency = (0, helpers_1.getAccountCurrency)(account);
|
|
@@ -77,7 +94,11 @@ function inferTrackingPairForAccounts(accounts, countervalue) {
|
|
|
77
94
|
to: countervalue,
|
|
78
95
|
startDate: account.creationDate < yearAgo ? account.creationDate : yearAgo,
|
|
79
96
|
};
|
|
80
|
-
})
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
exports.inferTrackingPairForAccountsUnresolved = inferTrackingPairForAccountsUnresolved;
|
|
100
|
+
function inferTrackingPairForAccounts(accounts, countervalue) {
|
|
101
|
+
return resolveTrackingPairs(inferTrackingPairForAccountsUnresolved(accounts, countervalue));
|
|
81
102
|
}
|
|
82
103
|
exports.inferTrackingPairForAccounts = inferTrackingPairForAccounts;
|
|
83
104
|
/**
|
package/lib/logic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logic.js","sourceRoot":"","sources":["../src/logic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"logic.js","sourceRoot":"","sources":["../src/logic.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAqC;AACrC,sEAIkD;AAClD,yDAA2D;AAW3D,uCASmB;AAGnB,gDAAwB;AACxB,kEAA2E;AAE3E,mEAAmE;AACnE,SAAgB,mBAAmB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAsB;IACtE,MAAM,GAAG,GAAG,EAAE,MAAM,EAA2B,CAAC;IAEhD,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;QACvB,MAAM,GAAG,GAAe,EAAE,CAAC;QAE3B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE;YAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACZ;QAED,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;KACjB;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAdD,kDAcC;AAED,qDAAqD;AACrD,SAAgB,mBAAmB,CACjC,EAA0C,EAC1C,QAA+B;QAD/B,EAAE,MAAM,OAAkC,EAA7B,IAAI,cAAjB,UAAmB,CAAF;IAGjB,MAAM,IAAI,GAA4B,EAAE,CAAC;IAEzC,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QAEtB,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE;YACnB,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACpB;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;KAClB;IAED,OAAO;QACL,IAAI;QACJ,MAAM;QACN,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAChC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,iCACjB,IAAI;YACP,aAAa;YACb,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,GAAG,EAAW,GAAG,EAAE,QAAQ,CAAC,IACjD,EACF,EAAE,CACH;KACF,CAAC;AACJ,CAAC;AA7BD,kDA6BC;AAED,SAAgB,uBAAuB,CACrC,YAAsB,EACtB,IAAY,EACZ,YAAsB,EACtB,SAAe;IAEf,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;QACnE,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAA,mCAAsB,EAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,QAAQ,EAAE;YACZ,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,YAAY;gBAChB,SAAS;aACV,CAAC,CAAC;SACJ;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAnBD,0DAmBC;AAED,+EAA+E;AAC/E,SAAgB,sCAAsC,CACpD,QAAmB,EACnB,YAAsB;IAEtB,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;IAC3B,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,OAAO,IAAA,yBAAe,EAAC,QAAQ,CAAC;SAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAA,wBAAc,EAAC,CAAC,CAAC,CAAC;SAC/B,GAAG,CAAC,OAAO,CAAC,EAAE;QACb,MAAM,QAAQ,GAAG,IAAA,4BAAkB,EAAC,OAAO,CAAC,CAAC;QAC7C,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,YAAY;YAChB,SAAS,EAAE,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO;SAC3E,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC;AAjBD,wFAiBC;AAED,SAAgB,4BAA4B,CAC1C,QAAmB,EACnB,YAAsB;IAEtB,OAAO,oBAAoB,CAAC,sCAAsC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;AAC9F,CAAC;AALD,oEAKC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,aAA6B;IAC3D,OAAO,aAAa,CAAC,GAAG,CAAC,gBAAM,CAAC,CAAC;AACnC,CAAC;AAFD,0CAEC;AAEY,QAAA,YAAY,GAAuB;IAC9C,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,GAAG,iCAAuB,CAAC,KAAK,CAAC;AAC1D,wFAAwF;AACxF,SAAsB,iBAAiB,CACrC,KAAyB,EACzB,QAA+B;;QAE/B,MAAM,IAAI,qBAAQ,KAAK,CAAC,IAAI,CAAE,CAAC;QAC/B,MAAM,KAAK,qBAAQ,KAAK,CAAC,KAAK,CAAE,CAAC;QACjC,MAAM,MAAM,qBAAQ,KAAK,CAAC,MAAM,CAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QAE7C,qDAAqD;QACrD,MAAM,YAAY,GAIZ,EAAE,CAAC;QAET,MAAM,iBAAiB,GAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAEjE,iBAAiB,CAAC,OAAO,CAAC,CAAC,WAA4B,EAAE,EAAE;YACzD,MAAM,MAAM,GAAG,8BAAoB,CAAC,WAAW,CAAC,CAAC;YACjD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YACtC,IAAA,UAAG,EAAC,eAAe,EAAE,gBAAgB,GAAG,aAAa,CAAC,CAAC;YACvD,MAAM,KAAK,GAAG,yBAAe,CAAC,WAAW,CAAC,CAAC;YAE3C,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;gBACzD,MAAM,GAAG,GAAG,IAAA,gBAAM,EAAC;oBACjB,IAAI;oBACJ,EAAE;iBACH,CAAC,CAAC;gBAEH,MAAM,CAAC,GAAwC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC1D,MAAM,KAAK,GAAG,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,KAAK,CAAC;gBACvB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBAEtB,sFAAsF;gBACtF,IAAI,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,KAAI,CAAC,CAAC,SAAS,EAAE;oBAC9B,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;oBAClC,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,EAAE,eAAe,CAAC,CAAC;oBAClF,MAAM,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,qBAAqB,CAAC;oBAE5D,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,UAAU,EAAE;wBAClC,IAAA,UAAG,EACD,eAAe,EACf,GAAG,GAAG,IAAI,WAAW,uCAAuC,QAAQ,eAAe,IAAI,CAAC,KAAK,CAC3F,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CACxC,GAAG,CACL,CAAC;wBACF,OAAO;qBACR;iBACF;gBAED,IAAI,KAAK,GAAG,SAAS,CAAC;gBACtB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;gBAErC,IAAI,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE,GAAG,SAAS,EAAE;oBAC5C,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;iBAC7B;gBAED,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,CAAC,mBAAmB,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;gBAE9F,IAAI,eAAe,EAAE;oBACnB,IAAA,UAAG,EACD,eAAe,EACf,GAAG,GAAG,IAAI,WAAW,uBAAuB,KAAK,CAAC,WAAW,EAAE,MAAM,MAAM,CACzE,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAC3B,GAAG,CACL,CAAC;iBACH;gBAED,IAAI,CAAC,eAAe,EAAE;oBACpB,8EAA8E;oBAC9E,IAAI,KAAK,IAAI,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,kBAAkB,GAAG,KAAK,EAAE;wBACzE,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC;qBAClC;iBACF;gBAED,kCAAkC;gBAClC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,aAAa;oBAAE,OAAO;gBAC5C,YAAY,CAAC,IAAI,CAAC;oBAChB,WAAW;oBACX;wBACE,IAAI;wBACJ,EAAE;wBACF,SAAS,EAAE,KAAK;qBACjB;oBACD,GAAG;iBACJ,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAA,UAAG,EACD,eAAe,EACf,GAAG,YAAY,CAAC,MAAM,+BAA+B,QAAQ,CAAC,aAAa,CAAC,MAAM,SAAS,CAC5F,CAAC;QAEF,eAAe;QACf,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACxC,IAAA,gCAAiB,EAAC,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAC/D,aAAG;iBACA,eAAe,CAAC,WAAW,EAAE,IAAI,CAAC;iBAClC,IAAI,CAAC,KAAK,CAAC,EAAE;;gBACZ,sBAAsB;gBACtB,MAAM,EAAE,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;gBACxB,IAAI,mBAAmB,GAAG,MAAA,MAAM,CAAC,EAAE,CAAC,0CAAE,mBAAmB,CAAC;gBAE1D,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,mBAAmB,CAAC,EAAE;oBAC1E,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;iBACpD;gBAED,MAAM,CAAC,EAAE,CAAC,GAAG;oBACX,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;oBACrB,mBAAmB;iBACpB,CAAC;gBAEF,OAAO;oBACL,CAAC,GAAG,CAAC,EAAE,KAAK;iBACb,CAAC;YACJ,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAC,EAAE;gBACT,IAAI,QAAQ,CAAC,wBAAwB;oBAAE,MAAM,CAAC,CAAC;gBAC/C,wCAAwC;gBACxC,sEAAsE;gBACtE,2EAA2E;gBAC3E,MAAM,EAAE,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;gBAExB,oEAAoE;gBACpE,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,EAAE;oBACjD,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;oBACrB,MAAM,CAAC,EAAE,CAAC,GAAG;wBACX,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;wBACrB,QAAQ,EAAE,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,KAAI,CAAC,CAAC,GAAG,CAAC;wBAChC,mBAAmB,EAAE,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,mBAAmB;qBAC5C,CAAC;iBACH;gBAED,IAAA,UAAG,EACD,qBAAqB,EACrB,mBAAmB,WAAW,gBAAgB,IAAI,CAAC,IAAI,CAAC,MAAM,IAC5D,IAAI,CAAC,EAAE,CAAC,MACV,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAChB,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CACL;YACD,aAAG;iBACA,WAAW,CAAC,aAAa,CAAC;iBAC1B,IAAI,CAAC,KAAK,CAAC,EAAE;gBACZ,MAAM,GAAG,GAA0D,EAAE,CAAC;gBACtE,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;;oBAChC,MAAM,GAAG,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;oBACzB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACxB,IAAI,CAAA,MAAA,IAAI,CAAC,GAAG,CAAC,0CAAE,GAAG,CAAC,QAAQ,CAAC,MAAK,MAAM;wBAAE,OAAO;oBAChD,GAAG,CAAC,GAAG,CAAC,GAAG;wBACT,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;qBACjB,CAAC;oBACF,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,OAAO;oBAAE,OAAO,IAAI,CAAC;gBAC1B,OAAO,GAAG,CAAC;YACb,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAC,EAAE;gBACT,IAAI,QAAQ,CAAC,wBAAwB;oBAAE,MAAM,CAAC,CAAC;gBAC/C,IAAA,UAAG,EACD,qBAAqB,EACrB,6BAA6B;oBAC3B,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;oBACnE,GAAG;oBACH,MAAM,CAAC,CAAC,CAAC,CACZ,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;SACL,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE;YACzB,IAAI,KAAK,EAAE;gBACT,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACrB;SACF;QACD,IAAI,MAAM,EAAE;YACV,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACtB;QACD,IAAA,UAAG,EAAC,eAAe,EAAE,OAAO,CAAC,MAAM,GAAG,mBAAmB,CAAC,CAAC;QAC3D,MAAM,WAAW,GAA4B,EAAE,CAAC;QAChD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACtB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAC/B,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAErB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;oBACd,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;iBACvB;gBAED,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;oBAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ;wBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACjD,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,wBAAwB;QACxB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACtC,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,IAAI;YACJ,KAAK;YACL,MAAM;SACP,CAAC;IACJ,CAAC;CAAA;AAlND,8CAkNC;AAED,SAAgB,YAAY,CAC1B,KAAyB,EACzB,IAGC;IAED,MAAM,MAAM,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AATD,oCASC;AACD,SAAgB,SAAS,CACvB,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAoB,EAC1C,KAIC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IACvB,IAAI,CAAC,IAAI;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAA,kCAAwB,EAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,KAAK,CAAC,QAAQ,IAAI,GAAG,GAAG,KAAK,CAAC,QAAQ;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrE,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC;AACnD,CAAC;AAbD,8BAaC;AACD,SAAgB,SAAS,CACvB,KAAyB,EACzB,YAOC;IAED,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,YAAY,CAAC;IAClC,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC,KAAK,CAAC;IAC3C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;IAC/D,MAAM,KAAK,GAAG;QACZ,IAAI;QACJ,IAAI;QACJ,EAAE;KACH,CAAC;IACF,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvC,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,IAAI,IAAI,GAAG,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,MAAM,IAAI,GAAG,OAAO;QAClB,CAAC,CAAC,IAAA,mBAAS,EAAC,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC;QAC/C,CAAC,CAAC,IAAA,mBAAS,EAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;IAElD,IAAI,OAAO,IAAI,IAAI,EAAE;QACnB,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;KACjB;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,OAAO,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACjD,CAAC;AAjCD,8BAiCC;AAED,SAAgB,aAAa,CAC3B,KAAyB,EACzB,UAGE,EACF,YAKC;IAED,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,YAAY,CAAC;IAClD,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,YAAY,CAAC;IAClC,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC9C,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;IAE7E,MAAM,IAAI,GAAG,OAAO;QAClB,CAAC,CAAC,IAAA,mBAAS,EAAC,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC;QAC/C,CAAC,CAAC,IAAA,mBAAS,EAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;IAClD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;QACxC,IAAI,IAAI,KAAK,EAAE;YAAE,OAAO,KAAK,CAAC;QAC9B,IAAI,IAAI,GAAG,SAAS,CAAC,GAAG,EAAE;YACxB,IAAI;YACJ,EAAE;YACF,IAAI;SACL,CAAC,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;SACjB;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,OAAO,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC;AAtCD,sCAsCC;AAED,SAAS,aAAa,CACpB,IAAY,EACZ,OAAgB,EAChB,QAA+B;IAE/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;SAClC,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,IAAA,4BAAkB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,4BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,IAAI,kBAAkB,GAAG,YAAY,CAAC;IACtC,IAAI,QAAQ,GAAW,CAAC,CAAC;IACzB,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,UAAU,IAAI,MAAM,EAAE;QACxB,yEAAyE;QACzE,0HAA0H;QAC1H,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;QACxC,IAAI,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,QAAQ,CAAC,YAAY,EAAE;YACzB,QAAQ,GAAG,aAAa,CAAC;SAC1B;QAED,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,iCAAuB,CAAC,KAAK,EAAE;YACpE,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,IAAA,+BAAqB,EAAC,CAAC,CAAC,CAAC;YAEnC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACf,IAAI,CAAC,OAAO,EAAE;oBACZ,OAAO,GAAG,IAAI,CAAC;oBACf,kBAAkB,GAAG,CAAC,CAAC;iBACxB;gBAED,IAAI,QAAQ,CAAC,YAAY,EAAE;oBACzB,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;iBAC3B;aACF;iBAAM;gBACL,IAAI,QAAQ,CAAC,YAAY,EAAE;oBACzB,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;iBACjC;aACF;SACF;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,YAAY,EAAE;YAC/C,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;SAClC;KACF;SAAM;QACL,IAAI,QAAQ,CAAC,YAAY,EAAE;YACzB,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SACnC;KACF;IAED,MAAM,KAAK,GAAG;QACZ,MAAM;QACN,QAAQ;QACR,UAAU;QACV,YAAY;QACZ,kBAAkB;KACnB,CAAC;IAEF,OAAO;QACL,GAAG;QACH,KAAK;QACL,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAqB;IACxD,MAAM,aAAa,GAAiC,EAAE,CAAC;IAEvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;QAE1B,IAAI,IAAI,KAAK,EAAE;YAAE,SAAS;QAE1B,6BAA6B;QAC7B,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,MAAM,EAAE,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;QAExB,IAAI,aAAa,CAAC,EAAE,CAAC,EAAE;YACrB,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;YAExC,IAAI,IAAI,EAAE;gBACR,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;aAC5C;SACF;QAED,aAAa,CAAC,EAAE,CAAC,GAAG;YAClB,IAAI;YACJ,EAAE;YACF,SAAS,EAAE,IAAI;SAChB,CAAC;KACH;IAED,8EAA8E;IAC9E,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;SAC9B,IAAI,EAAE;SACN,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AA/BD,oDA+BC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { CounterValuesState } from "./types";
|
|
2
|
+
import type { Account, AccountLike, BalanceHistory, PortfolioRange, PortfolioRangeConfig, AccountPortfolio, Portfolio, CurrencyPortfolio, AssetsDistribution } from "@ledgerhq/types-live";
|
|
3
|
+
import type { Currency } from "@ledgerhq/types-cryptoassets";
|
|
4
|
+
export declare const defaultAssetsDistribution: {
|
|
5
|
+
minShowFirst: number;
|
|
6
|
+
maxShowFirst: number;
|
|
7
|
+
showFirstThreshold: number;
|
|
8
|
+
showEmptyAccounts: boolean;
|
|
9
|
+
hideEmptyTokenAccount: boolean;
|
|
10
|
+
};
|
|
11
|
+
export type AssetsDistributionOpts = typeof defaultAssetsDistribution;
|
|
12
|
+
export declare function startOfHour(t: Date): Date;
|
|
13
|
+
export declare function startOfDay(t: Date): Date;
|
|
14
|
+
export declare function startOfWeek(t: Date): Date;
|
|
15
|
+
export declare function getRanges(): string[];
|
|
16
|
+
export declare function getDates(r: PortfolioRange, count: number): Date[];
|
|
17
|
+
export declare function getPortfolioRangeConfig(r: PortfolioRange): PortfolioRangeConfig;
|
|
18
|
+
export declare function getPortfolioCount(accounts: AccountLike[], range: PortfolioRange): number;
|
|
19
|
+
export declare function getPortfolioCountByDate(start: Date, range: PortfolioRange): number;
|
|
20
|
+
export declare function getBalanceHistory(account: AccountLike, range: PortfolioRange, count: number): BalanceHistory;
|
|
21
|
+
export declare function getBalanceHistoryWithCountervalue(account: AccountLike, range: PortfolioRange, count: number, cvState: CounterValuesState, cvCurrency: Currency): AccountPortfolio;
|
|
22
|
+
export type GetPortfolioOptionsType = {
|
|
23
|
+
flattenSourceAccounts?: boolean;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* calculate the total balance history for all accounts in a reference fiat unit
|
|
27
|
+
* and using a CalculateCounterValue function (see countervalue helper)
|
|
28
|
+
* NB the last item of the array is actually the current total balance.
|
|
29
|
+
* @memberof account
|
|
30
|
+
*/
|
|
31
|
+
export declare function getPortfolio(topAccounts: AccountLike[], range: PortfolioRange, cvState: CounterValuesState, cvCurrency: Currency, options?: GetPortfolioOptionsType): Portfolio;
|
|
32
|
+
export declare function getCurrencyPortfolio(accounts: AccountLike[], range: PortfolioRange, cvState: CounterValuesState, cvCurrency: Currency): CurrencyPortfolio;
|
|
33
|
+
export declare function getAssetsDistribution(topAccounts: Account[], cvState: CounterValuesState, cvCurrency: Currency, opts?: AssetsDistributionOpts): AssetsDistribution;
|
|
34
|
+
/**
|
|
35
|
+
* data structure to represent a market datapoint
|
|
36
|
+
* NB: the UI don't actual need the "current value" in this data, because it can directly calculate it with the countervalue context. but it's set in order to internally sort the data and possibly debug it
|
|
37
|
+
*/
|
|
38
|
+
export type PerformanceMarketDatapoint = {
|
|
39
|
+
currency: Currency;
|
|
40
|
+
change: number;
|
|
41
|
+
currentValue: number;
|
|
42
|
+
referenceValue: number;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* retrieve the list of market datapoints to use for the Market Performance feature
|
|
46
|
+
* the data is sorted from best performer to worst performer.
|
|
47
|
+
* it possibly filters out any invalid data, therefore the list can be empty.
|
|
48
|
+
*/
|
|
49
|
+
export declare function makePerformanceMarketAssetsList(
|
|
50
|
+
/**
|
|
51
|
+
* the countervalue state to use to calculate the performance.
|
|
52
|
+
*/
|
|
53
|
+
cvState: CounterValuesState,
|
|
54
|
+
/**
|
|
55
|
+
* countervalue is the currency to use as reference to calculate the performance.
|
|
56
|
+
*/
|
|
57
|
+
countervalue: Currency,
|
|
58
|
+
/**
|
|
59
|
+
* assets is the list of assets to consider. it is expected for them to have data loaded in cvState.
|
|
60
|
+
*/
|
|
61
|
+
assets: Currency[],
|
|
62
|
+
/**
|
|
63
|
+
* referenceDate is the date to use as reference to calculate the performance.
|
|
64
|
+
*/
|
|
65
|
+
referenceDate: Date): PerformanceMarketDatapoint[];
|
|
66
|
+
//# sourceMappingURL=portfolio.d.ts.map
|
|
@@ -0,0 +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,WAAW,EACX,cAAc,EACd,cAAc,EACd,oBAAoB,EAEpB,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAkB,QAAQ,EAAiB,MAAM,8BAA8B,CAAC;AAG5F,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,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,QAAQ,GACnB,gBAAgB,CAqDlB;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,CA6DX;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;;;GAGG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,+BAA+B;AAC7C;;GAEG;AACH,OAAO,EAAE,kBAAkB;AAC3B;;GAEG;AACH,YAAY,EAAE,QAAQ;AACtB;;GAEG;AACH,MAAM,EAAE,QAAQ,EAAE;AAClB;;GAEG;AACH,aAAa,EAAE,IAAI,GAClB,0BAA0B,EAAE,CA+B9B"}
|