@ledgerhq/live-countervalues-react 0.11.0 → 0.12.0-nightly.20260331030457
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 +15 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -6
- package/lib/index.js.map +1 -1
- package/lib-es/index.d.ts +1 -1
- package/lib-es/index.d.ts.map +1 -1
- package/lib-es/index.js +1 -3
- package/lib-es/index.js.map +1 -1
- package/package.json +7 -7
- package/src/index.tsx +2 -4
- package/tsconfig.build.json +3 -1
- package/tsconfig.json +3 -2
- package/lib/CountervaluesMarketcapProvider.d.ts +0 -23
- package/lib/CountervaluesMarketcapProvider.d.ts.map +0 -1
- package/lib/CountervaluesMarketcapProvider.js +0 -98
- package/lib/CountervaluesMarketcapProvider.js.map +0 -1
- package/lib-es/CountervaluesMarketcapProvider.d.ts +0 -23
- package/lib-es/CountervaluesMarketcapProvider.d.ts.map +0 -1
- package/lib-es/CountervaluesMarketcapProvider.js +0 -58
- package/lib-es/CountervaluesMarketcapProvider.js.map +0 -1
- package/src/CountervaluesMarketcapProvider.tsx +0 -94
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @ledgerhq/live-countervalues-react
|
|
2
2
|
|
|
3
|
+
## 0.12.0-nightly.20260331030457
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#15230](https://github.com/LedgerHQ/ledger-live/pull/15230) [`f810f2d`](https://github.com/LedgerHQ/ledger-live/commit/f810f2d57f0ecf6249880de4956d2375bb4900d4) Thanks [@LL782](https://github.com/LL782)! - Remove `CountervaluesMarketcapProvider` context and all related bridge/Redux plumbing. Market-cap IDs are now supplied via `useGetCounterValueIdsSortedByMarketCapQuery`, the RTK Query endpoint.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [[`24e8f80`](https://github.com/LedgerHQ/ledger-live/commit/24e8f80dc314619f954e6966aff8698591d6e05e), [`1bf4e7e`](https://github.com/LedgerHQ/ledger-live/commit/1bf4e7efa2fbb310f9c3db8f5d72e68294f0f3fe), [`d0559d8`](https://github.com/LedgerHQ/ledger-live/commit/d0559d84e119c844d92dc82c7648d0d9dc6c6e20), [`f67c5c5`](https://github.com/LedgerHQ/ledger-live/commit/f67c5c555c163739edbfd60b490a14ba8116146f), [`deec161`](https://github.com/LedgerHQ/ledger-live/commit/deec16153656d444336f067970dcda5fff016d95), [`008a4bd`](https://github.com/LedgerHQ/ledger-live/commit/008a4bdb87f0e65fa23de3a29818a4d02f28f4f8), [`e0de96e`](https://github.com/LedgerHQ/ledger-live/commit/e0de96e6311de7e34715784da5941e60ed5c51cc), [`fd3a7d3`](https://github.com/LedgerHQ/ledger-live/commit/fd3a7d37d539a28f3623b2e3c7a3c1f9b073b8e6), [`c5c58e4`](https://github.com/LedgerHQ/ledger-live/commit/c5c58e4efab303a5b6bccc463f91241f4e0f72bc)]:
|
|
12
|
+
- @ledgerhq/types-live@6.103.0-nightly.20260331030457
|
|
13
|
+
- @ledgerhq/cryptoassets@13.44.0-nightly.20260331030457
|
|
14
|
+
- @ledgerhq/ledger-wallet-framework@1.1.0-nightly.20260331030457
|
|
15
|
+
- @ledgerhq/live-countervalues@0.17.0-nightly.20260331030457
|
|
16
|
+
- @ledgerhq/types-cryptoassets@7.36.0-nightly.20260331030457
|
|
17
|
+
|
|
3
18
|
## 0.11.0
|
|
4
19
|
|
|
5
20
|
### Minor Changes
|
package/lib/index.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ import type { Currency, Unit } from "@ledgerhq/types-cryptoassets";
|
|
|
3
3
|
import type { Account, AccountLike } from "@ledgerhq/types-live";
|
|
4
4
|
import { BigNumber } from "bignumber.js";
|
|
5
5
|
import React, { ReactElement } from "react";
|
|
6
|
-
export { CountervaluesMarketcapProvider, useMarketcapIds } from "./CountervaluesMarketcapProvider";
|
|
7
6
|
export interface PollingState {
|
|
8
7
|
isPolling: boolean;
|
|
9
8
|
triggerRef: number;
|
|
@@ -18,6 +17,7 @@ export interface CountervaluesBridge {
|
|
|
18
17
|
setState(state: CounterValuesState): void;
|
|
19
18
|
setStateError(error: Error): void;
|
|
20
19
|
setStatePending(pending: boolean): void;
|
|
20
|
+
useMarketcapIds(): string[];
|
|
21
21
|
usePollingIsPolling(): boolean;
|
|
22
22
|
usePollingTriggerLoad(): boolean;
|
|
23
23
|
useStateError(): Error | null;
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACb,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,EACZ,YAAY,EAMb,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.CountervaluesContext =
|
|
36
|
+
exports.CountervaluesContext = void 0;
|
|
37
37
|
exports.CountervaluesProvider = CountervaluesProvider;
|
|
38
38
|
exports.useCountervaluesState = useCountervaluesState;
|
|
39
39
|
exports.useCountervaluesPolling = useCountervaluesPolling;
|
|
@@ -47,10 +47,6 @@ const logic_1 = require("@ledgerhq/live-countervalues/logic");
|
|
|
47
47
|
const useDebounce_1 = require("@ledgerhq/live-hooks/useDebounce");
|
|
48
48
|
const bignumber_js_1 = require("bignumber.js");
|
|
49
49
|
const react_1 = __importStar(require("react"));
|
|
50
|
-
const CountervaluesMarketcapProvider_1 = require("./CountervaluesMarketcapProvider");
|
|
51
|
-
var CountervaluesMarketcapProvider_2 = require("./CountervaluesMarketcapProvider");
|
|
52
|
-
Object.defineProperty(exports, "CountervaluesMarketcapProvider", { enumerable: true, get: function () { return CountervaluesMarketcapProvider_2.CountervaluesMarketcapProvider; } });
|
|
53
|
-
Object.defineProperty(exports, "useMarketcapIds", { enumerable: true, get: function () { return CountervaluesMarketcapProvider_2.useMarketcapIds; } });
|
|
54
50
|
/**
|
|
55
51
|
* Base Countervalues Context to use without polling logic.
|
|
56
52
|
*/
|
|
@@ -75,7 +71,7 @@ function Effect({ bridge, savedState, debounceDelay = 1000, pollInitDelay = 3 *
|
|
|
75
71
|
const userSettings = bridge.useUserSettings();
|
|
76
72
|
const { refreshRate, marketCapBatchingAfterRank } = userSettings;
|
|
77
73
|
const debouncedUserSettings = (0, useDebounce_1.useDebounce)(userSettings, debounceDelay);
|
|
78
|
-
const marketcapIds =
|
|
74
|
+
const marketcapIds = bridge.useMarketcapIds();
|
|
79
75
|
const batchStrategySolver = (0, react_1.useMemo)(() => ({
|
|
80
76
|
shouldBatchCurrencyFrom: (currency) => {
|
|
81
77
|
if (currency.type === "FiatCurrency")
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/lib-es/index.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ import type { Currency, Unit } from "@ledgerhq/types-cryptoassets";
|
|
|
3
3
|
import type { Account, AccountLike } from "@ledgerhq/types-live";
|
|
4
4
|
import { BigNumber } from "bignumber.js";
|
|
5
5
|
import React, { ReactElement } from "react";
|
|
6
|
-
export { CountervaluesMarketcapProvider, useMarketcapIds } from "./CountervaluesMarketcapProvider";
|
|
7
6
|
export interface PollingState {
|
|
8
7
|
isPolling: boolean;
|
|
9
8
|
triggerRef: number;
|
|
@@ -18,6 +17,7 @@ export interface CountervaluesBridge {
|
|
|
18
17
|
setState(state: CounterValuesState): void;
|
|
19
18
|
setStateError(error: Error): void;
|
|
20
19
|
setStatePending(pending: boolean): void;
|
|
20
|
+
useMarketcapIds(): string[];
|
|
21
21
|
usePollingIsPolling(): boolean;
|
|
22
22
|
usePollingTriggerLoad(): boolean;
|
|
23
23
|
useStateError(): Error | null;
|
package/lib-es/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACb,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,EACZ,YAAY,EAMb,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/lib-es/index.js
CHANGED
|
@@ -3,8 +3,6 @@ import { calculate, importCountervalues, inferTrackingPairForAccounts, loadCount
|
|
|
3
3
|
import { useDebounce } from "@ledgerhq/live-hooks/useDebounce";
|
|
4
4
|
import { BigNumber } from "bignumber.js";
|
|
5
5
|
import React, { createContext, useCallback, useContext, useEffect, useMemo, } from "react";
|
|
6
|
-
import { useMarketcapIds } from "./CountervaluesMarketcapProvider";
|
|
7
|
-
export { CountervaluesMarketcapProvider, useMarketcapIds } from "./CountervaluesMarketcapProvider";
|
|
8
6
|
/**
|
|
9
7
|
* Base Countervalues Context to use without polling logic.
|
|
10
8
|
*/
|
|
@@ -29,7 +27,7 @@ function Effect({ bridge, savedState, debounceDelay = 1000, pollInitDelay = 3 *
|
|
|
29
27
|
const userSettings = bridge.useUserSettings();
|
|
30
28
|
const { refreshRate, marketCapBatchingAfterRank } = userSettings;
|
|
31
29
|
const debouncedUserSettings = useDebounce(userSettings, debounceDelay);
|
|
32
|
-
const marketcapIds = useMarketcapIds();
|
|
30
|
+
const marketcapIds = bridge.useMarketcapIds();
|
|
33
31
|
const batchStrategySolver = useMemo(() => ({
|
|
34
32
|
shouldBatchCurrencyFrom: (currency) => {
|
|
35
33
|
if (currency.type === "FiatCurrency")
|
package/lib-es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,oCAAoC,CAAC;AAO5C,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAG/D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,EAEZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,GACR,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/live-countervalues-react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0-nightly.20260331030457",
|
|
4
4
|
"description": "Ledger Live countervalues React module",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ledger"
|
|
@@ -25,15 +25,15 @@
|
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"bignumber.js": "9",
|
|
28
|
-
"@ledgerhq/types-live": "6.
|
|
29
|
-
"@ledgerhq/types-cryptoassets": "7.
|
|
30
|
-
"@ledgerhq/cryptoassets": "13.
|
|
31
|
-
"@ledgerhq/
|
|
32
|
-
"@ledgerhq/
|
|
33
|
-
"@ledgerhq/ledger-wallet-framework": "^1.0.1",
|
|
28
|
+
"@ledgerhq/types-live": "6.103.0-nightly.20260331030457",
|
|
29
|
+
"@ledgerhq/types-cryptoassets": "7.36.0-nightly.20260331030457",
|
|
30
|
+
"@ledgerhq/cryptoassets": "13.44.0-nightly.20260331030457",
|
|
31
|
+
"@ledgerhq/live-countervalues": "0.17.0-nightly.20260331030457",
|
|
32
|
+
"@ledgerhq/ledger-wallet-framework": "^1.1.0-nightly.20260331030457",
|
|
34
33
|
"@ledgerhq/live-hooks": "0.5.0"
|
|
35
34
|
},
|
|
36
35
|
"devDependencies": {
|
|
36
|
+
"@types/node": "24.12.0",
|
|
37
37
|
"@types/jest": "30.0.0",
|
|
38
38
|
"@testing-library/dom": "10.4.1",
|
|
39
39
|
"@testing-library/react": "16.3.1",
|
package/src/index.tsx
CHANGED
|
@@ -23,9 +23,6 @@ import React, {
|
|
|
23
23
|
useEffect,
|
|
24
24
|
useMemo,
|
|
25
25
|
} from "react";
|
|
26
|
-
import { useMarketcapIds } from "./CountervaluesMarketcapProvider";
|
|
27
|
-
|
|
28
|
-
export { CountervaluesMarketcapProvider, useMarketcapIds } from "./CountervaluesMarketcapProvider";
|
|
29
26
|
|
|
30
27
|
export interface PollingState {
|
|
31
28
|
isPolling: boolean;
|
|
@@ -42,6 +39,7 @@ export interface CountervaluesBridge {
|
|
|
42
39
|
setState(state: CounterValuesState): void;
|
|
43
40
|
setStateError(error: Error): void;
|
|
44
41
|
setStatePending(pending: boolean): void;
|
|
42
|
+
useMarketcapIds(): string[];
|
|
45
43
|
usePollingIsPolling(): boolean;
|
|
46
44
|
usePollingTriggerLoad(): boolean;
|
|
47
45
|
useStateError(): Error | null;
|
|
@@ -117,7 +115,7 @@ function Effect({
|
|
|
117
115
|
const { refreshRate, marketCapBatchingAfterRank } = userSettings;
|
|
118
116
|
const debouncedUserSettings = useDebounce(userSettings, debounceDelay);
|
|
119
117
|
|
|
120
|
-
const marketcapIds = useMarketcapIds();
|
|
118
|
+
const marketcapIds = bridge.useMarketcapIds();
|
|
121
119
|
|
|
122
120
|
const batchStrategySolver = useMemo(
|
|
123
121
|
() => ({
|
package/tsconfig.build.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"extends": "./tsconfig.json",
|
|
3
3
|
"compilerOptions": {
|
|
4
|
-
"customConditions": []
|
|
4
|
+
"customConditions": [],
|
|
5
|
+
"types": []
|
|
5
6
|
},
|
|
6
7
|
"exclude": [
|
|
7
8
|
"**/*.test.ts",
|
|
@@ -10,6 +11,7 @@
|
|
|
10
11
|
"**/*.spec.tsx",
|
|
11
12
|
"**/__tests__/**/*",
|
|
12
13
|
"**/tests/**/*",
|
|
14
|
+
"**/__mocks__/**/*",
|
|
13
15
|
"**/*.test.js",
|
|
14
16
|
"**/*.test.jsx",
|
|
15
17
|
"**/*.spec.js",
|
package/tsconfig.json
CHANGED
|
@@ -5,12 +5,13 @@
|
|
|
5
5
|
"declarationMap": true,
|
|
6
6
|
"noImplicitAny": true,
|
|
7
7
|
"noImplicitThis": true,
|
|
8
|
-
"downlevelIteration": true,
|
|
9
8
|
"jsx": "react",
|
|
10
9
|
"lib": ["es2020", "dom"],
|
|
11
10
|
"outDir": "lib",
|
|
12
|
-
"
|
|
11
|
+
"rootDir": "src",
|
|
12
|
+
"types": ["node", "jest"],
|
|
13
13
|
"paths": {
|
|
14
|
+
"*": ["./*"],
|
|
14
15
|
"react": ["../../node_modules/@types/react"],
|
|
15
16
|
"@types/react": ["../../node_modules/@types/react"]
|
|
16
17
|
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import React, { ReactElement } from "react";
|
|
2
|
-
/**
|
|
3
|
-
* Bridge enabling platform-specific persistence of market-cap ids.
|
|
4
|
-
* NOTE: memoize the object to avoid re-renders.
|
|
5
|
-
*/
|
|
6
|
-
export interface CountervaluesMarketcapBridge {
|
|
7
|
-
setError(message: string): void;
|
|
8
|
-
setIds(ids: string[]): void;
|
|
9
|
-
setLoading(loading: boolean): void;
|
|
10
|
-
useIds(): string[];
|
|
11
|
-
useLastUpdated(): number | undefined;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Provides market-cap ids via the supplied bridge.
|
|
15
|
-
*/
|
|
16
|
-
export declare function CountervaluesMarketcapProvider({ children, bridge, }: {
|
|
17
|
-
children: React.ReactNode;
|
|
18
|
-
/** @param bridge Contains the functions that interact with the apps' state. Reference needs to be stable */
|
|
19
|
-
bridge: CountervaluesMarketcapBridge;
|
|
20
|
-
}): ReactElement;
|
|
21
|
-
/** Returns market-cap ids. */
|
|
22
|
-
export declare function useMarketcapIds(): string[];
|
|
23
|
-
//# sourceMappingURL=CountervaluesMarketcapProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CountervaluesMarketcapProvider.d.ts","sourceRoot":"","sources":["../src/CountervaluesMarketcapProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,YAAY,EAAoD,MAAM,OAAO,CAAC;AAK9F;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,MAAM,IAAI,MAAM,EAAE,CAAC;IACnB,cAAc,IAAI,MAAM,GAAG,SAAS,CAAC;CACtC;AAqDD;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,EAC7C,QAAQ,EACR,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,4GAA4G;IAC5G,MAAM,EAAE,4BAA4B,CAAC;CACtC,GAAG,YAAY,CAOf;AAED,8BAA8B;AAC9B,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAG1C"}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.CountervaluesMarketcapProvider = CountervaluesMarketcapProvider;
|
|
40
|
-
exports.useMarketcapIds = useMarketcapIds;
|
|
41
|
-
const index_1 = __importDefault(require("@ledgerhq/live-countervalues/api/index"));
|
|
42
|
-
const logs_1 = require("@ledgerhq/logs");
|
|
43
|
-
const react_1 = __importStar(require("react"));
|
|
44
|
-
const MARKETCAP_REFRESH = 30 * 60000;
|
|
45
|
-
const MARKETCAP_REFRESH_ON_ERROR = 60000;
|
|
46
|
-
const CountervaluesMarketcapBridgeContext = (0, react_1.createContext)(null);
|
|
47
|
-
function useCountervaluesMarketcapBridgeContext() {
|
|
48
|
-
const bridge = (0, react_1.useContext)(CountervaluesMarketcapBridgeContext);
|
|
49
|
-
if (!bridge) {
|
|
50
|
-
throw new Error("'useCountervaluesMarketcapBridgeContext' must be used within a 'CountervaluesMarketcapProvider'");
|
|
51
|
-
}
|
|
52
|
-
return bridge;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Call side effects outside of the primary render tree, avoiding costly child re-renders
|
|
56
|
-
* TODO this could be re-written as a side effect only, to avoid dependency on render state.
|
|
57
|
-
*/
|
|
58
|
-
function Effect({ bridge }) {
|
|
59
|
-
const lastUpdated = bridge.useLastUpdated();
|
|
60
|
-
const [, forceUpdate] = (0, react_1.useReducer)((x) => x + 1, 0);
|
|
61
|
-
(0, react_1.useEffect)(() => {
|
|
62
|
-
let timeout = null;
|
|
63
|
-
const now = Date.now();
|
|
64
|
-
if (!lastUpdated || now - lastUpdated > MARKETCAP_REFRESH) {
|
|
65
|
-
bridge.setLoading(true);
|
|
66
|
-
index_1.default.fetchIdsSortedByMarketcap().then(fetchedIds => {
|
|
67
|
-
bridge.setIds(fetchedIds);
|
|
68
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH);
|
|
69
|
-
}, error => {
|
|
70
|
-
(0, logs_1.log)("countervalues", "error fetching marketcap ids " + error);
|
|
71
|
-
bridge.setError(error.message);
|
|
72
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH_ON_ERROR);
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH - (now - lastUpdated));
|
|
77
|
-
}
|
|
78
|
-
return () => {
|
|
79
|
-
if (timeout)
|
|
80
|
-
clearTimeout(timeout);
|
|
81
|
-
};
|
|
82
|
-
}, [lastUpdated, bridge]);
|
|
83
|
-
return null;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Provides market-cap ids via the supplied bridge.
|
|
87
|
-
*/
|
|
88
|
-
function CountervaluesMarketcapProvider({ children, bridge, }) {
|
|
89
|
-
return (react_1.default.createElement(CountervaluesMarketcapBridgeContext.Provider, { value: bridge },
|
|
90
|
-
react_1.default.createElement(Effect, { bridge: bridge }),
|
|
91
|
-
children));
|
|
92
|
-
}
|
|
93
|
-
/** Returns market-cap ids. */
|
|
94
|
-
function useMarketcapIds() {
|
|
95
|
-
const bridge = useCountervaluesMarketcapBridgeContext();
|
|
96
|
-
return bridge.useIds();
|
|
97
|
-
}
|
|
98
|
-
//# sourceMappingURL=CountervaluesMarketcapProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CountervaluesMarketcapProvider.js","sourceRoot":"","sources":["../src/CountervaluesMarketcapProvider.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEA,wEAcC;AAGD,0CAGC;AA7FD,mFAAyD;AACzD,yCAAqC;AACrC,+CAA8F;AAE9F,MAAM,iBAAiB,GAAG,EAAE,GAAG,KAAK,CAAC;AACrC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAczC,MAAM,mCAAmC,GAAG,IAAA,qBAAa,EACvD,IAAI,CACL,CAAC;AAEF,SAAS,sCAAsC;IAC7C,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,mCAAmC,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,iGAAiG,CAClG,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,MAAM,CAAC,EAAE,MAAM,EAA4C;IAClE,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,IAAA,kBAAU,EAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE5D,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,OAAO,GAAyC,IAAI,CAAC;QACzD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,WAAW,IAAI,GAAG,GAAG,WAAW,GAAG,iBAAiB,EAAE,CAAC;YAC1D,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACxB,eAAG,CAAC,yBAAyB,EAAE,CAAC,IAAI,CAClC,UAAU,CAAC,EAAE;gBACX,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC1B,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,iBAAiB,CAAC,CAAC;YAC/D,CAAC,EACD,KAAK,CAAC,EAAE;gBACN,IAAA,UAAG,EAAC,eAAe,EAAE,+BAA+B,GAAG,KAAK,CAAC,CAAC;gBAC9D,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC/B,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,0BAA0B,CAAC,CAAC;YACxE,CAAC,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,iBAAiB,GAAG,CAAC,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC;QACrF,CAAC;QAED,OAAO,GAAG,EAAE;YACV,IAAI,OAAO;gBAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IAE1B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAgB,8BAA8B,CAAC,EAC7C,QAAQ,EACR,MAAM,GAKP;IACC,OAAO,CACL,8BAAC,mCAAmC,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM;QACzD,8BAAC,MAAM,IAAC,MAAM,EAAE,MAAM,GAAI;QACzB,QAAQ,CACoC,CAChD,CAAC;AACJ,CAAC;AAED,8BAA8B;AAC9B,SAAgB,eAAe;IAC7B,MAAM,MAAM,GAAG,sCAAsC,EAAE,CAAC;IACxD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import React, { ReactElement } from "react";
|
|
2
|
-
/**
|
|
3
|
-
* Bridge enabling platform-specific persistence of market-cap ids.
|
|
4
|
-
* NOTE: memoize the object to avoid re-renders.
|
|
5
|
-
*/
|
|
6
|
-
export interface CountervaluesMarketcapBridge {
|
|
7
|
-
setError(message: string): void;
|
|
8
|
-
setIds(ids: string[]): void;
|
|
9
|
-
setLoading(loading: boolean): void;
|
|
10
|
-
useIds(): string[];
|
|
11
|
-
useLastUpdated(): number | undefined;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Provides market-cap ids via the supplied bridge.
|
|
15
|
-
*/
|
|
16
|
-
export declare function CountervaluesMarketcapProvider({ children, bridge, }: {
|
|
17
|
-
children: React.ReactNode;
|
|
18
|
-
/** @param bridge Contains the functions that interact with the apps' state. Reference needs to be stable */
|
|
19
|
-
bridge: CountervaluesMarketcapBridge;
|
|
20
|
-
}): ReactElement;
|
|
21
|
-
/** Returns market-cap ids. */
|
|
22
|
-
export declare function useMarketcapIds(): string[];
|
|
23
|
-
//# sourceMappingURL=CountervaluesMarketcapProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CountervaluesMarketcapProvider.d.ts","sourceRoot":"","sources":["../src/CountervaluesMarketcapProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,YAAY,EAAoD,MAAM,OAAO,CAAC;AAK9F;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,MAAM,IAAI,MAAM,EAAE,CAAC;IACnB,cAAc,IAAI,MAAM,GAAG,SAAS,CAAC;CACtC;AAqDD;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,EAC7C,QAAQ,EACR,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,4GAA4G;IAC5G,MAAM,EAAE,4BAA4B,CAAC;CACtC,GAAG,YAAY,CAOf;AAED,8BAA8B;AAC9B,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAG1C"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import api from "@ledgerhq/live-countervalues/api/index";
|
|
2
|
-
import { log } from "@ledgerhq/logs";
|
|
3
|
-
import React, { createContext, useContext, useEffect, useReducer } from "react";
|
|
4
|
-
const MARKETCAP_REFRESH = 30 * 60000;
|
|
5
|
-
const MARKETCAP_REFRESH_ON_ERROR = 60000;
|
|
6
|
-
const CountervaluesMarketcapBridgeContext = createContext(null);
|
|
7
|
-
function useCountervaluesMarketcapBridgeContext() {
|
|
8
|
-
const bridge = useContext(CountervaluesMarketcapBridgeContext);
|
|
9
|
-
if (!bridge) {
|
|
10
|
-
throw new Error("'useCountervaluesMarketcapBridgeContext' must be used within a 'CountervaluesMarketcapProvider'");
|
|
11
|
-
}
|
|
12
|
-
return bridge;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Call side effects outside of the primary render tree, avoiding costly child re-renders
|
|
16
|
-
* TODO this could be re-written as a side effect only, to avoid dependency on render state.
|
|
17
|
-
*/
|
|
18
|
-
function Effect({ bridge }) {
|
|
19
|
-
const lastUpdated = bridge.useLastUpdated();
|
|
20
|
-
const [, forceUpdate] = useReducer((x) => x + 1, 0);
|
|
21
|
-
useEffect(() => {
|
|
22
|
-
let timeout = null;
|
|
23
|
-
const now = Date.now();
|
|
24
|
-
if (!lastUpdated || now - lastUpdated > MARKETCAP_REFRESH) {
|
|
25
|
-
bridge.setLoading(true);
|
|
26
|
-
api.fetchIdsSortedByMarketcap().then(fetchedIds => {
|
|
27
|
-
bridge.setIds(fetchedIds);
|
|
28
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH);
|
|
29
|
-
}, error => {
|
|
30
|
-
log("countervalues", "error fetching marketcap ids " + error);
|
|
31
|
-
bridge.setError(error.message);
|
|
32
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH_ON_ERROR);
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH - (now - lastUpdated));
|
|
37
|
-
}
|
|
38
|
-
return () => {
|
|
39
|
-
if (timeout)
|
|
40
|
-
clearTimeout(timeout);
|
|
41
|
-
};
|
|
42
|
-
}, [lastUpdated, bridge]);
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Provides market-cap ids via the supplied bridge.
|
|
47
|
-
*/
|
|
48
|
-
export function CountervaluesMarketcapProvider({ children, bridge, }) {
|
|
49
|
-
return (React.createElement(CountervaluesMarketcapBridgeContext.Provider, { value: bridge },
|
|
50
|
-
React.createElement(Effect, { bridge: bridge }),
|
|
51
|
-
children));
|
|
52
|
-
}
|
|
53
|
-
/** Returns market-cap ids. */
|
|
54
|
-
export function useMarketcapIds() {
|
|
55
|
-
const bridge = useCountervaluesMarketcapBridgeContext();
|
|
56
|
-
return bridge.useIds();
|
|
57
|
-
}
|
|
58
|
-
//# sourceMappingURL=CountervaluesMarketcapProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CountervaluesMarketcapProvider.js","sourceRoot":"","sources":["../src/CountervaluesMarketcapProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,wCAAwC,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,EAAE,EAAgB,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAE9F,MAAM,iBAAiB,GAAG,EAAE,GAAG,KAAK,CAAC;AACrC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAczC,MAAM,mCAAmC,GAAG,aAAa,CACvD,IAAI,CACL,CAAC;AAEF,SAAS,sCAAsC;IAC7C,MAAM,MAAM,GAAG,UAAU,CAAC,mCAAmC,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,iGAAiG,CAClG,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,MAAM,CAAC,EAAE,MAAM,EAA4C;IAClE,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,UAAU,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,GAAyC,IAAI,CAAC;QACzD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,WAAW,IAAI,GAAG,GAAG,WAAW,GAAG,iBAAiB,EAAE,CAAC;YAC1D,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACxB,GAAG,CAAC,yBAAyB,EAAE,CAAC,IAAI,CAClC,UAAU,CAAC,EAAE;gBACX,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC1B,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,iBAAiB,CAAC,CAAC;YAC/D,CAAC,EACD,KAAK,CAAC,EAAE;gBACN,GAAG,CAAC,eAAe,EAAE,+BAA+B,GAAG,KAAK,CAAC,CAAC;gBAC9D,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC/B,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,0BAA0B,CAAC,CAAC;YACxE,CAAC,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,iBAAiB,GAAG,CAAC,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC;QACrF,CAAC;QAED,OAAO,GAAG,EAAE;YACV,IAAI,OAAO;gBAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IAE1B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAAC,EAC7C,QAAQ,EACR,MAAM,GAKP;IACC,OAAO,CACL,oBAAC,mCAAmC,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM;QACzD,oBAAC,MAAM,IAAC,MAAM,EAAE,MAAM,GAAI;QACzB,QAAQ,CACoC,CAChD,CAAC;AACJ,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,sCAAsC,EAAE,CAAC;IACxD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import api from "@ledgerhq/live-countervalues/api/index";
|
|
2
|
-
import { log } from "@ledgerhq/logs";
|
|
3
|
-
import React, { ReactElement, createContext, useContext, useEffect, useReducer } from "react";
|
|
4
|
-
|
|
5
|
-
const MARKETCAP_REFRESH = 30 * 60000;
|
|
6
|
-
const MARKETCAP_REFRESH_ON_ERROR = 60000;
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Bridge enabling platform-specific persistence of market-cap ids.
|
|
10
|
-
* NOTE: memoize the object to avoid re-renders.
|
|
11
|
-
*/
|
|
12
|
-
export interface CountervaluesMarketcapBridge {
|
|
13
|
-
setError(message: string): void;
|
|
14
|
-
setIds(ids: string[]): void;
|
|
15
|
-
setLoading(loading: boolean): void;
|
|
16
|
-
useIds(): string[];
|
|
17
|
-
useLastUpdated(): number | undefined;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
const CountervaluesMarketcapBridgeContext = createContext<CountervaluesMarketcapBridge | null>(
|
|
21
|
-
null,
|
|
22
|
-
);
|
|
23
|
-
|
|
24
|
-
function useCountervaluesMarketcapBridgeContext() {
|
|
25
|
-
const bridge = useContext(CountervaluesMarketcapBridgeContext);
|
|
26
|
-
if (!bridge) {
|
|
27
|
-
throw new Error(
|
|
28
|
-
"'useCountervaluesMarketcapBridgeContext' must be used within a 'CountervaluesMarketcapProvider'",
|
|
29
|
-
);
|
|
30
|
-
}
|
|
31
|
-
return bridge;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Call side effects outside of the primary render tree, avoiding costly child re-renders
|
|
36
|
-
* TODO this could be re-written as a side effect only, to avoid dependency on render state.
|
|
37
|
-
*/
|
|
38
|
-
function Effect({ bridge }: { bridge: CountervaluesMarketcapBridge }) {
|
|
39
|
-
const lastUpdated = bridge.useLastUpdated();
|
|
40
|
-
const [, forceUpdate] = useReducer((x: number) => x + 1, 0);
|
|
41
|
-
|
|
42
|
-
useEffect(() => {
|
|
43
|
-
let timeout: ReturnType<typeof setTimeout> | null = null;
|
|
44
|
-
const now = Date.now();
|
|
45
|
-
|
|
46
|
-
if (!lastUpdated || now - lastUpdated > MARKETCAP_REFRESH) {
|
|
47
|
-
bridge.setLoading(true);
|
|
48
|
-
api.fetchIdsSortedByMarketcap().then(
|
|
49
|
-
fetchedIds => {
|
|
50
|
-
bridge.setIds(fetchedIds);
|
|
51
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH);
|
|
52
|
-
},
|
|
53
|
-
error => {
|
|
54
|
-
log("countervalues", "error fetching marketcap ids " + error);
|
|
55
|
-
bridge.setError(error.message);
|
|
56
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH_ON_ERROR);
|
|
57
|
-
},
|
|
58
|
-
);
|
|
59
|
-
} else {
|
|
60
|
-
timeout = setTimeout(() => forceUpdate(), MARKETCAP_REFRESH - (now - lastUpdated));
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
return () => {
|
|
64
|
-
if (timeout) clearTimeout(timeout);
|
|
65
|
-
};
|
|
66
|
-
}, [lastUpdated, bridge]);
|
|
67
|
-
|
|
68
|
-
return null;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Provides market-cap ids via the supplied bridge.
|
|
73
|
-
*/
|
|
74
|
-
export function CountervaluesMarketcapProvider({
|
|
75
|
-
children,
|
|
76
|
-
bridge,
|
|
77
|
-
}: {
|
|
78
|
-
children: React.ReactNode;
|
|
79
|
-
/** @param bridge Contains the functions that interact with the apps' state. Reference needs to be stable */
|
|
80
|
-
bridge: CountervaluesMarketcapBridge;
|
|
81
|
-
}): ReactElement {
|
|
82
|
-
return (
|
|
83
|
-
<CountervaluesMarketcapBridgeContext.Provider value={bridge}>
|
|
84
|
-
<Effect bridge={bridge} />
|
|
85
|
-
{children}
|
|
86
|
-
</CountervaluesMarketcapBridgeContext.Provider>
|
|
87
|
-
);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
/** Returns market-cap ids. */
|
|
91
|
-
export function useMarketcapIds(): string[] {
|
|
92
|
-
const bridge = useCountervaluesMarketcapBridgeContext();
|
|
93
|
-
return bridge.useIds();
|
|
94
|
-
}
|