@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.
- package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts +3 -1
- package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js +6 -0
- package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
- package/lib/exchange/error.d.ts +2 -1
- package/lib/exchange/error.d.ts.map +1 -1
- package/lib/exchange/error.js +5 -3
- package/lib/exchange/error.js.map +1 -1
- package/lib/exchange/swap/completeExchange.js +2 -2
- package/lib/exchange/swap/completeExchange.js.map +1 -1
- package/lib/modularDrawer/__mocks__/currencies.mock.d.ts +17 -0
- package/lib/modularDrawer/__mocks__/currencies.mock.d.ts.map +1 -0
- package/lib/modularDrawer/__mocks__/currencies.mock.js +60 -0
- package/lib/modularDrawer/__mocks__/currencies.mock.js.map +1 -0
- package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts +22 -0
- package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts.map +1 -0
- package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js +41 -0
- package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js.map +1 -0
- package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts +2 -0
- package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts.map +1 -0
- package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js +28 -0
- package/lib/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js.map +1 -0
- package/lib/modularDrawer/utils/haveOneCommonProvider.d.ts +11 -0
- package/lib/modularDrawer/utils/haveOneCommonProvider.d.ts.map +1 -0
- package/lib/modularDrawer/utils/haveOneCommonProvider.js +29 -0
- package/lib/modularDrawer/utils/haveOneCommonProvider.js.map +1 -0
- package/lib/modularDrawer/utils/index.d.ts +2 -1
- package/lib/modularDrawer/utils/index.d.ts.map +1 -1
- package/lib/modularDrawer/utils/index.js +3 -1
- package/lib/modularDrawer/utils/index.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts +3 -1
- package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js +6 -0
- package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
- package/lib-es/exchange/error.d.ts +2 -1
- package/lib-es/exchange/error.d.ts.map +1 -1
- package/lib-es/exchange/error.js +5 -3
- package/lib-es/exchange/error.js.map +1 -1
- package/lib-es/exchange/swap/completeExchange.js +2 -2
- package/lib-es/exchange/swap/completeExchange.js.map +1 -1
- package/lib-es/modularDrawer/__mocks__/currencies.mock.d.ts +17 -0
- package/lib-es/modularDrawer/__mocks__/currencies.mock.d.ts.map +1 -0
- package/lib-es/modularDrawer/__mocks__/currencies.mock.js +55 -0
- package/lib-es/modularDrawer/__mocks__/currencies.mock.js.map +1 -0
- package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts +22 -0
- package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts.map +1 -0
- package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js +38 -0
- package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js.map +1 -0
- package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts +2 -0
- package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.d.ts.map +1 -0
- package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js +26 -0
- package/lib-es/modularDrawer/utils/__tests__/haveOneCommonProvider.test.js.map +1 -0
- package/lib-es/modularDrawer/utils/haveOneCommonProvider.d.ts +11 -0
- package/lib-es/modularDrawer/utils/haveOneCommonProvider.d.ts.map +1 -0
- package/lib-es/modularDrawer/utils/haveOneCommonProvider.js +25 -0
- package/lib-es/modularDrawer/utils/haveOneCommonProvider.js.map +1 -0
- package/lib-es/modularDrawer/utils/index.d.ts +2 -1
- package/lib-es/modularDrawer/utils/index.d.ts.map +1 -1
- package/lib-es/modularDrawer/utils/index.js +2 -1
- package/lib-es/modularDrawer/utils/index.js.map +1 -1
- package/package.json +34 -34
- package/src/bridge/generic-alpaca/alpaca/network/network-alpaca.ts +8 -1
- package/src/exchange/error.ts +5 -3
- package/src/exchange/swap/completeExchange.ts +2 -2
- package/src/modularDrawer/__mocks__/currencies.mock.ts +62 -0
- package/src/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.ts +49 -0
- package/src/modularDrawer/utils/__tests__/haveOneCommonProvider.test.ts +34 -0
- package/src/modularDrawer/utils/haveOneCommonProvider.ts +31 -0
- 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 @@
|
|
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;
|
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":"
|
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.
|
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.
|
166
|
-
"@ledgerhq/coin-aptos": "^2.
|
167
|
-
"@ledgerhq/coin-bitcoin": "^0.
|
168
|
-
"@ledgerhq/coin-cardano": "^0.9.1-nightly.
|
169
|
-
"@ledgerhq/coin-casper": "^2.0.5-nightly.
|
170
|
-
"@ledgerhq/coin-celo": "^1.1.12-nightly.
|
171
|
-
"@ledgerhq/coin-cosmos": "^0.16.3-nightly.
|
172
|
-
"@ledgerhq/coin-evm": "^2.
|
173
|
-
"@ledgerhq/coin-filecoin": "^1.9.14-nightly.
|
174
|
-
"@ledgerhq/coin-framework": "^5.7.0-nightly.
|
175
|
-
"@ledgerhq/coin-hedera": "^1.8.3-nightly.
|
176
|
-
"@ledgerhq/coin-icon": "^0.11.1-nightly.
|
177
|
-
"@ledgerhq/coin-internet_computer": "^1.7.14-nightly.
|
178
|
-
"@ledgerhq/coin-mina": "^1.1.13-nightly.
|
179
|
-
"@ledgerhq/coin-multiversx": "^0.4.14-nightly.
|
180
|
-
"@ledgerhq/coin-near": "^0.11.14-nightly.
|
181
|
-
"@ledgerhq/coin-polkadot": "^6.
|
182
|
-
"@ledgerhq/coin-solana": "^0.28.0-nightly.
|
183
|
-
"@ledgerhq/coin-stacks": "^0.8.14-nightly.
|
184
|
-
"@ledgerhq/coin-stellar": "^5.
|
185
|
-
"@ledgerhq/coin-sui": "^0.7.0-nightly.
|
186
|
-
"@ledgerhq/coin-tezos": "^5.
|
187
|
-
"@ledgerhq/coin-ton": "^0.13.3-nightly.
|
188
|
-
"@ledgerhq/coin-tron": "^4.
|
189
|
-
"@ledgerhq/coin-vechain": "^2.7.14-nightly.
|
190
|
-
"@ledgerhq/coin-xrp": "^6.
|
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.
|
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.
|
219
|
-
"@ledgerhq/live-countervalues-react": "^0.2.43-nightly.
|
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.
|
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.
|
227
|
-
"@ledgerhq/live-signer-solana": "^0.4.2-nightly.
|
228
|
-
"@ledgerhq/live-wallet": "^0.11.5-nightly.
|
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
|
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>;
|
package/src/exchange/error.ts
CHANGED
@@ -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
|
+
});
|