@ledgerhq/live-common 34.53.0 → 34.54.0-nightly.20251126160702

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 (848) hide show
  1. package/lib/__tests__/test-helpers/bridge.d.ts.map +1 -1
  2. package/lib/__tests__/test-helpers/bridge.js +0 -4
  3. package/lib/__tests__/test-helpers/bridge.js.map +1 -1
  4. package/lib/__tests__/test-helpers/environment.js +3 -0
  5. package/lib/__tests__/test-helpers/environment.js.map +1 -1
  6. package/lib/__tests__/test-helpers/setup.integration.d.ts +2 -0
  7. package/lib/__tests__/test-helpers/setup.integration.d.ts.map +1 -0
  8. package/lib/__tests__/test-helpers/{setup.js → setup.integration.js} +4 -8
  9. package/lib/__tests__/test-helpers/setup.integration.js.map +1 -0
  10. package/lib/account/helpers.d.ts.map +1 -1
  11. package/lib/account/helpers.js +21 -17
  12. package/lib/account/helpers.js.map +1 -1
  13. package/lib/apps/config.d.ts.map +1 -1
  14. package/lib/apps/config.js +6 -0
  15. package/lib/apps/config.js.map +1 -1
  16. package/lib/bridge/generic-alpaca/getAccountShape.d.ts.map +1 -1
  17. package/lib/bridge/generic-alpaca/getAccountShape.js +12 -10
  18. package/lib/bridge/generic-alpaca/getAccountShape.js.map +1 -1
  19. package/lib/bridge/generic-alpaca/utils.js +1 -1
  20. package/lib/bridge/generic-alpaca/utils.js.map +1 -1
  21. package/lib/bridge/impl.d.ts +0 -2
  22. package/lib/bridge/impl.d.ts.map +1 -1
  23. package/lib/bridge/impl.js +4 -8
  24. package/lib/bridge/impl.js.map +1 -1
  25. package/lib/currencies/helpers.d.ts +1 -3
  26. package/lib/currencies/helpers.d.ts.map +1 -1
  27. package/lib/currencies/helpers.js +1 -27
  28. package/lib/currencies/helpers.js.map +1 -1
  29. package/lib/currencies/index.d.ts +1 -1
  30. package/lib/currencies/index.d.ts.map +1 -1
  31. package/lib/currencies/index.js +1 -4
  32. package/lib/currencies/index.js.map +1 -1
  33. package/lib/dada-client/hooks/useAssetsData.d.ts +1 -0
  34. package/lib/dada-client/hooks/useAssetsData.d.ts.map +1 -1
  35. package/lib/dada-client/hooks/useAssetsData.js +1 -0
  36. package/lib/dada-client/hooks/useAssetsData.js.map +1 -1
  37. package/lib/deposit/type.d.ts +0 -17
  38. package/lib/deposit/type.d.ts.map +1 -1
  39. package/lib/deposit/type.js.map +1 -1
  40. package/lib/device/use-cases/getDeviceHasBattery.d.ts +2 -0
  41. package/lib/device/use-cases/getDeviceHasBattery.d.ts.map +1 -0
  42. package/lib/device/use-cases/getDeviceHasBattery.js +6 -0
  43. package/lib/device/use-cases/getDeviceHasBattery.js.map +1 -0
  44. package/lib/deviceSDK/hooks/useBatteryStatuses.d.ts +2 -1
  45. package/lib/deviceSDK/hooks/useBatteryStatuses.d.ts.map +1 -1
  46. package/lib/deviceSDK/hooks/useBatteryStatuses.js +4 -2
  47. package/lib/deviceSDK/hooks/useBatteryStatuses.js.map +1 -1
  48. package/lib/deviceSDK/tasks/core.d.ts +1 -1
  49. package/lib/deviceSDK/tasks/core.d.ts.map +1 -1
  50. package/lib/deviceSDK/tasks/core.js +1 -1
  51. package/lib/deviceSDK/tasks/core.js.map +1 -1
  52. package/lib/deviceSDK/tasks/getDeviceInfo.d.ts.map +1 -1
  53. package/lib/deviceSDK/tasks/getDeviceInfo.js +2 -0
  54. package/lib/deviceSDK/tasks/getDeviceInfo.js.map +1 -1
  55. package/lib/deviceSDK/tasks/getLatestFirmware.d.ts.map +1 -1
  56. package/lib/deviceSDK/tasks/getLatestFirmware.js +2 -2
  57. package/lib/deviceSDK/tasks/getLatestFirmware.js.map +1 -1
  58. package/lib/deviceSDK/tasks/updateFirmware.d.ts.map +1 -1
  59. package/lib/deviceSDK/tasks/updateFirmware.js +1 -0
  60. package/lib/deviceSDK/tasks/updateFirmware.js.map +1 -1
  61. package/lib/e2e/data/assetsDrawer.d.ts +9 -0
  62. package/lib/e2e/data/assetsDrawer.d.ts.map +1 -0
  63. package/lib/e2e/data/assetsDrawer.js +12 -0
  64. package/lib/e2e/data/assetsDrawer.js.map +1 -0
  65. package/lib/e2e/deviceInteraction/DeviceController.d.ts +41 -0
  66. package/lib/e2e/deviceInteraction/DeviceController.d.ts.map +1 -0
  67. package/lib/e2e/deviceInteraction/DeviceController.js +68 -0
  68. package/lib/e2e/deviceInteraction/DeviceController.js.map +1 -0
  69. package/lib/e2e/enum/Account.d.ts +0 -1
  70. package/lib/e2e/enum/Account.d.ts.map +1 -1
  71. package/lib/e2e/enum/Account.js +0 -1
  72. package/lib/e2e/enum/Account.js.map +1 -1
  73. package/lib/e2e/enum/Currency.d.ts +0 -1
  74. package/lib/e2e/enum/Currency.d.ts.map +1 -1
  75. package/lib/e2e/enum/Currency.js +2 -6
  76. package/lib/e2e/enum/Currency.js.map +1 -1
  77. package/lib/e2e/enum/ReceiveFundsOptions.d.ts +6 -0
  78. package/lib/e2e/enum/ReceiveFundsOptions.d.ts.map +1 -0
  79. package/lib/e2e/enum/ReceiveFundsOptions.js +8 -0
  80. package/lib/e2e/enum/ReceiveFundsOptions.js.map +1 -0
  81. package/lib/e2e/families/algorand.d.ts +1 -1
  82. package/lib/e2e/families/algorand.d.ts.map +1 -1
  83. package/lib/e2e/families/algorand.js +5 -5
  84. package/lib/e2e/families/algorand.js.map +1 -1
  85. package/lib/e2e/families/aptos.d.ts +2 -2
  86. package/lib/e2e/families/aptos.d.ts.map +1 -1
  87. package/lib/e2e/families/aptos.js +9 -9
  88. package/lib/e2e/families/aptos.js.map +1 -1
  89. package/lib/e2e/families/bitcoin.d.ts +2 -2
  90. package/lib/e2e/families/bitcoin.d.ts.map +1 -1
  91. package/lib/e2e/families/bitcoin.js +11 -11
  92. package/lib/e2e/families/bitcoin.js.map +1 -1
  93. package/lib/e2e/families/cardano.d.ts +6 -0
  94. package/lib/e2e/families/cardano.d.ts.map +1 -1
  95. package/lib/e2e/families/cardano.js +28 -26
  96. package/lib/e2e/families/cardano.js.map +1 -1
  97. package/lib/e2e/families/celo.d.ts +1 -1
  98. package/lib/e2e/families/celo.d.ts.map +1 -1
  99. package/lib/e2e/families/celo.js +5 -5
  100. package/lib/e2e/families/celo.js.map +1 -1
  101. package/lib/e2e/families/cosmos.d.ts +2 -2
  102. package/lib/e2e/families/cosmos.d.ts.map +1 -1
  103. package/lib/e2e/families/cosmos.js +9 -9
  104. package/lib/e2e/families/cosmos.js.map +1 -1
  105. package/lib/e2e/families/evm.d.ts +2 -0
  106. package/lib/e2e/families/evm.d.ts.map +1 -1
  107. package/lib/e2e/families/evm.js +13 -12
  108. package/lib/e2e/families/evm.js.map +1 -1
  109. package/lib/e2e/families/hedera.d.ts +1 -1
  110. package/lib/e2e/families/hedera.d.ts.map +1 -1
  111. package/lib/e2e/families/hedera.js +5 -5
  112. package/lib/e2e/families/hedera.js.map +1 -1
  113. package/lib/e2e/families/kaspa.d.ts +2 -2
  114. package/lib/e2e/families/kaspa.d.ts.map +1 -1
  115. package/lib/e2e/families/kaspa.js +9 -9
  116. package/lib/e2e/families/kaspa.js.map +1 -1
  117. package/lib/e2e/families/multiversX.d.ts +1 -1
  118. package/lib/e2e/families/multiversX.d.ts.map +1 -1
  119. package/lib/e2e/families/multiversX.js +5 -5
  120. package/lib/e2e/families/multiversX.js.map +1 -1
  121. package/lib/e2e/families/near.d.ts +1 -1
  122. package/lib/e2e/families/near.d.ts.map +1 -1
  123. package/lib/e2e/families/near.js +6 -6
  124. package/lib/e2e/families/near.js.map +1 -1
  125. package/lib/e2e/families/osmosis.d.ts +1 -1
  126. package/lib/e2e/families/osmosis.d.ts.map +1 -1
  127. package/lib/e2e/families/osmosis.js +5 -5
  128. package/lib/e2e/families/osmosis.js.map +1 -1
  129. package/lib/e2e/families/polkadot.d.ts +1 -1
  130. package/lib/e2e/families/polkadot.d.ts.map +1 -1
  131. package/lib/e2e/families/polkadot.js +5 -5
  132. package/lib/e2e/families/polkadot.js.map +1 -1
  133. package/lib/e2e/families/solana.d.ts +2 -2
  134. package/lib/e2e/families/solana.d.ts.map +1 -1
  135. package/lib/e2e/families/solana.js +9 -9
  136. package/lib/e2e/families/solana.js.map +1 -1
  137. package/lib/e2e/families/stellar.d.ts +1 -1
  138. package/lib/e2e/families/stellar.d.ts.map +1 -1
  139. package/lib/e2e/families/stellar.js +5 -5
  140. package/lib/e2e/families/stellar.js.map +1 -1
  141. package/lib/e2e/families/sui.d.ts +1 -1
  142. package/lib/e2e/families/sui.d.ts.map +1 -1
  143. package/lib/e2e/families/sui.js +5 -5
  144. package/lib/e2e/families/sui.js.map +1 -1
  145. package/lib/e2e/families/tezos.d.ts +1 -1
  146. package/lib/e2e/families/tezos.d.ts.map +1 -1
  147. package/lib/e2e/families/tezos.js +7 -8
  148. package/lib/e2e/families/tezos.js.map +1 -1
  149. package/lib/e2e/families/tron.d.ts +1 -1
  150. package/lib/e2e/families/tron.d.ts.map +1 -1
  151. package/lib/e2e/families/tron.js +5 -5
  152. package/lib/e2e/families/tron.js.map +1 -1
  153. package/lib/e2e/families/xrp.d.ts +1 -1
  154. package/lib/e2e/families/xrp.d.ts.map +1 -1
  155. package/lib/e2e/families/xrp.js +5 -5
  156. package/lib/e2e/families/xrp.js.map +1 -1
  157. package/lib/e2e/index.d.ts +23 -0
  158. package/lib/e2e/index.d.ts.map +1 -1
  159. package/lib/e2e/speculos.d.ts +11 -11
  160. package/lib/e2e/speculos.d.ts.map +1 -1
  161. package/lib/e2e/speculos.js +87 -80
  162. package/lib/e2e/speculos.js.map +1 -1
  163. package/lib/env.react.d.ts +1 -1
  164. package/lib/env.react.d.ts.map +1 -1
  165. package/lib/exchange/providers/swap.d.ts +1 -0
  166. package/lib/exchange/providers/swap.d.ts.map +1 -1
  167. package/lib/exchange/providers/swap.js +5 -1
  168. package/lib/exchange/providers/swap.js.map +1 -1
  169. package/lib/exchange/swap/getCompleteSwapHistory.js +2 -2
  170. package/lib/exchange/swap/getCompleteSwapHistory.js.map +1 -1
  171. package/lib/exchange/swap/hooks/useSelectableCurrencies.js +2 -2
  172. package/lib/exchange/swap/hooks/useSelectableCurrencies.js.map +1 -1
  173. package/lib/exchange/swap/hooks/v5/useFetchCurrencyAll.d.ts.map +1 -1
  174. package/lib/exchange/swap/hooks/v5/useFetchCurrencyAll.js +2 -3
  175. package/lib/exchange/swap/hooks/v5/useFetchCurrencyAll.js.map +1 -1
  176. package/lib/exchange/swap/hooks/v5/useFilteredProviders.d.ts.map +1 -1
  177. package/lib/exchange/swap/hooks/v5/useFilteredProviders.js +15 -10
  178. package/lib/exchange/swap/hooks/v5/useFilteredProviders.js.map +1 -1
  179. package/lib/families/canton/bridge/mock.d.ts.map +1 -1
  180. package/lib/families/canton/bridge/mock.js +1 -0
  181. package/lib/families/canton/bridge/mock.js.map +1 -1
  182. package/lib/families/canton/react.d.ts +15 -0
  183. package/lib/families/canton/react.d.ts.map +1 -0
  184. package/lib/families/canton/react.js +14 -0
  185. package/lib/families/canton/react.js.map +1 -0
  186. package/lib/families/cosmos/datasets/dydx.integration.FIXME.d.ts +1 -1
  187. package/lib/families/cosmos/datasets/dydx.integration.FIXME.d.ts.map +1 -1
  188. package/lib/families/cosmos/datasets/dydx.integration.FIXME.js +1 -1
  189. package/lib/families/cosmos/datasets/dydx.integration.FIXME.js.map +1 -1
  190. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts +1 -1
  191. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts.map +1 -1
  192. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.js +1 -1
  193. package/lib/families/cosmos/datasets/secretNetwork.integration.FIXME.js.map +1 -1
  194. package/lib/families/evm/config.d.ts.map +1 -1
  195. package/lib/families/evm/config.js +49 -0
  196. package/lib/families/evm/config.js.map +1 -1
  197. package/lib/families/evm/setup.d.ts.map +1 -1
  198. package/lib/families/evm/setup.js +1 -11
  199. package/lib/families/evm/setup.js.map +1 -1
  200. package/lib/families/solana/bridge/mock.d.ts.map +1 -1
  201. package/lib/families/solana/bridge/mock.js +10 -8
  202. package/lib/families/solana/bridge/mock.js.map +1 -1
  203. package/lib/families/solana/config.d.ts.map +1 -1
  204. package/lib/families/solana/config.js +0 -1
  205. package/lib/families/solana/config.js.map +1 -1
  206. package/lib/families/solana/setup.d.ts +8 -0
  207. package/lib/families/solana/setup.d.ts.map +1 -1
  208. package/lib/families/solana/setup.js +29 -16
  209. package/lib/families/solana/setup.js.map +1 -1
  210. package/lib/families/tron/data.mock.d.ts.map +1 -1
  211. package/lib/families/tron/data.mock.js +3 -6
  212. package/lib/families/tron/data.mock.js.map +1 -1
  213. package/lib/featureFlags/defaultFeatures.d.ts +3 -0
  214. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
  215. package/lib/featureFlags/defaultFeatures.js +10 -0
  216. package/lib/featureFlags/defaultFeatures.js.map +1 -1
  217. package/lib/featureFlags/stakePrograms/index.d.ts +1 -0
  218. package/lib/featureFlags/stakePrograms/index.d.ts.map +1 -1
  219. package/lib/featureFlags/stakePrograms/index.js +16 -1
  220. package/lib/featureFlags/stakePrograms/index.js.map +1 -1
  221. package/lib/featureFlags/useFeature.d.ts +1 -1
  222. package/lib/featureFlags/useFeature.d.ts.map +1 -1
  223. package/lib/market/hooks/useMarketDataProvider.js +1 -0
  224. package/lib/market/hooks/useMarketDataProvider.js.map +1 -1
  225. package/lib/market/utils/types.d.ts +1 -0
  226. package/lib/market/utils/types.d.ts.map +1 -1
  227. package/lib/market/utils/types.js.map +1 -1
  228. package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts.map +1 -1
  229. package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js +11 -0
  230. package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js.map +1 -1
  231. package/lib/modularDrawer/hooks/useNetworkAccountCounts.d.ts +1 -5
  232. package/lib/modularDrawer/hooks/useNetworkAccountCounts.d.ts.map +1 -1
  233. package/lib/modularDrawer/hooks/useNetworkAccountCounts.js +2 -2
  234. package/lib/modularDrawer/hooks/useNetworkAccountCounts.js.map +1 -1
  235. package/lib/modularDrawer/modules/createNetworkConfiguration.d.ts +1 -1
  236. package/lib/modularDrawer/modules/createNetworkConfiguration.d.ts.map +1 -1
  237. package/lib/modularDrawer/modules/createNetworkConfiguration.js +1 -2
  238. package/lib/modularDrawer/modules/createNetworkConfiguration.js.map +1 -1
  239. package/lib/modularDrawer/utils/{groupCurrenciesByProvider.d.ts → groupCurrenciesByAsset.d.ts} +2 -2
  240. package/lib/modularDrawer/utils/groupCurrenciesByAsset.d.ts.map +1 -0
  241. package/lib/modularDrawer/utils/groupCurrenciesByAsset.js +21 -0
  242. package/lib/modularDrawer/utils/groupCurrenciesByAsset.js.map +1 -0
  243. package/lib/modularDrawer/utils/index.d.ts +1 -1
  244. package/lib/modularDrawer/utils/index.d.ts.map +1 -1
  245. package/lib/modularDrawer/utils/index.js +3 -3
  246. package/lib/modularDrawer/utils/index.js.map +1 -1
  247. package/lib/modularDrawer/utils/type.d.ts +0 -5
  248. package/lib/modularDrawer/utils/type.d.ts.map +1 -1
  249. package/lib/platform/filters.d.ts +1 -2
  250. package/lib/platform/filters.d.ts.map +1 -1
  251. package/lib/platform/filters.js +1 -17
  252. package/lib/platform/filters.js.map +1 -1
  253. package/lib/platform/helpers.d.ts +1 -5
  254. package/lib/platform/helpers.d.ts.map +1 -1
  255. package/lib/platform/helpers.js +1 -33
  256. package/lib/platform/helpers.js.map +1 -1
  257. package/lib/platform/react.d.ts +2 -3
  258. package/lib/platform/react.d.ts.map +1 -1
  259. package/lib/platform/react.js +66 -16
  260. package/lib/platform/react.js.map +1 -1
  261. package/lib/platform/types.d.ts +3 -3
  262. package/lib/platform/types.d.ts.map +1 -1
  263. package/lib/postOnboarding/reducer.d.ts +2 -0
  264. package/lib/postOnboarding/reducer.d.ts.map +1 -1
  265. package/lib/test-helpers/cryptoAssetsStore.d.ts +2 -0
  266. package/lib/test-helpers/cryptoAssetsStore.d.ts.map +1 -0
  267. package/lib/test-helpers/cryptoAssetsStore.js +8 -0
  268. package/lib/test-helpers/cryptoAssetsStore.js.map +1 -0
  269. package/lib/utils/getAccountTuplesForCurrency.d.ts +1 -1
  270. package/lib/utils/getAccountTuplesForCurrency.d.ts.map +1 -1
  271. package/lib/utils/getAccountTuplesForCurrency.js +2 -3
  272. package/lib/utils/getAccountTuplesForCurrency.js.map +1 -1
  273. package/lib/wallet-api/ACRE/server.js +5 -5
  274. package/lib/wallet-api/ACRE/server.js.map +1 -1
  275. package/lib/wallet-api/Exchange/server.d.ts.map +1 -1
  276. package/lib/wallet-api/Exchange/server.js +8 -7
  277. package/lib/wallet-api/Exchange/server.js.map +1 -1
  278. package/lib/wallet-api/converters.d.ts +1 -0
  279. package/lib/wallet-api/converters.d.ts.map +1 -1
  280. package/lib/wallet-api/converters.js +7 -2
  281. package/lib/wallet-api/converters.js.map +1 -1
  282. package/lib/wallet-api/logic.js +8 -8
  283. package/lib/wallet-api/logic.js.map +1 -1
  284. package/lib/wallet-api/react.d.ts +6 -11
  285. package/lib/wallet-api/react.d.ts.map +1 -1
  286. package/lib/wallet-api/react.js +293 -135
  287. package/lib/wallet-api/react.js.map +1 -1
  288. package/lib/wallet-api/tracking.d.ts +6 -0
  289. package/lib/wallet-api/tracking.d.ts.map +1 -1
  290. package/lib/wallet-api/tracking.js +20 -0
  291. package/lib/wallet-api/tracking.js.map +1 -1
  292. package/lib/wallet-api/types.d.ts +3 -0
  293. package/lib/wallet-api/types.d.ts.map +1 -1
  294. package/lib/wallet-api/useDappLogic.d.ts.map +1 -1
  295. package/lib/wallet-api/useDappLogic.js +65 -80
  296. package/lib/wallet-api/useDappLogic.js.map +1 -1
  297. package/lib/wallet-api/utils/deriveAccountIdForManifest.d.ts +6 -0
  298. package/lib/wallet-api/utils/deriveAccountIdForManifest.d.ts.map +1 -1
  299. package/lib/wallet-api/utils/deriveAccountIdForManifest.js +13 -3
  300. package/lib/wallet-api/utils/deriveAccountIdForManifest.js.map +1 -1
  301. package/lib-es/__tests__/test-helpers/bridge.d.ts.map +1 -1
  302. package/lib-es/__tests__/test-helpers/bridge.js +0 -4
  303. package/lib-es/__tests__/test-helpers/bridge.js.map +1 -1
  304. package/lib-es/__tests__/test-helpers/environment.js +3 -0
  305. package/lib-es/__tests__/test-helpers/environment.js.map +1 -1
  306. package/lib-es/__tests__/test-helpers/setup.integration.d.ts +2 -0
  307. package/lib-es/__tests__/test-helpers/setup.integration.d.ts.map +1 -0
  308. package/lib-es/__tests__/test-helpers/setup.integration.js +14 -0
  309. package/lib-es/__tests__/test-helpers/setup.integration.js.map +1 -0
  310. package/lib-es/account/helpers.d.ts.map +1 -1
  311. package/lib-es/account/helpers.js +5 -1
  312. package/lib-es/account/helpers.js.map +1 -1
  313. package/lib-es/apps/config.d.ts.map +1 -1
  314. package/lib-es/apps/config.js +6 -0
  315. package/lib-es/apps/config.js.map +1 -1
  316. package/lib-es/bridge/generic-alpaca/getAccountShape.d.ts.map +1 -1
  317. package/lib-es/bridge/generic-alpaca/getAccountShape.js +13 -11
  318. package/lib-es/bridge/generic-alpaca/getAccountShape.js.map +1 -1
  319. package/lib-es/bridge/generic-alpaca/utils.js +1 -1
  320. package/lib-es/bridge/generic-alpaca/utils.js.map +1 -1
  321. package/lib-es/bridge/impl.d.ts +0 -2
  322. package/lib-es/bridge/impl.d.ts.map +1 -1
  323. package/lib-es/bridge/impl.js +3 -6
  324. package/lib-es/bridge/impl.js.map +1 -1
  325. package/lib-es/currencies/helpers.d.ts +1 -3
  326. package/lib-es/currencies/helpers.d.ts.map +1 -1
  327. package/lib-es/currencies/helpers.js +0 -24
  328. package/lib-es/currencies/helpers.js.map +1 -1
  329. package/lib-es/currencies/index.d.ts +1 -1
  330. package/lib-es/currencies/index.d.ts.map +1 -1
  331. package/lib-es/currencies/index.js +1 -1
  332. package/lib-es/currencies/index.js.map +1 -1
  333. package/lib-es/dada-client/hooks/useAssetsData.d.ts +1 -0
  334. package/lib-es/dada-client/hooks/useAssetsData.d.ts.map +1 -1
  335. package/lib-es/dada-client/hooks/useAssetsData.js +1 -0
  336. package/lib-es/dada-client/hooks/useAssetsData.js.map +1 -1
  337. package/lib-es/deposit/type.d.ts +0 -17
  338. package/lib-es/deposit/type.d.ts.map +1 -1
  339. package/lib-es/deposit/type.js.map +1 -1
  340. package/lib-es/device/use-cases/getDeviceHasBattery.d.ts +2 -0
  341. package/lib-es/device/use-cases/getDeviceHasBattery.d.ts.map +1 -0
  342. package/lib-es/device/use-cases/getDeviceHasBattery.js +2 -0
  343. package/lib-es/device/use-cases/getDeviceHasBattery.js.map +1 -0
  344. package/lib-es/deviceSDK/hooks/useBatteryStatuses.d.ts +2 -1
  345. package/lib-es/deviceSDK/hooks/useBatteryStatuses.d.ts.map +1 -1
  346. package/lib-es/deviceSDK/hooks/useBatteryStatuses.js +4 -2
  347. package/lib-es/deviceSDK/hooks/useBatteryStatuses.js.map +1 -1
  348. package/lib-es/deviceSDK/tasks/core.d.ts +1 -1
  349. package/lib-es/deviceSDK/tasks/core.d.ts.map +1 -1
  350. package/lib-es/deviceSDK/tasks/core.js +1 -1
  351. package/lib-es/deviceSDK/tasks/core.js.map +1 -1
  352. package/lib-es/deviceSDK/tasks/getDeviceInfo.d.ts.map +1 -1
  353. package/lib-es/deviceSDK/tasks/getDeviceInfo.js +2 -0
  354. package/lib-es/deviceSDK/tasks/getDeviceInfo.js.map +1 -1
  355. package/lib-es/deviceSDK/tasks/getLatestFirmware.d.ts.map +1 -1
  356. package/lib-es/deviceSDK/tasks/getLatestFirmware.js +2 -2
  357. package/lib-es/deviceSDK/tasks/getLatestFirmware.js.map +1 -1
  358. package/lib-es/deviceSDK/tasks/updateFirmware.d.ts.map +1 -1
  359. package/lib-es/deviceSDK/tasks/updateFirmware.js +2 -1
  360. package/lib-es/deviceSDK/tasks/updateFirmware.js.map +1 -1
  361. package/lib-es/e2e/data/assetsDrawer.d.ts +9 -0
  362. package/lib-es/e2e/data/assetsDrawer.d.ts.map +1 -0
  363. package/lib-es/e2e/data/assetsDrawer.js +9 -0
  364. package/lib-es/e2e/data/assetsDrawer.js.map +1 -0
  365. package/lib-es/e2e/deviceInteraction/DeviceController.d.ts +41 -0
  366. package/lib-es/e2e/deviceInteraction/DeviceController.d.ts.map +1 -0
  367. package/lib-es/e2e/deviceInteraction/DeviceController.js +63 -0
  368. package/lib-es/e2e/deviceInteraction/DeviceController.js.map +1 -0
  369. package/lib-es/e2e/enum/Account.d.ts +0 -1
  370. package/lib-es/e2e/enum/Account.d.ts.map +1 -1
  371. package/lib-es/e2e/enum/Account.js +0 -1
  372. package/lib-es/e2e/enum/Account.js.map +1 -1
  373. package/lib-es/e2e/enum/Currency.d.ts +0 -1
  374. package/lib-es/e2e/enum/Currency.d.ts.map +1 -1
  375. package/lib-es/e2e/enum/Currency.js +2 -6
  376. package/lib-es/e2e/enum/Currency.js.map +1 -1
  377. package/lib-es/e2e/enum/ReceiveFundsOptions.d.ts +6 -0
  378. package/lib-es/e2e/enum/ReceiveFundsOptions.d.ts.map +1 -0
  379. package/lib-es/e2e/enum/ReceiveFundsOptions.js +5 -0
  380. package/lib-es/e2e/enum/ReceiveFundsOptions.js.map +1 -0
  381. package/lib-es/e2e/families/algorand.d.ts +1 -1
  382. package/lib-es/e2e/families/algorand.d.ts.map +1 -1
  383. package/lib-es/e2e/families/algorand.js +5 -4
  384. package/lib-es/e2e/families/algorand.js.map +1 -1
  385. package/lib-es/e2e/families/aptos.d.ts +2 -2
  386. package/lib-es/e2e/families/aptos.d.ts.map +1 -1
  387. package/lib-es/e2e/families/aptos.js +9 -7
  388. package/lib-es/e2e/families/aptos.js.map +1 -1
  389. package/lib-es/e2e/families/bitcoin.d.ts +2 -2
  390. package/lib-es/e2e/families/bitcoin.d.ts.map +1 -1
  391. package/lib-es/e2e/families/bitcoin.js +11 -9
  392. package/lib-es/e2e/families/bitcoin.js.map +1 -1
  393. package/lib-es/e2e/families/cardano.d.ts +6 -0
  394. package/lib-es/e2e/families/cardano.d.ts.map +1 -1
  395. package/lib-es/e2e/families/cardano.js +23 -21
  396. package/lib-es/e2e/families/cardano.js.map +1 -1
  397. package/lib-es/e2e/families/celo.d.ts +1 -1
  398. package/lib-es/e2e/families/celo.d.ts.map +1 -1
  399. package/lib-es/e2e/families/celo.js +5 -4
  400. package/lib-es/e2e/families/celo.js.map +1 -1
  401. package/lib-es/e2e/families/cosmos.d.ts +2 -2
  402. package/lib-es/e2e/families/cosmos.d.ts.map +1 -1
  403. package/lib-es/e2e/families/cosmos.js +9 -7
  404. package/lib-es/e2e/families/cosmos.js.map +1 -1
  405. package/lib-es/e2e/families/evm.d.ts +2 -0
  406. package/lib-es/e2e/families/evm.d.ts.map +1 -1
  407. package/lib-es/e2e/families/evm.js +10 -9
  408. package/lib-es/e2e/families/evm.js.map +1 -1
  409. package/lib-es/e2e/families/hedera.d.ts +1 -1
  410. package/lib-es/e2e/families/hedera.d.ts.map +1 -1
  411. package/lib-es/e2e/families/hedera.js +5 -4
  412. package/lib-es/e2e/families/hedera.js.map +1 -1
  413. package/lib-es/e2e/families/kaspa.d.ts +2 -2
  414. package/lib-es/e2e/families/kaspa.d.ts.map +1 -1
  415. package/lib-es/e2e/families/kaspa.js +9 -7
  416. package/lib-es/e2e/families/kaspa.js.map +1 -1
  417. package/lib-es/e2e/families/multiversX.d.ts +1 -1
  418. package/lib-es/e2e/families/multiversX.d.ts.map +1 -1
  419. package/lib-es/e2e/families/multiversX.js +5 -4
  420. package/lib-es/e2e/families/multiversX.js.map +1 -1
  421. package/lib-es/e2e/families/near.d.ts +1 -1
  422. package/lib-es/e2e/families/near.d.ts.map +1 -1
  423. package/lib-es/e2e/families/near.js +6 -5
  424. package/lib-es/e2e/families/near.js.map +1 -1
  425. package/lib-es/e2e/families/osmosis.d.ts +1 -1
  426. package/lib-es/e2e/families/osmosis.d.ts.map +1 -1
  427. package/lib-es/e2e/families/osmosis.js +5 -4
  428. package/lib-es/e2e/families/osmosis.js.map +1 -1
  429. package/lib-es/e2e/families/polkadot.d.ts +1 -1
  430. package/lib-es/e2e/families/polkadot.d.ts.map +1 -1
  431. package/lib-es/e2e/families/polkadot.js +5 -4
  432. package/lib-es/e2e/families/polkadot.js.map +1 -1
  433. package/lib-es/e2e/families/solana.d.ts +2 -2
  434. package/lib-es/e2e/families/solana.d.ts.map +1 -1
  435. package/lib-es/e2e/families/solana.js +9 -7
  436. package/lib-es/e2e/families/solana.js.map +1 -1
  437. package/lib-es/e2e/families/stellar.d.ts +1 -1
  438. package/lib-es/e2e/families/stellar.d.ts.map +1 -1
  439. package/lib-es/e2e/families/stellar.js +5 -4
  440. package/lib-es/e2e/families/stellar.js.map +1 -1
  441. package/lib-es/e2e/families/sui.d.ts +1 -1
  442. package/lib-es/e2e/families/sui.d.ts.map +1 -1
  443. package/lib-es/e2e/families/sui.js +5 -4
  444. package/lib-es/e2e/families/sui.js.map +1 -1
  445. package/lib-es/e2e/families/tezos.d.ts +1 -1
  446. package/lib-es/e2e/families/tezos.d.ts.map +1 -1
  447. package/lib-es/e2e/families/tezos.js +8 -8
  448. package/lib-es/e2e/families/tezos.js.map +1 -1
  449. package/lib-es/e2e/families/tron.d.ts +1 -1
  450. package/lib-es/e2e/families/tron.d.ts.map +1 -1
  451. package/lib-es/e2e/families/tron.js +5 -4
  452. package/lib-es/e2e/families/tron.js.map +1 -1
  453. package/lib-es/e2e/families/xrp.d.ts +1 -1
  454. package/lib-es/e2e/families/xrp.d.ts.map +1 -1
  455. package/lib-es/e2e/families/xrp.js +5 -4
  456. package/lib-es/e2e/families/xrp.js.map +1 -1
  457. package/lib-es/e2e/index.d.ts +23 -0
  458. package/lib-es/e2e/index.d.ts.map +1 -1
  459. package/lib-es/e2e/speculos.d.ts +11 -11
  460. package/lib-es/e2e/speculos.d.ts.map +1 -1
  461. package/lib-es/e2e/speculos.js +63 -45
  462. package/lib-es/e2e/speculos.js.map +1 -1
  463. package/lib-es/env.react.d.ts +1 -1
  464. package/lib-es/env.react.d.ts.map +1 -1
  465. package/lib-es/exchange/providers/swap.d.ts +1 -0
  466. package/lib-es/exchange/providers/swap.d.ts.map +1 -1
  467. package/lib-es/exchange/providers/swap.js +3 -0
  468. package/lib-es/exchange/providers/swap.js.map +1 -1
  469. package/lib-es/exchange/swap/getCompleteSwapHistory.js +1 -1
  470. package/lib-es/exchange/swap/getCompleteSwapHistory.js.map +1 -1
  471. package/lib-es/exchange/swap/hooks/useSelectableCurrencies.js +1 -1
  472. package/lib-es/exchange/swap/hooks/useSelectableCurrencies.js.map +1 -1
  473. package/lib-es/exchange/swap/hooks/v5/useFetchCurrencyAll.d.ts.map +1 -1
  474. package/lib-es/exchange/swap/hooks/v5/useFetchCurrencyAll.js +2 -3
  475. package/lib-es/exchange/swap/hooks/v5/useFetchCurrencyAll.js.map +1 -1
  476. package/lib-es/exchange/swap/hooks/v5/useFilteredProviders.d.ts.map +1 -1
  477. package/lib-es/exchange/swap/hooks/v5/useFilteredProviders.js +17 -12
  478. package/lib-es/exchange/swap/hooks/v5/useFilteredProviders.js.map +1 -1
  479. package/lib-es/families/canton/bridge/mock.d.ts.map +1 -1
  480. package/lib-es/families/canton/bridge/mock.js +1 -0
  481. package/lib-es/families/canton/bridge/mock.js.map +1 -1
  482. package/lib-es/families/canton/react.d.ts +15 -0
  483. package/lib-es/families/canton/react.d.ts.map +1 -0
  484. package/lib-es/families/canton/react.js +10 -0
  485. package/lib-es/families/canton/react.js.map +1 -0
  486. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.d.ts +1 -1
  487. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.d.ts.map +1 -1
  488. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.js +1 -1
  489. package/lib-es/families/cosmos/datasets/dydx.integration.FIXME.js.map +1 -1
  490. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts +1 -1
  491. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.d.ts.map +1 -1
  492. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.js +1 -1
  493. package/lib-es/families/cosmos/datasets/secretNetwork.integration.FIXME.js.map +1 -1
  494. package/lib-es/families/evm/config.d.ts.map +1 -1
  495. package/lib-es/families/evm/config.js +49 -0
  496. package/lib-es/families/evm/config.js.map +1 -1
  497. package/lib-es/families/evm/setup.d.ts.map +1 -1
  498. package/lib-es/families/evm/setup.js +1 -11
  499. package/lib-es/families/evm/setup.js.map +1 -1
  500. package/lib-es/families/solana/bridge/mock.d.ts.map +1 -1
  501. package/lib-es/families/solana/bridge/mock.js +11 -9
  502. package/lib-es/families/solana/bridge/mock.js.map +1 -1
  503. package/lib-es/families/solana/config.d.ts.map +1 -1
  504. package/lib-es/families/solana/config.js +0 -1
  505. package/lib-es/families/solana/config.js.map +1 -1
  506. package/lib-es/families/solana/setup.d.ts +8 -0
  507. package/lib-es/families/solana/setup.d.ts.map +1 -1
  508. package/lib-es/families/solana/setup.js +28 -17
  509. package/lib-es/families/solana/setup.js.map +1 -1
  510. package/lib-es/families/tron/data.mock.d.ts.map +1 -1
  511. package/lib-es/families/tron/data.mock.js +3 -6
  512. package/lib-es/families/tron/data.mock.js.map +1 -1
  513. package/lib-es/featureFlags/defaultFeatures.d.ts +3 -0
  514. package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
  515. package/lib-es/featureFlags/defaultFeatures.js +10 -0
  516. package/lib-es/featureFlags/defaultFeatures.js.map +1 -1
  517. package/lib-es/featureFlags/stakePrograms/index.d.ts +1 -0
  518. package/lib-es/featureFlags/stakePrograms/index.d.ts.map +1 -1
  519. package/lib-es/featureFlags/stakePrograms/index.js +14 -0
  520. package/lib-es/featureFlags/stakePrograms/index.js.map +1 -1
  521. package/lib-es/featureFlags/useFeature.d.ts +1 -1
  522. package/lib-es/featureFlags/useFeature.d.ts.map +1 -1
  523. package/lib-es/market/hooks/useMarketDataProvider.js +1 -0
  524. package/lib-es/market/hooks/useMarketDataProvider.js.map +1 -1
  525. package/lib-es/market/utils/types.d.ts +1 -0
  526. package/lib-es/market/utils/types.d.ts.map +1 -1
  527. package/lib-es/market/utils/types.js.map +1 -1
  528. package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts.map +1 -1
  529. package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js +11 -0
  530. package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js.map +1 -1
  531. package/lib-es/modularDrawer/hooks/useNetworkAccountCounts.d.ts +1 -5
  532. package/lib-es/modularDrawer/hooks/useNetworkAccountCounts.d.ts.map +1 -1
  533. package/lib-es/modularDrawer/hooks/useNetworkAccountCounts.js +2 -2
  534. package/lib-es/modularDrawer/hooks/useNetworkAccountCounts.js.map +1 -1
  535. package/lib-es/modularDrawer/modules/createNetworkConfiguration.d.ts +1 -1
  536. package/lib-es/modularDrawer/modules/createNetworkConfiguration.d.ts.map +1 -1
  537. package/lib-es/modularDrawer/modules/createNetworkConfiguration.js +1 -2
  538. package/lib-es/modularDrawer/modules/createNetworkConfiguration.js.map +1 -1
  539. package/lib-es/modularDrawer/utils/{groupCurrenciesByProvider.d.ts → groupCurrenciesByAsset.d.ts} +2 -2
  540. package/lib-es/modularDrawer/utils/groupCurrenciesByAsset.d.ts.map +1 -0
  541. package/lib-es/modularDrawer/utils/{groupCurrenciesByProvider.js → groupCurrenciesByAsset.js} +6 -6
  542. package/lib-es/modularDrawer/utils/groupCurrenciesByAsset.js.map +1 -0
  543. package/lib-es/modularDrawer/utils/index.d.ts +1 -1
  544. package/lib-es/modularDrawer/utils/index.d.ts.map +1 -1
  545. package/lib-es/modularDrawer/utils/index.js +1 -1
  546. package/lib-es/modularDrawer/utils/index.js.map +1 -1
  547. package/lib-es/modularDrawer/utils/type.d.ts +0 -5
  548. package/lib-es/modularDrawer/utils/type.d.ts.map +1 -1
  549. package/lib-es/platform/filters.d.ts +1 -2
  550. package/lib-es/platform/filters.d.ts.map +1 -1
  551. package/lib-es/platform/filters.js +0 -15
  552. package/lib-es/platform/filters.js.map +1 -1
  553. package/lib-es/platform/helpers.d.ts +1 -5
  554. package/lib-es/platform/helpers.d.ts.map +1 -1
  555. package/lib-es/platform/helpers.js +1 -30
  556. package/lib-es/platform/helpers.js.map +1 -1
  557. package/lib-es/platform/react.d.ts +2 -3
  558. package/lib-es/platform/react.d.ts.map +1 -1
  559. package/lib-es/platform/react.js +67 -16
  560. package/lib-es/platform/react.js.map +1 -1
  561. package/lib-es/platform/types.d.ts +3 -3
  562. package/lib-es/platform/types.d.ts.map +1 -1
  563. package/lib-es/postOnboarding/reducer.d.ts +2 -0
  564. package/lib-es/postOnboarding/reducer.d.ts.map +1 -1
  565. package/lib-es/test-helpers/cryptoAssetsStore.d.ts +2 -0
  566. package/lib-es/test-helpers/cryptoAssetsStore.d.ts.map +1 -0
  567. package/lib-es/test-helpers/cryptoAssetsStore.js +2 -0
  568. package/lib-es/test-helpers/cryptoAssetsStore.js.map +1 -0
  569. package/lib-es/utils/getAccountTuplesForCurrency.d.ts +1 -1
  570. package/lib-es/utils/getAccountTuplesForCurrency.d.ts.map +1 -1
  571. package/lib-es/utils/getAccountTuplesForCurrency.js +2 -3
  572. package/lib-es/utils/getAccountTuplesForCurrency.js.map +1 -1
  573. package/lib-es/wallet-api/ACRE/server.js +1 -1
  574. package/lib-es/wallet-api/ACRE/server.js.map +1 -1
  575. package/lib-es/wallet-api/Exchange/server.d.ts.map +1 -1
  576. package/lib-es/wallet-api/Exchange/server.js +6 -5
  577. package/lib-es/wallet-api/Exchange/server.js.map +1 -1
  578. package/lib-es/wallet-api/converters.d.ts +1 -0
  579. package/lib-es/wallet-api/converters.d.ts.map +1 -1
  580. package/lib-es/wallet-api/converters.js +5 -1
  581. package/lib-es/wallet-api/converters.js.map +1 -1
  582. package/lib-es/wallet-api/logic.js +1 -1
  583. package/lib-es/wallet-api/logic.js.map +1 -1
  584. package/lib-es/wallet-api/react.d.ts +6 -11
  585. package/lib-es/wallet-api/react.d.ts.map +1 -1
  586. package/lib-es/wallet-api/react.js +291 -131
  587. package/lib-es/wallet-api/react.js.map +1 -1
  588. package/lib-es/wallet-api/tracking.d.ts +6 -0
  589. package/lib-es/wallet-api/tracking.d.ts.map +1 -1
  590. package/lib-es/wallet-api/tracking.js +20 -0
  591. package/lib-es/wallet-api/tracking.js.map +1 -1
  592. package/lib-es/wallet-api/types.d.ts +3 -0
  593. package/lib-es/wallet-api/types.d.ts.map +1 -1
  594. package/lib-es/wallet-api/useDappLogic.d.ts.map +1 -1
  595. package/lib-es/wallet-api/useDappLogic.js +62 -77
  596. package/lib-es/wallet-api/useDappLogic.js.map +1 -1
  597. package/lib-es/wallet-api/utils/deriveAccountIdForManifest.d.ts +6 -0
  598. package/lib-es/wallet-api/utils/deriveAccountIdForManifest.d.ts.map +1 -1
  599. package/lib-es/wallet-api/utils/deriveAccountIdForManifest.js +11 -2
  600. package/lib-es/wallet-api/utils/deriveAccountIdForManifest.js.map +1 -1
  601. package/package.json +74 -60
  602. package/src/DataModel.test.ts +2 -8
  603. package/src/__tests__/__snapshots__/csvExport.ts.snap +0 -718
  604. package/src/__tests__/accounts/groupPerDay.ts +2 -4
  605. package/src/__tests__/csvExport.ts +3 -3
  606. package/src/__tests__/currencies.ts +5 -38
  607. package/src/__tests__/migration/account-migration.ts +3 -0
  608. package/src/__tests__/test-helpers/bridge.ts +0 -2
  609. package/src/__tests__/test-helpers/environment.ts +3 -0
  610. package/src/__tests__/test-helpers/setup.integration.ts +17 -0
  611. package/src/__tests__/test-helpers/setup.ts +3 -8
  612. package/src/account/helpers.test.ts +2 -2
  613. package/src/account/helpers.ts +5 -1
  614. package/src/account/serialization.test.ts +2 -2
  615. package/src/apps/config.ts +6 -0
  616. package/src/bridge/crypto-assets/index.test.ts +15 -44
  617. package/src/bridge/generic-alpaca/getAccountShape.ts +15 -12
  618. package/src/bridge/generic-alpaca/tests/getAccountShape.test.ts +142 -101
  619. package/src/bridge/generic-alpaca/utils.test.ts +1 -2
  620. package/src/bridge/generic-alpaca/utils.ts +1 -1
  621. package/src/bridge/impl.ts +3 -7
  622. package/src/currencies/cryptoIcons.test.ts +23 -4
  623. package/src/currencies/helpers.test.ts +4 -11
  624. package/src/currencies/helpers.ts +1 -42
  625. package/src/currencies/index.ts +0 -3
  626. package/src/currencies/sortByMarketcap.test.ts +0 -26
  627. package/src/dada-client/hooks/useAssetsData.ts +1 -0
  628. package/src/deposit/type.ts +0 -21
  629. package/src/device/use-cases/getDeviceHasBattery.ts +1 -0
  630. package/src/deviceSDK/hooks/useBatteryStatuses.test.ts +3 -1
  631. package/src/deviceSDK/hooks/useBatteryStatuses.ts +4 -1
  632. package/src/deviceSDK/tasks/core.test.ts +20 -0
  633. package/src/deviceSDK/tasks/core.ts +2 -1
  634. package/src/deviceSDK/tasks/getDeviceInfo.ts +2 -0
  635. package/src/deviceSDK/tasks/getLatestFirmware.ts +4 -4
  636. package/src/deviceSDK/tasks/updateFirmware.ts +2 -0
  637. package/src/domain/getTokensWithFunds.test.ts +32 -3
  638. package/src/e2e/data/assetsDrawer.ts +8 -0
  639. package/src/e2e/deviceInteraction/DeviceController.ts +85 -0
  640. package/src/e2e/enum/Account.ts +0 -6
  641. package/src/e2e/enum/Currency.ts +2 -6
  642. package/src/e2e/enum/ReceiveFundsOptions.ts +7 -0
  643. package/src/e2e/families/algorand.ts +20 -13
  644. package/src/e2e/families/aptos.ts +28 -16
  645. package/src/e2e/families/bitcoin.ts +53 -39
  646. package/src/e2e/families/cardano.ts +47 -36
  647. package/src/e2e/families/celo.ts +18 -12
  648. package/src/e2e/families/cosmos.ts +35 -23
  649. package/src/e2e/families/evm.ts +24 -13
  650. package/src/e2e/families/hedera.ts +6 -4
  651. package/src/e2e/families/kaspa.ts +28 -16
  652. package/src/e2e/families/multiversX.ts +16 -10
  653. package/src/e2e/families/near.ts +23 -17
  654. package/src/e2e/families/osmosis.ts +19 -13
  655. package/src/e2e/families/polkadot.ts +19 -13
  656. package/src/e2e/families/solana.ts +35 -23
  657. package/src/e2e/families/stellar.ts +18 -13
  658. package/src/e2e/families/sui.ts +15 -9
  659. package/src/e2e/families/tezos.ts +25 -18
  660. package/src/e2e/families/tron.ts +19 -13
  661. package/src/e2e/families/xrp.ts +19 -13
  662. package/src/e2e/speculos.ts +174 -139
  663. package/src/exchange/providers/swap.ts +4 -0
  664. package/src/exchange/swap/getCompleteSwapHistory.ts +1 -1
  665. package/src/exchange/swap/hooks/useSelectableCurrencies.test.ts +4 -0
  666. package/src/exchange/swap/hooks/useSelectableCurrencies.ts +1 -1
  667. package/src/exchange/swap/hooks/v5/useFetchCurrencyAll.ts +2 -3
  668. package/src/exchange/swap/hooks/v5/useFilteredProviders.ts +37 -12
  669. package/src/families/algorand/bridge.integration.test.ts +1 -1
  670. package/src/families/aptos/__snapshots__/bridge.integration.test.ts.snap +111 -1
  671. package/src/families/aptos/bridge.integration.test.ts +1 -1
  672. package/src/families/bitcoin/bridge.integration.test.ts +1 -1
  673. package/src/families/bitcoin/satstack.test.ts +5 -8
  674. package/src/families/canton/bridge/mock.ts +1 -0
  675. package/src/families/canton/react.ts +50 -0
  676. package/src/families/cardano/__snapshots__/bridge.integration.test.ts.snap +2 -2
  677. package/src/families/cardano/bridge.integration.test.ts +1 -1
  678. package/src/families/casper/bridge.integration.test.ts +1 -1
  679. package/src/families/celo/bridge.integration.test.ts +1 -1
  680. package/src/families/cosmos/datasets/__snapshots__/cosmos.integration.test.ts.snap +1 -1
  681. package/src/families/cosmos/datasets/axelar.integration.test.ts +1 -1
  682. package/src/families/cosmos/datasets/babylon.integration.test.ts +1 -1
  683. package/src/families/cosmos/datasets/coreum.integration.test.ts +1 -1
  684. package/src/families/cosmos/datasets/cosmos.integration.test.ts +1 -1
  685. package/src/families/cosmos/datasets/cryptoOrg.integration.test.ts +1 -1
  686. package/src/families/cosmos/datasets/desmos.integration.test.ts +1 -1
  687. package/src/families/cosmos/datasets/dydx.integration.FIXME.ts +1 -1
  688. package/src/families/cosmos/datasets/injective.integration.test.ts +1 -1
  689. package/src/families/cosmos/datasets/mantra.integration.test.ts +1 -1
  690. package/src/families/cosmos/datasets/onomy.integration.test.ts +1 -1
  691. package/src/families/cosmos/datasets/osmosis.integration.test.ts +1 -1
  692. package/src/families/cosmos/datasets/persistence.integration.test.ts +1 -1
  693. package/src/families/cosmos/datasets/quicksilver.integration.test.ts +1 -1
  694. package/src/families/cosmos/datasets/secretNetwork.integration.FIXME.ts +1 -1
  695. package/src/families/cosmos/datasets/seiNetwork.integration.test.ts +1 -1
  696. package/src/families/cosmos/datasets/stargaze.integration.test.ts +1 -1
  697. package/src/families/cosmos/datasets/umee.integration.test.ts +1 -1
  698. package/src/families/cosmos/datasets/xion.integration.test.ts +1 -1
  699. package/src/families/cosmos/datasets/zenrock.integration.test.ts +1 -1
  700. package/src/families/evm/bridge.integration.test.ts +1 -1
  701. package/src/families/evm/config.ts +49 -0
  702. package/src/families/evm/setup.ts +0 -12
  703. package/src/families/filecoin/bridge.integration.test.ts +1 -1
  704. package/src/families/hedera/__snapshots__/bridge.integration.test.ts.snap +207 -8
  705. package/src/families/hedera/bridge.integration.test.ts +1 -1
  706. package/src/families/icon/bridge.integration.test.ts +1 -1
  707. package/src/families/internet_computer/bridge.integration.test.ts +1 -1
  708. package/src/families/kaspa/bridge.integration.test.ts +1 -1
  709. package/src/families/mina/bridge.integration.test.ts +1 -1
  710. package/src/families/multiversx/bridge.integration.test.ts +1 -1
  711. package/src/families/multiversx/synchronisation.integration.test.ts +1 -1
  712. package/src/families/near/bridge.integration.test.ts +1 -1
  713. package/src/families/polkadot/bridge.integration.test.ts +1 -1
  714. package/src/families/solana/bridge/mock.ts +13 -23
  715. package/src/families/solana/bridge.integration.test.ts +1 -1
  716. package/src/families/solana/config.ts +0 -1
  717. package/src/families/solana/setup.ts +37 -24
  718. package/src/families/stacks/__tests__/sync.integration.test.ts +1 -1
  719. package/src/families/stacks/bridge.integration.test.ts +1 -1
  720. package/src/families/stellar/__snapshots__/bridge.integration.test.ts.snap +279 -15
  721. package/src/families/stellar/bridge.integration.test.ts +1 -1
  722. package/src/families/sui/bridge.integration.test.ts +1 -1
  723. package/src/families/tezos/bridge.integration.test.ts +1 -1
  724. package/src/families/ton/bridge.integration.test.ts +1 -1
  725. package/src/families/tron/bridge.integration.test.ts +1 -1
  726. package/src/families/tron/data.mock.ts +4 -8
  727. package/src/families/vechain/bridge.integration.test.ts +1 -1
  728. package/src/families/xrp/bridge.integration.test.ts +1 -1
  729. package/src/featureFlags/defaultFeatures.ts +11 -0
  730. package/src/featureFlags/stakePrograms/index.ts +18 -0
  731. package/src/market/hooks/useMarketDataProvider.ts +1 -0
  732. package/src/market/utils/types.ts +1 -0
  733. package/src/modularDrawer/hooks/__test__/useAssetAccountCounts.test.ts +0 -5
  734. package/src/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.ts +11 -0
  735. package/src/modularDrawer/hooks/useNetworkAccountCounts.tsx +1 -6
  736. package/src/modularDrawer/modules/__test__/createAssetConfiguration.test.tsx +2 -2
  737. package/src/modularDrawer/modules/createNetworkConfiguration.ts +1 -2
  738. package/src/modularDrawer/utils/__tests__/groupCurrenciesByAsset.test.ts +88 -0
  739. package/src/modularDrawer/utils/{groupCurrenciesByProvider.ts → groupCurrenciesByAsset.ts} +5 -5
  740. package/src/modularDrawer/utils/index.ts +1 -1
  741. package/src/modularDrawer/utils/type.ts +0 -5
  742. package/src/platform/filters.ts +1 -23
  743. package/src/platform/helpers.ts +2 -49
  744. package/src/platform/react.ts +86 -22
  745. package/src/platform/types.ts +1 -1
  746. package/src/test-helpers/cryptoAssetsStore.ts +5 -0
  747. package/src/utils/__tests__/getAccountTuplesForCurrency.test.ts +3 -33
  748. package/src/utils/getAccountTuplesForCurrency.ts +1 -6
  749. package/src/wallet-api/ACRE/server.test.ts +3 -4
  750. package/src/wallet-api/ACRE/server.ts +1 -1
  751. package/src/wallet-api/Exchange/server.test.ts +0 -5
  752. package/src/wallet-api/Exchange/server.ts +8 -7
  753. package/src/wallet-api/converters.ts +6 -1
  754. package/src/wallet-api/logic.test.ts +3 -3
  755. package/src/wallet-api/logic.ts +1 -1
  756. package/src/wallet-api/react.ts +312 -137
  757. package/src/wallet-api/tracking.ts +22 -0
  758. package/src/wallet-api/types.ts +5 -0
  759. package/src/wallet-api/useDappLogic.ts +91 -106
  760. package/src/wallet-api/utils/deriveAccountIdForManifest.ts +14 -2
  761. package/lib/__tests__/test-helpers/setup.d.ts +0 -2
  762. package/lib/__tests__/test-helpers/setup.d.ts.map +0 -1
  763. package/lib/__tests__/test-helpers/setup.js.map +0 -1
  764. package/lib/bridge/crypto-assets/index.d.ts +0 -4
  765. package/lib/bridge/crypto-assets/index.d.ts.map +0 -1
  766. package/lib/bridge/crypto-assets/index.js +0 -22
  767. package/lib/bridge/crypto-assets/index.js.map +0 -1
  768. package/lib/deposit/helper.d.ts +0 -8
  769. package/lib/deposit/helper.d.ts.map +0 -1
  770. package/lib/deposit/helper.js +0 -125
  771. package/lib/deposit/helper.js.map +0 -1
  772. package/lib/deposit/index.d.ts +0 -3
  773. package/lib/deposit/index.d.ts.map +0 -1
  774. package/lib/deposit/index.js +0 -6
  775. package/lib/deposit/index.js.map +0 -1
  776. package/lib/deposit/mock.d.ts +0 -75
  777. package/lib/deposit/mock.d.ts.map +0 -1
  778. package/lib/deposit/mock.js +0 -15111
  779. package/lib/deposit/mock.js.map +0 -1
  780. package/lib/deposit/useGroupedCurrenciesByProvider.hook.d.ts +0 -3
  781. package/lib/deposit/useGroupedCurrenciesByProvider.hook.d.ts.map +0 -1
  782. package/lib/deposit/useGroupedCurrenciesByProvider.hook.js +0 -40
  783. package/lib/deposit/useGroupedCurrenciesByProvider.hook.js.map +0 -1
  784. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts +0 -3
  785. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts.map +0 -1
  786. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.js +0 -26
  787. package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.js.map +0 -1
  788. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts +0 -22
  789. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts.map +0 -1
  790. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js +0 -41
  791. package/lib/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js.map +0 -1
  792. package/lib/modularDrawer/utils/currencyUtils.d.ts +0 -10
  793. package/lib/modularDrawer/utils/currencyUtils.d.ts.map +0 -1
  794. package/lib/modularDrawer/utils/currencyUtils.js +0 -74
  795. package/lib/modularDrawer/utils/currencyUtils.js.map +0 -1
  796. package/lib/modularDrawer/utils/groupCurrenciesByProvider.d.ts.map +0 -1
  797. package/lib/modularDrawer/utils/groupCurrenciesByProvider.js +0 -21
  798. package/lib/modularDrawer/utils/groupCurrenciesByProvider.js.map +0 -1
  799. package/lib-es/__tests__/test-helpers/setup.d.ts +0 -2
  800. package/lib-es/__tests__/test-helpers/setup.d.ts.map +0 -1
  801. package/lib-es/__tests__/test-helpers/setup.js +0 -18
  802. package/lib-es/__tests__/test-helpers/setup.js.map +0 -1
  803. package/lib-es/bridge/crypto-assets/index.d.ts +0 -4
  804. package/lib-es/bridge/crypto-assets/index.d.ts.map +0 -1
  805. package/lib-es/bridge/crypto-assets/index.js +0 -17
  806. package/lib-es/bridge/crypto-assets/index.js.map +0 -1
  807. package/lib-es/deposit/helper.d.ts +0 -8
  808. package/lib-es/deposit/helper.d.ts.map +0 -1
  809. package/lib-es/deposit/helper.js +0 -117
  810. package/lib-es/deposit/helper.js.map +0 -1
  811. package/lib-es/deposit/index.d.ts +0 -3
  812. package/lib-es/deposit/index.d.ts.map +0 -1
  813. package/lib-es/deposit/index.js +0 -3
  814. package/lib-es/deposit/index.js.map +0 -1
  815. package/lib-es/deposit/mock.d.ts +0 -75
  816. package/lib-es/deposit/mock.d.ts.map +0 -1
  817. package/lib-es/deposit/mock.js +0 -15108
  818. package/lib-es/deposit/mock.js.map +0 -1
  819. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.d.ts +0 -3
  820. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.d.ts.map +0 -1
  821. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.js +0 -36
  822. package/lib-es/deposit/useGroupedCurrenciesByProvider.hook.js.map +0 -1
  823. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts +0 -3
  824. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts.map +0 -1
  825. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.js +0 -18
  826. package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.js.map +0 -1
  827. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts +0 -22
  828. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.d.ts.map +0 -1
  829. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js +0 -38
  830. package/lib-es/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.js.map +0 -1
  831. package/lib-es/modularDrawer/utils/currencyUtils.d.ts +0 -10
  832. package/lib-es/modularDrawer/utils/currencyUtils.d.ts.map +0 -1
  833. package/lib-es/modularDrawer/utils/currencyUtils.js +0 -65
  834. package/lib-es/modularDrawer/utils/currencyUtils.js.map +0 -1
  835. package/lib-es/modularDrawer/utils/groupCurrenciesByProvider.d.ts.map +0 -1
  836. package/lib-es/modularDrawer/utils/groupCurrenciesByProvider.js.map +0 -1
  837. package/src/bridge/crypto-assets/index.ts +0 -23
  838. package/src/deposit/deposit.integration.test.ts +0 -88
  839. package/src/deposit/deposit.test.ts +0 -684
  840. package/src/deposit/helper.ts +0 -143
  841. package/src/deposit/index.ts +0 -3
  842. package/src/deposit/mock.ts +0 -15112
  843. package/src/deposit/useGroupedCurrenciesByProvider.hook.ts +0 -46
  844. package/src/e2e/deviceInteraction/ButtonDeviceSimulator.ts +0 -23
  845. package/src/modularDrawer/__mocks__/useGroupedCurrenciesByProvider.mock.ts +0 -49
  846. package/src/modularDrawer/modules/__test__/createNetworkConfiguration.test.ts +0 -342
  847. package/src/modularDrawer/utils/__tests__/currencyUtils.test.ts +0 -126
  848. package/src/modularDrawer/utils/currencyUtils.ts +0 -95
