@trezor/connect 9.6.3-beta.2 → 9.6.4-beta.1

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 (163) hide show
  1. package/CHANGELOG.md +16 -9
  2. package/README.md +1 -1
  3. package/lib/api/applyFlags.d.ts +1 -1
  4. package/lib/api/applyFlags.js +2 -2
  5. package/lib/api/applySettings.d.ts +1 -1
  6. package/lib/api/authenticateDevice.js +4 -0
  7. package/lib/api/authorizeCoinjoin.d.ts +1 -1
  8. package/lib/api/backupDevice.d.ts +1 -1
  9. package/lib/api/backupDevice.js +2 -2
  10. package/lib/api/bitcoin/TransactionComposer.d.ts +1 -1
  11. package/lib/api/bitcoin/inputs.d.ts +1 -1
  12. package/lib/api/bitcoin/transactionBytes.d.ts +2 -2
  13. package/lib/api/bleUnpair.js +1 -1
  14. package/lib/api/cancelCoinjoinAuthorization.d.ts +1 -1
  15. package/lib/api/cardano/api/cardanoSignTransaction.d.ts +2 -2
  16. package/lib/api/cardano/cardanoInputs.js +2 -2
  17. package/lib/api/changePin.d.ts +1 -1
  18. package/lib/api/changePin.js +2 -2
  19. package/lib/api/changeWipeCode.d.ts +1 -1
  20. package/lib/api/cipherKeyValue.d.ts +1 -1
  21. package/lib/api/eos/api/eosGetPublicKey.d.ts +1 -1
  22. package/lib/api/eos/api/eosSignTransaction.d.ts +1 -1
  23. package/lib/api/eos/eosSignTx.d.ts +20 -20
  24. package/lib/api/ethereum/api/ethereumGetPublicKey.d.ts +5 -5
  25. package/lib/api/ethereum/api/ethereumSignMessage.d.ts +1 -2
  26. package/lib/api/ethereum/api/ethereumVerifyMessage.d.ts +1 -1
  27. package/lib/api/evoluGetNode.d.ts +1 -1
  28. package/lib/api/evoluGetNode.js +2 -2
  29. package/lib/api/firmware/calculateFirmwareHash.d.ts +9 -2
  30. package/lib/api/firmware/calculateFirmwareHash.js +11 -1
  31. package/lib/api/firmware/verifyAuthenticityProof.d.ts +3 -1
  32. package/lib/api/firmware/verifyAuthenticityProof.js +10 -15
  33. package/lib/api/getCoinInfo.d.ts +34 -34
  34. package/lib/api/getFeatures.d.ts +1 -0
  35. package/lib/api/getFirmwareHash.d.ts +1 -1
  36. package/lib/api/getFirmwareHash.js +2 -2
  37. package/lib/api/getNonce.d.ts +1 -1
  38. package/lib/api/getOwnershipId.d.ts +1 -1
  39. package/lib/api/getOwnershipId.js +2 -2
  40. package/lib/api/getOwnershipProof.d.ts +1 -1
  41. package/lib/api/getOwnershipProof.js +2 -2
  42. package/lib/api/getPublicKey.d.ts +5 -5
  43. package/lib/api/loadDevice.d.ts +1 -1
  44. package/lib/api/loadDevice.js +2 -2
  45. package/lib/api/nem/api/nemSignTransaction.d.ts +1 -1
  46. package/lib/api/nem/nemSignTx.d.ts +9 -9
  47. package/lib/api/recoveryDevice.d.ts +1 -1
  48. package/lib/api/requestLogin.d.ts +1 -1
  49. package/lib/api/ripple/api/rippleSignTransaction.d.ts +1 -1
  50. package/lib/api/setBrightness.d.ts +1 -1
  51. package/lib/api/setBrightness.js +2 -2
  52. package/lib/api/setBusy.d.ts +1 -1
  53. package/lib/api/setBusy.js +2 -2
  54. package/lib/api/showDeviceTutorial.d.ts +1 -1
  55. package/lib/api/signMessage.d.ts +1 -1
  56. package/lib/api/solana/api/solanaComposeTransaction.d.ts +6 -0
  57. package/lib/api/solana/api/solanaComposeTransaction.js +9 -0
  58. package/lib/api/solana/api/solanaSignTransaction.js +4 -4
  59. package/lib/api/tezos/api/tezosGetPublicKey.d.ts +1 -1
  60. package/lib/api/tezos/api/tezosSignTransaction.d.ts +1 -1
  61. package/lib/api/tezos/tezosSignTx.d.ts +17 -17
  62. package/lib/api/unlockPath.d.ts +1 -1
  63. package/lib/core/AbstractMethod.d.ts +4 -1
  64. package/lib/core/index.js +8 -1
  65. package/lib/core/onCallFirmwareUpdate.js +42 -51
  66. package/lib/data/coinInfo.d.ts +94 -93
  67. package/lib/data/config.js +9 -1
  68. package/lib/data/defaultFeeLevels.d.ts +1 -1
  69. package/lib/data/defaultFeeLevels.js +1 -1
  70. package/lib/data/deviceAuthenticityBlacklist.d.ts +3 -0
  71. package/lib/data/deviceAuthenticityBlacklist.js +11 -0
  72. package/lib/data/deviceAuthenticityBlacklistConfig.d.ts +11 -0
  73. package/lib/data/deviceAuthenticityBlacklistConfig.js +15 -0
  74. package/lib/data/deviceAuthenticityConfig.js +4 -140
  75. package/lib/data/deviceAuthenticityConfigTypes.d.ts +0 -9
  76. package/lib/data/deviceAuthenticityConfigTypes.js +3 -5
  77. package/lib/data/firmwareInfo.d.ts +12 -7
  78. package/lib/data/firmwareInfo.js +58 -15
  79. package/lib/data/transportInfo.d.ts +11 -1
  80. package/lib/data/udevInfo.d.ts +9 -1
  81. package/lib/data/version.d.ts +1 -1
  82. package/lib/data/version.js +1 -1
  83. package/lib/device/Device.d.ts +20 -10
  84. package/lib/device/Device.js +95 -23
  85. package/lib/device/DeviceCommands.d.ts +4 -4
  86. package/lib/device/DeviceCurrentSession.d.ts +242 -242
  87. package/lib/device/DeviceCurrentSession.js +1 -1
  88. package/lib/device/DeviceList.d.ts +7 -4
  89. package/lib/device/DeviceList.js +14 -4
  90. package/lib/device/StateStorage.d.ts +1 -1
  91. package/lib/device/checkFirmwareRevision.d.ts +1 -1
  92. package/lib/device/checkFirmwareRevision.js +2 -2
  93. package/lib/device/thp/handshake.d.ts +1 -1
  94. package/lib/device/thp/handshake.js +14 -3
  95. package/lib/device/thp/index.d.ts +1 -1
  96. package/lib/device/thp/index.js +29 -4
  97. package/lib/device/thp/pairing.js +1 -3
  98. package/lib/device/thp/session.js +1 -1
  99. package/lib/device/workflow/checkFirmwareHash.js +6 -1
  100. package/lib/device/workflow/handshake.js +3 -7
  101. package/lib/device/workflow/trezorPushNotification.d.ts +3 -0
  102. package/lib/device/workflow/trezorPushNotification.js +76 -0
  103. package/lib/device/workflow/validateState.js +3 -0
  104. package/lib/events/call.d.ts +1 -1
  105. package/lib/events/device.d.ts +11 -3
  106. package/lib/events/device.js +5 -1
  107. package/lib/events/popup.d.ts +1 -1
  108. package/lib/events/transport.d.ts +3 -21
  109. package/lib/events/ui-request.d.ts +15 -8
  110. package/lib/tsconfig.lib.tsbuildinfo +1 -1
  111. package/lib/types/api/applyFlags.d.ts +1 -1
  112. package/lib/types/api/applySettings.d.ts +1 -0
  113. package/lib/types/api/authenticateDevice.d.ts +9 -10
  114. package/lib/types/api/authenticateDevice.js +2 -0
  115. package/lib/types/api/backupDevice.d.ts +1 -1
  116. package/lib/types/api/bitcoin/index.d.ts +1 -1
  117. package/lib/types/api/bleUnpair.d.ts +1 -1
  118. package/lib/types/api/cancelCoinjoinAuthorization.d.ts +1 -1
  119. package/lib/types/api/cardanoComposeTransaction.d.ts +2 -2
  120. package/lib/types/api/cardanoComposeTransaction.js +2 -2
  121. package/lib/types/api/changePin.d.ts +1 -1
  122. package/lib/types/api/changeWipeCode.d.ts +1 -1
  123. package/lib/types/api/composeTransaction.d.ts +1 -1
  124. package/lib/types/api/discoverAccounts.d.ts +1 -1
  125. package/lib/types/api/discoverAccounts.js +1 -1
  126. package/lib/types/api/eosSignTransaction.d.ts +1 -1
  127. package/lib/types/api/ethereum/index.d.ts +8 -8
  128. package/lib/types/api/ethereumSignMessage.d.ts +1 -1
  129. package/lib/types/api/ethereumSignTypedData.d.ts +1 -1
  130. package/lib/types/api/ethereumVerifyMessage.d.ts +1 -1
  131. package/lib/types/api/getAccountInfo.d.ts +1 -1
  132. package/lib/types/api/getAddress.d.ts +6 -6
  133. package/lib/types/api/getFirmwareHash.d.ts +1 -1
  134. package/lib/types/api/nemGetAddress.d.ts +1 -1
  135. package/lib/types/api/nemSignTransaction.d.ts +1 -1
  136. package/lib/types/api/recoveryDevice.d.ts +2 -2
  137. package/lib/types/api/setBusy.d.ts +1 -1
  138. package/lib/types/api/setProxy.d.ts +1 -1
  139. package/lib/types/api/showDeviceTutorial.d.ts +1 -1
  140. package/lib/types/api/signMessage.d.ts +1 -1
  141. package/lib/types/api/solana/index.d.ts +26 -3
  142. package/lib/types/api/solana/index.js +19 -3
  143. package/lib/types/api/tezosSignTransaction.d.ts +1 -1
  144. package/lib/types/api/thpRemoveCredentials.d.ts +1 -1
  145. package/lib/types/api/unlockPath.d.ts +1 -1
  146. package/lib/types/api/verifyMessage.d.ts +1 -1
  147. package/lib/types/api/wipeDevice.d.ts +1 -1
  148. package/lib/types/device.d.ts +9 -4
  149. package/lib/types/device.js +5 -3
  150. package/lib/types/firmware.d.ts +1 -0
  151. package/lib/types/settings.d.ts +2 -2
  152. package/lib/types/workflow.d.ts +4 -0
  153. package/lib/utils/assetUtils.d.ts +6 -4
  154. package/lib/utils/assetUtils.js +13 -2
  155. package/lib/utils/assets-browser.d.ts +0 -4
  156. package/lib/utils/assets-browser.js +3 -11
  157. package/lib/utils/assets.native.js +1 -1
  158. package/lib/utils/deviceFeaturesUtils.d.ts +1 -1
  159. package/lib/utils/firmwareUtils.d.ts +7 -4
  160. package/lib/utils/firmwareUtils.js +21 -14
  161. package/lib/utils/pathUtils.d.ts +3 -2
  162. package/lib/utils/uiPromiseManager.d.ts +9 -9
  163. package/package.json +16 -15
