@onetokenfe/hd-core 1.1.23

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 (382) hide show
  1. package/.eslintrc +6 -0
  2. package/README.md +32 -0
  3. package/__tests__/benfen.test.ts +68 -0
  4. package/__tests__/checkBootloaderReleast.test.ts +115 -0
  5. package/__tests__/evmSignTransaction.test.ts +419 -0
  6. package/jest.config.js +6 -0
  7. package/package.json +48 -0
  8. package/src/api/BaseMethod.ts +275 -0
  9. package/src/api/CheckAllFirmwareRelease.ts +73 -0
  10. package/src/api/CheckBLEFirmwareRelease.ts +23 -0
  11. package/src/api/CheckBootloaderRelease.ts +32 -0
  12. package/src/api/CheckBridgeRelease.ts +28 -0
  13. package/src/api/CheckBridgeStatus.ts +32 -0
  14. package/src/api/CheckFirmwareRelease.ts +31 -0
  15. package/src/api/CheckFirmwareTypeAvailable.tsx +30 -0
  16. package/src/api/CipherKeyValue.ts +68 -0
  17. package/src/api/FirmwareUpdate.ts +219 -0
  18. package/src/api/FirmwareUpdateV2.ts +408 -0
  19. package/src/api/FirmwareUpdateV3.ts +560 -0
  20. package/src/api/GetFeatures.ts +23 -0
  21. package/src/api/GetLogs.ts +40 -0
  22. package/src/api/GetOnetokenFeatures.ts +25 -0
  23. package/src/api/GetPassphraseState.ts +28 -0
  24. package/src/api/PromptWebDeviceAccess.ts +77 -0
  25. package/src/api/SearchDevices.ts +50 -0
  26. package/src/api/alephium/AlephiumGetAddress.ts +84 -0
  27. package/src/api/alephium/AlephiumSignMessage.ts +51 -0
  28. package/src/api/alephium/AlephiumSignTransaction.ts +135 -0
  29. package/src/api/algo/AlgoGetAddress.ts +73 -0
  30. package/src/api/algo/AlgoSignTransaction.ts +52 -0
  31. package/src/api/allnetwork/AllNetworkGetAddress.ts +88 -0
  32. package/src/api/allnetwork/AllNetworkGetAddressBase.ts +529 -0
  33. package/src/api/allnetwork/AllNetworkGetAddressByLoop.ts +162 -0
  34. package/src/api/aptos/AptosGetAddress.ts +129 -0
  35. package/src/api/aptos/AptosGetPublicKey.ts +64 -0
  36. package/src/api/aptos/AptosSignInMessage.ts +55 -0
  37. package/src/api/aptos/AptosSignMessage.ts +79 -0
  38. package/src/api/aptos/AptosSignTransaction.ts +72 -0
  39. package/src/api/benfen/BenfenGetAddress.ts +122 -0
  40. package/src/api/benfen/BenfenGetPublicKey.ts +68 -0
  41. package/src/api/benfen/BenfenSignMessage.ts +50 -0
  42. package/src/api/benfen/BenfenSignTransaction.ts +105 -0
  43. package/src/api/benfen/normalize.ts +51 -0
  44. package/src/api/btc/BTCGetAddress.ts +91 -0
  45. package/src/api/btc/BTCGetPublicKey.ts +174 -0
  46. package/src/api/btc/BTCSignMessage.ts +73 -0
  47. package/src/api/btc/BTCSignPsbt.ts +65 -0
  48. package/src/api/btc/BTCSignTransaction.ts +148 -0
  49. package/src/api/btc/BTCVerifyMessage.ts +46 -0
  50. package/src/api/btc/helpers/btcParamsUtils.ts +64 -0
  51. package/src/api/btc/helpers/signtx.ts +251 -0
  52. package/src/api/btc/helpers/signtxLegacy.ts +227 -0
  53. package/src/api/btc/helpers/versionLimit.ts +25 -0
  54. package/src/api/btc/helpers/xpubUtils.ts +132 -0
  55. package/src/api/cardano/CardanoGetAddress.ts +139 -0
  56. package/src/api/cardano/CardanoGetPublicKey.ts +72 -0
  57. package/src/api/cardano/CardanoSignMessage.ts +73 -0
  58. package/src/api/cardano/CardanoSignTransaction.ts +404 -0
  59. package/src/api/cardano/helper/addressParameters.ts +120 -0
  60. package/src/api/cardano/helper/auxiliaryData.ts +133 -0
  61. package/src/api/cardano/helper/cardanoInputs.ts +55 -0
  62. package/src/api/cardano/helper/cardanoOutputs.ts +89 -0
  63. package/src/api/cardano/helper/certificate.ts +246 -0
  64. package/src/api/cardano/helper/token.ts +44 -0
  65. package/src/api/cardano/helper/utils.ts +17 -0
  66. package/src/api/cardano/helper/witnesses.ts +62 -0
  67. package/src/api/conflux/ConfluxGetAddress.ts +78 -0
  68. package/src/api/conflux/ConfluxSignMessage.ts +49 -0
  69. package/src/api/conflux/ConfluxSignMessageCIP23.ts +49 -0
  70. package/src/api/conflux/ConfluxSignTransaction.ts +135 -0
  71. package/src/api/cosmos/CosmosGetAddress.ts +80 -0
  72. package/src/api/cosmos/CosmosGetPublicKey.ts +77 -0
  73. package/src/api/cosmos/CosmosSignTransaction.ts +68 -0
  74. package/src/api/device/DeviceBackup.ts +15 -0
  75. package/src/api/device/DeviceCancel.ts +15 -0
  76. package/src/api/device/DeviceChangePin.ts +25 -0
  77. package/src/api/device/DeviceFlags.ts +26 -0
  78. package/src/api/device/DeviceFullyUploadResource.ts +80 -0
  79. package/src/api/device/DeviceLock.ts +15 -0
  80. package/src/api/device/DeviceRebootToBoardloader.ts +30 -0
  81. package/src/api/device/DeviceRebootToBootloader.ts +28 -0
  82. package/src/api/device/DeviceRecovery.ts +44 -0
  83. package/src/api/device/DeviceReset.ts +46 -0
  84. package/src/api/device/DeviceSettings.ts +96 -0
  85. package/src/api/device/DeviceSupportFeatures.ts +29 -0
  86. package/src/api/device/DeviceUnlock.ts +13 -0
  87. package/src/api/device/DeviceUpdateBootloader.ts +111 -0
  88. package/src/api/device/DeviceUpdateReboot.ts +17 -0
  89. package/src/api/device/DeviceUploadResource.ts +204 -0
  90. package/src/api/device/DeviceVerify.ts +65 -0
  91. package/src/api/device/DeviceWipe.ts +15 -0
  92. package/src/api/dynex/DnxGetAddress.ts +75 -0
  93. package/src/api/dynex/DnxSignTransaction.ts +126 -0
  94. package/src/api/evm/EVMGetAddress.ts +88 -0
  95. package/src/api/evm/EVMGetPublicKey.ts +116 -0
  96. package/src/api/evm/EVMSignMessage.ts +49 -0
  97. package/src/api/evm/EVMSignMessageEIP712.ts +56 -0
  98. package/src/api/evm/EVMSignTransaction.ts +141 -0
  99. package/src/api/evm/EVMSignTypedData.ts +477 -0
  100. package/src/api/evm/EVMVerifyMessage.ts +46 -0
  101. package/src/api/evm/latest/getAddress.ts +13 -0
  102. package/src/api/evm/latest/getPublicKey.ts +17 -0
  103. package/src/api/evm/latest/signMessage.ts +19 -0
  104. package/src/api/evm/latest/signTransaction.ts +303 -0
  105. package/src/api/evm/latest/signTypedData.ts +34 -0
  106. package/src/api/evm/latest/signTypedHash.ts +46 -0
  107. package/src/api/evm/latest/verifyMessage.ts +15 -0
  108. package/src/api/evm/legacyV1/getAddress.ts +16 -0
  109. package/src/api/evm/legacyV1/getPublicKey.ts +20 -0
  110. package/src/api/evm/legacyV1/signMessage.ts +22 -0
  111. package/src/api/evm/legacyV1/signTransaction.ts +37 -0
  112. package/src/api/evm/legacyV1/signTypedData.ts +37 -0
  113. package/src/api/evm/legacyV1/signTypedHash.ts +50 -0
  114. package/src/api/evm/legacyV1/verifyMessage.ts +19 -0
  115. package/src/api/filecoin/FilecoinGetAddress.ts +80 -0
  116. package/src/api/filecoin/FilecoinSignTransaction.ts +57 -0
  117. package/src/api/firmware/FirmwareUpdateBaseMethod.ts +476 -0
  118. package/src/api/firmware/bootloaderHelper.ts +46 -0
  119. package/src/api/firmware/getBinary.ts +99 -0
  120. package/src/api/firmware/releaseHelper.ts +78 -0
  121. package/src/api/firmware/updateBootloader.ts +82 -0
  122. package/src/api/firmware/uploadFirmware.ts +541 -0
  123. package/src/api/helpers/batchGetPublickeys.ts +84 -0
  124. package/src/api/helpers/bigNumberUtils.ts +58 -0
  125. package/src/api/helpers/hexUtils.ts +111 -0
  126. package/src/api/helpers/paramsValidator.ts +165 -0
  127. package/src/api/helpers/pathUtils.ts +145 -0
  128. package/src/api/helpers/stringUtils.ts +11 -0
  129. package/src/api/helpers/typeNameUtils.ts +137 -0
  130. package/src/api/index.ts +161 -0
  131. package/src/api/kaspa/KaspaGetAddress.ts +103 -0
  132. package/src/api/kaspa/KaspaSignTransaction.ts +182 -0
  133. package/src/api/kaspa/helpers/BufferWriter.ts +177 -0
  134. package/src/api/kaspa/helpers/HashWriter.ts +74 -0
  135. package/src/api/kaspa/helpers/SignatureType.ts +7 -0
  136. package/src/api/kaspa/helpers/TransferSerialize.ts +144 -0
  137. package/src/api/lightning/LnurlAuth.ts +52 -0
  138. package/src/api/near/NearGetAddress.ts +75 -0
  139. package/src/api/near/NearSignTransaction.ts +46 -0
  140. package/src/api/nem/NEMGetAddress.ts +72 -0
  141. package/src/api/nem/NEMSignTransaction.ts +251 -0
  142. package/src/api/neo/NeoGetAddress.ts +80 -0
  143. package/src/api/neo/NeoSignTransaction.ts +59 -0
  144. package/src/api/nervos/NervosGetAddress.ts +80 -0
  145. package/src/api/nervos/NervosSignTransaction.ts +116 -0
  146. package/src/api/nexa/NexaGetAddress.ts +88 -0
  147. package/src/api/nexa/NexaSignTransaction.ts +107 -0
  148. package/src/api/nostr/NostrDecryptMessage.ts +57 -0
  149. package/src/api/nostr/NostrEncryptMessage.ts +57 -0
  150. package/src/api/nostr/NostrGetPublicKey.ts +74 -0
  151. package/src/api/nostr/NostrSignEvent.ts +65 -0
  152. package/src/api/nostr/NostrSignSchnorr.ts +52 -0
  153. package/src/api/nostr/helper/index.ts +28 -0
  154. package/src/api/polkadot/PolkadotGetAddress.ts +83 -0
  155. package/src/api/polkadot/PolkadotSignTransaction.ts +53 -0
  156. package/src/api/polkadot/networks.ts +72 -0
  157. package/src/api/scdo/ScdoGetAddress.ts +76 -0
  158. package/src/api/scdo/ScdoSignMessage.ts +45 -0
  159. package/src/api/scdo/ScdoSignTransaction.ts +106 -0
  160. package/src/api/solana/SolGetAddress.ts +68 -0
  161. package/src/api/solana/SolSignMessage.ts +61 -0
  162. package/src/api/solana/SolSignOffchainMessage.ts +61 -0
  163. package/src/api/solana/SolSignTransaction.ts +108 -0
  164. package/src/api/starcoin/StarcoinGetAddress.ts +69 -0
  165. package/src/api/starcoin/StarcoinGetPublicKey.ts +70 -0
  166. package/src/api/starcoin/StarcoinSignMessage.ts +42 -0
  167. package/src/api/starcoin/StarcoinSignTransaction.ts +38 -0
  168. package/src/api/starcoin/StarcoinVerifyMessage.ts +35 -0
  169. package/src/api/stellar/StellarGetAddress.ts +68 -0
  170. package/src/api/stellar/StellarSignTransaction.ts +220 -0
  171. package/src/api/sui/SuiGetAddress.ts +117 -0
  172. package/src/api/sui/SuiGetPublicKey.ts +66 -0
  173. package/src/api/sui/SuiSignMessage.ts +48 -0
  174. package/src/api/sui/SuiSignTransaction.ts +126 -0
  175. package/src/api/sui/normalize.ts +28 -0
  176. package/src/api/test/TestInitializeDeviceDuration.ts +22 -0
  177. package/src/api/ton/TonGetAddress.ts +96 -0
  178. package/src/api/ton/TonSignMessage.ts +217 -0
  179. package/src/api/ton/TonSignProof.ts +62 -0
  180. package/src/api/tron/TronGetAddress.ts +75 -0
  181. package/src/api/tron/TronSignMessage.ts +89 -0
  182. package/src/api/tron/TronSignTransaction.ts +214 -0
  183. package/src/api/u2f/GetNextU2FCounter.ts +15 -0
  184. package/src/api/u2f/SetU2FCounter.ts +19 -0
  185. package/src/api/utils.ts +23 -0
  186. package/src/api/xrp/XrpGetAddress.ts +96 -0
  187. package/src/api/xrp/XrpSignTransaction.ts +71 -0
  188. package/src/constants/errors.ts +15 -0
  189. package/src/constants/index.ts +2 -0
  190. package/src/constants/ui-request.ts +3 -0
  191. package/src/core/RequestQueue.ts +134 -0
  192. package/src/core/index.ts +1320 -0
  193. package/src/data/coins/bitcoin.json +44 -0
  194. package/src/data/config.ts +25 -0
  195. package/src/data/messages/messages.json +13167 -0
  196. package/src/data/messages/messages_legacy_v1.json +10282 -0
  197. package/src/data-manager/CoinManager.ts +31 -0
  198. package/src/data-manager/DataManager.ts +499 -0
  199. package/src/data-manager/MessagesConfig.ts +28 -0
  200. package/src/data-manager/TransportManager.ts +140 -0
  201. package/src/data-manager/connectSettings.ts +121 -0
  202. package/src/data-manager/index.ts +3 -0
  203. package/src/device/Device.ts +884 -0
  204. package/src/device/DeviceCommands.ts +631 -0
  205. package/src/device/DeviceConnector.ts +124 -0
  206. package/src/device/DeviceList.ts +39 -0
  207. package/src/device/DevicePool.ts +266 -0
  208. package/src/events/call.ts +95 -0
  209. package/src/events/core.ts +65 -0
  210. package/src/events/device.ts +92 -0
  211. package/src/events/firmware.ts +43 -0
  212. package/src/events/iframe.ts +55 -0
  213. package/src/events/index.ts +10 -0
  214. package/src/events/log.ts +23 -0
  215. package/src/events/logBlockEvent.ts +6 -0
  216. package/src/events/ui-promise.ts +14 -0
  217. package/src/events/ui-request.ts +216 -0
  218. package/src/events/ui-response.ts +59 -0
  219. package/src/events/utils.ts +19 -0
  220. package/src/index.ts +70 -0
  221. package/src/inject.ts +408 -0
  222. package/src/lowLevelInject.ts +61 -0
  223. package/src/topLevelInject.ts +62 -0
  224. package/src/types/api/alephiumGetAddress.ts +31 -0
  225. package/src/types/api/alephiumSignMessage.ts +14 -0
  226. package/src/types/api/alephiumSignTransaction.ts +18 -0
  227. package/src/types/api/algoGetAddress.ts +23 -0
  228. package/src/types/api/algoSignTransaction.ts +17 -0
  229. package/src/types/api/allNetworkGetAddress.ts +130 -0
  230. package/src/types/api/aptosGetAddress.ts +28 -0
  231. package/src/types/api/aptosGetPublicKey.ts +27 -0
  232. package/src/types/api/aptosSignInMessage.ts +17 -0
  233. package/src/types/api/aptosSignMessage.ts +26 -0
  234. package/src/types/api/aptosSignTransaction.ts +18 -0
  235. package/src/types/api/benfenGetAddress.ts +24 -0
  236. package/src/types/api/benfenGetPublicKey.ts +23 -0
  237. package/src/types/api/benfenSignMessage.ts +13 -0
  238. package/src/types/api/benfenSignTransaction.ts +19 -0
  239. package/src/types/api/btcGetAddress.ts +26 -0
  240. package/src/types/api/btcGetPublicKey.ts +26 -0
  241. package/src/types/api/btcSignMessage.ts +16 -0
  242. package/src/types/api/btcSignPsbt.ts +13 -0
  243. package/src/types/api/btcSignTransaction.ts +98 -0
  244. package/src/types/api/btcVerifyMessage.ts +15 -0
  245. package/src/types/api/cardano.ts +212 -0
  246. package/src/types/api/cardanoGetAddress.ts +49 -0
  247. package/src/types/api/cardanoGetPublicKey.ts +33 -0
  248. package/src/types/api/cardanoSignMessage.ts +31 -0
  249. package/src/types/api/cardanoSignTransaction.ts +8 -0
  250. package/src/types/api/checkAllFirmwareRelease.ts +34 -0
  251. package/src/types/api/checkBLEFirmwareRelease.ts +15 -0
  252. package/src/types/api/checkBootloaderRelease.ts +19 -0
  253. package/src/types/api/checkBridgeRelease.ts +14 -0
  254. package/src/types/api/checkBridgeStatus.ts +3 -0
  255. package/src/types/api/checkFirmwareRelease.ts +23 -0
  256. package/src/types/api/checkFirmwareTypeAvailable.ts +12 -0
  257. package/src/types/api/cipherKeyValue.ts +28 -0
  258. package/src/types/api/confluxGetAddress.ts +24 -0
  259. package/src/types/api/confluxSignMessage.ts +13 -0
  260. package/src/types/api/confluxSignMessageCIP23.ts +14 -0
  261. package/src/types/api/confluxSignTransaction.ts +32 -0
  262. package/src/types/api/cosmosGetAddress.ts +24 -0
  263. package/src/types/api/cosmosGetPublicKey.ts +28 -0
  264. package/src/types/api/cosmosSignTransaction.ts +17 -0
  265. package/src/types/api/deviceBackup.ts +4 -0
  266. package/src/types/api/deviceCancel.ts +4 -0
  267. package/src/types/api/deviceChangePin.ts +11 -0
  268. package/src/types/api/deviceFlags.ts +11 -0
  269. package/src/types/api/deviceFullyUploadResource.ts +15 -0
  270. package/src/types/api/deviceLock.ts +4 -0
  271. package/src/types/api/deviceRebootToBoardloader.ts +6 -0
  272. package/src/types/api/deviceRebootToBootloader.ts +4 -0
  273. package/src/types/api/deviceRecovery.ts +19 -0
  274. package/src/types/api/deviceReset.ts +20 -0
  275. package/src/types/api/deviceSettings.ts +23 -0
  276. package/src/types/api/deviceSupportFeatures.ts +6 -0
  277. package/src/types/api/deviceUnlock.ts +4 -0
  278. package/src/types/api/deviceUpdateBootloader.ts +13 -0
  279. package/src/types/api/deviceUpdateReboot.ts +3 -0
  280. package/src/types/api/deviceUploadResource.ts +21 -0
  281. package/src/types/api/deviceVerify.ts +15 -0
  282. package/src/types/api/deviceWipe.ts +4 -0
  283. package/src/types/api/dnxGetAddress.ts +23 -0
  284. package/src/types/api/dnxSignTransaction.ts +36 -0
  285. package/src/types/api/event.ts +8 -0
  286. package/src/types/api/evmGetAddress.ts +24 -0
  287. package/src/types/api/evmGetPublicKey.ts +36 -0
  288. package/src/types/api/evmSignMessage.ts +14 -0
  289. package/src/types/api/evmSignMessageEIP712.ts +14 -0
  290. package/src/types/api/evmSignTransaction.ts +80 -0
  291. package/src/types/api/evmSignTypedData.ts +42 -0
  292. package/src/types/api/evmVerifyMessage.ts +15 -0
  293. package/src/types/api/export.ts +194 -0
  294. package/src/types/api/filecoinGetAddress.ts +24 -0
  295. package/src/types/api/filecoinSignTransaction.ts +24 -0
  296. package/src/types/api/firmwareUpdate.ts +66 -0
  297. package/src/types/api/getFeatures.ts +4 -0
  298. package/src/types/api/getLogs.ts +3 -0
  299. package/src/types/api/getNextU2FCounter.ts +7 -0
  300. package/src/types/api/getOnetokenFeatures.ts +7 -0
  301. package/src/types/api/getPassphraseState.ts +6 -0
  302. package/src/types/api/index.ts +404 -0
  303. package/src/types/api/init.ts +11 -0
  304. package/src/types/api/kaspaGetAddress.ts +26 -0
  305. package/src/types/api/kaspaSignTransaction.ts +44 -0
  306. package/src/types/api/lnurlAuth.ts +22 -0
  307. package/src/types/api/nearGetAddress.ts +23 -0
  308. package/src/types/api/nearSignTransaction.ts +13 -0
  309. package/src/types/api/nemGetAddress.ts +24 -0
  310. package/src/types/api/nemSignTransaction.ts +118 -0
  311. package/src/types/api/neoGetAddress.ts +24 -0
  312. package/src/types/api/neoSignTransaction.ts +18 -0
  313. package/src/types/api/nervosGetAddress.ts +24 -0
  314. package/src/types/api/nervosSignTransaction.ts +19 -0
  315. package/src/types/api/nexaGetAddress.ts +26 -0
  316. package/src/types/api/nexaSignTransaction.ts +28 -0
  317. package/src/types/api/nostrDecryptMessage.ts +25 -0
  318. package/src/types/api/nostrEncryptMessage.ts +25 -0
  319. package/src/types/api/nostrGetPublicKey.ts +28 -0
  320. package/src/types/api/nostrSignEvent.ts +52 -0
  321. package/src/types/api/nostrSignSchnorr.ts +22 -0
  322. package/src/types/api/polkadotGetAddress.ts +30 -0
  323. package/src/types/api/polkadotSignTransaction.ts +19 -0
  324. package/src/types/api/promptWebDeviceAccess.ts +6 -0
  325. package/src/types/api/scdoGetAddress.ts +23 -0
  326. package/src/types/api/scdoSignMessage.ts +13 -0
  327. package/src/types/api/scdoSignTransaction.ts +24 -0
  328. package/src/types/api/searchDevices.ts +4 -0
  329. package/src/types/api/setU2FCounter.ts +7 -0
  330. package/src/types/api/solGetAddress.ts +23 -0
  331. package/src/types/api/solSignMessage.ts +17 -0
  332. package/src/types/api/solSignOffchainMessage.ts +24 -0
  333. package/src/types/api/solSignTransaction.ts +27 -0
  334. package/src/types/api/starcoinGetAddress.ts +23 -0
  335. package/src/types/api/starcoinGetPublicKey.ts +23 -0
  336. package/src/types/api/starcoinSignMessage.ts +13 -0
  337. package/src/types/api/starcoinSignTransaction.ts +13 -0
  338. package/src/types/api/starcoinVerifyMessage.ts +14 -0
  339. package/src/types/api/stellarGetAddress.ts +23 -0
  340. package/src/types/api/stellarSignTransaction.ts +154 -0
  341. package/src/types/api/suiGetAddress.ts +28 -0
  342. package/src/types/api/suiGetPublicKey.ts +27 -0
  343. package/src/types/api/suiSignMessage.ts +13 -0
  344. package/src/types/api/suiSignTransaction.ts +17 -0
  345. package/src/types/api/testInitializeDeviceDuration.ts +6 -0
  346. package/src/types/api/tonGetAddress.ts +34 -0
  347. package/src/types/api/tonSignMessage.ts +42 -0
  348. package/src/types/api/tonSignProof.ts +25 -0
  349. package/src/types/api/tronGetAddress.ts +23 -0
  350. package/src/types/api/tronSignMessage.ts +14 -0
  351. package/src/types/api/tronSignTransaction.ts +89 -0
  352. package/src/types/api/uiResponse.ts +3 -0
  353. package/src/types/api/xrpGetAddress.ts +28 -0
  354. package/src/types/api/xrpSignTransaction.ts +29 -0
  355. package/src/types/device.ts +194 -0
  356. package/src/types/firmware.ts +41 -0
  357. package/src/types/global.d.ts +3 -0
  358. package/src/types/index.ts +5 -0
  359. package/src/types/params.ts +64 -0
  360. package/src/types/settings.ts +144 -0
  361. package/src/utils/arrayUtils.ts +7 -0
  362. package/src/utils/assets.ts +5 -0
  363. package/src/utils/bridgeUpdate.ts +80 -0
  364. package/src/utils/capabilitieUtils.ts +12 -0
  365. package/src/utils/deviceFeaturesUtils.ts +352 -0
  366. package/src/utils/deviceInfoUtils.ts +167 -0
  367. package/src/utils/deviceSettings.ts +109 -0
  368. package/src/utils/deviceVersionUtils.ts +79 -0
  369. package/src/utils/findDefectiveBatchDevice.ts +39 -0
  370. package/src/utils/getMutex.ts +41 -0
  371. package/src/utils/getSynchronize.ts +25 -0
  372. package/src/utils/homescreen.ts +345 -0
  373. package/src/utils/index.ts +44 -0
  374. package/src/utils/logger.ts +190 -0
  375. package/src/utils/networkUtils.ts +25 -0
  376. package/src/utils/patch.ts +14 -0
  377. package/src/utils/promiseUtils.ts +4 -0
  378. package/src/utils/release.ts +42 -0
  379. package/src/utils/semver.test.js +53 -0
  380. package/src/utils/tracing.ts +238 -0
  381. package/src/utils/versionUtils.ts +120 -0
  382. package/tsconfig.json +11 -0
