@ledgerhq/live-common 21.20.0 → 21.21.0-rc.2

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 (428) hide show
  1. package/lib/__tests__/families/bitcoin/wallet-btc/utils.test.js +4 -0
  2. package/lib/__tests__/families/bitcoin/wallet-btc/utils.test.js.map +1 -1
  3. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js +12 -0
  4. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js.map +1 -1
  5. package/lib/__tests__/test-helpers/setup.js +1 -0
  6. package/lib/__tests__/test-helpers/setup.js.map +1 -1
  7. package/lib/account/pending.d.ts +1 -1
  8. package/lib/api/Ledger.d.ts.map +1 -1
  9. package/lib/api/Ledger.js +12 -2
  10. package/lib/api/Ledger.js.map +1 -1
  11. package/lib/api/explorerConfig/index.d.ts.map +1 -1
  12. package/lib/api/explorerConfig/index.js +5 -1
  13. package/lib/api/explorerConfig/index.js.map +1 -1
  14. package/lib/data/icons/react/cro.d.ts +8 -0
  15. package/lib/data/icons/react/cro.d.ts.map +1 -0
  16. package/lib/data/icons/react/cro.js +33 -0
  17. package/lib/data/icons/react/cro.js.map +1 -0
  18. package/lib/data/icons/react/index.d.ts +2 -0
  19. package/lib/data/icons/react/index.d.ts.map +1 -1
  20. package/lib/data/icons/react/index.js +12 -8
  21. package/lib/data/icons/react/index.js.map +1 -1
  22. package/lib/data/icons/react/sol.d.ts +8 -0
  23. package/lib/data/icons/react/sol.d.ts.map +1 -0
  24. package/lib/data/icons/react/sol.js +30 -0
  25. package/lib/data/icons/react/sol.js.map +1 -0
  26. package/lib/data/icons/reactNative/cro.d.ts +8 -0
  27. package/lib/data/icons/reactNative/cro.d.ts.map +1 -0
  28. package/lib/data/icons/reactNative/cro.js +34 -0
  29. package/lib/data/icons/reactNative/cro.js.map +1 -0
  30. package/lib/data/icons/reactNative/index.d.ts +2 -0
  31. package/lib/data/icons/reactNative/index.d.ts.map +1 -1
  32. package/lib/data/icons/reactNative/index.js +12 -8
  33. package/lib/data/icons/reactNative/index.js.map +1 -1
  34. package/lib/data/icons/reactNative/sol.d.ts +8 -0
  35. package/lib/data/icons/reactNative/sol.d.ts.map +1 -0
  36. package/lib/data/icons/reactNative/sol.js +31 -0
  37. package/lib/data/icons/reactNative/sol.js.map +1 -0
  38. package/lib/derivation.d.ts +7 -0
  39. package/lib/derivation.d.ts.map +1 -1
  40. package/lib/derivation.js +16 -1
  41. package/lib/derivation.js.map +1 -1
  42. package/lib/errors.d.ts +1 -0
  43. package/lib/errors.d.ts.map +1 -1
  44. package/lib/errors.js +1 -0
  45. package/lib/errors.js.map +1 -1
  46. package/lib/families/bitcoin/exchange.d.ts +1 -1
  47. package/lib/families/bitcoin/getAccountNetworkInfo.d.ts.map +1 -1
  48. package/lib/families/bitcoin/getAccountNetworkInfo.js +3 -2
  49. package/lib/families/bitcoin/getAccountNetworkInfo.js.map +1 -1
  50. package/lib/families/bitcoin/js-signOperation.d.ts.map +1 -1
  51. package/lib/families/bitcoin/js-signOperation.js +7 -2
  52. package/lib/families/bitcoin/js-signOperation.js.map +1 -1
  53. package/lib/families/bitcoin/js-synchronisation.d.ts +2 -2
  54. package/lib/families/bitcoin/specs.d.ts +1 -0
  55. package/lib/families/bitcoin/specs.d.ts.map +1 -1
  56. package/lib/families/bitcoin/specs.js +14 -1
  57. package/lib/families/bitcoin/specs.js.map +1 -1
  58. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts +1 -1
  59. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
  60. package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
  61. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts.map +1 -1
  62. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js +8 -1
  63. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js.map +1 -1
  64. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts +16 -0
  65. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -0
  66. package/lib/families/bitcoin/wallet-btc/crypto/decred.js +248 -0
  67. package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -0
  68. package/lib/families/bitcoin/wallet-btc/crypto/factory.d.ts.map +1 -1
  69. package/lib/families/bitcoin/wallet-btc/crypto/factory.js +5 -0
  70. package/lib/families/bitcoin/wallet-btc/crypto/factory.js.map +1 -1
  71. package/lib/families/bitcoin/wallet-btc/crypto/index.d.ts +1 -0
  72. package/lib/families/bitcoin/wallet-btc/crypto/index.d.ts.map +1 -1
  73. package/lib/families/bitcoin/wallet-btc/crypto/index.js +3 -1
  74. package/lib/families/bitcoin/wallet-btc/crypto/index.js.map +1 -1
  75. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts.map +1 -1
  76. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js +13 -3
  77. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js.map +1 -1
  78. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts +1 -1
  79. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts.map +1 -1
  80. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts.map +1 -1
  81. package/lib/families/bitcoin/wallet-btc/crypto/zec.js +8 -1
  82. package/lib/families/bitcoin/wallet-btc/crypto/zec.js.map +1 -1
  83. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts.map +1 -1
  84. package/lib/families/bitcoin/wallet-btc/crypto/zen.js +8 -1
  85. package/lib/families/bitcoin/wallet-btc/crypto/zen.js.map +1 -1
  86. package/lib/families/bitcoin/wallet-btc/utils.d.ts.map +1 -1
  87. package/lib/families/bitcoin/wallet-btc/utils.js +6 -1
  88. package/lib/families/bitcoin/wallet-btc/utils.js.map +1 -1
  89. package/lib/families/bitcoin/wallet-btc/wallet.d.ts +2 -0
  90. package/lib/families/bitcoin/wallet-btc/wallet.d.ts.map +1 -1
  91. package/lib/families/bitcoin/wallet-btc/wallet.js +15 -7
  92. package/lib/families/bitcoin/wallet-btc/wallet.js.map +1 -1
  93. package/lib/families/crypto_org/js-synchronisation.d.ts +2 -2
  94. package/lib/families/elrond/js-synchronisation.d.ts +2 -2
  95. package/lib/families/ethereum/synchronisation.d.ts.map +1 -1
  96. package/lib/families/ethereum/synchronisation.js +2 -2
  97. package/lib/families/ethereum/synchronisation.js.map +1 -1
  98. package/lib/families/polkadot/api/sidecar.js +4 -2
  99. package/lib/families/polkadot/api/sidecar.js.map +1 -1
  100. package/lib/families/polkadot/js-synchronisation.d.ts +2 -2
  101. package/lib/families/solana/api/cached.d.ts +5 -0
  102. package/lib/families/solana/api/cached.d.ts.map +1 -0
  103. package/lib/families/solana/api/cached.js +80 -0
  104. package/lib/families/solana/api/cached.js.map +1 -0
  105. package/lib/families/solana/api/chain/account/index.d.ts +2 -0
  106. package/lib/families/solana/api/chain/account/index.d.ts.map +1 -0
  107. package/lib/families/solana/api/chain/account/index.js +14 -0
  108. package/lib/families/solana/api/chain/account/index.js.map +1 -0
  109. package/lib/families/solana/api/chain/account/parser.d.ts +5 -0
  110. package/lib/families/solana/api/chain/account/parser.d.ts.map +1 -0
  111. package/lib/families/solana/api/chain/account/parser.js +33 -0
  112. package/lib/families/solana/api/chain/account/parser.js.map +1 -0
  113. package/lib/families/solana/api/chain/account/stake.d.ts +237 -0
  114. package/lib/families/solana/api/chain/account/stake.d.ts.map +1 -0
  115. package/lib/families/solana/api/chain/account/stake.js +43 -0
  116. package/lib/families/solana/api/chain/account/stake.js.map +1 -0
  117. package/lib/families/solana/api/chain/account/token.d.ts +116 -0
  118. package/lib/families/solana/api/chain/account/token.d.ts.map +1 -0
  119. package/lib/families/solana/api/chain/account/token.js +42 -0
  120. package/lib/families/solana/api/chain/account/token.js.map +1 -0
  121. package/lib/families/solana/api/chain/index.d.ts +22 -0
  122. package/lib/families/solana/api/chain/index.d.ts.map +1 -0
  123. package/lib/families/solana/api/chain/index.js +54 -0
  124. package/lib/families/solana/api/chain/index.js.map +1 -0
  125. package/lib/families/solana/api/chain/instruction/associated-token-account/index.d.ts +15 -0
  126. package/lib/families/solana/api/chain/instruction/associated-token-account/index.d.ts.map +1 -0
  127. package/lib/families/solana/api/chain/instruction/associated-token-account/index.js +21 -0
  128. package/lib/families/solana/api/chain/instruction/associated-token-account/index.js.map +1 -0
  129. package/lib/families/solana/api/chain/instruction/associated-token-account/types.d.ts +30 -0
  130. package/lib/families/solana/api/chain/instruction/associated-token-account/types.d.ts.map +1 -0
  131. package/lib/families/solana/api/chain/instruction/associated-token-account/types.js +19 -0
  132. package/lib/families/solana/api/chain/instruction/associated-token-account/types.js.map +1 -0
  133. package/lib/families/solana/api/chain/instruction/memo/index.d.ts +15 -0
  134. package/lib/families/solana/api/chain/instruction/memo/index.d.ts.map +1 -0
  135. package/lib/families/solana/api/chain/instruction/memo/index.js +14 -0
  136. package/lib/families/solana/api/chain/instruction/memo/index.js.map +1 -0
  137. package/lib/families/solana/api/chain/instruction/memo/types.d.ts +21 -0
  138. package/lib/families/solana/api/chain/instruction/memo/types.d.ts.map +1 -0
  139. package/lib/families/solana/api/chain/instruction/memo/types.js +16 -0
  140. package/lib/families/solana/api/chain/instruction/memo/types.js.map +1 -0
  141. package/lib/families/solana/api/chain/instruction/stake/index.d.ts +15 -0
  142. package/lib/families/solana/api/chain/instruction/stake/index.d.ts.map +1 -0
  143. package/lib/families/solana/api/chain/instruction/stake/index.js +20 -0
  144. package/lib/families/solana/api/chain/instruction/stake/index.js.map +1 -0
  145. package/lib/families/solana/api/chain/instruction/stake/types.d.ts +215 -0
  146. package/lib/families/solana/api/chain/instruction/stake/types.d.ts.map +1 -0
  147. package/lib/families/solana/api/chain/instruction/stake/types.js +80 -0
  148. package/lib/families/solana/api/chain/instruction/stake/types.js.map +1 -0
  149. package/lib/families/solana/api/chain/instruction/token/index.d.ts +15 -0
  150. package/lib/families/solana/api/chain/instruction/token/index.d.ts.map +1 -0
  151. package/lib/families/solana/api/chain/instruction/token/index.js +20 -0
  152. package/lib/families/solana/api/chain/instruction/token/index.js.map +1 -0
  153. package/lib/families/solana/api/chain/instruction/token/types.d.ts +497 -0
  154. package/lib/families/solana/api/chain/instruction/token/types.d.ts.map +1 -0
  155. package/lib/families/solana/api/chain/instruction/token/types.js +205 -0
  156. package/lib/families/solana/api/chain/instruction/token/types.js.map +1 -0
  157. package/lib/families/solana/api/chain/program/constants.d.ts +11 -0
  158. package/lib/families/solana/api/chain/program/constants.d.ts.map +1 -0
  159. package/lib/families/solana/api/chain/program/constants.js +14 -0
  160. package/lib/families/solana/api/chain/program/constants.js.map +1 -0
  161. package/lib/families/solana/api/chain/program/index.d.ts +2 -0
  162. package/lib/families/solana/api/chain/program/index.d.ts.map +1 -0
  163. package/lib/families/solana/api/chain/program/index.js +14 -0
  164. package/lib/families/solana/api/chain/program/index.js.map +1 -0
  165. package/lib/families/solana/api/chain/program/parser.d.ts +30 -0
  166. package/lib/families/solana/api/chain/program/parser.d.ts.map +1 -0
  167. package/lib/families/solana/api/chain/program/parser.js +70 -0
  168. package/lib/families/solana/api/chain/program/parser.js.map +1 -0
  169. package/lib/families/solana/api/chain/validators/bignum.d.ts +3 -0
  170. package/lib/families/solana/api/chain/validators/bignum.d.ts.map +1 -0
  171. package/lib/families/solana/api/chain/validators/bignum.js +11 -0
  172. package/lib/families/solana/api/chain/validators/bignum.js.map +1 -0
  173. package/lib/families/solana/api/chain/validators/index.d.ts +10 -0
  174. package/lib/families/solana/api/chain/validators/index.d.ts.map +1 -0
  175. package/lib/families/solana/api/chain/validators/index.js +10 -0
  176. package/lib/families/solana/api/chain/validators/index.js.map +1 -0
  177. package/lib/families/solana/api/chain/validators/pubkey.d.ts +3 -0
  178. package/lib/families/solana/api/chain/validators/pubkey.d.ts.map +1 -0
  179. package/lib/families/solana/api/chain/validators/pubkey.js +7 -0
  180. package/lib/families/solana/api/chain/validators/pubkey.js.map +1 -0
  181. package/lib/families/solana/api/chain/web3.d.ts +29 -0
  182. package/lib/families/solana/api/chain/web3.d.ts.map +1 -0
  183. package/lib/families/solana/api/chain/web3.js +287 -0
  184. package/lib/families/solana/api/chain/web3.js.map +1 -0
  185. package/lib/families/solana/api/index.d.ts +5 -0
  186. package/lib/families/solana/api/index.d.ts.map +1 -0
  187. package/lib/families/solana/api/index.js +21 -0
  188. package/lib/families/solana/api/index.js.map +1 -0
  189. package/lib/families/solana/api/logged.d.ts +3 -0
  190. package/lib/families/solana/api/logged.d.ts.map +1 -0
  191. package/lib/families/solana/api/logged.js +53 -0
  192. package/lib/families/solana/api/logged.js.map +1 -0
  193. package/lib/families/solana/api/queued.d.ts +3 -0
  194. package/lib/families/solana/api/queued.d.ts.map +1 -0
  195. package/lib/families/solana/api/queued.js +31 -0
  196. package/lib/families/solana/api/queued.js.map +1 -0
  197. package/lib/families/solana/bridge/bridge.d.ts +12 -0
  198. package/lib/families/solana/bridge/bridge.d.ts.map +1 -0
  199. package/lib/families/solana/bridge/bridge.js +218 -0
  200. package/lib/families/solana/bridge/bridge.js.map +1 -0
  201. package/lib/families/solana/bridge/js.d.ts +6 -0
  202. package/lib/families/solana/bridge/js.d.ts.map +1 -0
  203. package/lib/families/solana/bridge/js.js +15 -0
  204. package/lib/families/solana/bridge/js.js.map +1 -0
  205. package/lib/families/solana/bridge/mock-data.d.ts +186 -0
  206. package/lib/families/solana/bridge/mock-data.d.ts.map +1 -0
  207. package/lib/families/solana/bridge/mock-data.js +23 -0
  208. package/lib/families/solana/bridge/mock-data.js.map +1 -0
  209. package/lib/families/solana/bridge/mock.d.ts +6 -0
  210. package/lib/families/solana/bridge/mock.d.ts.map +1 -0
  211. package/lib/families/solana/bridge/mock.js +75 -0
  212. package/lib/families/solana/bridge/mock.js.map +1 -0
  213. package/lib/families/solana/cli-transaction.d.ts +14 -0
  214. package/lib/families/solana/cli-transaction.d.ts.map +1 -0
  215. package/lib/families/solana/cli-transaction.js +137 -0
  216. package/lib/families/solana/cli-transaction.js.map +1 -0
  217. package/lib/families/solana/datasets/solana.scanAccounts.1.d.ts +6 -0
  218. package/lib/families/solana/datasets/solana.scanAccounts.1.d.ts.map +1 -0
  219. package/lib/families/solana/datasets/solana.scanAccounts.1.js +7 -0
  220. package/lib/families/solana/datasets/solana.scanAccounts.1.js.map +1 -0
  221. package/lib/families/solana/deviceTransactionConfig.d.ts +10 -0
  222. package/lib/families/solana/deviceTransactionConfig.d.ts.map +1 -0
  223. package/lib/families/solana/deviceTransactionConfig.js +121 -0
  224. package/lib/families/solana/deviceTransactionConfig.js.map +1 -0
  225. package/lib/families/solana/errors.d.ts +25 -0
  226. package/lib/families/solana/errors.d.ts.map +1 -0
  227. package/lib/families/solana/errors.js +13 -0
  228. package/lib/families/solana/errors.js.map +1 -0
  229. package/lib/families/solana/hw-getAddress.d.ts +4 -0
  230. package/lib/families/solana/hw-getAddress.d.ts.map +1 -0
  231. package/lib/families/solana/hw-getAddress.js +66 -0
  232. package/lib/families/solana/hw-getAddress.js.map +1 -0
  233. package/lib/families/solana/js-broadcast.d.ts +7 -0
  234. package/lib/families/solana/js-broadcast.d.ts.map +1 -0
  235. package/lib/families/solana/js-broadcast.js +59 -0
  236. package/lib/families/solana/js-broadcast.js.map +1 -0
  237. package/lib/families/solana/js-buildTransaction.d.ts +6 -0
  238. package/lib/families/solana/js-buildTransaction.d.ts.map +1 -0
  239. package/lib/families/solana/js-buildTransaction.js +123 -0
  240. package/lib/families/solana/js-buildTransaction.js.map +1 -0
  241. package/lib/families/solana/js-createTransaction.d.ts +6 -0
  242. package/lib/families/solana/js-createTransaction.d.ts.map +1 -0
  243. package/lib/families/solana/js-createTransaction.js +35 -0
  244. package/lib/families/solana/js-createTransaction.js.map +1 -0
  245. package/lib/families/solana/js-estimateMaxSpendable.d.ts +7 -0
  246. package/lib/families/solana/js-estimateMaxSpendable.d.ts.map +1 -0
  247. package/lib/families/solana/js-estimateMaxSpendable.js +72 -0
  248. package/lib/families/solana/js-estimateMaxSpendable.js.map +1 -0
  249. package/lib/families/solana/js-getTransactionStatus.d.ts +5 -0
  250. package/lib/families/solana/js-getTransactionStatus.d.ts.map +1 -0
  251. package/lib/families/solana/js-getTransactionStatus.js +106 -0
  252. package/lib/families/solana/js-getTransactionStatus.js.map +1 -0
  253. package/lib/families/solana/js-prepareTransaction.d.ts +6 -0
  254. package/lib/families/solana/js-prepareTransaction.d.ts.map +1 -0
  255. package/lib/families/solana/js-prepareTransaction.js +380 -0
  256. package/lib/families/solana/js-prepareTransaction.js.map +1 -0
  257. package/lib/families/solana/js-signOperation.d.ts +10 -0
  258. package/lib/families/solana/js-signOperation.d.ts.map +1 -0
  259. package/lib/families/solana/js-signOperation.js +193 -0
  260. package/lib/families/solana/js-signOperation.js.map +1 -0
  261. package/lib/families/solana/js-synchronization.d.ts +5 -0
  262. package/lib/families/solana/js-synchronization.d.ts.map +1 -0
  263. package/lib/families/solana/js-synchronization.js +464 -0
  264. package/lib/families/solana/js-synchronization.js.map +1 -0
  265. package/lib/families/solana/logic.d.ts +15 -0
  266. package/lib/families/solana/logic.d.ts.map +1 -0
  267. package/lib/families/solana/logic.js +49 -0
  268. package/lib/families/solana/logic.js.map +1 -0
  269. package/lib/families/solana/specs.d.ts +7 -0
  270. package/lib/families/solana/specs.d.ts.map +1 -0
  271. package/lib/families/solana/specs.js +100 -0
  272. package/lib/families/solana/specs.js.map +1 -0
  273. package/lib/families/solana/speculos-deviceActions.d.ts +8 -0
  274. package/lib/families/solana/speculos-deviceActions.d.ts.map +1 -0
  275. package/lib/families/solana/speculos-deviceActions.js +60 -0
  276. package/lib/families/solana/speculos-deviceActions.js.map +1 -0
  277. package/lib/families/solana/test-dataset.d.ts +5 -0
  278. package/lib/families/solana/test-dataset.d.ts.map +1 -0
  279. package/lib/families/solana/test-dataset.js +396 -0
  280. package/lib/families/solana/test-dataset.js.map +1 -0
  281. package/lib/families/solana/transaction.d.ts +12 -0
  282. package/lib/families/solana/transaction.d.ts.map +1 -0
  283. package/lib/families/solana/transaction.js +109 -0
  284. package/lib/families/solana/transaction.js.map +1 -0
  285. package/lib/families/solana/types.d.ts +84 -0
  286. package/lib/families/solana/types.d.ts.map +1 -0
  287. package/lib/families/solana/types.js +6 -0
  288. package/lib/families/solana/types.js.map +1 -0
  289. package/lib/families/solana/utils.d.ts +10 -0
  290. package/lib/families/solana/utils.d.ts.map +1 -0
  291. package/lib/families/solana/utils.js +194 -0
  292. package/lib/families/solana/utils.js.map +1 -0
  293. package/lib/families/stellar/js-synchronization.d.ts +2 -2
  294. package/lib/generated/bridge/js.d.ts +4 -0
  295. package/lib/generated/bridge/js.d.ts.map +1 -1
  296. package/lib/generated/bridge/js.js +8 -6
  297. package/lib/generated/bridge/js.js.map +1 -1
  298. package/lib/generated/bridge/mock.d.ts +4 -0
  299. package/lib/generated/bridge/mock.d.ts.map +1 -1
  300. package/lib/generated/bridge/mock.js +6 -4
  301. package/lib/generated/bridge/mock.js.map +1 -1
  302. package/lib/generated/cli-transaction.d.ts +9 -0
  303. package/lib/generated/cli-transaction.d.ts.map +1 -1
  304. package/lib/generated/cli-transaction.js +8 -6
  305. package/lib/generated/cli-transaction.js.map +1 -1
  306. package/lib/generated/deviceTransactionConfig.d.ts +2 -0
  307. package/lib/generated/deviceTransactionConfig.d.ts.map +1 -1
  308. package/lib/generated/deviceTransactionConfig.js +8 -6
  309. package/lib/generated/deviceTransactionConfig.js.map +1 -1
  310. package/lib/generated/exchange.d.ts +1 -1
  311. package/lib/generated/hw-getAddress.d.ts +1 -0
  312. package/lib/generated/hw-getAddress.d.ts.map +1 -1
  313. package/lib/generated/hw-getAddress.js +8 -6
  314. package/lib/generated/hw-getAddress.js.map +1 -1
  315. package/lib/generated/specs.d.ts +4 -0
  316. package/lib/generated/specs.d.ts.map +1 -1
  317. package/lib/generated/specs.js +8 -6
  318. package/lib/generated/specs.js.map +1 -1
  319. package/lib/generated/speculos-deviceActions.d.ts +3 -0
  320. package/lib/generated/speculos-deviceActions.d.ts.map +1 -1
  321. package/lib/generated/speculos-deviceActions.js +8 -6
  322. package/lib/generated/speculos-deviceActions.js.map +1 -1
  323. package/lib/generated/test-dataset.d.ts +1 -0
  324. package/lib/generated/test-dataset.d.ts.map +1 -1
  325. package/lib/generated/test-dataset.js +8 -6
  326. package/lib/generated/test-dataset.js.map +1 -1
  327. package/lib/generated/transaction.d.ts +5 -0
  328. package/lib/generated/transaction.d.ts.map +1 -1
  329. package/lib/generated/transaction.js +8 -6
  330. package/lib/generated/transaction.js.map +1 -1
  331. package/lib/generated/types.d.ts +12 -6
  332. package/lib/generated/types.d.ts.map +1 -1
  333. package/lib/generated/types.js +5 -3
  334. package/lib/generated/types.js.map +1 -1
  335. package/lib/nft/helpers.js +1 -1
  336. package/lib/nft/helpers.js.map +1 -1
  337. package/package.json +8 -4
  338. package/src/__tests__/__snapshots__/all.libcore.ts.snap +113 -0
  339. package/src/__tests__/families/bitcoin/wallet-btc/utils.test.ts +4 -0
  340. package/src/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.ts +12 -0
  341. package/src/__tests__/test-helpers/setup.ts +1 -0
  342. package/src/api/Ledger.ts +11 -1
  343. package/src/api/explorerConfig/index.ts +1 -3
  344. package/src/data/icons/react/cro.tsx +12 -0
  345. package/src/data/icons/react/index.tsx +2 -0
  346. package/src/data/icons/react/sol.tsx +12 -0
  347. package/src/data/icons/reactNative/cro.tsx +13 -0
  348. package/src/data/icons/reactNative/index.tsx +2 -0
  349. package/src/data/icons/reactNative/sol.tsx +13 -0
  350. package/src/data/icons/svg/CRO.svg +6 -0
  351. package/src/data/icons/svg/SOL.svg +3 -0
  352. package/src/derivation.ts +13 -0
  353. package/src/errors.ts +1 -0
  354. package/src/families/bitcoin/getAccountNetworkInfo.ts +5 -2
  355. package/src/families/bitcoin/js-signOperation.ts +4 -7
  356. package/src/families/bitcoin/specs.ts +16 -0
  357. package/src/families/bitcoin/wallet-btc/crypto/base.ts +1 -1
  358. package/src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts +8 -1
  359. package/src/families/bitcoin/wallet-btc/crypto/decred.ts +251 -0
  360. package/src/families/bitcoin/wallet-btc/crypto/factory.ts +5 -0
  361. package/src/families/bitcoin/wallet-btc/crypto/index.ts +1 -0
  362. package/src/families/bitcoin/wallet-btc/crypto/litecoin.ts +13 -3
  363. package/src/families/bitcoin/wallet-btc/crypto/types.ts +1 -0
  364. package/src/families/bitcoin/wallet-btc/crypto/zec.ts +8 -1
  365. package/src/families/bitcoin/wallet-btc/crypto/zen.ts +8 -1
  366. package/src/families/bitcoin/wallet-btc/utils.ts +6 -1
  367. package/src/families/bitcoin/wallet-btc/wallet.ts +18 -5
  368. package/src/families/ethereum/synchronisation.ts +5 -2
  369. package/src/families/polkadot/api/sidecar.ts +2 -2
  370. package/src/families/solana/api/cached.ts +89 -0
  371. package/src/families/solana/api/chain/account/index.ts +1 -0
  372. package/src/families/solana/api/chain/account/parser.ts +35 -0
  373. package/src/families/solana/api/chain/account/stake.ts +50 -0
  374. package/src/families/solana/api/chain/account/token.ts +63 -0
  375. package/src/families/solana/api/chain/index.ts +115 -0
  376. package/src/families/solana/api/chain/instruction/associated-token-account/index.ts +37 -0
  377. package/src/families/solana/api/chain/instruction/associated-token-account/types.ts +23 -0
  378. package/src/families/solana/api/chain/instruction/memo/index.ts +24 -0
  379. package/src/families/solana/api/chain/instruction/memo/types.ts +18 -0
  380. package/src/families/solana/api/chain/instruction/stake/index.ts +29 -0
  381. package/src/families/solana/api/chain/instruction/stake/types.ts +95 -0
  382. package/src/families/solana/api/chain/instruction/token/index.ts +30 -0
  383. package/src/families/solana/api/chain/instruction/token/types.ts +237 -0
  384. package/src/families/solana/api/chain/program/constants.ts +10 -0
  385. package/src/families/solana/api/chain/program/index.ts +1 -0
  386. package/src/families/solana/api/chain/program/parser.ts +122 -0
  387. package/src/families/solana/api/chain/validators/bignum.ts +11 -0
  388. package/src/families/solana/api/chain/validators/index.ts +9 -0
  389. package/src/families/solana/api/chain/validators/pubkey.ts +8 -0
  390. package/src/families/solana/api/chain/web3.ts +258 -0
  391. package/src/families/solana/api/index.ts +4 -0
  392. package/src/families/solana/api/logged.ts +50 -0
  393. package/src/families/solana/api/queued.ts +23 -0
  394. package/src/families/solana/bridge/bridge.ts +169 -0
  395. package/src/families/solana/bridge/js.ts +28 -0
  396. package/src/families/solana/bridge/mock-data.ts +22 -0
  397. package/src/families/solana/bridge/mock.ts +80 -0
  398. package/src/families/solana/cli-transaction.ts +175 -0
  399. package/src/families/solana/datasets/solana.scanAccounts.1.ts +9 -0
  400. package/src/families/solana/deviceTransactionConfig.ts +160 -0
  401. package/src/families/solana/errors.ts +32 -0
  402. package/src/families/solana/hw-getAddress.ts +20 -0
  403. package/src/families/solana/js-broadcast.ts +20 -0
  404. package/src/families/solana/js-buildTransaction.ts +75 -0
  405. package/src/families/solana/js-createTransaction.ts +27 -0
  406. package/src/families/solana/js-estimateMaxSpendable.ts +29 -0
  407. package/src/families/solana/js-getTransactionStatus.ts +78 -0
  408. package/src/families/solana/js-prepareTransaction.ts +423 -0
  409. package/src/families/solana/js-signOperation.ts +230 -0
  410. package/src/families/solana/js-synchronization.ts +544 -0
  411. package/src/families/solana/logic.ts +52 -0
  412. package/src/families/solana/specs.ts +100 -0
  413. package/src/families/solana/speculos-deviceActions.ts +59 -0
  414. package/src/families/solana/test-dataset.ts +572 -0
  415. package/src/families/solana/transaction.ts +146 -0
  416. package/src/families/solana/types.ts +110 -0
  417. package/src/families/solana/utils.ts +80 -0
  418. package/src/generated/bridge/js.ts +3 -0
  419. package/src/generated/bridge/mock.ts +3 -0
  420. package/src/generated/cli-transaction.ts +3 -0
  421. package/src/generated/deviceTransactionConfig.ts +3 -0
  422. package/src/generated/hw-getAddress.ts +3 -0
  423. package/src/generated/specs.ts +3 -0
  424. package/src/generated/speculos-deviceActions.ts +3 -0
  425. package/src/generated/test-dataset.ts +3 -0
  426. package/src/generated/transaction.ts +3 -0
  427. package/src/generated/types.ts +14 -0
  428. package/src/nft/helpers.ts +1 -1
