@trezor/connect 10.0.0-alpha.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 (432) hide show
  1. package/CHANGELOG.md +159 -63
  2. package/README.md +5 -3
  3. package/lib/exports.d.ts +1 -0
  4. package/lib/exports.js +1 -0
  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.d.ts +7 -0
  12. package/lib/index.browser.js +10 -0
  13. package/lib/index.d.ts +4 -0
  14. package/lib/index.js +5 -0
  15. package/lib/index.native.d.ts +4 -0
  16. package/lib/index.native.js +5 -0
  17. package/package.json +30 -83
  18. package/libESM/api/applyFlags.d.mts +0 -20
  19. package/libESM/api/applyFlags.mjs +0 -36
  20. package/libESM/api/applySettings.d.mts +0 -20
  21. package/libESM/api/applySettings.mjs +0 -55
  22. package/libESM/api/authenticateDevice.d.mts +0 -9
  23. package/libESM/api/authenticateDevice.mjs +0 -108
  24. package/libESM/api/authorizeCoinjoin.d.mts +0 -11
  25. package/libESM/api/authorizeCoinjoin.mjs +0 -44
  26. package/libESM/api/backupDevice.d.mts +0 -19
  27. package/libESM/api/backupDevice.mjs +0 -36
  28. package/libESM/api/bitcoin/TransactionComposer.d.mts +0 -46
  29. package/libESM/api/bitcoin/TransactionComposer.mjs +0 -139
  30. package/libESM/api/bitcoin/createPendingTx.d.mts +0 -33
  31. package/libESM/api/bitcoin/createPendingTx.mjs +0 -54
  32. package/libESM/api/bitcoin/enhanceSignTx.d.mts +0 -2
  33. package/libESM/api/bitcoin/enhanceSignTx.mjs +0 -23
  34. package/libESM/api/bitcoin/index.d.mts +0 -9
  35. package/libESM/api/bitcoin/index.mjs +0 -9
  36. package/libESM/api/bitcoin/inputs.d.mts +0 -6
  37. package/libESM/api/bitcoin/inputs.mjs +0 -75
  38. package/libESM/api/bitcoin/outputs.d.mts +0 -5
  39. package/libESM/api/bitcoin/outputs.mjs +0 -128
  40. package/libESM/api/bitcoin/refTx.d.mts +0 -17
  41. package/libESM/api/bitcoin/refTx.mjs +0 -252
  42. package/libESM/api/bitcoin/signtx.d.mts +0 -22
  43. package/libESM/api/bitcoin/signtx.mjs +0 -213
  44. package/libESM/api/bitcoin/signtxLegacy.d.mts +0 -3
  45. package/libESM/api/bitcoin/signtxLegacy.mjs +0 -179
  46. package/libESM/api/bitcoin/signtxVerify.d.mts +0 -12
  47. package/libESM/api/bitcoin/signtxVerify.mjs +0 -86
  48. package/libESM/api/bitcoin/transactionBytes.d.mts +0 -3
  49. package/libESM/api/bitcoin/transactionBytes.mjs +0 -65
  50. package/libESM/api/bleUnpair.d.mts +0 -11
  51. package/libESM/api/bleUnpair.mjs +0 -35
  52. package/libESM/api/blockchainDisconnect.d.mts +0 -16
  53. package/libESM/api/blockchainDisconnect.mjs +0 -39
  54. package/libESM/api/blockchainEstimateFee.d.mts +0 -14
  55. package/libESM/api/blockchainEstimateFee.mjs +0 -106
  56. package/libESM/api/blockchainEvmRpcCall.d.mts +0 -17
  57. package/libESM/api/blockchainEvmRpcCall.mjs +0 -61
  58. package/libESM/api/blockchainGetAccountBalanceHistory.d.mts +0 -14
  59. package/libESM/api/blockchainGetAccountBalanceHistory.mjs +0 -64
  60. package/libESM/api/blockchainGetContractInfo.d.mts +0 -14
  61. package/libESM/api/blockchainGetContractInfo.mjs +0 -50
  62. package/libESM/api/blockchainGetCurrentFiatRates.d.mts +0 -18
  63. package/libESM/api/blockchainGetCurrentFiatRates.mjs +0 -53
  64. package/libESM/api/blockchainGetFiatRatesForTimestamps.d.mts +0 -21
  65. package/libESM/api/blockchainGetFiatRatesForTimestamps.mjs +0 -59
  66. package/libESM/api/blockchainGetInfo.d.mts +0 -13
  67. package/libESM/api/blockchainGetInfo.mjs +0 -41
  68. package/libESM/api/blockchainGetTransactions.d.mts +0 -15
  69. package/libESM/api/blockchainGetTransactions.mjs +0 -47
  70. package/libESM/api/blockchainSetCustomBackend.d.mts +0 -13
  71. package/libESM/api/blockchainSetCustomBackend.mjs +0 -41
  72. package/libESM/api/blockchainSubscribe.d.mts +0 -17
  73. package/libESM/api/blockchainSubscribe.mjs +0 -68
  74. package/libESM/api/blockchainSubscribeFiatRates.d.mts +0 -17
  75. package/libESM/api/blockchainSubscribeFiatRates.mjs +0 -47
  76. package/libESM/api/blockchainUnsubscribe.d.mts +0 -17
  77. package/libESM/api/blockchainUnsubscribe.mjs +0 -68
  78. package/libESM/api/blockchainUnsubscribeFiatRates.d.mts +0 -15
  79. package/libESM/api/blockchainUnsubscribeFiatRates.mjs +0 -41
  80. package/libESM/api/blockchainValidateEvmRpcUrl.d.mts +0 -17
  81. package/libESM/api/blockchainValidateEvmRpcUrl.mjs +0 -54
  82. package/libESM/api/cancelCoinjoinAuthorization.d.mts +0 -11
  83. package/libESM/api/cancelCoinjoinAuthorization.mjs +0 -31
  84. package/libESM/api/cardano/api/cardanoComposeTransaction.d.mts +0 -10
  85. package/libESM/api/cardano/api/cardanoComposeTransaction.mjs +0 -79
  86. package/libESM/api/cardano/api/cardanoGetAddress.d.mts +0 -30
  87. package/libESM/api/cardano/api/cardanoGetAddress.mjs +0 -116
  88. package/libESM/api/cardano/api/cardanoGetNativeScriptHash.d.mts +0 -12
  89. package/libESM/api/cardano/api/cardanoGetNativeScriptHash.mjs +0 -66
  90. package/libESM/api/cardano/api/cardanoGetPublicKey.d.mts +0 -20
  91. package/libESM/api/cardano/api/cardanoGetPublicKey.mjs +0 -72
  92. package/libESM/api/cardano/api/cardanoSignMessage.d.mts +0 -27
  93. package/libESM/api/cardano/api/cardanoSignMessage.mjs +0 -96
  94. package/libESM/api/cardano/api/cardanoSignTransaction.d.mts +0 -81
  95. package/libESM/api/cardano/api/cardanoSignTransaction.mjs +0 -298
  96. package/libESM/api/cardano/api/index.d.mts +0 -6
  97. package/libESM/api/cardano/api/index.mjs +0 -6
  98. package/libESM/api/cardano/cardanoAddressParameters.d.mts +0 -6
  99. package/libESM/api/cardano/cardanoAddressParameters.mjs +0 -79
  100. package/libESM/api/cardano/cardanoAuxiliaryData.d.mts +0 -4
  101. package/libESM/api/cardano/cardanoAuxiliaryData.mjs +0 -74
  102. package/libESM/api/cardano/cardanoCertificate.d.mts +0 -13
  103. package/libESM/api/cardano/cardanoCertificate.mjs +0 -142
  104. package/libESM/api/cardano/cardanoInputs.d.mts +0 -25
  105. package/libESM/api/cardano/cardanoInputs.mjs +0 -39
  106. package/libESM/api/cardano/cardanoOutputs.d.mts +0 -40
  107. package/libESM/api/cardano/cardanoOutputs.mjs +0 -70
  108. package/libESM/api/cardano/cardanoTokenBundle.d.mts +0 -12
  109. package/libESM/api/cardano/cardanoTokenBundle.mjs +0 -21
  110. package/libESM/api/cardano/cardanoUtils.d.mts +0 -9
  111. package/libESM/api/cardano/cardanoUtils.mjs +0 -101
  112. package/libESM/api/cardano/cardanoWitnesses.d.mts +0 -4
  113. package/libESM/api/cardano/cardanoWitnesses.mjs +0 -47
  114. package/libESM/api/changeLanguage.d.mts +0 -18
  115. package/libESM/api/changeLanguage.mjs +0 -47
  116. package/libESM/api/changePin.d.mts +0 -11
  117. package/libESM/api/changePin.mjs +0 -25
  118. package/libESM/api/changeWipeCode.d.mts +0 -11
  119. package/libESM/api/changeWipeCode.mjs +0 -27
  120. package/libESM/api/cipherKeyValue.d.mts +0 -15
  121. package/libESM/api/cipherKeyValue.mjs +0 -51
  122. package/libESM/api/common/AbstractMiscGetAddress.d.mts +0 -35
  123. package/libESM/api/common/AbstractMiscGetAddress.mjs +0 -102
  124. package/libESM/api/common/Discovery.d.mts +0 -33
  125. package/libESM/api/common/Discovery.mjs +0 -116
  126. package/libESM/api/common/paramsValidator.d.mts +0 -23
  127. package/libESM/api/common/paramsValidator.mjs +0 -134
  128. package/libESM/api/common/requestExistingAccounts.d.mts +0 -9
  129. package/libESM/api/common/requestExistingAccounts.mjs +0 -20
  130. package/libESM/api/composeTransaction.d.mts +0 -36
  131. package/libESM/api/composeTransaction.mjs +0 -386
  132. package/libESM/api/discoverAccounts.d.mts +0 -38
  133. package/libESM/api/discoverAccounts.mjs +0 -363
  134. package/libESM/api/ethereum/api/ethereumGetAddress.d.mts +0 -28
  135. package/libESM/api/ethereum/api/ethereumGetAddress.mjs +0 -135
  136. package/libESM/api/ethereum/api/ethereumGetPublicKey.d.mts +0 -48
  137. package/libESM/api/ethereum/api/ethereumGetPublicKey.mjs +0 -90
  138. package/libESM/api/ethereum/api/ethereumSignMessage.d.mts +0 -27
  139. package/libESM/api/ethereum/api/ethereumSignMessage.mjs +0 -64
  140. package/libESM/api/ethereum/api/ethereumSignTransaction.d.mts +0 -83
  141. package/libESM/api/ethereum/api/ethereumSignTransaction.mjs +0 -148
  142. package/libESM/api/ethereum/api/ethereumSignTypedData.d.mts +0 -116
  143. package/libESM/api/ethereum/api/ethereumSignTypedData.mjs +0 -202
  144. package/libESM/api/ethereum/api/ethereumVerifyMessage.d.mts +0 -12
  145. package/libESM/api/ethereum/api/ethereumVerifyMessage.mjs +0 -33
  146. package/libESM/api/ethereum/api/index.d.mts +0 -6
  147. package/libESM/api/ethereum/api/index.mjs +0 -6
  148. package/libESM/api/ethereum/ethereumDefinitions.d.mts +0 -46
  149. package/libESM/api/ethereum/ethereumDefinitions.mjs +0 -103
  150. package/libESM/api/ethereum/ethereumSignTx.d.mts +0 -20
  151. package/libESM/api/ethereum/ethereumSignTx.mjs +0 -131
  152. package/libESM/api/ethereum/ethereumSignTypedData.d.mts +0 -32
  153. package/libESM/api/ethereum/ethereumSignTypedData.mjs +0 -169
  154. package/libESM/api/evoluGetDelegatedIdentityKey.d.mts +0 -14
  155. package/libESM/api/evoluGetDelegatedIdentityKey.mjs +0 -26
  156. package/libESM/api/evoluGetNode.d.mts +0 -13
  157. package/libESM/api/evoluGetNode.mjs +0 -27
  158. package/libESM/api/evoluSignRegistrationRequest.d.mts +0 -15
  159. package/libESM/api/evoluSignRegistrationRequest.mjs +0 -31
  160. package/libESM/api/firmware/calculateFirmwareHash.d.mts +0 -13
  161. package/libESM/api/firmware/calculateFirmwareHash.mjs +0 -56
  162. package/libESM/api/firmware/calculateXPubHash.d.mts +0 -10
  163. package/libESM/api/firmware/calculateXPubHash.mjs +0 -14
  164. package/libESM/api/firmware/getBinary.d.mts +0 -10
  165. package/libESM/api/firmware/getBinary.mjs +0 -33
  166. package/libESM/api/firmware/index.d.mts +0 -6
  167. package/libESM/api/firmware/index.mjs +0 -6
  168. package/libESM/api/firmware/modifyFirmware.d.mts +0 -3
  169. package/libESM/api/firmware/modifyFirmware.mjs +0 -13
  170. package/libESM/api/firmware/parseFirmwareHeaders.d.mts +0 -4
  171. package/libESM/api/firmware/parseFirmwareHeaders.mjs +0 -26
  172. package/libESM/api/firmware/uploadFirmware.d.mts +0 -19
  173. package/libESM/api/firmware/uploadFirmware.mjs +0 -99
  174. package/libESM/api/firmware/verifyEntropy.d.mts +0 -18
  175. package/libESM/api/firmware/verifyEntropy.mjs +0 -107
  176. package/libESM/api/getAccountInfo.d.mts +0 -94
  177. package/libESM/api/getAccountInfo.mjs +0 -385
  178. package/libESM/api/getAddress.d.mts +0 -39
  179. package/libESM/api/getAddress.mjs +0 -142
  180. package/libESM/api/getCoinInfo.d.mts +0 -148
  181. package/libESM/api/getCoinInfo.mjs +0 -29
  182. package/libESM/api/getDeviceState.d.mts +0 -8
  183. package/libESM/api/getDeviceState.mjs +0 -16
  184. package/libESM/api/getFeatures.d.mts +0 -70
  185. package/libESM/api/getFeatures.mjs +0 -20
  186. package/libESM/api/getFirmwareHash.d.mts +0 -11
  187. package/libESM/api/getFirmwareHash.mjs +0 -27
  188. package/libESM/api/getNonce.d.mts +0 -10
  189. package/libESM/api/getNonce.mjs +0 -16
  190. package/libESM/api/getOwnershipId.d.mts +0 -15
  191. package/libESM/api/getOwnershipId.mjs +0 -79
  192. package/libESM/api/getOwnershipProof.d.mts +0 -15
  193. package/libESM/api/getOwnershipProof.mjs +0 -86
  194. package/libESM/api/getPublicKey.d.mts +0 -50
  195. package/libESM/api/getPublicKey.mjs +0 -88
  196. package/libESM/api/getSettings.d.mts +0 -8
  197. package/libESM/api/getSettings.mjs +0 -15
  198. package/libESM/api/index.d.mts +0 -59
  199. package/libESM/api/index.mjs +0 -59
  200. package/libESM/api/loadDevice.d.mts +0 -16
  201. package/libESM/api/loadDevice.mjs +0 -44
  202. package/libESM/api/monero/api/index.d.mts +0 -4
  203. package/libESM/api/monero/api/index.mjs +0 -4
  204. package/libESM/api/monero/api/moneroGetAddress.d.mts +0 -30
  205. package/libESM/api/monero/api/moneroGetAddress.mjs +0 -109
  206. package/libESM/api/monero/api/moneroGetWatchKey.d.mts +0 -14
  207. package/libESM/api/monero/api/moneroGetWatchKey.mjs +0 -44
  208. package/libESM/api/monero/api/moneroKeyImageSync.d.mts +0 -17
  209. package/libESM/api/monero/api/moneroKeyImageSync.mjs +0 -127
  210. package/libESM/api/monero/api/moneroSignTransaction.d.mts +0 -17
  211. package/libESM/api/monero/api/moneroSignTransaction.mjs +0 -202
  212. package/libESM/api/pingDevice.d.mts +0 -11
  213. package/libESM/api/pingDevice.mjs +0 -27
  214. package/libESM/api/pushTransaction.d.mts +0 -17
  215. package/libESM/api/pushTransaction.mjs +0 -42
  216. package/libESM/api/recoveryDevice.d.mts +0 -20
  217. package/libESM/api/recoveryDevice.mjs +0 -50
  218. package/libESM/api/requestLogin.d.mts +0 -14
  219. package/libESM/api/requestLogin.mjs +0 -48
  220. package/libESM/api/resetDevice.d.mts +0 -22
  221. package/libESM/api/resetDevice.mjs +0 -131
  222. package/libESM/api/ripple/api/index.d.mts +0 -2
  223. package/libESM/api/ripple/api/index.mjs +0 -2
  224. package/libESM/api/ripple/api/rippleGetAddress.d.mts +0 -15
  225. package/libESM/api/ripple/api/rippleGetAddress.mjs +0 -22
  226. package/libESM/api/ripple/api/rippleSignTransaction.d.mts +0 -13
  227. package/libESM/api/ripple/api/rippleSignTransaction.mjs +0 -52
  228. package/libESM/api/setBrightness.d.mts +0 -12
  229. package/libESM/api/setBrightness.mjs +0 -26
  230. package/libESM/api/setBusy.d.mts +0 -11
  231. package/libESM/api/setBusy.mjs +0 -32
  232. package/libESM/api/showDeviceTutorial.d.mts +0 -11
  233. package/libESM/api/showDeviceTutorial.mjs +0 -21
  234. package/libESM/api/signMessage.d.mts +0 -25
  235. package/libESM/api/signMessage.mjs +0 -71
  236. package/libESM/api/signTransaction.d.mts +0 -197
  237. package/libESM/api/signTransaction.mjs +0 -334
  238. package/libESM/api/solana/api/index.d.mts +0 -4
  239. package/libESM/api/solana/api/index.mjs +0 -4
  240. package/libESM/api/solana/api/solanaComposeTransaction.d.mts +0 -31
  241. package/libESM/api/solana/api/solanaComposeTransaction.mjs +0 -76
  242. package/libESM/api/solana/api/solanaGetAddress.d.mts +0 -15
  243. package/libESM/api/solana/api/solanaGetAddress.mjs +0 -22
  244. package/libESM/api/solana/api/solanaGetPublicKey.d.mts +0 -28
  245. package/libESM/api/solana/api/solanaGetPublicKey.mjs +0 -67
  246. package/libESM/api/solana/api/solanaSignTransaction.d.mts +0 -41
  247. package/libESM/api/solana/api/solanaSignTransaction.mjs +0 -203
  248. package/libESM/api/solana/solanaDefinitions.d.mts +0 -7
  249. package/libESM/api/solana/solanaDefinitions.mjs +0 -33
  250. package/libESM/api/stellar/api/index.d.mts +0 -2
  251. package/libESM/api/stellar/api/index.mjs +0 -2
  252. package/libESM/api/stellar/api/stellarGetAddress.d.mts +0 -15
  253. package/libESM/api/stellar/api/stellarGetAddress.mjs +0 -22
  254. package/libESM/api/stellar/api/stellarSignTransaction.d.mts +0 -26
  255. package/libESM/api/stellar/api/stellarSignTransaction.mjs +0 -66
  256. package/libESM/api/stellar/stellarSignTx.d.mts +0 -7
  257. package/libESM/api/stellar/stellarSignTx.mjs +0 -191
  258. package/libESM/api/telemetryGet.d.mts +0 -14
  259. package/libESM/api/telemetryGet.mjs +0 -24
  260. package/libESM/api/tezos/api/index.d.mts +0 -3
  261. package/libESM/api/tezos/api/index.mjs +0 -3
  262. package/libESM/api/tezos/api/tezosGetAddress.d.mts +0 -15
  263. package/libESM/api/tezos/api/tezosGetAddress.mjs +0 -22
  264. package/libESM/api/tezos/api/tezosGetPublicKey.d.mts +0 -24
  265. package/libESM/api/tezos/api/tezosGetPublicKey.mjs +0 -66
  266. package/libESM/api/tezos/api/tezosSignTransaction.d.mts +0 -14
  267. package/libESM/api/tezos/api/tezosSignTransaction.mjs +0 -30
  268. package/libESM/api/tezos/tezosSignTx.d.mts +0 -71
  269. package/libESM/api/tezos/tezosSignTx.mjs +0 -204
  270. package/libESM/api/thpGetCredentials.d.mts +0 -13
  271. package/libESM/api/thpGetCredentials.mjs +0 -28
  272. package/libESM/api/thpRemoveCredentials.d.mts +0 -15
  273. package/libESM/api/thpRemoveCredentials.mjs +0 -42
  274. package/libESM/api/tron/api/index.d.mts +0 -3
  275. package/libESM/api/tron/api/index.mjs +0 -3
  276. package/libESM/api/tron/api/tronComposeTransaction.d.mts +0 -17
  277. package/libESM/api/tron/api/tronComposeTransaction.mjs +0 -51
  278. package/libESM/api/tron/api/tronGetAddress.d.mts +0 -15
  279. package/libESM/api/tron/api/tronGetAddress.mjs +0 -20
  280. package/libESM/api/tron/api/tronSignTransaction.d.mts +0 -19
  281. package/libESM/api/tron/api/tronSignTransaction.mjs +0 -129
  282. package/libESM/api/tron/tronEncode.d.mts +0 -12
  283. package/libESM/api/tron/tronEncode.mjs +0 -77
  284. package/libESM/api/tron/tronProtobuf.d.mts +0 -5
  285. package/libESM/api/tron/tronProtobuf.mjs +0 -28
  286. package/libESM/api/unlockPath.d.mts +0 -12
  287. package/libESM/api/unlockPath.mjs +0 -31
  288. package/libESM/api/verifyMessage.d.mts +0 -16
  289. package/libESM/api/verifyMessage.mjs +0 -46
  290. package/libESM/api/wipeDevice.d.mts +0 -21
  291. package/libESM/api/wipeDevice.mjs +0 -47
  292. package/libESM/backend/BackendManager.d.mts +0 -24
  293. package/libESM/backend/BackendManager.mjs +0 -137
  294. package/libESM/backend/Blockchain.d.mts +0 -81
  295. package/libESM/backend/Blockchain.mjs +0 -232
  296. package/libESM/backend/BlockchainLink.d.mts +0 -9
  297. package/libESM/backend/BlockchainLink.mjs +0 -13
  298. package/libESM/backend/fees/BitcoinFeeLevels.d.mts +0 -19
  299. package/libESM/backend/fees/BitcoinFeeLevels.mjs +0 -43
  300. package/libESM/backend/fees/EthereumFeeLevels.d.mts +0 -17
  301. package/libESM/backend/fees/EthereumFeeLevels.mjs +0 -52
  302. package/libESM/backend/fees/MiscFeeLevels.d.mts +0 -18
  303. package/libESM/backend/fees/MiscFeeLevels.mjs +0 -25
  304. package/libESM/backend/fees/index.d.mts +0 -5
  305. package/libESM/backend/fees/index.mjs +0 -30
  306. package/libESM/core/AbstractMethod.d.mts +0 -65
  307. package/libESM/core/AbstractMethod.mjs +0 -153
  308. package/libESM/core/index.d.mts +0 -27
  309. package/libESM/core/index.mjs +0 -795
  310. package/libESM/core/method.d.mts +0 -3
  311. package/libESM/core/method.mjs +0 -19
  312. package/libESM/core/method.native.d.mts +0 -2
  313. package/libESM/core/method.native.mjs +0 -29
  314. package/libESM/core/onCallFirmwareUpdate.d.mts +0 -39
  315. package/libESM/core/onCallFirmwareUpdate.mjs +0 -436
  316. package/libESM/data/coinInfo.d.mts +0 -374
  317. package/libESM/data/coinInfo.mjs +0 -183
  318. package/libESM/data/config.d.mts +0 -8
  319. package/libESM/data/config.mjs +0 -265
  320. package/libESM/data/defaultFeeLevels.d.mts +0 -18
  321. package/libESM/data/defaultFeeLevels.mjs +0 -174
  322. package/libESM/data/firmwareInfo.d.mts +0 -41
  323. package/libESM/data/firmwareInfo.mjs +0 -411
  324. package/libESM/data/firmwareReleaseStore.d.mts +0 -10
  325. package/libESM/data/firmwareReleaseStore.mjs +0 -16
  326. package/libESM/data/localFirmwareStore.d.mts +0 -3
  327. package/libESM/data/localFirmwareStore.mjs +0 -8
  328. package/libESM/data/protobufLoader.d.mts +0 -1
  329. package/libESM/data/protobufLoader.mjs +0 -29
  330. package/libESM/data/settingsStore.d.mts +0 -6
  331. package/libESM/data/settingsStore.mjs +0 -21
  332. package/libESM/device/Device.d.mts +0 -237
  333. package/libESM/device/Device.mjs +0 -729
  334. package/libESM/device/DeviceCommands.d.mts +0 -77
  335. package/libESM/device/DeviceCommands.mjs +0 -245
  336. package/libESM/device/DeviceCurrentSession.d.mts +0 -3208
  337. package/libESM/device/DeviceCurrentSession.mjs +0 -240
  338. package/libESM/device/DeviceList.d.mts +0 -68
  339. package/libESM/device/DeviceList.mjs +0 -246
  340. package/libESM/device/TransportList.d.mts +0 -9
  341. package/libESM/device/TransportList.mjs +0 -41
  342. package/libESM/device/TransportManager.d.mts +0 -30
  343. package/libESM/device/TransportManager.mjs +0 -142
  344. package/libESM/device/calculateRevisionForDevice.d.mts +0 -7
  345. package/libESM/device/calculateRevisionForDevice.mjs +0 -19
  346. package/libESM/device/checkFirmwareRevision.d.mts +0 -12
  347. package/libESM/device/checkFirmwareRevision.mjs +0 -75
  348. package/libESM/device/resolveDescriptorForTaproot.d.mts +0 -14
  349. package/libESM/device/resolveDescriptorForTaproot.mjs +0 -25
  350. package/libESM/device/thp/handshake.d.mts +0 -3
  351. package/libESM/device/thp/handshake.mjs +0 -100
  352. package/libESM/device/thp/index.d.mts +0 -5
  353. package/libESM/device/thp/index.mjs +0 -65
  354. package/libESM/device/thp/pairing.d.mts +0 -16
  355. package/libESM/device/thp/pairing.mjs +0 -237
  356. package/libESM/device/thp/session.d.mts +0 -2
  357. package/libESM/device/thp/session.mjs +0 -27
  358. package/libESM/device/thp/thpCall.d.mts +0 -40
  359. package/libESM/device/thp/thpCall.mjs +0 -58
  360. package/libESM/device/validateMessageSize.d.mts +0 -2
  361. package/libESM/device/validateMessageSize.mjs +0 -9
  362. package/libESM/device/workflow/changeLanguage.d.mts +0 -14
  363. package/libESM/device/workflow/changeLanguage.mjs +0 -59
  364. package/libESM/device/workflow/checkFirmwareHash.d.mts +0 -9
  365. package/libESM/device/workflow/checkFirmwareHash.mjs +0 -86
  366. package/libESM/device/workflow/checkFirmwareHashWithRetries.d.mts +0 -8
  367. package/libESM/device/workflow/checkFirmwareHashWithRetries.mjs +0 -36
  368. package/libESM/device/workflow/handshake.d.mts +0 -9
  369. package/libESM/device/workflow/handshake.mjs +0 -55
  370. package/libESM/device/workflow/trezorPushNotification.d.mts +0 -2
  371. package/libESM/device/workflow/trezorPushNotification.mjs +0 -73
  372. package/libESM/device/workflow/validateState.d.mts +0 -2
  373. package/libESM/device/workflow/validateState.mjs +0 -153
  374. package/libESM/events/ui-promise.d.mts +0 -22
  375. package/libESM/events/ui-promise.mjs +0 -1
  376. package/libESM/exports.d.mts +0 -3
  377. package/libESM/exports.mjs +0 -3
  378. package/libESM/impl/core-in-module.d.mts +0 -27
  379. package/libESM/impl/core-in-module.mjs +0 -173
  380. package/libESM/index.browser.d.mts +0 -9
  381. package/libESM/index.browser.mjs +0 -50
  382. package/libESM/index.d.mts +0 -6
  383. package/libESM/index.mjs +0 -32
  384. package/libESM/index.renderer.d.mts +0 -6
  385. package/libESM/index.renderer.mjs +0 -19
  386. package/libESM/tsconfig.libESM.tsbuildinfo +0 -1
  387. package/libESM/types/idevice.d.mts +0 -109
  388. package/libESM/types/idevice.mjs +0 -1
  389. package/libESM/types/typed-call-provider.d.mts +0 -29
  390. package/libESM/types/typed-call-provider.mjs +0 -1
  391. package/libESM/types/workflow.d.mts +0 -16
  392. package/libESM/types/workflow.mjs +0 -1
  393. package/libESM/utils/accountUtils.d.mts +0 -10
  394. package/libESM/utils/accountUtils.mjs +0 -83
  395. package/libESM/utils/addressUtils.d.mts +0 -2
  396. package/libESM/utils/addressUtils.mjs +0 -24
  397. package/libESM/utils/assetUtils.d.mts +0 -13
  398. package/libESM/utils/assetUtils.mjs +0 -56
  399. package/libESM/utils/assets.browser.d.mts +0 -1
  400. package/libESM/utils/assets.browser.mjs +0 -1
  401. package/libESM/utils/assets.d.mts +0 -2
  402. package/libESM/utils/assets.mjs +0 -13
  403. package/libESM/utils/assets.native.d.mts +0 -2
  404. package/libESM/utils/assets.native.mjs +0 -23
  405. package/libESM/utils/assetsTypes.d.mts +0 -5
  406. package/libESM/utils/assetsTypes.mjs +0 -1
  407. package/libESM/utils/buildOutputDescriptor.d.mts +0 -12
  408. package/libESM/utils/buildOutputDescriptor.mjs +0 -67
  409. package/libESM/utils/deviceFeaturesUtils.d.mts +0 -7
  410. package/libESM/utils/deviceFeaturesUtils.mjs +0 -109
  411. package/libESM/utils/ethereumUtils.d.mts +0 -3
  412. package/libESM/utils/ethereumUtils.mjs +0 -7
  413. package/libESM/utils/firmwareReleaseConfigUtils.d.mts +0 -19
  414. package/libESM/utils/firmwareReleaseConfigUtils.mjs +0 -131
  415. package/libESM/utils/firmwareUtils.d.mts +0 -13
  416. package/libESM/utils/firmwareUtils.mjs +0 -54
  417. package/libESM/utils/formatUtils.d.mts +0 -15
  418. package/libESM/utils/formatUtils.mjs +0 -45
  419. package/libESM/utils/hdnodeUtils.d.mts +0 -6
  420. package/libESM/utils/hdnodeUtils.mjs +0 -62
  421. package/libESM/utils/pathUtils.d.mts +0 -17
  422. package/libESM/utils/pathUtils.mjs +0 -141
  423. package/libESM/utils/paymentRequest.d.mts +0 -8
  424. package/libESM/utils/paymentRequest.mjs +0 -25
  425. package/libESM/utils/uiPromiseManager.d.mts +0 -8
  426. package/libESM/utils/uiPromiseManager.mjs +0 -51
  427. package/libESM/workers/workers.browser.d.mts +0 -10
  428. package/libESM/workers/workers.browser.mjs +0 -16
  429. package/libESM/workers/workers.d.mts +0 -10
  430. package/libESM/workers/workers.mjs +0 -8
  431. package/libESM/workers/workers.native.d.mts +0 -7
  432. package/libESM/workers/workers.native.mjs +0 -7
