@ledgerhq/live-common 34.53.0-nightly.20251120023735 → 34.53.0-nightly.20251121023744

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 (226) hide show
  1. package/lib/__tests__/test-helpers/setup.integration.d.ts +2 -0
  2. package/lib/__tests__/test-helpers/setup.integration.d.ts.map +1 -0
  3. package/lib/__tests__/test-helpers/{setup.js → setup.integration.js} +4 -8
  4. package/lib/__tests__/test-helpers/setup.integration.js.map +1 -0
  5. package/lib/account/helpers.d.ts.map +1 -1
  6. package/lib/account/helpers.js +21 -17
  7. package/lib/account/helpers.js.map +1 -1
  8. package/lib/bridge/generic-alpaca/utils.js +1 -1
  9. package/lib/bridge/generic-alpaca/utils.js.map +1 -1
  10. package/lib/bridge/impl.d.ts +0 -2
  11. package/lib/bridge/impl.d.ts.map +1 -1
  12. package/lib/bridge/impl.js +4 -8
  13. package/lib/bridge/impl.js.map +1 -1
  14. package/lib/currencies/index.d.ts +1 -1
  15. package/lib/currencies/index.d.ts.map +1 -1
  16. package/lib/currencies/index.js +1 -4
  17. package/lib/currencies/index.js.map +1 -1
  18. package/lib/e2e/index.d.ts +3 -0
  19. package/lib/e2e/index.d.ts.map +1 -1
  20. package/lib/exchange/swap/getCompleteSwapHistory.js +2 -2
  21. package/lib/exchange/swap/getCompleteSwapHistory.js.map +1 -1
  22. package/lib/exchange/swap/hooks/useSelectableCurrencies.js +2 -2
  23. package/lib/exchange/swap/hooks/useSelectableCurrencies.js.map +1 -1
  24. package/lib/families/cosmos/datasets/dydx.integration.FIXME.d.ts +1 -1
  25. package/lib/families/cosmos/datasets/dydx.integration.FIXME.d.ts.map +1 -1
  26. package/lib/families/cosmos/datasets/dydx.integration.FIXME.js +1 -1
  27. package/lib/families/cosmos/datasets/dydx.integration.FIXME.js.map +1 -1
  28. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts +1 -1
  29. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts.map +1 -1
  30. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.js +1 -1
  31. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.js.map +1 -1
  32. package/lib/families/evm/setup.d.ts.map +1 -1
  33. package/lib/families/evm/setup.js +1 -11
  34. package/lib/families/evm/setup.js.map +1 -1
  35. package/lib/families/solana/setup.d.ts +8 -0
  36. package/lib/families/solana/setup.d.ts.map +1 -1
  37. package/lib/families/solana/setup.js +29 -16
  38. package/lib/families/solana/setup.js.map +1 -1
  39. package/lib/families/tron/data.mock.d.ts.map +1 -1
  40. package/lib/families/tron/data.mock.js +3 -6
  41. package/lib/families/tron/data.mock.js.map +1 -1
  42. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
  43. package/lib/featureFlags/defaultFeatures.js +1 -0
  44. package/lib/featureFlags/defaultFeatures.js.map +1 -1
  45. package/lib/featureFlags/useFeature.d.ts +1 -1
  46. package/lib/featureFlags/useFeature.d.ts.map +1 -1
  47. package/lib/test-helpers/cryptoAssetsStore.d.ts +2 -0
  48. package/lib/test-helpers/cryptoAssetsStore.d.ts.map +1 -0
  49. package/lib/test-helpers/cryptoAssetsStore.js +8 -0
  50. package/lib/test-helpers/cryptoAssetsStore.js.map +1 -0
  51. package/lib/wallet-api/ACRE/server.js +5 -5
  52. package/lib/wallet-api/ACRE/server.js.map +1 -1
  53. package/lib/wallet-api/Exchange/server.js +4 -4
  54. package/lib/wallet-api/Exchange/server.js.map +1 -1
  55. package/lib/wallet-api/logic.js +8 -8
  56. package/lib/wallet-api/logic.js.map +1 -1
  57. package/lib/wallet-api/react.js +2 -2
  58. package/lib/wallet-api/react.js.map +1 -1
  59. package/lib/wallet-api/useDappLogic.js +2 -2
  60. package/lib/wallet-api/useDappLogic.js.map +1 -1
  61. package/lib-es/__tests__/test-helpers/setup.integration.d.ts +2 -0
  62. package/lib-es/__tests__/test-helpers/setup.integration.d.ts.map +1 -0
  63. package/lib-es/__tests__/test-helpers/setup.integration.js +14 -0
  64. package/lib-es/__tests__/test-helpers/setup.integration.js.map +1 -0
  65. package/lib-es/account/helpers.d.ts.map +1 -1
  66. package/lib-es/account/helpers.js +5 -1
  67. package/lib-es/account/helpers.js.map +1 -1
  68. package/lib-es/bridge/generic-alpaca/utils.js +1 -1
  69. package/lib-es/bridge/generic-alpaca/utils.js.map +1 -1
  70. package/lib-es/bridge/impl.d.ts +0 -2
  71. package/lib-es/bridge/impl.d.ts.map +1 -1
  72. package/lib-es/bridge/impl.js +3 -6
  73. package/lib-es/bridge/impl.js.map +1 -1
  74. package/lib-es/currencies/index.d.ts +1 -1
  75. package/lib-es/currencies/index.d.ts.map +1 -1
  76. package/lib-es/currencies/index.js +1 -1
  77. package/lib-es/currencies/index.js.map +1 -1
  78. package/lib-es/e2e/index.d.ts +3 -0
  79. package/lib-es/e2e/index.d.ts.map +1 -1
  80. package/lib-es/exchange/swap/getCompleteSwapHistory.js +1 -1
  81. package/lib-es/exchange/swap/getCompleteSwapHistory.js.map +1 -1
  82. package/lib-es/exchange/swap/hooks/useSelectableCurrencies.js +1 -1
  83. package/lib-es/exchange/swap/hooks/useSelectableCurrencies.js.map +1 -1
  84. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.d.ts +1 -1
  85. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.d.ts.map +1 -1
  86. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.js +1 -1
  87. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.js.map +1 -1
  88. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts +1 -1
  89. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts.map +1 -1
  90. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.js +1 -1
  91. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.js.map +1 -1
  92. package/lib-es/families/evm/setup.d.ts.map +1 -1
  93. package/lib-es/families/evm/setup.js +1 -11
  94. package/lib-es/families/evm/setup.js.map +1 -1
  95. package/lib-es/families/solana/setup.d.ts +8 -0
  96. package/lib-es/families/solana/setup.d.ts.map +1 -1
  97. package/lib-es/families/solana/setup.js +28 -17
  98. package/lib-es/families/solana/setup.js.map +1 -1
  99. package/lib-es/families/tron/data.mock.d.ts.map +1 -1
  100. package/lib-es/families/tron/data.mock.js +3 -6
  101. package/lib-es/families/tron/data.mock.js.map +1 -1
  102. package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
  103. package/lib-es/featureFlags/defaultFeatures.js +1 -0
  104. package/lib-es/featureFlags/defaultFeatures.js.map +1 -1
  105. package/lib-es/featureFlags/useFeature.d.ts +1 -1
  106. package/lib-es/featureFlags/useFeature.d.ts.map +1 -1
  107. package/lib-es/test-helpers/cryptoAssetsStore.d.ts +2 -0
  108. package/lib-es/test-helpers/cryptoAssetsStore.d.ts.map +1 -0
  109. package/lib-es/test-helpers/cryptoAssetsStore.js +2 -0
  110. package/lib-es/test-helpers/cryptoAssetsStore.js.map +1 -0
  111. package/lib-es/wallet-api/ACRE/server.js +1 -1
  112. package/lib-es/wallet-api/ACRE/server.js.map +1 -1
  113. package/lib-es/wallet-api/Exchange/server.js +1 -1
  114. package/lib-es/wallet-api/Exchange/server.js.map +1 -1
  115. package/lib-es/wallet-api/logic.js +1 -1
  116. package/lib-es/wallet-api/logic.js.map +1 -1
  117. package/lib-es/wallet-api/react.js +1 -1
  118. package/lib-es/wallet-api/react.js.map +1 -1
  119. package/lib-es/wallet-api/useDappLogic.js +1 -1
  120. package/lib-es/wallet-api/useDappLogic.js.map +1 -1
  121. package/package.json +68 -55
  122. package/src/DataModel.test.ts +2 -8
  123. package/src/__tests__/__snapshots__/csvExport.ts.snap +0 -718
  124. package/src/__tests__/accounts/groupPerDay.ts +2 -4
  125. package/src/__tests__/csvExport.ts +3 -3
  126. package/src/__tests__/currencies.ts +0 -38
  127. package/src/__tests__/test-helpers/setup.integration.ts +17 -0
  128. package/src/__tests__/test-helpers/setup.ts +3 -8
  129. package/src/account/helpers.test.ts +2 -2
  130. package/src/account/helpers.ts +5 -1
  131. package/src/account/serialization.test.ts +2 -2
  132. package/src/bridge/crypto-assets/index.test.ts +15 -44
  133. package/src/bridge/generic-alpaca/utils.test.ts +1 -2
  134. package/src/bridge/generic-alpaca/utils.ts +1 -1
  135. package/src/bridge/impl.ts +3 -7
  136. package/src/currencies/cryptoIcons.test.ts +23 -4
  137. package/src/currencies/helpers.test.ts +13 -0
  138. package/src/currencies/index.ts +0 -3
  139. package/src/currencies/sortByMarketcap.test.ts +0 -26
  140. package/src/domain/getTokensWithFunds.test.ts +32 -3
  141. package/src/exchange/swap/getCompleteSwapHistory.ts +1 -1
  142. package/src/exchange/swap/hooks/useSelectableCurrencies.test.ts +4 -0
  143. package/src/exchange/swap/hooks/useSelectableCurrencies.ts +1 -1
  144. package/src/families/algorand/__snapshots__/bridge.integration.test.ts.snap +11 -11
  145. package/src/families/algorand/bridge.integration.test.ts +1 -1
  146. package/src/families/aptos/__snapshots__/bridge.integration.test.ts.snap +111 -1
  147. package/src/families/aptos/bridge.integration.test.ts +1 -1
  148. package/src/families/bitcoin/bridge.integration.test.ts +1 -1
  149. package/src/families/bitcoin/satstack.test.ts +5 -8
  150. package/src/families/cardano/__snapshots__/bridge.integration.test.ts.snap +2 -2
  151. package/src/families/cardano/bridge.integration.test.ts +1 -1
  152. package/src/families/casper/bridge.integration.test.ts +1 -1
  153. package/src/families/celo/bridge.integration.test.ts +1 -1
  154. package/src/families/cosmos/datasets/__snapshots__/cosmos.integration.test.ts.snap +1 -1
  155. package/src/families/cosmos/datasets/axelar.integration.test.ts +1 -1
  156. package/src/families/cosmos/datasets/babylon.integration.test.ts +1 -1
  157. package/src/families/cosmos/datasets/coreum.integration.test.ts +1 -1
  158. package/src/families/cosmos/datasets/cosmos.integration.test.ts +1 -1
  159. package/src/families/cosmos/datasets/cryptoOrg.integration.test.ts +1 -1
  160. package/src/families/cosmos/datasets/desmos.integration.test.ts +1 -1
  161. package/src/families/cosmos/datasets/dydx.integration.FIXME.ts +1 -1
  162. package/src/families/cosmos/datasets/injective.integration.test.ts +1 -1
  163. package/src/families/cosmos/datasets/mantra.integration.test.ts +1 -1
  164. package/src/families/cosmos/datasets/onomy.integration.test.ts +1 -1
  165. package/src/families/cosmos/datasets/osmosis.integration.test.ts +1 -1
  166. package/src/families/cosmos/datasets/persistence.integration.test.ts +1 -1
  167. package/src/families/cosmos/datasets/quicksilver.integration.test.ts +1 -1
  168. package/src/families/cosmos/datasets/secretNetwork.integration.FIXME.ts +1 -1
  169. package/src/families/cosmos/datasets/seiNetwork.integration.test.ts +1 -1
  170. package/src/families/cosmos/datasets/stargaze.integration.test.ts +1 -1
  171. package/src/families/cosmos/datasets/umee.integration.test.ts +1 -1
  172. package/src/families/cosmos/datasets/xion.integration.test.ts +1 -1
  173. package/src/families/cosmos/datasets/zenrock.integration.test.ts +1 -1
  174. package/src/families/evm/bridge.integration.test.ts +1 -1
  175. package/src/families/evm/setup.ts +0 -12
  176. package/src/families/filecoin/bridge.integration.test.ts +1 -1
  177. package/src/families/hedera/__snapshots__/bridge.integration.test.ts.snap +191 -596
  178. package/src/families/hedera/bridge.integration.test.ts +1 -1
  179. package/src/families/icon/bridge.integration.test.ts +1 -1
  180. package/src/families/internet_computer/bridge.integration.test.ts +1 -1
  181. package/src/families/kaspa/bridge.integration.test.ts +1 -1
  182. package/src/families/mina/bridge.integration.test.ts +1 -1
  183. package/src/families/multiversx/bridge.integration.test.ts +1 -1
  184. package/src/families/multiversx/synchronisation.integration.test.ts +1 -1
  185. package/src/families/near/bridge.integration.test.ts +1 -1
  186. package/src/families/polkadot/bridge.integration.test.ts +1 -1
  187. package/src/families/solana/__snapshots__/bridge.integration.test.ts.snap +14 -44
  188. package/src/families/solana/bridge.integration.test.ts +1 -1
  189. package/src/families/solana/setup.ts +37 -24
  190. package/src/families/stacks/__tests__/sync.integration.test.ts +1 -1
  191. package/src/families/stacks/bridge.integration.test.ts +1 -1
  192. package/src/families/stellar/__snapshots__/bridge.integration.test.ts.snap +198 -6
  193. package/src/families/stellar/bridge.integration.test.ts +1 -1
  194. package/src/families/sui/bridge.integration.test.ts +1 -1
  195. package/src/families/tezos/bridge.integration.test.ts +1 -1
  196. package/src/families/ton/bridge.integration.test.ts +1 -1
  197. package/src/families/tron/bridge.integration.test.ts +1 -1
  198. package/src/families/tron/data.mock.ts +4 -8
  199. package/src/families/vechain/bridge.integration.test.ts +1 -1
  200. package/src/families/xrp/bridge.integration.test.ts +1 -1
  201. package/src/featureFlags/defaultFeatures.ts +1 -0
  202. package/src/test-helpers/cryptoAssetsStore.ts +5 -0
  203. package/src/utils/__tests__/getAccountTuplesForCurrency.test.ts +3 -3
  204. package/src/wallet-api/ACRE/server.test.ts +3 -4
  205. package/src/wallet-api/ACRE/server.ts +1 -1
  206. package/src/wallet-api/Exchange/server.ts +1 -1
  207. package/src/wallet-api/logic.test.ts +3 -3
  208. package/src/wallet-api/logic.ts +1 -1
  209. package/src/wallet-api/react.ts +1 -1
  210. package/src/wallet-api/useDappLogic.ts +1 -1
  211. package/lib/__tests__/test-helpers/setup.d.ts +0 -2
  212. package/lib/__tests__/test-helpers/setup.d.ts.map +0 -1
  213. package/lib/__tests__/test-helpers/setup.js.map +0 -1
  214. package/lib/bridge/crypto-assets/index.d.ts +0 -4
  215. package/lib/bridge/crypto-assets/index.d.ts.map +0 -1
  216. package/lib/bridge/crypto-assets/index.js +0 -22
  217. package/lib/bridge/crypto-assets/index.js.map +0 -1
  218. package/lib-es/__tests__/test-helpers/setup.d.ts +0 -2
  219. package/lib-es/__tests__/test-helpers/setup.d.ts.map +0 -1
  220. package/lib-es/__tests__/test-helpers/setup.js +0 -18
  221. package/lib-es/__tests__/test-helpers/setup.js.map +0 -1
  222. package/lib-es/bridge/crypto-assets/index.d.ts +0 -4
  223. package/lib-es/bridge/crypto-assets/index.d.ts.map +0 -1
  224. package/lib-es/bridge/crypto-assets/index.js +0 -17
  225. package/lib-es/bridge/crypto-assets/index.js.map +0 -1
  226. package/src/bridge/crypto-assets/index.ts +0 -23
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-hedera/test/index";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-icon/test/bridge.dataset";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-internet_computer/test/index";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-kaspa/test/index";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-mina/test/index";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-multiversx/test/bridge.dataset";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { reduce } from "rxjs/operators";
3
3
  import { fromAccountRaw, getAccountCurrency } from "../../account";