@@ -0,0 +1,146 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ import type {
3
+ Command,
4
+ TokenCreateATACommand,
5
+ TokenTransferCommand,
6
+ Transaction,
7
+ TransactionRaw,
8
+ TransferCommand,
9
+ } from "./types";
10
+ import {
11
+ fromTransactionCommonRaw,
12
+ toTransactionCommonRaw,
13
+ } from "../../transaction/common";
14
+ import type { Account } from "../../types";
15
+ import { findSubAccountById, getAccountUnit } from "../../account";
16
+ import { formatCurrencyUnit, getTokenById } from "../../currencies";
17
+ import { assertUnreachable } from "./utils";
18
+ import { toTokenId } from "./logic";
19
+
20
+ export const fromTransactionRaw = (tr: TransactionRaw): Transaction => {
21
+ const common = fromTransactionCommonRaw(tr);
22
+ const { family, model, feeCalculator } = tr;
23
+ return {
24
+ ...common,
25
+ family,
26
+ model: JSON.parse(model),
27
+ feeCalculator,
28
+ };
29
+ };
30
+
31
+ export const toTransactionRaw = (t: Transaction): TransactionRaw => {
32
+ const common = toTransactionCommonRaw(t);
33
+ const { family, model, feeCalculator } = t;
34
+ return {
35
+ ...common,
36
+ family,
37
+ model: JSON.stringify(model),
38
+ feeCalculator,
39
+ };
40
+ };
41
+
42
+ const lamportsToSOL = (account: Account, amount: number) => {
43
+ return formatCurrencyUnit(getAccountUnit(account), new BigNumber(amount), {
44
+ showCode: true,
45
+ disableRounding: true,
46
+ });
47
+ };
48
+
49
+ export const formatTransaction = (
50
+ tx: Transaction,
51
+ mainAccount: Account
52
+ ): string => {
53
+ if (tx.model.commandDescriptor === undefined) {
54
+ throw new Error("can not format unprepared transaction");
55
+ }
56
+ const { commandDescriptor } = tx.model;
57
+ switch (commandDescriptor.status) {
58
+ case "valid":
59
+ return formatCommand(mainAccount, tx, commandDescriptor.command);
60
+ case "invalid":
61
+ throw new Error("can not format invalid transaction");
62
+ default:
63
+ return assertUnreachable(commandDescriptor);
64
+ }
65
+ };
66
+
67
+ function formatCommand(
68
+ mainAccount: Account,
69
+ tx: Transaction,
70
+ command: Command
71
+ ) {
72
+ switch (command.kind) {
73
+ case "transfer":
74
+ return formatTransfer(mainAccount, tx, command);
75
+ case "token.transfer":
76
+ return formatTokenTransfer(mainAccount, tx, command);
77
+ case "token.createATA":
78
+ return formatCreateATA(mainAccount, tx, command);
79
+ default:
80
+ return assertUnreachable(command);
81
+ }
82
+ }
83
+
84
+ function formatTransfer(
85
+ mainAccount: Account,
86
+ tx: Transaction,
87
+ command: TransferCommand
88
+ ) {
89
+ const amount = lamportsToSOL(mainAccount, command.amount);
90
+ const str = [
91
+ ` SEND: ${amount}${tx.useAllAmount ? " (ALL)" : ""}`,
92
+ ` TO: ${command.recipient}`,
93
+ command.memo ? ` MEMO: ${command.memo}` : "",
94
+ ]
95
+ .filter(Boolean)
96
+ .join("\n");
97
+
98
+ return "\n" + str;
99
+ }
100
+
101
+ function formatTokenTransfer(
102
+ mainAccount: Account,
103
+ tx: Transaction,
104
+ command: TokenTransferCommand
105
+ ) {
106
+ if (!tx.subAccountId) {
107
+ throw new Error("expected subaccountId on transaction");
108
+ }
109
+ const subAccount = findSubAccountById(mainAccount, tx.subAccountId);
110
+ if (!subAccount || subAccount.type !== "TokenAccount") {
111
+ throw new Error("token subaccount expected");
112
+ }
113
+ const amount = formatCurrencyUnit(
114
+ getAccountUnit(subAccount),
115
+ new BigNumber(command.amount),
116
+ {
117
+ showCode: true,
118
+ disableRounding: true,
119
+ }
120
+ );
121
+ const recipient = command.recipientDescriptor.walletAddress;
122
+ const str = [
123
+ ` SEND: ${amount}${tx.useAllAmount ? " (ALL)" : ""}`,
124
+ ` TO: ${recipient}`,
125
+ command.memo ? ` MEMO: ${command.memo}` : "",
126
+ ]
127
+ .filter(Boolean)
128
+ .join("\n");
129
+ return "\n" + str;
130
+ }
131
+
132
+ function formatCreateATA(
133
+ mainAccount: Account,
134
+ tx: Transaction,
135
+ command: TokenCreateATACommand
136
+ ) {
137
+ const token = getTokenById(toTokenId(command.mint));
138
+ const str = [` OPT IN TOKEN: ${token.ticker}`].filter(Boolean).join("\n");
139
+ return "\n" + str;
140
+ }
141
+
142
+ export default {
143
+ formatTransaction,
144
+ fromTransactionRaw,
145
+ toTransactionRaw,
146
+ };
@@ -0,0 +1,110 @@
1
+ import type {
2
+ TransactionCommon,
3
+ TransactionCommonRaw,
4
+ } from "../../types/transaction";
5
+
6
+ // for legacy reasons export the types
7
+ export type CoreStatics = Record<string, never>;
8
+ export type CoreAccountSpecifics = Record<string, never>;
9
+ export type CoreOperationSpecifics = Record<string, never>;
10
+ export type CoreCurrencySpecifics = Record<string, never>;
11
+
12
+ export type TransferCommand = {
13
+ kind: "transfer";
14
+ sender: string;
15
+ recipient: string;
16
+ amount: number;
17
+ memo?: string;
18
+ };
19
+
20
+ export type TokenCreateATACommand = {
21
+ kind: "token.createATA";
22
+ owner: string;
23
+ mint: string;
24
+ associatedTokenAccountAddress: string;
25
+ };
26
+
27
+ export type TokenRecipientDescriptor = {
28
+ walletAddress: string;
29
+ tokenAccAddress: string;
30
+ shouldCreateAsAssociatedTokenAccount: boolean;
31
+ };
32
+
33
+ export type TokenTransferCommand = {
34
+ kind: "token.transfer";
35
+ ownerAddress: string;
36
+ ownerAssociatedTokenAccountAddress: string;
37
+ recipientDescriptor: TokenRecipientDescriptor;
38
+ amount: number;
39
+ mintAddress: string;
40
+ mintDecimals: number;
41
+ memo?: string;
42
+ };
43
+
44
+ export type Command =
45
+ | TransferCommand
46
+ | TokenTransferCommand
47
+ | TokenCreateATACommand;
48
+
49
+ export type ValidCommandDescriptor = {
50
+ status: "valid";
51
+ command: Command;
52
+ fees?: number;
53
+ warnings?: Record<string, Error>;
54
+ };
55
+
56
+ export type InvalidCommandDescriptor = {
57
+ status: "invalid";
58
+ errors: Record<string, Error>;
59
+ warnings?: Record<string, Error>;
60
+ };
61
+
62
+ export type CommandDescriptor<> =
63
+ | ValidCommandDescriptor
64
+ | InvalidCommandDescriptor;
65
+
66
+ export type TransferTransaction = {
67
+ kind: "transfer";
68
+ uiState: {
69
+ memo?: string;
70
+ };
71
+ };
72
+
73
+ export type TokenTransferTransaction = {
74
+ kind: "token.transfer";
75
+ uiState: {
76
+ subAccountId: string;
77
+ memo?: string;
78
+ };
79
+ };
80
+
81
+ export type TokenCreateATATransaction = {
82
+ kind: "token.createATA";
83
+ uiState: {
84
+ tokenId: string;
85
+ };
86
+ };
87
+
88
+ export type TransactionModel = { commandDescriptor?: CommandDescriptor } & (
89
+ | TransferTransaction
90
+ | TokenTransferTransaction
91
+ | TokenCreateATATransaction
92
+ );
93
+
94
+ export type Transaction = TransactionCommon & {
95
+ family: "solana";
96
+ model: TransactionModel;
97
+ feeCalculator?: {
98
+ lamportsPerSignature: number;
99
+ };
100
+ };
101
+
102
+ export type TransactionRaw = TransactionCommonRaw & {
103
+ family: "solana";
104
+ model: string;
105
+ feeCalculator?: {
106
+ lamportsPerSignature: number;
107
+ };
108
+ };
109
+
110
+ export const reflect = (_declare: unknown): void => {};
@@ -0,0 +1,80 @@
1
+ import { Cluster } from "@solana/web3.js";
2
+
3
+ export const assertUnreachable = (_: never): never => {
4
+ throw new Error("unreachable assertion failed");
5
+ };
6
+
7
+ export async function drainSeqAsyncGen<T>(
8
+ ...asyncGens: AsyncGenerator<T>[]
9
+ ): Promise<T[]> {
10
+ const items: T[] = [];
11
+ for (const gen of asyncGens) {
12
+ for await (const item of gen) {
13
+ items.push(item);
14
+ }
15
+ }
16
+ return items;
17
+ }
18
+
19
+ export function clusterByCurrencyId(currencyId: string): Cluster {
20
+ const clusters: Record<string, Cluster> = {
21
+ solana: "mainnet-beta",
22
+ solana_devnet: "devnet",
23
+ solana_testnet: "testnet",
24
+ };
25
+
26
+ if (currencyId in clusters) {
27
+ return clusters[currencyId];
28
+ }
29
+
30
+ throw Error(
31
+ `unexpected currency id format <${currencyId}>, should be like solana[_(testnet | devnet)]`
32
+ );
33
+ }
34
+
35
+ type AsyncQueueEntry<T> = {
36
+ lazyPromise: () => Promise<T>;
37
+ resolve: (value: T) => void;
38
+ reject: (reason?: any) => void;
39
+ };
40
+
41
+ export function asyncQueue(config: { delayBetweenRuns: number }): {
42
+ submit: <T>(fn: () => Promise<T>) => Promise<T>;
43
+ } {
44
+ const { delayBetweenRuns } = config;
45
+ const q: AsyncQueueEntry<any>[] = [];
46
+
47
+ const drain = async () => {
48
+ if (q.length > 0) {
49
+ const { lazyPromise, resolve, reject } = q[q.length - 1];
50
+ try {
51
+ resolve(await lazyPromise());
52
+ } catch (e) {
53
+ reject(e);
54
+ } finally {
55
+ void setTimeout(() => {
56
+ q.pop();
57
+ void drain();
58
+ }, delayBetweenRuns);
59
+ }
60
+ }
61
+ };
62
+
63
+ const submit = <T>(lazyPromise: () => Promise<T>): Promise<T> => {
64
+ return new Promise((resolve, reject) => {
65
+ q.unshift({
66
+ lazyPromise,
67
+ resolve,
68
+ reject,
69
+ });
70
+
71
+ if (q.length === 1) {
72
+ void drain();
73
+ }
74
+ });
75
+ };
76
+
77
+ return {
78
+ submit,
79
+ };
80
+ }
@@ -14,6 +14,8 @@ import polkadot from "../../families/polkadot/bridge/js";
14
14
 
