@ledgerhq/live-common 21.29.0 → 21.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/lib/__tests__/test-helpers/bridge.js +1 -1
  2. package/lib/__tests__/test-helpers/bridge.js.map +1 -1
  3. package/lib/__tests__/test-helpers/setup.js +1 -0
  4. package/lib/__tests__/test-helpers/setup.js.map +1 -1
  5. package/lib/account/support.d.ts.map +1 -1
  6. package/lib/account/support.js.map +1 -1
  7. package/lib/apps/hw.d.ts.map +1 -1
  8. package/lib/apps/hw.js +8 -3
  9. package/lib/apps/hw.js.map +1 -1
  10. package/lib/bot/engine.js +1 -1
  11. package/lib/bot/engine.js.map +1 -1
  12. package/lib/bridge/jsHelpers.js +1 -1
  13. package/lib/data/icons/react/celo.d.ts +8 -0
  14. package/lib/data/icons/react/celo.d.ts.map +1 -0
  15. package/lib/data/icons/react/celo.js +32 -0
  16. package/lib/data/icons/react/celo.js.map +1 -0
  17. package/lib/data/icons/react/index.d.ts +1 -0
  18. package/lib/data/icons/react/index.d.ts.map +1 -1
  19. package/lib/data/icons/react/index.js +11 -8
  20. package/lib/data/icons/react/index.js.map +1 -1
  21. package/lib/data/icons/reactNative/celo.d.ts +8 -0
  22. package/lib/data/icons/reactNative/celo.d.ts.map +1 -0
  23. package/lib/data/icons/reactNative/celo.js +33 -0
  24. package/lib/data/icons/reactNative/celo.js.map +1 -0
  25. package/lib/data/icons/reactNative/index.d.ts +1 -0
  26. package/lib/data/icons/reactNative/index.d.ts.map +1 -1
  27. package/lib/data/icons/reactNative/index.js +11 -8
  28. package/lib/data/icons/reactNative/index.js.map +1 -1
  29. package/lib/env.d.ts +20 -5
  30. package/lib/env.d.ts.map +1 -1
  31. package/lib/env.js +15 -0
  32. package/lib/env.js.map +1 -1
  33. package/lib/env.react.d.ts +1 -1
  34. package/lib/env.react.d.ts.map +1 -1
  35. package/lib/families/celo/api/hubble.d.ts +8 -0
  36. package/lib/families/celo/api/hubble.d.ts.map +1 -0
  37. package/lib/families/celo/api/hubble.js +144 -0
  38. package/lib/families/celo/api/hubble.js.map +1 -0
  39. package/lib/families/celo/api/index.d.ts +2 -0
  40. package/lib/families/celo/api/index.d.ts.map +1 -0
  41. package/lib/families/celo/api/index.js +13 -0
  42. package/lib/families/celo/api/index.js.map +1 -0
  43. package/lib/families/celo/api/sdk.d.ts +3 -0
  44. package/lib/families/celo/api/sdk.d.ts.map +1 -0
  45. package/lib/families/celo/api/sdk.js +13 -0
  46. package/lib/families/celo/api/sdk.js.map +1 -0
  47. package/lib/families/celo/bridge/js.d.ts +8 -0
  48. package/lib/families/celo/bridge/js.d.ts.map +1 -0
  49. package/lib/families/celo/bridge/js.js +87 -0
  50. package/lib/families/celo/bridge/js.js.map +1 -0
  51. package/lib/families/celo/cli-transaction.d.ts +14 -0
  52. package/lib/families/celo/cli-transaction.d.ts.map +1 -0
  53. package/lib/families/celo/cli-transaction.js +37 -0
  54. package/lib/families/celo/cli-transaction.js.map +1 -0
  55. package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts +5 -0
  56. package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts.map +1 -0
  57. package/lib/families/celo/datasets/celo.scanAccounts.1.js +12 -0
  58. package/lib/families/celo/datasets/celo.scanAccounts.1.js.map +1 -0
  59. package/lib/families/celo/deviceTransactionConfig.d.ts +4 -0
  60. package/lib/families/celo/deviceTransactionConfig.d.ts.map +1 -0
  61. package/lib/families/celo/deviceTransactionConfig.js +16 -0
  62. package/lib/families/celo/deviceTransactionConfig.js.map +1 -0
  63. package/lib/families/celo/hw-app-celo.d.ts +19 -0
  64. package/lib/families/celo/hw-app-celo.d.ts.map +1 -0
  65. package/lib/families/celo/hw-app-celo.js +147 -0
  66. package/lib/families/celo/hw-app-celo.js.map +1 -0
  67. package/lib/families/celo/hw-getAddress.d.ts +2 -0
  68. package/lib/families/celo/hw-getAddress.d.ts.map +1 -0
  69. package/lib/families/celo/hw-getAddress.js +13 -0
  70. package/lib/families/celo/hw-getAddress.js.map +1 -0
  71. package/lib/families/celo/js-broadcast.d.ts +8 -0
  72. package/lib/families/celo/js-broadcast.d.ts.map +1 -0
  73. package/lib/families/celo/js-broadcast.js +58 -0
  74. package/lib/families/celo/js-broadcast.js.map +1 -0
  75. package/lib/families/celo/js-buildTransaction.d.ts +6 -0
  76. package/lib/families/celo/js-buildTransaction.d.ts.map +1 -0
  77. package/lib/families/celo/js-buildTransaction.js +89 -0
  78. package/lib/families/celo/js-buildTransaction.js.map +1 -0
  79. package/lib/families/celo/js-createTransaction.d.ts +4 -0
  80. package/lib/families/celo/js-createTransaction.d.ts.map +1 -0
  81. package/lib/families/celo/js-createTransaction.js +12 -0
  82. package/lib/families/celo/js-createTransaction.js.map +1 -0
  83. package/lib/families/celo/js-estimateMaxSpendable.d.ts +10 -0
  84. package/lib/families/celo/js-estimateMaxSpendable.d.ts.map +1 -0
  85. package/lib/families/celo/js-estimateMaxSpendable.js +77 -0
  86. package/lib/families/celo/js-estimateMaxSpendable.js.map +1 -0
  87. package/lib/families/celo/js-getFeesForTransaction.d.ts +8 -0
  88. package/lib/families/celo/js-getFeesForTransaction.d.ts.map +1 -0
  89. package/lib/families/celo/js-getFeesForTransaction.js +76 -0
  90. package/lib/families/celo/js-getFeesForTransaction.js.map +1 -0
  91. package/lib/families/celo/js-getTransactionStatus.d.ts +5 -0
  92. package/lib/families/celo/js-getTransactionStatus.d.ts.map +1 -0
  93. package/lib/families/celo/js-getTransactionStatus.js +86 -0
  94. package/lib/families/celo/js-getTransactionStatus.js.map +1 -0
  95. package/lib/families/celo/js-prepareTransaction.d.ts +5 -0
  96. package/lib/families/celo/js-prepareTransaction.d.ts.map +1 -0
  97. package/lib/families/celo/js-prepareTransaction.js +76 -0
  98. package/lib/families/celo/js-prepareTransaction.js.map +1 -0
  99. package/lib/families/celo/js-signOperation.d.ts +13 -0
  100. package/lib/families/celo/js-signOperation.d.ts.map +1 -0
  101. package/lib/families/celo/js-signOperation.js +150 -0
  102. package/lib/families/celo/js-signOperation.js.map +1 -0
  103. package/lib/families/celo/js-synchronisation.d.ts +10 -0
  104. package/lib/families/celo/js-synchronisation.d.ts.map +1 -0
  105. package/lib/families/celo/js-synchronisation.js +88 -0
  106. package/lib/families/celo/js-synchronisation.js.map +1 -0
  107. package/lib/families/celo/specs.d.ts +7 -0
  108. package/lib/families/celo/specs.d.ts.map +1 -0
  109. package/lib/families/celo/specs.js +56 -0
  110. package/lib/families/celo/specs.js.map +1 -0
  111. package/lib/families/celo/speculos-deviceActions.d.ts +7 -0
  112. package/lib/families/celo/speculos-deviceActions.d.ts.map +1 -0
  113. package/lib/families/celo/speculos-deviceActions.js +53 -0
  114. package/lib/families/celo/speculos-deviceActions.js.map +1 -0
  115. package/lib/families/celo/transaction.d.ts +11 -0
  116. package/lib/families/celo/transaction.d.ts.map +1 -0
  117. package/lib/families/celo/transaction.js +39 -0
  118. package/lib/families/celo/transaction.js.map +1 -0
  119. package/lib/families/celo/types.d.ts +16 -0
  120. package/lib/families/celo/types.d.ts.map +1 -0
  121. package/lib/families/celo/types.js +6 -0
  122. package/lib/families/celo/types.js.map +1 -0
  123. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts +1 -0
  124. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts.map +1 -1
  125. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js +1 -0
  126. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js.map +1 -1
  127. package/lib/families/ethereum/modules/erc1155.d.ts.map +1 -1
  128. package/lib/families/ethereum/modules/erc1155.js +8 -2
  129. package/lib/families/ethereum/modules/erc1155.js.map +1 -1
  130. package/lib/families/polkadot/cache.d.ts +1 -1
  131. package/lib/families/polkadot/cache.js +1 -1
  132. package/lib/families/solana/api/chain/index.d.ts +2 -2
  133. package/lib/families/solana/api/chain/index.d.ts.map +1 -1
  134. package/lib/families/solana/api/chain/index.js +1 -3
  135. package/lib/families/solana/api/chain/index.js.map +1 -1
  136. package/lib/families/solana/bridge/bridge.js +5 -5
  137. package/lib/families/solana/bridge/bridge.js.map +1 -1
  138. package/lib/families/solana/bridge/js.js +3 -3
  139. package/lib/families/solana/bridge/js.js.map +1 -1
  140. package/lib/families/solana/bridge/mock.js +1 -1
  141. package/lib/families/solana/bridge/mock.js.map +1 -1
  142. package/lib/families/solana/test-dataset.d.ts.map +1 -1
  143. package/lib/families/solana/test-dataset.js +211 -209
  144. package/lib/families/solana/test-dataset.js.map +1 -1
  145. package/lib/families/solana/utils.d.ts +1 -2
  146. package/lib/families/solana/utils.d.ts.map +1 -1
  147. package/lib/families/solana/utils.js +11 -9
  148. package/lib/families/solana/utils.js.map +1 -1
  149. package/lib/featureFlags/FeatureToggle.d.ts +10 -0
  150. package/lib/featureFlags/FeatureToggle.d.ts.map +1 -0
  151. package/lib/featureFlags/FeatureToggle.js +17 -0
  152. package/lib/featureFlags/FeatureToggle.js.map +1 -0
  153. package/lib/featureFlags/defaultFeatures.d.ts +3 -0
  154. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -0
  155. package/lib/featureFlags/defaultFeatures.js +9 -0
  156. package/lib/featureFlags/defaultFeatures.js.map +1 -0
  157. package/lib/featureFlags/index.d.ts +5 -0
  158. package/lib/featureFlags/index.d.ts.map +1 -0
  159. package/lib/featureFlags/index.js +17 -0
  160. package/lib/featureFlags/index.js.map +1 -0
  161. package/lib/featureFlags/provider.d.ts +13 -0
  162. package/lib/featureFlags/provider.d.ts.map +1 -0
  163. package/lib/featureFlags/provider.js +68 -0
  164. package/lib/featureFlags/provider.js.map +1 -0
  165. package/lib/featureFlags/types.d.ts +8 -0
  166. package/lib/featureFlags/types.d.ts.map +1 -0
  167. package/lib/featureFlags/types.js +3 -0
  168. package/lib/featureFlags/types.js.map +1 -0
  169. package/lib/featureFlags/useFeature.d.ts +3 -0
  170. package/lib/featureFlags/useFeature.d.ts.map +1 -0
  171. package/lib/featureFlags/useFeature.js +9 -0
  172. package/lib/featureFlags/useFeature.js.map +1 -0
  173. package/lib/generated/bridge/js.d.ts +4 -0
  174. package/lib/generated/bridge/js.d.ts.map +1 -1
  175. package/lib/generated/bridge/js.js +24 -22
  176. package/lib/generated/bridge/js.js.map +1 -1
  177. package/lib/generated/cli-transaction.d.ts +9 -0
  178. package/lib/generated/cli-transaction.d.ts.map +1 -1
  179. package/lib/generated/cli-transaction.js +24 -22
  180. package/lib/generated/cli-transaction.js.map +1 -1
  181. package/lib/generated/deviceTransactionConfig.d.ts +2 -0
  182. package/lib/generated/deviceTransactionConfig.d.ts.map +1 -1
  183. package/lib/generated/deviceTransactionConfig.js +22 -20
  184. package/lib/generated/deviceTransactionConfig.js.map +1 -1
  185. package/lib/generated/hw-getAddress.d.ts +1 -0
  186. package/lib/generated/hw-getAddress.d.ts.map +1 -1
  187. package/lib/generated/hw-getAddress.js +26 -24
  188. package/lib/generated/hw-getAddress.js.map +1 -1
  189. package/lib/generated/specs.d.ts +3 -0
  190. package/lib/generated/specs.d.ts.map +1 -1
  191. package/lib/generated/specs.js +24 -22
  192. package/lib/generated/specs.js.map +1 -1
  193. package/lib/generated/speculos-deviceActions.d.ts +3 -0
  194. package/lib/generated/speculos-deviceActions.d.ts.map +1 -1
  195. package/lib/generated/speculos-deviceActions.js +24 -22
  196. package/lib/generated/speculos-deviceActions.js.map +1 -1
  197. package/lib/generated/transaction.d.ts +5 -0
  198. package/lib/generated/transaction.d.ts.map +1 -1
  199. package/lib/generated/transaction.js +26 -24
  200. package/lib/generated/transaction.js.map +1 -1
  201. package/lib/generated/types.d.ts +12 -6
  202. package/lib/generated/types.d.ts.map +1 -1
  203. package/lib/generated/types.js +14 -12
  204. package/lib/generated/types.js.map +1 -1
  205. package/lib/types/index.d.ts +1 -0
  206. package/lib/types/index.d.ts.map +1 -1
  207. package/lib/types/index.js +1 -0
  208. package/lib/types/index.js.map +1 -1
  209. package/lib/types/manager.d.ts +7 -0
  210. package/lib/types/manager.d.ts.map +1 -1
  211. package/lib/types/manager.js +7 -0
  212. package/lib/types/manager.js.map +1 -1
  213. package/package.json +8 -5
  214. package/src/.DS_Store +0 -0
  215. package/src/__tests__/.DS_Store +0 -0
  216. package/src/__tests__/__snapshots__/all.libcore.ts.snap +0 -33226
  217. package/src/__tests__/test-helpers/bridge.ts +1 -1
  218. package/src/__tests__/test-helpers/setup.ts +1 -0
  219. package/src/account/support.ts +1 -0
  220. package/src/apps/hw.ts +7 -0
  221. package/src/bot/engine.ts +1 -1
  222. package/src/bridge/jsHelpers.ts +1 -1
  223. package/src/currencies/__snapshots__/sortByMarketcap.test.ts.snap +6195 -0
  224. package/src/data/icons/react/celo.tsx +12 -0
  225. package/src/data/icons/react/index.tsx +1 -0
  226. package/src/data/icons/reactNative/celo.tsx +13 -0
  227. package/src/data/icons/reactNative/index.tsx +1 -0
  228. package/src/data/icons/svg/CELO.svg +5 -0
  229. package/src/env.ts +15 -0
  230. package/src/families/celo/api/hubble.ts +93 -0
  231. package/src/families/celo/api/index.ts +1 -0
  232. package/src/families/celo/api/sdk.ts +8 -0
  233. package/src/families/celo/bridge/js.ts +38 -0
  234. package/src/families/celo/cli-transaction.ts +41 -0
  235. package/src/families/celo/datasets/celo.scanAccounts.1.ts +20 -0
  236. package/src/families/celo/deviceTransactionConfig.ts +19 -0
  237. package/src/families/celo/hw-app-celo.ts +108 -0
  238. package/src/families/celo/hw-getAddress.ts +1 -0
  239. package/src/families/celo/js-broadcast.ts +12 -0
  240. package/src/families/celo/js-buildTransaction.ts +32 -0
  241. package/src/families/celo/js-createTransaction.ts +12 -0
  242. package/src/families/celo/js-estimateMaxSpendable.ts +28 -0
  243. package/src/families/celo/js-getFeesForTransaction.ts +38 -0
  244. package/src/families/celo/js-getTransactionStatus.ts +67 -0
  245. package/src/families/celo/js-prepareTransaction.ts +28 -0
  246. package/src/families/celo/js-signOperation.ts +149 -0
  247. package/src/families/celo/js-synchronisation.ts +40 -0
  248. package/src/families/celo/specs.ts +53 -0
  249. package/src/families/celo/speculos-deviceActions.ts +51 -0
  250. package/src/families/celo/transaction.ts +39 -0
  251. package/src/families/celo/types.ts +20 -0
  252. package/src/families/ethereum/datasets/ethereum.scanAccounts.1.ts +1 -0
  253. package/src/families/ethereum/modules/erc1155.ts +9 -0
  254. package/src/families/polkadot/cache.ts +1 -1
  255. package/src/families/solana/api/chain/index.ts +2 -5
  256. package/src/families/solana/bridge/bridge.ts +11 -11
  257. package/src/families/solana/bridge/js.ts +3 -3
  258. package/src/families/solana/bridge/mock.ts +1 -1
  259. package/src/families/solana/test-dataset.ts +340 -337
  260. package/src/families/solana/utils.ts +9 -8
  261. package/src/featureFlags/FeatureToggle.tsx +24 -0
  262. package/src/featureFlags/defaultFeatures.ts +7 -0
  263. package/src/featureFlags/index.ts +4 -0
  264. package/src/featureFlags/provider.tsx +48 -0
  265. package/src/featureFlags/types.ts +9 -0
  266. package/src/featureFlags/useFeature.ts +8 -0
  267. package/src/generated/bridge/js.ts +3 -0
  268. package/src/generated/cli-transaction.ts +3 -0
  269. package/src/generated/deviceTransactionConfig.ts +3 -0
  270. package/src/generated/hw-getAddress.ts +3 -0
  271. package/src/generated/specs.ts +3 -0
  272. package/src/generated/speculos-deviceActions.ts +3 -0
  273. package/src/generated/transaction.ts +3 -0
  274. package/src/generated/types.ts +14 -0
  275. package/src/types/index.ts +1 -0
  276. package/src/types/manager.ts +7 -0
