@trezor/connect 10.0.0-beta.1 → 10.0.0-beta.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 (429) hide show
  1. package/CHANGELOG.md +56 -9
  2. package/README.md +4 -2
  3. package/lib/exports.d.ts +1 -3
  4. package/lib/exports.js +1 -3
  5. package/lib/impl/core-in-module-native.d.ts +7 -0
  6. package/lib/impl/core-in-module-native.js +11 -0
  7. package/lib/impl/core-in-module-node.d.ts +8 -0
  8. package/lib/impl/core-in-module-node.js +12 -0
  9. package/lib/impl/core-in-module-web.d.ts +9 -0
  10. package/lib/impl/core-in-module-web.js +26 -0
  11. package/lib/index.browser.js +2 -26
  12. package/lib/index.js +1 -11
  13. package/lib/index.native.d.ts +4 -0
  14. package/lib/index.native.js +5 -0
  15. package/package.json +16 -67
  16. package/lib/api/applyFlags.d.ts +0 -20
  17. package/lib/api/applyFlags.js +0 -38
  18. package/lib/api/applySettings.d.ts +0 -20
  19. package/lib/api/applySettings.js +0 -57
  20. package/lib/api/authenticateDevice.d.ts +0 -25
  21. package/lib/api/authenticateDevice.js +0 -195
  22. package/lib/api/authorizeCoinjoin.d.ts +0 -11
  23. package/lib/api/authorizeCoinjoin.js +0 -44
  24. package/lib/api/backupDevice.d.ts +0 -19
  25. package/lib/api/backupDevice.js +0 -39
  26. package/lib/api/bitcoin/TransactionComposer.d.ts +0 -46
  27. package/lib/api/bitcoin/TransactionComposer.js +0 -147
  28. package/lib/api/bitcoin/createPendingTx.d.ts +0 -37
  29. package/lib/api/bitcoin/createPendingTx.js +0 -55
  30. package/lib/api/bitcoin/enhanceSignTx.d.ts +0 -2
  31. package/lib/api/bitcoin/enhanceSignTx.js +0 -23
  32. package/lib/api/bitcoin/index.d.ts +0 -9
  33. package/lib/api/bitcoin/index.js +0 -9
  34. package/lib/api/bitcoin/inputs.d.ts +0 -4
  35. package/lib/api/bitcoin/inputs.js +0 -63
  36. package/lib/api/bitcoin/outputs.d.ts +0 -5
  37. package/lib/api/bitcoin/outputs.js +0 -128
  38. package/lib/api/bitcoin/refTx.d.ts +0 -23
  39. package/lib/api/bitcoin/refTx.js +0 -249
  40. package/lib/api/bitcoin/signtx.d.ts +0 -30
  41. package/lib/api/bitcoin/signtx.js +0 -229
  42. package/lib/api/bitcoin/signtxLegacy.d.ts +0 -10
  43. package/lib/api/bitcoin/signtxLegacy.js +0 -186
  44. package/lib/api/bitcoin/signtxVerify.d.ts +0 -12
  45. package/lib/api/bitcoin/signtxVerify.js +0 -95
  46. package/lib/api/bitcoin/transactionBytes.d.ts +0 -3
  47. package/lib/api/bitcoin/transactionBytes.js +0 -65
  48. package/lib/api/bleUnpair.d.ts +0 -11
  49. package/lib/api/bleUnpair.js +0 -37
  50. package/lib/api/blockchainDisconnect.d.ts +0 -16
  51. package/lib/api/blockchainDisconnect.js +0 -37
  52. package/lib/api/blockchainEstimateFee.d.ts +0 -16
  53. package/lib/api/blockchainEstimateFee.js +0 -102
  54. package/lib/api/blockchainEvmRpcCall.d.ts +0 -19
  55. package/lib/api/blockchainEvmRpcCall.js +0 -57
  56. package/lib/api/blockchainGetAccountBalanceHistory.d.ts +0 -16
  57. package/lib/api/blockchainGetAccountBalanceHistory.js +0 -60
  58. package/lib/api/blockchainGetContractInfo.d.ts +0 -16
  59. package/lib/api/blockchainGetContractInfo.js +0 -46
  60. package/lib/api/blockchainGetCurrentFiatRates.d.ts +0 -20
  61. package/lib/api/blockchainGetCurrentFiatRates.js +0 -49
  62. package/lib/api/blockchainGetFiatRatesForTimestamps.d.ts +0 -23
  63. package/lib/api/blockchainGetFiatRatesForTimestamps.js +0 -55
  64. package/lib/api/blockchainGetInfo.d.ts +0 -15
  65. package/lib/api/blockchainGetInfo.js +0 -37
  66. package/lib/api/blockchainGetTransactions.d.ts +0 -18
  67. package/lib/api/blockchainGetTransactions.js +0 -47
  68. package/lib/api/blockchainSetCustomBackend.d.ts +0 -17
  69. package/lib/api/blockchainSetCustomBackend.js +0 -43
  70. package/lib/api/blockchainSubscribe.d.ts +0 -19
  71. package/lib/api/blockchainSubscribe.js +0 -66
  72. package/lib/api/blockchainSubscribeFiatRates.d.ts +0 -19
  73. package/lib/api/blockchainSubscribeFiatRates.js +0 -43
  74. package/lib/api/blockchainUnsubscribe.d.ts +0 -19
  75. package/lib/api/blockchainUnsubscribe.js +0 -66
  76. package/lib/api/blockchainUnsubscribeFiatRates.d.ts +0 -17
  77. package/lib/api/blockchainUnsubscribeFiatRates.js +0 -37
  78. package/lib/api/blockchainValidateEvmRpcUrl.d.ts +0 -17
  79. package/lib/api/blockchainValidateEvmRpcUrl.js +0 -54
  80. package/lib/api/cancelCoinjoinAuthorization.d.ts +0 -11
  81. package/lib/api/cancelCoinjoinAuthorization.js +0 -33
  82. package/lib/api/cardano/api/cardanoComposeTransaction.d.ts +0 -10
  83. package/lib/api/cardano/api/cardanoComposeTransaction.js +0 -84
  84. package/lib/api/cardano/api/cardanoGetAddress.d.ts +0 -34
  85. package/lib/api/cardano/api/cardanoGetAddress.js +0 -130
  86. package/lib/api/cardano/api/cardanoGetNativeScriptHash.d.ts +0 -12
  87. package/lib/api/cardano/api/cardanoGetNativeScriptHash.js +0 -66
  88. package/lib/api/cardano/api/cardanoGetPublicKey.d.ts +0 -22
  89. package/lib/api/cardano/api/cardanoGetPublicKey.js +0 -92
  90. package/lib/api/cardano/api/cardanoSignMessage.d.ts +0 -22
  91. package/lib/api/cardano/api/cardanoSignMessage.js +0 -90
  92. package/lib/api/cardano/api/cardanoSignTransaction.d.ts +0 -81
  93. package/lib/api/cardano/api/cardanoSignTransaction.js +0 -301
  94. package/lib/api/cardano/api/index.d.ts +0 -6
  95. package/lib/api/cardano/api/index.js +0 -6
  96. package/lib/api/cardano/cardanoAddressParameters.d.ts +0 -6
  97. package/lib/api/cardano/cardanoAddressParameters.js +0 -79
  98. package/lib/api/cardano/cardanoAuxiliaryData.d.ts +0 -4
  99. package/lib/api/cardano/cardanoAuxiliaryData.js +0 -74
  100. package/lib/api/cardano/cardanoCertificate.d.ts +0 -13
  101. package/lib/api/cardano/cardanoCertificate.js +0 -142
  102. package/lib/api/cardano/cardanoInputs.d.ts +0 -25
  103. package/lib/api/cardano/cardanoInputs.js +0 -39
  104. package/lib/api/cardano/cardanoOutputs.d.ts +0 -40
  105. package/lib/api/cardano/cardanoOutputs.js +0 -70
  106. package/lib/api/cardano/cardanoTokenBundle.d.ts +0 -12
  107. package/lib/api/cardano/cardanoTokenBundle.js +0 -21
  108. package/lib/api/cardano/cardanoUtils.d.ts +0 -17
  109. package/lib/api/cardano/cardanoUtils.js +0 -100
  110. package/lib/api/cardano/cardanoWitnesses.d.ts +0 -4
  111. package/lib/api/cardano/cardanoWitnesses.js +0 -47
  112. package/lib/api/changeLanguage.d.ts +0 -18
  113. package/lib/api/changeLanguage.js +0 -49
  114. package/lib/api/changePin.d.ts +0 -11
  115. package/lib/api/changePin.js +0 -27
  116. package/lib/api/changeWipeCode.d.ts +0 -11
  117. package/lib/api/changeWipeCode.js +0 -29
  118. package/lib/api/cipherKeyValue.d.ts +0 -17
  119. package/lib/api/cipherKeyValue.js +0 -58
  120. package/lib/api/common/AbstractMiscGetAddress.d.ts +0 -37
  121. package/lib/api/common/AbstractMiscGetAddress.js +0 -126
  122. package/lib/api/common/Discovery.d.ts +0 -33
  123. package/lib/api/common/Discovery.js +0 -119
  124. package/lib/api/common/paramsValidator.d.ts +0 -24
  125. package/lib/api/common/paramsValidator.js +0 -136
  126. package/lib/api/common/requestExistingAccounts.d.ts +0 -14
  127. package/lib/api/common/requestExistingAccounts.js +0 -20
  128. package/lib/api/composeTransaction.d.ts +0 -36
  129. package/lib/api/composeTransaction.js +0 -404
  130. package/lib/api/discoverAccounts.d.ts +0 -40
  131. package/lib/api/discoverAccounts.js +0 -360
  132. package/lib/api/ethereum/api/ethereumGetAddress.d.ts +0 -30
  133. package/lib/api/ethereum/api/ethereumGetAddress.js +0 -150
  134. package/lib/api/ethereum/api/ethereumGetPublicKey.d.ts +0 -52
  135. package/lib/api/ethereum/api/ethereumGetPublicKey.js +0 -100
  136. package/lib/api/ethereum/api/ethereumSignMessage.d.ts +0 -27
  137. package/lib/api/ethereum/api/ethereumSignMessage.js +0 -64
  138. package/lib/api/ethereum/api/ethereumSignTransaction.d.ts +0 -83
  139. package/lib/api/ethereum/api/ethereumSignTransaction.js +0 -148
  140. package/lib/api/ethereum/api/ethereumSignTypedData.d.ts +0 -117
  141. package/lib/api/ethereum/api/ethereumSignTypedData.js +0 -203
  142. package/lib/api/ethereum/api/ethereumVerifyMessage.d.ts +0 -12
  143. package/lib/api/ethereum/api/ethereumVerifyMessage.js +0 -35
  144. package/lib/api/ethereum/api/index.d.ts +0 -6
  145. package/lib/api/ethereum/api/index.js +0 -6
  146. package/lib/api/ethereum/ethereumDefinitions.d.ts +0 -53
  147. package/lib/api/ethereum/ethereumDefinitions.js +0 -135
  148. package/lib/api/ethereum/ethereumSignTx.d.ts +0 -16
  149. package/lib/api/ethereum/ethereumSignTx.js +0 -144
  150. package/lib/api/ethereum/ethereumSignTypedData.d.ts +0 -32
  151. package/lib/api/ethereum/ethereumSignTypedData.js +0 -175
  152. package/lib/api/evoluGetDelegatedIdentityKey.d.ts +0 -14
  153. package/lib/api/evoluGetDelegatedIdentityKey.js +0 -29
  154. package/lib/api/evoluGetNode.d.ts +0 -13
  155. package/lib/api/evoluGetNode.js +0 -29
  156. package/lib/api/evoluSignRegistrationRequest.d.ts +0 -16
  157. package/lib/api/evoluSignRegistrationRequest.js +0 -33
  158. package/lib/api/firmware/calculateFirmwareHash.d.ts +0 -18
  159. package/lib/api/firmware/calculateFirmwareHash.js +0 -56
  160. package/lib/api/firmware/calculateXPubHash.d.ts +0 -14
  161. package/lib/api/firmware/calculateXPubHash.js +0 -16
  162. package/lib/api/firmware/getBinary.d.ts +0 -14
  163. package/lib/api/firmware/getBinary.js +0 -33
  164. package/lib/api/firmware/index.d.ts +0 -6
  165. package/lib/api/firmware/index.js +0 -6
  166. package/lib/api/firmware/modifyFirmware.d.ts +0 -3
  167. package/lib/api/firmware/modifyFirmware.js +0 -13
  168. package/lib/api/firmware/parseFirmwareHeaders.d.ts +0 -4
  169. package/lib/api/firmware/parseFirmwareHeaders.js +0 -26
  170. package/lib/api/firmware/uploadFirmware.d.ts +0 -27
  171. package/lib/api/firmware/uploadFirmware.js +0 -99
  172. package/lib/api/firmware/verifyEntropy.d.ts +0 -25
  173. package/lib/api/firmware/verifyEntropy.js +0 -110
  174. package/lib/api/getAccountInfo.d.ts +0 -21
  175. package/lib/api/getAccountInfo.js +0 -253
  176. package/lib/api/getAddress.d.ts +0 -45
  177. package/lib/api/getAddress.js +0 -153
  178. package/lib/api/getCoinInfo.d.ts +0 -148
  179. package/lib/api/getCoinInfo.js +0 -25
  180. package/lib/api/getDeviceState.d.ts +0 -8
  181. package/lib/api/getDeviceState.js +0 -18
  182. package/lib/api/getFeatures.d.ts +0 -71
  183. package/lib/api/getFeatures.js +0 -22
  184. package/lib/api/getFirmwareHash.d.ts +0 -11
  185. package/lib/api/getFirmwareHash.js +0 -29
  186. package/lib/api/getNonce.d.ts +0 -10
  187. package/lib/api/getNonce.js +0 -18
  188. package/lib/api/getOwnershipId.d.ts +0 -17
  189. package/lib/api/getOwnershipId.js +0 -88
  190. package/lib/api/getOwnershipProof.d.ts +0 -17
  191. package/lib/api/getOwnershipProof.js +0 -95
  192. package/lib/api/getPublicKey.d.ts +0 -54
  193. package/lib/api/getPublicKey.js +0 -106
  194. package/lib/api/getSettings.d.ts +0 -24
  195. package/lib/api/getSettings.js +0 -21
  196. package/lib/api/index.d.ts +0 -62
  197. package/lib/api/index.js +0 -62
  198. package/lib/api/loadDevice.d.ts +0 -16
  199. package/lib/api/loadDevice.js +0 -46
  200. package/lib/api/monero/api/index.d.ts +0 -4
  201. package/lib/api/monero/api/index.js +0 -4
  202. package/lib/api/monero/api/moneroGetAddress.d.ts +0 -32
  203. package/lib/api/monero/api/moneroGetAddress.js +0 -117
  204. package/lib/api/monero/api/moneroGetWatchKey.d.ts +0 -14
  205. package/lib/api/monero/api/moneroGetWatchKey.js +0 -45
  206. package/lib/api/monero/api/moneroKeyImageSync.d.ts +0 -17
  207. package/lib/api/monero/api/moneroKeyImageSync.js +0 -128
  208. package/lib/api/monero/api/moneroSignTransaction.d.ts +0 -17
  209. package/lib/api/monero/api/moneroSignTransaction.js +0 -218
  210. package/lib/api/nostr/nostrGetPublicKey.d.ts +0 -15
  211. package/lib/api/nostr/nostrGetPublicKey.js +0 -38
  212. package/lib/api/nostr/nostrSignEvent.d.ts +0 -13
  213. package/lib/api/nostr/nostrSignEvent.js +0 -36
  214. package/lib/api/pingDevice.d.ts +0 -11
  215. package/lib/api/pingDevice.js +0 -29
  216. package/lib/api/pushTransaction.d.ts +0 -19
  217. package/lib/api/pushTransaction.js +0 -39
  218. package/lib/api/recoveryDevice.d.ts +0 -20
  219. package/lib/api/recoveryDevice.js +0 -52
  220. package/lib/api/requestLogin.d.ts +0 -14
  221. package/lib/api/requestLogin.js +0 -53
  222. package/lib/api/resetDevice.d.ts +0 -22
  223. package/lib/api/resetDevice.js +0 -133
  224. package/lib/api/ripple/api/index.d.ts +0 -2
  225. package/lib/api/ripple/api/index.js +0 -2
  226. package/lib/api/ripple/api/rippleGetAddress.d.ts +0 -17
  227. package/lib/api/ripple/api/rippleGetAddress.js +0 -22
  228. package/lib/api/ripple/api/rippleSignTransaction.d.ts +0 -13
  229. package/lib/api/ripple/api/rippleSignTransaction.js +0 -52
  230. package/lib/api/selectAccount.d.ts +0 -15
  231. package/lib/api/selectAccount.js +0 -42
  232. package/lib/api/setBrightness.d.ts +0 -12
  233. package/lib/api/setBrightness.js +0 -28
  234. package/lib/api/setBusy.d.ts +0 -11
  235. package/lib/api/setBusy.js +0 -31
  236. package/lib/api/showDeviceTutorial.d.ts +0 -11
  237. package/lib/api/showDeviceTutorial.js +0 -21
  238. package/lib/api/signMessage.d.ts +0 -25
  239. package/lib/api/signMessage.js +0 -75
  240. package/lib/api/signTransaction.d.ts +0 -199
  241. package/lib/api/signTransaction.js +0 -331
  242. package/lib/api/solana/api/index.d.ts +0 -4
  243. package/lib/api/solana/api/index.js +0 -4
  244. package/lib/api/solana/api/solanaComposeTransaction.d.ts +0 -33
  245. package/lib/api/solana/api/solanaComposeTransaction.js +0 -73
  246. package/lib/api/solana/api/solanaGetAddress.d.ts +0 -17
  247. package/lib/api/solana/api/solanaGetAddress.js +0 -22
  248. package/lib/api/solana/api/solanaGetPublicKey.d.ts +0 -32
  249. package/lib/api/solana/api/solanaGetPublicKey.js +0 -86
  250. package/lib/api/solana/api/solanaSignTransaction.d.ts +0 -41
  251. package/lib/api/solana/api/solanaSignTransaction.js +0 -204
  252. package/lib/api/solana/solanaDefinitions.d.ts +0 -9
  253. package/lib/api/solana/solanaDefinitions.js +0 -33
  254. package/lib/api/stellar/api/index.d.ts +0 -2
  255. package/lib/api/stellar/api/index.js +0 -2
  256. package/lib/api/stellar/api/stellarGetAddress.d.ts +0 -17
  257. package/lib/api/stellar/api/stellarGetAddress.js +0 -22
  258. package/lib/api/stellar/api/stellarSignTransaction.d.ts +0 -20
  259. package/lib/api/stellar/api/stellarSignTransaction.js +0 -65
  260. package/lib/api/stellar/stellarSignTx.d.ts +0 -7
  261. package/lib/api/stellar/stellarSignTx.js +0 -183
  262. package/lib/api/telemetryGet.d.ts +0 -14
  263. package/lib/api/telemetryGet.js +0 -26
  264. package/lib/api/tezos/api/index.d.ts +0 -3
  265. package/lib/api/tezos/api/index.js +0 -3
  266. package/lib/api/tezos/api/tezosGetAddress.d.ts +0 -17
  267. package/lib/api/tezos/api/tezosGetAddress.js +0 -22
  268. package/lib/api/tezos/api/tezosGetPublicKey.d.ts +0 -28
  269. package/lib/api/tezos/api/tezosGetPublicKey.js +0 -84
  270. package/lib/api/tezos/api/tezosSignTransaction.d.ts +0 -14
  271. package/lib/api/tezos/api/tezosSignTransaction.js +0 -30
  272. package/lib/api/tezos/tezosSignTx.d.ts +0 -71
  273. package/lib/api/tezos/tezosSignTx.js +0 -204
  274. package/lib/api/thpGetCredentials.d.ts +0 -13
  275. package/lib/api/thpGetCredentials.js +0 -30
  276. package/lib/api/thpRemoveCredentials.d.ts +0 -15
  277. package/lib/api/thpRemoveCredentials.js +0 -44
  278. package/lib/api/tron/api/index.d.ts +0 -3
  279. package/lib/api/tron/api/index.js +0 -3
  280. package/lib/api/tron/api/tronComposeTransaction.d.ts +0 -17
  281. package/lib/api/tron/api/tronComposeTransaction.js +0 -52
  282. package/lib/api/tron/api/tronGetAddress.d.ts +0 -17
  283. package/lib/api/tron/api/tronGetAddress.js +0 -22
  284. package/lib/api/tron/api/tronSignTransaction.d.ts +0 -20
  285. package/lib/api/tron/api/tronSignTransaction.js +0 -137
  286. package/lib/api/tron/tronEncode.d.ts +0 -11
  287. package/lib/api/tron/tronEncode.js +0 -157
  288. package/lib/api/tron/tronProtobuf.d.ts +0 -5
  289. package/lib/api/tron/tronProtobuf.js +0 -28
  290. package/lib/api/unlockPath.d.ts +0 -12
  291. package/lib/api/unlockPath.js +0 -33
  292. package/lib/api/verifyMessage.d.ts +0 -16
  293. package/lib/api/verifyMessage.js +0 -46
  294. package/lib/api/wipeDevice.d.ts +0 -21
  295. package/lib/api/wipeDevice.js +0 -49
  296. package/lib/backend/BackendManager.d.ts +0 -30
  297. package/lib/backend/BackendManager.js +0 -145
  298. package/lib/backend/Blockchain.d.ts +0 -81
  299. package/lib/backend/Blockchain.js +0 -235
  300. package/lib/backend/BlockchainLink.d.ts +0 -10
  301. package/lib/backend/BlockchainLink.js +0 -19
  302. package/lib/backend/fees/BitcoinFeeLevels.d.ts +0 -19
  303. package/lib/backend/fees/BitcoinFeeLevels.js +0 -44
  304. package/lib/backend/fees/EthereumFeeLevels.d.ts +0 -17
  305. package/lib/backend/fees/EthereumFeeLevels.js +0 -63
  306. package/lib/backend/fees/MiscFeeLevels.d.ts +0 -18
  307. package/lib/backend/fees/MiscFeeLevels.js +0 -30
  308. package/lib/backend/fees/index.d.ts +0 -5
  309. package/lib/backend/fees/index.js +0 -31
  310. package/lib/core/AbstractMethod.d.ts +0 -63
  311. package/lib/core/AbstractMethod.js +0 -189
  312. package/lib/core/index.d.ts +0 -29
  313. package/lib/core/index.js +0 -805
  314. package/lib/core/method.d.ts +0 -3
  315. package/lib/core/method.js +0 -19
  316. package/lib/core/method.native.d.ts +0 -2
  317. package/lib/core/method.native.js +0 -29
  318. package/lib/core/onCallFirmwareUpdate.d.ts +0 -42
  319. package/lib/core/onCallFirmwareUpdate.js +0 -436
  320. package/lib/data/coinInfo.d.ts +0 -101
  321. package/lib/data/coinInfo.js +0 -195
  322. package/lib/data/config.d.ts +0 -8
  323. package/lib/data/config.js +0 -273
  324. package/lib/data/defaultFeeLevels.d.ts +0 -18
  325. package/lib/data/defaultFeeLevels.js +0 -200
  326. package/lib/data/enabledNetworksStore.d.ts +0 -5
  327. package/lib/data/enabledNetworksStore.js +0 -20
  328. package/lib/data/firmwareInfo.d.ts +0 -55
  329. package/lib/data/firmwareInfo.js +0 -413
  330. package/lib/data/firmwareReleaseStore.d.ts +0 -10
  331. package/lib/data/firmwareReleaseStore.js +0 -16
  332. package/lib/data/localFirmwareStore.d.ts +0 -3
  333. package/lib/data/localFirmwareStore.js +0 -8
  334. package/lib/data/protobufLoader.d.ts +0 -1
  335. package/lib/data/protobufLoader.js +0 -30
  336. package/lib/data/settingsStore.d.ts +0 -6
  337. package/lib/data/settingsStore.js +0 -21
  338. package/lib/device/Device.d.ts +0 -259
  339. package/lib/device/Device.js +0 -765
  340. package/lib/device/DeviceCommands.d.ts +0 -87
  341. package/lib/device/DeviceCommands.js +0 -248
  342. package/lib/device/DeviceCurrentSession.d.ts +0 -750
  343. package/lib/device/DeviceCurrentSession.js +0 -239
  344. package/lib/device/DeviceList.d.ts +0 -75
  345. package/lib/device/DeviceList.js +0 -243
  346. package/lib/device/TransportList.d.ts +0 -3
  347. package/lib/device/TransportList.js +0 -13
  348. package/lib/device/TransportManager.d.ts +0 -33
  349. package/lib/device/TransportManager.js +0 -144
  350. package/lib/device/calculateRevisionForDevice.d.ts +0 -10
  351. package/lib/device/calculateRevisionForDevice.js +0 -19
  352. package/lib/device/checkFirmwareRevision.d.ts +0 -22
  353. package/lib/device/checkFirmwareRevision.js +0 -104
  354. package/lib/device/resolveDescriptorForTaproot.d.ts +0 -17
  355. package/lib/device/resolveDescriptorForTaproot.js +0 -27
  356. package/lib/device/thp/handshake.d.ts +0 -3
  357. package/lib/device/thp/handshake.js +0 -100
  358. package/lib/device/thp/index.d.ts +0 -5
  359. package/lib/device/thp/index.js +0 -65
  360. package/lib/device/thp/pairing.d.ts +0 -16
  361. package/lib/device/thp/pairing.js +0 -242
  362. package/lib/device/thp/session.d.ts +0 -2
  363. package/lib/device/thp/session.js +0 -27
  364. package/lib/device/thp/thpCall.d.ts +0 -31
  365. package/lib/device/thp/thpCall.js +0 -58
  366. package/lib/device/validateMessageSize.d.ts +0 -2
  367. package/lib/device/validateMessageSize.js +0 -9
  368. package/lib/device/workflow/changeLanguage.d.ts +0 -18
  369. package/lib/device/workflow/changeLanguage.js +0 -62
  370. package/lib/device/workflow/checkFirmwareHash.d.ts +0 -12
  371. package/lib/device/workflow/checkFirmwareHash.js +0 -86
  372. package/lib/device/workflow/checkFirmwareHashWithRetries.d.ts +0 -8
  373. package/lib/device/workflow/checkFirmwareHashWithRetries.js +0 -36
  374. package/lib/device/workflow/handshake.d.ts +0 -13
  375. package/lib/device/workflow/handshake.js +0 -55
  376. package/lib/device/workflow/trezorPushNotification.d.ts +0 -5
  377. package/lib/device/workflow/trezorPushNotification.js +0 -73
  378. package/lib/device/workflow/validateState.d.ts +0 -2
  379. package/lib/device/workflow/validateState.js +0 -152
  380. package/lib/events/ui-promise.d.ts +0 -20
  381. package/lib/events/ui-promise.js +0 -1
  382. package/lib/impl/core-in-module.d.ts +0 -33
  383. package/lib/impl/core-in-module.js +0 -194
  384. package/lib/types/idevice.d.ts +0 -110
  385. package/lib/types/idevice.js +0 -1
  386. package/lib/types/typed-call-provider.d.ts +0 -29
  387. package/lib/types/typed-call-provider.js +0 -1
  388. package/lib/types/workflow.d.ts +0 -16
  389. package/lib/types/workflow.js +0 -1
  390. package/lib/utils/accountUtils.d.ts +0 -10
  391. package/lib/utils/accountUtils.js +0 -90
  392. package/lib/utils/addressUtils.d.ts +0 -2
  393. package/lib/utils/addressUtils.js +0 -24
  394. package/lib/utils/assetUtils.d.ts +0 -13
  395. package/lib/utils/assetUtils.js +0 -55
  396. package/lib/utils/assets.browser.d.ts +0 -1
  397. package/lib/utils/assets.browser.js +0 -1
  398. package/lib/utils/assets.d.ts +0 -2
  399. package/lib/utils/assets.js +0 -13
  400. package/lib/utils/assets.native.d.ts +0 -2
  401. package/lib/utils/assets.native.js +0 -23
  402. package/lib/utils/assetsTypes.d.ts +0 -5
  403. package/lib/utils/assetsTypes.js +0 -1
  404. package/lib/utils/buildOutputDescriptor.d.ts +0 -20
  405. package/lib/utils/buildOutputDescriptor.js +0 -67
  406. package/lib/utils/deviceFeaturesUtils.d.ts +0 -7
  407. package/lib/utils/deviceFeaturesUtils.js +0 -109
  408. package/lib/utils/ethereumUtils.d.ts +0 -3
  409. package/lib/utils/ethereumUtils.js +0 -7
  410. package/lib/utils/firmwareReleaseConfigUtils.d.ts +0 -19
  411. package/lib/utils/firmwareReleaseConfigUtils.js +0 -131
  412. package/lib/utils/firmwareUtils.d.ts +0 -15
  413. package/lib/utils/firmwareUtils.js +0 -57
  414. package/lib/utils/formatUtils.d.ts +0 -13
  415. package/lib/utils/formatUtils.js +0 -45
  416. package/lib/utils/hdnodeUtils.d.ts +0 -6
  417. package/lib/utils/hdnodeUtils.js +0 -62
  418. package/lib/utils/pathUtils.d.ts +0 -1
  419. package/lib/utils/pathUtils.js +0 -1
  420. package/lib/utils/paymentRequest.d.ts +0 -8
  421. package/lib/utils/paymentRequest.js +0 -25
  422. package/lib/utils/uiPromiseManager.d.ts +0 -8
  423. package/lib/utils/uiPromiseManager.js +0 -51
  424. package/lib/workers/workers.browser.d.ts +0 -10
  425. package/lib/workers/workers.browser.js +0 -16
  426. package/lib/workers/workers.d.ts +0 -10
  427. package/lib/workers/workers.js +0 -8
  428. package/lib/workers/workers.native.d.ts +0 -7
  429. package/lib/workers/workers.native.js +0 -7