4
4
  import type { Account, TokenAccount } from "@ledgerhq/types-live";
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-near/test/bridge.dataset";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-polkadot/test/index";
4
4
 
@@ -24,18 +24,6 @@ exports[`solana currency bridge scanAccounts solana seed 1 1`] = `
24
24
  "syncHash": undefined,
25
25
  "used": true,
26
26
  },
27
- {
28
- "balance": "7960720",
29
- "id": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain+8RtwWeqdFz4EFuZU3MAadfYMWSdRMamjFrfq6BXkHuNN",
30
- "operationsCount": 1,
31
- "parentId": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain",
32
- "pendingOperations": [],
33
- "spendableBalance": "7960720",
34
- "state": "initialized",
35
- "swapHistory": [],
36
- "tokenId": "solana/spl/so11111111111111111111111111111111111111112",
37
- "type": "TokenAccountRaw",
38
- },
39
27
  {
40
28
  "balance": "0",
41
29
  "currencyId": "solana",
@@ -66,22 +54,18 @@ exports[`solana currency bridge scanAccounts solana seed 1 2`] = `
66
54
  [
67
55
  {
68
56
  "accountId": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain",
69
- "blockHash": "4NSL4VrfWd2eUccMD95dLQsdy5UGz8yhokpfH1et1R2c",
57
+ "blockHash": "3oH1tGs3X6HkK2XQZ7LGhRP8F45jy5zgF8H3jFtaCgHC",
70
58
  "blockHeight": 108520722,
71
59
  "extra": {},
72
60
  "fee": "0",
73
61
  "hasFailed": false,
74
62
  "hash": "25KWBvKtVgKR3yoRmozTY6wmiW8atwrnzAnTXdsms8jqg5aR8GnCDxdJzWXtzMZPvbsE6SUuBkGFXudy2mrcTYna",
75
- "id": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain-25KWBvKtVgKR3yoRmozTY6wmiW8atwrnzAnTXdsms8jqg5aR8GnCDxdJzWXtzMZPvbsE6SUuBkGFXudy2mrcTYna-IN",
76
- "recipients": [
77
- "AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh",
78
- ],
79
- "senders": [
80
- "7CZgkK494jMdoY8xpXY3ViLjpDGMbNikCzMtAT5cAjKk",
81
- ],
63
+ "id": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain-25KWBvKtVgKR3yoRmozTY6wmiW8atwrnzAnTXdsms8jqg5aR8GnCDxdJzWXtzMZPvbsE6SUuBkGFXudy2mrcTYna-NONE",
64
+ "recipients": [],
65
+ "senders": [],
82
66
  "transactionSequenceNumber": "1",
83
- "type": "IN",
84
- "value": "93394840",
67
+ "type": "NONE",
68
+ "value": "0",
85
69
  },
86
70
  {
87
71
  "accountId": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain",
@@ -104,36 +88,22 @@ exports[`solana currency bridge scanAccounts solana seed 1 2`] = `
104
88
  },
105
89
  {
106
90
  "accountId": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain",
107
- "blockHash": "3oH1tGs3X6HkK2XQZ7LGhRP8F45jy5zgF8H3jFtaCgHC",
91
+ "blockHash": "4NSL4VrfWd2eUccMD95dLQsdy5UGz8yhokpfH1et1R2c",
108
92
  "blockHeight": 246186040,
109
93
  "extra": {},
110
94
  "fee": "0",
111
95
  "hasFailed": false,
112
96
  "hash": "Y2U5SCQpi9YYukbAL4YSzGosVgff512HcbiDDfMag5dZYow5zT6ytbJaWEDdCZkNLCkQYuAHJ9fBjV7wKqgMTi4",
113
- "id": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain-Y2U5SCQpi9YYukbAL4YSzGosVgff512HcbiDDfMag5dZYow5zT6ytbJaWEDdCZkNLCkQYuAHJ9fBjV7wKqgMTi4-NONE",
114
- "recipients": [],
115
- "senders": [],
116
- "transactionSequenceNumber": "3",
117
- "type": "NONE",
118
- "value": "0",
119
- },
120
- ],
121
- [
122
- {
123
- "accountId": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain+8RtwWeqdFz4EFuZU3MAadfYMWSdRMamjFrfq6BXkHuNN",
124
- "blockHash": "9tPbgLaETEenufCt5SzXMuWijgFJj549W9j5cJLbaogn",
125
- "blockHeight": 108521109,
126
- "extra": {},
127
- "fee": "5000",
128
- "hasFailed": false,
129
- "hash": "A29zPnK1jPr2tGziTnaAvSnadYR2kLCv9sPywj9FJsaEFjtpwmUonspN3WJgz4u6XWmjtVpoFsDrygEnvW51cgk",
130
- "id": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain+8RtwWeqdFz4EFuZU3MAadfYMWSdRMamjFrfq6BXkHuNN-A29zPnK1jPr2tGziTnaAvSnadYR2kLCv9sPywj9FJsaEFjtpwmUonspN3WJgz4u6XWmjtVpoFsDrygEnvW51cgk-IN",
97
+ "id": "js:2:solana:AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh:solanaMain-Y2U5SCQpi9YYukbAL4YSzGosVgff512HcbiDDfMag5dZYow5zT6ytbJaWEDdCZkNLCkQYuAHJ9fBjV7wKqgMTi4-IN",
131
98
  "recipients": [
132
- "8RtwWeqdFz4EFuZU3MAadfYMWSdRMamjFrfq6BXkHuNN",
99
+ "AQbkEagmPgmsdAfS4X8V8UyJnXXjVPMvjeD15etqQ3Jh",
133
100
  ],
134
- "senders": [],
101
+ "senders": [
102
+ "7CZgkK494jMdoY8xpXY3ViLjpDGMbNikCzMtAT5cAjKk",
103
+ ],
104
+ "transactionSequenceNumber": "3",
135
105
  "type": "IN",
136
- "value": "7960720",
106
+ "value": "93394840",
137
107
  },
138
108
  ],
139
109
  [],
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-solana/test/bridge.dataset";
4
4
 
@@ -7,47 +7,60 @@ import { createBridges } from "@ledgerhq/coin-solana/bridge/js";
7
7
  import makeCliTools from "@ledgerhq/coin-solana/cli-transaction";
8
8
  import solanaResolver from "@ledgerhq/coin-solana/hw-getAddress";
9
9
  import { SolanaAccount, Transaction, TransactionStatus } from "@ledgerhq/coin-solana/types";
10
- import {
11
- CreateSigner,
12
- createMessageSigner,
13
- createResolver,
14
- executeWithSigner,
15
- } from "../../bridge/setup";
10
+ import { createMessageSigner, createResolver, executeWithSigner } from "../../bridge/setup";
16
11
  import type { Resolver } from "../../hw/getAddress/types";
17
12
  import { getCurrencyConfiguration } from "../../config";
18
13
  import { SolanaCoinConfig } from "@ledgerhq/coin-solana/config";
19
14
  import { getCryptoCurrencyById } from "../../currencies";
20
15
  import { signMessage } from "@ledgerhq/coin-solana/hw-signMessage";
21
- import { LegacySignerSolana } from "@ledgerhq/live-signer-solana";
22
- import { setShouldSkipTokenLoading } from "@ledgerhq/coin-solana/preload";
23
- import { LiveConfig } from "@ledgerhq/live-config/LiveConfig";
24
- import { getCryptoAssetsStore } from "../../bridge/crypto-assets";
16
+ import { LegacySignerSolana, DmkSignerSol } from "@ledgerhq/live-signer-solana";
17
+ import { DeviceManagementKit } from "@ledgerhq/device-management-kit";
25
18
 
26
- const createSigner: CreateSigner<SolanaSigner> = (transport: Transport) =>
27
- new LegacySignerSolana(transport);
19
+ let _solanaLdmkFFEnabled: boolean = false;
28
20
 
29
- const getCurrencyConfig = () => {
30
- return getCurrencyConfiguration<SolanaCoinConfig>(getCryptoCurrencyById("solana"));
31
- };
21
+ let _dmkSignerInstance: DmkSignerSol | null = null;
32
22
 
33
- try {
34
- const isCALLazyLoadingEnabled = LiveConfig.getValueByKey("feature_cal_lazy_loading");
35
- setShouldSkipTokenLoading(Boolean(isCALLazyLoadingEnabled));
36
- } catch (error) {
37
- setShouldSkipTokenLoading(false);
23
+ // temporary solution to dynamically enable/disable the Solana DMK signer,
24
+ // waiting for LIVE-20250 to be implemented
25
+ // to be removed together with useFeature("ldmkSolanaSigner")
26
+ export function setSolanaLdmkEnabled(enabled: boolean): void {
27
+ _solanaLdmkFFEnabled = enabled;
38
28
  }
39
29
 
30
+ const canDMKSignerBeUsed = (
31
+ transport: Transport & Partial<{ dmk: DeviceManagementKit; sessionId: string }>,
32
+ ): transport is Transport & { dmk: DeviceManagementKit; sessionId: string } =>
33
+ _solanaLdmkFFEnabled &&
34
+ transport.dmk instanceof DeviceManagementKit &&
35
+ typeof transport.sessionId === "string";
36
+
37
+ // get the same instance if FF gets flipped
38
+ export function getSolanaSignerInstance(
39
+ transport: Transport & Partial<{ dmk: DeviceManagementKit; sessionId: string }>,
40
+ ): SolanaSigner {
41
+ if (canDMKSignerBeUsed(transport)) {
42
+ if (!_dmkSignerInstance) {
43
+ _dmkSignerInstance = new DmkSignerSol(transport.dmk, transport.sessionId);
44
+ }
45
+ return _dmkSignerInstance;
46
+ } else {
47
+ return new LegacySignerSolana(transport);
48
+ }
49
+ }
50
+
51
+ const getCurrencyConfig = () =>
52
+ getCurrencyConfiguration<SolanaCoinConfig>(getCryptoCurrencyById("solana"));
53
+
40
54
  const bridge: Bridge<Transaction, SolanaAccount, TransactionStatus> = createBridges(
41
- executeWithSigner(createSigner),
55
+ executeWithSigner(getSolanaSignerInstance),
42
56
  getCurrencyConfig,
43
- getCryptoAssetsStore,
44
57
  );
45
58
 
46
59
  const messageSigner = {
47
- signMessage: createMessageSigner(createSigner, signMessage),
60
+ signMessage: createMessageSigner(getSolanaSignerInstance, signMessage),
48
61
  };
49
62
 
50
- const resolver: Resolver = createResolver(createSigner, solanaResolver);
63
+ const resolver: Resolver = createResolver(getSolanaSignerInstance, solanaResolver);
51
64
 
52
65
  const cliTools = makeCliTools();
53
66
 
@@ -1,7 +1,7 @@
1
1
  import { mapTxToOps } from "@ledgerhq/coin-stacks/bridge/utils/misc";
2
2
  import { fetchFullTxs } from "@ledgerhq/coin-stacks/network/api";
3
3
  import flatMap from "lodash/flatMap";
4
- import "../../../__tests__/test-helpers/setup";
4
+ import "../../../__tests__/test-helpers/setup.integration";
5
5
  import { encodeAccountId } from "../../../account";
6
6
 
7
7
  describe("sync for token transfers", () => {
@@ -1,5 +1,5 @@
1
1
  import { dataset } from "@ledgerhq/coin-stacks/test/index";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
- import "../../__tests__/test-helpers/setup";
3
+ import "../../__tests__/test-helpers/setup.integration";
4
4
 
5
5
  testBridge(dataset);
@@ -3,17 +3,17 @@
3
3
  exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
4
4
  [
5
5
  {
6
- "balance": "341065024",
6
+ "balance": "341065032",
7
7
  "currencyId": "stellar",
8
8
  "derivationMode": "sep5",
9
9
  "freshAddress": "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
10
10
  "freshAddressPath": "44'/148'/0'",
11
11
  "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
12
12
  "index": 0,
13
- "operationsCount": 145,
13
+ "operationsCount": 153,
14
14
  "pendingOperations": [],
15
15
  "seedIdentifier": "27c586f8499294c64d57f8d7956eef4431de58ab20e1c88001f6cf131c97d6f3",
16
- "spendableBalance": "311064924",
16
+ "spendableBalance": "311064932",
17
17
  "subAccounts": [],
18
18
  "swapHistory": [],
19
19
  "syncHash": "0x1431ef5f",
@@ -31,7 +31,7 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
31
31
  "operationsCount": 43,
32
32
  "pendingOperations": [],
33
33
  "seedIdentifier": "27c586f8499294c64d57f8d7956eef4431de58ab20e1c88001f6cf131c97d6f3",
34
- "spendableBalance": "79999760",
34
+ "spendableBalance": "79999759",
35
35
  "subAccounts": [],
36
36
  "swapHistory": [],
37
37
  "syncHash": "0x1431ef5f",
@@ -49,7 +49,7 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
49
49
  "operationsCount": 38,
50
50
  "pendingOperations": [],
51
51
  "seedIdentifier": "27c586f8499294c64d57f8d7956eef4431de58ab20e1c88001f6cf131c97d6f3",
52
- "spendableBalance": "44999262",
52
+ "spendableBalance": "44999261",
53
53
  "subAccounts": [],
54
54
  "swapHistory": [],
55
55
  "syncHash": "0x1431ef5f",
@@ -67,7 +67,7 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
67
67
  "operationsCount": 17,
68
68
  "pendingOperations": [],
69
69
  "seedIdentifier": "27c586f8499294c64d57f8d7956eef4431de58ab20e1c88001f6cf131c97d6f3",
70
- "spendableBalance": "10145721",
70
+ "spendableBalance": "10145720",
71
71
  "subAccounts": [],
72
72
  "swapHistory": [],
73
73
  "syncHash": "0x1431ef5f",
@@ -1460,6 +1460,30 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 2`] = `
1460
1460
  "type": "IN",
1461
1461
  "value": "1",
1462
1462
  },
1463
+ {
1464
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
1465
+ "blockHash": "18ea88d2745b7e1659f8eac060d656f39703f831cf26193d39aee8cd3f1a638a",
1466
+ "blockHeight": 59822977,
1467
+ "extra": {
1468
+ "memo": {
1469
+ "type": "MEMO_TEXT",
1470
+ "value": "Get free miner vortex.solar",
1471
+ },
1472
+ },
1473
+ "fee": "10000",
1474
+ "hasFailed": false,
1475
+ "hash": "571f4203e583144ab396dfa36a6a5ba3cb8c096c625fb648c2197179bbafaac6",
1476
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-571f4203e583144ab396dfa36a6a5ba3cb8c096c625fb648c2197179bbafaac6-IN",
1477
+ "recipients": [
1478
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
1479
+ ],
1480
+ "senders": [
1481
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
1482
+ ],
1483
+ "transactionSequenceNumber": "256741054621949108",
1484
+ "type": "IN",
1485
+ "value": "1",
1486
+ },
1463
1487
  {
1464
1488
  "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
1465
1489
  "blockHash": "250ef44a3f04e815230c83a2fb76c03421e70ea1dcb13d28c9b9d631c1e7178b",
@@ -1580,6 +1604,30 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 2`] = `
1580
1604
  "type": "IN",
1581
1605
  "value": "1",
1582
1606
  },
1607
+ {
1608
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
1609
+ "blockHash": "d13a85732b44c8c3e49e8eb3246121557d7eb3e5218872cc6b00be321e3a6671",
1610
+ "blockHeight": 59886098,
1611
+ "extra": {
1612
+ "memo": {
1613
+ "type": "MEMO_TEXT",
1614
+ "value": "Buy VTX Earn XLM every hour",
1615
+ },
1616
+ },
1617
+ "fee": "10000",
1618
+ "hasFailed": false,
1619
+ "hash": "5d1afb5c11c6982cdf62a77f980ff68b74deea2e5baa9b9cc2e1093b92b81a83",
1620
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-5d1afb5c11c6982cdf62a77f980ff68b74deea2e5baa9b9cc2e1093b92b81a83-IN",
1621
+ "recipients": [
1622
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
1623
+ ],
1624
+ "senders": [
1625
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
1626
+ ],
1627
+ "transactionSequenceNumber": "257183994599179683",
1628
+ "type": "IN",
1629
+ "value": "1",
1630
+ },
1583
1631
  {
1584
1632
  "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
1585
1633
  "blockHash": "38ab63e0dc14a0e2a5b92898a4545723af9aed1d3543f290438e57740909305c",
@@ -1628,6 +1676,30 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 2`] = `
1628
1676
  "type": "IN",
1629
1677
  "value": "1",
1630
1678
  },
1679
+ {
1680
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
1681
+ "blockHash": "22008e8644688dd91e5a11b8e05a6356652c6ddf1566e972977f899c2ae71b58",
1682
+ "blockHeight": 59815109,
1683
+ "extra": {
1684
+ "memo": {
1685
+ "type": "MEMO_TEXT",
1686
+ "value": "Get free miner vortex.solar",
1687
+ },
1688
+ },
1689
+ "fee": "10000",
1690
+ "hasFailed": false,
1691
+ "hash": "6880b487ca8f1010ef67ed1eb09faeb97da424490691e439428726415b3b0df5",
1692
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-6880b487ca8f1010ef67ed1eb09faeb97da424490691e439428726415b3b0df5-IN",
1693
+ "recipients": [
1694
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
1695
+ ],
1696
+ "senders": [
1697
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
1698
+ ],
1699
+ "transactionSequenceNumber": "256741054621947092",
1700
+ "type": "IN",
1701
+ "value": "1",
1702
+ },
1631
1703
  {
1632
1704
  "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
1633
1705
  "blockHash": "c4a4a04adcf5d4574ddc4a8efb7bb99385f99b23b76d8aec4def1ee46ff95f78",
@@ -2372,6 +2444,30 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 2`] = `
2372
2444
  "type": "IN",
2373
2445
  "value": "1",
2374
2446
  },
2447
+ {
2448
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
2449
+ "blockHash": "f4dd20c4115cf12315e6560d00f7a4a70aff85d79d0c4bfebdc243ae72208ee2",
2450
+ "blockHeight": 59868195,
2451
+ "extra": {
2452
+ "memo": {
2453
+ "type": "MEMO_TEXT",
2454
+ "value": "Buy VTX Earn XLM every hour",
2455
+ },
2456
+ },
2457
+ "fee": "10000",
2458
+ "hasFailed": false,
2459
+ "hash": "9932c1ce8fe9832ea4bdfe3da3116726d06e2cfdbe24f0915f2ebde6700accdf",
2460
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-9932c1ce8fe9832ea4bdfe3da3116726d06e2cfdbe24f0915f2ebde6700accdf-IN",
2461
+ "recipients": [
2462
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
2463
+ ],
2464
+ "senders": [
2465
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
2466
+ ],
2467
+ "transactionSequenceNumber": "256741054621957149",
2468
+ "type": "IN",
2469
+ "value": "1",
2470
+ },
2375
2471
  {
2376
2472
  "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
2377
2473
  "blockHash": "91d515574d1e91f90c2aada0f6b5c0e6d821e7b4c1851198b19065a389bae84d",
@@ -2444,6 +2540,30 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 2`] = `
2444
2540
  "type": "IN",
2445
2541
  "value": "1",
2446
2542
  },
2543
+ {
2544
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
2545
+ "blockHash": "f48cf4e5a6badc6e53c48bb8c05249cf9b47189857daeb240b789589fb0fff81",
2546
+ "blockHeight": 59830814,
2547
+ "extra": {
2548
+ "memo": {
2549
+ "type": "MEMO_TEXT",
2550
+ "value": "Get free miner vortex.solar",
2551
+ },
2552
+ },
2553
+ "fee": "10000",
2554
+ "hasFailed": false,
2555
+ "hash": "9c4b24a8dbf51c9c140b400524830055d2426abb448ca9e2b30ee00f6dd98cf3",
2556
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-9c4b24a8dbf51c9c140b400524830055d2426abb448ca9e2b30ee00f6dd98cf3-IN",
2557
+ "recipients": [
2558
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
2559
+ ],
2560
+ "senders": [
2561
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
2562
+ ],
2563
+ "transactionSequenceNumber": "256741054621951125",
2564
+ "type": "IN",
2565
+ "value": "1",
2566
+ },
2447
2567
  {
2448
2568
  "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
2449
2569
  "blockHash": "cad562350c5ecb9219f0add77487e6f14a73f917a9dfa9aac638382ad115d149",
@@ -2612,6 +2732,30 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 2`] = `
2612
2732
  "type": "IN",
2613
2733
  "value": "1",
2614
2734
  },
2735
+ {
2736
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
2737
+ "blockHash": "e085fb806198e8041c01ebe9dd3a5bab192576680ef4143eec1d749f757a0831",
2738
+ "blockHeight": 59806455,
2739
+ "extra": {
2740
+ "memo": {
2741
+ "type": "MEMO_TEXT",
2742
+ "value": "Own VTX & Start Earning XLM!",
2743
+ },
2744
+ },
2745
+ "fee": "10000",
2746
+ "hasFailed": false,
2747
+ "hash": "a39ff95f098adb64b323405888b54da8ee7412943907131ace0652e2514d1140",
2748
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-a39ff95f098adb64b323405888b54da8ee7412943907131ace0652e2514d1140-IN",
2749
+ "recipients": [
2750
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
2751
+ ],
2752
+ "senders": [
2753
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
2754
+ ],
2755
+ "transactionSequenceNumber": "256741054621945076",
2756
+ "type": "IN",
2757
+ "value": "1",
2758
+ },
2615
2759
  {
2616
2760
  "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
2617
2761
  "blockHash": "76ddada621ac15b8e1c819ba57dcea3506457d50d7efc1b6129c05bab4a30b96",
@@ -3164,6 +3308,54 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 2`] = `
3164
3308
  "type": "IN",
3165
3309
  "value": "1",
3166
3310
  },
3311
+ {
3312
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
3313
+ "blockHash": "bd2092a4591b8a29e11b91d4b254b66927422ccf57bdef259a97345367493c15",
3314
+ "blockHeight": 59839257,
3315
+ "extra": {
3316
+ "memo": {
3317
+ "type": "MEMO_TEXT",
3318
+ "value": "Buy VTX Earn XLM every hour",
3319
+ },
3320
+ },
3321
+ "fee": "10000",
3322
+ "hasFailed": false,
3323
+ "hash": "cdde34eef945aa791ecbbd213c6a0acf3a64e480721273db73112f63ead207cf",
3324
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-cdde34eef945aa791ecbbd213c6a0acf3a64e480721273db73112f63ead207cf-IN",
3325
+ "recipients": [
3326
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
3327
+ ],
3328
+ "senders": [
3329
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
3330
+ ],
3331
+ "transactionSequenceNumber": "256741054621953112",
3332
+ "type": "IN",
3333
+ "value": "1",
3334
+ },
3335
+ {
3336
+ "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
3337
+ "blockHash": "5743abaceb2c6740a76e4441787a11d3f22d66e9ab930384b411218d591a516d",
3338
+ "blockHeight": 59854397,
3339
+ "extra": {
3340
+ "memo": {
3341
+ "type": "MEMO_TEXT",
3342
+ "value": "Buy VTX Earn XLM every hour",
3343
+ },
3344
+ },
3345
+ "fee": "10000",
3346
+ "hasFailed": false,
3347
+ "hash": "cf4194e26cc5211b7a5a3c6c654653ad65c46d8a2b4f5ec4f34342129b79109b",
3348
+ "id": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5-cf4194e26cc5211b7a5a3c6c654653ad65c46d8a2b4f5ec4f34342129b79109b-IN",
3349
+ "recipients": [
3350
+ "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
3351
+ ],
3352
+ "senders": [
3353
+ "GDM2UBYCTDJ7LBBNLWU5XTNNIR6GIQW7KXJTPBWOTMFECHF5YJAE3JTH",
3354
+ ],
3355
+ "transactionSequenceNumber": "256741054621955129",
3356
+ "type": "IN",
3357
+ "value": "1",
3358
+ },
3167
3359
  {
3168
3360
  "accountId": "js:2:stellar:GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV:sep5",
3169
3361
  "blockHash": "f845e177320196a6c3e395cc67215502c9276580301135a5526714117f78ba52",
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-stellar/test/index";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-sui/test/bridge.dataset";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-tezos/test/index";
4
4
 
@@ -1,6 +1,6 @@
1
1
  import { dataset } from "@ledgerhq/coin-ton/test/bridge.dataset";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
- import "../../__tests__/test-helpers/setup";
3
+ import "../../__tests__/test-helpers/setup.integration";
4
4
 
5
5
  // FIXME: Disabled due to TypeError in Send max transaction (ts.amount undefined)
6
6
  describe.skip("ton integration", () => {
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-tron/test/index";
4
4
 
@@ -1,18 +1,14 @@
1
1
  import { fromAccountRaw } from "../../account/serialization";
2
2
  import { TronAccount } from "@ledgerhq/coin-tron/types/index";
3
- import { setCryptoAssetsStore as setCryptoAssetsStoreForCoinFramework } from "@ledgerhq/coin-framework/crypto-assets/index";
4
- import type { CryptoAssetsStore } from "@ledgerhq/types-live";
3
+ import { setupMockCryptoAssetsStore } from "@ledgerhq/cryptoassets/cal-client/test-helpers";
5
4
 
6
5
  export const __NEXT_REWARD_DATE__ = new Date(Date.now() - 6 * 60 * 60 * 1000);
7
6
 
8
7
  export const __LAST_VOTING_DATE__ = new Date(Date.now() - 6 * 60 * 60 * 1000);
9
8
 
10
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
11
- setCryptoAssetsStoreForCoinFramework({
12
- findTokenById: (_: string) => undefined,
13
- findTokenByAddressInCurrency: (_: string, __: string) => undefined,
14
- getTokensSyncHash: (_: string) => Promise.resolve("test_hash"),
15
- } as unknown as CryptoAssetsStore);
9
+ setupMockCryptoAssetsStore({
10
+ getTokensSyncHash: async () => "test_hash",
11
+ });
16
12
 
17
13
  const mockAccountRaw = {
18
14
  id: "js:2:tron:TRON_ID:",
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { testBridge } from "../../__tests__/test-helpers/bridge";
3
3
  import { dataset } from "@ledgerhq/coin-vechain/test/index";
4
4
 
@@ -1,4 +1,4 @@
1
- import "../../__tests__/test-helpers/setup";
1
+ import "../../__tests__/test-helpers/setup.integration";
2
2
  import { newAddress1, dataset } from "@ledgerhq/coin-xrp/test/index";
3
3
  import { testBridge } from "../../__tests__/test-helpers/bridge";
4
4
  import { addNotCreatedRippleMockAddress } from "./bridge/mock";
@@ -664,6 +664,7 @@ export const DEFAULT_FEATURES: Features = {
664
664
  },
665
665
  },
666
666
  ldmkConnectApp: DEFAULT_FEATURE,
667
+ ldmkSolanaSigner: DEFAULT_FEATURE,
667
668
  lldNetworkBasedAddAccount: DEFAULT_FEATURE,
668
669
  llmDatadog: {
669
670
  ...DEFAULT_FEATURE,
@@ -0,0 +1,5 @@
1
+ export {
2
+ setupCalClientStore,
3
+ setupMockCryptoAssetsStore,
4
+ createMockCryptoAssetsStore,
5
+ } from "@ledgerhq/cryptoassets/cal-client/test-helpers";