@ledgerhq/live-common 21.30.1 → 21.32.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 (362) hide show
  1. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts +2 -0
  2. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts.map +1 -0
  3. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js +100 -0
  4. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js.map +1 -0
  5. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.js +0 -10
  6. package/lib/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.js.map +1 -1
  7. package/lib/__tests__/test-helpers/setup.js +1 -0
  8. package/lib/__tests__/test-helpers/setup.js.map +1 -1
  9. package/lib/account/support.d.ts.map +1 -1
  10. package/lib/account/support.js.map +1 -1
  11. package/lib/api/Ethereum.d.ts.map +1 -1
  12. package/lib/api/Ethereum.js +1 -0
  13. package/lib/api/Ethereum.js.map +1 -1
  14. package/lib/apps/polyfill.d.ts.map +1 -1
  15. package/lib/apps/polyfill.js +1 -0
  16. package/lib/apps/polyfill.js.map +1 -1
  17. package/lib/bot/engine.d.ts.map +1 -1
  18. package/lib/bot/engine.js +4 -1
  19. package/lib/bot/engine.js.map +1 -1
  20. package/lib/bridge/jsHelpers.js +1 -1
  21. package/lib/data/icons/react/celo.d.ts +8 -0
  22. package/lib/data/icons/react/celo.d.ts.map +1 -0
  23. package/lib/data/icons/react/celo.js +32 -0
  24. package/lib/data/icons/react/celo.js.map +1 -0
  25. package/lib/data/icons/react/index.d.ts +1 -0
  26. package/lib/data/icons/react/index.d.ts.map +1 -1
  27. package/lib/data/icons/react/index.js +11 -8
  28. package/lib/data/icons/react/index.js.map +1 -1
  29. package/lib/data/icons/reactNative/celo.d.ts +8 -0
  30. package/lib/data/icons/reactNative/celo.d.ts.map +1 -0
  31. package/lib/data/icons/reactNative/celo.js +33 -0
  32. package/lib/data/icons/reactNative/celo.js.map +1 -0
  33. package/lib/data/icons/reactNative/index.d.ts +1 -0
  34. package/lib/data/icons/reactNative/index.d.ts.map +1 -1
  35. package/lib/data/icons/reactNative/index.js +11 -8
  36. package/lib/data/icons/reactNative/index.js.map +1 -1
  37. package/lib/env.d.ts +15 -5
  38. package/lib/env.d.ts.map +1 -1
  39. package/lib/env.js +10 -0
  40. package/lib/env.js.map +1 -1
  41. package/lib/env.react.d.ts +1 -1
  42. package/lib/env.react.d.ts.map +1 -1
  43. package/lib/exchange/platform/transfer/index.d.ts.map +1 -1
  44. package/lib/exchange/platform/transfer/index.js +15 -1
  45. package/lib/exchange/platform/transfer/index.js.map +1 -1
  46. package/lib/families/algorand/buildTransaction.d.ts +2 -2
  47. package/lib/families/algorand/buildTransaction.d.ts.map +1 -1
  48. package/lib/families/algorand/buildTransaction.js +13 -19
  49. package/lib/families/algorand/buildTransaction.js.map +1 -1
  50. package/lib/families/algorand/js-getFeesForTransaction.js +4 -6
  51. package/lib/families/algorand/js-getFeesForTransaction.js.map +1 -1
  52. package/lib/families/algorand/js-signOperation.js +3 -7
  53. package/lib/families/algorand/js-signOperation.js.map +1 -1
  54. package/lib/families/algorand/js-synchronization.d.ts.map +1 -1
  55. package/lib/families/algorand/js-synchronization.js +1 -0
  56. package/lib/families/algorand/js-synchronization.js.map +1 -1
  57. package/lib/families/bitcoin/js-signOperation.d.ts.map +1 -1
  58. package/lib/families/bitcoin/js-signOperation.js +3 -5
  59. package/lib/families/bitcoin/js-signOperation.js.map +1 -1
  60. package/lib/families/bitcoin/js-synchronisation.js +4 -4
  61. package/lib/families/bitcoin/js-synchronisation.js.map +1 -1
  62. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts +4 -3
  63. package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
  64. package/lib/families/bitcoin/wallet-btc/crypto/base.js +8 -7
  65. package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
  66. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts +1 -1
  67. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts.map +1 -1
  68. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js +3 -7
  69. package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js.map +1 -1
  70. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts +3 -4
  71. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts.map +1 -1
  72. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js +27 -53
  73. package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js.map +1 -1
  74. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts +1 -1
  75. package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -1
  76. package/lib/families/bitcoin/wallet-btc/crypto/decred.js +2 -7
  77. package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -1
  78. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts +1 -6
  79. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts.map +1 -1
  80. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js +0 -51
  81. package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js.map +1 -1
  82. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts +1 -0
  83. package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts.map +1 -1
  84. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts +3 -4
  85. package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts.map +1 -1
  86. package/lib/families/bitcoin/wallet-btc/crypto/zec.js +26 -17
  87. package/lib/families/bitcoin/wallet-btc/crypto/zec.js.map +1 -1
  88. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts +3 -4
  89. package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts.map +1 -1
  90. package/lib/families/bitcoin/wallet-btc/crypto/zen.js +33 -24
  91. package/lib/families/bitcoin/wallet-btc/crypto/zen.js.map +1 -1
  92. package/lib/families/bitcoin/wallet-btc/explorer/index.d.ts.map +1 -1
  93. package/lib/families/bitcoin/wallet-btc/explorer/index.js +20 -0
  94. package/lib/families/bitcoin/wallet-btc/explorer/index.js.map +1 -1
  95. package/lib/families/bitcoin/wallet-btc/storage/types.d.ts +0 -1
  96. package/lib/families/bitcoin/wallet-btc/storage/types.d.ts.map +1 -1
  97. package/lib/families/celo/api/hubble.d.ts +8 -0
  98. package/lib/families/celo/api/hubble.d.ts.map +1 -0
  99. package/lib/families/celo/api/hubble.js +144 -0
  100. package/lib/families/celo/api/hubble.js.map +1 -0
  101. package/lib/families/celo/api/index.d.ts +2 -0
  102. package/lib/families/celo/api/index.d.ts.map +1 -0
  103. package/lib/families/celo/api/index.js +13 -0
  104. package/lib/families/celo/api/index.js.map +1 -0
  105. package/lib/families/celo/api/sdk.d.ts +3 -0
  106. package/lib/families/celo/api/sdk.d.ts.map +1 -0
  107. package/lib/families/celo/api/sdk.js +13 -0
  108. package/lib/families/celo/api/sdk.js.map +1 -0
  109. package/lib/families/celo/bridge/js.d.ts +8 -0
  110. package/lib/families/celo/bridge/js.d.ts.map +1 -0
  111. package/lib/families/celo/bridge/js.js +87 -0
  112. package/lib/families/celo/bridge/js.js.map +1 -0
  113. package/lib/families/celo/cli-transaction.d.ts +14 -0
  114. package/lib/families/celo/cli-transaction.d.ts.map +1 -0
  115. package/lib/families/celo/cli-transaction.js +37 -0
  116. package/lib/families/celo/cli-transaction.js.map +1 -0
  117. package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts +5 -0
  118. package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts.map +1 -0
  119. package/lib/families/celo/datasets/celo.scanAccounts.1.js +12 -0
  120. package/lib/families/celo/datasets/celo.scanAccounts.1.js.map +1 -0
  121. package/lib/families/celo/deviceTransactionConfig.d.ts +4 -0
  122. package/lib/families/celo/deviceTransactionConfig.d.ts.map +1 -0
  123. package/lib/families/celo/deviceTransactionConfig.js +16 -0
  124. package/lib/families/celo/deviceTransactionConfig.js.map +1 -0
  125. package/lib/families/celo/hw-app-celo.d.ts +19 -0
  126. package/lib/families/celo/hw-app-celo.d.ts.map +1 -0
  127. package/lib/families/celo/hw-app-celo.js +147 -0
  128. package/lib/families/celo/hw-app-celo.js.map +1 -0
  129. package/lib/families/celo/hw-getAddress.d.ts +2 -0
  130. package/lib/families/celo/hw-getAddress.d.ts.map +1 -0
  131. package/lib/families/celo/hw-getAddress.js +13 -0
  132. package/lib/families/celo/hw-getAddress.js.map +1 -0
  133. package/lib/families/celo/js-broadcast.d.ts +8 -0
  134. package/lib/families/celo/js-broadcast.d.ts.map +1 -0
  135. package/lib/families/celo/js-broadcast.js +58 -0
  136. package/lib/families/celo/js-broadcast.js.map +1 -0
  137. package/lib/families/celo/js-buildTransaction.d.ts +6 -0
  138. package/lib/families/celo/js-buildTransaction.d.ts.map +1 -0
  139. package/lib/families/celo/js-buildTransaction.js +89 -0
  140. package/lib/families/celo/js-buildTransaction.js.map +1 -0
  141. package/lib/families/celo/js-createTransaction.d.ts +4 -0
  142. package/lib/families/celo/js-createTransaction.d.ts.map +1 -0
  143. package/lib/families/celo/js-createTransaction.js +12 -0
  144. package/lib/families/celo/js-createTransaction.js.map +1 -0
  145. package/lib/families/celo/js-estimateMaxSpendable.d.ts +10 -0
  146. package/lib/families/celo/js-estimateMaxSpendable.d.ts.map +1 -0
  147. package/lib/families/celo/js-estimateMaxSpendable.js +77 -0
  148. package/lib/families/celo/js-estimateMaxSpendable.js.map +1 -0
  149. package/lib/families/celo/js-getFeesForTransaction.d.ts +8 -0
  150. package/lib/families/celo/js-getFeesForTransaction.d.ts.map +1 -0
  151. package/lib/families/celo/js-getFeesForTransaction.js +76 -0
  152. package/lib/families/celo/js-getFeesForTransaction.js.map +1 -0
  153. package/lib/families/celo/js-getTransactionStatus.d.ts +5 -0
  154. package/lib/families/celo/js-getTransactionStatus.d.ts.map +1 -0
  155. package/lib/families/celo/js-getTransactionStatus.js +86 -0
  156. package/lib/families/celo/js-getTransactionStatus.js.map +1 -0
  157. package/lib/families/celo/js-prepareTransaction.d.ts +5 -0
  158. package/lib/families/celo/js-prepareTransaction.d.ts.map +1 -0
  159. package/lib/families/celo/js-prepareTransaction.js +76 -0
  160. package/lib/families/celo/js-prepareTransaction.js.map +1 -0
  161. package/lib/families/celo/js-signOperation.d.ts +13 -0
  162. package/lib/families/celo/js-signOperation.d.ts.map +1 -0
  163. package/lib/families/celo/js-signOperation.js +150 -0
  164. package/lib/families/celo/js-signOperation.js.map +1 -0
  165. package/lib/families/celo/js-synchronisation.d.ts +10 -0
  166. package/lib/families/celo/js-synchronisation.d.ts.map +1 -0
  167. package/lib/families/celo/js-synchronisation.js +88 -0
  168. package/lib/families/celo/js-synchronisation.js.map +1 -0
  169. package/lib/families/celo/specs.d.ts +7 -0
  170. package/lib/families/celo/specs.d.ts.map +1 -0
  171. package/lib/families/celo/specs.js +56 -0
  172. package/lib/families/celo/specs.js.map +1 -0
  173. package/lib/families/celo/speculos-deviceActions.d.ts +7 -0
  174. package/lib/families/celo/speculos-deviceActions.d.ts.map +1 -0
  175. package/lib/families/celo/speculos-deviceActions.js +52 -0
  176. package/lib/families/celo/speculos-deviceActions.js.map +1 -0
  177. package/lib/families/celo/transaction.d.ts +11 -0
  178. package/lib/families/celo/transaction.d.ts.map +1 -0
  179. package/lib/families/celo/transaction.js +39 -0
  180. package/lib/families/celo/transaction.js.map +1 -0
  181. package/lib/families/celo/types.d.ts +16 -0
  182. package/lib/families/celo/types.d.ts.map +1 -0
  183. package/lib/families/celo/types.js +6 -0
  184. package/lib/families/celo/types.js.map +1 -0
  185. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts +1 -0
  186. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts.map +1 -1
  187. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js +1 -0
  188. package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js.map +1 -1
  189. package/lib/families/ethereum/modules/erc1155.d.ts.map +1 -1
  190. package/lib/families/ethereum/modules/erc1155.js +8 -2
  191. package/lib/families/ethereum/modules/erc1155.js.map +1 -1
  192. package/lib/families/ethereum/signOperation.d.ts.map +1 -1
  193. package/lib/families/ethereum/signOperation.js +26 -15
  194. package/lib/families/ethereum/signOperation.js.map +1 -1
  195. package/lib/families/ethereum/specs.d.ts.map +1 -1
  196. package/lib/families/ethereum/specs.js +2 -4
  197. package/lib/families/ethereum/specs.js.map +1 -1
  198. package/lib/families/ethereum/transaction.d.ts +4 -1
  199. package/lib/families/ethereum/transaction.d.ts.map +1 -1
  200. package/lib/families/ethereum/transaction.js +15 -27
  201. package/lib/families/ethereum/transaction.js.map +1 -1
  202. package/lib/families/polkadot/cache.d.ts +1 -1
  203. package/lib/families/polkadot/cache.js +1 -1
  204. package/lib/families/solana/api/chain/instruction/token/types.d.ts +1 -1
  205. package/lib/families/solana/specs.js +1 -1
  206. package/lib/families/solana/specs.js.map +1 -1
  207. package/lib/families/tezos/bakers.whitelist-default.d.ts.map +1 -1
  208. package/lib/families/tezos/bakers.whitelist-default.js +1 -1
  209. package/lib/families/tezos/bakers.whitelist-default.js.map +1 -1
  210. package/lib/families/tezos/bridge/js.d.ts.map +1 -1
  211. package/lib/families/tezos/bridge/js.js +2 -1
  212. package/lib/families/tezos/bridge/js.js.map +1 -1
  213. package/lib/families/tezos/test-specifics.d.ts.map +1 -1
  214. package/lib/families/tezos/test-specifics.js +1 -0
  215. package/lib/families/tezos/test-specifics.js.map +1 -1
  216. package/lib/featureFlags/FeatureToggle.d.ts +10 -0
  217. package/lib/featureFlags/FeatureToggle.d.ts.map +1 -0
  218. package/lib/featureFlags/FeatureToggle.js +17 -0
  219. package/lib/featureFlags/FeatureToggle.js.map +1 -0
  220. package/lib/featureFlags/defaultFeatures.d.ts +3 -0
  221. package/lib/featureFlags/defaultFeatures.d.ts.map +1 -0
  222. package/lib/featureFlags/defaultFeatures.js +9 -0
  223. package/lib/featureFlags/defaultFeatures.js.map +1 -0
  224. package/lib/featureFlags/index.d.ts +5 -0
  225. package/lib/featureFlags/index.d.ts.map +1 -0
  226. package/lib/featureFlags/index.js +17 -0
  227. package/lib/featureFlags/index.js.map +1 -0
  228. package/lib/featureFlags/provider.d.ts +13 -0
  229. package/lib/featureFlags/provider.d.ts.map +1 -0
  230. package/lib/featureFlags/provider.js +68 -0
  231. package/lib/featureFlags/provider.js.map +1 -0
  232. package/lib/featureFlags/types.d.ts +8 -0
  233. package/lib/featureFlags/types.d.ts.map +1 -0
  234. package/lib/featureFlags/types.js +3 -0
  235. package/lib/featureFlags/types.js.map +1 -0
  236. package/lib/featureFlags/useFeature.d.ts +3 -0
  237. package/lib/featureFlags/useFeature.d.ts.map +1 -0
  238. package/lib/featureFlags/useFeature.js +9 -0
  239. package/lib/featureFlags/useFeature.js.map +1 -0
  240. package/lib/generated/bridge/js.d.ts +4 -0
  241. package/lib/generated/bridge/js.d.ts.map +1 -1
  242. package/lib/generated/bridge/js.js +24 -22
  243. package/lib/generated/bridge/js.js.map +1 -1
  244. package/lib/generated/cli-transaction.d.ts +9 -0
  245. package/lib/generated/cli-transaction.d.ts.map +1 -1
  246. package/lib/generated/cli-transaction.js +24 -22
  247. package/lib/generated/cli-transaction.js.map +1 -1
  248. package/lib/generated/deviceTransactionConfig.d.ts +2 -0
  249. package/lib/generated/deviceTransactionConfig.d.ts.map +1 -1
  250. package/lib/generated/deviceTransactionConfig.js +22 -20
  251. package/lib/generated/deviceTransactionConfig.js.map +1 -1
  252. package/lib/generated/hw-getAddress.d.ts +1 -0
  253. package/lib/generated/hw-getAddress.d.ts.map +1 -1
  254. package/lib/generated/hw-getAddress.js +26 -24
  255. package/lib/generated/hw-getAddress.js.map +1 -1
  256. package/lib/generated/specs.d.ts +3 -0
  257. package/lib/generated/specs.d.ts.map +1 -1
  258. package/lib/generated/specs.js +24 -22
  259. package/lib/generated/specs.js.map +1 -1
  260. package/lib/generated/speculos-deviceActions.d.ts +3 -0
  261. package/lib/generated/speculos-deviceActions.d.ts.map +1 -1
  262. package/lib/generated/speculos-deviceActions.js +24 -22
  263. package/lib/generated/speculos-deviceActions.js.map +1 -1
  264. package/lib/generated/transaction.d.ts +5 -0
  265. package/lib/generated/transaction.d.ts.map +1 -1
  266. package/lib/generated/transaction.js +26 -24
  267. package/lib/generated/transaction.js.map +1 -1
  268. package/lib/generated/types.d.ts +12 -6
  269. package/lib/generated/types.d.ts.map +1 -1
  270. package/lib/generated/types.js +14 -12
  271. package/lib/generated/types.js.map +1 -1
  272. package/lib/load/speculos.d.ts +7 -0
  273. package/lib/load/speculos.d.ts.map +1 -1
  274. package/lib/load/speculos.js +27 -11
  275. package/lib/load/speculos.js.map +1 -1
  276. package/lib/types/index.d.ts +1 -0
  277. package/lib/types/index.d.ts.map +1 -1
  278. package/lib/types/index.js +1 -0
  279. package/lib/types/index.js.map +1 -1
  280. package/package.json +23 -21
  281. package/src/.DS_Store +0 -0
  282. package/src/{data/flags → __tests__}/.DS_Store +0 -0
  283. package/src/__tests__/__snapshots__/all.libcore.ts.snap +457 -33509
  284. package/src/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.ts +47 -0
  285. package/src/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.ts +0 -11
  286. package/src/__tests__/test-helpers/setup.ts +1 -0
  287. package/src/account/support.ts +1 -0
  288. package/src/api/Ethereum.ts +1 -0
  289. package/src/apps/polyfill.ts +1 -0
  290. package/src/bot/engine.ts +4 -1
  291. package/src/bridge/jsHelpers.ts +1 -1
  292. package/src/data/icons/react/celo.tsx +12 -0
  293. package/src/data/icons/react/index.tsx +1 -0
  294. package/src/data/icons/reactNative/celo.tsx +13 -0
  295. package/src/data/icons/reactNative/index.tsx +1 -0
  296. package/src/data/icons/svg/CELO.svg +5 -0
  297. package/src/env.ts +10 -0
  298. package/src/exchange/platform/transfer/index.ts +21 -1
  299. package/src/families/algorand/buildTransaction.ts +4 -8
  300. package/src/families/algorand/js-getFeesForTransaction.ts +1 -1
  301. package/src/families/algorand/js-signOperation.ts +2 -2
  302. package/src/families/algorand/js-synchronization.ts +1 -0
  303. package/src/families/bitcoin/js-signOperation.ts +3 -5
  304. package/src/families/bitcoin/js-synchronisation.ts +4 -4
  305. package/src/families/bitcoin/wallet-btc/crypto/base.ts +31 -18
  306. package/src/families/bitcoin/wallet-btc/crypto/bitcoin.ts +3 -17
  307. package/src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts +5 -39
  308. package/src/families/bitcoin/wallet-btc/crypto/decred.ts +2 -15
  309. package/src/families/bitcoin/wallet-btc/crypto/litecoin.ts +1 -71
  310. package/src/families/bitcoin/wallet-btc/crypto/types.ts +7 -0
  311. package/src/families/bitcoin/wallet-btc/crypto/zec.ts +4 -22
  312. package/src/families/bitcoin/wallet-btc/crypto/zen.ts +4 -22
  313. package/src/families/bitcoin/wallet-btc/explorer/index.ts +20 -0
  314. package/src/families/bitcoin/wallet-btc/storage/types.ts +0 -1
  315. package/src/families/celo/api/hubble.ts +93 -0
  316. package/src/families/celo/api/index.ts +1 -0
  317. package/src/families/celo/api/sdk.ts +8 -0
  318. package/src/families/celo/bridge/js.ts +38 -0
  319. package/src/families/celo/cli-transaction.ts +41 -0
  320. package/src/families/celo/datasets/celo.scanAccounts.1.ts +20 -0
  321. package/src/families/celo/deviceTransactionConfig.ts +19 -0
  322. package/src/families/celo/hw-app-celo.ts +108 -0
  323. package/src/families/celo/hw-getAddress.ts +1 -0
  324. package/src/families/celo/js-broadcast.ts +12 -0
  325. package/src/families/celo/js-buildTransaction.ts +32 -0
  326. package/src/families/celo/js-createTransaction.ts +12 -0
  327. package/src/families/celo/js-estimateMaxSpendable.ts +28 -0
  328. package/src/families/celo/js-getFeesForTransaction.ts +38 -0
  329. package/src/families/celo/js-getTransactionStatus.ts +67 -0
  330. package/src/families/celo/js-prepareTransaction.ts +28 -0
  331. package/src/families/celo/js-signOperation.ts +149 -0
  332. package/src/families/celo/js-synchronisation.ts +40 -0
  333. package/src/families/celo/specs.ts +53 -0
  334. package/src/families/celo/speculos-deviceActions.ts +50 -0
  335. package/src/families/celo/transaction.ts +39 -0
  336. package/src/families/celo/types.ts +20 -0
  337. package/src/families/ethereum/datasets/ethereum.scanAccounts.1.ts +1 -0
  338. package/src/families/ethereum/modules/erc1155.ts +9 -0
  339. package/src/families/ethereum/signOperation.ts +21 -20
  340. package/src/families/ethereum/specs.ts +0 -2
  341. package/src/families/ethereum/transaction.ts +10 -24
  342. package/src/families/polkadot/cache.ts +1 -1
  343. package/src/families/solana/specs.ts +1 -1
  344. package/src/families/tezos/bakers.whitelist-default.ts +0 -2
  345. package/src/families/tezos/bridge/js.ts +6 -1
  346. package/src/families/tezos/test-specifics.ts +1 -0
  347. package/src/featureFlags/FeatureToggle.tsx +24 -0
  348. package/src/featureFlags/defaultFeatures.ts +7 -0
  349. package/src/featureFlags/index.ts +4 -0
  350. package/src/featureFlags/provider.tsx +48 -0
  351. package/src/featureFlags/types.ts +9 -0
  352. package/src/featureFlags/useFeature.ts +8 -0
  353. package/src/generated/bridge/js.ts +3 -0
  354. package/src/generated/cli-transaction.ts +3 -0
  355. package/src/generated/deviceTransactionConfig.ts +3 -0
  356. package/src/generated/hw-getAddress.ts +3 -0
  357. package/src/generated/specs.ts +3 -0
  358. package/src/generated/speculos-deviceActions.ts +3 -0
  359. package/src/generated/transaction.ts +3 -0
  360. package/src/generated/types.ts +14 -0
  361. package/src/load/speculos.ts +23 -10
  362. package/src/types/index.ts +1 -0