@@ -1,204 +0,0 @@
1
- import { sha256 } from "@noble/hashes/sha2.js";
2
- import { base58check as createBase58check } from "@scure/base";
3
- import { TezosOperation } from "@trezor/connect-common";
4
- import { ERRORS } from "@trezor/connect-common/lib/constants/index.js";
5
- import { Assert } from "@trezor/schema-utils";
6
- const bs58check = createBase58check(sha256);
7
- const PREFIX = {
8
- B: new Uint8Array([1, 52]),
9
- tz1: new Uint8Array([6, 161, 159]),
10
- tz2: new Uint8Array([6, 161, 161]),
11
- tz3: new Uint8Array([6, 161, 164]),
12
- KT1: new Uint8Array([2, 90, 121]),
13
- edpk: new Uint8Array([13, 15, 37, 217]),
14
- sppk: new Uint8Array([3, 254, 226, 86]),
15
- p2pk: new Uint8Array([3, 178, 139, 127])
16
- };
17
- const bs58checkDecode = (prefix, enc) => bs58check.decode(enc).slice(prefix.length);
18
- const concatArray = (first, second) => {
19
- const result = new Uint8Array(first.length + second.length);
20
- result.set(first);
21
- result.set(second, first.length);
22
- return result;
23
- };
24
- const publicKeyHash2buffer = publicKeyHash => {
25
- switch (publicKeyHash.substring(0, 3)) {
26
- case 'tz1':
27
- return {
28
- originated: 0,
29
- hash: concatArray(new Uint8Array([0]), bs58checkDecode(PREFIX.tz1, publicKeyHash))
30
- };
31
- case 'tz2':
32
- return {
33
- originated: 0,
34
- hash: concatArray(new Uint8Array([1]), bs58checkDecode(PREFIX.tz2, publicKeyHash))
35
- };
36
- case 'tz3':
37
- return {
38
- originated: 0,
39
- hash: concatArray(new Uint8Array([2]), bs58checkDecode(PREFIX.tz3, publicKeyHash))
40
- };
41
- case 'KT1':
42
- return {
43
- originated: 1,
44
- hash: concatArray(bs58checkDecode(PREFIX.KT1, publicKeyHash), new Uint8Array([0]))
45
- };
46
- default:
47
- throw ERRORS.TypedError('Method_InvalidParameter', 'Wrong Tezos publicKeyHash address');
48
- }
49
- };
50
- const publicKey2buffer = publicKey => {
51
- switch (publicKey.substring(0, 4)) {
52
- case 'edpk':
53
- return concatArray(new Uint8Array([0]), bs58checkDecode(PREFIX.edpk, publicKey));
54
- case 'sppk':
55
- return concatArray(new Uint8Array([1]), bs58checkDecode(PREFIX.sppk, publicKey));
56
- case 'p2pk':
57
- return concatArray(new Uint8Array([2]), bs58checkDecode(PREFIX.p2pk, publicKey));
58
- default:
59
- throw ERRORS.TypedError('Method_InvalidParameter', 'Wrong Tezos publicKey');
60
- }
61
- };
62
- export const createTx = (address_n, branch, operation, chunkify) => {
63
- let message = {
64
- address_n,
65
- branch: bs58checkDecode(PREFIX.B, branch),
66
- chunkify: typeof chunkify === 'boolean' ? chunkify : false
67
- };
68
- Assert(TezosOperation, operation);
69
- if (operation.reveal) {
70
- const {
71
- reveal
72
- } = operation;
73
- message = {
74
- ...message,
75
- reveal: {
76
- source: publicKeyHash2buffer(reveal.source).hash,
77
- public_key: publicKey2buffer(reveal.public_key),
78
- fee: reveal.fee,
79
- counter: reveal.counter,
80
- gas_limit: reveal.gas_limit,
81
- storage_limit: reveal.storage_limit
82
- }
83
- };
84
- }
85
- if (operation.transaction) {
86
- const {
87
- transaction
88
- } = operation;
89
- message = {
90
- ...message,
91
- transaction: {
92
- source: publicKeyHash2buffer(transaction.source).hash,
93
- destination: {
94
- tag: publicKeyHash2buffer(transaction.destination).originated,
95
- hash: publicKeyHash2buffer(transaction.destination).hash
96
- },
97
- amount: transaction.amount,
98
- counter: transaction.counter,
99
- fee: transaction.fee,
100
- gas_limit: transaction.gas_limit,
101
- storage_limit: transaction.storage_limit
102
- }
103
- };
104
- if (Object.prototype.hasOwnProperty.call(transaction, 'parameters')) {
105
- message = {
106
- ...message,
107
- transaction: {
108
- ...message.transaction,
109
- parameters: transaction.parameters
110
- }
111
- };
112
- }
113
- if (transaction.parameters_manager) {
114
- const {
115
- parameters_manager
116
- } = transaction;
117
- if (parameters_manager.set_delegate) {
118
- message = {
119
- ...message,
120
- transaction: {
121
- ...message.transaction,
122
- parameters_manager: {
123
- set_delegate: publicKeyHash2buffer(parameters_manager.set_delegate).hash
124
- }
125
- }
126
- };
127
- }
128
- if (Object.prototype.hasOwnProperty.call(parameters_manager, 'cancel_delegate')) {
129
- message = {
130
- ...message,
131
- transaction: {
132
- ...message.transaction,
133
- parameters_manager: {
134
- cancel_delegate: true
135
- }
136
- }
137
- };
138
- }
139
- if (parameters_manager.transfer) {
140
- const {
141
- transfer
142
- } = parameters_manager;
143
- message = {
144
- ...message,
145
- transaction: {
146
- ...message.transaction,
147
- parameters_manager: {
148
- transfer: {
149
- destination: {
150
- tag: publicKeyHash2buffer(transfer.destination).originated,
151
- hash: publicKeyHash2buffer(transfer.destination).hash
152
- },
153
- amount: transfer.amount
154
- }
155
- }
156
- }
157
- };
158
- }
159
- }
160
- }
161
- if (operation.origination) {
162
- const {
163
- origination
164
- } = operation;
165
- message = {
166
- ...message,
167
- origination: {
168
- source: publicKeyHash2buffer(origination.source).hash,
169
- balance: origination.balance,
170
- fee: origination.fee,
171
- counter: origination.counter,
172
- gas_limit: origination.gas_limit,
173
- storage_limit: origination.storage_limit,
174
- script: origination.script
175
- }
176
- };
177
- if (origination.delegate) {
178
- message = {
179
- ...message,
180
- origination: {
181
- ...message.origination,
182
- delegate: publicKeyHash2buffer(origination.delegate).hash
183
- }
184
- };
185
- }
186
- }
187
- if (operation.delegation) {
188
- const {
189
- delegation
190
- } = operation;
191
- message = {
192
- ...message,
193
- delegation: {
194
- source: publicKeyHash2buffer(delegation.source).hash,
195
- delegate: publicKeyHash2buffer(delegation.delegate).hash,
196
- fee: delegation.fee,
197
- counter: delegation.counter,
198
- gas_limit: delegation.gas_limit,
199
- storage_limit: delegation.storage_limit
200
- }
201
- };
202
- }
203
- return message;
204
- };
@@ -1,13 +0,0 @@
1
- import { type PermissionRequest } from '@trezor/connect-common';
2
- import type { MethodMessage } from "../core/AbstractMethod.js";
3
- import { AbstractMethod } from "../core/AbstractMethod.js";
4
- export default class ThpGetCredentials extends AbstractMethod<'thpGetCredentials'> {
5
- constructor(message: MethodMessage<'thpGetCredentials'>);
6
- get requiredPermissions(): PermissionRequest[];
7
- run(): Promise<{
8
- autoconnect: boolean;
9
- host_static_key: string;
10
- trezor_static_public_key: string;
11
- credential: string;
12
- }>;
13
- }
@@ -1,30 +0,0 @@
1
- import { DEVICE, UI_REQUEST } from "@trezor/connect-common";
2
- import { ERRORS } from "@trezor/connect-common/lib/constants/index.js";
3
- import { AbstractMethod } from "../core/AbstractMethod.js";
4
- import * as settingsStore from "../data/settingsStore.js";
5
- import { getThpCredentials } from "../device/thp/index.js";
6
- export default class ThpGetCredentials extends AbstractMethod {
7
- constructor(message) {
8
- super(message, undefined);
9
- this.allowDeviceMode = [UI_REQUEST.INITIALIZE, UI_REQUEST.SEEDLESS];
10
- this.useDeviceState = false;
11
- }
12
- get requiredPermissions() {
13
- return [{
14
- permission: 'management'
15
- }];
16
- }
17
- async run() {
18
- const thpState = this.getDevice().getThpState();
19
- if (!thpState?.handshakeCredentials) {
20
- throw ERRORS.TypedError('Device_ThpStateMissing');
21
- }
22
- const credentials = await getThpCredentials(this.getDevice(), true);
23
- thpState.setPairingCredentials([credentials]);
24
- settingsStore.get('thp')?.knownCredentials?.push(credentials);
25
- this.getDevice().emit(DEVICE.THP_CREDENTIALS_CHANGED, {
26
- credentials
27
- });
28
- return credentials;
29
- }
30
- }
@@ -1,15 +0,0 @@
1
- import { type PermissionRequest } from '@trezor/connect-common';
2
- import type { ThpCredentials } from '@trezor/protocol';
3
- import type { MethodMessage } from "../core/AbstractMethod.js";
4
- import { AbstractMethod } from "../core/AbstractMethod.js";
5
- type Params = {
6
- credentials: ThpCredentials[];
7
- };
8
- export default class ThpRemoveCredentials extends AbstractMethod<'thpRemoveCredentials', Params> {
9
- constructor(message: MethodMessage<'thpRemoveCredentials'>);
10
- get requiredPermissions(): PermissionRequest[];
11
- run(): Promise<{
12
- message: string;
13
- }>;
14
- }
15
- export {};
@@ -1,44 +0,0 @@
1
- import { UI_REQUEST } from "@trezor/connect-common";
2
- import { AbstractMethod } from "../core/AbstractMethod.js";
3
- import * as settingsStore from "../data/settingsStore.js";
4
- export default class ThpRemoveCredentials extends AbstractMethod {
5
- constructor(message) {
6
- const params = {
7
- credentials: message.payload.credentials || []
8
- };
9
- super(message, params);
10
- this.useDevice = message.payload.device !== undefined;
11
- this.allowDeviceMode = [UI_REQUEST.INITIALIZE, UI_REQUEST.SEEDLESS];
12
- this.useDeviceState = false;
13
- }
14
- get requiredPermissions() {
15
- return [{
16
- permission: 'management'
17
- }];
18
- }
19
- run() {
20
- const requestedCredentials = this.params.credentials;
21
- if (this.useDevice) {
22
- const thpState = this.getDevice().getThpState();
23
- if (thpState) {
24
- requestedCredentials.push(...thpState.pairingCredentials);
25
- thpState.resetState();
26
- }
27
- }
28
- const credentialsMap = new Map(requestedCredentials.map(c => [c.credential, c]));
29
- const knownCredentials = settingsStore.get('thp')?.knownCredentials;
30
- if (knownCredentials && knownCredentials.length > 0) {
31
- credentialsMap.forEach(c => {
32
- let index;
33
- while ((index = knownCredentials.findIndex(({
34
- credential
35
- }) => c.credential === credential)) >= 0) {
36
- knownCredentials.splice(index, 1);
37
- }
38
- });
39
- }
40
- return Promise.resolve({
41
- message: 'Success'
42
- });
43
- }
44
- }
@@ -1,3 +0,0 @@
1
- export { default as tronComposeTransaction } from "./tronComposeTransaction.js";
2
- export { default as tronGetAddress } from "./tronGetAddress.js";
3
- export { default as tronSignTransaction } from "./tronSignTransaction.js";
@@ -1,3 +0,0 @@
1
- export { default as tronComposeTransaction } from "./tronComposeTransaction.js";
2
- export { default as tronGetAddress } from "./tronGetAddress.js";
3
- export { default as tronSignTransaction } from "./tronSignTransaction.js";
@@ -1,17 +0,0 @@
1
- import { type PermissionRequest } from '@trezor/connect-common';
2
- import { TronComposeTransaction as TronComposeTransactionSchema } from '@trezor/connect-common';
3
- import type { MethodMessage } from "../../../core/AbstractMethod.js";
4
- import { AbstractMethod } from "../../../core/AbstractMethod.js";
5
- export default class TronComposeTransaction extends AbstractMethod<'tronComposeTransaction', TronComposeTransactionSchema> {
6
- constructor(message: MethodMessage<'tronComposeTransaction'>);
7
- get requiredPermissions(): PermissionRequest[];
8
- get info(): string;
9
- run(): Promise<{
10
- rawDataHex: string;
11
- ref_block_bytes: string;
12
- ref_block_hash: string;
13
- expiration: number;
14
- timestamp: number;
15
- bandwidth: number;
16
- }>;
17
- }
@@ -1,52 +0,0 @@
1
- import { bytesToHex } from "@noble/hashes/utils.js";
2
- import { TronComposeTransaction as TronComposeTransactionSchema } from "@trezor/connect-common";
3
- import { TRON_BANDWIDTH_FORMULA_OVERHEAD } from "@trezor/network-tron/constants";
4
- import { Assert } from "@trezor/schema-utils";
5
- import { AbstractMethod } from "../../../core/AbstractMethod.js";
6
- import { encodeTronContractRawData } from "../tronEncode.js";
7
- export default class TronComposeTransaction extends AbstractMethod {
8
- constructor(message) {
9
- const {
10
- payload
11
- } = message;
12
- Assert(TronComposeTransactionSchema, payload);
13
- super(message, payload);
14
- this.useDevice = false;
15
- this.useUi = false;
16
- }
17
- get requiredPermissions() {
18
- return [];
19
- }
20
- get info() {
21
- return 'Compose Tron transaction';
22
- }
23
- async run() {
24
- const {
25
- contract,
26
- blockHash,
27
- blockHeight,
28
- fee_limit,
29
- data
30
- } = this.params;
31
- const ref_block_bytes = blockHeight.toString(16).padStart(16, '0').slice(12, 16);
32
- const ref_block_hash = blockHash.replace(/^0x/, '').slice(16, 32);
33
- const timestamp = Date.now();
34
- const expiration = timestamp + 60 * 60 * 1000;
35
- const rawData = encodeTronContractRawData(contract, {
36
- ref_block_bytes,
37
- ref_block_hash,
38
- expiration,
39
- timestamp,
40
- fee_limit,
41
- data
42
- });
43
- return {
44
- rawDataHex: bytesToHex(rawData),
45
- ref_block_bytes,
46
- ref_block_hash,
47
- expiration,
48
- timestamp,
49
- bandwidth: rawData.length + TRON_BANDWIDTH_FORMULA_OVERHEAD
50
- };
51
- }
52
- }
@@ -1,17 +0,0 @@
1
- import type { MethodMessage } from "../../../core/AbstractMethod.js";
2
- import { AbstractMiscGetAddress } from "../../common/AbstractMiscGetAddress.js";
3
- import type { MiscGetAddressParams } from "../../common/AbstractMiscGetAddress.js";
4
- export default class TronGetAddress extends AbstractMiscGetAddress<'tronGetAddress'> {
5
- constructor(message: MethodMessage<'tronGetAddress'>);
6
- get info(): string;
7
- get confirmation(): {
8
- view: "export-address";
9
- label: string;
10
- };
11
- _call({
12
- proto
13
- }: MiscGetAddressParams): Promise<{
14
- mac?: string | undefined;
15
- address: string;
16
- }>;
17
- }
@@ -1,22 +0,0 @@
1
- import { getMiscNetwork } from "../../../data/coinInfo.js";
2
- import { AbstractMiscGetAddress } from "../../common/AbstractMiscGetAddress.js";
3
- export default class TronGetAddress extends AbstractMiscGetAddress {
4
- constructor(message) {
5
- super(message, 2);
6
- this.requiredDeviceCapabilities = ['Capability_Tron'];
7
- this.requiredFirmwareCoins = [getMiscNetwork('trx')];
8
- }
9
- get info() {
10
- return this.getInfo('Tron', false);
11
- }
12
- get confirmation() {
13
- return this.getConfirmation('Tron');
14
- }
15
- async _call({
16
- proto
17
- }) {
18
- const cmd = this.getDevice().getCommands();
19
- const response = await cmd.typedCall('TronGetAddress', 'TronAddress', proto);
20
- return response.message;
21
- }
22
- }
@@ -1,20 +0,0 @@
1
- import type { PROTO, PermissionRequest, TronContracts } from '@trezor/connect-common';
2
- import type { MethodMessage } from "../../../core/AbstractMethod.js";
3
- import { AbstractMethod } from "../../../core/AbstractMethod.js";
4
- type Params = {
5
- tx: PROTO.TronSignTx;
6
- contract: TronContracts;
7
- };
8
- export default class TronSignTransaction extends AbstractMethod<'tronSignTransaction', Params> {
9
- hasBundle?: boolean;
10
- progress: number;
11
- constructor(message: MethodMessage<'tronSignTransaction'>);
12
- get requiredPermissions(): PermissionRequest[];
13
- get info(): string;
14
- run(): Promise<{
15
- signature: string;
16
- serializedTx: string | undefined;
17
- rawDataHex: string | undefined;
18
- }>;
19
- }
20
- export {};
@@ -1,137 +0,0 @@
1
- import { bytesToHex } from "@noble/hashes/utils.js";
2
- import { TronSignTransaction as TronSignTransactionSchema } from "@trezor/connect-common";
3
- import { ERRORS } from "@trezor/connect-common/lib/constants/index.js";
4
- import { Assert } from "@trezor/schema-utils";
5
- import { AbstractMethod } from "../../../core/AbstractMethod.js";
6
- import { getMiscNetwork } from "../../../data/coinInfo.js";
7
- import { validatePath } from "../../../utils/pathUtils.js";
8
- import { encodeTronContractRawData } from "../tronEncode.js";
9
- import { encodeBroadcastTransaction } from "../tronProtobuf.js";
10
- const transformContract = input => {
11
- switch (input.type) {
12
- case 'FreezeBalanceV2Contract':
13
- {
14
- const {
15
- value
16
- } = input.parameter;
17
- return {
18
- type: 'FreezeBalanceV2Contract',
19
- parameter: {
20
- value: {
21
- owner_address: value.owner_address,
22
- balance: 'frozen_balance' in value ? value.frozen_balance : value.balance,
23
- resource: value.resource
24
- }
25
- }
26
- };
27
- }
28
- case 'UnfreezeBalanceV2Contract':
29
- {
30
- const {
31
- value
32
- } = input.parameter;
33
- return {
34
- type: 'UnfreezeBalanceV2Contract',
35
- parameter: {
36
- value: {
37
- owner_address: value.owner_address,
38
- balance: 'unfreeze_balance' in value ? value.unfreeze_balance : value.balance,
39
- resource: value.resource
40
- }
41
- }
42
- };
43
- }
44
- case 'VoteWitnessContract':
45
- {
46
- const {
47
- value
48
- } = input.parameter;
49
- return {
50
- type: 'VoteWitnessContract',
51
- parameter: {
52
- value: {
53
- owner_address: value.owner_address,
54
- votes: value.votes.map(vote => ({
55
- address: 'vote_address' in vote ? vote.vote_address : vote.address,
56
- count: 'vote_count' in vote ? vote.vote_count : vote.count
57
- }))
58
- }
59
- }
60
- };
61
- }
62
- case 'TransferContract':
63
- case 'TriggerSmartContract':
64
- case 'WithdrawExpireUnfreezeContract':
65
- case 'WithdrawBalanceContract':
66
- return input;
67
- }
68
- };
69
- const contractMapping = {
70
- TransferContract: 'TronTransferContract',
71
- TriggerSmartContract: 'TronTriggerSmartContract',
72
- FreezeBalanceV2Contract: 'TronFreezeBalanceV2Contract',
73
- UnfreezeBalanceV2Contract: 'TronUnfreezeBalanceV2Contract',
74
- WithdrawExpireUnfreezeContract: 'TronWithdrawUnfreeze',
75
- WithdrawBalanceContract: 'TronWithdrawBalance',
76
- VoteWitnessContract: 'TronVoteWitnessContract'
77
- };
78
- export default class TronSignTransaction extends AbstractMethod {
79
- hasBundle;
80
- progress = 0;
81
- constructor(message) {
82
- const {
83
- payload
84
- } = message;
85
- const contractType = payload.contract?.[0]?.type;
86
- if (!contractType || !(contractType in contractMapping)) {
87
- throw ERRORS.TypedError('Method_InvalidParameter', `Unsupported Tron contract type: ${contractType ?? 'undefined'}`);
88
- }
89
- Assert(TronSignTransactionSchema, payload);
90
- const path = validatePath(payload.path, 3);
91
- const payloadContracts = payload.contract;
92
- const firstContract = payloadContracts[0];
93
- const contract = transformContract(firstContract);
94
- const params = {
95
- tx: {
96
- address_n: path,
97
- ref_block_bytes: payload.ref_block_bytes,
98
- ref_block_hash: payload.ref_block_hash,
99
- expiration: payload.expiration,
100
- timestamp: payload.timestamp,
101
- fee_limit: payload.fee_limit,
102
- data: payload.data
103
- },
104
- contract
105
- };
106
- super(message, params);
107
- this.requiredDeviceCapabilities = ['Capability_Tron'];
108
- this.requiredFirmwareCoins = [getMiscNetwork('trx')];
109
- }
110
- get requiredPermissions() {
111
- return this.coinPerms('sign', this.requiredFirmwareCoins);
112
- }
113
- get info() {
114
- return 'Sign Tron transaction';
115
- }
116
- async run() {
117
- const cmd = this.getDevice().getCommands();
118
- await cmd.typedCall('TronSignTx', 'TronContractRequest', this.params.tx);
119
- const {
120
- message
121
- } = await cmd.typedCall(contractMapping[this.params.contract.type], 'TronSignature', this.params.contract.parameter.value);
122
- const {
123
- signature
124
- } = message;
125
- let serializedTx;
126
- let rawDataHex;
127
- try {
128
- rawDataHex = bytesToHex(encodeTronContractRawData(this.params.contract, this.params.tx));
129
- serializedTx = encodeBroadcastTransaction(rawDataHex, signature);
130
- } catch {}
131
- return {
132
- signature,
133
- serializedTx,
134
- rawDataHex
135
- };
136
- }
137
- }
@@ -1,11 +0,0 @@
1
- import type { TronContracts } from '@trezor/connect-common';
2
- type BlockParams = {
3
- ref_block_bytes: string;
4
- ref_block_hash: string;
5
- expiration: number;
6
- timestamp: number;
7
- fee_limit?: number;
8
- data?: string;
9
- };
10
- export declare const encodeTronContractRawData: (contract: TronContracts, blockParams: BlockParams) => Uint8Array;
11
- export {};