@@ -1,6 +0,0 @@
1
- export { default as ethereumGetAddress } from "./ethereumGetAddress.mjs";
2
- export { default as ethereumGetPublicKey } from "./ethereumGetPublicKey.mjs";
3
- export { default as ethereumSignMessage } from "./ethereumSignMessage.mjs";
4
- export { default as ethereumSignTransaction } from "./ethereumSignTransaction.mjs";
5
- export { default as ethereumSignTypedData } from "./ethereumSignTypedData.mjs";
6
- export { default as ethereumVerifyMessage } from "./ethereumVerifyMessage.mjs";
@@ -1,46 +0,0 @@
1
- import type { EthereumNetworkInfoDefinitionValues } from '@trezor/connect-common';
2
- import type { MessagesSchema } from '@trezor/protobuf';
3
- import type { Static } from '@trezor/schema-utils';
4
- interface GetEthereumDefinitions {
5
- chainId?: number;
6
- slip44?: number;
7
- contractAddress?: string;
8
- }
9
- export declare const getEthereumDefinitions: ({ chainId, slip44, contractAddress, }: GetEthereumDefinitions) => Promise<{
10
- encoded_network?: ArrayBuffer | undefined;
11
- encoded_token?: ArrayBuffer | undefined;
12
- }>;
13
- export type EthereumNetworkDefinitionDecoded = Static<typeof EthereumNetworkDefinitionDecoded>;
14
- export declare const EthereumNetworkDefinitionDecoded: import("@sinclair/typebox").TObject<{
15
- chain_id: import("@sinclair/typebox").TNumber;
16
- name: import("@sinclair/typebox").TString;
17
- slip44: import("@sinclair/typebox").TNumber;
18
- symbol: import("@sinclair/typebox").TString;
19
- }>;
20
- export type EthereumTokenDefinitionDecoded = Static<typeof EthereumTokenDefinitionDecoded>;
21
- export declare const EthereumTokenDefinitionDecoded: import("@sinclair/typebox").TObject<{
22
- address: import("@sinclair/typebox").TString;
23
- chain_id: import("@sinclair/typebox").TNumber;
24
- decimals: import("@sinclair/typebox").TNumber;
25
- name: import("@sinclair/typebox").TString;
26
- symbol: import("@sinclair/typebox").TString;
27
- }>;
28
- export type EthereumDefinitionDecoded = Static<typeof EthereumDefinitionDecoded>;
29
- export declare const EthereumDefinitionDecoded: import("@sinclair/typebox").TObject<{
30
- network: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
31
- chain_id: import("@sinclair/typebox").TNumber;
32
- name: import("@sinclair/typebox").TString;
33
- slip44: import("@sinclair/typebox").TNumber;
34
- symbol: import("@sinclair/typebox").TString;
35
- }>>;
36
- token: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
37
- address: import("@sinclair/typebox").TString;
38
- chain_id: import("@sinclair/typebox").TNumber;
39
- decimals: import("@sinclair/typebox").TNumber;
40
- name: import("@sinclair/typebox").TString;
41
- symbol: import("@sinclair/typebox").TString;
42
- }>>;
43
- }>;
44
- export declare const decodeEthereumDefinition: (encodedDefinition: MessagesSchema.EthereumDefinitions) => EthereumDefinitionDecoded;
45
- export declare const ethereumNetworkInfoFromDefinition: (definition: EthereumNetworkDefinitionDecoded) => EthereumNetworkInfoDefinitionValues;
46
- export {};
@@ -1,103 +0,0 @@
1
- import fetch from "cross-fetch";
2
- import { protobufManager } from "@trezor/protobuf";
3
- import { trzd } from "@trezor/protocol";
4
- import { Assert, Type } from "@trezor/schema-utils";
5
- import { ethereumNetworkInfoBase } from "../../data/coinInfo.mjs";
6
- export const getEthereumDefinitions = async ({
7
- chainId,
8
- slip44,
9
- contractAddress
10
- }) => {
11
- const definitions = {};
12
- if (!chainId && !slip44) {
13
- throw new Error('argument chainId or slip44 is required');
14
- }
15
- try {
16
- const networkDefinitionUrl = `https://data.trezor.io/firmware/eth-definitions/${chainId ? 'chain-id' : 'slip44'}/${chainId ?? slip44}/network.dat`;
17
- const networkDefinition = await fetch(networkDefinitionUrl);
18
- if (networkDefinition.status === 200) {
19
- definitions.encoded_network = await networkDefinition.arrayBuffer();
20
- } else if (networkDefinition.status !== 404) {
21
- throw new Error(`unexpected status: $${networkDefinition.status}`);
22
- }
23
- } catch (err) {
24
- console.warn(`unable to download or parse ${chainId} definition. detail: ${err.message}`);
25
- }
26
- try {
27
- if (contractAddress) {
28
- const lowerCaseContractAddress = contractAddress.toLowerCase();
29
- const tokenDefinitionUrl = `https://data.trezor.io/firmware/eth-definitions/${chainId ? 'chain-id' : 'slip44'}/${chainId ?? slip44}/token-${lowerCaseContractAddress}.dat`;
30
- const tokenDefinition = await fetch(tokenDefinitionUrl);
31
- if (tokenDefinition.status === 200) {
32
- definitions.encoded_token = await tokenDefinition.arrayBuffer();
33
- } else if (tokenDefinition.status !== 404) {
34
- throw new Error(`unexpected status: $${tokenDefinition.status}`);
35
- }
36
- }
37
- } catch (err) {
38
- console.warn(`unable to download or parse ${chainId}/${contractAddress} definition. detail: ${err.message}`);
39
- }
40
- return definitions;
41
- };
42
- export const EthereumNetworkDefinitionDecoded = Type.Object({
43
- chain_id: Type.Number(),
44
- name: Type.String(),
45
- slip44: Type.Number(),
46
- symbol: Type.String()
47
- });
48
- export const EthereumTokenDefinitionDecoded = Type.Object({
49
- address: Type.String(),
50
- chain_id: Type.Number(),
51
- decimals: Type.Number(),
52
- name: Type.String(),
53
- symbol: Type.String()
54
- });
55
- export const EthereumDefinitionDecoded = Type.Object({
56
- network: Type.Optional(EthereumNetworkDefinitionDecoded),
57
- token: Type.Optional(EthereumTokenDefinitionDecoded)
58
- });
59
- export const decodeEthereumDefinition = encodedDefinition => {
60
- const decoded = {
61
- network: undefined,
62
- token: undefined
63
- };
64
- ['encoded_token', 'encoded_network'].forEach(key => {
65
- const encodedPayload = encodedDefinition[key];
66
- if (!encodedPayload) {
67
- return;
68
- }
69
- const {
70
- definitionType,
71
- protobufPayload
72
- } = trzd.decode(encodedPayload);
73
- const {
74
- message: decodedDefinition
75
- } = protobufManager.decode(definitionType === 0 ? 'EthereumNetworkInfo' : 'EthereumTokenInfo', protobufPayload);
76
- if (key === 'encoded_network') {
77
- Assert(EthereumNetworkDefinitionDecoded, decodedDefinition);
78
- decoded.network = decodedDefinition;
79
- } else if (key === 'encoded_token') {
80
- Assert(EthereumTokenDefinitionDecoded, decodedDefinition);
81
- decoded.token = decodedDefinition;
82
- }
83
- });
84
- return decoded;
85
- };
86
- export const ethereumNetworkInfoFromDefinition = definition => ({
87
- ...ethereumNetworkInfoBase,
88
- chainId: definition.chain_id,
89
- label: definition.name,
90
- name: definition.name,
91
- slip44: definition.slip44,
92
- shortcut: definition.symbol,
93
- support: {
94
- T1B1: '1.6.2',
95
- T2T1: '2.0.7',
96
- T2B1: '2.0.0',
97
- T3B1: '2.0.0',
98
- T3T1: '2.0.0',
99
- T3W1: '2.0.0',
100
- UNKNOWN: '0.0.0'
101
- },
102
- blockchainLink: undefined
103
- });
@@ -1,20 +0,0 @@
1
- import type { Common } from '@ethereumjs/common';
2
- import type { EthereumAccessList, EthereumTransaction, EthereumTransactionEIP1559, PROTO } from '@trezor/connect-common';
3
- import type { MessagesSchema } from '@trezor/protobuf';
4
- import type { TypedCall } from '../../device/DeviceCommands';
5
- export declare const getCommonForChain: (chainId: number) => Common;
6
- export declare const serializeEthereumTx: (tx: EthereumTransactionEIP1559 | EthereumTransaction, signature: {
7
- v: `0x${string}`;
8
- r: `0x${string}`;
9
- s: `0x${string}`;
10
- }, isLegacy: boolean) => string;
11
- export declare const ethereumSignTx: (typedCall: TypedCall, address_n: number[], to: string | null, value: string, gas_limit: string, gas_price: string, nonce: string, chain_id: number, chunkify: boolean, data?: string, tx_type?: number, definitions?: MessagesSchema.EthereumDefinitions, payment_req?: PROTO.PaymentRequest) => Promise<{
12
- v: `0x${string}`;
13
- r: `0x${string}`;
14
- s: `0x${string}`;
15
- }>;
16
- export declare const ethereumSignTxEIP1559: (typedCall: TypedCall, address_n: number[], to: string | null, value: string, gas_limit: string, max_gas_fee: string, max_priority_fee: string, nonce: string, chain_id: number, chunkify: boolean, data?: string, access_list?: EthereumAccessList[], definitions?: MessagesSchema.EthereumDefinitions, payment_req?: PROTO.PaymentRequest) => Promise<{
17
- v: `0x${string}`;
18
- r: `0x${string}`;
19
- s: `0x${string}`;
20
- }>;
@@ -1,131 +0,0 @@
1
- import { Hardfork, Mainnet, createCustomCommon } from "@ethereumjs/common";
2
- import { createTx } from "@ethereumjs/tx";
3
- import { ERRORS } from "@trezor/connect-common/libESM/constants/index.mjs";
4
- import { addHexPrefix, deepTransform } from "../../utils/formatUtils.mjs";
5
- const splitString = (str, len) => {
6
- if (str == null) {
7
- return ['', ''];
8
- }
9
- const first = str.slice(0, len);
10
- const second = str.slice(len);
11
- return [first, second];
12
- };
13
- const processTxRequest = async (typedCall, request, data, chain_id) => {
14
- if (!request.data_length) {
15
- let v = request.signature_v;
16
- const r = request.signature_r;
17
- const s = request.signature_s;
18
- if (v == null || r == null || s == null) {
19
- throw ERRORS.TypedError('Runtime', 'processTxRequest: Unexpected request');
20
- }
21
- if (chain_id && v <= 1) {
22
- v += 2 * chain_id + 35;
23
- }
24
- return Promise.resolve({
25
- v: `0x${v.toString(16)}`,
26
- r: `0x${r}`,
27
- s: `0x${s}`
28
- });
29
- }
30
- const [first, rest] = splitString(data, request.data_length * 2);
31
- const response = await typedCall('EthereumTxAck', 'EthereumTxRequest', {
32
- data_chunk: first
33
- });
34
- return processTxRequest(typedCall, response.message, rest, chain_id);
35
- };
36
- const deepHexPrefix = deepTransform(addHexPrefix);
37
- export const getCommonForChain = chainId => {
38
- if (chainId === 61) {
39
- return createCustomCommon({
40
- chainId: 61,
41
- defaultHardfork: Hardfork.Petersburg
42
- }, Mainnet);
43
- }
44
- return createCustomCommon({
45
- chainId
46
- }, Mainnet);
47
- };
48
- export const serializeEthereumTx = (tx, signature, isLegacy) => {
49
- const txData = deepHexPrefix({
50
- ...tx,
51
- ...signature,
52
- to: tx.to || undefined,
53
- type: isLegacy ? 0 : 2,
54
- ...(isLegacy ? {
55
- gasPrice: tx.gasPrice,
56
- maxFeePerGas: undefined,
57
- maxPriorityFeePerGas: undefined
58
- } : {
59
- gasPrice: undefined,
60
- maxFeePerGas: tx.maxFeePerGas,
61
- maxPriorityFeePerGas: tx.maxPriorityFeePerGas
62
- })
63
- });
64
- const txOptions = {
65
- common: getCommonForChain(tx.chainId)
66
- };
67
- const ethTx = createTx(txData, txOptions);
68
- return `0x${Buffer.from(ethTx.serialize()).toString('hex')}`;
69
- };
70
- const stripLeadingZeroes = str => {
71
- while (/^00/.test(str)) {
72
- str = str.slice(2);
73
- }
74
- return str;
75
- };
76
- export const ethereumSignTx = async (typedCall, address_n, to, value, gas_limit, gas_price, nonce, chain_id, chunkify, data, tx_type, definitions, payment_req) => {
77
- const length = data == null ? 0 : data.length / 2;
78
- const [first, rest] = splitString(data, 1024 * 2);
79
- let message = {
80
- address_n,
81
- chain_id,
82
- nonce: stripLeadingZeroes(nonce),
83
- gas_price: stripLeadingZeroes(gas_price),
84
- gas_limit: stripLeadingZeroes(gas_limit),
85
- to: to || undefined,
86
- value: stripLeadingZeroes(value),
87
- definitions,
88
- chunkify,
89
- payment_req
90
- };
91
- if (length !== 0) {
92
- message = {
93
- ...message,
94
- data_length: length,
95
- data_initial_chunk: first
96
- };
97
- }
98
- if (tx_type !== null) {
99
- message = {
100
- ...message,
101
- tx_type
102
- };
103
- }
104
- const response = await typedCall('EthereumSignTx', 'EthereumTxRequest', message);
105
- return processTxRequest(typedCall, response.message, rest, chain_id);
106
- };
107
- export const ethereumSignTxEIP1559 = async (typedCall, address_n, to, value, gas_limit, max_gas_fee, max_priority_fee, nonce, chain_id, chunkify, data, access_list, definitions, payment_req) => {
108
- const length = data == null ? 0 : data.length / 2;
109
- const [first, rest] = splitString(data, 1024 * 2);
110
- const message = {
111
- address_n,
112
- nonce: stripLeadingZeroes(nonce),
113
- max_gas_fee: stripLeadingZeroes(max_gas_fee),
114
- max_priority_fee: stripLeadingZeroes(max_priority_fee),
115
- gas_limit: stripLeadingZeroes(gas_limit),
116
- to: to || undefined,
117
- value: stripLeadingZeroes(value),
118
- data_length: length,
119
- data_initial_chunk: first,
120
- chain_id,
121
- access_list: (access_list || []).map(a => ({
122
- address: a.address,
123
- storage_keys: a.storageKeys
124
- })),
125
- definitions,
126
- chunkify,
127
- payment_req
128
- };
129
- const response = await typedCall('EthereumSignTxEIP1559', 'EthereumTxRequest', message);
130
- return processTxRequest(typedCall, response.message, rest);
131
- };
@@ -1,32 +0,0 @@
1
- import type { EthereumSignTypedDataTypes } from '@trezor/connect-common';
2
- import { MessagesSchema as PROTO } from '@trezor/protobuf';
3
- export declare function parseArrayType(arrayTypeName: string): {
4
- entryTypeName: string;
5
- arraySize: number | null;
6
- };
7
- export declare function encodeData(typeName: string, data: any): string;
8
- export declare function getFieldType(typeName: string, types: EthereumSignTypedDataTypes): PROTO.EthereumFieldType;
9
- type LooseTypedDataDomain = {
10
- name?: string;
11
- version?: string;
12
- chainId?: string | number | bigint;
13
- verifyingContract?: string;
14
- salt?: string | ArrayBuffer;
15
- };
16
- type TransformTypedDataInput<T extends Record<string, readonly {
17
- name: string;
18
- type: string;
19
- }[]>> = {
20
- types: T;
21
- primaryType: keyof T | string;
22
- domain: LooseTypedDataDomain;
23
- message: Record<string, unknown>;
24
- };
25
- export declare const transformTypedData: <T extends Record<string, readonly {
26
- name: string;
27
- type: string;
28
- }[]>>(data: TransformTypedDataInput<T>, metamask_v4_compat: boolean) => {
29
- domain_separator_hash: string;
30
- message_hash: string | null;
31
- };
32
- export {};
@@ -1,169 +0,0 @@
1
- import { hashDomain, hashStruct } from "viem";
2
- import { ERRORS } from "@trezor/connect-common/libESM/constants/index.mjs";
3
- import { MessagesSchema as PROTO } from "@trezor/protobuf";
4
- import { BigNumber } from "@trezor/utils/libESM/bigNumber.mjs";
5
- import { messageToHex } from "../../utils/formatUtils.mjs";
6
- const paramTypeArray = new RegExp(/^(.*)\[([0-9]*)\]$/);
7
- const paramTypeBytes = new RegExp(/^bytes([0-9]*)$/);
8
- const paramTypeNumber = new RegExp(/^(u?int)([0-9]*)$/);
9
- export function parseArrayType(arrayTypeName) {
10
- const arrayMatch = paramTypeArray.exec(arrayTypeName);
11
- if (arrayMatch === null) {
12
- throw ERRORS.TypedError('Runtime', `typename ${arrayTypeName} could not be parsed as an EIP-712 array`);
13
- }
14
- const [_, entryTypeName, arraySize] = arrayMatch;
15
- return {
16
- entryTypeName,
17
- arraySize: parseInt(arraySize, 10) || null
18
- };
19
- }
20
- function twosComplement(number, bytes) {
21
- if (bytes < 1 || bytes > 32) {
22
- throw ERRORS.TypedError('Runtime', 'Int byte size must be between 1 and 32 (8 and 256 bits)');
23
- }
24
- const minValue = new BigNumber(2).exponentiatedBy(bytes * 8 - 1).negated();
25
- const maxValue = minValue.negated().minus(1);
26
- const bigNumber = new BigNumber(number);
27
- if (bigNumber.isGreaterThan(maxValue) || bigNumber.isLessThan(minValue)) {
28
- throw ERRORS.TypedError('Runtime', `Overflow when trying to convert number ${number} into ${bytes} bytes`);
29
- }
30
- if (bigNumber.isPositive()) {
31
- return bigNumber;
32
- }
33
- return bigNumber.minus(minValue).minus(minValue);
34
- }
35
- function intToHex(number, bytes, signed) {
36
- let bigNumber = new BigNumber(number);
37
- if (signed) {
38
- bigNumber = twosComplement(bigNumber, bytes);
39
- }
40
- if (bigNumber.isNegative()) {
41
- throw ERRORS.TypedError('Runtime', `Cannot convert negative number to unsigned interger: ${number}`);
42
- }
43
- const hex = bigNumber.toString(16);
44
- const hexChars = bytes * 2;
45
- if (hex.length > hexChars) {
46
- throw ERRORS.TypedError('Runtime', `Overflow when trying to convert number ${number} into ${bytes} bytes`);
47
- }
48
- return hex.padStart(bytes * 2, '0');
49
- }
50
- export function encodeData(typeName, data) {
51
- if (paramTypeBytes.test(typeName) || typeName === 'address') {
52
- return messageToHex(data);
53
- }
54
- if (typeName === 'string') {
55
- return Buffer.from(data, 'utf-8').toString('hex');
56
- }
57
- const numberMatch = paramTypeNumber.exec(typeName);
58
- if (numberMatch) {
59
- const [_, intType, bits] = numberMatch;
60
- const bytes = Math.ceil(parseInt(bits, 10) / 8);
61
- return intToHex(data, bytes, intType === 'int');
62
- }
63
- if (typeName === 'bool') {
64
- return data ? '01' : '00';
65
- }
66
- throw ERRORS.TypedError('Runtime', `Unsupported data type for direct field encoding: ${typeName}`);
67
- }
68
- const paramTypesMap = {
69
- string: PROTO.EthereumDataType.STRING,
70
- bool: PROTO.EthereumDataType.BOOL,
71
- address: PROTO.EthereumDataType.ADDRESS
72
- };
73
- export function getFieldType(typeName, types) {
74
- const arrayMatch = paramTypeArray.exec(typeName);
75
- if (arrayMatch) {
76
- const [_, arrayItemTypeName, arraySize] = arrayMatch;
77
- const entryType = getFieldType(arrayItemTypeName, types);
78
- return {
79
- data_type: PROTO.EthereumDataType.ARRAY,
80
- size: parseInt(arraySize, 10) || undefined,
81
- entry_type: entryType
82
- };
83
- }
84
- const numberMatch = paramTypeNumber.exec(typeName);
85
- if (numberMatch) {
86
- const [_, type, bits] = numberMatch;
87
- return {
88
- data_type: type === 'uint' ? PROTO.EthereumDataType.UINT : PROTO.EthereumDataType.INT,
89
- size: Math.floor(parseInt(bits, 10) / 8)
90
- };
91
- }
92
- const bytesMatch = paramTypeBytes.exec(typeName);
93
- if (bytesMatch) {
94
- const [_, size] = bytesMatch;
95
- return {
96
- data_type: PROTO.EthereumDataType.BYTES,
97
- size: parseInt(size, 10) || undefined
98
- };
99
- }
100
- const fixedSizeTypeMatch = paramTypesMap[typeName];
101
- if (fixedSizeTypeMatch) {
102
- return {
103
- data_type: fixedSizeTypeMatch
104
- };
105
- }
106
- if (typeName in types) {
107
- return {
108
- data_type: PROTO.EthereumDataType.STRUCT,
109
- size: types[typeName].length,
110
- struct_name: typeName
111
- };
112
- }
113
- throw ERRORS.TypedError('Runtime', `No type definition specified: ${typeName}`);
114
- }
115
- const arrayBufferToHex = buf => {
116
- const bytes = new Uint8Array(buf);
117
- let hex = '0x';
118
- for (let i = 0; i < bytes.length; i += 1) {
119
- hex += bytes[i].toString(16).padStart(2, '0');
120
- }
121
- return hex;
122
- };
123
- const ensureHexPrefix = value => {
124
- if (value === undefined) return undefined;
125
- return value.startsWith('0x') ? value : `0x${value}`;
126
- };
127
- const normalizeDomain = domain => {
128
- let {
129
- chainId
130
- } = domain;
131
- if (typeof chainId === 'string') {
132
- try {
133
- chainId = BigInt(chainId);
134
- } catch {
135
- throw ERRORS.TypedError('Method_InvalidParameter', 'Trezor: Invalid typed data domain chainId. Expected an integer-compatible string.');
136
- }
137
- }
138
- const saltAsString = domain.salt instanceof ArrayBuffer ? arrayBufferToHex(domain.salt) : domain.salt;
139
- return {
140
- ...domain,
141
- chainId,
142
- verifyingContract: ensureHexPrefix(domain.verifyingContract),
143
- salt: ensureHexPrefix(saltAsString)
144
- };
145
- };
146
- export const transformTypedData = (data, metamask_v4_compat) => {
147
- if (!metamask_v4_compat) {
148
- throw ERRORS.TypedError('Method_InvalidParameter', 'Trezor: Only version 4 of typed data signing is supported');
149
- }
150
- if (!data.types || !('EIP712Domain' in data.types)) {
151
- throw ERRORS.TypedError('Method_InvalidParameter', 'Trezor: EIP712Domain type definition required in types');
152
- }
153
- const domain_separator_hash = hashDomain({
154
- domain: normalizeDomain(data.domain),
155
- types: data.types
156
- }).slice(2);
157
- let message_hash = null;
158
- if (data.primaryType !== 'EIP712Domain') {
159
- message_hash = hashStruct({
160
- data: data.message,
161
- primaryType: data.primaryType,
162
- types: data.types
163
- }).slice(2);
164
- }
165
- return {
166
- domain_separator_hash,
167
- message_hash
168
- };
169
- };
@@ -1,14 +0,0 @@
1
- import { type MethodPermission } from '@trezor/connect-common';
2
- import type { MessagesSchema as PROTO } from '@trezor/protobuf';
3
- import type { MethodMessage } from '../core/AbstractMethod';
4
- import { AbstractMethod } from '../core/AbstractMethod';
5
- export default class EvoluGetDelegatedIdentityKey extends AbstractMethod<'evoluGetDelegatedIdentityKey', PROTO.EvoluGetDelegatedIdentityKey> {
6
- hasBundle?: boolean;
7
- constructor(message: MethodMessage<'evoluGetDelegatedIdentityKey'>);
8
- get requiredPermissions(): MethodPermission[];
9
- get info(): string;
10
- run(): Promise<{
11
- rotation_index?: number | undefined;
12
- private_key: string;
13
- }>;
14
- }
@@ -1,26 +0,0 @@
1
- import { AbstractMethod } from "../core/AbstractMethod.mjs";
2
- export default class EvoluGetDelegatedIdentityKey extends AbstractMethod {
3
- hasBundle;
4
- constructor(message) {
5
- super(message, {});
6
- this.useDevice = true;
7
- this.useUi = true;
8
- }
9
- get requiredPermissions() {
10
- return ['read'];
11
- }
12
- get info() {
13
- return 'Evolu get delegated identity key';
14
- }
15
- async run() {
16
- const thpState = this.getDevice().getThpState();
17
- if (thpState) {
18
- this.params = {
19
- thp_credential: thpState.pairingCredentials[0].credential
20
- };
21
- }
22
- const cmd = this.getDevice().getCommands();
23
- const response = await cmd.typedCall('EvoluGetDelegatedIdentityKey', 'EvoluDelegatedIdentityKey', this.params);
24
- return response.message;
25
- }
26
- }
@@ -1,13 +0,0 @@
1
- import { type MethodPermission } from '@trezor/connect-common';
2
- import { MessagesSchema as PROTO } from '@trezor/protobuf';
3
- import type { MethodMessage } from '../core/AbstractMethod';
4
- import { AbstractMethod } from '../core/AbstractMethod';
5
- export default class EvoluGetNode extends AbstractMethod<'evoluGetNode', PROTO.EvoluGetNode> {
6
- hasBundle?: boolean;
7
- constructor(message: MethodMessage<'evoluGetNode'>);
8
- get requiredPermissions(): MethodPermission[];
9
- get info(): string;
10
- run(): Promise<{
11
- data: string;
12
- }>;
13
- }
@@ -1,27 +0,0 @@
1
- import { MessagesSchema as PROTO } from "@trezor/protobuf";
2
- import { Assert } from "@trezor/schema-utils";
3
- import { AbstractMethod } from "../core/AbstractMethod.mjs";
4
- export default class EvoluGetNode extends AbstractMethod {
5
- hasBundle;
6
- constructor(message) {
7
- const {
8
- payload
9
- } = message;
10
- Assert(PROTO.EvoluGetNode, payload);
11
- const params = {
12
- proof_of_delegated_identity: payload.proof_of_delegated_identity
13
- };
14
- super(message, params);
15
- }
16
- get requiredPermissions() {
17
- return ['read'];
18
- }
19
- get info() {
20
- return 'Evolu get node';
21
- }
22
- async run() {
23
- const cmd = this.getDevice().getCommands();
24
- const response = await cmd.typedCall('EvoluGetNode', 'EvoluNode', this.params);
25
- return response.message;
26
- }
27
- }
@@ -1,15 +0,0 @@
1
- import { type MethodPermission } from '@trezor/connect-common';
2
- import { MessagesSchema as PROTO } from '@trezor/protobuf';
3
- import type { MethodMessage } from '../core/AbstractMethod';
4
- import { AbstractMethod } from '../core/AbstractMethod';
5
- export default class EvoluSignRegistrationRequest extends AbstractMethod<'evoluSignRegistrationRequest', PROTO.EvoluSignRegistrationRequest> {
6
- hasBundle?: boolean;
7
- constructor(message: MethodMessage<'evoluSignRegistrationRequest'>);
8
- get requiredPermissions(): MethodPermission[];
9
- init(): void;
10
- get info(): string;
11
- run(): Promise<{
12
- signature: string;
13
- certificate_chain: string[];
14
- }>;
15
- }
@@ -1,31 +0,0 @@
1
- import { MessagesSchema as PROTO } from "@trezor/protobuf";
2
- import { Assert } from "@trezor/schema-utils";
3
- import { AbstractMethod } from "../core/AbstractMethod.mjs";
4
- export default class EvoluSignRegistrationRequest extends AbstractMethod {
5
- hasBundle;
6
- constructor(message) {
7
- const {
8
- payload
9
- } = message;
10
- Assert(PROTO.EvoluSignRegistrationRequest, payload);
11
- const params = {
12
- challenge_from_server: payload.challenge_from_server,
13
- size_to_acquire: payload.size_to_acquire,
14
- proof_of_delegated_identity: payload.proof_of_delegated_identity
15
- };
16
- super(message, params);
17
- this.useEmptyPassphrase = true;
18
- }
19
- get requiredPermissions() {
20
- return ['read'];
21
- }
22
- init() {}
23
- get info() {
24
- return 'Evolu sign registration request';
25
- }
26
- async run() {
27
- const cmd = this.getDevice().getCommands();
28
- const response = await cmd.typedCall('EvoluSignRegistrationRequest', 'EvoluRegistrationRequest', this.params);
29
- return response.message;
30
- }
31
- }
@@ -1,13 +0,0 @@
1
- import { DeviceModelInternal } from '@trezor/device-utils';
2
- import type { VersionArray } from '@trezor/utils/libESM/versionUtils';
3
- type CalculateFirmwareHashParams = {
4
- internal_model: DeviceModelInternal;
5
- fw: Buffer;
6
- firmwareVersion: VersionArray;
7
- key?: Buffer;
8
- };
9
- export declare const calculateFirmwareHash: ({ internal_model, firmwareVersion, fw, key, }: CalculateFirmwareHashParams) => {
10
- hash: string;
11
- challenge: string;
12
- };
13
- export {};