@@ -3,24 +3,26 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.useDisclaimerRaw = exports.useRecentlyUsed = exports.useCacheBustedLiveApps = exports.useLocalLiveApp = exports.useCategories = exports.ExchangeType = exports.useWalletAPIServer = exports.useConfig = exports.usePermission = exports.useGetAccountIds = exports.useManifestCurrencies = exports.useWalletAPICurrencies = exports.useWalletAPIAccounts = exports.safeGetRefValue = void 0;
6
+ exports.useDisclaimerRaw = exports.useRecentlyUsed = exports.useCacheBustedLiveApps = exports.useLocalLiveApp = exports.useCategories = exports.ExchangeType = exports.useWalletAPIServer = exports.useConfig = exports.usePermission = exports.useDAppManifestCurrencyIds = exports.useSetWalletAPIAccounts = exports.safeGetRefValue = void 0;
7
7
  const react_1 = require("react");
8
+ const react_redux_1 = require("react-redux");
8
9
  const semver_1 = __importDefault(require("semver"));
9
10
  const date_fns_1 = require("date-fns");
10
- const react_2 = require("@ledgerhq/wallet-api-server/lib/react");
11
- const rxjs_1 = require("rxjs");
11
+ const wallet_api_server_1 = require("@ledgerhq/wallet-api-server");
12
12
  const operators_1 = require("rxjs/operators");