@@ -0,0 +1,11 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type DeviceFlagsParams = {
5
+ flags?: number;
6
+ };
7
+
8
+ export declare function deviceFlags(
9
+ connectId: string,
10
+ params: CommonParams & DeviceFlagsParams
11
+ ): Response<Success>;
@@ -0,0 +1,15 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { EFirmwareType } from '@onetokenfe/hd-shared';
3
+ import type { CommonParams, Response } from '../params';
4
+
5
+ export type DeviceFullyUploadResourceParams = {
6
+ binary?: ArrayBuffer;
7
+ firmwareType?: EFirmwareType;
8
+ };
9
+
10
+ export declare function deviceFullyUploadResource(
11
+ connectId: string,
12
+ params: CommonParams & {
13
+ binary?: ArrayBuffer;
14
+ }
15
+ ): Response<Success>;
@@ -0,0 +1,4 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export declare function deviceLock(connectId: string, params: CommonParams): Response<Success>;
@@ -0,0 +1,6 @@
1
+ import type { RebootToBoardloader, Success } from '@onetokenfe/hd-transport';
2
+ import type { Response } from '../params';
3
+
4
+ export type RebootToBoardloaderParams = RebootToBoardloader;
5
+
6
+ export declare function deviceRebootToBoardloader(connectId: string): Response<Success>;
@@ -0,0 +1,4 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { Response } from '../params';
3
+
4
+ export declare function deviceRebootToBootloader(connectId: string): Response<Success>;
@@ -0,0 +1,19 @@
1
+ import type { RecoveryDeviceType, Success } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type DeviceRecoveryParams = {
5
+ wordCount?: number;
6
+ passphraseProtection?: boolean;
7
+ pinProtection?: boolean;
8
+ language?: string;
9
+ label?: string;
10
+ enforceWordlist?: boolean;
11
+ type?: RecoveryDeviceType;
12
+ u2fCounter?: number;
13
+ dryRun?: boolean;
14
+ };
15
+
16
+ export declare function deviceRecovery(
17
+ connectId: string,
18
+ params: CommonParams & DeviceRecoveryParams
19
+ ): Response<Success>;
@@ -0,0 +1,20 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type DeviceResetParams = {
5
+ displayRandom?: boolean;
6
+ strength?: number;
7
+ passphraseProtection?: boolean;
8
+ pinProtection?: boolean;
9
+ language?: string;
10
+ label?: string;
11
+ u2fCounter?: number;
12
+ skipBackup?: boolean;
13
+ noBackup?: boolean;
14
+ backupType?: string | number;
15
+ };
16
+
17
+ export declare function deviceReset(
18
+ connectId: string,
19
+ params: CommonParams & DeviceResetParams
20
+ ): Response<Success>;
@@ -0,0 +1,23 @@
1
+ import type { SafetyCheckLevel, Success } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type DeviceSettingsParams = {
5
+ language?: string;
6
+ label?: string;
7
+ usePassphrase?: boolean;
8
+ homescreen?: string;
9
+ passphraseSource?: number;
10
+ autoLockDelayMs?: number;
11
+ displayRotation?: number;
12
+ passphraseAlwaysOnDevice?: boolean;
13
+ safetyChecks?: SafetyCheckLevel;
14
+ experimentalFeatures?: boolean;
15
+ autoShutdownDelayMs?: number;
16
+ changeBrightness?: boolean;
17
+ hapticFeedback?: boolean;
18
+ };
19
+
20
+ export declare function deviceSettings(
21
+ connectId: string,
22
+ params: CommonParams & DeviceSettingsParams
23
+ ): Response<Success>;
@@ -0,0 +1,6 @@
1
+ import type { Response } from '../params';
2
+ import type { Device, SupportFeatures } from '../device';
3
+
4
+ export type DeviceSupportFeatures = SupportFeatures & { device: Device | null };
5
+
6
+ export declare function deviceSupportFeatures(connectId?: string): Response<DeviceSupportFeatures>;
@@ -0,0 +1,4 @@
1
+ import type { Features } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export declare function deviceUnlock(connectId: string, params?: CommonParams): Response<Features>;
@@ -0,0 +1,13 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { EFirmwareType } from '@onetokenfe/hd-shared';
3
+ import type { Response } from '../params';
4
+
5
+ export type DeviceUpdateBootloaderParams = {
6
+ binary?: ArrayBuffer;
7
+ firmwareType?: EFirmwareType;
8
+ };
9
+
10
+ export declare function deviceUpdateBootloader(
11
+ connectId: string,
12
+ params?: DeviceUpdateBootloaderParams
13
+ ): Response<Success>;
@@ -0,0 +1,3 @@
1
+ import type { Response } from '../params';
2
+
3
+ export declare function deviceUpdateReboot(connectId: string): Response<boolean>;
@@ -0,0 +1,21 @@
1
+ import type { ResourceType, Success } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type DeviceUploadResourceParams = {
5
+ suffix: string;
6
+ dataHex: string;
7
+ thumbnailDataHex: string;
8
+ blurDataHex: string;
9
+ resType: ResourceType;
10
+ nftMetaData: string;
11
+ fileNameNoExt?: string;
12
+ };
13
+
14
+ export type DeviceUploadResourceResponse = Success & {
15
+ applyScreen?: boolean;
16
+ };
17
+
18
+ export declare function deviceUploadResource(
19
+ connectId: string,
20
+ params: CommonParams & DeviceUploadResourceParams
21
+ ): Response<DeviceUploadResourceResponse>;
@@ -0,0 +1,15 @@
1
+ import type { CommonParams, Response } from '../params';
2
+
3
+ export type DeviceVerifyParams = {
4
+ dataHex: string;
5
+ };
6
+
7
+ export type DeviceVerifySignature = {
8
+ cert: string;
9
+ signature: string;
10
+ };
11
+
12
+ export declare function deviceVerify(
13
+ connectId: string,
14
+ params: CommonParams & DeviceVerifyParams
15
+ ): Response<DeviceVerifySignature>;
@@ -0,0 +1,4 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { Response } from '../params';
3
+
4
+ export declare function deviceWipe(connectId: string): Response<Success>;
@@ -0,0 +1,23 @@
1
+ import type { DnxAddress as HardwareDnxAddress } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type DnxAddress = {
5
+ path: string;
6
+ } & HardwareDnxAddress;
7
+
8
+ export type DnxGetAddressParams = {
9
+ path: string | number[];
10
+ showOnOneToken?: boolean;
11
+ };
12
+
13
+ export declare function dnxGetAddress(
14
+ connectId: string,
15
+ deviceId: string,
16
+ params: CommonParams & DnxGetAddressParams
17
+ ): Response<DnxAddress>;
18
+
19
+ export declare function dnxGetAddress(
20
+ connectId: string,
21
+ deviceId: string,
22
+ params: CommonParams & { bundle?: DnxGetAddressParams[] }
23
+ ): Response<Array<DnxAddress>>;
@@ -0,0 +1,36 @@
1
+ import type { UintType } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type DnxTxKey = {
5
+ ephemeralTxSecKey: string;
6
+ ephemeralTxPubKey: string;
7
+ };
8
+
9
+ export type DnxSignTransactionParams = {
10
+ path: string | number[];
11
+ inputs: {
12
+ prevIndex: number;
13
+ globalIndex: number;
14
+ txPubkey: string;
15
+ prevOutPubkey: string;
16
+ amount: UintType;
17
+ }[];
18
+ toAddress: string;
19
+ amount: UintType;
20
+ fee: UintType;
21
+ paymentIdHex?: string;
22
+ };
23
+
24
+ export type DnxSignature = {
25
+ path: string;
26
+ txKey: DnxTxKey;
27
+ computedKeyImages: string[];
28
+ signatures: string[];
29
+ outputKeys: string[];
30
+ };
31
+
32
+ export declare function dnxSignTransaction(
33
+ connectId: string,
34
+ deviceId: string,
35
+ params: CommonParams & DnxSignTransactionParams
36
+ ): Response<DnxSignature>;
@@ -0,0 +1,8 @@
1
+ export declare const on: <T extends string, P extends (...args: any[]) => any>(
2
+ type: T,
3
+ fn: P
4
+ ) => void;
5
+
6
+ export declare const off: (type: any, fn: any) => void;
7
+
8
+ export declare const removeAllListeners: (type: any) => void;
@@ -0,0 +1,24 @@
1
+ import type { CommonParams, Response } from '../params';
2
+
3
+ export type EVMAddress = {
4
+ path: string;
5
+ address: string;
6
+ };
7
+
8
+ export type EVMGetAddressParams = {
9
+ path: string | number[];
10
+ showOnOneToken?: boolean;
11
+ chainId?: number;
12
+ };
13
+
14
+ export declare function evmGetAddress(
15
+ connectId: string,
16
+ deviceId: string,
17
+ params: CommonParams & EVMGetAddressParams
18
+ ): Response<EVMAddress>;
19
+
20
+ export declare function evmGetAddress(
21
+ connectId: string,
22
+ deviceId: string,
23
+ params: CommonParams & { bundle?: EVMGetAddressParams[] }
24
+ ): Response<Array<EVMAddress>>;
@@ -0,0 +1,36 @@
1
+ import type { EthereumPublicKey } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type EVMPublicKey = {
5
+ path: string;
6
+ pub: string;
7
+ /**
8
+ * @deprecated Use `pub` instead.
9
+ */
10
+ publicKey?: string;
11
+ } & EthereumPublicKey;
12
+
13
+ export type EVMGetPublicKeyParams = {
14
+ path: string | number[];
15
+ showOnOneToken?: boolean;
16
+ chainId?: number;
17
+ useBatch?: boolean;
18
+ };
19
+
20
+ export declare function evmGetPublicKey(
21
+ connectId: string,
22
+ deviceId: string,
23
+ params: CommonParams & EVMGetPublicKeyParams
24
+ ): Response<EVMPublicKey>;
25
+
26
+ export declare function evmGetPublicKey(
27
+ connectId: string,
28
+ deviceId: string,
29
+ params: CommonParams & { bundle?: EVMGetPublicKeyParams[] }
30
+ ): Response<Array<EVMPublicKey>>;
31
+
32
+ export declare function evmGetPublicKey(
33
+ connectId: string,
34
+ deviceId: string,
35
+ params: CommonParams & { bundle?: EVMGetPublicKeyParams[] }
36
+ ): Response<Omit<EVMPublicKey, 'node' | 'xpub'>>;
@@ -0,0 +1,14 @@
1
+ import type { EthereumMessageSignature } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type EVMSignMessageParams = {
5
+ path: string | number[];
6
+ messageHex: string;
7
+ chainId?: number;
8
+ };
9
+
10
+ export declare function evmSignMessage(
11
+ connectId: string,
12
+ deviceId: string,
13
+ params: CommonParams & EVMSignMessageParams
14
+ ): Response<EthereumMessageSignature>;
@@ -0,0 +1,14 @@
1
+ import type { EthereumMessageSignature } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type EVMSignMessageEIP712Params = {
5
+ path: string | number[];
6
+ domainHash: string;
7
+ messageHash: string;
8
+ };
9
+
10
+ export declare function evmSignMessageEIP712(
11
+ connectId: string,
12
+ deviceId: string,
13
+ params: CommonParams & EVMSignMessageEIP712Params
14
+ ): Response<EthereumMessageSignature>;
@@ -0,0 +1,80 @@
1
+ import type { CommonParams, Response } from '../params';
2
+
3
+ export type EVMSignedTx = {
4
+ v: string;
5
+ r: string;
6
+ s: string;
7
+ authorizationSignatures?: EVMAuthorizationSignature[];
8
+ };
9
+
10
+ export type EVMTransaction = {
11
+ to: string;
12
+ value: string;
13
+ gasPrice: string;
14
+ gasLimit: string;
15
+ maxFeePerGas?: typeof undefined;
16
+ maxPriorityFeePerGas?: typeof undefined;
17
+ nonce: string;
18
+ data?: string;
19
+ chainId: number;
20
+ txType?: number;
21
+ };
22
+
23
+ export type EVMAccessList = {
24
+ address: string;
25
+ storageKeys: string[];
26
+ };
27
+
28
+ export type EVMTransactionEIP1559 = {
29
+ to: string;
30
+ value: string;
31
+ gasLimit: string;
32
+ gasPrice?: typeof undefined;
33
+ nonce: string;
34
+ data?: string;
35
+ chainId: number;
36
+ maxFeePerGas: string;
37
+ maxPriorityFeePerGas: string;
38
+ accessList?: EVMAccessList[];
39
+ };
40
+
41
+ export type EVMAuthorizationSignature = {
42
+ yParity: number;
43
+ r: string;
44
+ s: string;
45
+ };
46
+
47
+ export type EVMAuthorization = {
48
+ chainId: number;
49
+ address: string;
50
+ nonce: string;
51
+ addressN?: number[];
52
+ yParity?: number;
53
+ r?: string;
54
+ s?: string;
55
+ };
56
+
57
+ export type EVMTransactionEIP7702 = {
58
+ to: string;
59
+ value: string;
60
+ gasLimit: string;
61
+ gasPrice?: typeof undefined;
62
+ nonce: string;
63
+ data?: string;
64
+ chainId: number;
65
+ maxFeePerGas: string;
66
+ maxPriorityFeePerGas: string;
67
+ accessList?: EVMAccessList[];
68
+ authorizationList: EVMAuthorization[];
69
+ };
70
+
71
+ export type EVMSignTransactionParams = {
72
+ path: string | number[];
73
+ transaction: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
74
+ };
75
+
76
+ export declare function evmSignTransaction(
77
+ connectId: string,
78
+ deviceId: string,
79
+ params: CommonParams & EVMSignTransactionParams
80
+ ): Response<EVMSignedTx>;
@@ -0,0 +1,42 @@
1
+ import type { EthereumMessageSignature } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type EthereumSignTypedDataTypeProperty = {
5
+ name: string;
6
+ type: string;
7
+ };
8
+
9
+ // EthereumSignTypedDataTypes
10
+ export type EthereumSignTypedDataTypes = {
11
+ EIP712Domain: EthereumSignTypedDataTypeProperty[];
12
+ [additionalProperties: string]: EthereumSignTypedDataTypeProperty[];
13
+ };
14
+
15
+ // EthereumSignTypedDataMessage
16
+ export type EthereumSignTypedDataMessage<T extends EthereumSignTypedDataTypes> = {
17
+ types: T;
18
+ primaryType: keyof T;
19
+ domain: {
20
+ name?: string;
21
+ version?: string;
22
+ chainId?: number;
23
+ verifyingContract?: string;
24
+ salt?: ArrayBuffer;
25
+ };
26
+ message: { [fieldName: string]: any };
27
+ };
28
+
29
+ export type EVMSignTypedDataParams = {
30
+ path: string | number[];
31
+ metamaskV4Compat: boolean;
32
+ data: EthereumSignTypedDataMessage<EthereumSignTypedDataTypes>;
33
+ domainHash?: string;
34
+ messageHash?: string;
35
+ chainId?: number;
36
+ };
37
+
38
+ export declare function evmSignTypedData(
39
+ connectId: string,
40
+ deviceId: string,
41
+ params: CommonParams & EVMSignTypedDataParams
42
+ ): Response<EthereumMessageSignature>;
@@ -0,0 +1,15 @@
1
+ import type { Success } from '@onetokenfe/hd-transport';
2
+ import type { CommonParams, Response } from '../params';
3
+
4
+ export type EVMVerifyMessageParams = {
5
+ address: string;
6
+ messageHex: string;
7
+ signature: string;
8
+ chainId?: number;
9
+ };
10
+
11
+ export declare function evmVerifyMessage(
12
+ connectId: string,
13
+ deviceId: string,
14
+ params: CommonParams & EVMVerifyMessageParams
15
+ ): Response<Success>;