15
15
  import ripple from "../../families/ripple/bridge/js";
16
16
 
17
+ import solana from "../../families/solana/bridge/js";
18
+
17
19
  import stellar from "../../families/stellar/bridge/js";
18
20
 
19
21
  import tezos from "../../families/tezos/bridge/js";
@@ -30,6 +32,7 @@ export default {
30
32
  neo,
31
33
  polkadot,
32
34
  ripple,
35
+ solana,
33
36
  stellar,
34
37
  tezos,
35
38
  tron,
@@ -8,6 +8,8 @@ import ethereum from "../../families/ethereum/bridge/mock";
8
8
 
9
9
  import ripple from "../../families/ripple/bridge/mock";
10
10
 
11
+ import solana from "../../families/solana/bridge/mock";
12
+
11
13
  import stellar from "../../families/stellar/bridge/mock";
12
14
 
13
15
  import tezos from "../../families/tezos/bridge/mock";
@@ -19,6 +21,7 @@ export default {
19
21
  cosmos,
20
22
  ethereum,
21
23
  ripple,
24
+ solana,
22
25
  stellar,
23
26
  tezos,
24
27
  };
@@ -16,6 +16,8 @@ import polkadot from "../families/polkadot/cli-transaction";
16
16
 
17
17
  import ripple from "../families/ripple/cli-transaction";
18
18
 
19
+ import solana from "../families/solana/cli-transaction";
20
+
19
21
  import stellar from "../families/stellar/cli-transaction";
20
22
 
21
23
  import tezos from "../families/tezos/cli-transaction";
@@ -33,6 +35,7 @@ export default {
33
35
  filecoin,
34
36
  polkadot,
35
37
  ripple,
38
+ solana,
36
39
  stellar,
37
40
  tezos,
38
41
  tron,
@@ -12,6 +12,8 @@ import polkadot from "../families/polkadot/deviceTransactionConfig";
12
12
 
13
13
  import ripple from "../families/ripple/deviceTransactionConfig";
14
14
 
15
+ import solana from "../families/solana/deviceTransactionConfig";
16
+
15
17
  import stellar from "../families/stellar/deviceTransactionConfig";
16
18
 
17
19
  import tezos from "../families/tezos/deviceTransactionConfig";
@@ -27,6 +29,7 @@ export default {
27
29
  ethereum,
28
30
  polkadot,
29
31
  ripple,
32
+ solana,
30
33
  stellar,
31
34
  tezos,
32
35
  tron,
@@ -18,6 +18,8 @@ import polkadot from "../families/polkadot/hw-getAddress";
18
18
 
19
19
  import ripple from "../families/ripple/hw-getAddress";
20
20
 
21
+ import solana from "../families/solana/hw-getAddress";
22
+
21
23
  import stellar from "../families/stellar/hw-getAddress";
22
24
 
23
25
  import tezos from "../families/tezos/hw-getAddress";
@@ -36,6 +38,7 @@ export default {
36
38
  neo,
37
39
  polkadot,
38
40
  ripple,
41
+ solana,
39
42
  stellar,
40
43
  tezos,
41
44
  tron,
@@ -16,6 +16,8 @@ import polkadot from "../families/polkadot/specs";
16
16
 
17
17
  import ripple from "../families/ripple/specs";
18
18
 
19
+ import solana from "../families/solana/specs";
20
+
19
21
  import stellar from "../families/stellar/specs";
20
22
 
21
23
  import tezos from "../families/tezos/specs";
@@ -33,6 +35,7 @@ export default {
33
35
  filecoin,
34
36
  polkadot,
35
37
  ripple,
38
+ solana,
36
39
  stellar,
37
40
  tezos,
38
41
  tron,
@@ -16,6 +16,8 @@ import polkadot from "../families/polkadot/speculos-deviceActions";
16
16
 
17
17
  import ripple from "../families/ripple/speculos-deviceActions";
18
18
 
19
+ import solana from "../families/solana/speculos-deviceActions";
20
+
19
21
  import stellar from "../families/stellar/speculos-deviceActions";
20
22
 
21
23
  import tezos from "../families/tezos/speculos-deviceActions";
@@ -33,6 +35,7 @@ export default {
33
35
  filecoin,
34
36
  polkadot,
35
37
  ripple,
38
+ solana,
36
39
  stellar,
37
40
  tezos,
38
41
  tron,
@@ -16,6 +16,8 @@ import polkadot from "../families/polkadot/test-dataset";
16
16
 
17
17
  import ripple from "../families/ripple/test-dataset";
18
18
 
19
+ import solana from "../families/solana/test-dataset";
20
+
19
21
  import stellar from "../families/stellar/test-dataset";
20
22
 
21
23
  import tezos from "../families/tezos/test-dataset";
@@ -33,6 +35,7 @@ export default {
33
35
  filecoin,
34
36
  polkadot,
35
37
  ripple,
38
+ solana,
36
39
  stellar,
37
40
  tezos,
38
41
  tron,
@@ -18,6 +18,8 @@ import polkadot from "../families/polkadot/transaction";
18
18
 
19
19
  import ripple from "../families/ripple/transaction";
20
20
 
21
+ import solana from "../families/solana/transaction";
22
+
21
23
  import stellar from "../families/stellar/transaction";
22
24
 
23
25
  import tezos from "../families/tezos/transaction";
@@ -36,6 +38,7 @@ export default {
36
38
  neo,
37
39
  polkadot,
38
40
  ripple,
41
+ solana,
39
42
  stellar,
40
43
  tezos,
41
44
  tron,
@@ -84,6 +84,13 @@ import { Transaction as rippleTransaction } from "../families/ripple/types";
84
84
  import { TransactionRaw as rippleTransactionRaw } from "../families/ripple/types";
85
85
  import { NetworkInfo as rippleNetworkInfo } from "../families/ripple/types";
86
86
  import { NetworkInfoRaw as rippleNetworkInfoRaw } from "../families/ripple/types";
87
+ import { reflect as solanaReflect } from "../families/solana/types";
88
+ import { CoreStatics as CoreStatics_solana } from "../families/solana/types";
89
+ import { CoreAccountSpecifics as CoreAccountSpecifics_solana } from "../families/solana/types";
90
+ import { CoreOperationSpecifics as CoreOperationSpecifics_solana } from "../families/solana/types";
91
+ import { CoreCurrencySpecifics as CoreCurrencySpecifics_solana } from "../families/solana/types";
92
+ import { Transaction as solanaTransaction } from "../families/solana/types";
93
+ import { TransactionRaw as solanaTransactionRaw } from "../families/solana/types";
87
94
  import { reflect as stellarReflect } from "../families/stellar/types";
88
95
  import { CoreStatics as CoreStatics_stellar } from "../families/stellar/types";
89
96
  import { CoreAccountSpecifics as CoreAccountSpecifics_stellar } from "../families/stellar/types";
@@ -123,6 +130,7 @@ export type SpecificStatics = {}
123
130
  & CoreStatics_neo
124
131
  & CoreStatics_polkadot
125
132
  & CoreStatics_ripple
133
+ & CoreStatics_solana
126
134
  & CoreStatics_stellar
127
135
  & CoreStatics_tezos
128
136
  & CoreStatics_tron
@@ -137,6 +145,7 @@ export type CoreAccountSpecifics = {}
137
145
  & CoreAccountSpecifics_neo
138
146
  & CoreAccountSpecifics_polkadot
139
147
  & CoreAccountSpecifics_ripple
148
+ & CoreAccountSpecifics_solana
140
149
  & CoreAccountSpecifics_stellar
141
150
  & CoreAccountSpecifics_tezos
142
151
  & CoreAccountSpecifics_tron
@@ -151,6 +160,7 @@ export type CoreOperationSpecifics = {}
151
160
  & CoreOperationSpecifics_neo
152
161
  & CoreOperationSpecifics_polkadot
153
162
  & CoreOperationSpecifics_ripple
163
+ & CoreOperationSpecifics_solana
154
164
  & CoreOperationSpecifics_stellar
155
165
  & CoreOperationSpecifics_tezos
156
166
  & CoreOperationSpecifics_tron
@@ -165,6 +175,7 @@ export type CoreCurrencySpecifics = {}
165
175
  & CoreCurrencySpecifics_neo
166
176
  & CoreCurrencySpecifics_polkadot
167
177
  & CoreCurrencySpecifics_ripple
178
+ & CoreCurrencySpecifics_solana
168
179
  & CoreCurrencySpecifics_stellar
169
180
  & CoreCurrencySpecifics_tezos
170
181
  & CoreCurrencySpecifics_tron
@@ -179,6 +190,7 @@ export type Transaction =
179
190
  | neoTransaction
180
191
  | polkadotTransaction
181
192
  | rippleTransaction
193
+ | solanaTransaction
182
194
  | stellarTransaction
183
195
  | tezosTransaction
184
196
  | tronTransaction
@@ -193,6 +205,7 @@ export type TransactionRaw =
193
205
  | neoTransactionRaw
194
206
  | polkadotTransactionRaw
195
207
  | rippleTransactionRaw
208
+ | solanaTransactionRaw
196
209
  | stellarTransactionRaw
197
210
  | tezosTransactionRaw
198
211
  | tronTransactionRaw
@@ -231,6 +244,7 @@ export const reflectSpecifics = (declare: any): Array<{ OperationMethods: Record
231
244
  neoReflect(declare),
232
245
  polkadotReflect(declare),
233
246
  rippleReflect(declare),
247
+ solanaReflect(declare),
234
248
  stellarReflect(declare),
235
249
  tezosReflect(declare),
236
250
  tronReflect(declare),
@@ -45,7 +45,7 @@ export const nftsFromOperations = (ops: Operation[]): NFT[] => {
45
45
  return acc;
46
46
  }, {});
47
47
 
48
- return Object.values(nftsMap).filter((n) => n.amount.gt(0));
48
+ return Object.values(nftsMap);
49
49
  };
50
50
 
51
51
  export const nftsByCollections = (