@ledgerhq/live-common 34.42.0-nightly.2 → 34.42.0-nightly.4

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.
Files changed (69) hide show
  1. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts +3 -1
  2. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts.map +1 -1
  3. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js +6 -0
  4. package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
  5. package/lib/exchange/error.d.ts +2 -1
  6. package/lib/exchange/error.d.ts.map +1 -1
  7. package/lib/exchange/error.js +5 -3
  8. package/lib/exchange/error.js.map +1 -1
  9. package/lib/exchange/swap/completeExchange.js +2 -2
  10. package/lib/exchange/swap/completeExchange.js.map +1 -1
  11. package/lib/modularDrawer/__mocks__/currencies.mock.d.ts +17 -0
  12. package/lib/modularDrawer/__mocks__/currencies.mock.d.ts.map +1 -0
  13. package/lib/modularDrawer/__mocks__/currencies.mock.js +60 -0
  14. package/lib/modularDrawer/__mocks__/currencies.mock.js.map +1 -0
  15. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts +22 -0
  16. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts.map +1 -0
  17. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js +41 -0
  18. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js.map +1 -0
  19. package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts +2 -0
  20. package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts.map +1 -0
  21. package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js +28 -0
  22. package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js.map +1 -0
  23. package/lib/modularDrawer/utils/haveOneCommonProvider.d.ts +11 -0
  24. package/lib/modularDrawer/utils/haveOneCommonProvider.d.ts.map +1 -0
  25. package/lib/modularDrawer/utils/haveOneCommonProvider.js +29 -0
  26. package/lib/modularDrawer/utils/haveOneCommonProvider.js.map +1 -0
  27. package/lib/modularDrawer/utils/index.d.ts +2 -1
  28. package/lib/modularDrawer/utils/index.d.ts.map +1 -1
  29. package/lib/modularDrawer/utils/index.js +3 -1
  30. package/lib/modularDrawer/utils/index.js.map +1 -1
  31. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts +3 -1
  32. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts.map +1 -1
  33. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js +6 -0
  34. package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
  35. package/lib-es/exchange/error.d.ts +2 -1
  36. package/lib-es/exchange/error.d.ts.map +1 -1
  37. package/lib-es/exchange/error.js +5 -3
  38. package/lib-es/exchange/error.js.map +1 -1
  39. package/lib-es/exchange/swap/completeExchange.js +2 -2
  40. package/lib-es/exchange/swap/completeExchange.js.map +1 -1
  41. package/lib-es/modularDrawer/__mocks__/currencies.mock.d.ts +17 -0
  42. package/lib-es/modularDrawer/__mocks__/currencies.mock.d.ts.map +1 -0
  43. package/lib-es/modularDrawer/__mocks__/currencies.mock.js +55 -0
  44. package/lib-es/modularDrawer/__mocks__/currencies.mock.js.map +1 -0
  45. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts +22 -0
  46. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts.map +1 -0
  47. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js +38 -0
  48. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js.map +1 -0
  49. package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts +2 -0
  50. package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts.map +1 -0
  51. package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js +26 -0
  52. package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js.map +1 -0
  53. package/lib-es/modularDrawer/utils/haveOneCommonProvider.d.ts +11 -0
  54. package/lib-es/modularDrawer/utils/haveOneCommonProvider.d.ts.map +1 -0
  55. package/lib-es/modularDrawer/utils/haveOneCommonProvider.js +25 -0
  56. package/lib-es/modularDrawer/utils/haveOneCommonProvider.js.map +1 -0
  57. package/lib-es/modularDrawer/utils/index.d.ts +2 -1
  58. package/lib-es/modularDrawer/utils/index.d.ts.map +1 -1
  59. package/lib-es/modularDrawer/utils/index.js +2 -1
  60. package/lib-es/modularDrawer/utils/index.js.map +1 -1
  61. package/package.json +34 -34
  62. package/src/bridge/generic-alpaca/alpaca/network/network-alpaca.ts +8 -1
  63. package/src/exchange/error.ts +5 -3
  64. package/src/exchange/swap/completeExchange.ts +2 -2
  65. package/src/modularDrawer/__mocks__/currencies.mock.ts +62 -0
  66. package/src/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.ts +49 -0
  67. package/src/modularDrawer/utils/__tests__/haveOneCommonProvider.test.ts +34 -0
  68. package/src/modularDrawer/utils/haveOneCommonProvider.ts +31 -0
  69. package/src/modularDrawer/utils/index.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"completeExchange.js","sourceRoot":"","sources":["../../../src/exchange/swap/completeExchange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completeExchange.js","sourceRoot":"","sources":["../../../src/exchange/swap/completeExchange.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { TokenCurrency } from "@ledgerhq/types-cryptoassets";
2
+ export declare const mockBtcCryptoCurrency: import("@ledgerhq/types-cryptoassets").CryptoCurrency;
3
+ export declare const mockEthCryptoCurrency: import("@ledgerhq/types-cryptoassets").CryptoCurrency;
4
+ export declare const mockArbitrumCryptoCurrency: import("@ledgerhq/types-cryptoassets").CryptoCurrency;
5
+ export declare const mockBaseCryptoCurrency: import("@ledgerhq/types-cryptoassets").CryptoCurrency;
6
+ export declare const mockScrollCryptoCurrency: import("@ledgerhq/types-cryptoassets").CryptoCurrency;
7
+ export declare const mockInjectiveCryptoCurrency: import("@ledgerhq/types-cryptoassets").CryptoCurrency;
8
+ export declare const arbitrumToken: TokenCurrency;
9
+ export declare const usdcToken: TokenCurrency;
10
+ export declare const findCryptoCurrencyById: (id: string) => import("@ledgerhq/types-cryptoassets").CryptoCurrency | undefined;
11
+ export declare const getTokenOrCryptoCurrencyById: (id: string) => import("@ledgerhq/types-cryptoassets").CryptoCurrency | TokenCurrency | undefined;
12
+ export declare const mockCurrenciesByProvider: {
13
+ providerId: string;
14
+ currenciesByNetwork: import("@ledgerhq/types-cryptoassets").CryptoCurrency[];
15
+ }[];
16
+ export declare const mockCurrencyIds: string[];
17
+ //# sourceMappingURL=currencies.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currencies.mock.d.ts","sourceRoot":"","sources":["../../../src/modularDrawer/__mocks__/currencies.mock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,eAAO,MAAM,qBAAqB,uDAAmC,CAAC;AACtE,eAAO,MAAM,qBAAqB,uDAAoC,CAAC;AACvE,eAAO,MAAM,0BAA0B,uDAAoC,CAAC;AAC5E,eAAO,MAAM,sBAAsB,uDAAgC,CAAC;AACpE,eAAO,MAAM,wBAAwB,uDAAkC,CAAC;AACxE,eAAO,MAAM,2BAA2B,uDAAqC,CAAC;AAE9E,eAAO,MAAM,aAAa,EAAE,aAe3B,CAAC;AACF,eAAO,MAAM,SAAS,EAAE,aAevB,CAAC;AAEF,eAAO,MAAM,sBAAsB,OAAQ,MAAM,sEACkD,CAAC;AACpG,eAAO,MAAM,4BAA4B,OAAQ,MAAM,sFAO7B,CAAC;AAE3B,eAAO,MAAM,wBAAwB;;;GAKpC,CAAC;AAEF,eAAO,MAAM,eAAe,UAA8C,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { getCryptoCurrencyById } from "@ledgerhq/live-common/currencies/index";
2
+ export const mockBtcCryptoCurrency = getCryptoCurrencyById("bitcoin");
3
+ export const mockEthCryptoCurrency = getCryptoCurrencyById("ethereum");
4
+ export const mockArbitrumCryptoCurrency = getCryptoCurrencyById("arbitrum");
5
+ export const mockBaseCryptoCurrency = getCryptoCurrencyById("base");
6
+ export const mockScrollCryptoCurrency = getCryptoCurrencyById("scroll");
7
+ export const mockInjectiveCryptoCurrency = getCryptoCurrencyById("injective");
8
+ export const arbitrumToken = {
9
+ type: "TokenCurrency",
10
+ id: "arbitrum/erc20/arbitrum",
11
+ contractAddress: "0x912CE59144191C1204E64559FE8253a0e49E6548",
12
+ parentCurrency: mockArbitrumCryptoCurrency,
13
+ tokenType: "erc20",
14
+ name: "Arbitrum",
15
+ ticker: "ARB",
16
+ units: [
17
+ {
18
+ name: "Arbitrum",
19
+ code: "ARB",
20
+ magnitude: 18,
21
+ },
22
+ ],
23
+ };
24
+ export const usdcToken = {
25
+ type: "TokenCurrency",
26
+ id: "ethereum/erc20/usd__coin",
27
+ contractAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
28
+ parentCurrency: mockEthCryptoCurrency,
29
+ tokenType: "erc20",
30
+ name: "USD Coin",
31
+ ticker: "USDC",
32
+ units: [
33
+ {
34
+ name: "USD Coin",
35
+ code: "USDC",
36
+ magnitude: 6,
37
+ },
38
+ ],
39
+ };
40
+ export const findCryptoCurrencyById = (id) => [mockBtcCryptoCurrency, mockEthCryptoCurrency, mockArbitrumCryptoCurrency].find(a => a.id === id);
41
+ export const getTokenOrCryptoCurrencyById = (id) => [
42
+ mockBtcCryptoCurrency,
43
+ mockEthCryptoCurrency,
44
+ mockArbitrumCryptoCurrency,
45
+ arbitrumToken,
46
+ usdcToken,
47
+ ].find(a => a.id === id);
48
+ export const mockCurrenciesByProvider = [
49
+ {
50
+ providerId: "ethereum",
51
+ currenciesByNetwork: [mockEthCryptoCurrency],
52
+ },
53
+ ];
54
+ export const mockCurrencyIds = ["bitcoin", "ethereum", "arbitrum", "base"];
55
+ //# sourceMappingURL=currencies.mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currencies.mock.js","sourceRoot":"","sources":["../../../src/modularDrawer/__mocks__/currencies.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAG/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;AACtE,MAAM,CAAC,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;AACvE,MAAM,CAAC,MAAM,0BAA0B,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;AAC5E,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;AACpE,MAAM,CAAC,MAAM,wBAAwB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,2BAA2B,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,IAAI,EAAE,eAAe;IACrB,EAAE,EAAE,yBAAyB;IAC7B,eAAe,EAAE,4CAA4C;IAC7D,cAAc,EAAE,0BAA0B;IAC1C,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,UAAU;IAChB,MAAM,EAAE,KAAK;IACb,KAAK,EAAE;QACL;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,EAAE;SACd;KACF;CACF,CAAC;AACF,MAAM,CAAC,MAAM,SAAS,GAAkB;IACtC,IAAI,EAAE,eAAe;IACrB,EAAE,EAAE,0BAA0B;IAC9B,eAAe,EAAE,4CAA4C;IAC7D,cAAc,EAAE,qBAAqB;IACrC,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,UAAU;IAChB,MAAM,EAAE,MAAM;IACd,KAAK,EAAE;QACL;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,MAAM;YACZ,SAAS,EAAE,CAAC;SACb;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EAAU,EAAE,EAAE,CACnD,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,0BAA0B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AACpG,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,EAAU,EAAE,EAAE,CACzD;IACE,qBAAqB;IACrB,qBAAqB;IACrB,0BAA0B;IAC1B,aAAa;IACb,SAAS;CACV,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAE3B,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,UAAU,EAAE,UAAU;QACtB,mBAAmB,EAAE,CAAC,qBAAqB,CAAC;KAC7C;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ /// <reference types="jest" />
2
+ export declare const providers: ({
3
+ providerId: string;
4
+ currenciesByNetwork: import("@ledgerhq/types-cryptoassets").CryptoCurrency[];
5
+ } | {
6
+ providerId: string;
7
+ currenciesByNetwork: import("@ledgerhq/types-cryptoassets").TokenCurrency[];
8
+ })[];
9
+ export declare const res: {
10
+ result: {
11
+ currenciesByProvider: ({
12
+ providerId: string;
13
+ currenciesByNetwork: import("@ledgerhq/types-cryptoassets").CryptoCurrency[];
14
+ } | {
15
+ providerId: string;
16
+ currenciesByNetwork: import("@ledgerhq/types-cryptoassets").TokenCurrency[];
17
+ })[];
18
+ sortedCryptoCurrencies: import("@ledgerhq/types-cryptoassets").CryptoCurrency[];
19
+ };
20
+ };
21
+ export declare const useGroupedCurrenciesByProvider: jest.Mock;
22
+ //# sourceMappingURL=useGroupedCurrenciesByProvider.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGroupedCurrenciesByProvider.mock.d.ts","sourceRoot":"","sources":["../../../src/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.ts"],"names":[],"mappings":";AAYA,eAAO,MAAM,SAAS;;;;;;IAiBrB,CAAC;AAEF,eAAO,MAAM,GAAG;;;;;;;;;;;CAYf,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,IAAI,CAAC,IAG/C,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { LoadingStatus } from "@ledgerhq/live-common/deposit/type";
2
+ import { arbitrumToken, mockArbitrumCryptoCurrency, mockBaseCryptoCurrency, mockBtcCryptoCurrency, mockEthCryptoCurrency, mockInjectiveCryptoCurrency, mockScrollCryptoCurrency, usdcToken, } from "./currencies.mock";
3
+ export const providers = [
4
+ {
5
+ providerId: "bitcoin",
6
+ currenciesByNetwork: [mockBtcCryptoCurrency],
7
+ },
8
+ {
9
+ providerId: "ethereum",
10
+ currenciesByNetwork: [
11
+ mockEthCryptoCurrency,
12
+ mockArbitrumCryptoCurrency,
13
+ mockBaseCryptoCurrency,
14
+ mockScrollCryptoCurrency,
15
+ ],
16
+ },
17
+ { providerId: "arbitrum", currenciesByNetwork: [arbitrumToken] },
18
+ { providerId: "usd-coin", currenciesByNetwork: [usdcToken] },
19
+ { providerId: "injective-protocol", currenciesByNetwork: [mockInjectiveCryptoCurrency] },
20
+ ];
21
+ export const res = {
22
+ result: {
23
+ currenciesByProvider: providers,
24
+ sortedCryptoCurrencies: [
25
+ mockBtcCryptoCurrency,
26
+ mockEthCryptoCurrency,
27
+ mockArbitrumCryptoCurrency,
28
+ mockBaseCryptoCurrency,
29
+ mockScrollCryptoCurrency,
30
+ mockInjectiveCryptoCurrency,
31
+ ],
32
+ },
33
+ };
34
+ export const useGroupedCurrenciesByProvider = jest.fn(() => ({
35
+ ...res,
36
+ loadingStatus: LoadingStatus.Success,
37
+ }));
38
+ //# sourceMappingURL=useGroupedCurrenciesByProvider.mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGroupedCurrenciesByProvider.mock.js","sourceRoot":"","sources":["../../../src/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EACL,aAAa,EACb,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,2BAA2B,EAC3B,wBAAwB,EACxB,SAAS,GACV,MAAM,mBAAmB,CAAC;AAE3B,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB;QACE,UAAU,EAAE,SAAS;QACrB,mBAAmB,EAAE,CAAC,qBAAqB,CAAC;KAC7C;IACD;QACE,UAAU,EAAE,UAAU;QACtB,mBAAmB,EAAE;YACnB,qBAAqB;YACrB,0BAA0B;YAC1B,sBAAsB;YACtB,wBAAwB;SACzB;KACF;IACD,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC,aAAa,CAAC,EAAE;IAChE,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC,SAAS,CAAC,EAAE;IAC5D,EAAE,UAAU,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAC,2BAA2B,CAAC,EAAE;CACzF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,MAAM,EAAE;QACN,oBAAoB,EAAE,SAAS;QAC/B,sBAAsB,EAAE;YACtB,qBAAqB;YACrB,qBAAqB;YACrB,0BAA0B;YAC1B,sBAAsB;YACtB,wBAAwB;YACxB,2BAA2B;SAC5B;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAc,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACtE,GAAG,GAAG;IACN,aAAa,EAAE,aAAa,CAAC,OAAO;CACrC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=haveOneCommonProvider.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"haveOneCommonProvider.test.d.ts","sourceRoot":"","sources":["../../../../src/modularDrawer/utils/__tests__/haveOneCommonProvider.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ import { haveOneCommonProvider } from "../haveOneCommonProvider";
2
+ import { useGroupedCurrenciesByProvider } from "../../__mocks__/useGroupedCurrenciesByProvider.mock";
3
+ jest.mock("@ledgerhq/live-common/deposit/useGroupedCurrenciesByProvider.hook", () => ({
4
+ useGroupedCurrenciesByProvider: () => useGroupedCurrenciesByProvider(),
5
+ }));
6
+ describe("haveOneCommonProvider", () => {
7
+ it("should return false for an empty array", () => {
8
+ expect(haveOneCommonProvider([], [])).toBe(false);
9
+ });
10
+ it("should return true for a single currency with one provider", () => {
11
+ const { result } = useGroupedCurrenciesByProvider(true);
12
+ const { currenciesByProvider } = result;
13
+ expect(haveOneCommonProvider(["bitcoin"], currenciesByProvider)).toBe(true);
14
+ });
15
+ it("should return false for multiple currencies with different providers", () => {
16
+ const { result } = useGroupedCurrenciesByProvider(true);
17
+ const { currenciesByProvider } = result;
18
+ expect(haveOneCommonProvider(["bitcoin", "ethereum"], currenciesByProvider)).toBe(false);
19
+ });
20
+ it("should return true for multiple currencies with the same provider", () => {
21
+ const { result } = useGroupedCurrenciesByProvider(true);
22
+ const { currenciesByProvider } = result;
23
+ expect(haveOneCommonProvider(["ethereum", "arbitrum"], currenciesByProvider)).toBe(true);
24
+ });
25
+ });
26
+ //# sourceMappingURL=haveOneCommonProvider.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"haveOneCommonProvider.test.js","sourceRoot":"","sources":["../../../../src/modularDrawer/utils/__tests__/haveOneCommonProvider.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qDAAqD,CAAC;AAGrG,IAAI,CAAC,IAAI,CAAC,mEAAmE,EAAE,GAAG,EAAE,CAAC,CAAC;IACpF,8BAA8B,EAAE,GAAG,EAAE,CAAC,8BAA8B,EAAE;CACvE,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,EAAE,MAAM,EAAE,GAAG,8BAA8B,CAAC,IAAI,CAAkC,CAAC;QACzF,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAAC;QAExC,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,MAAM,EAAE,MAAM,EAAE,GAAG,8BAA8B,CAAC,IAAI,CAAkC,CAAC;QACzF,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAAC;QAExC,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,EAAE,MAAM,EAAE,GAAG,8BAA8B,CAAC,IAAI,CAAkC,CAAC;QACzF,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAAC;QAExC,MAAM,CAAC,qBAAqB,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { CurrenciesByProviderId } from "@ledgerhq/live-common/deposit/type";
2
+ /**
3
+ * This function checks if all currencies in the provided array
4
+ * it stopped at the first currency that does not match to prevent unnecessary iterations.
5
+ *
6
+ * @param currenciesIdsArray array of currency IDs to check
7
+ * @param currenciesByProvider array of currencies grouped by provider
8
+ * @returns boolean indicating whether all currencies in the array have one common provider
9
+ */
10
+ export declare const haveOneCommonProvider: (currenciesIdsArray: string[], currenciesByProvider: CurrenciesByProviderId[]) => boolean;
11
+ //# sourceMappingURL=haveOneCommonProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"haveOneCommonProvider.d.ts","sourceRoot":"","sources":["../../../src/modularDrawer/utils/haveOneCommonProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAE5E;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,uBACZ,MAAM,EAAE,wBACN,sBAAsB,EAAE,KAC7C,OAiBF,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * This function checks if all currencies in the provided array
3
+ * it stopped at the first currency that does not match to prevent unnecessary iterations.
4
+ *
5
+ * @param currenciesIdsArray array of currency IDs to check
6
+ * @param currenciesByProvider array of currencies grouped by provider
7
+ * @returns boolean indicating whether all currencies in the array have one common provider
8
+ */
9
+ export const haveOneCommonProvider = (currenciesIdsArray, currenciesByProvider) => {
10
+ if (currenciesIdsArray.length === 0)
11
+ return false;
12
+ const providerIds = new Set();
13
+ for (const currencyId of currenciesIdsArray) {
14
+ for (const provider of currenciesByProvider) {
15
+ if (provider.currenciesByNetwork.some(currency => currency.id === currencyId)) {
16
+ providerIds.add(provider.providerId);
17
+ if (providerIds.size > 1) {
18
+ return false;
19
+ }
20
+ }
21
+ }
22
+ }
23
+ return true;
24
+ };
25
+ //# sourceMappingURL=haveOneCommonProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"haveOneCommonProvider.js","sourceRoot":"","sources":["../../../src/modularDrawer/utils/haveOneCommonProvider.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,kBAA4B,EAC5B,oBAA8C,EACrC,EAAE;IACX,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAElD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAEtC,KAAK,MAAM,UAAU,IAAI,kBAAkB,EAAE;QAC3C,KAAK,MAAM,QAAQ,IAAI,oBAAoB,EAAE;YAC3C,IAAI,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE;gBAC7E,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACrC,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE;oBACxB,OAAO,KAAK,CAAC;iBACd;aACF;SACF;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { CryptoOrTokenCurrency } from "@ledgerhq/types-cryptoassets";
2
2
  import { CurrenciesByProviderId } from "../../deposit/type";
3
+ import { haveOneCommonProvider } from "./haveOneCommonProvider";
3
4
  declare function isCorrespondingCurrency(elem: CryptoOrTokenCurrency, network: CryptoOrTokenCurrency): boolean;
4
5
  declare const getEffectiveCurrency: (currency: CryptoOrTokenCurrency, provider: CurrenciesByProviderId, currencyIds: string[]) => CryptoOrTokenCurrency;
5
- export { isCorrespondingCurrency, getEffectiveCurrency };
6
+ export { isCorrespondingCurrency, getEffectiveCurrency, haveOneCommonProvider };
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modularDrawer/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,iBAAS,uBAAuB,CAC9B,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAQT;AAED,QAAA,MAAM,oBAAoB,aACd,qBAAqB,YACrB,sBAAsB,eACnB,MAAM,EAAE,0BAOtB,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modularDrawer/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,iBAAS,uBAAuB,CAC9B,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAQT;AAED,QAAA,MAAM,oBAAoB,aACd,qBAAqB,YACrB,sBAAsB,eACnB,MAAM,EAAE,0BAOtB,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { haveOneCommonProvider } from "./haveOneCommonProvider";
1
2
  function isCorrespondingCurrency(elem, network) {
2
3
  if (elem.type === "TokenCurrency") {
3
4
  return elem.parentCurrency?.id === network.id || elem.id === network.id;
@@ -13,5 +14,5 @@ const getEffectiveCurrency = (currency, provider, currencyIds) => {
13
14
  return currency;
14
15
  return provider.currenciesByNetwork.find(elem => currencyIds.includes(elem.id)) ?? currency;
15
16
  };
16
- export { isCorrespondingCurrency, getEffectiveCurrency };
17
+ export { isCorrespondingCurrency, getEffectiveCurrency, haveOneCommonProvider };
17
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modularDrawer/utils/index.ts"],"names":[],"mappings":"AAGA,SAAS,uBAAuB,CAC9B,IAA2B,EAC3B,OAA8B;IAE9B,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE;QACjC,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;KACzE;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE;QAClC,OAAO,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,oBAAoB,GAAG,CAC3B,QAA+B,EAC/B,QAAgC,EAChC,WAAqB,EACrB,EAAE;IACF,MAAM,kBAAkB,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE7D,IAAI,kBAAkB;QAAE,OAAO,QAAQ,CAAC;IAExC,OAAO,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;AAC9F,CAAC,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modularDrawer/utils/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,SAAS,uBAAuB,CAC9B,IAA2B,EAC3B,OAA8B;IAE9B,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE;QACjC,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;KACzE;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE;QAClC,OAAO,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,oBAAoB,GAAG,CAC3B,QAA+B,EAC/B,QAAgC,EAChC,WAAqB,EACrB,EAAE;IACF,MAAM,kBAAkB,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE7D,IAAI,kBAAkB;QAAE,OAAO,QAAQ,CAAC;IAExC,OAAO,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;AAC9F,CAAC,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ledgerhq/live-common",
3
3
  "description": "Common ground for the Ledger Live apps",
4
- "version": "34.42.0-nightly.2",
4
+ "version": "34.42.0-nightly.4",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/LedgerHQ/ledger-live.git"
@@ -162,32 +162,32 @@
162
162
  "xstate": "^5.19.2",
163
163
  "yargs": "^17.0.0",
164
164
  "zod": "^3.22.4",
165
- "@ledgerhq/coin-algorand": "^0.9.14-nightly.1",
166
- "@ledgerhq/coin-aptos": "^2.5.2-nightly.1",
167
- "@ledgerhq/coin-bitcoin": "^0.17.1-nightly.1",
168
- "@ledgerhq/coin-cardano": "^0.9.1-nightly.1",
169
- "@ledgerhq/coin-casper": "^2.0.5-nightly.1",
170
- "@ledgerhq/coin-celo": "^1.1.12-nightly.1",
171
- "@ledgerhq/coin-cosmos": "^0.16.3-nightly.1",
172
- "@ledgerhq/coin-evm": "^2.23.1-nightly.1",
173
- "@ledgerhq/coin-filecoin": "^1.9.14-nightly.1",
174
- "@ledgerhq/coin-framework": "^5.7.0-nightly.1",
175
- "@ledgerhq/coin-hedera": "^1.8.3-nightly.1",
176
- "@ledgerhq/coin-icon": "^0.11.1-nightly.1",
177
- "@ledgerhq/coin-internet_computer": "^1.7.14-nightly.1",
178
- "@ledgerhq/coin-mina": "^1.1.13-nightly.1",
179
- "@ledgerhq/coin-multiversx": "^0.4.14-nightly.1",
180
- "@ledgerhq/coin-near": "^0.11.14-nightly.1",
181
- "@ledgerhq/coin-polkadot": "^6.3.2-nightly.1",
182
- "@ledgerhq/coin-solana": "^0.28.0-nightly.1",
183
- "@ledgerhq/coin-stacks": "^0.8.14-nightly.1",
184
- "@ledgerhq/coin-stellar": "^5.3.2-nightly.1",
185
- "@ledgerhq/coin-sui": "^0.7.0-nightly.1",
186
- "@ledgerhq/coin-tezos": "^5.6.1-nightly.1",
187
- "@ledgerhq/coin-ton": "^0.13.3-nightly.1",
188
- "@ledgerhq/coin-tron": "^4.4.2-nightly.1",
189
- "@ledgerhq/coin-vechain": "^2.7.14-nightly.1",
190
- "@ledgerhq/coin-xrp": "^6.4.1-nightly.1",
165
+ "@ledgerhq/coin-algorand": "^0.9.14-nightly.2",
166
+ "@ledgerhq/coin-aptos": "^2.6.0-nightly.2",
167
+ "@ledgerhq/coin-bitcoin": "^0.18.0-nightly.3",
168
+ "@ledgerhq/coin-cardano": "^0.9.1-nightly.2",
169
+ "@ledgerhq/coin-casper": "^2.0.5-nightly.2",
170
+ "@ledgerhq/coin-celo": "^1.1.12-nightly.3",
171
+ "@ledgerhq/coin-cosmos": "^0.16.3-nightly.2",
172
+ "@ledgerhq/coin-evm": "^2.24.0-nightly.3",
173
+ "@ledgerhq/coin-filecoin": "^1.9.14-nightly.2",
174
+ "@ledgerhq/coin-framework": "^5.7.0-nightly.2",
175
+ "@ledgerhq/coin-hedera": "^1.8.3-nightly.2",
176
+ "@ledgerhq/coin-icon": "^0.11.1-nightly.2",
177
+ "@ledgerhq/coin-internet_computer": "^1.7.14-nightly.2",
178
+ "@ledgerhq/coin-mina": "^1.1.13-nightly.2",
179
+ "@ledgerhq/coin-multiversx": "^0.4.14-nightly.2",
180
+ "@ledgerhq/coin-near": "^0.11.14-nightly.2",
181
+ "@ledgerhq/coin-polkadot": "^6.4.0-nightly.2",
182
+ "@ledgerhq/coin-solana": "^0.28.0-nightly.2",
183
+ "@ledgerhq/coin-stacks": "^0.8.14-nightly.2",
184
+ "@ledgerhq/coin-stellar": "^5.4.0-nightly.2",
185
+ "@ledgerhq/coin-sui": "^0.7.0-nightly.3",
186
+ "@ledgerhq/coin-tezos": "^5.7.0-nightly.2",
187
+ "@ledgerhq/coin-ton": "^0.13.3-nightly.2",
188
+ "@ledgerhq/coin-tron": "^4.5.0-nightly.2",
189
+ "@ledgerhq/coin-vechain": "^2.7.14-nightly.2",
190
+ "@ledgerhq/coin-xrp": "^6.5.0-nightly.2",
191
191
  "@ledgerhq/crypto-icons-ui": "^1.16.0",
192
192
  "@ledgerhq/cryptoassets": "^13.22.0-nightly.5",
193
193
  "@ledgerhq/device-core": "^0.5.3-nightly.0",
@@ -199,7 +199,7 @@
199
199
  "@ledgerhq/hw-app-celo": "^6.33.10-nightly.0",
200
200
  "@ledgerhq/hw-app-cosmos": "^6.32.4-nightly.0",
201
201
  "@ledgerhq/hw-app-eth": "^6.45.12-nightly.0",
202
- "@ledgerhq/hw-app-exchange": "^0.10.4-nightly.0",
202
+ "@ledgerhq/hw-app-exchange": "^0.11.0-nightly.1",
203
203
  "@ledgerhq/hw-app-hedera": "^1.2.4-nightly.0",
204
204
  "@ledgerhq/hw-app-icon": "^1.3.4-nightly.0",
205
205
  "@ledgerhq/hw-app-multiversx": "^6.24.4-nightly.0",
@@ -215,17 +215,17 @@
215
215
  "@ledgerhq/hw-transport-mocker": "^6.29.8-nightly.0",
216
216
  "@ledgerhq/ledger-cal-service": "^1.2.1-nightly.1",
217
217
  "@ledgerhq/live-config": "^3.1.0",
218
- "@ledgerhq/live-countervalues": "^0.5.14-nightly.1",
219
- "@ledgerhq/live-countervalues-react": "^0.2.43-nightly.1",
218
+ "@ledgerhq/live-countervalues": "^0.5.14-nightly.2",
219
+ "@ledgerhq/live-countervalues-react": "^0.2.43-nightly.2",
220
220
  "@ledgerhq/live-dmk-shared": "^0.11.0",
221
221
  "@ledgerhq/live-env": "^2.12.0-nightly.1",
222
222
  "@ledgerhq/live-hooks": "0.1.0",
223
223
  "@ledgerhq/live-network": "^2.0.13-nightly.1",
224
- "@ledgerhq/live-nft": "^0.8.14-nightly.1",
224
+ "@ledgerhq/live-nft": "^0.8.14-nightly.2",
225
225
  "@ledgerhq/live-promise": "^0.1.1",
226
- "@ledgerhq/live-signer-evm": "^0.5.7-nightly.1",
227
- "@ledgerhq/live-signer-solana": "^0.4.2-nightly.1",
228
- "@ledgerhq/live-wallet": "^0.11.5-nightly.2",
226
+ "@ledgerhq/live-signer-evm": "^0.5.7-nightly.3",
227
+ "@ledgerhq/live-signer-solana": "^0.4.2-nightly.2",
228
+ "@ledgerhq/live-wallet": "^0.11.5-nightly.3",
229
229
  "@ledgerhq/logs": "^6.13.0",
230
230
  "@ledgerhq/speculos-transport": "^0.2.6-nightly.1",
231
231
  "@ledgerhq/wallet-api-acre-module": "^0.5.0",
@@ -1,6 +1,7 @@
1
- import type {
1
+ import {
2
2
  Account,
3
3
  Balance,
4
+ Block,
4
5
  BlockInfo,
5
6
  Operation,
6
7
  FeeEstimation,
@@ -190,4 +191,10 @@ export const getNetworkAlpacaApi = (networkFamily: string) =>
190
191
  listOperations: buildListOperations(networkFamily),
191
192
  lastBlock: buildLastBlock(networkFamily),
192
193
  craftTransaction: buildCraftTransaction(networkFamily),
194
+ getBlock(_height): Promise<Block<any>> {
195
+ throw new Error("getBlock is not supported");
196
+ },
197
+ getBlockInfo(_height: number): Promise<BlockInfo> {
198
+ throw new Error("getBlockInfo is not supported");
199
+ },
193
200
  }) satisfies Api<any>;
@@ -13,10 +13,12 @@ export type CompleteExchangeStep =
13
13
 
14
14
  export class CompleteExchangeError extends Error {
15
15
  step: CompleteExchangeStep;
16
+ title?: string;
16
17
 
17
- constructor(step: CompleteExchangeStep, message?: string) {
18
+ constructor(step: CompleteExchangeStep, title?: string, message?: string) {
18
19
  super(message);
19
20
  this.name = "CompleteExchangeError";
21
+ this.title = title;
20
22
  this.step = step;
21
23
  }
22
24
  }
@@ -26,8 +28,8 @@ export function convertTransportError(
26
28
  err: unknown,
27
29
  ): CompleteExchangeError | unknown {
28
30
  if (err instanceof TransportStatusError) {
29
- const errorMessage = getExchangeErrorMessage(err.statusCode, step);
30
- return new CompleteExchangeError(step, errorMessage);
31
+ const { errorName, errorMessage } = getExchangeErrorMessage(err.statusCode, step);
32
+ return new CompleteExchangeError(step, errorName, errorMessage);
31
33
  }
32
34
  return err;
33
35
  }
@@ -175,7 +175,7 @@ const completeExchange = (
175
175
  } catch (e) {
176
176
  if (e instanceof TransportStatusError && e.statusCode === 0x6a83) {
177
177
  throw new WrongDeviceForAccountPayout(
178
- getExchangeErrorMessage(e.statusCode, currentStep),
178
+ getExchangeErrorMessage(e.statusCode, currentStep).errorMessage,
179
179
  {
180
180
  accountName: getDefaultAccountName(payoutAccount),
181
181
  },
@@ -217,7 +217,7 @@ const completeExchange = (
217
217
  if (e instanceof TransportStatusError && e.statusCode === 0x6a83) {
218
218
  log(COMPLETE_EXCHANGE_LOG, "transport error");
219
219
  throw new WrongDeviceForAccountRefund(
220
- getExchangeErrorMessage(e.statusCode, currentStep),
220
+ getExchangeErrorMessage(e.statusCode, currentStep).errorMessage,
221
221
  {
222
222
  accountName: getDefaultAccountName(refundAccount),
223
223
  },
@@ -0,0 +1,62 @@
1
+ import { getCryptoCurrencyById } from "@ledgerhq/live-common/currencies/index";
2
+ import { TokenCurrency } from "@ledgerhq/types-cryptoassets";
3
+
4
+ export const mockBtcCryptoCurrency = getCryptoCurrencyById("bitcoin");
5
+ export const mockEthCryptoCurrency = getCryptoCurrencyById("ethereum");
6
+ export const mockArbitrumCryptoCurrency = getCryptoCurrencyById("arbitrum");
7
+ export const mockBaseCryptoCurrency = getCryptoCurrencyById("base");
8
+ export const mockScrollCryptoCurrency = getCryptoCurrencyById("scroll");
9
+ export const mockInjectiveCryptoCurrency = getCryptoCurrencyById("injective");
10
+
11
+ export const arbitrumToken: TokenCurrency = {
12
+ type: "TokenCurrency",
13
+ id: "arbitrum/erc20/arbitrum",
14
+ contractAddress: "0x912CE59144191C1204E64559FE8253a0e49E6548",
15
+ parentCurrency: mockArbitrumCryptoCurrency,
16
+ tokenType: "erc20",
17
+ name: "Arbitrum",
18
+ ticker: "ARB",
19
+ units: [
20
+ {
21
+ name: "Arbitrum",
22
+ code: "ARB",
23
+ magnitude: 18,
24
+ },
25
+ ],
26
+ };
27
+ export const usdcToken: TokenCurrency = {
28
+ type: "TokenCurrency",
29
+ id: "ethereum/erc20/usd__coin",
30
+ contractAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
31
+ parentCurrency: mockEthCryptoCurrency,
32
+ tokenType: "erc20",
33
+ name: "USD Coin",
34
+ ticker: "USDC",
35
+ units: [
36
+ {
37
+ name: "USD Coin",
38
+ code: "USDC",
39
+ magnitude: 6,
40
+ },
41
+ ],
42
+ };
43
+
44
+ export const findCryptoCurrencyById = (id: string) =>
45
+ [mockBtcCryptoCurrency, mockEthCryptoCurrency, mockArbitrumCryptoCurrency].find(a => a.id === id);
46
+ export const getTokenOrCryptoCurrencyById = (id: string) =>
47
+ [
48
+ mockBtcCryptoCurrency,
49
+ mockEthCryptoCurrency,
50
+ mockArbitrumCryptoCurrency,
51
+ arbitrumToken,
52
+ usdcToken,
53
+ ].find(a => a.id === id);
54
+
55
+ export const mockCurrenciesByProvider = [
56
+ {
57
+ providerId: "ethereum",
58
+ currenciesByNetwork: [mockEthCryptoCurrency],
59
+ },
60
+ ];
61
+
62
+ export const mockCurrencyIds = ["bitcoin", "ethereum", "arbitrum", "base"];
@@ -0,0 +1,49 @@
1
+ import { LoadingStatus } from "@ledgerhq/live-common/deposit/type";
2
+ import {
3
+ arbitrumToken,
4
+ mockArbitrumCryptoCurrency,
5
+ mockBaseCryptoCurrency,
6
+ mockBtcCryptoCurrency,
7
+ mockEthCryptoCurrency,
8
+ mockInjectiveCryptoCurrency,
9
+ mockScrollCryptoCurrency,
10
+ usdcToken,
11
+ } from "./currencies.mock";
12
+
13
+ export const providers = [
14
+ {
15
+ providerId: "bitcoin",
16
+ currenciesByNetwork: [mockBtcCryptoCurrency],
17
+ },
18
+ {
19
+ providerId: "ethereum",
20
+ currenciesByNetwork: [
21
+ mockEthCryptoCurrency,
22
+ mockArbitrumCryptoCurrency,
23
+ mockBaseCryptoCurrency,
24
+ mockScrollCryptoCurrency,
25
+ ],
26
+ },
27
+ { providerId: "arbitrum", currenciesByNetwork: [arbitrumToken] },
28
+ { providerId: "usd-coin", currenciesByNetwork: [usdcToken] },
29
+ { providerId: "injective-protocol", currenciesByNetwork: [mockInjectiveCryptoCurrency] },
30
+ ];
31
+
32
+ export const res = {
33
+ result: {
34
+ currenciesByProvider: providers,
35
+ sortedCryptoCurrencies: [
36
+ mockBtcCryptoCurrency,
37
+ mockEthCryptoCurrency,
38
+ mockArbitrumCryptoCurrency,
39
+ mockBaseCryptoCurrency,
40
+ mockScrollCryptoCurrency,
41
+ mockInjectiveCryptoCurrency,
42
+ ],
43
+ },
44
+ };
45
+
46
+ export const useGroupedCurrenciesByProvider: jest.Mock = jest.fn(() => ({
47
+ ...res,
48
+ loadingStatus: LoadingStatus.Success,
49
+ }));
@@ -0,0 +1,34 @@
1
+ import { haveOneCommonProvider } from "../haveOneCommonProvider";
2
+ import { useGroupedCurrenciesByProvider } from "../../__mocks__/useGroupedCurrenciesByProvider.mock";
3
+ import { LoadingBasedGroupedCurrencies } from "@ledgerhq/live-common/deposit/type";
4
+
5
+ jest.mock("@ledgerhq/live-common/deposit/useGroupedCurrenciesByProvider.hook", () => ({
6
+ useGroupedCurrenciesByProvider: () => useGroupedCurrenciesByProvider(),
7
+ }));
8
+
9
+ describe("haveOneCommonProvider", () => {
10
+ it("should return false for an empty array", () => {
11
+ expect(haveOneCommonProvider([], [])).toBe(false);
12
+ });
13
+
14
+ it("should return true for a single currency with one provider", () => {
15
+ const { result } = useGroupedCurrenciesByProvider(true) as LoadingBasedGroupedCurrencies;
16
+ const { currenciesByProvider } = result;
17
+
18
+ expect(haveOneCommonProvider(["bitcoin"], currenciesByProvider)).toBe(true);
19
+ });
20
+
21
+ it("should return false for multiple currencies with different providers", () => {
22
+ const { result } = useGroupedCurrenciesByProvider(true) as LoadingBasedGroupedCurrencies;
23
+ const { currenciesByProvider } = result;
24
+
25
+ expect(haveOneCommonProvider(["bitcoin", "ethereum"], currenciesByProvider)).toBe(false);
26
+ });
27
+
28
+ it("should return true for multiple currencies with the same provider", () => {
29
+ const { result } = useGroupedCurrenciesByProvider(true) as LoadingBasedGroupedCurrencies;
30
+ const { currenciesByProvider } = result;
31
+
32
+ expect(haveOneCommonProvider(["ethereum", "arbitrum"], currenciesByProvider)).toBe(true);
33
+ });
34
+ });