13
+ const live_env_1 = require("@ledgerhq/live-env");
14
+ const errors_1 = require("@ledgerhq/errors");
15
+ const api_1 = require("@ledgerhq/cryptoassets/cal-client/state-manager/api");
13
16
  const converters_1 = require("./converters");
14
17
  const helpers_1 = require("./helpers");
15
18
  const account_1 = require("../account");
16
19
  const currencies_1 = require("../currencies");
17
- const index_1 = require("../bridge/crypto-assets/index");
20
+ const state_1 = require("@ledgerhq/cryptoassets/state");
18
21
  const logic_1 = require("./logic");
19
22
  const bridge_1 = require("../bridge");
20
- const live_env_1 = require("@ledgerhq/live-env");
21
23
  const openTransportAsSubject_1 = __importDefault(require("../hw/openTransportAsSubject"));
22
- const errors_1 = require("@ledgerhq/errors");
23
24
  const constants_1 = require("./constants");
25
+ const useCurrenciesUnderFeatureFlag_1 = require("../modularDrawer/hooks/useCurrenciesUnderFeatureFlag");
24
26
  function safeGetRefValue(ref) {
25
27
  if (!ref.current) {
26
28
  throw new Error("Ref objects doesn't have a current value");
@@ -28,62 +30,25 @@ function safeGetRefValue(ref) {
28
30
  return ref.current;
29
31
  }
30
32
  exports.safeGetRefValue = safeGetRefValue;
31
- function useWalletAPIAccounts(walletState, accounts) {
32
- return (0, react_1.useMemo)(() => {
33
- return accounts.map(account => {
34
- const parentAccount = (0, account_1.getParentAccount)(account, accounts);
35
- return (0, converters_1.accountToWalletAPIAccount)(walletState, account, parentAccount);
33
+ function useSetWalletAPIAccounts(accounts) {
34
+ (0, react_1.useEffect)(() => {
35
+ accounts.forEach(account => {
36
+ (0, converters_1.setWalletApiIdForAccountId)(account.id);
36
37
  });
37
- }, [walletState, accounts]);
38
+ }, [accounts]);
38
39
  }
39
- exports.useWalletAPIAccounts = useWalletAPIAccounts;
40
- function useWalletAPICurrencies() {
41
- return (0, react_1.useMemo)(() => {
42
- return (0, currencies_1.listCurrencies)(true).reduce((filtered, currency) => {
43
- if ((0, helpers_1.isWalletAPISupportedCurrency)(currency)) {
44
- filtered.push((0, converters_1.currencyToWalletAPICurrency)(currency));
45
- }
46
- return filtered;
47
- }, []);
48
- }, []);
49
- }
50
- exports.useWalletAPICurrencies = useWalletAPICurrencies;
51
- function useManifestCurrencies(manifest) {
40
+ exports.useSetWalletAPIAccounts = useSetWalletAPIAccounts;
41
+ function useDAppManifestCurrencyIds(manifest) {
52
42
  return (0, react_1.useMemo)(() => {
53
43
  return (manifest.dapp?.networks.map(network => {
54
- return (0, currencies_1.getCryptoCurrencyById)(network.currency);
44
+ return network.currency;
55
45
  }) ?? []);
56
46
  }, [manifest.dapp?.networks]);
57
47
  }
58
- exports.useManifestCurrencies = useManifestCurrencies;
59
- function useGetAccountIds(accounts$) {
60
- const [accounts, setAccounts] = (0, react_1.useState)([]);
61
- (0, react_1.useEffect)(() => {
62
- if (!accounts$) {
63
- return undefined;
64
- }
65
- const subscription = accounts$.subscribe(walletAccounts => {
66
- setAccounts(walletAccounts);
67
- });
68
- return () => {
69
- subscription.unsubscribe();
70
- };
71
- }, [accounts$]);
72
- return (0, react_1.useMemo)(() => {
73
- if (!accounts$) {
74
- return undefined;
75
- }
76
- return accounts.reduce((accountIds, account) => {
77
- accountIds.set((0, converters_1.getAccountIdFromWalletAccountId)(account.id), true);
78
- return accountIds;
79
- }, new Map());
80
- }, [accounts, accounts$]);
81
- }
82
- exports.useGetAccountIds = useGetAccountIds;
48
+ exports.useDAppManifestCurrencyIds = useDAppManifestCurrencyIds;
83
49
  function usePermission(manifest) {
84
50
  return (0, react_1.useMemo)(() => ({
85
- currencyIds: manifest.currencies === "*" ? ["**"] : manifest.currencies,
86
- methodIds: manifest.permissions, // TODO remove when using the correct manifest type
51
+ methodIds: manifest.permissions,
87
52
  }), [manifest]);
88
53
  }
89
54
  exports.usePermission = usePermission;
@@ -102,7 +67,7 @@ function useConfig({ appId, userId, tracking, wallet, mevProtected, }) {
102
67
  tracking,
103
68
  wallet,
104
69
  mevProtected,
105
- }), [appId, tracking, userId, wallet]);
70
+ }), [appId, mevProtected, tracking, userId, wallet]);
106
71
  }