@@ -0,0 +1,10 @@
1
+ import { Account, AccountLike } from "../../types";
2
+ import { Transaction } from "./types";
3
+ import { BigNumber } from "bignumber.js";
4
+ declare const estimateMaxSpendable: ({ account, parentAccount, transaction, }: {
5
+ account: AccountLike;
6
+ parentAccount: Account;
7
+ transaction: Transaction;
8
+ }) => Promise<BigNumber>;
9
+ export default estimateMaxSpendable;
10
+ //# sourceMappingURL=js-estimateMaxSpendable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-estimateMaxSpendable.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-estimateMaxSpendable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAMzC,QAAA,MAAM,oBAAoB;aAKf,WAAW;mBACL,OAAO;iBACT,WAAW;MACtB,QAAQ,SAAS,CASpB,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (_) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ exports.__esModule = true;
53
+ var account_1 = require("../../account");
54
+ var js_getTransactionStatus_1 = __importDefault(require("./js-getTransactionStatus"));
55
+ var js_prepareTransaction_1 = __importDefault(require("./js-prepareTransaction"));
56
+ var js_createTransaction_1 = __importDefault(require("./js-createTransaction"));
57
+ var estimateMaxSpendable = function (_a) {
58
+ var account = _a.account, parentAccount = _a.parentAccount, transaction = _a.transaction;
59
+ return __awaiter(void 0, void 0, void 0, function () {
60
+ var mainAccount, t, s;
61
+ return __generator(this, function (_b) {
62
+ switch (_b.label) {
63
+ case 0:
64
+ mainAccount = (0, account_1.getMainAccount)(account, parentAccount);
65
+ return [4 /*yield*/, (0, js_prepareTransaction_1["default"])(mainAccount, __assign(__assign(__assign({}, (0, js_createTransaction_1["default"])()), transaction), { useAllAmount: true }))];
66
+ case 1:
67
+ t = _b.sent();
68
+ return [4 /*yield*/, (0, js_getTransactionStatus_1["default"])(mainAccount, t)];
69
+ case 2:
70
+ s = _b.sent();
71
+ return [2 /*return*/, s.amount];
72
+ }
73
+ });
74
+ });
75
+ };
76
+ exports["default"] = estimateMaxSpendable;
77
+ //# sourceMappingURL=js-estimateMaxSpendable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-estimateMaxSpendable.js","sourceRoot":"","sources":["../../../src/families/celo/js-estimateMaxSpendable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,yCAA+C;AAC/C,sFAA6D;AAC7D,kFAAyD;AACzD,gFAAuD;AAEvD,IAAM,oBAAoB,GAAG,UAAO,EAQnC;QAPC,OAAO,aAAA,EACP,aAAa,mBAAA,EACb,WAAW,iBAAA;;;;;;oBAML,WAAW,GAAG,IAAA,wBAAc,EAAC,OAAO,EAAE,aAAa,CAAC,CAAC;oBACjD,qBAAM,IAAA,kCAAkB,EAAC,WAAW,iCACzC,IAAA,iCAAiB,GAAE,GACnB,WAAW,KACd,YAAY,EAAE,IAAI,IAClB,EAAA;;oBAJI,CAAC,GAAG,SAIR;oBACQ,qBAAM,IAAA,oCAAoB,EAAC,WAAW,EAAE,CAAC,CAAC,EAAA;;oBAA9C,CAAC,GAAG,SAA0C;oBACpD,sBAAO,CAAC,CAAC,MAAM,EAAC;;;;CACjB,CAAC;AAEF,qBAAe,oBAAoB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ import { Account, Transaction } from "../../types";
3
+ declare const getFeesForTransaction: ({ account, transaction, }: {
4
+ account: Account;
5
+ transaction: Transaction;
6
+ }) => Promise<BigNumber>;
7
+ export default getFeesForTransaction;
8
+ //# sourceMappingURL=js-getFeesForTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getFeesForTransaction.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-getFeesForTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGnD,QAAA,MAAM,qBAAqB;aAIhB,OAAO;iBACH,WAAW;MACtB,QAAQ,SAAS,CAyBpB,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ exports.__esModule = true;
39
+ var bignumber_js_1 = require("bignumber.js");
40
+ var sdk_1 = require("./api/sdk");
41
+ var getFeesForTransaction = function (_a) {
42
+ var account = _a.account, transaction = _a.transaction;
43
+ return __awaiter(void 0, void 0, void 0, function () {
44
+ var amount, kit, value, celoToken, celoTransaction, gasPrice, _b, gas;
45
+ return __generator(this, function (_c) {
46
+ switch (_c.label) {
47
+ case 0:
48
+ amount = transaction.amount;
49
+ kit = (0, sdk_1.celoKit)();
50
+ value = transaction.useAllAmount
51
+ ? account.spendableBalance
52
+ : bignumber_js_1.BigNumber.minimum(amount, account.spendableBalance);
53
+ return [4 /*yield*/, kit.contracts.getGoldToken()];
54
+ case 1:
55
+ celoToken = _c.sent();
56
+ celoTransaction = {
57
+ from: account.freshAddress,
58
+ to: celoToken.address,
59
+ data: celoToken
60
+ .transfer(transaction.recipient, value.toFixed())
61
+ .txo.encodeABI()
62
+ };
63
+ _b = bignumber_js_1.BigNumber.bind;
64
+ return [4 /*yield*/, kit.connection.gasPrice()];
65
+ case 2:
66
+ gasPrice = new (_b.apply(bignumber_js_1.BigNumber, [void 0, _c.sent()]))();
67
+ return [4 /*yield*/, kit.connection.estimateGasWithInflationFactor(celoTransaction)];
68
+ case 3:
69
+ gas = _c.sent();
70
+ return [2 /*return*/, gasPrice.times(gas)];
71
+ }
72
+ });
73
+ });
74
+ };
75
+ exports["default"] = getFeesForTransaction;
76
+ //# sourceMappingURL=js-getFeesForTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getFeesForTransaction.js","sourceRoot":"","sources":["../../../src/families/celo/js-getFeesForTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAyC;AAEzC,iCAAoC;AAEpC,IAAM,qBAAqB,GAAG,UAAO,EAMpC;QALC,OAAO,aAAA,EACP,WAAW,iBAAA;;;;;;oBAKH,MAAM,GAAK,WAAW,OAAhB,CAAiB;oBACzB,GAAG,GAAG,IAAA,aAAO,GAAE,CAAC;oBAGhB,KAAK,GAAG,WAAW,CAAC,YAAY;wBACpC,CAAC,CAAC,OAAO,CAAC,gBAAgB;wBAC1B,CAAC,CAAC,wBAAS,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;oBAEtC,qBAAM,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,EAAA;;oBAA9C,SAAS,GAAG,SAAkC;oBAE9C,eAAe,GAAG;wBACtB,IAAI,EAAE,OAAO,CAAC,YAAY;wBAC1B,EAAE,EAAE,SAAS,CAAC,OAAO;wBACrB,IAAI,EAAE,SAAS;6BACZ,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;6BAChD,GAAG,CAAC,SAAS,EAAE;qBACnB,CAAC;yBAEmB,wBAAS;oBAAC,qBAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAA;;oBAAxD,QAAQ,GAAG,cAAI,wBAAS,WAAC,SAA+B,KAAC;oBACnD,qBAAM,GAAG,CAAC,UAAU,CAAC,8BAA8B,CAC7D,eAAe,CAChB,EAAA;;oBAFK,GAAG,GAAG,SAEX;oBAED,sBAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAC;;;;CAC5B,CAAC;AAEF,qBAAe,qBAAqB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Account, TransactionStatus } from "../../types";
2
+ import { Transaction } from "./types";
3
+ declare const getTransactionStatus: (account: Account, transaction: Transaction) => Promise<TransactionStatus>;
4
+ export default getTransactionStatus;
5
+ //# sourceMappingURL=js-getTransactionStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getTransactionStatus.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-getTransactionStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAYtC,QAAA,MAAM,oBAAoB,YACf,OAAO,eACH,WAAW,KACvB,QAAQ,iBAAiB,CAgD3B,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ exports.__esModule = true;
39
+ var errors_1 = require("@ledgerhq/errors");
40
+ var bignumber_js_1 = require("bignumber.js");
41
+ var address_1 = require("@celo/utils/lib/address");
42
+ var getTransactionStatus = function (account, transaction) { return __awaiter(void 0, void 0, void 0, function () {
43
+ var errors, warnings, useAllAmount, estimatedFees, amount, totalSpent;
44
+ return __generator(this, function (_a) {
45
+ errors = {};
46
+ warnings = {};
47
+ useAllAmount = !!transaction.useAllAmount;
48
+ if (account.freshAddress === transaction.recipient) {
49
+ errors.recipient = new errors_1.InvalidAddressBecauseDestinationIsAlsoSource();
50
+ }
51
+ if (!transaction.fees || !transaction.fees.gt(0)) {
52
+ errors.fees = new errors_1.FeeNotLoaded();
53
+ }
54
+ estimatedFees = transaction.fees || new bignumber_js_1.BigNumber(0);
55
+ amount = useAllAmount
56
+ ? account.spendableBalance.minus(estimatedFees)
57
+ : new bignumber_js_1.BigNumber(transaction.amount);
58
+ if (amount.lte(0) && !transaction.useAllAmount) {
59
+ errors.amount = new errors_1.AmountRequired();
60
+ }
61
+ totalSpent = amount.plus(estimatedFees);
62
+ if (totalSpent.gt(account.spendableBalance)) {
63
+ errors.amount = new errors_1.NotEnoughBalance();
64
+ }
65
+ if (!errors.amount && account.spendableBalance.lt(estimatedFees)) {
66
+ errors.amount = new errors_1.NotEnoughBalance();
67
+ }
68
+ if (!transaction.recipient) {
69
+ errors.recipient = new errors_1.RecipientRequired();
70
+ }
71
+ else if (!(0, address_1.isValidAddress)(transaction.recipient)) {
72
+ errors.recipient = new errors_1.InvalidAddress("", {
73
+ currencyName: account.currency.name
74
+ });
75
+ }
76
+ return [2 /*return*/, Promise.resolve({
77
+ errors: errors,
78
+ warnings: warnings,
79
+ estimatedFees: estimatedFees,
80
+ amount: amount,
81
+ totalSpent: totalSpent
82
+ })];
83
+ });
84
+ }); };
85
+ exports["default"] = getTransactionStatus;
86
+ //# sourceMappingURL=js-getTransactionStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-getTransactionStatus.js","sourceRoot":"","sources":["../../../src/families/celo/js-getTransactionStatus.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,2CAO0B;AAC1B,6CAAyC;AACzC,mDAAyD;AAEzD,IAAM,oBAAoB,GAAG,UAC3B,OAAgB,EAChB,WAAwB;;;QAElB,MAAM,GAAQ,EAAE,CAAC;QACjB,QAAQ,GAAQ,EAAE,CAAC;QACnB,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;QAEhD,IAAI,OAAO,CAAC,YAAY,KAAK,WAAW,CAAC,SAAS,EAAE;YAClD,MAAM,CAAC,SAAS,GAAG,IAAI,qDAA4C,EAAE,CAAC;SACvE;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YAChD,MAAM,CAAC,IAAI,GAAG,IAAI,qBAAY,EAAE,CAAC;SAClC;QAEK,aAAa,GAAG,WAAW,CAAC,IAAI,IAAI,IAAI,wBAAS,CAAC,CAAC,CAAC,CAAC;QAErD,MAAM,GAAG,YAAY;YACzB,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC;YAC/C,CAAC,CAAC,IAAI,wBAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEtC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC9C,MAAM,CAAC,MAAM,GAAG,IAAI,uBAAc,EAAE,CAAC;SACtC;QAEK,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAE9C,IAAI,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;YAC3C,MAAM,CAAC,MAAM,GAAG,IAAI,yBAAgB,EAAE,CAAC;SACxC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE;YAChE,MAAM,CAAC,MAAM,GAAG,IAAI,yBAAgB,EAAE,CAAC;SACxC;QAED,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;YAC1B,MAAM,CAAC,SAAS,GAAG,IAAI,0BAAiB,EAAE,CAAC;SAC5C;aAAM,IAAI,CAAC,IAAA,wBAAc,EAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YACjD,MAAM,CAAC,SAAS,GAAG,IAAI,uBAAc,CAAC,EAAE,EAAE;gBACxC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;aACpC,CAAC,CAAC;SACJ;QAED,sBAAO,OAAO,CAAC,OAAO,CAAC;gBACrB,MAAM,QAAA;gBACN,QAAQ,UAAA;gBACR,aAAa,eAAA;gBACb,MAAM,QAAA;gBACN,UAAU,YAAA;aACX,CAAC,EAAC;;KACJ,CAAC;AAEF,qBAAe,oBAAoB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Account } from "../../types";
2
+ import { Transaction } from "./types";
3
+ declare const prepareTransaction: (account: Account, transaction: Transaction) => Promise<Transaction>;
4
+ export default prepareTransaction;
5
+ //# sourceMappingURL=js-prepareTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-prepareTransaction.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-prepareTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAMtC,QAAA,MAAM,kBAAkB,YACb,OAAO,eACH,WAAW,yBAgBzB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (_) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ exports.__esModule = true;
53
+ var js_getFeesForTransaction_1 = __importDefault(require("./js-getFeesForTransaction"));
54
+ var address_1 = require("@celo/utils/lib/address");
55
+ var sameFees = function (a, b) { return (!a || !b ? a === b : a.eq(b)); };
56
+ var prepareTransaction = function (account, transaction) { return __awaiter(void 0, void 0, void 0, function () {
57
+ var fees;
58
+ return __generator(this, function (_a) {
59
+ switch (_a.label) {
60
+ case 0:
61
+ if (!transaction.recipient ||
62
+ (transaction.recipient && !(0, address_1.isValidAddress)(transaction.recipient))) {
63
+ return [2 /*return*/, transaction];
64
+ }
65
+ return [4 /*yield*/, (0, js_getFeesForTransaction_1["default"])({ account: account, transaction: transaction })];
66
+ case 1:
67
+ fees = _a.sent();
68
+ if (!sameFees(transaction.fees, fees)) {
69
+ return [2 /*return*/, __assign(__assign({}, transaction), { fees: fees })];
70
+ }
71
+ return [2 /*return*/, transaction];
72
+ }
73
+ });
74
+ }); };
75
+ exports["default"] = prepareTransaction;
76
+ //# sourceMappingURL=js-prepareTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-prepareTransaction.js","sourceRoot":"","sources":["../../../src/families/celo/js-prepareTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wFAA+D;AAC/D,mDAAyD;AAEzD,IAAM,QAAQ,GAAG,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAA9B,CAA8B,CAAC;AAE1D,IAAM,kBAAkB,GAAG,UACzB,OAAgB,EAChB,WAAwB;;;;;gBAExB,IACE,CAAC,WAAW,CAAC,SAAS;oBACtB,CAAC,WAAW,CAAC,SAAS,IAAI,CAAC,IAAA,wBAAc,EAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EACjE;oBACA,sBAAO,WAAW,EAAC;iBACpB;gBAEY,qBAAM,IAAA,qCAAqB,EAAC,EAAE,OAAO,SAAA,EAAE,WAAW,aAAA,EAAE,CAAC,EAAA;;gBAA5D,IAAI,GAAG,SAAqD;gBAElE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;oBACrC,4CAAY,WAAW,KAAE,IAAI,MAAA,KAAG;iBACjC;gBAED,sBAAO,WAAW,EAAC;;;KACpB,CAAC;AAEF,qBAAe,kBAAkB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { Observable } from "rxjs";
2
+ import type { Transaction } from "./types";
3
+ import type { Account, SignOperationEvent } from "../../types";
4
+ /**
5
+ * Sign Transaction with Ledger hardware
6
+ */
7
+ declare const signOperation: ({ account, deviceId, transaction, }: {
8
+ account: Account;
9
+ deviceId: any;
10
+ transaction: Transaction;
11
+ }) => Observable<SignOperationEvent>;
12
+ export default signOperation;
13
+ //# sourceMappingURL=js-signOperation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-signOperation.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-signOperation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAa,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAgE1E;;GAEG;AACH,QAAA,MAAM,aAAa;aAKR,OAAO;cACN,GAAG;iBACA,WAAW;MACtB,WAAW,kBAAkB,CAmE9B,CAAC;AAEJ,eAAe,aAAa,CAAC"}
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ exports.__esModule = true;
42
+ var bignumber_js_1 = require("bignumber.js");
43
+ var rxjs_1 = require("rxjs");
44
+ var errors_1 = require("@ledgerhq/errors");
45
+ var operation_1 = require("../../operation");
46
+ var hw_app_celo_1 = require("./hw-app-celo");
47
+ var js_buildTransaction_1 = __importDefault(require("./js-buildTransaction"));
48
+ var wallet_base_1 = require("@celo/wallet-base");
49
+ var tokens_1 = require("@celo/wallet-ledger/lib/tokens");
50
+ var deviceAccess_1 = require("../../hw/deviceAccess");
51
+ var buildOptimisticOperation = function (account, transaction, fee) {
52
+ var type = "OUT";
53
+ var value = new bignumber_js_1.BigNumber(transaction.amount).plus(fee);
54
+ var operation = {
55
+ id: (0, operation_1.encodeOperationId)(account.id, "", type),
56
+ hash: "",
57
+ type: type,
58
+ value: value,
59
+ fee: fee,
60
+ blockHash: null,
61
+ blockHeight: null,
62
+ senders: [account.freshAddress],
63
+ recipients: [transaction.recipient].filter(Boolean),
64
+ accountId: account.id,
65
+ date: new Date(),
66
+ extra: { additionalField: transaction.amount }
67
+ };
68
+ return operation;
69
+ };
70
+ var trimLeading0x = function (input) {
71
+ return input.startsWith("0x") ? input.slice(2) : input;
72
+ };
73
+ var parseSigningResponse = function (response, chainId) {
74
+ // EIP155
75
+ var sigV = parseInt(response.v, 16);
76
+ var eip155V = chainId * 2 + 35;
77
+ if (sigV !== eip155V && (sigV & eip155V) !== sigV) {
78
+ eip155V += 1;
79
+ }
80
+ return {
81
+ s: Buffer.from(response.s, "hex"),
82
+ v: eip155V,
83
+ r: Buffer.from(response.r, "hex")
84
+ };
85
+ };
86
+ /**
87
+ * Sign Transaction with Ledger hardware
88
+ */
89
+ var signOperation = function (_a) {
90
+ var account = _a.account, deviceId = _a.deviceId, transaction = _a.transaction;
91
+ return (0, deviceAccess_1.withDevice)(deviceId)(function (transport) {
92
+ return new rxjs_1.Observable(function (o) {
93
+ var cancelled;
94
+ function main() {
95
+ var _a;
96
+ return __awaiter(this, void 0, void 0, function () {
97
+ var celo, unsignedTransaction, chainId, to, rlpEncodedTransaction, tokenInfo, response, signature, encodedTransaction, operation;
98
+ return __generator(this, function (_b) {
99
+ switch (_b.label) {
100
+ case 0:
101
+ if (!transaction.fees) {
102
+ throw new errors_1.FeeNotLoaded();
103
+ }
104
+ celo = new hw_app_celo_1.CeloApp(transport);
105
+ return [4 /*yield*/, (0, js_buildTransaction_1["default"])(account, transaction)];
106
+ case 1:
107
+ unsignedTransaction = _b.sent();
108
+ chainId = unsignedTransaction.chainId, to = unsignedTransaction.to;
109
+ rlpEncodedTransaction = (0, wallet_base_1.rlpEncodedTx)(unsignedTransaction);
110
+ tokenInfo = (0, tokens_1.tokenInfoByAddressAndChainId)(to, chainId);
111
+ if (!tokenInfo) return [3 /*break*/, 3];
112
+ return [4 /*yield*/, celo.provideERC20TokenInformation(tokenInfo)];
113
+ case 2:
114
+ _b.sent();
115
+ _b.label = 3;
116
+ case 3:
117
+ o.next({ type: "device-signature-requested" });
118
+ return [4 /*yield*/, celo.signTransaction(account.freshAddressPath, trimLeading0x(rlpEncodedTransaction.rlpEncode))];
119
+ case 4:
120
+ response = _b.sent();
121
+ if (cancelled)
122
+ return [2 /*return*/];
123
+ signature = parseSigningResponse(response, chainId);
124
+ o.next({ type: "device-signature-granted" });
125
+ return [4 /*yield*/, (0, wallet_base_1.encodeTransaction)(rlpEncodedTransaction, signature)];
126
+ case 5:
127
+ encodedTransaction = _b.sent();
128
+ operation = buildOptimisticOperation(account, transaction, (_a = transaction.fees) !== null && _a !== void 0 ? _a : new bignumber_js_1.BigNumber(0));
129
+ o.next({
130
+ type: "signed",
131
+ signedOperation: {
132
+ operation: operation,
133
+ signature: encodedTransaction.raw,
134
+ expirationDate: null
135
+ }
136
+ });
137
+ return [2 /*return*/];
138
+ }
139
+ });
140
+ });
141
+ }
142
+ main().then(function () { return o.complete(); }, function (e) { return o.error(e); });
143
+ return function () {
144
+ cancelled = true;
145
+ };
146
+ });
147
+ });
148
+ };
149
+ exports["default"] = signOperation;
150
+ //# sourceMappingURL=js-signOperation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-signOperation.js","sourceRoot":"","sources":["../../../src/families/celo/js-signOperation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { Account } from "../../types";
2
+ export declare const scanAccounts: (arg0: {
3
+ currency: import("@ledgerhq/cryptoassets/lib/types").CryptoCurrency;
4
+ deviceId: string;
5
+ scheme?: "" | "ethM" | "ethMM" | "bch_on_bitcoin_segwit" | "legacy_on_bch" | "vertcoin_128" | "vertcoin_128_segwit" | "etcM" | "aeternity" | "tezbox" | "tezosbip44h" | "galleonL" | "tezboxL" | "taproot" | "native_segwit" | "segwit" | "segwit_on_legacy" | "legacy_on_segwit" | "legacy_on_native_segwit" | "segwit_unsplit" | "sep5" | "unsplit" | "polkadotbip44" | "filecoin" | "solanaMain" | "solanaSub" | null | undefined;
6
+ syncConfig: import("../../types").SyncConfig;
7
+ preferredNewAccountScheme?: "" | "ethM" | "ethMM" | "bch_on_bitcoin_segwit" | "legacy_on_bch" | "vertcoin_128" | "vertcoin_128_segwit" | "etcM" | "aeternity" | "tezbox" | "tezosbip44h" | "galleonL" | "tezboxL" | "taproot" | "native_segwit" | "segwit" | "segwit_on_legacy" | "legacy_on_segwit" | "legacy_on_native_segwit" | "segwit_unsplit" | "sep5" | "unsplit" | "polkadotbip44" | "filecoin" | "solanaMain" | "solanaSub" | undefined;
8
+ }) => import("rxjs").Observable<import("../../types").ScanAccountEvent>;
9
+ export declare const sync: (initialAccount: Account, syncConfig: import("../../types").SyncConfig) => import("rxjs").Observable<(arg0: Account) => Account>;
10
+ //# sourceMappingURL=js-synchronisation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-synchronisation.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-synchronisation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAsC3C,eAAO,MAAM,YAAY;;;;;;uEAAoC,CAAC;AAC9D,eAAO,MAAM,IAAI,kIAAsC,CAAC"}