@@ -2,181 +2,45 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.deviceAuthenticityConfig = void 0;
4
4
  exports.deviceAuthenticityConfig = {
5
- version: 1,
6
- timestamp: '2025-09-04T12:00:00.000Z',
5
+ version: 2,
7
6
  T2B1: {
8
7
  rootPubKeys: [
9
8
  '04ca97480ac0d7b1e6efafe518cd433cec2bf8ab9822d76eafd34363b55d63e60380bff20acc75cde03cffcb50ab6f8ce70c878e37ebc58ff7cca0a83b16b15fa5',
10
9
  ],
11
- caPubKeys: [
12
- '04b12efa295ad825a534b7c0bf276e93ad116434426763fa87bfa8a2f12e726906dcf566813f62eba8f8795f94dba0391c53682809cbbd7e4ba01d960b4f1c68f1',
13
- '04cb87d4c5d0fd5854e829f4c1b666e49a86c25c88a904c0feb66f1338faed0d7760010d7ea1a6474cbcfe1143bd4b5397a4e8b7fe86899113caecf42a984b0c0f',
14
- '0450c45878b2c6403a5a16e97a8957dc3ea36919bce9321b357f6e7ebe6257ee54102a2c2fa5cefed1dabc498fc76dc0bcf3c3a8a415eac7cc32e7c18185f25b0d',
15
- '0454d310d88d55d3044d80fcdbce9a63bf3118545fae71f6eca303272dcc4d25cf775ae3c18ae9f41b2cf29377bc4696fc79c8824a6fd6b9ca5fb6805ed6557aab',
16
- '04e94bf05586a8e7a3e9aba32662a439be5f378da372219c8ee7cf8b4684dbfbd7ba88ed920c06f9f26deab9077654647738df8cf70898fea1c3aaf2ef086fc578',
17
- '048c6c104bd7cc59cd5c5717533786a72ab59685bd13937f5542820e90f6ac6945e520e19d1d627a8e81ef5a94ef87de7a6a0d778e7dc9d389db877a5f9b629dd8',
18
- '0467f8860c56b35985b0f53eb04e9187ccf216e1c08327d71231f5dafe92df5c0f1b4dc8ebdcd2f42d0e20c61c493ba2a67d2c354cb57255b0b7dcf7c2196b8277',
19
- '049faf57b307013e9fed7564956d4a10938326df2e5d3df0456a0525af5f74ddfb88ba7a37c4c04435ffdca33b4fdf2626afbe65fe5c8fc0c6737de3313b85f229',
20
- '04e3f9053b38000ef590f9cfb48337ef6ea7b387e00f514481f75ac8870b794e81808ea7e12cf86a7b756acb82148f2373541d21b443b6ba389e02f15348bbabf6',
21
- '04fdbce7dafecc7808c2e047b5ad6b688c9e37529dfefbe96ba8a092895b5e669e93165abac1720f8fd5d607e35f4663cacf9bacd6e90aa97524401af65490f401',
22
- '04c408e8a873c12256278c360bd7f35533e703b2f65daecf665a4711ebe6297f82ae2bf8ca60ff7261a69939c10a5cf81c17b7c5aac93cbd73136609c00ecd1666',
23
- '04850fa71163c60bb92b254d9d4a0c664c1ffef9f5d7ea00c4fa4169b0661dc1918bb2d24b2b4d1202701a753552868aaff9514ae81128671e615a96f0ce90a29c',
24
- '04c99f57eaaca8db0245a46dba5288a4c0b0d6acdd1346feef7770ec6b88d28d6640ee19c3f6d984e8fcfceda11b1e4accefda32b950dcd1785fbd16c2e45493a3',
25
- '049c288f4de8a239be83955ed260f40c1a4126fb7dc513601dde4cb11f7363d6a259e73cb1bd9283a450ae608d1832c5fd0cbd9526c0285e720fa45494cae981fd',
26
- '04ac1815177cc1f07700e5f18c05522427413f404bacc987eb1cf9d86f96b9e0cc53ef5941eafd483102eea321205d7dd9271ac2d0fca75a9a43deb824b51f1596',
27
- '049f91ac8c7dac26fa7eb82ff3fb8c6d24978bbaeed1adb0751342a8c4c88152817d50bd0b4c16d8fb85bf12f46dca0674a398aeecbb3d1a01236cd3eb39d24c55',
28
- '04c5225b6d8b84401c408ad0a5aa47888e9087451a2ca4440e46efed5765fd2f5bf8f068e1cfea18dddfc5b47b19076ce0a84fbcf7269f9578d9b978679dea4189',
29
- '04e349de85981f8e7d95ca4b44346924a9df62875971cfc5e21fc042c3a8fb3e1ddfeac139c15fcf3f7968242a418fc80e92c98f5aef39672b13b60d0b2335c84c',
30
- '04d7ddaf7e17a678bef305950f0f9d74b90553d8502fd02c439f07ac7ea494e9e0519a1c5782bf23be058162e706057d3b241d507f89b9e5518e3696a92128fa6d',
31
- '0488cf1dbadb18df0a094da837b3eeb0c85489cc21e7c2b94f8f4df207edccfddbb58e428d9a6ce1e42081c38665d134c7ee6f1f524688ce7444bc1d1340a8b1f1',
32
- '04ff0c6e817d7c00a0912cf1d293e4d3a8c25403dca4e8ced5e7323352e34604725ad67739d1b4bf538a3864e95d8311ebc91d522b1603da94061e82535edced56',
33
- '0445f15e55a044b1516a7b2cc13dd4e9ea415336f622b9185e4ffc19e2b51627637491195c85f87ac2582ac4a8d89a33983f0700d042fd7e57d55d346f4fbc832c',
34
- '042b9cede77aa38f1d824ebd5e13129c8c1c163f3ea74b5251e420831ec17329be741b2af96cc6df0c253e4bffdac23f4bb373e53ae1821587ce0ecae476d2b95c',
35
- '040cea26562b3763dddd741f4428f37cdc931dbd2db9665888505c2be42868ee2d739aed1d0a54c116b889f5d1ff57dae8dcc1e595cf6d69e71853a8053449ab9f',
36
- '040e656b714a6d5dd579dbb15948335fbe2d4acbbf2943209cf4dcd662fc0fec577c746fad12a0c5b0eae0c1de2f723c9ac3fa3bdfda93f8f6fd167a14c1805fbe',
37
- '040c87f12d2006b44e9b86f66eb9d51edb18bc3c1884ea678b41a2e0b908ba882b648a1ffd70e31436a30aeab7fe569b6dbbb4d042973d7d06a6ee764f92a72843',
38
- '044130f0531edb1db0d399206ed4359d9070f4e8ba38193098ddb3d2af00924847d843ee0961346af65647ae81949cc144b0f32c54be2e3a86effa98dd86ebadd0',
39
- '046d3161213d66b5464ff6546d48f87a807849da6d58f3e58fbc4b21db89cd837955c37afae9a719a8f0899893398188d986b14971c390bc0a69bee8dfabdaa9ad',
40
- '043e0d5b87f4db112911e1e83f3e5907c310caab70b5bc05980226ee20900d6c87c7b2d0004bf5bfe7af3a161174fe8b762bbc71886c7af1c4ad89166a8221b465',
41
- '0435817aec4f46df42a3d3cbbe5def767c7eeee56be38b0e0977aa62c225fedd08b99c9496fb9cccbed3507044b4dd4db8191faa750f217cad9a581224106c2be7',
42
- '046f76dbc25d287e6e942fc373639f53f29f06a194dcf5018737dbe694102a4f41bd4648507d6c32863f739f45dfe3837c0ad6bde690cb90eb69b7821abab459e5',
43
- '04bd0c975ef09a2532e83b8331240c55be5db624450cfeeb302cc2581f289badaef8e06c96b48544190cc3d1a20f0850e43b463bd8480aae549930e9ae95ead78d',
44
- '04cdd0215b29e28d388fd27914c7cc81b3895e8c61a8abb39b8905a00bba0765824648677e99038154a54da3be52067396562f901264a42b7cfbe7045223b83365',
45
- '04f147bf44c91272c3fb5aaa4a4fe6a36a355c9c77d80fb62564d3f43fdcff4ccda03b14510df7ee5ff81a5522709e86a1ddb5e6fea6b3dd7e29ee1a43cd23bf95',
46
- '042c6900f85f7193ad5e4e8e1c2d63a1bd874f03fac1966e33cb3ca9e76de8f70f054125fe15aace443a8978f0781225b819f7326d202f624d803b89ed833e8d67',
47
- '04dfc672fd79e75d74d2a9163b46b95982e8f93b0e75e11ecaaac869e59c83af4f384ce1e72075dabfeac4a6ca63db0d2e8658324007cc0bec9882ddf286172cda',
48
- '04c243743ba6326a443c34d503ea5d2d3036e1fbc8dbb072d4ae0f9b8016910db38e234641b87557fb44bcddee612722a67831bbac9758982a5843d9077be9434d',
49
- '04f1a32b84249a4b909974e32b33cc78aeef8144ef57744e792e6203fb8acce348f0d5d5535ed9a65ac741744a264de2073e49dbcd989819cddc90285b5e97a28a',
50
- '04894fa385d11809244da4f3d7de8ddd70c25abd5d4d3054b438d09016f2fd0a98729e15ea1483fbde83489fec6c64f8be014db8dc22227babcecdb5fd996ea671',
51
- '0488c8f35649583d68c01c3b34223f11cc61389bcc71707960a6b1c30854ac1a0b5da916c47ee4cb1a78a9bac3d602aec67a5cd49b34732b6d1cc4fb2cb6b04361',
52
- '04e4be5f15b528c594bfe732e4fcae4e65d63580051bb0235e6c1ca91c2663d54afa4b873dfeacbc4df98c57a923f7b308277f9d6bd064e81ed8e6890a1c582532',
53
- '041c6ff76562b8042cf0e678d4bf977da09947d531e628450acbda0f0609c242c63db0be7fa1c601940af499b455e207c252706b37487c41fa9086621c3bd5c131',
54
- '041b31c4fc213b27a34106e5ee8c7516941fdf8b15e3410987592ee488081c8dde5f42d397901c6d8b1d029d89bd2286b9183091a1edf12914be29aea40968d039',
55
- '045de24c0d64b611bee13f34d74a3df7b24a658e6fea1bf1b9b3b530c23177759ba757e86494ff51c688bd63c1c85e93148bd81f39c5db80d3b5a0c05a6da4f380',
56
- '049fb194cd0f7d79b3aae0b681d9f324c3dd086bb3f568067070bed195e1d7f0c722f86f7f9476da68b4c57e42536e5ab8c7fc74ee4726208814897849cac77b47',
57
- ],
58
10
  debug: {
59
11
  rootPubKeys: [
60
12
  '047f77368dea2d4d61e989f474a56723c3212dacf8a808d8795595ef38441427c4389bc454f02089d7f08b873005e4c28d432468997871c0bf286fd3861e21e96a',
61
13
  ],
62
- caPubKeys: [
63
- '04ba6084cb9fba7c86d5d5a86108a91d55a27056da4eabbedde88a95e1cae8bce3620889167aaf7f2db166998f950984aa195e868f96e22803c3cd991be31d39e7',
64
- ],
65
14
  },
66
15
  },
67
16
  T3B1: {
68
17
  rootPubKeys: [
69
18
  '045b5c3fdd01f3602092834209b86df0ca86a9faf25cac35c73bf6237d66eb21eafcec3706f1ccd5eb4cc7f2fa1751213eccb1c78389afba89a5788ff31ee46a5d',
70
19
  ],
71
- caPubKeys: [
72
- '04860857f8ceb107cf03cc6ef56523b5e440e2ed51933cc49ac8a498063f06ab891bdafd0a1655aa287b9ded8a898d9532ec9d6550db3bb524e7af3e474b013d87',
73
- '047962b89421e26daa51e0c368d6bbd7d49dcf972b0a6f148c115aedbba533e1574740dfa51c11992c276872ac2f11b3e0f54499c3347e83410142818ac4579b8e',
74
- '04bc9f1e23ceed59b3e7b6b760a41f1f37ccc252adb1186e4035ec3f46266656400c7cd4c7153c9dec581b655c9ba1f74878c84128e60a66eed46e251e2eaf065f',
75
- '0424759a6f4f2bd7ba1c32830c4260248fab48549c7b53b373fcf7d2a881f8198cae63f3d80028596f5f78073251b022c3ff0a7273e2b63e8d2cda0556b416f3d3',
76
- '04ca8ae9f668b58e0ca4f14a5681d60e8dba7404192c034256304bc26fc6f059ef50fbc9667b7df704ef5010c788534e2416451b282f49ce0f75c64b5e23faac8a',
77
- '04f02f0ec41b2a19ce25b954f2a915035f45ce592f7d1f2252a41aa9dd7bcbb6a0be9442a3946ee9aa900c1201c595140999d445d912755bd75da070a1a2b7fac7',
78
- '04256936d48d9b60713b65f73a078cb8564f150e3986dfbf396d59b8b2a82cb8b6e33c145642d2993cbd6fa1d0e3efddc23d1b802fa786bb3e287f992d0079b66a',
79
- '04a4184699bf9965477f8c501dfc1649c536e5ec6642fc94c1e5503c153fd0caf292ae7fc9ece20b21cf5b754efe00fa1735a1d9171ae75a040f3f55b71fa83ddd',
80
- '04ffa3c5c61bf0065d053fd6f0ed8ffdddc6816ff7efa7aa30c04141522f067626f387167f0d7e6586b9ade993c5b7c33840df45db9230ed6ad31a5550bd109a36',
81
- '04476f0184085862bd38a7f39ef03be6915d7c1b0626c263f6f6c9bc5575c41f81f77d9c69eb16ce8ad7b0d11f3de937931adc9f35ea1f007b81a571ae036ef8c3',
82
- '046ecbbc4316c0a1247b91103a6f2a3bbd746c04bf47c9ea52dce3735c8ba04df088d3ce66cc8fea0063c344268e03f9d7cce35c8381747d4df4ba4491a178c382',
83
- '04c341d6af7e960f4c2926035d1f7f8164be244e87742924ef0dddf430e89521846673ed009884146042b79b02dd00c7a2d708f6dc33d43cc6d5073edc17a71376',
84
- '04221f144939e3201538d02b61a4b419b12678dc27ccd3813bfda29f181ba7160807e7a3c6f3938b12e6a9e7e76314fd13757a39454b93e3d1a28c633cbf475c0f',
85
- '0471515c2c4b94274ec0b3b1d799378730010fb6b5b738d9ef2087e930d0f75d53b1e5284ed51335f45b7b30973af848a40ad86dbe34962dfee6a019d32f5b21dd',
86
- '04f9f46d57a7bb9d2ac2e9121eb85f6e9a2a7e2b395ec6e7f93660e5caac2f64483dae074bd5b7e7d8057b2732b3dff5d861eefc5ab86059483d3374d527c877f1',
87
- '040abd7641975f6dab835e9189ba2e2f5e19feeef3eb43d3e940f903be7ddb6317450c6c0f40094584dfe8aea75f086e850b2b362982fdca684fbd07720e1482d9',
88
- '049e189082b8a35e4f46577d62fe15b76a713e9ef54f80c1aee33db05890048af5886518d643715a439ce3eead5dac6cbe1fbde26bf09ea083eccc7e8c1098c3dc',
89
- '04be948fcc006a7d719d89019a446a8f9ff298410d203db096cbd76383b3807f3d4927ef5db437b99696edbed37829b03235f49f25603bed32d7eee2c49ede403b',
90
- '0406f9e393b85787a8cc64592da993088a8e2c67b80046e6c9b567b0317e4829d7c6b6c8776ed2bbdd7e5d0ce4a72728ef12b62a022bff9179476a2e73a5df77e9',
91
- '0450fd843fc53a32bfb3db32ddbd8ba9010e3f2f68fc411b2f1f0807312e39469f463aad467afc1d43147e7832972c7b0308b247da9f284d259d96ee78fb6f5cb8',
92
- '04e38848f936b8cd47500ff5343afbbbe41e47b83037a14bb84a7cf5f7d5e3e14a38374ce4af968bc842aa7a9f69e8bed74a0a0aab72e7e05184c1522beca6689e',
93
- '0420fe4e6903c8f4fb1ffa8640a39092f388eb3ac239023fca588f5021f141274c2b3825965c4430e0e343eef7a3d9d2ee3a8d136187e90d31ebc3a3bea2d3fe1e',
94
- '043196c95801dba297dd155ada7077a262a9bf05e760008df08b50a73e8916f68ff4e2a82f66b42460eed8957041b94d99d52d727cfd56a4831d392b8d777ca236',
95
- '044e884f99e77fc2cbaf2dbc549f9333e512cf57d87eb4e608928c25f2e487ab0a2949912c760a92ae074220ce434e0fda321a16589cca79eeca22268be97aad06',
96
- '044873940e329eb82d2029d72844ddc42b8472333d6d3b8b6722d3bdb83ae61439a15ba7a4f74fb42f51d99045acc7fda96b19b230c47f8460b5275529d3ee4ab7',
97
- '0484185b05748b4ab1f2d26cf9e8f7e3fa60c7027caaeb6a9fea1d6235329d43fa6c56f86b17ec2292aeb46f3cacdc64f30e5d429c6b0bd06d7f7951454e82504d',
98
- '04ac63e1bf03df4a9d0a2fcbf3cf0f4e5f1f91fd1b12c2593ce99644765462e456298f4887d00276ac08a2e78495e6977c8b23041ca74d47ed4ee73acfd17b2664',
99
- '0427674a879f7add64219f3d13dc28dd8c718566f3a387d42a3d3ab1065aa099b603d13a35c97a5f6ef5fa3b0363031ea58ccb12e5e05a7293d540c7178be259e7',
100
- '04972aaac10ff9e2a6b9ffd32189e5a7a4aea27b390fbbcaaa42d612765c801f43578227052189d47b359f5c8b5ecf9540cf55d3ad65ff859ba7eb63288aa7161e',
101
- '04a3e29c1b92b16e1c52033eca0382cf4a5a1f71e16e89893f59844a230f4ed0946338224955ac80127df7f27133239152bcd539340b3e416656ce9027cf2b657e',
102
- ],
103
20
  debug: {
104
21
  rootPubKeys: [
105
22
  '047f77368dea2d4d61e989f474a56723c3212dacf8a808d8795595ef38441427c4389bc454f02089d7f08b873005e4c28d432468997871c0bf286fd3861e21e96a',
106
23
  ],
107
- caPubKeys: [
108
- '0410a6bc4f9eb52fd450be2c365189ea6a523fdddd62e44566dc349a8c7f813144cde81c8c106b74bfceae9c8ca5202af635ce1a5330c41c708ebbf505e025c339',
109
- '04e979dab5fc3ed274f7a217850af3d483ed7e221f9a9845e1462ad8dd63e51c084682d736675df6273a114289f26e0150bd1cda97834c537f11e3506761352159',
110
- '04f7c60026bfbb9bc75bcdf57bc3357457a16cfe25293f996bc32ee73597c9864f5ed8d2359f58b6797d69ef03b50fc3e99ac02a893b945f67b460fa84a6b2b35c',
111
- ],
112
24
  },
113
25
  },
114
26
  T3T1: {
115
27
  rootPubKeys: [
116
28
  '041854b27fb1d9f65abb66828e78c9dc0ca301e66081ab0c6a4d104f9df1cd0ad5a7c75f77a8c092f55cf825d2abaf734f934c9394d5e75f75a5a06a5ee9be93ae',
117
29
  ],
118
- caPubKeys: [
119
- '045b785b703810363deeadc0faa5a7388d8385f5e4f9170a3c27d3d2506bf9090d5b09044fbad6b906446d8cdb754b65869e8992b26a344e01ecff75844fe5a3d6',
120
- '046442ece98b1cd13389b6eda3235e2848becc655db564897b2dc0862580f69b29be59dc30f92820f41a7a493b90623e66e1ee8529dbfd60d50aed97b46c4b8f64',
121
- '0416960078e1d2b44df717ff5445ec76f4247333375982c5ae59b3bc223371f3cf81e7c182fd1ca36c95977070e2ff46f998bff3f00ab0de266edfdd430aea56b8',
122
- '041aec4007b431c7b5978c126f7e9015e7601f47e835fe13e2028883a45fc8c5d039641474b8cad1e53c4c169fe7d1905402307850ada15b788353ca7c7000939b',
123
- '04debf2a916d0c5209220ca6d202aefa174913b345d1cfd21a85ddc160626c70a559ac0ec1172041f679d99e3e1d6a30b84b04ed25ba47f707e9c2450dd4d8d1da',
124
- '045d6d5119d95f29eba79d230df9c5531e0b7c030ba9e7de0cf48a2eb82c57f0a927977f0e1f23bda144d1e90f63b62dc86c14d46bee7bf676619b3db23dc17935',
125
- '040f7744e5a4314bfc5ebacfcc271051cf1bdc07ed6b373ea039a22e41df716c4a830d60c3b96e33474de846951e5c94cf210dede28b8d11cdb3eb47723d9dc377',
126
- '044a68d0893322763cd94f997f9c4b7e9e61160113e2fdc25b9f4c5b3a1e9984dec56360b8be5e93830ad11e8e7b1a2a86803efc2f67b70495e1fe65b44934f0cf',
127
- '04d3198ee960b7f74add67c2feb96e4a175ac8da1ad0103946e080ede248db9ef7b57f2461f73c6d44e746ebc407bdc4ef9cfa209aad2ca4932d187579c546ecf9',
128
- '04a613b704d607841c8779606858d47e4919841bd990d7e24e4a33044ed2ba2033a55536cca8af95be9604cf7947705dee794774e1e0d9225476396753eb246453',
129
- '045bfb9c36e4fb0d70b3c7e208ef08097de047de4cbaf35fbb698633adeae61fb97e398d72ebb5c2facd23c86274dea6e43be5559faef0bf74496800e74f2fb220',
130
- '04839950fbd7c2da853d839360e838b486cc303ab3434dad8f36891d3fa3ba91f8da5ddd3af1ca73dc6267d0dff52700afb3a24add0da2586f8d17aacb37f49926',
131
- '04903be00e4c5561413513eec337f0a6bec4968711de83242856e6b2bf1f06b26732b7bb1322a817448c03fc2f312318af67be580add0768179ce1af1f5e777bd0',
132
- '0464f0ef96854bc7f081396ce7a2c75df4208f551c19d27f5a81238d47b842df800383a736a1b5b1c9e1e458d05ea1584e12278ab5e1252a098820251b37917c22',
133
- '0401f3f804333b4d0caa18d27dfc0698dbc11c33b703019018e5819734ef2551615ba6915e6119bd7d36c035553ea660f1ccf7c34e2375e8e1ddf0a471b76707fd',
134
- '04b427eb0e1484b7127f82820edddbbb538c11d3c330b5f68acef96c8cf4601b30390311f2d48090f3f5c5e4bf56ca0396984797cd92ab0d12164600c9f43d2ba3',
135
- '0438e670e9eb3cd19f8579b3202caf9aa766c8d5735ab97bd3682155437499e062587bded86c732789345538581c83e9e42af0a15a4ad81bc42e1f28a7859ebce0',
136
- '04ac2a7e88ffc08186b3cb461966a96cacdb2c07b383018d708a6f0ce0b74f59dca97a6f31fc8d243a781c7fe5006dc6b8ef05347972082b32fb29c636c595ffbc',
137
- '047c32e92dc23894b60b6c182f589a12e4e57f82e48176936f56646c14dd8f0d300fd4737e17501d71deb84127c272c5b797ccf30a7a4531846b9c79866f2892c6',
138
- '046482d01c4dbdac60327352d150b5e6d5772cd68732616a0abc5649c49111bc3ba0eb28aa424100efa27cdb98675395df4b9097097e92adecc39f5587306a9fac',
139
- '04f96a9fdecc4247c67e083a69037d1794230441270e4bda6d4151eb2e385d576d046d36734dd262e45c8cf3bbe24bdd11c1dc0e58437107d55cea3942f14b7d61',
140
- '042678d71fcf002a5c6781ecbb48ec99a67c797a2a7a0a2aac2a2aa66681ea4c6df180bf2110ce259cb128aa8a8e966ae1138964a0175de597674ae59b74feac87',
141
- '0452be582403337ee206509e88713ddc1e1aa7e8265de522988f6af7562c136ee62ea75ce320c713d7d6ed1ceefded828c3284ccdc7c89f1867336aff24566ef3f',
142
- '04b3117b4173d5792d75988fc5788cdc79a17a4a2168de1d5fd029c56da6da48fd6c4f557531a4a7af924816fc7a7b8cec451d2920c91be52930333e57a1ff2f03',
143
- '040f69618522bcdc4f4dbc8705d45fae21cc6305dfa4c8244382b057f359fb6042b4888474176dbd921fef937ba9aa1f3800012f9d325be81d8db454b249107106',
144
- '049d8c7af7ea30b6baabf692f69980c0a3d388fdfde905e46ce535b39915b8c6f2c07a643c7a046029d27f58643423cd5a798caa6df3ee11d5d5e9dfdc7a61ed16',
145
- '04eddb271cbe838a96cab86fdd19dc2bdfb466ab7c62f1ef834554bc7c9e6c1136dc093b732d55d28346ba306f80cf6c1ba980402d762dba15457a9b3025223bd7',
146
- '043306644c3934ca5540cfd061a59bbf2f9c6842de588baf83f35e4e537a4b06dd284488e15055ecdaa5a68c05448542695b893009f9021a04110f86d6a6dbbc52',
147
- '0483d95889c24f5e00f98803d82246eb43aefaa7fb3641750dc60cb45d0df350d1ca71f759d0b1e8f75ffa7c09ed53f17f492890a2529b396e3158a1a2802a4207',
148
- '04dfab03c1e3e2c56c9c5a2aca3a65d6106e75a6364550a76e6c05e8310cbf7a6cb5e1ab6bfbce75019dc2d2a742251da8ad34689f48d163b6daac2b8f63c3b2b0',
149
- '0430784bf46bdc12f9478c58355b05976569a603cfc9425f97fba52d0302d2a425c83e15a848e2d20100b439182064a135d287dcda7004f86219557be3c314d91a',
150
- '043dc0a6be47922777363845c71d77ed41a739e570f6a2ccc44650386accd3a64e7b6196fc93cd93dbd0fcfb8e79537f07f5bf0e197b80e00559bc08bb881940e3',
151
- '04aebb2ca7ead04b17af733cf94339f31386db629310054d6af5c696a0693e4afc7ab414422562f9a7312783e28833c2802c1cefb96af0a8528f12f5d395c82c05',
152
- '045f5f8c0f6665149630f001871e0f5baec0633d3452da2f6c0b5a6585429525e47704eb79b2dfb8a628e429016a8f426ead61e8623be69d242553c4d67725c4f0',
153
- '0459a992145ffbe5f18123380427208dc940fc946648530e516328e3b511a1fc8e920287e51aa1bbae5d015587164acabe52b04d4d48cab2d8b0415b651ffb372f',
154
- '040925ae014e1fc43bdaadb1a2596f69bb5ea6bb42e8c295600940607788b2673d89eba89a0a3a2c8e46a66356f45e462f5bd84fc0254dae37c2543a837701587e',
155
- '040bdbc1617f8949463c2c113df382303ade8d4e55cdff60cd424ce19e983772a7dc606c42e99f2d1dfc8fbc93e1bddb3aa112761380e12161846c25d2a0a069a9',
156
- '044540af92c1a645fb36f360f6a2a685e979480fd2afe70f465199c64020779dd5c8ab2129dbca29ea893dc6b2b0af732ad09bb61d881f43bbcf4b91e91b90a592',
157
- '04f7dea866ad77fe63b6c2114e7f9efdac21501de1a9fc43ee6574397353d950cb3f7cd77e19a2bf13adc6ee39ee758720b66f3802053281dedba07735bf56b7a0',
158
- ],
159
30
  debug: {
160
31
  rootPubKeys: [
161
32
  '04e48b69cd7962068d3cca3bcc6b1747ef496c1e28b5529e34ad7295215ea161dbe8fb08ae0479568f9d2cb07630cb3e52f4af0692102da5873559e45e9fa72959',
162
33
  ],
163
- caPubKeys: [
164
- '04829e8965018feb542e9236c9b2ce08f864a55ed9183d0259564f0e05345b04676a0bef36c59d21d3c24868b5601f0b1193a6bfcf6d814e1cfb79c2256a05e953',
165
- ],
166
34
  },
167
35
  },
168
36
  T3W1: {
169
- rootPubKeys: [],
170
- caPubKeys: [],
37
+ rootPubKeys: [
38
+ '040dde0d3e0d4da593fac6fd02a461d0e7eef238aca55c7c50b4e9ec37f3873303b6429ef1c9b78b4411a7dcbbc5dde5225979c1c2da3b073e82b1ed3f5f9825bb',
39
+ ],
171
40
  debug: {
172
41
  rootPubKeys: [
173
42
  '04521192e173a9da4e3023f747d836563725372681eba3079c56ff11b2fc137ab189eb4155f371127651b5594f8c332fc1e9c0f3b80d4212822668b63189706578',
174
43
  ],
175
- caPubKeys: [
176
- '04a5d701fced9b5a2cd076a02d8a98e779c54946eefc7b2525fac782fa3d65b5d9e6a8c90946bd30b35dfeec34a053f1106ba130a8472037f2db8cf2c4b3b6e93a',
177
- '047e5985facc7f4084581fc80aa7c15684a39138aa31d83064aa7fbbb1c20b77b9c65405257131e8e82bb587b07df89985b895ff50fb597d35ce8b37711b4b290b',
178
- '0426be191b127e795456d4fc758ebf2a0119f5ed745b415e339588483a8b50942277ce5e791a1a40b4bcdf1ff27c98700bb878b2d9376334d609778f4a38077ab9',
179
- ],
180
44
  },
181
45
  },
182
46
  };