107
72
  exports.useConfig = useConfig;
108
73
  function useDeviceTransport({ manifest, tracking }) {
@@ -153,73 +118,259 @@ function useDeviceTransport({ manifest, tracking }) {
153
118
  return (0, react_1.useMemo)(() => ({ ref, subscribe, close, exchange }), [close, exchange, subscribe]);
154
119
  }
155
120
  function useWalletAPIServer({ walletState, manifest, accounts, tracking, config, webviewHook, uiHook: { "account.request": uiAccountRequest, "account.receive": uiAccountReceive, "message.sign": uiMessageSign, "storage.get": uiStorageGet, "storage.set": uiStorageSet, "transaction.sign": uiTxSign, "transaction.signRaw": uiTxSignRaw, "transaction.broadcast": uiTxBroadcast, "device.transport": uiDeviceTransport, "device.select": uiDeviceSelect, "exchange.start": uiExchangeStart, "exchange.complete": uiExchangeComplete, }, customHandlers, }) {
121
+ const dispatch = (0, react_redux_1.useDispatch)();
122
+ const { deactivatedCurrencyIds } = (0, useCurrenciesUnderFeatureFlag_1.useCurrenciesUnderFeatureFlag)();
156
123
  const permission = usePermission(manifest);
157
124
  const transport = useTransport(webviewHook.postMessage);
158
125
  const [widgetLoaded, setWidgetLoaded] = (0, react_1.useState)(false);
159
- const walletAPIAccounts = useWalletAPIAccounts(walletState, accounts);
160
- const walletAPICurrencies = useWalletAPICurrencies();
161
- const { server, onMessage } = (0, react_2.useWalletAPIServer)({
126
+ // We need to set the wallet API account IDs mapping upfront
127
+ // If we don't want the map to be empty when requesting an account
128
+ useSetWalletAPIAccounts(accounts);
129
+ const { server, onMessage } = (0, wallet_api_server_1.useWalletAPIServer)({
162
130
  transport,
163
131
  config,
164
- accounts: walletAPIAccounts,
165
- currencies: walletAPICurrencies,
166
132
  permission,
167
133
  customHandlers,
168
134
  });
169
135
  (0, react_1.useEffect)(() => {
170
136
  tracking.load(manifest);
171
137
  }, [tracking, manifest]);
138
+ // TODO: refactor each handler into its own logic function for clarity
139
+ (0, react_1.useEffect)(() => {
140
+ server.setHandler("currency.list", async ({ currencyIds }) => {
141
+ tracking.currencyListRequested(manifest);
142
+ try {
143
+ // 1. Parse manifest currency patterns to determine what to include
144
+ const manifestCurrencyIds = manifest.currencies === "*" ? ["**"] : manifest.currencies;
145
+ // 2. Apply query filter early - intersect with manifest patterns
146
+ const queryCurrencyIdsSet = currencyIds ? new Set(currencyIds) : undefined;
147
+ let effectiveCurrencyIds = manifestCurrencyIds;
148
+ if (queryCurrencyIdsSet) {
149
+ // If we have a query filter, narrow down what we need to fetch
150
+ effectiveCurrencyIds = manifestCurrencyIds.flatMap(manifestId => {
151
+ if (manifestId === "**") {
152
+ // Query can ask for anything, so use the query list
153
+ return [...queryCurrencyIdsSet];
154
+ }
155
+ else if (manifestId.endsWith("/**")) {
156
+ // Pattern like "ethereum/**" - keep tokens from query that match this family
157
+ const family = manifestId.slice(0, -3);
158
+ return [...queryCurrencyIdsSet].filter(qId => qId.startsWith(`${family}/`));
159
+ }
160
+ else if (queryCurrencyIdsSet.has(manifestId)) {
161
+ // Specific currency/token that's in the query
162
+ return [manifestId];
163
+ }
164
+ // Not in query, skip it
165
+ return [];
166
+ });
167
+ }
168
+ // 3. Parse effective currency IDs to determine what to fetch
169
+ const includeAllCurrencies = effectiveCurrencyIds.includes("**");
170
+ const specificCurrencies = new Set();
171
+ const tokenFamilies = new Set();
172
+ const specificTokenIds = new Set();
173
+ for (const id of effectiveCurrencyIds) {
174
+ if (id === "**") {
175
+ // Already handled above
176
+ continue;
177
+ }
178
+ else if (id.endsWith("/**")) {
179
+ // Pattern like "ethereum/**" or "solana/**" - include tokens for this family
180
+ const family = id.slice(0, -3);
181
+ tokenFamilies.add(family);
182
+ // Additionally include the parent currency itself
183
+ specificCurrencies.add(family);
184
+ }
185
+ else if (id.includes("/")) {
186
+ // Specific token ID like "ethereum/erc20/usd__coin"
187
+ specificTokenIds.add(id);
188
+ }
189
+ else {
190
+ // Specific currency like "bitcoin" or "ethereum"
191
+ specificCurrencies.add(id);
192
+ }
193
+ }
194
+ // 4. Gather all supported parent currencies
195
+ const allCurrencies = (0, currencies_1.listSupportedCurrencies)().reduce((acc, c) => {
196
+ if ((0, helpers_1.isWalletAPISupportedCurrency)(c) && !deactivatedCurrencyIds.has(c.id))
197
+ acc.push((0, converters_1.currencyToWalletAPICurrency)(c));
198
+ return acc;
199
+ }, []);
200
+ // 5. Determine which currencies to include based on patterns
201
+ let includedCurrencies = [];
202
+ if (includeAllCurrencies) {
203
+ includedCurrencies = allCurrencies;
204
+ }
205
+ else {
206
+ includedCurrencies = allCurrencies.filter(c => specificCurrencies.has(c.id));
207
+ }
208
+ // 6. Fetch specific tokens by ID if any
209
+ const specificTokens = [];
210
+ if (specificTokenIds.size > 0) {
211
+ const tokenPromises = [...specificTokenIds].map(async (tokenId) => {
212
+ const token = await (0, state_1.getCryptoAssetsStore)().findTokenById(tokenId);
213
+ return token ? (0, converters_1.currencyToWalletAPICurrency)(token) : null;
214
+ });
215
+ const resolvedTokens = await Promise.all(tokenPromises);
216
+ specificTokens.push(...resolvedTokens.filter((t) => t !== null));
217
+ }
218
+ // 7. Determine which token families to fetch (only if not already fetched as specific tokens)
219
+ const familiesToFetch = new Set();
220
+ if (includeAllCurrencies) {
221
+ // Fetch tokens for all currency families
222
+ allCurrencies.forEach(c => {
223
+ if (c.type === "CryptoCurrency")
224
+ familiesToFetch.add(c.family);
225
+ });
226
+ }
227
+ else if (tokenFamilies.size > 0) {
228
+ // Only fetch tokens for families explicitly marked with /**
229
+ tokenFamilies.forEach(family => familiesToFetch.add(family));
230
+ }
231
+ // 8. Fetch tokens for relevant families
232
+ const fetchAllPagesForFamily = async (family) => {
233
+ const args = { networkFamily: family, pageSize: 1000 };
234
+ let hasNextPage = true;
235
+ let data;
236
+ while (hasNextPage) {
237
+ const querySub = dispatch(api_1.endpoints.getTokensData.initiate(args, data ? { direction: "forward" } : undefined));
238
+ try {
239
+ const result = await querySub;
240
+ data = result.data;
241
+ hasNextPage = result.hasNextPage;
242
+ if (result.error)
243
+ throw result.error;
244
+ }
245
+ finally {
246
+ querySub.unsubscribe();
247
+ }
248
+ }
249
+ return (data?.pages ?? []).flatMap(p => p.tokens);
250
+ };
251
+ const tokensByFamily = await Promise.all([...familiesToFetch].map(f => fetchAllPagesForFamily(f)));
252
+ // 9. Combine all results (no additional filter needed since we pre-filtered)
253
+ const result = tokensByFamily.reduce((acc, tokens) => [...acc, ...tokens.map(t => (0, converters_1.currencyToWalletAPICurrency)(t))], [...includedCurrencies, ...specificTokens]);
254
+ tracking.currencyListSuccess(manifest);
255
+ return result;
256
+ }
257
+ catch (err) {
258
+ tracking.currencyListFail(manifest);
259
+ throw err;
260
+ }
261
+ });
262
+ }, [walletState, manifest, server, tracking, dispatch, deactivatedCurrencyIds]);
263
+ (0, react_1.useEffect)(() => {
264
+ server.setHandler("account.list", ({ currencyIds }) => {
265
+ tracking.accountListRequested(manifest);
266
+ try {
267
+ // 1. Parse manifest currency patterns to determine what to include
268
+ const manifestCurrencyIds = manifest.currencies === "*" ? ["**"] : manifest.currencies;
269
+ // 2. Apply query filter early - intersect with manifest patterns
270
+ const queryCurrencyIdsSet = currencyIds ? new Set(currencyIds) : undefined;
271
+ let effectiveCurrencyIds = manifestCurrencyIds;
272
+ if (queryCurrencyIdsSet) {
273
+ // If we have a query filter, narrow down what we need to check
274
+ effectiveCurrencyIds = manifestCurrencyIds.flatMap(manifestId => {
275
+ if (manifestId === "**") {
276
+ // Query can ask for anything, so use the query list
277
+ return [...queryCurrencyIdsSet];
278
+ }
279
+ else if (manifestId.endsWith("/**")) {
280
+ // Pattern like "ethereum/**" - keep tokens from query that match this family
281
+ const family = manifestId.slice(0, -3);
282
+ return [...queryCurrencyIdsSet].filter(qId => qId.startsWith(`${family}/`));
283
+ }
284
+ else if (queryCurrencyIdsSet.has(manifestId)) {
285
+ // Specific currency/token that's in the query
286
+ return [manifestId];
287
+ }
288
+ // Not in query, skip it
289
+ return [];
290
+ });
291
+ }
292
+ // 3. Build a set of allowed currency IDs based on effective patterns
293
+ const allowedCurrencyIds = new Set();
294
+ const includeAllCurrencies = effectiveCurrencyIds.includes("**");
295
+ const tokenFamilyPrefixes = new Set();
296
+ for (const id of effectiveCurrencyIds) {
297
+ if (id === "**") {
298
+ // Will match all currencies
299
+ continue;
300
+ }
301
+ else if (id.endsWith("/**")) {
302
+ // Pattern like "ethereum/**" - store prefix for matching
303
+ const family = id.slice(0, -3);
304
+ tokenFamilyPrefixes.add(family);
305
+ }
306
+ else {
307
+ // Specific currency/token ID
308
+ allowedCurrencyIds.add(id);
309
+ }
310
+ }
311
+ // 4. Filter accounts based on effective currency IDs
312
+ const wapiAccounts = accounts.reduce((acc, account) => {
313
+ const parentAccount = (0, account_1.getParentAccount)(account, accounts);
314
+ const accountCurrencyId = account.type === "TokenAccount" ? account.token.id : account.currency.id;
315
+ const parentCurrencyId = account.type === "TokenAccount" ? account.token.parentCurrency.id : account.currency.id;
316
+ // Check if account currency ID matches the effective patterns
317
+ const isAllowed = includeAllCurrencies ||
318
+ allowedCurrencyIds.has(accountCurrencyId) ||
319
+ tokenFamilyPrefixes.has(parentCurrencyId);
320
+ if (isAllowed) {
321
+ acc.push((0, converters_1.accountToWalletAPIAccount)(walletState, account, parentAccount));
322
+ }
323
+ return acc;
324
+ }, []);
325
+ tracking.accountListSuccess(manifest);
326
+ return wapiAccounts;
327
+ }
328
+ catch (err) {
329
+ tracking.accountListFail(manifest);
330
+ throw err;
331
+ }
332
+ });
333
+ }, [walletState, manifest, server, tracking, uiAccountRequest, accounts]);
172
334
  (0, react_1.useEffect)(() => {
173
335
  if (!uiAccountRequest)
174
336
  return;
175
- server.setHandler("account.request", async ({ accounts$, currencies$, drawerConfiguration, areCurrenciesFiltered, useCase }) => {
337
+ server.setHandler("account.request", async ({ currencyIds, drawerConfiguration, areCurrenciesFiltered, useCase }) => {
176
338
  tracking.requestAccountRequested(manifest);
177
- const currencies = await (0, rxjs_1.firstValueFrom)(currencies$);
178
339
  return new Promise((resolve, reject) => {
179
- (async () => {
180
- try {
181
- // handle no curencies selected case
182
- const currencyList = [];
183
- for (const { id } of currencies) {
184
- const currency = (0, currencies_1.findCryptoCurrencyById)(id) || (await (0, index_1.getCryptoAssetsStore)().findTokenById(id));
185
- if (currency) {
186
- currencyList.push(currency);
187
- }
188
- }
189
- let done = false;
190
- uiAccountRequest({
191
- accounts$,
192
- currencies: currencyList,
193
- drawerConfiguration,
194
- areCurrenciesFiltered,
195
- useCase,
196
- onSuccess: (account, parentAccount) => {
197
- if (done)
198
- return;
199
- done = true;
200
- tracking.requestAccountSuccess(manifest);
201
- resolve((0, converters_1.accountToWalletAPIAccount)(walletState, account, parentAccount));
202
- },
203
- onCancel: () => {
204
- if (done)
205
- return;
206
- done = true;
207
- tracking.requestAccountFail(manifest);
208
- reject(new Error("Canceled by user"));
209
- },
210
- });
211
- }
212
- catch (error) {
213
- reject(error);
214
- }
215
- })();
340
+ let done = false;
341
+ try {
342
+ uiAccountRequest({
343
+ currencyIds,
344
+ drawerConfiguration,
345
+ areCurrenciesFiltered,
346
+ useCase,
347
+ onSuccess: (account, parentAccount) => {
348
+ if (done)
349
+ return;
350
+ done = true;
351
+ tracking.requestAccountSuccess(manifest);
352
+ resolve((0, converters_1.accountToWalletAPIAccount)(walletState, account, parentAccount));
353
+ },
354
+ onCancel: () => {
355
+ if (done)
356
+ return;
357
+ done = true;
358
+ tracking.requestAccountFail(manifest);
359
+ reject(new Error("Canceled by user"));
360
+ },
361
+ });
362
+ }
363
+ catch (error) {
364
+ tracking.requestAccountFail(manifest);
365
+ reject(error);
366
+ }
216
367
  });
217
368
  });
218
369
  }, [walletState, manifest, server, tracking, uiAccountRequest]);
219
370
  (0, react_1.useEffect)(() => {
220
371
  if (!uiAccountReceive)
221
372
  return;
222
- server.setHandler("account.receive", ({ account, tokenCurrency }) => (0, logic_1.receiveOnAccountLogic)(walletState, { manifest, accounts, tracking }, account.id, (account, parentAccount, accountAddress) => new Promise((resolve, reject) => {
373
+ server.setHandler("account.receive", ({ accountId, tokenCurrency }) => (0, logic_1.receiveOnAccountLogic)(walletState, { manifest, accounts, tracking }, accountId, (account, parentAccount, accountAddress) => new Promise((resolve, reject) => {
223
374
  let done = false;
224
375
  return uiAccountReceive({
225
376
  account,
@@ -252,7 +403,7 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
252
403
  (0, react_1.useEffect)(() => {
253
404
  if (!uiMessageSign)
254
405
  return;
255
- server.setHandler("message.sign", ({ account, message, options }) => (0, logic_1.signMessageLogic)({ manifest, accounts, tracking }, account.id, message.toString("hex"), (account, message) => new Promise((resolve, reject) => {
406
+ server.setHandler("message.sign", ({ accountId, message, options }) => (0, logic_1.signMessageLogic)({ manifest, accounts, tracking }, accountId, message.toString("hex"), (account, message) => new Promise((resolve, reject) => {
256
407
  let done = false;
257
408
  return uiMessageSign({
258
409
  account,
@@ -297,31 +448,38 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
297
448
  (0, react_1.useEffect)(() => {
298
449
  if (!uiTxSign)
299
450
  return;
300
- server.setHandler("transaction.sign", async ({ account, tokenCurrency, transaction, options }) => {
301
- const signedOperation = await (0, logic_1.signTransactionLogic)({ manifest, accounts, tracking }, account.id, transaction, (account, parentAccount, signFlowInfos) => new Promise((resolve, reject) => {
302
- let done = false;
303
- return uiTxSign({
304
- account,
305
- parentAccount,
306
- signFlowInfos,
307
- options,
308
- onSuccess: signedOperation => {
309
- if (done)
310
- return;
311
- done = true;
312
- tracking.signTransactionSuccess(manifest);
313
- resolve(signedOperation);
314
- },
315
- onError: error => {
316
- if (done)
317
- return;
318
- done = true;
319
- tracking.signTransactionFail(manifest);
320
- reject(error);
321
- },
451
+ server.setHandler("transaction.sign", async ({ accountId, tokenCurrency, transaction, options }) => {
452
+ let currency;
453
+ const signedOperation = await (0, logic_1.signTransactionLogic)({ manifest, accounts, tracking }, accountId, transaction, (account, parentAccount, signFlowInfos) => {
454
+ currency =
455
+ account.type === "TokenAccount"
456
+ ? account.token.parentCurrency.id
457
+ : account.currency.id;
458
+ return new Promise((resolve, reject) => {
459
+ let done = false;
460
+ return uiTxSign({
461
+ account,
462
+ parentAccount,
463
+ signFlowInfos,
464
+ options,
465
+ onSuccess: signedOperation => {
466
+ if (done)
467
+ return;
468
+ done = true;
469
+ tracking.signTransactionSuccess(manifest);
470
+ resolve(signedOperation);
471
+ },
472
+ onError: error => {
473
+ if (done)
474
+ return;
475
+ done = true;
476
+ tracking.signTransactionFail(manifest);
477
+ reject(error);
478
+ },
479
+ });
322
480
  });
323
- }), tokenCurrency);
324
- return account.currency === "solana"
481
+ }, tokenCurrency);
482
+ return currency === "solana"
325
483
  ? Buffer.from(signedOperation.signature, "hex")
326
484
  : Buffer.from(signedOperation.signature);
327
485
  });
@@ -329,8 +487,8 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
329
487
  (0, react_1.useEffect)(() => {
330
488
  if (!uiTxSignRaw)
331
489
  return;
332
- server.setHandler("transaction.signRaw", async ({ account, transaction, broadcast, options }) => {
333
- const signedOperation = await (0, logic_1.signRawTransactionLogic)({ manifest, accounts, tracking }, account.id, transaction, (account, parentAccount, tx) => new Promise((resolve, reject) => {
490
+ server.setHandler("transaction.signRaw", async ({ accountId, transaction, broadcast, options }) => {
491
+ const signedOperation = await (0, logic_1.signRawTransactionLogic)({ manifest, accounts, tracking }, accountId, transaction, (account, parentAccount, tx) => new Promise((resolve, reject) => {
334
492
  let done = false;
335
493
  return uiTxSignRaw({
336
494
  account,
@@ -355,7 +513,7 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
355
513
  }));
356
514
  let hash;
357
515
  if (broadcast) {
358
- hash = await (0, logic_1.broadcastTransactionLogic)({ manifest, accounts, tracking }, account.id, signedOperation, async (account, parentAccount, signedOperation) => {
516
+ hash = await (0, logic_1.broadcastTransactionLogic)({ manifest, accounts, tracking }, accountId, signedOperation, async (account, parentAccount, signedOperation) => {
359
517
  const bridge = (0, bridge_1.getAccountBridge)(account, parentAccount);
360
518
  const mainAccount = (0, account_1.getMainAccount)(account, parentAccount);
361
519
  let optimisticOperation = signedOperation.operation;
@@ -387,9 +545,9 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
387
545
  (0, react_1.useEffect)(() => {
388
546
  if (!uiTxSign)
389
547
  return;
390
- server.setHandler("transaction.signAndBroadcast", async ({ account, tokenCurrency, transaction, options }) => {
548
+ server.setHandler("transaction.signAndBroadcast", async ({ accountId, tokenCurrency, transaction, options }) => {
391
549
  const sponsored = transaction.family === "ethereum" && transaction.sponsored;
392
- const signedTransaction = await (0, logic_1.signTransactionLogic)({ manifest, accounts, tracking }, account.id, transaction, (account, parentAccount, signFlowInfos) => new Promise((resolve, reject) => {
550
+ const signedTransaction = await (0, logic_1.signTransactionLogic)({ manifest, accounts, tracking }, accountId, transaction, (account, parentAccount, signFlowInfos) => new Promise((resolve, reject) => {
393
551
  let done = false;
394
552
  return uiTxSign({
395
553
  account,
@@ -412,7 +570,7 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
412
570
  },
413
571
  });
414
572
  }), tokenCurrency);
415
- return (0, logic_1.broadcastTransactionLogic)({ manifest, accounts, tracking }, account.id, signedTransaction, async (account, parentAccount, signedOperation) => {
573
+ return (0, logic_1.broadcastTransactionLogic)({ manifest, accounts, tracking }, accountId, signedTransaction, async (account, parentAccount, signedOperation) => {
416
574
  const bridge = (0, bridge_1.getAccountBridge)(account, parentAccount);
417
575
  const mainAccount = (0, account_1.getMainAccount)(account, parentAccount);
418
576
  let optimisticOperation = signedOperation.operation;
@@ -618,8 +776,8 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
618
776
  // retrofit of the exchange params to fit the old platform spec
619
777
  const request = {
620
778
  provider: params.provider,
621
- fromAccountId: params.fromAccount.id,
622
- toAccountId: params.exchangeType === "SWAP" ? params.toAccount.id : undefined,
779
+ fromAccountId: params.fromAccountId,
780
+ toAccountId: params.exchangeType === "SWAP" ? params.toAccountId : undefined,
623
781
  transaction: params.transaction,
624
782
  binaryPayload: params.binaryPayload.toString("hex"),
625
783
  signature: params.signature.toString("hex"),
@@ -652,7 +810,7 @@ function useWalletAPIServer({ walletState, manifest, accounts, tracking, config,
652
810
  });
653
811
  }, [uiExchangeComplete, accounts, manifest, server, tracking]);
654
812
  return {
655
- widgetLoaded,
813
+ widgetLoaded: widgetLoaded,
656
814
  onMessage,
657
815
  onLoad,
658
816
  onReload,
@@ -776,9 +934,9 @@ function useRecentlyUsed(manifests, [recentlyUsedManifestsDb, setState]) {
776
934
  ...res,
777
935
  usedAt: calculateTimeDiff(recentlyUsed.usedAt),
778
936
  }
779
- : res;
937
+ : undefined;
780
938
  })
781
- .filter(manifest => manifest !== undefined), [recentlyUsedManifestsDb, manifests]);
939
+ .filter((manifest) => manifest !== undefined), [recentlyUsedManifestsDb, manifests]);
782
940
  const append = (0, react_1.useCallback)((manifest) => {
783
941
  setState(state => {
784
942
  const index = state.recentlyUsed.findIndex(({ id }) => id === manifest.id);