@@ -1,4 +1,5 @@
1
- import { Cluster } from "@solana/web3.js";
1
+ import { clusterApiUrl } from "@solana/web3.js";
2
+ import { getEnv } from "../../env";
2
3
 
3
4
  export const assertUnreachable = (_: never): never => {
4
5
  throw new Error("unreachable assertion failed");
@@ -16,15 +17,15 @@ export async function drainSeqAsyncGen<T>(
16
17
  return items;
17
18
  }
18
19
 
19
- export function clusterByCurrencyId(currencyId: string): Cluster {
20
- const clusters: Record<string, Cluster> = {
21
- solana: "mainnet-beta",
22
- solana_devnet: "devnet",
23
- solana_testnet: "testnet",
20
+ export function endpointByCurrencyId(currencyId: string): string {
21
+ const endpoints: Record<string, string> = {
22
+ solana: getEnv("API_SOLANA_PROXY"),
23
+ solana_devnet: clusterApiUrl("devnet"),
24
+ solana_testnet: clusterApiUrl("testnet"),
24
25
  };
25
26
 
26
- if (currencyId in clusters) {
27
- return clusters[currencyId];
27
+ if (currencyId in endpoints) {
28
+ return endpoints[currencyId];
28
29
  }
29
30
 
30
31
  throw Error(
@@ -0,0 +1,24 @@
1
+ import { ReactNode } from "react";
2
+
3
+ import useFeature from "./useFeature";
4
+ import { FeatureId } from "./types";
5
+
6
+ type Props = {
7
+ feature: FeatureId;
8
+ fallback?: ReactNode;
9
+ children?: ReactNode;
10
+ };
11
+
12
+ export const FeatureToggle = ({
13
+ feature: featureId,
14
+ fallback,
15
+ children,
16
+ }: Props): ReactNode => {
17
+ const feature = useFeature(featureId);
18
+
19
+ if (!feature || !feature.enabled) {
20
+ return fallback;
21
+ }
22
+
23
+ return children;
24
+ };
@@ -0,0 +1,7 @@
1
+ import { DefaultFeatures } from "./types";
2
+
3
+ export const defaultFeatures: DefaultFeatures = {
4
+ market: {
5
+ enabled: false,
6
+ },
7
+ };
@@ -0,0 +1,4 @@
1
+ export * from "./defaultFeatures";
2
+ export * from "./FeatureToggle";
3
+ export * from "./provider";
4
+ export * from "./useFeature";
@@ -0,0 +1,48 @@
1
+ import React, {
2
+ createContext,
3
+ ReactNode,
4
+ useContext,
5
+ useEffect,
6
+ useState,
7
+ } from "react";
8
+
9
+ import { FeatureId, Feature } from "./types";
10
+
11
+ type State = {
12
+ getFeature: (_: FeatureId) => Feature | null;
13
+ };
14
+
15
+ const initialState: State = {
16
+ getFeature: (_) => ({ enabled: false }),
17
+ };
18
+
19
+ const FeatureFlagsContext = createContext<State>(initialState);
20
+
21
+ export function useFeatureFlags(): State {
22
+ return useContext<State>(FeatureFlagsContext);
23
+ }
24
+
25
+ type Props = {
26
+ getFeature: (_: FeatureId) => Feature | null;
27
+ children?: ReactNode;
28
+ };
29
+
30
+ export function FeatureFlagsProvider({
31
+ getFeature,
32
+ children,
33
+ }: Props): JSX.Element {
34
+ const [state, setState] = useState<State>(initialState);
35
+
36
+ useEffect(() => {
37
+ setState((prev) => ({
38
+ ...prev,
39
+ getFeature,
40
+ }));
41
+ }, [getFeature]);
42
+
43
+ return (
44
+ <FeatureFlagsContext.Provider value={state}>
45
+ {children}
46
+ </FeatureFlagsContext.Provider>
47
+ );
48
+ }
@@ -0,0 +1,9 @@
1
+ export type FeatureId = "market"; // Add others with union
2
+
3
+ // We use objects instead of direct booleans for potential future improvements
4
+ // like feature versioning etc
5
+ export type Feature = {
6
+ enabled: boolean;
7
+ };
8
+
9
+ export type DefaultFeatures = { [key in FeatureId]: Feature };
@@ -0,0 +1,8 @@
1
+ import { useFeatureFlags } from "./provider";
2
+ import { Feature, FeatureId } from "./types";
3
+
4
+ export default function useFeature(key: FeatureId): Feature | null {
5
+ const featureFlags = useFeatureFlags();
6
+
7
+ return featureFlags.getFeature(key);
8
+ }
@@ -2,6 +2,8 @@ import algorand from "../../families/algorand/bridge/js";
2
2
 
3
3
  import bitcoin from "../../families/bitcoin/bridge/js";
4
4
 
5
+ import celo from "../../families/celo/bridge/js";
6
+
5
7
  import crypto_org from "../../families/crypto_org/bridge/js";
6
8
 
7
9
  import elrond from "../../families/elrond/bridge/js";
@@ -28,6 +30,7 @@ import tron from "../../families/tron/bridge/js";
28
30
  export default {
29
31
  algorand,
30
32
  bitcoin,
33
+ celo,
31
34
  crypto_org,
32
35
  elrond,
33
36
  ethereum,
@@ -2,6 +2,8 @@ import algorand from "../families/algorand/cli-transaction";
2
2
 
3
3
  import bitcoin from "../families/bitcoin/cli-transaction";
4
4
 
5
+ import celo from "../families/celo/cli-transaction";
6
+
5
7
  import cosmos from "../families/cosmos/cli-transaction";
6
8
 
7
9
  import crypto_org from "../families/crypto_org/cli-transaction";
@@ -28,6 +30,7 @@ import tron from "../families/tron/cli-transaction";
28
30
  export default {
29
31
  algorand,
30
32
  bitcoin,
33
+ celo,
31
34
  cosmos,
32
35
  crypto_org,
33
36
  elrond,
@@ -2,6 +2,8 @@ import algorand from "../families/algorand/deviceTransactionConfig";
2
2
 
3
3
  import bitcoin from "../families/bitcoin/deviceTransactionConfig";
4
4
 
5
+ import celo from "../families/celo/deviceTransactionConfig";
6
+
5
7
  import cosmos from "../families/cosmos/deviceTransactionConfig";
6
8
 
7
9
  import crypto_org from "../families/crypto_org/deviceTransactionConfig";
@@ -26,6 +28,7 @@ import tron from "../families/tron/deviceTransactionConfig";
26
28
  export default {
27
29
  algorand,
28
30
  bitcoin,
31
+ celo,
29
32
  cosmos,
30
33
  crypto_org,
31
34
  elrond,
@@ -2,6 +2,8 @@ import algorand from "../families/algorand/hw-getAddress";
2
2
 
3
3
  import bitcoin from "../families/bitcoin/hw-getAddress";
4
4
 
5
+ import celo from "../families/celo/hw-getAddress";
6
+
5
7
  import cosmos from "../families/cosmos/hw-getAddress";
6
8
 
7
9
  import crypto_org from "../families/crypto_org/hw-getAddress";
@@ -30,6 +32,7 @@ import tron from "../families/tron/hw-getAddress";
30
32
  export default {
31
33
  algorand,
32
34
  bitcoin,
35
+ celo,
33
36
  cosmos,
34
37
  crypto_org,
35
38
  elrond,
@@ -2,6 +2,8 @@ import algorand from "../families/algorand/specs";
2
2
 
3
3
  import bitcoin from "../families/bitcoin/specs";
4
4
 
5
+ import celo from "../families/celo/specs";
6
+
5
7
  import cosmos from "../families/cosmos/specs";
6
8
 
7
9
  import crypto_org from "../families/crypto_org/specs";
@@ -28,6 +30,7 @@ import tron from "../families/tron/specs";
28
30
  export default {
29
31
  algorand,
30
32
  bitcoin,
33
+ celo,
31
34
  cosmos,
32
35
  crypto_org,
33
36
  elrond,
@@ -2,6 +2,8 @@ import algorand from "../families/algorand/speculos-deviceActions";
2
2
 
3
3
  import bitcoin from "../families/bitcoin/speculos-deviceActions";
4
4
 
5
+ import celo from "../families/celo/speculos-deviceActions";
6
+
5
7
  import cosmos from "../families/cosmos/speculos-deviceActions";
6
8
 
7
9
  import crypto_org from "../families/crypto_org/speculos-deviceActions";
@@ -28,6 +30,7 @@ import tron from "../families/tron/speculos-deviceActions";
28
30
  export default {
29
31
  algorand,
30
32
  bitcoin,
33
+ celo,
31
34
  cosmos,
32
35
  crypto_org,
33
36
  elrond,
@@ -2,6 +2,8 @@ import algorand from "../families/algorand/transaction";
2
2
 
3
3
  import bitcoin from "../families/bitcoin/transaction";
4
4
 
5
+ import celo from "../families/celo/transaction";
6
+
5
7
  import cosmos from "../families/cosmos/transaction";
6
8
 
7
9
  import crypto_org from "../families/crypto_org/transaction";
@@ -30,6 +32,7 @@ import tron from "../families/tron/transaction";
30
32
  export default {
31
33
  algorand,
32
34
  bitcoin,
35
+ celo,
33
36
  cosmos,
34
37
  crypto_org,
35
38
  elrond,
@@ -14,6 +14,13 @@ import { Transaction as bitcoinTransaction } from "../families/bitcoin/types";
14
14
  import { TransactionRaw as bitcoinTransactionRaw } from "../families/bitcoin/types";
15
15
  import { NetworkInfo as bitcoinNetworkInfo } from "../families/bitcoin/types";
16
16
  import { NetworkInfoRaw as bitcoinNetworkInfoRaw } from "../families/bitcoin/types";
17
+ import { reflect as celoReflect } from "../families/celo/types";
18
+ import { CoreStatics as CoreStatics_celo } from "../families/celo/types";
19
+ import { CoreAccountSpecifics as CoreAccountSpecifics_celo } from "../families/celo/types";
20
+ import { CoreOperationSpecifics as CoreOperationSpecifics_celo } from "../families/celo/types";
21
+ import { CoreCurrencySpecifics as CoreCurrencySpecifics_celo } from "../families/celo/types";
22
+ import { Transaction as celoTransaction } from "../families/celo/types";
23
+ import { TransactionRaw as celoTransactionRaw } from "../families/celo/types";
17
24
  import { reflect as cosmosReflect } from "../families/cosmos/types";
18
25
  import { CoreStatics as CoreStatics_cosmos } from "../families/cosmos/types";
19
26
  import { CoreAccountSpecifics as CoreAccountSpecifics_cosmos } from "../families/cosmos/types";
@@ -122,6 +129,7 @@ import { NetworkInfoRaw as tronNetworkInfoRaw } from "../families/tron/types";
122
129
  export type SpecificStatics = {}
123
130
  & CoreStatics_algorand
124
131
  & CoreStatics_bitcoin
132
+ & CoreStatics_celo
125
133
  & CoreStatics_cosmos
126
134
  & CoreStatics_crypto_org
127
135
  & CoreStatics_elrond
@@ -137,6 +145,7 @@ export type SpecificStatics = {}
137
145
  export type CoreAccountSpecifics = {}
138
146
  & CoreAccountSpecifics_algorand
139
147
  & CoreAccountSpecifics_bitcoin
148
+ & CoreAccountSpecifics_celo
140
149
  & CoreAccountSpecifics_cosmos
141
150
  & CoreAccountSpecifics_crypto_org
142
151
  & CoreAccountSpecifics_elrond
@@ -152,6 +161,7 @@ export type CoreAccountSpecifics = {}
152
161
  export type CoreOperationSpecifics = {}
153
162
  & CoreOperationSpecifics_algorand
154
163
  & CoreOperationSpecifics_bitcoin
164
+ & CoreOperationSpecifics_celo
155
165
  & CoreOperationSpecifics_cosmos
156
166
  & CoreOperationSpecifics_crypto_org
157
167
  & CoreOperationSpecifics_elrond
@@ -167,6 +177,7 @@ export type CoreOperationSpecifics = {}
167
177
  export type CoreCurrencySpecifics = {}
168
178
  & CoreCurrencySpecifics_algorand
169
179
  & CoreCurrencySpecifics_bitcoin
180
+ & CoreCurrencySpecifics_celo
170
181
  & CoreCurrencySpecifics_cosmos
171
182
  & CoreCurrencySpecifics_crypto_org
172
183
  & CoreCurrencySpecifics_elrond
@@ -182,6 +193,7 @@ export type CoreCurrencySpecifics = {}
182
193
  export type Transaction =
183
194
  | algorandTransaction
184
195
  | bitcoinTransaction
196
+ | celoTransaction
185
197
  | cosmosTransaction
186
198
  | crypto_orgTransaction
187
199
  | elrondTransaction
@@ -197,6 +209,7 @@ export type Transaction =
197
209
  export type TransactionRaw =
198
210
  | algorandTransactionRaw
199
211
  | bitcoinTransactionRaw
212
+ | celoTransactionRaw
200
213
  | cosmosTransactionRaw
201
214
  | crypto_orgTransactionRaw
202
215
  | elrondTransactionRaw
@@ -236,6 +249,7 @@ export type NetworkInfoRaw =
236
249
  export const reflectSpecifics = (declare: any): Array<{ OperationMethods: Record<string, unknown>, AccountMethods: Record<string, unknown> }> => [
237
250
  algorandReflect(declare),
238
251
  bitcoinReflect(declare),
252
+ celoReflect(declare),
239
253
  cosmosReflect(declare),
240
254
  crypto_orgReflect(declare),
241
255
  elrondReflect(declare),
@@ -10,3 +10,4 @@ export * from "../generated/types";
10
10
  export * from "./bridge";
11
11
  export * from "./pagination";
12
12
  export * from "./nft";
13
+ export * from "../featureFlags/types";
@@ -130,6 +130,7 @@ export type ApplicationVersion = {
130
130
  providers: Array<Id>;
131
131
  date_creation: string;
132
132
  date_last_modified: string;
133
+ type?: AppType;
133
134
  // dependencies: Id[],
134
135
  bytes: number | null | undefined;
135
136
  warning: string | null | undefined;
@@ -153,6 +154,11 @@ export type Application = {
153
154
  sourceURL: string | null | undefined;
154
155
  compatibleWalletsJSON: string | null | undefined;
155
156
  };
157
+ export enum AppType {
158
+ APP = "app",
159
+ PLUGIN = "plugin",
160
+ TOOL = "tool", // Nb not used for now
161
+ }
156
162
  // App is higher level on top of Application and ApplicationVersion
157
163
  // with all fields Live needs and in normalized form (but still serializable)
158
164
  export type App = {
@@ -185,6 +191,7 @@ export type App = {
185
191
  // -1 if coin not in marketcap, otherwise index in the tickers list of https://countervalues.api.live.ledger.com/tickers
186
192
  indexOfMarketCap: number;
187
193
  isDevTools: boolean;
194
+ type: AppType;
188
195
  };
189
196
  export type Category = {
190
197
  id: Id;