@@ -3,38 +3,30 @@ export type DeviceAuthenticityConfig = Static<typeof DeviceAuthenticityConfig>;
3
3
  export declare const DeviceAuthenticityConfig: import("@trezor/schema-utils").TIntersect<[import("@trezor/schema-utils").TIntersect<[import("@trezor/schema-utils").TObject<{
4
4
  T2B1: import("@trezor/schema-utils").TIntersect<[import("@trezor/schema-utils").TObject<{
5
5
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
6
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
7
6
  }>, import("@trezor/schema-utils").TObject<{
8
7
  debug: import("@trezor/schema-utils").TOptional<import("@trezor/schema-utils").TObject<{
9
8
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
10
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
11
9
  }>>;
12
10
  }>]>;
13
11
  T3B1: import("@trezor/schema-utils").TIntersect<[import("@trezor/schema-utils").TObject<{
14
12
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
15
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
16
13
  }>, import("@trezor/schema-utils").TObject<{
17
14
  debug: import("@trezor/schema-utils").TOptional<import("@trezor/schema-utils").TObject<{
18
15
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
19
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
20
16
  }>>;
21
17
  }>]>;
22
18
  T3T1: import("@trezor/schema-utils").TIntersect<[import("@trezor/schema-utils").TObject<{
23
19
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
24
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
25
20
  }>, import("@trezor/schema-utils").TObject<{
26
21
  debug: import("@trezor/schema-utils").TOptional<import("@trezor/schema-utils").TObject<{
27
22
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
28
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
29
23
  }>>;
30
24
  }>]>;
31
25
  T3W1: import("@trezor/schema-utils").TIntersect<[import("@trezor/schema-utils").TObject<{
32
26
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
33
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
34
27
  }>, import("@trezor/schema-utils").TObject<{
35
28
  debug: import("@trezor/schema-utils").TOptional<import("@trezor/schema-utils").TObject<{
36
29
  rootPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
37
- caPubKeys: import("@trezor/schema-utils").TArray<import("@trezor/schema-utils").TString>;
38
30
  }>>;
39
31
  }>]>;
40
32
  }>, import("@trezor/schema-utils").TObject<{
@@ -43,6 +35,5 @@ export declare const DeviceAuthenticityConfig: import("@trezor/schema-utils").TI
43
35
  UNKNOWN: import("@trezor/schema-utils").TOptional<import("@trezor/schema-utils").TUndefined>;
44
36
  }>]>, import("@trezor/schema-utils").TObject<{
45
37
  version: import("@trezor/schema-utils").TNumber;
46
- timestamp: import("@trezor/schema-utils").TString;
47
38
  }>]>;
