@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,229 +0,0 @@
1
- import { ERRORS } from "@trezor/connect-common/lib/constants/index.js";
2
- const requestPrevTxInfo = ({
3
- typedCall,
4
- txRequest: {
5
- request_type,
6
- details
7
- },
8
- refTxs
9
- }) => {
10
- if (!details?.tx_hash) {
11
- throw ERRORS.TypedError('Runtime', 'requestPrevTxInfo: unknown details.tx_hash');
12
- }
13
- const {
14
- tx_hash
15
- } = details;
16
- const tx = refTxs[tx_hash.toLowerCase()];
17
- if (!tx) {
18
- throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Requested unknown tx: ${tx_hash}`);
19
- }
20
- if (request_type === 'TXINPUT') {
21
- if (!tx.bin_outputs) throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Requested unknown TXINPUT: ${tx_hash}`);
22
- const {
23
- inputs
24
- } = tx;
25
- const prevInput = inputs[details.request_index];
26
- return typedCall('TxAckPrevInput', 'TxRequest', {
27
- tx: {
28
- input: prevInput
29
- }
30
- });
31
- }
32
- if (request_type === 'TXOUTPUT') {
33
- if (!tx.bin_outputs) throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Requested unknown TXOUTPUT: ${tx_hash}`);
34
- const {
35
- bin_outputs
36
- } = tx;
37
- const prevOutput = bin_outputs[details.request_index];
38
- return typedCall('TxAckPrevOutput', 'TxRequest', {
39
- tx: {
40
- output: prevOutput
41
- }
42
- });
43
- }
44
- if (request_type === 'TXORIGINPUT') {
45
- if (!tx.outputs) throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Requested unknown TXORIGINPUT: ${tx_hash}`);
46
- const {
47
- inputs
48
- } = tx;
49
- const origInput = inputs[details.request_index];
50
- return typedCall('TxAckInput', 'TxRequest', {
51
- tx: {
52
- input: origInput
53
- }
54
- });
55
- }
56
- if (request_type === 'TXORIGOUTPUT') {
57
- if (!tx.outputs) throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Requested unknown TXORIGOUTPUT: ${tx_hash}`);
58
- const {
59
- outputs
60
- } = tx;
61
- const origOutput = outputs[details.request_index];
62
- return typedCall('TxAckOutput', 'TxRequest', {
63
- tx: {
64
- output: origOutput
65
- }
66
- });
67
- }
68
- if (request_type === 'TXEXTRADATA') {
69
- if (typeof details.extra_data_len !== 'number') {
70
- throw ERRORS.TypedError('Runtime', 'requestPrevTxInfo: Missing extra_data_len');
71
- }
72
- if (typeof details.extra_data_offset !== 'number') {
73
- throw ERRORS.TypedError('Runtime', 'requestPrevTxInfo: Missing extra_data_offset');
74
- }
75
- if (typeof tx.extra_data !== 'string') {
76
- throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: No extra data for transaction ${tx.hash}`);
77
- }
78
- const data = tx.extra_data;
79
- const dataLen = details.extra_data_len;
80
- const dataOffset = details.extra_data_offset;
81
- const extra_data_chunk = data.substring(dataOffset * 2, (dataOffset + dataLen) * 2);
82
- return typedCall('TxAckPrevExtraData', 'TxRequest', {
83
- tx: {
84
- extra_data_chunk
85
- }
86
- });
87
- }
88
- if (request_type === 'TXMETA') {
89
- const data = tx.extra_data;
90
- const meta = {
91
- version: tx.version,
92
- lock_time: tx.lock_time,
93
- inputs_count: tx.inputs.length,
94
- outputs_count: tx.outputs ? tx.outputs.length : tx.bin_outputs.length,
95
- timestamp: tx.timestamp,
96
- version_group_id: tx.version_group_id,
97
- expiry: tx.expiry,
98
- branch_id: tx.branch_id,
99
- extra_data_len: data ? data.length / 2 : undefined
100
- };
101
- return typedCall('TxAckPrevMeta', 'TxRequest', {
102
- tx: meta
103
- });
104
- }
105
- throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Unknown request type: ${request_type}`);
106
- };
107
- const requestSignedTxInfo = ({
108
- typedCall,
109
- txRequest: {
110
- request_type,
111
- details
112
- },
113
- inputs,
114
- outputs,
115
- paymentRequests
116
- }) => {
117
- if (request_type === 'TXINPUT') {
118
- const input = inputs[details.request_index];
119
- return typedCall('TxAckInput', 'TxRequest', {
120
- tx: {
121
- input
122
- }
123
- });
124
- }
125
- if (request_type === 'TXOUTPUT') {
126
- const output = outputs[details.request_index];
127
- return typedCall('TxAckOutput', 'TxRequest', {
128
- tx: {
129
- output
130
- }
131
- });
132
- }
133
- if (request_type === 'TXPAYMENTREQ') {
134
- const request_index = details?.request_index;
135
- const req = typeof request_index === 'number' ? paymentRequests[request_index] : undefined;
136
- if (!req) {
137
- throw ERRORS.TypedError('Runtime', `requestSignedTxInfo: Requested unknown payment request at ${request_index}`);
138
- }
139
- return typedCall('PaymentRequest', 'TxRequest', {
140
- nonce: req.nonce,
141
- recipient_name: req.recipient_name,
142
- memos: req.memos,
143
- amount: req.amount,
144
- signature: req.signature
145
- });
146
- }
147
- if (request_type === 'TXMETA') {
148
- throw ERRORS.TypedError('Runtime', 'requestSignedTxInfo: Cannot read TXMETA from signed transaction');
149
- }
150
- if (request_type === 'TXEXTRADATA') {
151
- throw ERRORS.TypedError('Runtime', 'requestSignedTxInfo: Cannot read TXEXTRADATA from signed transaction');
152
- }
153
- throw ERRORS.TypedError('Runtime', `requestSignedTxInfo: Unknown request type: ${request_type}`);
154
- };
155
- const requestTxAck = props => {
156
- if (props.txRequest.details?.tx_hash) {
157
- return requestPrevTxInfo(props);
158
- }
159
- return requestSignedTxInfo(props);
160
- };
161
- const saveTxSignatures = (txRequest, serializedTx, signatures) => {
162
- const {
163
- signature_index,
164
- signature,
165
- serialized_tx
166
- } = txRequest;
167
- if (serialized_tx) {
168
- serializedTx.push(serialized_tx);
169
- }
170
- if (typeof signature_index === 'number') {
171
- if (!signature) {
172
- throw ERRORS.TypedError('Runtime', 'saveTxSignatures: Unexpected null in trezor:TxRequestSerialized signature.');
173
- }
174
- signatures[signature_index] = signature;
175
- }
176
- };
177
- const processTxRequest = async props => {
178
- const {
179
- txRequest,
180
- serializedTx,
181
- signatures
182
- } = props;
183
- if (txRequest.serialized) saveTxSignatures(txRequest.serialized, serializedTx, signatures);
184
- if (txRequest.request_type === 'TXFINISHED') {
185
- return Promise.resolve({
186
- signatures,
187
- serializedTx: serializedTx.join('')
188
- });
189
- }
190
- const {
191
- message
192
- } = await requestTxAck(props);
193
- return processTxRequest({
194
- ...props,
195
- txRequest: message
196
- });
197
- };
198
- export const signTx = async ({
199
- typedCall,
200
- inputs,
201
- outputs,
202
- paymentRequests,
203
- refTxs,
204
- options,
205
- coinInfo
206
- }) => {
207
- const {
208
- message
209
- } = await typedCall('SignTx', 'TxRequest', {
210
- ...options,
211
- version: options.version === undefined && coinInfo.isBitcoin ? 1 : options.version,
212
- inputs_count: inputs.length,
213
- outputs_count: outputs.length,
214
- coin_name: coinInfo.name
215
- });
216
- return processTxRequest({
217
- typedCall,
218
- txRequest: message,
219
- refTxs: refTxs.reduce((record, tx) => ({
220
- ...record,
221
- [tx.hash.toLowerCase()]: tx
222
- }), {}),
223
- inputs,
224
- outputs,
225
- paymentRequests: paymentRequests || [],
226
- serializedTx: [],
227
- signatures: []
228
- });
229
- };
@@ -1,10 +0,0 @@
1
- import type { SignedTransaction } from '@trezor/connect-common';
2
- import type { SignTxHelperParams } from "./signtx.js";
3
- export declare const signTxLegacy: ({
4
- typedCall,
5
- inputs,
6
- outputs,
7
- refTxs,
8
- options,
9
- coinInfo
10
- }: SignTxHelperParams) => Promise<SignedTransaction>;
@@ -1,186 +0,0 @@
1
- import { ERRORS } from "@trezor/connect-common/lib/constants/index.js";
2
- const requestPrevTxInfo = ({
3
- txRequest: {
4
- request_type,
5
- details
6
- },
7
- refTxs
8
- }) => {
9
- if (!details?.tx_hash) {
10
- throw ERRORS.TypedError('Runtime', 'requestPrevTxInfo: unknown details.tx_hash');
11
- }
12
- const {
13
- tx_hash
14
- } = details;
15
- const tx = refTxs[tx_hash.toLowerCase()];
16
- if (!tx) {
17
- throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Requested unknown tx: ${tx_hash}`);
18
- }
19
- if (!tx.bin_outputs) {
20
- throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: bin_outputs not set tx: ${tx_hash}`);
21
- }
22
- if (request_type === 'TXINPUT') {
23
- const {
24
- inputs
25
- } = tx;
26
- const input = inputs[details.request_index];
27
- return {
28
- inputs: [input]
29
- };
30
- }
31
- if (request_type === 'TXOUTPUT') {
32
- const {
33
- bin_outputs
34
- } = tx;
35
- const binOutput = bin_outputs[details.request_index];
36
- return {
37
- bin_outputs: [binOutput]
38
- };
39
- }
40
- if (request_type === 'TXEXTRADATA') {
41
- if (typeof details.extra_data_len !== 'number') {
42
- throw ERRORS.TypedError('Runtime', 'requestPrevTxInfo: Missing extra_data_len');
43
- }
44
- if (typeof details.extra_data_offset !== 'number') {
45
- throw ERRORS.TypedError('Runtime', 'requestPrevTxInfo: Missing extra_data_offset');
46
- }
47
- if (typeof tx.extra_data !== 'string') {
48
- throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: No extra data for transaction ${tx.hash}`);
49
- }
50
- const data = tx.extra_data;
51
- const dataLen = details.extra_data_len;
52
- const dataOffset = details.extra_data_offset;
53
- const extra_data = data.substring(dataOffset * 2, (dataOffset + dataLen) * 2);
54
- return {
55
- extra_data
56
- };
57
- }
58
- if (request_type === 'TXMETA') {
59
- const data = tx.extra_data;
60
- const meta = {
61
- version: tx.version,
62
- lock_time: tx.lock_time,
63
- inputs_cnt: tx.inputs.length,
64
- outputs_cnt: tx.bin_outputs.length,
65
- timestamp: tx.timestamp,
66
- version_group_id: tx.version_group_id,
67
- expiry: tx.expiry,
68
- branch_id: tx.branch_id
69
- };
70
- if (typeof data === 'string' && data.length !== 0) {
71
- return {
72
- ...meta,
73
- extra_data_len: data.length / 2
74
- };
75
- }
76
- return meta;
77
- }
78
- throw ERRORS.TypedError('Runtime', `requestPrevTxInfo: Unknown request type: ${request_type}`);
79
- };
80
- const requestSignedTxInfo = ({
81
- txRequest: {
82
- request_type,
83
- details
84
- },
85
- inputs,
86
- outputs
87
- }) => {
88
- if (request_type === 'TXINPUT') {
89
- const input = inputs[details.request_index];
90
- return {
91
- inputs: [input]
92
- };
93
- }
94
- if (request_type === 'TXOUTPUT') {
95
- const output = outputs[details.request_index];
96
- return {
97
- outputs: [output]
98
- };
99
- }
100
- if (request_type === 'TXMETA') {
101
- throw ERRORS.TypedError('Runtime', 'requestSignedTxInfo: Cannot read TXMETA from signed transaction');
102
- }
103
- if (request_type === 'TXEXTRADATA') {
104
- throw ERRORS.TypedError('Runtime', 'requestSignedTxInfo: Cannot read TXEXTRADATA from signed transaction');
105
- }
106
- throw ERRORS.TypedError('Runtime', `requestSignedTxInfo: Unknown request type: ${request_type}`);
107
- };
108
- const requestTxAck = props => {
109
- if (props.txRequest.details?.tx_hash) {
110
- return requestPrevTxInfo(props);
111
- }
112
- return requestSignedTxInfo(props);
113
- };
114
- const saveTxSignatures = (txRequest, serializedTx, signatures) => {
115
- if (!txRequest) return;
116
- const {
117
- signature_index,
118
- signature,
119
- serialized_tx
120
- } = txRequest;
121
- if (serialized_tx) {
122
- serializedTx.push(serialized_tx);
123
- }
124
- if (typeof signature_index === 'number') {
125
- if (!signature) {
126
- throw ERRORS.TypedError('Runtime', 'saveTxSignatures: Unexpected null in trezor:TxRequestSerialized signature.');
127
- }
128
- signatures[signature_index] = signature;
129
- }
130
- };
131
- const processTxRequest = async props => {
132
- const {
133
- typedCall,
134
- txRequest,
135
- serializedTx,
136
- signatures
137
- } = props;
138
- if (txRequest.serialized) saveTxSignatures(txRequest.serialized, serializedTx, signatures);
139
- if (txRequest.request_type === 'TXFINISHED') {
140
- return Promise.resolve({
141
- signatures,
142
- serializedTx: serializedTx.join('')
143
- });
144
- }
145
- const txAck = requestTxAck(props);
146
- const {
147
- message
148
- } = await typedCall('TxAck', 'TxRequest', {
149
- tx: txAck
150
- });
151
- return processTxRequest({
152
- ...props,
153
- txRequest: message
154
- });
155
- };
156
- export const signTxLegacy = async ({
157
- typedCall,
158
- inputs,
159
- outputs,
160
- refTxs,
161
- options,
162
- coinInfo
163
- }) => {
164
- const {
165
- message
166
- } = await typedCall('SignTx', 'TxRequest', {
167
- ...options,
168
- version: options.version === undefined && coinInfo.isBitcoin ? 1 : options.version,
169
- inputs_count: inputs.length,
170
- outputs_count: outputs.length,
171
- coin_name: coinInfo.name
172
- });
173
- return processTxRequest({
174
- typedCall,
175
- txRequest: message,
176
- refTxs: refTxs.reduce((record, tx) => ({
177
- ...record,
178
- [tx.hash.toLowerCase()]: tx
179
- }), {}),
180
- inputs,
181
- outputs,
182
- paymentRequests: [],
183
- serializedTx: [],
184
- signatures: []
185
- });
186
- };
@@ -1,12 +0,0 @@
1
- import type { Network, PROTO } from '@trezor/connect-common';
2
- import { Transaction as BitcoinJsTransaction } from '@trezor/utxo-lib';
3
- import type { DeviceCommands } from "../../device/DeviceCommands.js";
4
- type GetHDNode = (address_n: number[]) => ReturnType<ReturnType<typeof DeviceCommands>['getHDNode']>;
5
- export declare const deriveOutputScript: (getHDNode: GetHDNode, output: PROTO.TxOutputType, network: Network) => Promise<Buffer<ArrayBufferLike> | undefined>;
6
- export declare const verifyTx: (serializedTx: string, params: {
7
- inputs: PROTO.TxInputType[];
8
- outputs: PROTO.TxOutputType[];
9
- outputScripts: Awaited<ReturnType<typeof deriveOutputScript>>[];
10
- network: Network;
11
- }) => BitcoinJsTransaction;
12
- export {};
@@ -1,95 +0,0 @@
1
- import { ERRORS } from "@trezor/connect-common/lib/constants/index.js";
2
- import { address as BitcoinJsAddress, payments as BitcoinJsPayments, Transaction as BitcoinJsTransaction, bip32 } from "@trezor/utxo-lib";
3
- const derivePubKeyHash = async (getHDNode, address_n, network) => {
4
- if (address_n.length === 5) {
5
- const response = await getHDNode(address_n.slice(0, 4));
6
- const node = bip32.fromBase58(response.xpub, network);
7
- const lastComponent = address_n[address_n.length - 1];
8
- return node.derive(lastComponent);
9
- }
10
- const response = await getHDNode(address_n);
11
- return bip32.fromBase58(response.xpub, network);
12
- };
13
- export const deriveOutputScript = async (getHDNode, output, network) => {
14
- if ('multisig' in output) return;
15
- if ('op_return_data' in output) {
16
- return BitcoinJsPayments.embed({
17
- data: [Buffer.from(output.op_return_data, 'hex')]
18
- }).output;
19
- }
20
- if (output.address) {
21
- return BitcoinJsAddress.toOutputScript(output.address, network);
22
- }
23
- if (!output.address_n) {
24
- throw ERRORS.TypedError('Runtime', 'deriveOutputScript: Neither address or address_n is set');
25
- }
26
- const node = await derivePubKeyHash(getHDNode, output.address_n, network);
27
- const payment = {
28
- hash: node.identifier,
29
- network
30
- };
31
- if (output.script_type === 'PAYTOADDRESS') {
32
- return BitcoinJsPayments.p2pkh(payment).output;
33
- }
34
- if (output.script_type === 'PAYTOSCRIPTHASH') {
35
- return BitcoinJsPayments.p2sh(payment).output;
36
- }
37
- if (output.script_type === 'PAYTOP2SHWITNESS') {
38
- return BitcoinJsPayments.p2sh({
39
- redeem: BitcoinJsPayments.p2wpkh(payment)
40
- }).output;
41
- }
42
- if (output.script_type === 'PAYTOWITNESS') {
43
- return BitcoinJsPayments.p2wpkh(payment).output;
44
- }
45
- if (output.script_type === 'PAYTOTAPROOT') {
46
- return BitcoinJsPayments.p2tr({
47
- pubkey: node.publicKey,
48
- network
49
- }).output;
50
- }
51
- if (output.script_type === 'PAYTOMULTISIG') {
52
- throw ERRORS.TypedError('Runtime', `deriveOutputScript: script_type PAYTOMULTISIG not expected without multisig defined`);
53
- }
54
- throw ERRORS.TypedError('Runtime', `deriveOutputScript: Unknown script type ${output.script_type}`);
55
- };
56
- export const verifyTx = (serializedTx, params) => {
57
- const {
58
- inputs,
59
- outputs,
60
- outputScripts,
61
- network
62
- } = params;
63
- const bitcoinTx = BitcoinJsTransaction.fromHex(serializedTx, {
64
- network
65
- });
66
- if (inputs.length !== bitcoinTx.ins.length) {
67
- throw ERRORS.TypedError('Runtime', 'verifyTx: Signed transaction inputs invalid length');
68
- }
69
- if (outputs.length !== bitcoinTx.outs.length) {
70
- throw ERRORS.TypedError('Runtime', 'verifyTx: Signed transaction outputs invalid length');
71
- }
72
- outputs.forEach((output, i) => {
73
- const {
74
- outs
75
- } = bitcoinTx;
76
- const txOut = outs[i];
77
- if (output.amount) {
78
- if (output.amount.toString() !== txOut.value) {
79
- throw ERRORS.TypedError('Runtime', `verifyTx: Wrong output amount at output ${i}. Requested: ${output.amount}, signed: ${txOut.value}`);
80
- }
81
- }
82
- });
83
- for (let i = 0; i < outputs.length; i++) {
84
- const {
85
- outs
86
- } = bitcoinTx;
87
- const out = outs[i];
88
- const scriptB = out.script;
89
- const scriptA = outputScripts[i];
90
- if (scriptA && scriptA.compare(scriptB) !== 0) {
91
- throw ERRORS.TypedError('Runtime', `verifyTx: Output ${i} scripts differ`);
92
- }
93
- }
94
- return bitcoinTx;
95
- };
@@ -1,3 +0,0 @@
1
- import type { BitcoinNetworkInfo, PROTO } from '@trezor/connect-common';
2
- export declare function mapOutputScriptToKey(script_type: string): "p2pkh" | "p2sh" | "p2tr" | "p2wpkh" | undefined;
3
- export declare const getTransactionVbytes: (inputs: PROTO.TxInputType[], outputs: PROTO.TxOutputType[], coinInfo: BitcoinNetworkInfo) => number | undefined;
@@ -1,65 +0,0 @@
1
- import { TxWeightCalculator, address as baddress } from "@trezor/utxo-lib";
2
- import { getOutputScriptType, getScriptType } from "../../utils/pathUtils.js";
3
- export function mapOutputScriptToKey(script_type) {
4
- switch (script_type) {
5
- case 'PAYTOADDRESS':
6
- return 'p2pkh';
7
- case 'PAYTOSCRIPTHASH':
8
- return 'p2sh';
9
- case 'PAYTOWITNESS':
10
- return 'p2wpkh';
11
- case 'PAYTOP2SHWITNESS':
12
- return 'p2sh';
13
- case 'PAYTOTAPROOT':
14
- return 'p2tr';
15
- default:
16
- return undefined;
17
- }
18
- }
19
- export const getTransactionVbytes = (inputs, outputs, coinInfo) => {
20
- const calc = new TxWeightCalculator();
21
- let cannotProcess = false;
22
- inputs.forEach(input => {
23
- const script_type = input.script_type ?? getScriptType(input.address_n);
24
- if (script_type && !input.witness) {
25
- calc.addInput({
26
- script_type,
27
- multisig: input.multisig,
28
- ownership_proof: input.ownership_proof
29
- });
30
- } else {
31
- cannotProcess = true;
32
- }
33
- });
34
- outputs.forEach(out => {
35
- if (out.script_type === 'PAYTOOPRETURN') {
36
- if (!out.op_return_data) {
37
- cannotProcess = true;
38
- return;
39
- }
40
- calc.addOutput({
41
- length: 2 + out.op_return_data.length / 2
42
- });
43
- return;
44
- } else if (out.address) {
45
- calc.addOutput({
46
- length: baddress.toOutputScript(out.address, coinInfo.network).length
47
- });
48
- return;
49
- } else if (out.address_n || out.script_type) {
50
- const script_type = out.script_type ?? getOutputScriptType(out.address_n);
51
- if (script_type) {
52
- const script_key = mapOutputScriptToKey(script_type);
53
- if (script_key) {
54
- calc.addOutputByKey(script_key);
55
- return;
56
- }
57
- }
58
- }
59
- cannotProcess = true;
60
- });
61
- if (cannotProcess) {
62
- return undefined;
63
- }
64
- return calc.getVirtualBytes();
65
- };
@@ -1,11 +0,0 @@
1
- import { type PermissionRequest } from '@trezor/connect-common';
2
- import { MessagesSchema as PROTO } from '@trezor/protobuf';
3
- import type { MethodMessage } from "../core/AbstractMethod.js";
4
- import { AbstractMethod } from "../core/AbstractMethod.js";
5
- export default class BleUnpair extends AbstractMethod<'bleUnpair', PROTO.BleUnpair> {
6
- constructor(message: MethodMessage<'bleUnpair'>);
7
- get requiredPermissions(): PermissionRequest[];
8
- run(): Promise<{
9
- message: string;
10
- }>;
11
- }
@@ -1,37 +0,0 @@
1
- import { UI_REQUEST } from "@trezor/connect-common";
2
- import { ERRORS } from "@trezor/connect-common/lib/constants/index.js";
3
- import { MessagesSchema as PROTO } from "@trezor/protobuf";
4
- import { Assert } from "@trezor/schema-utils";
5
- import { TRANSPORT_ERROR } from "@trezor/transport-common";
6
- import { AbstractMethod } from "../core/AbstractMethod.js";
7
- export default class BleUnpair extends AbstractMethod {
8
- constructor(message) {
9
- const {
10
- payload
11
- } = message;
12
- Assert(PROTO.BleUnpair, payload);
13
- const params = {
14
- all: payload.all
15
- };
16
- super(message, params);
17
- this.allowDeviceMode = [UI_REQUEST.INITIALIZE, UI_REQUEST.SEEDLESS];
18
- this.useDeviceState = false;
19
- }
20
- get requiredPermissions() {
21
- return [{
22
- permission: 'management'
23
- }];
24
- }
25
- async run() {
26
- const cmd = this.getDevice().getCommands();
27
- try {
28
- const response = await cmd.typedCall('BleUnpair', 'Success', this.params);
29
- return response.message;
30
- } catch (error) {
31
- if (this.getDevice().descriptor.apiType === 'bluetooth' && error.message === TRANSPORT_ERROR.INTERFACE_DATA_TRANSFER) {
32
- throw ERRORS.TypedError('Device_Disconnected');
33
- }
34
- throw error;
35
- }
36
- }
37
- }
@@ -1,16 +0,0 @@
1
- import type { CoinInfo, PermissionRequest } from '@trezor/connect-common';
2
- import type { MethodMessage } from "../core/AbstractMethod.js";
3
- import { AbstractMethod } from "../core/AbstractMethod.js";
4
- type Params = {
5
- coinInfo: CoinInfo;
6
- identity?: string;
7
- };
8
- export default class BlockchainDisconnect extends AbstractMethod<'blockchainDisconnect', Params> {
9
- constructor(message: MethodMessage<'blockchainDisconnect'>);
10
- get requiredPermissions(): PermissionRequest[];
11
- get info(): string;
12
- run(): Promise<{
13
- disconnected: boolean;
14
- }>;
15
- }
16
- export {};