48
39
  //# sourceMappingURL=deviceAuthenticityConfigTypes.d.ts.map
@@ -1,14 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DeviceAuthenticityConfig = void 0;
4
+ const protobuf_1 = require("@trezor/protobuf");
4
5
  const schema_utils_1 = require("@trezor/schema-utils");
5
- const constants_1 = require("../constants");
6
6
  const CertPubKeys = schema_utils_1.Type.Object({
7
7
  rootPubKeys: schema_utils_1.Type.Array(schema_utils_1.Type.String()),
8
- caPubKeys: schema_utils_1.Type.Array(schema_utils_1.Type.String()),
9
8
  });
10
- const ModelsWithKeys = schema_utils_1.Type.Exclude(schema_utils_1.Type.KeyOfEnum(constants_1.PROTO.DeviceModelInternal), schema_utils_1.Type.Union([schema_utils_1.Type.Literal('T1B1'), schema_utils_1.Type.Literal('T2T1'), schema_utils_1.Type.Literal('UNKNOWN')]));
11
- const ModelsWithoutKeys = schema_utils_1.Type.Extract(schema_utils_1.Type.KeyOfEnum(constants_1.PROTO.DeviceModelInternal), schema_utils_1.Type.Union([schema_utils_1.Type.Literal('T1B1'), schema_utils_1.Type.Literal('T2T1'), schema_utils_1.Type.Literal('UNKNOWN')]));
9
+ const ModelsWithKeys = schema_utils_1.Type.Exclude(schema_utils_1.Type.KeyOfEnum(protobuf_1.MessagesSchema.DeviceModelInternal), schema_utils_1.Type.Union([schema_utils_1.Type.Literal('T1B1'), schema_utils_1.Type.Literal('T2T1'), schema_utils_1.Type.Literal('UNKNOWN')]));
10
+ const ModelsWithoutKeys = schema_utils_1.Type.Extract(schema_utils_1.Type.KeyOfEnum(protobuf_1.MessagesSchema.DeviceModelInternal), schema_utils_1.Type.Union([schema_utils_1.Type.Literal('T1B1'), schema_utils_1.Type.Literal('T2T1'), schema_utils_1.Type.Literal('UNKNOWN')]));
12
11
  const ModelPubKeys = schema_utils_1.Type.Intersect([
13
12
  schema_utils_1.Type.Record(ModelsWithKeys, schema_utils_1.Type.Intersect([
14
13
  CertPubKeys,
@@ -22,7 +21,6 @@ exports.DeviceAuthenticityConfig = schema_utils_1.Type.Intersect([
22
21
  ModelPubKeys,
23
22
  schema_utils_1.Type.Object({
24
23
  version: schema_utils_1.Type.Number(),
25
- timestamp: schema_utils_1.Type.String(),
26
24
  }),
27
25
  ]);
28
26
  //# sourceMappingURL=deviceAuthenticityConfigTypes.js.map
@@ -1,11 +1,14 @@
1
- import { ConditionalRelease, DeviceModelInternal, FirmwareRelease, FirmwareReleaseConfig, IntermediaryReleaseConfig, VersionArray } from '@trezor/device-utils';
2
- import { Features, FirmwareReleaseConfigInfo, FirmwareType } from '../types';
3
- export type FirmwareUpdateSource = 'production' | 'test-unsigned' | 'test-signed' | 'localhost-unsigned' | 'localhost-signed';
4
- export declare const getOnlineFirmwareBaseUrl: () => {
5
- env: FirmwareUpdateSource;
1
+ import { ConditionalRelease, DeviceModelInternal, FirmwareRelease, FirmwareReleaseConfig, FirmwareType, IntermediaryReleaseConfig, VersionArray } from '@trezor/device-utils';
2
+ import { Features } from '../types/device';
3
+ import { FirmwareReleaseConfigInfo, FirmwareUpdateSource } from '../types/firmware';
4
+ interface RemoteBaseInfo {
6
5
  BASE_URL: string;
7
6
  MIDDLE_PATH: string;
7
+ }
8
+ type OnlineFirmwareBaseUrl = RemoteBaseInfo & {
9
+ env: FirmwareUpdateSource;
8
10
  };
11
+ export declare const getOnlineFirmwareBaseUrl: () => OnlineFirmwareBaseUrl;
9
12
  export declare const getBundledRelease: (deviceModel: DeviceModelInternal, firmwareType: FirmwareType) => FirmwareRelease | undefined;
10
13
  export declare const getOnlineReleaseByVersion: (deviceModel: DeviceModelInternal, firmwareVersion: VersionArray, firmwareType: FirmwareType) => Promise<FirmwareRelease | undefined>;
11
14
  export declare const getReleaseConfig: (features: Features, firmwareType: FirmwareType) => ConditionalRelease | undefined;
@@ -28,8 +31,9 @@ interface GetReleaseInfoParams {
28
31
  intermediary: IntermediaryReleaseConfig | undefined;
29
32
  firmwareType: FirmwareType;
30
33
  isBitcoinOnlyAvailable: boolean;
34
+ releasesOfDevice: FirmwareRelease[];
31
35
  }
32
- export declare const getReleaseInfo: ({ features, release, conditions, intermediary, firmwareType, isBitcoinOnlyAvailable, }: GetReleaseInfoParams) => FirmwareReleaseConfigInfo;
36
+ export declare const getReleaseInfo: ({ features, release, conditions, intermediary, firmwareType, isBitcoinOnlyAvailable, releasesOfDevice, }: GetReleaseInfoParams) => FirmwareReleaseConfigInfo;
33
37
  export declare const getFirmwareReleaseConfigInfo: (features: Features, firmwareType: FirmwareType) => FirmwareReleaseConfigInfo | undefined;
34
38
  export declare const getFirmwareStatus: (features: Features, firmwareType: FirmwareType) => "valid" | "outdated" | "required" | "unknown" | "custom" | "none";
35
39
  type GetFirmwareLocationParam = {
@@ -39,9 +43,10 @@ type GetFirmwareLocationParam = {
39
43
  firmwareType: FirmwareType;
40
44
  intermediaryVersion?: number;
41
45
  };
42
- export declare const getFirmwareLocation: ({ firmwareVersion, remotePath, deviceModel, firmwareType, intermediaryVersion, }: GetFirmwareLocationParam) => {
46
+ type FirmwareLocationPathParams = {
43
47
  baseUrl: string;
44
48
  path: string;
45
49
  };
50
+ export declare const getFirmwareLocation: ({ firmwareVersion, remotePath, deviceModel, firmwareType, intermediaryVersion, }: GetFirmwareLocationParam) => FirmwareLocationPathParams;
46
51
  export {};
47
52
  //# sourceMappingURL=firmwareInfo.d.ts.map
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getFirmwareLocation = exports.getFirmwareStatus = exports.getFirmwareReleaseConfigInfo = exports.getReleaseInfo = exports.getLanguage = exports.initializeFirmwareConfig = exports.createRemoteFirmwareConfig = exports.createLocalFirmwareConfig = exports.getReleaseByVersion = exports.getReleaseConfig = exports.getOnlineReleaseByVersion = exports.getBundledRelease = exports.getOnlineFirmwareBaseUrl = void 0;
4
4
  const device_utils_1 = require("@trezor/device-utils");
5
5
  const utils_1 = require("@trezor/utils");
6
- const types_1 = require("../types");
7
6
  const DataManager_1 = require("./DataManager");
8
7
  const assetUtils_1 = require("../utils/assetUtils");
9
8
  const assets_1 = require("../utils/assets");
@@ -16,6 +15,10 @@ const UNSIGNED_URL_REMOTE_BASE = {
16
15
  BASE_URL: 'https://data.trezor.io',
17
16
  MIDDLE_PATH: 'dev/firmware/releases/unsigned',
18
17
  };
18
+ const UNSIGNED_STABLE_URL_REMOTE_BASE = {
19
+ BASE_URL: 'https://data.trezor.io',
20
+ MIDDLE_PATH: 'dev/firmware/releases/unsigned-stable',
21
+ };
19
22
  const SIGNED_URL_REMOTE_BASE = {
20
23
  BASE_URL: 'https://suite.corp.sldev.cz',
21
24
  MIDDLE_PATH: 'firmware/signed',
@@ -31,6 +34,7 @@ const UNSIGNED_LOCALHOST = {
31
34
  const FIRMWARE_REMOTE_BASE_URLS = {
32
35
  production: RELEASES_URL_REMOTE_BASE,
33
36
  'test-unsigned': UNSIGNED_URL_REMOTE_BASE,
37
+ 'test-unsigned-stable': UNSIGNED_STABLE_URL_REMOTE_BASE,
34
38
  'test-signed': SIGNED_URL_REMOTE_BASE,
35
39
  'localhost-unsigned': UNSIGNED_LOCALHOST,
36
40
  'localhost-signed': SIGNED_LOCALHOST,
@@ -83,12 +87,16 @@ const getOnlineReleaseByPath = async (releasePath) => {
83
87
  });
84
88
  return response;
85
89
  };
86
- const getOnlineReleaseByVersion = async (deviceModel, firmwareVersion, firmwareType) => {
90
+ const getOnlineReleasePath = (deviceModel, firmwareVersion, firmwareType) => {
87
91
  const onlineFirmwareBaseUrl = (0, exports.getOnlineFirmwareBaseUrl)();
88
- const firmwareTypeFileString = firmwareType === types_1.FirmwareType.BitcoinOnly ? 'bitcoinonly' : 'universal';
92
+ const firmwareTypeFileString = firmwareType === device_utils_1.FirmwareType.BitcoinOnly ? 'bitcoinonly' : 'universal';
89
93
  const relaseJsonFilename = `${deviceModel.toLowerCase()}-${firmwareVersion.join('.')}-${firmwareTypeFileString}.json`;
90
94
  const origin = `${onlineFirmwareBaseUrl.MIDDLE_PATH}/${deviceModel.toLowerCase()}/${firmwareTypeFileString}`;
91
95
  const releasePath = `${origin}/${relaseJsonFilename}`;
96
+ return releasePath;
97
+ };
98
+ const getOnlineReleaseByVersion = async (deviceModel, firmwareVersion, firmwareType) => {
99
+ const releasePath = getOnlineReleasePath(deviceModel, firmwareVersion, firmwareType);
92
100
  const onlineRelease = await getOnlineReleaseByPath(releasePath);
93
101
  if (!onlineRelease || !utils_1.versionUtils.isEqual(onlineRelease.version, firmwareVersion)) {
94
102
  return;
@@ -126,6 +134,13 @@ const getReleaseByVersion = async (features, firmwareVersion, firmwareType) => {
126
134
  if (releaseFromConfig && utils_1.versionUtils.isEqual(firmwareVersion, releaseFromConfig.version)) {
127
135
  return releaseFromConfig;
128
136
  }
137
+ const releaseName = (0, firmwareUtils_1.buildLocalReleaseName)(firmwareType, deviceModel, firmwareVersion);
138
+ const { firmwareDir, firmwareList } = DataManager_1.DataManager.getLocalFirmwares();
139
+ if ((0, firmwareUtils_1.isFirmwareCacheUsedForSelectedSource)() && firmwareList.includes(releaseName)) {
140
+ const localReleasePath = `${firmwareDir}${releaseName}`;
141
+ const localReleaseBuffer = await (0, assets_1.httpRequest)(localReleasePath, 'json');
142
+ return JSON.parse(localReleaseBuffer.toString());
143
+ }
129
144
  const release = (await tryGetRelease(() => (0, assetUtils_1.getReleaseAsset)(deviceModel, firmwareVersion, firmwareType))) ||
130
145
  (await tryGetRelease(() => (0, exports.getOnlineReleaseByVersion)(deviceModel, firmwareVersion, firmwareType)));
131
146
  if (release && utils_1.versionUtils.isEqual(release.version, firmwareVersion)) {
@@ -143,13 +158,13 @@ const createLocalFirmwareConfig = (baseConfig) => {
143
158
  const { 'bitcoin-only': bitcoinOnlyConfig, universal: universalConfig } = modelReleases ?? {};
144
159
  if (!bitcoinOnlyConfig?.releasePath || !universalConfig?.releasePath)
145
160
  return null;
146
- const btcOnlyRelease = (0, exports.getBundledRelease)(modelKey, types_1.FirmwareType.BitcoinOnly);
147
- const universalRelease = (0, exports.getBundledRelease)(modelKey, types_1.FirmwareType.Universal);
161
+ const btcOnlyRelease = (0, exports.getBundledRelease)(modelKey, device_utils_1.FirmwareType.BitcoinOnly);
162
+ const universalRelease = (0, exports.getBundledRelease)(modelKey, device_utils_1.FirmwareType.Universal);
148
163
  if (!btcOnlyRelease || !universalRelease)
149
164
  return null;
150
165
  const releases = {
151
- [types_1.FirmwareType.BitcoinOnly]: { ...bitcoinOnlyConfig, release: btcOnlyRelease },
152
- [types_1.FirmwareType.Universal]: { ...universalConfig, release: universalRelease },
166
+ [device_utils_1.FirmwareType.BitcoinOnly]: { ...bitcoinOnlyConfig, release: btcOnlyRelease },
167
+ [device_utils_1.FirmwareType.Universal]: { ...universalConfig, release: universalRelease },
153
168
  };
154
169
  return [modelKey, releases];
155
170
  })
@@ -172,11 +187,11 @@ const createRemoteFirmwareConfig = async (config) => {
172
187
  if (!universalRelease || !bitcoinOnlyRelease)
173
188
  return null;
174
189
  const releases = {
175
- [types_1.FirmwareType.BitcoinOnly]: {
190
+ [device_utils_1.FirmwareType.BitcoinOnly]: {
176
191
  ...bitcoinOnlyConfig,
177
192
  release: bitcoinOnlyRelease,
178
193
  },
179
- [types_1.FirmwareType.Universal]: { ...universalConfig, release: universalRelease },
194
+ [device_utils_1.FirmwareType.Universal]: { ...universalConfig, release: universalRelease },
180
195
  };
181
196
  return [modelKey, releases];
182
197
  });
@@ -253,7 +268,7 @@ const getIsBitcoinOnlyAvailable = (features) => {
253
268
  throw new Error('Firmware release config not loaded.');
254
269
  }
255
270
  const deviceMessageRelease = firmwareReleaseConfig[internal_model];
256
- return !!deviceMessageRelease && !!deviceMessageRelease[types_1.FirmwareType.BitcoinOnly];
271
+ return !!deviceMessageRelease && !!deviceMessageRelease[device_utils_1.FirmwareType.BitcoinOnly];
257
272
  };
258
273
  const isValidConditionalRelease = (release) => !!(release.version && release.min_firmware_version && release.min_bootloader_version);
259
274
  const calculateShouldOfferRelease = (rolloutProbability, deviceId) => {
@@ -268,14 +283,40 @@ const calculateShouldOfferRelease = (rolloutProbability, deviceId) => {
268
283
  return deterministicValueToCompare < rolloutProbability;
269
284
  }
270
285
  };
271
- const getReleaseInfo = ({ features, release, conditions, intermediary, firmwareType, isBitcoinOnlyAvailable, }) => {
286
+ const getChangelog = (releases, features) => {
287
+ if (features.bootloader_mode) {
288
+ if (features.firmware_present && features.major_version === 1) {
289
+ return null;
290
+ }
291
+ if (features.firmware_present && features.major_version === 2) {
292
+ return releases.filter(r => utils_1.versionUtils.isNewer(r.version, [
293
+ features.fw_major,
294
+ features.fw_minor,
295
+ features.fw_patch,
296
+ ]));
297
+ }
298
+ return releases;
299
+ }
300
+ return releases.filter(r => utils_1.versionUtils.isNewer(r.version, [
301
+ features.major_version,
302
+ features.minor_version,
303
+ features.patch_version,
304
+ ]));
305
+ };
306
+ const isRequired = (changelog) => {
307
+ if (!changelog || !changelog.length)
308
+ return null;
309
+ return changelog.some(item => item.required);
310
+ };
311
+ const getReleaseInfo = ({ features, release, conditions, intermediary, firmwareType, isBitcoinOnlyAvailable, releasesOfDevice, }) => {
272
312
  if (!(0, firmwareUtils_1.isStrictFeatures)(features)) {
273
313
  throw new Error('Features of unexpected shape provided.');
274
314
  }
275
315
  if (!isValidConditionalRelease(release)) {
276
316
  throw new Error(`Release object in unexpected shape.`);
277
317
  }
278
- const { min_firmware_version, min_bootloader_version, required } = release;
318
+ const { min_firmware_version, min_bootloader_version } = release;
319
+ const changelog = getChangelog(releasesOfDevice, features);
279
320
  let isNewer = false;
280
321
  let requiresIntermediary = false;
281
322
  if (features.bootloader_mode && release.bootloader_version) {
@@ -314,7 +355,7 @@ const getReleaseInfo = ({ features, release, conditions, intermediary, firmwareT
314
355
  },
315
356
  release,
316
357
  intermediary: requiresIntermediary ? intermediary : undefined,
317
- isRequired: required,
358
+ isRequired: isRequired(changelog),
318
359
  isNewer,
319
360
  translations: release.translations,
320
361
  };
@@ -339,9 +380,10 @@ const getFirmwareReleaseConfigInfo = (features, firmwareType) => {
339
380
  };
340
381
  const isCompatible = versionContext.version &&
341
382
  utils_1.versionUtils.isNewerOrEqual(versionContext.version, release[versionContext.minVersionKey]);
383
+ const releasesOfDevice = (0, assetUtils_1.getReleasesAssetByDeviceModelAndFirmwareType)(features.internal_model, firmwareType);
342
384
  let suitableRelease = release;
343
385
  if (!isCompatible) {
344
- const alternativeRelease = (0, firmwareUtils_1.findBestCompatibleRelease)((0, assetUtils_1.getReleasesAssetByDeviceModelAndFirmwareType)(features.internal_model, firmwareType), currentVersion, versionContext.minVersionKey);
386
+ const alternativeRelease = (0, firmwareUtils_1.findBestCompatibleRelease)(releasesOfDevice, currentVersion, versionContext.minVersionKey);
345
387
  if (alternativeRelease) {
346
388
  suitableRelease = alternativeRelease;
347
389
  }
@@ -355,6 +397,7 @@ const getFirmwareReleaseConfigInfo = (features, firmwareType) => {
355
397
  conditions,
356
398
  intermediary,
357
399
  firmwareType: firmware_type,
400
+ releasesOfDevice,
358
401
  });
359
402
  };
360
403
  exports.getFirmwareReleaseConfigInfo = getFirmwareReleaseConfigInfo;
@@ -392,7 +435,7 @@ const getFirmwareLocation = ({ firmwareVersion, remotePath, deviceModel, firmwar
392
435
  };
393
436
  }
394
437
  const { firmwareDir, firmwareList } = DataManager_1.DataManager.getLocalFirmwares();
395
- if (firmwareList.includes(firmwareName)) {
438
+ if ((0, firmwareUtils_1.isFirmwareCacheUsedForSelectedSource)() && firmwareList.includes(firmwareName)) {
396
439
  return {
397
440
  baseUrl: firmwareDir,
398
441
  path: firmwareName,
@@ -1,3 +1,13 @@
1
- import type { BridgeInfo } from '../events/transport';
1
+ export interface BridgeInfo {
2
+ version: number[];
3
+ packages: {
4
+ name: string;
5
+ platform: string[];
6
+ url: string;
7
+ signature?: string;
8
+ preferred?: boolean;
9
+ }[];
10
+ changelog: string;
11
+ }
2
12
  export declare const suggestBridgeInstaller: (platform?: string) => BridgeInfo;
3
13
  //# sourceMappingURL=transportInfo.d.ts.map
@@ -1,3 +1,11 @@
1
- import type { UdevInfo } from '../events/transport';
1
+ export interface UdevInfo {
2
+ packages: {
3
+ name: string;
4
+ platform: string[];
5
+ url: string;
6
+ signature?: string;
7
+ preferred?: boolean;
8
+ }[];
9
+ }
2
10
  export declare const suggestUdevInstaller: (platform?: string) => UdevInfo;
3
11
  //# sourceMappingURL=udevInfo.d.ts.map
@@ -1,4 +1,4 @@
1
- export declare const VERSION = "9.6.3-beta.2";
1
+ export declare const VERSION = "9.6.4-beta.1";
2
2
  export declare const DEFAULT_DOMAIN_MAJOR_VER: string;
3
3
  export declare const DEFAULT_DOMAIN: string;
4
4
  export declare const CONTENT_SCRIPT_VERSION = 1;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEEPLINK_VERSION = exports.CONTENT_SCRIPT_VERSION = exports.DEFAULT_DOMAIN = exports.DEFAULT_DOMAIN_MAJOR_VER = exports.VERSION = void 0;
4
- exports.VERSION = '9.6.3-beta.2';
4
+ exports.VERSION = '9.6.4-beta.1';
5
5
  const versionN = exports.VERSION.split('.').map(s => parseInt(s, 10));
6
6
  const isBeta = exports.VERSION.includes('beta');
7
7
  exports.DEFAULT_DOMAIN_MAJOR_VER = `https://connect.trezor.io/${versionN[0]}/`;