@ledgerhq/device-trusted-app-kit-ledger-keyring-protocol 0.0.0-rn-ble-pairing-removed-while-reconnecting-20250807094338 → 0.0.0-web-ble-29-08---20250829104351

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 (276) hide show
  1. package/lib/cjs/api/LedgerKeyringProtocol.js +1 -1
  2. package/lib/cjs/api/LedgerKeyringProtocol.js.map +1 -1
  3. package/lib/cjs/api/LedgerKeyringProtocolBuilder.js +1 -1
  4. package/lib/cjs/api/LedgerKeyringProtocolBuilder.js.map +3 -3
  5. package/lib/cjs/api/app-binder/AddToTrustchainDeviceActionTypes.js +1 -1
  6. package/lib/cjs/api/app-binder/AddToTrustchainDeviceActionTypes.js.map +3 -3
  7. package/lib/cjs/api/app-binder/AuthenticateDeviceActionTypes.js +1 -1
  8. package/lib/cjs/api/app-binder/AuthenticateDeviceActionTypes.js.map +3 -3
  9. package/lib/cjs/api/app-binder/Errors.js +1 -1
  10. package/lib/cjs/api/app-binder/Errors.js.map +3 -3
  11. package/lib/cjs/api/app-binder/LKRPTypes.js +1 -1
  12. package/lib/cjs/api/app-binder/LKRPTypes.js.map +3 -3
  13. package/lib/cjs/api/app-binder/SignBlockHeaderCommandTypes.js +1 -1
  14. package/lib/cjs/api/app-binder/SignBlockHeaderCommandTypes.js.map +1 -1
  15. package/lib/cjs/internal/DefaultLedgerKeyringProtocol.js +1 -1
  16. package/lib/cjs/internal/DefaultLedgerKeyringProtocol.js.map +3 -3
  17. package/lib/cjs/internal/app-binder/LedgerKeyringProtocolBinder.js +1 -1
  18. package/lib/cjs/internal/app-binder/LedgerKeyringProtocolBinder.js.map +3 -3
  19. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.js +1 -1
  20. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.js.map +3 -3
  21. package/lib/cjs/internal/app-binder/command/SignBlockHeader.js +1 -1
  22. package/lib/cjs/internal/app-binder/command/SignBlockHeader.js.map +3 -3
  23. package/lib/cjs/internal/app-binder/command/SignBlockHeader.test.js +1 -1
  24. package/lib/cjs/internal/app-binder/command/SignBlockHeader.test.js.map +3 -3
  25. package/lib/cjs/internal/app-binder/device-action/AddToTrustchainDeviceAction.js +1 -1
  26. package/lib/cjs/internal/app-binder/device-action/AddToTrustchainDeviceAction.js.map +3 -3
  27. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js +2 -0
  28. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js.map +7 -0
  29. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js +2 -0
  30. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js.map +7 -0
  31. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js +2 -0
  32. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js.map +7 -0
  33. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js +2 -0
  34. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js.map +7 -0
  35. package/lib/cjs/internal/app-binder/task/AuthenticateTask.js +2 -0
  36. package/lib/cjs/internal/app-binder/task/AuthenticateTask.js.map +7 -0
  37. package/lib/cjs/internal/app-binder/task/ExtractEncryptionKeyTask.js +2 -0
  38. package/lib/cjs/internal/app-binder/task/ExtractEncryptionKeyTask.js.map +7 -0
  39. package/lib/cjs/internal/app-binder/task/ParseStreamToDeviceTask.js +1 -1
  40. package/lib/cjs/internal/app-binder/task/ParseStreamToDeviceTask.js.map +3 -3
  41. package/lib/cjs/internal/app-binder/task/SignBlockTask.js +1 -1
  42. package/lib/cjs/internal/app-binder/task/SignBlockTask.js.map +3 -3
  43. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.js +1 -1
  44. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.js.map +2 -2
  45. package/lib/cjs/internal/app-binder/task/utils/TrustedProperties.js +1 -1
  46. package/lib/cjs/internal/app-binder/task/utils/TrustedProperties.js.map +3 -3
  47. package/lib/cjs/internal/di.js +1 -1
  48. package/lib/cjs/internal/di.js.map +3 -3
  49. package/lib/cjs/internal/externalTypes.js +1 -1
  50. package/lib/cjs/internal/externalTypes.js.map +2 -2
  51. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.js +1 -1
  52. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.js.map +3 -3
  53. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js +1 -1
  54. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js.map +3 -3
  55. package/lib/cjs/internal/lkrp-datasource/data/LKRPDataSource.js +1 -1
  56. package/lib/cjs/internal/lkrp-datasource/data/LKRPDataSource.js.map +1 -1
  57. package/lib/cjs/internal/models/LKRPBlockTypes.js +2 -0
  58. package/lib/cjs/internal/models/LKRPBlockTypes.js.map +7 -0
  59. package/lib/cjs/internal/models/LKRPCommandTypes.js +2 -0
  60. package/lib/cjs/internal/models/LKRPCommandTypes.js.map +7 -0
  61. package/lib/cjs/internal/{utils/TLVTags.js → models/Tags.js} +1 -1
  62. package/lib/cjs/internal/{utils/TLVTags.js.map → models/Tags.js.map} +2 -2
  63. package/lib/cjs/internal/models/Types.js +2 -0
  64. package/lib/cjs/internal/models/Types.js.map +7 -0
  65. package/lib/cjs/internal/use-cases/authentication/AuthenticateUseCase.js +1 -1
  66. package/lib/cjs/internal/use-cases/authentication/AuthenticateUseCase.js.map +3 -3
  67. package/lib/cjs/internal/use-cases/authentication/DecryptDataUseCase.js +2 -0
  68. package/lib/cjs/internal/use-cases/authentication/DecryptDataUseCase.js.map +7 -0
  69. package/lib/cjs/internal/use-cases/authentication/EncryptDataUseCase.js +2 -0
  70. package/lib/cjs/internal/use-cases/authentication/EncryptDataUseCase.js.map +7 -0
  71. package/lib/cjs/internal/use-cases/di/useCasesModule.js +1 -1
  72. package/lib/cjs/internal/use-cases/di/useCasesModule.js.map +3 -3
  73. package/lib/cjs/internal/use-cases/di/useCasesTypes.js +1 -1
  74. package/lib/cjs/internal/use-cases/di/useCasesTypes.js.map +2 -2
  75. package/lib/cjs/internal/utils/LKRPBlock.js.map +2 -2
  76. package/lib/cjs/internal/utils/LKRPBlock.test.js +1 -1
  77. package/lib/cjs/internal/utils/LKRPBlock.test.js.map +3 -3
  78. package/lib/cjs/internal/utils/LKRPBlockStream.js +2 -2
  79. package/lib/cjs/internal/utils/LKRPBlockStream.js.map +3 -3
  80. package/lib/cjs/internal/utils/LKRPBlockStream.test.js +3 -3
  81. package/lib/cjs/internal/utils/LKRPBlockStream.test.js.map +3 -3
  82. package/lib/cjs/internal/utils/LKRPCommand.js +2 -2
  83. package/lib/cjs/internal/utils/LKRPCommand.js.map +3 -3
  84. package/lib/cjs/internal/utils/LKRPCommand.test.js +1 -1
  85. package/lib/cjs/internal/utils/LKRPCommand.test.js.map +3 -3
  86. package/lib/cjs/internal/utils/TLVBuilder.js +1 -1
  87. package/lib/cjs/internal/utils/TLVBuilder.js.map +3 -3
  88. package/lib/cjs/internal/utils/TLVParser.js +1 -1
  89. package/lib/cjs/internal/utils/TLVParser.js.map +3 -3
  90. package/lib/cjs/internal/utils/TLVParser.test.js +1 -1
  91. package/lib/cjs/internal/utils/TLVParser.test.js.map +3 -3
  92. package/lib/cjs/internal/utils/Trustchain.js +2 -0
  93. package/lib/cjs/internal/utils/Trustchain.js.map +7 -0
  94. package/lib/cjs/internal/utils/hex.js +1 -1
  95. package/lib/cjs/internal/utils/hex.js.map +3 -3
  96. package/lib/cjs/package.json +1 -0
  97. package/lib/esm/api/LedgerKeyringProtocolBuilder.js +1 -1
  98. package/lib/esm/api/LedgerKeyringProtocolBuilder.js.map +3 -3
  99. package/lib/esm/api/app-binder/AddToTrustchainDeviceActionTypes.js +1 -0
  100. package/lib/esm/api/app-binder/AddToTrustchainDeviceActionTypes.js.map +4 -4
  101. package/lib/esm/api/app-binder/AuthenticateDeviceActionTypes.js +1 -0
  102. package/lib/esm/api/app-binder/AuthenticateDeviceActionTypes.js.map +4 -4
  103. package/lib/esm/api/app-binder/Errors.js +1 -1
  104. package/lib/esm/api/app-binder/Errors.js.map +3 -3
  105. package/lib/esm/api/app-binder/LKRPTypes.js +1 -1
  106. package/lib/esm/api/app-binder/LKRPTypes.js.map +3 -3
  107. package/lib/esm/internal/DefaultLedgerKeyringProtocol.js +1 -1
  108. package/lib/esm/internal/DefaultLedgerKeyringProtocol.js.map +3 -3
  109. package/lib/esm/internal/app-binder/LedgerKeyringProtocolBinder.js +1 -1
  110. package/lib/esm/internal/app-binder/LedgerKeyringProtocolBinder.js.map +3 -3
  111. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.js +1 -1
  112. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.js.map +2 -2
  113. package/lib/esm/internal/app-binder/command/SignBlockHeader.js +1 -1
  114. package/lib/esm/internal/app-binder/command/SignBlockHeader.js.map +3 -3
  115. package/lib/esm/internal/app-binder/command/SignBlockHeader.test.js +1 -1
  116. package/lib/esm/internal/app-binder/command/SignBlockHeader.test.js.map +3 -3
  117. package/lib/esm/internal/app-binder/device-action/AddToTrustchainDeviceAction.js +1 -1
  118. package/lib/esm/internal/app-binder/device-action/AddToTrustchainDeviceAction.js.map +3 -3
  119. package/lib/esm/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js +2 -0
  120. package/lib/esm/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js.map +7 -0
  121. package/lib/esm/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js +2 -0
  122. package/lib/esm/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js.map +7 -0
  123. package/lib/esm/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js +1 -0
  124. package/lib/esm/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js +1 -0
  125. package/lib/esm/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js.map +7 -0
  126. package/lib/esm/internal/app-binder/task/AuthenticateTask.js +2 -0
  127. package/lib/esm/internal/app-binder/task/AuthenticateTask.js.map +7 -0
  128. package/lib/esm/internal/app-binder/task/ExtractEncryptionKeyTask.js +2 -0
  129. package/lib/esm/internal/app-binder/task/ExtractEncryptionKeyTask.js.map +7 -0
  130. package/lib/esm/internal/app-binder/task/ParseStreamToDeviceTask.js +1 -1
  131. package/lib/esm/internal/app-binder/task/ParseStreamToDeviceTask.js.map +3 -3
  132. package/lib/esm/internal/app-binder/task/SignBlockTask.js +1 -1
  133. package/lib/esm/internal/app-binder/task/SignBlockTask.js.map +3 -3
  134. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.js +1 -1
  135. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.js.map +3 -3
  136. package/lib/esm/internal/app-binder/task/utils/TrustedProperties.js +1 -1
  137. package/lib/esm/internal/app-binder/task/utils/TrustedProperties.js.map +3 -3
  138. package/lib/esm/internal/di.js +1 -1
  139. package/lib/esm/internal/di.js.map +3 -3
  140. package/lib/esm/internal/externalTypes.js +1 -1
  141. package/lib/esm/internal/externalTypes.js.map +2 -2
  142. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.js +1 -1
  143. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.js.map +3 -3
  144. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js +1 -1
  145. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js.map +3 -3
  146. package/lib/esm/internal/models/LKRPBlockTypes.js +1 -0
  147. package/lib/esm/internal/models/LKRPBlockTypes.js.map +7 -0
  148. package/lib/esm/internal/models/LKRPCommandTypes.js +1 -0
  149. package/lib/esm/internal/models/LKRPCommandTypes.js.map +7 -0
  150. package/lib/esm/internal/{utils/TLVTags.js → models/Tags.js} +1 -1
  151. package/lib/esm/internal/{utils/TLVTags.js.map → models/Tags.js.map} +1 -1
  152. package/lib/esm/internal/models/Types.js +1 -0
  153. package/lib/esm/internal/models/Types.js.map +7 -0
  154. package/lib/esm/internal/use-cases/authentication/AuthenticateUseCase.js +1 -1
  155. package/lib/esm/internal/use-cases/authentication/AuthenticateUseCase.js.map +3 -3
  156. package/lib/esm/internal/use-cases/authentication/DecryptDataUseCase.js +2 -0
  157. package/lib/esm/internal/use-cases/authentication/DecryptDataUseCase.js.map +7 -0
  158. package/lib/esm/internal/use-cases/authentication/EncryptDataUseCase.js +2 -0
  159. package/lib/esm/internal/use-cases/authentication/EncryptDataUseCase.js.map +7 -0
  160. package/lib/esm/internal/use-cases/di/useCasesModule.js +1 -1
  161. package/lib/esm/internal/use-cases/di/useCasesModule.js.map +3 -3
  162. package/lib/esm/internal/use-cases/di/useCasesTypes.js +1 -1
  163. package/lib/esm/internal/use-cases/di/useCasesTypes.js.map +2 -2
  164. package/lib/esm/internal/utils/LKRPBlock.js.map +2 -2
  165. package/lib/esm/internal/utils/LKRPBlock.test.js +1 -1
  166. package/lib/esm/internal/utils/LKRPBlock.test.js.map +3 -3
  167. package/lib/esm/internal/utils/LKRPBlockStream.js +2 -2
  168. package/lib/esm/internal/utils/LKRPBlockStream.js.map +3 -3
  169. package/lib/esm/internal/utils/LKRPBlockStream.test.js +3 -3
  170. package/lib/esm/internal/utils/LKRPBlockStream.test.js.map +3 -3
  171. package/lib/esm/internal/utils/LKRPCommand.js +2 -2
  172. package/lib/esm/internal/utils/LKRPCommand.js.map +3 -3
  173. package/lib/esm/internal/utils/LKRPCommand.test.js +1 -1
  174. package/lib/esm/internal/utils/LKRPCommand.test.js.map +3 -3
  175. package/lib/esm/internal/utils/TLVBuilder.js +1 -1
  176. package/lib/esm/internal/utils/TLVBuilder.js.map +2 -2
  177. package/lib/esm/internal/utils/TLVParser.js +1 -1
  178. package/lib/esm/internal/utils/TLVParser.js.map +3 -3
  179. package/lib/esm/internal/utils/TLVParser.test.js +1 -1
  180. package/lib/esm/internal/utils/TLVParser.test.js.map +3 -3
  181. package/lib/esm/internal/utils/Trustchain.js +2 -0
  182. package/lib/esm/internal/utils/Trustchain.js.map +7 -0
  183. package/lib/esm/internal/utils/hex.js +1 -1
  184. package/lib/esm/internal/utils/hex.js.map +3 -3
  185. package/lib/esm/package.json +1 -0
  186. package/lib/types/api/LedgerKeyringProtocol.d.ts +3 -4
  187. package/lib/types/api/LedgerKeyringProtocol.d.ts.map +1 -1
  188. package/lib/types/api/LedgerKeyringProtocolBuilder.d.ts +9 -6
  189. package/lib/types/api/LedgerKeyringProtocolBuilder.d.ts.map +1 -1
  190. package/lib/types/api/app-binder/AddToTrustchainDeviceActionTypes.d.ts +18 -8
  191. package/lib/types/api/app-binder/AddToTrustchainDeviceActionTypes.d.ts.map +1 -1
  192. package/lib/types/api/app-binder/AuthenticateDeviceActionTypes.d.ts +27 -31
  193. package/lib/types/api/app-binder/AuthenticateDeviceActionTypes.d.ts.map +1 -1
  194. package/lib/types/api/app-binder/Errors.d.ts +38 -12
  195. package/lib/types/api/app-binder/Errors.d.ts.map +1 -1
  196. package/lib/types/api/app-binder/LKRPTypes.d.ts +4 -0
  197. package/lib/types/api/app-binder/LKRPTypes.d.ts.map +1 -1
  198. package/lib/types/api/app-binder/SignBlockHeaderCommandTypes.d.ts +2 -1
  199. package/lib/types/api/app-binder/SignBlockHeaderCommandTypes.d.ts.map +1 -1
  200. package/lib/types/internal/DefaultLedgerKeyringProtocol.d.ts +9 -8
  201. package/lib/types/internal/DefaultLedgerKeyringProtocol.d.ts.map +1 -1
  202. package/lib/types/internal/app-binder/LedgerKeyringProtocolBinder.d.ts +10 -7
  203. package/lib/types/internal/app-binder/LedgerKeyringProtocolBinder.d.ts.map +1 -1
  204. package/lib/types/internal/app-binder/command/SignBlockHeader.d.ts +1 -0
  205. package/lib/types/internal/app-binder/command/SignBlockHeader.d.ts.map +1 -1
  206. package/lib/types/internal/app-binder/device-action/AddToTrustchainDeviceAction.d.ts +2 -2
  207. package/lib/types/internal/app-binder/device-action/AddToTrustchainDeviceAction.d.ts.map +1 -1
  208. package/lib/types/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.d.ts +29 -0
  209. package/lib/types/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.d.ts.map +1 -0
  210. package/lib/types/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.d.ts +30 -0
  211. package/lib/types/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.d.ts.map +1 -0
  212. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.d.ts +19 -0
  213. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.d.ts.map +1 -0
  214. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.d.ts +16 -0
  215. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.d.ts.map +1 -0
  216. package/lib/types/internal/app-binder/task/AuthenticateTask.d.ts +9 -0
  217. package/lib/types/internal/app-binder/task/AuthenticateTask.d.ts.map +1 -0
  218. package/lib/types/internal/app-binder/task/ExtractEncryptionKeyTask.d.ts +11 -0
  219. package/lib/types/internal/app-binder/task/ExtractEncryptionKeyTask.d.ts.map +1 -0
  220. package/lib/types/internal/app-binder/task/ParseStreamToDeviceTask.d.ts +3 -3
  221. package/lib/types/internal/app-binder/task/ParseStreamToDeviceTask.d.ts.map +1 -1
  222. package/lib/types/internal/app-binder/task/SignBlockTask.d.ts +6 -7
  223. package/lib/types/internal/app-binder/task/SignBlockTask.d.ts.map +1 -1
  224. package/lib/types/internal/app-binder/task/SignChallengeWithKeypairTask.d.ts +2 -3
  225. package/lib/types/internal/app-binder/task/SignChallengeWithKeypairTask.d.ts.map +1 -1
  226. package/lib/types/internal/app-binder/task/utils/TrustedProperties.d.ts +1 -1
  227. package/lib/types/internal/app-binder/task/utils/TrustedProperties.d.ts.map +1 -1
  228. package/lib/types/internal/di.d.ts +5 -3
  229. package/lib/types/internal/di.d.ts.map +1 -1
  230. package/lib/types/internal/externalTypes.d.ts +1 -1
  231. package/lib/types/internal/lkrp-datasource/data/HttpLKRPDataSource.d.ts +7 -9
  232. package/lib/types/internal/lkrp-datasource/data/HttpLKRPDataSource.d.ts.map +1 -1
  233. package/lib/types/internal/lkrp-datasource/data/LKRPDataSource.d.ts +7 -7
  234. package/lib/types/internal/lkrp-datasource/data/LKRPDataSource.d.ts.map +1 -1
  235. package/lib/types/internal/models/LKRPBlockTypes.d.ts +11 -0
  236. package/lib/types/internal/models/LKRPBlockTypes.d.ts.map +1 -0
  237. package/lib/types/internal/{utils/types.d.ts → models/LKRPCommandTypes.d.ts} +6 -29
  238. package/lib/types/internal/models/LKRPCommandTypes.d.ts.map +1 -0
  239. package/lib/types/internal/{utils/TLVTags.d.ts → models/Tags.d.ts} +1 -1
  240. package/lib/types/internal/models/Tags.d.ts.map +1 -0
  241. package/lib/types/internal/models/Types.d.ts +10 -0
  242. package/lib/types/internal/models/Types.d.ts.map +1 -0
  243. package/lib/types/internal/use-cases/authentication/AuthenticateUseCase.d.ts +14 -2
  244. package/lib/types/internal/use-cases/authentication/AuthenticateUseCase.d.ts.map +1 -1
  245. package/lib/types/internal/use-cases/authentication/DecryptDataUseCase.d.ts +4 -0
  246. package/lib/types/internal/use-cases/authentication/DecryptDataUseCase.d.ts.map +1 -0
  247. package/lib/types/internal/use-cases/authentication/EncryptDataUseCase.d.ts +4 -0
  248. package/lib/types/internal/use-cases/authentication/EncryptDataUseCase.d.ts.map +1 -0
  249. package/lib/types/internal/use-cases/di/useCasesModule.d.ts.map +1 -1
  250. package/lib/types/internal/use-cases/di/useCasesTypes.d.ts +2 -0
  251. package/lib/types/internal/use-cases/di/useCasesTypes.d.ts.map +1 -1
  252. package/lib/types/internal/utils/LKRPBlock.d.ts +1 -1
  253. package/lib/types/internal/utils/LKRPBlock.d.ts.map +1 -1
  254. package/lib/types/internal/utils/LKRPBlockStream.d.ts +4 -5
  255. package/lib/types/internal/utils/LKRPBlockStream.d.ts.map +1 -1
  256. package/lib/types/internal/utils/LKRPCommand.d.ts +3 -2
  257. package/lib/types/internal/utils/LKRPCommand.d.ts.map +1 -1
  258. package/lib/types/internal/utils/TLVParser.d.ts +3 -2
  259. package/lib/types/internal/utils/TLVParser.d.ts.map +1 -1
  260. package/lib/types/internal/utils/Trustchain.d.ts +14 -0
  261. package/lib/types/internal/utils/Trustchain.d.ts.map +1 -0
  262. package/lib/types/internal/utils/hex.d.ts.map +1 -1
  263. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  264. package/package.json +4 -3
  265. package/lib/cjs/internal/app-binder/device-action/AuthenticateDeviceAction.js +0 -2
  266. package/lib/cjs/internal/app-binder/device-action/AuthenticateDeviceAction.js.map +0 -7
  267. package/lib/cjs/internal/utils/types.js +0 -2
  268. package/lib/cjs/internal/utils/types.js.map +0 -7
  269. package/lib/esm/internal/app-binder/device-action/AuthenticateDeviceAction.js +0 -2
  270. package/lib/esm/internal/app-binder/device-action/AuthenticateDeviceAction.js.map +0 -7
  271. package/lib/esm/internal/utils/types.js +0 -1
  272. package/lib/types/internal/app-binder/device-action/AuthenticateDeviceAction.d.ts +0 -42
  273. package/lib/types/internal/app-binder/device-action/AuthenticateDeviceAction.d.ts.map +0 -1
  274. package/lib/types/internal/utils/TLVTags.d.ts.map +0 -1
  275. package/lib/types/internal/utils/types.d.ts.map +0 -1
  276. /package/lib/esm/internal/{utils/types.js.map → app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var o=Object.prototype.hasOwnProperty;var s=(r,t,n,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of y(t))!o.call(r,e)&&e!==n&&a(r,e,{get:()=>t[e],enumerable:!(i=p(t,e))||i.enumerable});return r};var m=r=>s(a({},"__esModule",{value:!0}),r);var c={};module.exports=m(c);
1
+ "use strict";var n=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var c=(e,t,i,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of y(t))!A.call(e,r)&&r!==i&&n(e,r,{get:()=>t[r],enumerable:!(a=p(t,r))||a.enumerable});return e};var u=e=>c(n({},"__esModule",{value:!0}),e);var o={};module.exports=u(o);
2
2
  //# sourceMappingURL=LedgerKeyringProtocol.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/api/LedgerKeyringProtocol.ts"],
4
- "sourcesContent": ["import { type Maybe } from \"purify-ts\";\n\nimport { type AuthenticateDAReturnType } from \"./app-binder/AuthenticateDeviceActionTypes\";\nimport {\n type JWT,\n type Keypair,\n type Permissions,\n} from \"./app-binder/LKRPTypes\";\n\nexport interface LedgerKeyringProtocol {\n authenticate: (\n keypair: Keypair,\n applicationId: number,\n clientName: string,\n permissions: Permissions,\n trustchainId?: string,\n JWT?: JWT,\n ) => AuthenticateDAReturnType;\n\n encryptData: (xpriv: Uint8Array, data: Uint8Array) => Uint8Array;\n\n decryptData: (xpriv: Uint8Array, data: Uint8Array) => Maybe<Uint8Array>;\n}\n"],
4
+ "sourcesContent": ["import { type AuthenticateUsecaseInput } from \"@internal/use-cases/authentication/AuthenticateUseCase\";\n\nimport { type AuthenticateDAReturnType } from \"./app-binder/AuthenticateDeviceActionTypes\";\n\nexport interface LedgerKeyringProtocol {\n authenticate: (input: AuthenticateUsecaseInput) => AuthenticateDAReturnType;\n\n encryptData: (xpriv: Uint8Array, data: Uint8Array) => Uint8Array;\n\n decryptData: (xpriv: Uint8Array, data: Uint8Array) => Uint8Array;\n}\n"],
5
5
  "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
6
  "names": ["LedgerKeyringProtocol_exports", "__toCommonJS"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var t=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var m=(i,e)=>{for(var r in e)t(i,r,{get:e[r],enumerable:!0})},c=(i,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of a(e))!l.call(i,s)&&s!==r&&t(i,s,{get:()=>e[s],enumerable:!(o=d(e,s))||o.enumerable});return i};var g=i=>c(t({},"__esModule",{value:!0}),i);var y={};m(y,{LedgerKeyringProtocolBuilder:()=>p});module.exports=g(y);var n=require("../internal/DefaultLedgerKeyringProtocol");class p{dmk;sessionId;baseUrl;constructor({dmk:e,sessionId:r,baseUrl:o}){this.dmk=e,this.sessionId=r,this.baseUrl=o}build(){return new n.DefaultLedgerKeyringProtocol({dmk:this.dmk,sessionId:this.sessionId,baseUrl:this.baseUrl})}}0&&(module.exports={LedgerKeyringProtocolBuilder});
1
+ "use strict";var n=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var m=(i,e)=>{for(var r in e)n(i,r,{get:e[r],enumerable:!0})},c=(i,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of p(e))!d.call(i,t)&&t!==r&&n(i,t,{get:()=>e[t],enumerable:!(o=l(e,t))||o.enumerable});return i};var s=i=>c(n({},"__esModule",{value:!0}),i);var y={};m(y,{LedgerKeyringProtocolBuilder:()=>v});module.exports=s(y);var a=require("../internal/DefaultLedgerKeyringProtocol");class v{dmk;applicationId;env;baseUrl;constructor(e){this.dmk=e.dmk,this.applicationId=e.applicationId,this.env=e.env,this.baseUrl=e.baseUrl}build(){return new a.DefaultLedgerKeyringProtocol({dmk:this.dmk,applicationId:this.applicationId,env:this.env,baseUrl:this.baseUrl})}}0&&(module.exports={LedgerKeyringProtocolBuilder});
2
2
  //# sourceMappingURL=LedgerKeyringProtocolBuilder.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/api/LedgerKeyringProtocolBuilder.ts"],
4
- "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type LedgerKeyringProtocol } from \"@api/LedgerKeyringProtocol\";\nimport { DefaultLedgerKeyringProtocol } from \"@internal/DefaultLedgerKeyringProtocol\";\n\nexport class LedgerKeyringProtocolBuilder {\n private readonly dmk: DeviceManagementKit;\n private readonly sessionId: DeviceSessionId;\n private readonly baseUrl: string;\n\n constructor({\n dmk,\n sessionId,\n baseUrl,\n }: {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n baseUrl: string;\n }) {\n this.dmk = dmk;\n this.sessionId = sessionId;\n this.baseUrl = baseUrl;\n }\n\n build(): LedgerKeyringProtocol {\n return new DefaultLedgerKeyringProtocol({\n dmk: this.dmk,\n sessionId: this.sessionId,\n baseUrl: this.baseUrl,\n });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kCAAAE,IAAA,eAAAC,EAAAH,GAMA,IAAAI,EAA6C,kDAEtC,MAAMF,CAA6B,CACvB,IACA,UACA,QAEjB,YAAY,CACV,IAAAG,EACA,UAAAC,EACA,QAAAC,CACF,EAIG,CACD,KAAK,IAAMF,EACX,KAAK,UAAYC,EACjB,KAAK,QAAUC,CACjB,CAEA,OAA+B,CAC7B,OAAO,IAAI,+BAA6B,CACtC,IAAK,KAAK,IACV,UAAW,KAAK,UAChB,QAAS,KAAK,OAChB,CAAC,CACH,CACF",
6
- "names": ["LedgerKeyringProtocolBuilder_exports", "__export", "LedgerKeyringProtocolBuilder", "__toCommonJS", "import_DefaultLedgerKeyringProtocol", "dmk", "sessionId", "baseUrl"]
4
+ "sourcesContent": ["import { type DeviceManagementKit } from \"@ledgerhq/device-management-kit\";\n\nimport { type LedgerKeyringProtocol } from \"@api/LedgerKeyringProtocol\";\nimport { DefaultLedgerKeyringProtocol } from \"@internal/DefaultLedgerKeyringProtocol\";\n\nimport { type LKRPEnv } from \"./app-binder/LKRPTypes\";\n\nexport class LedgerKeyringProtocolBuilder {\n private readonly dmk: DeviceManagementKit;\n private readonly applicationId: number;\n private readonly env?: LKRPEnv;\n private readonly baseUrl?: string;\n\n constructor(args: {\n dmk: DeviceManagementKit;\n applicationId: number;\n env?: LKRPEnv;\n baseUrl?: string;\n }) {\n this.dmk = args.dmk;\n this.applicationId = args.applicationId;\n this.env = args.env;\n this.baseUrl = args.baseUrl;\n }\n\n build(): LedgerKeyringProtocol {\n return new DefaultLedgerKeyringProtocol({\n dmk: this.dmk,\n applicationId: this.applicationId,\n env: this.env,\n baseUrl: this.baseUrl,\n });\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kCAAAE,IAAA,eAAAC,EAAAH,GAGA,IAAAI,EAA6C,kDAItC,MAAMF,CAA6B,CACvB,IACA,cACA,IACA,QAEjB,YAAYG,EAKT,CACD,KAAK,IAAMA,EAAK,IAChB,KAAK,cAAgBA,EAAK,cAC1B,KAAK,IAAMA,EAAK,IAChB,KAAK,QAAUA,EAAK,OACtB,CAEA,OAA+B,CAC7B,OAAO,IAAI,+BAA6B,CACtC,IAAK,KAAK,IACV,cAAe,KAAK,cACpB,IAAK,KAAK,IACV,QAAS,KAAK,OAChB,CAAC,CACH,CACF",
6
+ "names": ["LedgerKeyringProtocolBuilder_exports", "__export", "LedgerKeyringProtocolBuilder", "__toCommonJS", "import_DefaultLedgerKeyringProtocol", "args"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var i=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var y=(t,r,n,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let e of p(r))!s.call(t,e)&&e!==n&&i(t,e,{get:()=>r[e],enumerable:!(o=a(r,e))||o.enumerable});return t};var d=t=>y(i({},"__esModule",{value:!0}),t);var m={};module.exports=d(m);
1
+ "use strict";var i=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var y=(e,r)=>{for(var a in r)i(e,a,{get:r[a],enumerable:!0})},u=(e,r,a,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of s(r))!m.call(e,o)&&o!==a&&i(e,o,{get:()=>r[o],enumerable:!(t=d(r,o))||t.enumerable});return e};var c=e=>u(i({},"__esModule",{value:!0}),e);var P={};y(P,{AddToTrustchainDAState:()=>n,AddToTrustchaineDAStep:()=>p});module.exports=c(P);var n=(r=>(r.AddMember="lkrp-add-member",r))(n||{}),p=(t=>(t.Initialize="lkrp-init-transaction",t.ParseStream="lkrp-parse-stream",t.AddMember="lkrp-add-member",t))(p||{});0&&(module.exports={AddToTrustchainDAState,AddToTrustchaineDAStep});
2
2
  //# sourceMappingURL=AddToTrustchainDeviceActionTypes.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/api/app-binder/AddToTrustchainDeviceActionTypes.ts"],
4
- "sourcesContent": ["import {\n type OpenAppDAError,\n type UnknownDAError,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either } from \"purify-ts\";\n\nimport { type LKRPDeviceCommandError } from \"@internal/app-binder/command/utils/ledgerKeyringProtocolErrors\";\nimport { type LKRPDataSource } from \"@internal/lkrp-datasource/data/LKRPDataSource\";\nimport { type LKRPBlockStream } from \"@internal/utils/LKRPBlockStream\";\nimport { type Trustchain } from \"@internal/utils/types\";\n\nimport {\n type LKRPHttpRequestError,\n type LKRPMissingDataError,\n type LKRPParsingError,\n} from \"./Errors\";\nimport { type JWT, type Keypair, type Permissions } from \"./LKRPTypes\";\n\nexport type AddToTrustchainDAOutput = undefined;\n\nexport type AddToTrustchainDAInput = Either<\n LKRPMissingDataError,\n {\n readonly lkrpDataSource: LKRPDataSource;\n readonly keypair: Keypair;\n readonly jwt: JWT;\n readonly trustchainId: string;\n readonly trustchain: Trustchain;\n readonly applicationStream: LKRPBlockStream;\n readonly clientName: string;\n readonly permissions: Permissions;\n }\n>;\n\nexport type AddToTrustchainDAError =\n | LKRPDeviceCommandError\n | LKRPHttpRequestError\n | LKRPParsingError\n | LKRPMissingDataError\n | OpenAppDAError\n | UnknownDAError;\n\nexport type AddToTrustchainDAIntermediateValue = {\n readonly requiredUserInteraction: string;\n};\n\nexport type AddToTrustchainDAInternalState = Either<\n AddToTrustchainDAError,\n {\n readonly sessionKeypair: Keypair | null;\n }\n>;\n"],
5
- "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
- "names": ["AddToTrustchainDeviceActionTypes_exports", "__toCommonJS"]
4
+ "sourcesContent": ["import {\n type OpenAppDAError,\n type UserInteractionRequired,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either } from \"purify-ts\";\n\nimport { type LKRPDeviceCommandError } from \"@internal/app-binder/command/utils/ledgerKeyringProtocolErrors\";\nimport { type LKRPDataSource } from \"@internal/lkrp-datasource/data/LKRPDataSource\";\nimport { type Trustchain } from \"@internal/utils/Trustchain\";\n\nimport {\n type LKRPDataSourceError,\n type LKRPMissingDataError,\n type LKRPOutdatedTrustchainError,\n type LKRPParsingError,\n type LKRPTrustchainNotReady,\n type LKRPUnknownError,\n} from \"./Errors\";\nimport { type JWT, type Keypair, type Permissions } from \"./LKRPTypes\";\n\nexport type AddToTrustchainDAOutput = undefined;\n\nexport type AddToTrustchainDAInput = Either<\n LKRPMissingDataError,\n {\n readonly lkrpDataSource: LKRPDataSource;\n readonly keypair: Keypair;\n readonly jwt: JWT;\n readonly appId: number;\n readonly trustchain: Trustchain;\n readonly clientName: string;\n readonly permissions: Permissions;\n }\n>;\n\nexport type AddToTrustchainDAError =\n | LKRPDeviceCommandError\n | LKRPDataSourceError\n | LKRPParsingError\n | LKRPMissingDataError\n | LKRPOutdatedTrustchainError\n | LKRPTrustchainNotReady\n | OpenAppDAError\n | LKRPUnknownError;\n\nexport type AddToTrustchainDAIntermediateValue =\n | {\n requiredUserInteraction: UserInteractionRequired.None;\n step?:\n | AddToTrustchaineDAStep.Initialize\n | AddToTrustchaineDAStep.ParseStream;\n }\n | {\n requiredUserInteraction: AddToTrustchainDAState.AddMember;\n step: AddToTrustchaineDAStep.AddMember;\n };\n\nexport enum AddToTrustchainDAState {\n AddMember = \"lkrp-add-member\",\n}\n\nexport enum AddToTrustchaineDAStep {\n Initialize = \"lkrp-init-transaction\",\n ParseStream = \"lkrp-parse-stream\",\n AddMember = \"lkrp-add-member\",\n}\n\nexport type AddToTrustchainDAInternalState = Either<\n AddToTrustchainDAError,\n {\n readonly sessionKeypair: Keypair | null;\n }\n>;\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,4BAAAE,EAAA,2BAAAC,IAAA,eAAAC,EAAAJ,GAyDO,IAAKE,OACVA,EAAA,UAAY,kBADFA,OAAA,IAIAC,OACVA,EAAA,WAAa,wBACbA,EAAA,YAAc,oBACdA,EAAA,UAAY,kBAHFA,OAAA",
6
+ "names": ["AddToTrustchainDeviceActionTypes_exports", "__export", "AddToTrustchainDAState", "AddToTrustchaineDAStep", "__toCommonJS"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var a=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var y=(r,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of p(t))!l.call(r,e)&&e!==o&&a(r,e,{get:()=>t[e],enumerable:!(n=i(t,e))||n.enumerable});return r};var u=r=>y(a({},"__esModule",{value:!0}),r);var c={};module.exports=u(c);
1
+ "use strict";var p=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var y=(r,t)=>{for(var n in t)p(r,n,{get:t[n],enumerable:!0})},s=(r,t,n,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of c(t))!A.call(r,e)&&e!==n&&p(r,e,{get:()=>t[e],enumerable:!(i=u(t,e))||i.enumerable});return r};var d=r=>s(p({},"__esModule",{value:!0}),r);var h={};y(h,{AuthenticateDAState:()=>a,AuthenticateDAStep:()=>o});module.exports=d(h);var a=(t=>(t.Authenticate="lkrp-authenticate",t))(a||{}),o=(e=>(e.OpenApp="lkrp.steps.openApp",e.Authenticate="lkrp.steps.authenticate",e.GetTrustchain="lkrp.steps.getTrustchain",e.ExtractEncryptionKey="lkrp.steps.extractEncryptionKey",e))(o||{});0&&(module.exports={AuthenticateDAState,AuthenticateDAStep});
2
2
  //# sourceMappingURL=AuthenticateDeviceActionTypes.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/api/app-binder/AuthenticateDeviceActionTypes.ts"],
4
- "sourcesContent": ["import {\n type ExecuteDeviceActionReturnType,\n type OpenAppDAError,\n type UnknownDAError,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Either } from \"purify-ts\";\n\nimport { type LKRPDeviceCommandError } from \"@internal/app-binder/command/utils/ledgerKeyringProtocolErrors\";\nimport { type LKRPDataSource } from \"@internal/lkrp-datasource/data/LKRPDataSource\";\nimport { type LKRPBlockStream } from \"@internal/utils/LKRPBlockStream\";\nimport { type Trustchain } from \"@internal/utils/types\";\n\nimport {\n type LKRPHttpRequestError,\n type LKRPMissingDataError,\n type LKRPParsingError,\n type LKRPUnhandledState,\n} from \"./Errors\";\nimport { type JWT, type Keypair, type Permissions } from \"./LKRPTypes\";\n\nexport type AuthenticateDAReturnType = ExecuteDeviceActionReturnType<\n AuthenticateDAOutput,\n AuthenticateDAError,\n AuthenticateDAIntermediateValue\n>;\n\nexport type AuthenticateDAInput = {\n readonly lkrpDataSource: LKRPDataSource;\n readonly applicationId: number;\n readonly keypair: Keypair;\n readonly clientName: string;\n readonly permissions: Permissions;\n readonly trustchainId: string | null;\n readonly jwt: JWT | null;\n};\n\nexport type AuthenticateDAOutput = {\n readonly jwt: JWT | null;\n readonly trustchainId: string | null;\n readonly applicationPath: string | null;\n readonly encryptionKey: Uint8Array | null;\n};\n\nexport type AuthenticateDAError =\n | LKRPDeviceCommandError\n | LKRPHttpRequestError\n | LKRPParsingError\n | LKRPMissingDataError\n | LKRPUnhandledState\n | OpenAppDAError\n | UnknownDAError;\n\nexport type AuthenticateDAIntermediateValue = {\n readonly requiredUserInteraction: string;\n};\n\nexport type AuthenticateDAInternalState = Either<\n AuthenticateDAError,\n {\n readonly trustchainId: string | null;\n readonly jwt: JWT | null;\n readonly trustchain: Trustchain | null;\n readonly applicationStream: LKRPBlockStream | null;\n readonly encryptionKey: Uint8Array | null;\n readonly wasAddedToTrustchain: boolean;\n }\n>;\n"],
5
- "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
- "names": ["AuthenticateDeviceActionTypes_exports", "__toCommonJS"]
4
+ "sourcesContent": ["import {\n type ExecuteDeviceActionReturnType,\n type OpenAppDAError,\n type OpenAppDARequiredInteraction,\n type UserInteractionRequired,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type LKRPDeviceCommandError } from \"@internal/app-binder/command/utils/ledgerKeyringProtocolErrors\";\n\nimport {\n type AddToTrustchainDAError,\n type AddToTrustchainDAIntermediateValue,\n} from \"./AddToTrustchainDeviceActionTypes\";\nimport {\n type LKRPDataSourceError,\n type LKRPMissingDataError,\n type LKRPParsingError,\n type LKRPTrustchainNotReady,\n type LKRPUnauthorizedError,\n type LKRPUnknownError,\n} from \"./Errors\";\nimport { type JWT } from \"./LKRPTypes\";\n\nexport type AuthenticateDAReturnType = ExecuteDeviceActionReturnType<\n AuthenticateDAOutput,\n AuthenticateDAError,\n AuthenticateDAIntermediateValue\n>;\n\nexport type AuthenticateDAOutput = {\n readonly jwt: JWT;\n readonly trustchainId: string;\n readonly applicationPath: string;\n readonly encryptionKey: Uint8Array;\n};\n\nexport type AuthenticateDAError =\n | LKRPUnauthorizedError\n | AddToTrustchainDAError\n | LKRPDeviceCommandError\n | LKRPDataSourceError\n | LKRPParsingError\n | LKRPMissingDataError\n | LKRPTrustchainNotReady\n | OpenAppDAError\n | LKRPUnknownError;\n\nexport type AuthenticateDAIntermediateValue =\n | {\n requiredUserInteraction: OpenAppDARequiredInteraction;\n step: AuthenticateDAStep.OpenApp;\n }\n | {\n requiredUserInteraction: AuthenticateDAState.Authenticate;\n step: AuthenticateDAStep.Authenticate;\n }\n | {\n requiredUserInteraction: UserInteractionRequired.None;\n step?:\n | AuthenticateDAStep.Authenticate\n | AuthenticateDAStep.GetTrustchain\n | AuthenticateDAStep.ExtractEncryptionKey;\n }\n | AddToTrustchainDAIntermediateValue;\n\nexport enum AuthenticateDAState {\n Authenticate = \"lkrp-authenticate\",\n}\nexport enum AuthenticateDAStep {\n OpenApp = \"lkrp.steps.openApp\",\n Authenticate = \"lkrp.steps.authenticate\",\n GetTrustchain = \"lkrp.steps.getTrustchain\",\n ExtractEncryptionKey = \"lkrp.steps.extractEncryptionKey\",\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,yBAAAE,EAAA,uBAAAC,IAAA,eAAAC,EAAAJ,GAiEO,IAAKE,OACVA,EAAA,aAAe,oBADLA,OAAA,IAGAC,OACVA,EAAA,QAAU,qBACVA,EAAA,aAAe,0BACfA,EAAA,cAAgB,2BAChBA,EAAA,qBAAuB,kCAJbA,OAAA",
6
+ "names": ["AuthenticateDeviceActionTypes_exports", "__export", "AuthenticateDAState", "AuthenticateDAStep", "__toCommonJS"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var s=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var l=(o,r)=>{for(var e in r)s(o,e,{get:r[e],enumerable:!0})},p=(o,r,e,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of c(r))!i.call(o,n)&&n!==e&&s(o,n,{get:()=>r[n],enumerable:!(a=u(r,n))||a.enumerable});return o};var P=o=>p(s({},"__esModule",{value:!0}),o);var g={};l(g,{LKRPHttpRequestError:()=>d,LKRPMissingDataError:()=>K,LKRPParsingError:()=>x,LKRPUnauthorizedError:()=>R,LKRPUnhandledState:()=>L});module.exports=P(g);var t=require("@ledgerhq/device-management-kit");class d extends t.GeneralDmkError{constructor(e){super(e);this.err=e}_tag="LKRPHttpRequestError"}class R extends d{constructor(e){super(e);this.err=e}_tag="LKRPUnauthorizedError"}class x extends t.GeneralDmkError{constructor(e){super(e);this.err=e}_tag="LKRPParsingError"}class K extends t.GeneralDmkError{constructor(e){super(e);this.err=e}_tag="LKRPMissingDataError"}class L extends t.GeneralDmkError{constructor(e){super(e);this.err=e}_tag="LKRPUnhandledState"}0&&(module.exports={LKRPHttpRequestError,LKRPMissingDataError,LKRPParsingError,LKRPUnauthorizedError,LKRPUnhandledState});
1
+ "use strict";var a=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var c=(o,e)=>{for(var r in e)a(o,r,{get:e[r],enumerable:!0})},g=(o,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of i(e))!u.call(o,t)&&t!==r&&a(o,t,{get:()=>e[t],enumerable:!(n=d(e,t))||n.enumerable});return o};var l=o=>g(a({},"__esModule",{value:!0}),o);var R={};c(R,{LKRPDataSourceError:()=>y,LKRPMissingDataError:()=>P,LKRPOutdatedTrustchainError:()=>E,LKRPParsingError:()=>K,LKRPTrustchainNotReady:()=>L,LKRPUnauthorizedError:()=>p,LKRPUnknownError:()=>m,LKRPUnsupportedCommandError:()=>x});module.exports=l(R);var s=require("@ledgerhq/device-management-kit");class y extends s.GeneralDmkError{constructor(r){super(r.message);this.err=r;this.status=r.status,this.message=r.message}_tag="LedgerKeyringProtocolError";message;status}class p extends s.GeneralDmkError{constructor(r=null,n=`Current keypair is not a member of the trustchain${r?` ${r}`:""}.`){super(n);this.trustchainId=r;this.message=n}_tag="LedgerKeyringProtocolError"}class E extends s.GeneralDmkError{constructor(r="The trustchain is outdated."){super(r);this.message=r}_tag="LedgerKeyringProtocolError"}class L extends s.GeneralDmkError{constructor(r="Ledger Sync must be initialized from Ledger Live with this device."){super(r);this.message=r}_tag="LedgerKeyringProtocolError"}class K extends s.GeneralDmkError{constructor(r){super(r);this.err=r}_tag="LedgerKeyringProtocolError"}class P extends s.GeneralDmkError{constructor(r){super(r);this.err=r}_tag="LedgerKeyringProtocolError"}class x extends s.GeneralDmkError{constructor(r){const n=r&&typeof r=="object"&&"type"in r&&typeof r.type=="number"&&`0x${r.type.toString(16).padStart(2,"0")}`;let t="Unsupported command";n&&(t+=`: ${n}`);super(t);this.command=r;this.message=t}_tag="LedgerKeyringProtocolError";message}class m extends s.GeneralDmkError{constructor(r){super(r);this.message=r}_tag="LedgerKeyringProtocolError"}0&&(module.exports={LKRPDataSourceError,LKRPMissingDataError,LKRPOutdatedTrustchainError,LKRPParsingError,LKRPTrustchainNotReady,LKRPUnauthorizedError,LKRPUnknownError,LKRPUnsupportedCommandError});
2
2
  //# sourceMappingURL=Errors.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/api/app-binder/Errors.ts"],
4
- "sourcesContent": ["import { GeneralDmkError } from \"@ledgerhq/device-management-kit\";\n\nexport class LKRPHttpRequestError extends GeneralDmkError {\n override _tag = \"LKRPHttpRequestError\";\n constructor(readonly err?: unknown) {\n super(err);\n }\n}\n\nexport class LKRPUnauthorizedError extends LKRPHttpRequestError {\n override _tag = \"LKRPUnauthorizedError\";\n constructor(override err?: unknown) {\n super(err);\n }\n}\n\nexport class LKRPParsingError extends GeneralDmkError {\n override readonly _tag = \"LKRPParsingError\";\n constructor(readonly err?: unknown) {\n super(err);\n }\n}\n\nexport class LKRPMissingDataError extends GeneralDmkError {\n override readonly _tag = \"LKRPMissingDataError\";\n constructor(readonly err?: unknown) {\n super(err);\n }\n}\n\nexport class LKRPUnhandledState extends GeneralDmkError {\n override readonly _tag = \"LKRPUnhandledState\";\n constructor(readonly err?: unknown) {\n super(err);\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,0BAAAE,EAAA,yBAAAC,EAAA,qBAAAC,EAAA,0BAAAC,EAAA,uBAAAC,IAAA,eAAAC,EAAAP,GAAA,IAAAQ,EAAgC,2CAEzB,MAAMN,UAA6B,iBAAgB,CAExD,YAAqBO,EAAe,CAClC,MAAMA,CAAG,EADU,SAAAA,CAErB,CAHS,KAAO,sBAIlB,CAEO,MAAMJ,UAA8BH,CAAqB,CAE9D,YAAqBO,EAAe,CAClC,MAAMA,CAAG,EADU,SAAAA,CAErB,CAHS,KAAO,uBAIlB,CAEO,MAAML,UAAyB,iBAAgB,CAEpD,YAAqBK,EAAe,CAClC,MAAMA,CAAG,EADU,SAAAA,CAErB,CAHkB,KAAO,kBAI3B,CAEO,MAAMN,UAA6B,iBAAgB,CAExD,YAAqBM,EAAe,CAClC,MAAMA,CAAG,EADU,SAAAA,CAErB,CAHkB,KAAO,sBAI3B,CAEO,MAAMH,UAA2B,iBAAgB,CAEtD,YAAqBG,EAAe,CAClC,MAAMA,CAAG,EADU,SAAAA,CAErB,CAHkB,KAAO,oBAI3B",
6
- "names": ["Errors_exports", "__export", "LKRPHttpRequestError", "LKRPMissingDataError", "LKRPParsingError", "LKRPUnauthorizedError", "LKRPUnhandledState", "__toCommonJS", "import_device_management_kit", "err"]
4
+ "sourcesContent": ["import { GeneralDmkError } from \"@ledgerhq/device-management-kit\";\n\nexport type LKRPDataSourceErrorStatus =\n | \"UNAUTHORIZED\"\n | \"BAD_REQUEST\"\n | \"UNKNOWN\";\n\nexport class LKRPDataSourceError extends GeneralDmkError {\n override _tag = \"LedgerKeyringProtocolError\";\n public readonly message: string;\n public readonly status: LKRPDataSourceErrorStatus;\n\n constructor(\n readonly err: {\n status: LKRPDataSourceErrorStatus;\n message: string;\n },\n ) {\n super(err.message);\n this.status = err.status;\n this.message = err.message;\n }\n}\n\nexport class LKRPUnauthorizedError extends GeneralDmkError {\n override _tag = \"LedgerKeyringProtocolError\";\n constructor(\n readonly trustchainId: string | null = null,\n readonly message: string = `Current keypair is not a member of the trustchain${trustchainId ? ` ${trustchainId}` : \"\"}.`,\n ) {\n super(message);\n }\n}\n\nexport class LKRPOutdatedTrustchainError extends GeneralDmkError {\n override _tag = \"LedgerKeyringProtocolError\";\n constructor(readonly message = \"The trustchain is outdated.\") {\n super(message);\n }\n}\n\nexport class LKRPTrustchainNotReady extends GeneralDmkError {\n override readonly _tag = \"LedgerKeyringProtocolError\";\n constructor(\n readonly message = \"Ledger Sync must be initialized from Ledger Live with this device.\",\n ) {\n super(message);\n }\n}\n\nexport class LKRPParsingError extends GeneralDmkError {\n override readonly _tag = \"LedgerKeyringProtocolError\";\n constructor(readonly err?: unknown) {\n super(err);\n }\n}\n\nexport class LKRPMissingDataError extends GeneralDmkError {\n override readonly _tag = \"LedgerKeyringProtocolError\";\n constructor(readonly err?: unknown) {\n super(err);\n }\n}\n\nexport class LKRPUnsupportedCommandError extends GeneralDmkError {\n override readonly _tag = \"LedgerKeyringProtocolError\";\n readonly message: string;\n constructor(readonly command: unknown) {\n const commandType =\n command &&\n typeof command === \"object\" &&\n \"type\" in command &&\n typeof command.type === \"number\" &&\n `0x${command.type.toString(16).padStart(2, \"0\")}`;\n let message = `Unsupported command`;\n if (commandType) message += `: ${commandType}`;\n\n super(message);\n\n this.message = message;\n }\n}\n\nexport class LKRPUnknownError extends GeneralDmkError {\n override readonly _tag = \"LedgerKeyringProtocolError\";\n constructor(readonly message: string) {\n super(message);\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,yBAAAE,EAAA,yBAAAC,EAAA,gCAAAC,EAAA,qBAAAC,EAAA,2BAAAC,EAAA,0BAAAC,EAAA,qBAAAC,EAAA,gCAAAC,IAAA,eAAAC,EAAAV,GAAA,IAAAW,EAAgC,2CAOzB,MAAMT,UAA4B,iBAAgB,CAKvD,YACWU,EAIT,CACA,MAAMA,EAAI,OAAO,EALR,SAAAA,EAMT,KAAK,OAASA,EAAI,OAClB,KAAK,QAAUA,EAAI,OACrB,CAbS,KAAO,6BACA,QACA,MAYlB,CAEO,MAAML,UAA8B,iBAAgB,CAEzD,YACWM,EAA8B,KAC9BC,EAAkB,oDAAoDD,EAAe,IAAIA,CAAY,GAAK,EAAE,IACrH,CACA,MAAMC,CAAO,EAHJ,kBAAAD,EACA,aAAAC,CAGX,CANS,KAAO,4BAOlB,CAEO,MAAMV,UAAoC,iBAAgB,CAE/D,YAAqBU,EAAU,8BAA+B,CAC5D,MAAMA,CAAO,EADM,aAAAA,CAErB,CAHS,KAAO,4BAIlB,CAEO,MAAMR,UAA+B,iBAAgB,CAE1D,YACWQ,EAAU,qEACnB,CACA,MAAMA,CAAO,EAFJ,aAAAA,CAGX,CALkB,KAAO,4BAM3B,CAEO,MAAMT,UAAyB,iBAAgB,CAEpD,YAAqBO,EAAe,CAClC,MAAMA,CAAG,EADU,SAAAA,CAErB,CAHkB,KAAO,4BAI3B,CAEO,MAAMT,UAA6B,iBAAgB,CAExD,YAAqBS,EAAe,CAClC,MAAMA,CAAG,EADU,SAAAA,CAErB,CAHkB,KAAO,4BAI3B,CAEO,MAAMH,UAAoC,iBAAgB,CAG/D,YAAqBM,EAAkB,CACrC,MAAMC,EACJD,GACA,OAAOA,GAAY,UACnB,SAAUA,GACV,OAAOA,EAAQ,MAAS,UACxB,KAAKA,EAAQ,KAAK,SAAS,EAAE,EAAE,SAAS,EAAG,GAAG,CAAC,GACjD,IAAID,EAAU,sBACVE,IAAaF,GAAW,KAAKE,CAAW,IAE5C,MAAMF,CAAO,EAVM,aAAAC,EAYnB,KAAK,QAAUD,CACjB,CAfkB,KAAO,6BAChB,OAeX,CAEO,MAAMN,UAAyB,iBAAgB,CAEpD,YAAqBM,EAAiB,CACpC,MAAMA,CAAO,EADM,aAAAA,CAErB,CAHkB,KAAO,4BAI3B",
6
+ "names": ["Errors_exports", "__export", "LKRPDataSourceError", "LKRPMissingDataError", "LKRPOutdatedTrustchainError", "LKRPParsingError", "LKRPTrustchainNotReady", "LKRPUnauthorizedError", "LKRPUnknownError", "LKRPUnsupportedCommandError", "__toCommonJS", "import_device_management_kit", "err", "trustchainId", "message", "command", "commandType"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var p=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var c=(a,r)=>{for(var e in r)p(a,e,{get:r[e],enumerable:!0})},U=(a,r,e,y)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of n(r))!g.call(a,t)&&t!==e&&p(a,t,{get:()=>r[t],enumerable:!(y=A(r,t))||y.enumerable});return a};var u=a=>U(p({},"__esModule",{value:!0}),a);var x={};c(x,{Permissions:()=>f});module.exports=u(x);var f=(t=>(t[t.OWNER=4294967295]="OWNER",t[t.CAN_ENCRYPT=1]="CAN_ENCRYPT",t[t.CAN_DERIVE=2]="CAN_DERIVE",t[t.CAN_ADD_BLOCK=4]="CAN_ADD_BLOCK",t))(f||{});0&&(module.exports={Permissions});
1
+ "use strict";var p=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var u=(a,r)=>{for(var e in r)p(a,e,{get:r[e],enumerable:!0})},x=(a,r,e,y)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of n(r))!c.call(a,t)&&t!==e&&p(a,t,{get:()=>r[t],enumerable:!(y=g(r,t))||y.enumerable});return a};var N=a=>x(p({},"__esModule",{value:!0}),a);var U={};u(U,{LKRPEnv:()=>A,Permissions:()=>f});module.exports=N(U);var A=(e=>(e.PROD="prod",e.STAGING="staging",e))(A||{}),f=(t=>(t[t.OWNER=4294967295]="OWNER",t[t.CAN_ENCRYPT=1]="CAN_ENCRYPT",t[t.CAN_DERIVE=2]="CAN_DERIVE",t[t.CAN_ADD_BLOCK=4]="CAN_ADD_BLOCK",t))(f||{});0&&(module.exports={LKRPEnv,Permissions});
2
2
  //# sourceMappingURL=LKRPTypes.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/api/app-binder/LKRPTypes.ts"],
4
- "sourcesContent": ["export interface Keypair {\n pubKeyToU8a(): Uint8Array;\n pubKeyToHex(): string;\n sign(message: Uint8Array): Promise<Uint8Array>;\n ecdh(publicKey: Uint8Array): Uint8Array;\n}\n\nexport type JWT = {\n access_token: string;\n permissions: {\n [trustchainId: string]: {\n [path: string]: string[];\n };\n };\n};\n\n/**\n * https://ledgerhq.atlassian.net/wiki/spaces/TA/pages/5865144361/ARCH+LKRP+-+v2+specifications#Member-permissions\n */\nexport enum Permissions {\n OWNER = 0xffffffff, // Owners of the stream have access to everything\n CAN_ENCRYPT = 1, // The member can have access to the stream private key\n CAN_DERIVE = 1 << 1, // The member can have access to the stream chain code (if a member have access to the private key and the chain code it is able to derive sub-streams)\n CAN_ADD_BLOCK = 1 << 2, // The member is authorized to issue blocks in the current stream\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,IAAA,eAAAC,EAAAH,GAmBO,IAAKE,OACVA,IAAA,MAAQ,YAAR,QACAA,IAAA,YAAc,GAAd,cACAA,IAAA,WAAa,GAAb,aACAA,IAAA,cAAgB,GAAhB,gBAJUA,OAAA",
6
- "names": ["LKRPTypes_exports", "__export", "Permissions", "__toCommonJS"]
4
+ "sourcesContent": ["export interface Keypair {\n pubKeyToU8a(): Uint8Array;\n pubKeyToHex(): string;\n sign(message: Uint8Array): Promise<Uint8Array>;\n ecdh(publicKey: Uint8Array): Uint8Array;\n}\n\nexport enum LKRPEnv {\n PROD = \"prod\",\n STAGING = \"staging\",\n}\n\nexport type JWT = {\n access_token: string;\n permissions: {\n [trustchainId: string]: {\n [path: string]: string[];\n };\n };\n};\n\n/**\n * https://ledgerhq.atlassian.net/wiki/spaces/TA/pages/5865144361/ARCH+LKRP+-+v2+specifications#Member-permissions\n */\nexport enum Permissions {\n OWNER = 0xffffffff, // Owners of the stream have access to everything\n CAN_ENCRYPT = 1, // The member can have access to the stream private key\n CAN_DERIVE = 1 << 1, // The member can have access to the stream chain code (if a member have access to the private key and the chain code it is able to derive sub-streams)\n CAN_ADD_BLOCK = 1 << 2, // The member is authorized to issue blocks in the current stream\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,gBAAAC,IAAA,eAAAC,EAAAJ,GAOO,IAAKE,OACVA,EAAA,KAAO,OACPA,EAAA,QAAU,UAFAA,OAAA,IAiBAC,OACVA,IAAA,MAAQ,YAAR,QACAA,IAAA,YAAc,GAAd,cACAA,IAAA,WAAa,GAAb,aACAA,IAAA,cAAgB,GAAhB,gBAJUA,OAAA",
6
+ "names": ["LKRPTypes_exports", "__export", "LKRPEnv", "Permissions", "__toCommonJS"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var p=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of i(e))!m.call(r,a)&&a!==t&&o(r,a,{get:()=>e[a],enumerable:!(n=d(e,a))||n.enumerable});return r};var c=r=>p(o({},"__esModule",{value:!0}),r);var g={};module.exports=c(g);
1
+ "use strict";var o=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var p=(n,e,t,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of d(e))!i.call(n,r)&&r!==t&&o(n,r,{get:()=>e[r],enumerable:!(a=m(e,r))||a.enumerable});return n};var c=n=>p(o({},"__esModule",{value:!0}),n);var g={};module.exports=c(g);
2
2
  //# sourceMappingURL=SignBlockHeaderCommandTypes.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/api/app-binder/SignBlockHeaderCommandTypes.ts"],
4
- "sourcesContent": ["export interface SignBlockHeaderCommandArgs {\n header: Uint8Array;\n}\n\nexport type SignBlockHeaderCommandResponse = Uint8Array;\n"],
4
+ "sourcesContent": ["export interface SignBlockHeaderCommandArgs {\n parent: Uint8Array;\n commandCount: number;\n}\n\nexport type SignBlockHeaderCommandResponse = Uint8Array;\n"],
5
5
  "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
6
  "names": ["SignBlockHeaderCommandTypes_exports", "__toCommonJS"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var u=Object.defineProperty;var U=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var B=Object.prototype.hasOwnProperty;var b=(o,e)=>{for(var a in e)u(o,a,{get:e[a],enumerable:!0})},L=(o,e,a,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of D(e))!B.call(o,r)&&r!==a&&u(o,r,{get:()=>e[r],enumerable:!(t=U(e,r))||t.enumerable});return o};var T=o=>L(u({},"__esModule",{value:!0}),o);var C={};b(C,{DefaultLedgerKeyringProtocol:()=>x});module.exports=T(C);var m=require("@ledgerhq/device-management-kit"),i=require("purify-ts"),d=require("../api/app-binder/KeypairFromBytes"),f=require("./di"),n=require("./utils/crypto"),h=require("./use-cases/di/useCasesTypes");class x{name;_container;constructor({dmk:e,sessionId:a,baseUrl:t}){this.name="Ledger Keyring Protocol",this._container=(0,f.makeContainer)({dmk:e,sessionId:a,baseUrl:t})}authenticate(e,a,t,r,c,s){return this._container.get(h.useCasesTypes.AuthenticateUseCase).execute(e,a,t,r,c,s)}encryptData(e,a){const t=new d.KeypairFromBytes(e),r=n.CryptoUtils.randomKeypair(),c=t.ecdh(r.pubKeyToU8a()).slice(1),s=n.CryptoUtils.hmac(new Uint8Array,c),y=n.CryptoUtils.randomBytes(16),p=n.CryptoUtils.encrypt(s,y,a),g=p.subarray(0,-n.AES_BLOCK_SIZE),l=p.subarray(-n.AES_BLOCK_SIZE);return new m.ByteArrayBuilder().add8BitUIntToData(0).addBufferToData(r.pubKeyToU8a()).addBufferToData(y).addBufferToData(l).addBufferToData(g).build()}decryptData(e,a){const t=new m.ByteArrayParser(a);return t.extract8BitUInt()!==0?i.Nothing:i.Maybe.sequence([i.Maybe.fromNullable(t.extractFieldByLength(33)),i.Maybe.fromNullable(t.extractFieldByLength(16)),i.Maybe.fromNullable(t.extractFieldByLength(16)),i.Maybe.fromNullable(t.extractFieldByLength(t.getUnparsedRemainingLength()))]).map(r=>{const c=r[0],s=r[1],y=r[2],p=r[3],l=new d.KeypairFromBytes(e).ecdh(c).slice(1),A=n.CryptoUtils.hmac(new Uint8Array,l),K=new Uint8Array([...p,...y]);return n.CryptoUtils.decrypt(A,s,K)})}}0&&(module.exports={DefaultLedgerKeyringProtocol});
1
+ "use strict";var i=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var m=(r,e)=>{for(var t in e)i(r,t,{get:e[t],enumerable:!0})},u=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of p(e))!y.call(r,a)&&a!==t&&i(r,a,{get:()=>e[a],enumerable:!(n=c(e,a))||n.enumerable});return r};var g=r=>u(i({},"__esModule",{value:!0}),r);var U={};m(U,{DefaultLedgerKeyringProtocol:()=>D});module.exports=g(U);var s=require("./di"),o=require("./use-cases/di/useCasesTypes");class D{name;_container;constructor({dmk:e,applicationId:t,env:n,baseUrl:a}){this.name="Ledger Keyring Protocol",this._container=(0,s.makeContainer)({dmk:e,applicationId:t,env:n,baseUrl:a})}authenticate(e){return this._container.get(o.useCasesTypes.AuthenticateUseCase).execute(e)}encryptData(e,t){return this._container.get(o.useCasesTypes.EncryptDataUseCase).execute(e,t)}decryptData(e,t){return this._container.get(o.useCasesTypes.DecryptDataUseCase).execute(e,t)}}0&&(module.exports={DefaultLedgerKeyringProtocol});
2
2
  //# sourceMappingURL=DefaultLedgerKeyringProtocol.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/internal/DefaultLedgerKeyringProtocol.ts"],
4
- "sourcesContent": ["import {\n type DeviceManagementKit,\n type DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport {\n ByteArrayBuilder,\n ByteArrayParser,\n} from \"@ledgerhq/device-management-kit\";\nimport { type Container } from \"inversify\";\nimport { Maybe, Nothing } from \"purify-ts\";\n\nimport { type AuthenticateDAReturnType } from \"@api/app-binder/AuthenticateDeviceActionTypes\";\nimport { KeypairFromBytes } from \"@api/app-binder/KeypairFromBytes\";\nimport {\n type JWT,\n type Keypair,\n type Permissions,\n} from \"@api/app-binder/LKRPTypes\";\nimport { type LedgerKeyringProtocol } from \"@api/LedgerKeyringProtocol\";\nimport { makeContainer } from \"@internal/di\";\nimport { AES_BLOCK_SIZE, CryptoUtils } from \"@internal/utils/crypto\";\n\nimport { type AuthenticateUseCase } from \"./use-cases/authentication/AuthenticateUseCase\";\nimport { useCasesTypes } from \"./use-cases/di/useCasesTypes\";\n\ntype DefaultLedgerKeyringProtocolConstructorArgs = {\n dmk: DeviceManagementKit;\n sessionId: DeviceSessionId;\n baseUrl: string;\n};\n\nexport class DefaultLedgerKeyringProtocol implements LedgerKeyringProtocol {\n name: string;\n private _container: Container;\n\n constructor({\n dmk,\n sessionId,\n baseUrl,\n }: DefaultLedgerKeyringProtocolConstructorArgs) {\n this.name = \"Ledger Keyring Protocol\";\n this._container = makeContainer({ dmk, sessionId, baseUrl });\n }\n\n authenticate(\n keypair: Keypair,\n applicationId: number,\n clientName: string,\n permissions: Permissions,\n trustchainId?: string,\n jwt?: JWT,\n ): AuthenticateDAReturnType {\n return this._container\n .get<AuthenticateUseCase>(useCasesTypes.AuthenticateUseCase)\n .execute(\n keypair,\n applicationId,\n clientName,\n permissions,\n trustchainId,\n jwt,\n );\n }\n\n // TODO Better return type for error management instead of exceptions\n encryptData(encryptionKey: Uint8Array, data: Uint8Array): Uint8Array {\n // TODO move implem in a use case\n\n // Derive the shared secret using ECDH with an ephemeral keypair\n const privateKey = new KeypairFromBytes(encryptionKey);\n const ephemeralKeypair = CryptoUtils.randomKeypair();\n const sharedSecret = privateKey\n .ecdh(ephemeralKeypair.pubKeyToU8a())\n .slice(1);\n\n // Key derivation using HMAC-SHA256\n const key = CryptoUtils.hmac(new Uint8Array(), sharedSecret);\n\n // Generate a random IV (nonce)\n const iv = CryptoUtils.randomBytes(16);\n\n // Encrypt data\n const ciphertext = CryptoUtils.encrypt(key, iv, data);\n const encryptedData = ciphertext.subarray(0, -AES_BLOCK_SIZE);\n const tag = ciphertext.subarray(-AES_BLOCK_SIZE);\n\n // Serialize the result\n return new ByteArrayBuilder()\n .add8BitUIntToData(0) // Version of the format\n .addBufferToData(ephemeralKeypair.pubKeyToU8a())\n .addBufferToData(iv)\n .addBufferToData(tag)\n .addBufferToData(encryptedData)\n .build();\n }\n\n decryptData(encryptionKey: Uint8Array, data: Uint8Array): Maybe<Uint8Array> {\n // TODO move implem in a use case\n\n const parser = new ByteArrayParser(data);\n if (parser.extract8BitUInt() !== 0) {\n // Unsupported serialization version\n return Nothing;\n }\n return Maybe.sequence([\n Maybe.fromNullable(parser.extractFieldByLength(33)),\n Maybe.fromNullable(parser.extractFieldByLength(16)),\n Maybe.fromNullable(parser.extractFieldByLength(16)),\n Maybe.fromNullable(\n parser.extractFieldByLength(parser.getUnparsedRemainingLength()),\n ),\n ]).map((parsed) => {\n const ephemeralPublicKey = parsed[0]!;\n const iv = parsed[1]!;\n const tag = parsed[2]!;\n const encryptedData = parsed[3]!;\n\n // Derive the shared secret using ECDH with an ephemeral keypair\n const privateKey = new KeypairFromBytes(encryptionKey);\n const sharedSecret = privateKey.ecdh(ephemeralPublicKey).slice(1);\n\n // Key derivation using HMAC-SHA256\n const key = CryptoUtils.hmac(new Uint8Array(), sharedSecret);\n\n // Decrypt the data\n const ciphertext = new Uint8Array([...encryptedData, ...tag]);\n const cleartext = CryptoUtils.decrypt(key, iv, ciphertext);\n return cleartext;\n });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kCAAAE,IAAA,eAAAC,EAAAH,GAIA,IAAAI,EAGO,2CAEPC,EAA+B,qBAG/BC,EAAiC,4CAOjCC,EAA8B,wBAC9BC,EAA4C,kCAG5CC,EAA8B,wCAQvB,MAAMP,CAA8D,CACzE,KACQ,WAER,YAAY,CACV,IAAAQ,EACA,UAAAC,EACA,QAAAC,CACF,EAAgD,CAC9C,KAAK,KAAO,0BACZ,KAAK,cAAa,iBAAc,CAAE,IAAAF,EAAK,UAAAC,EAAW,QAAAC,CAAQ,CAAC,CAC7D,CAEA,aACEC,EACAC,EACAC,EACAC,EACAC,EACAC,EAC0B,CAC1B,OAAO,KAAK,WACT,IAAyB,gBAAc,mBAAmB,EAC1D,QACCL,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACJ,CAGA,YAAYC,EAA2BC,EAA8B,CAInE,MAAMC,EAAa,IAAI,mBAAiBF,CAAa,EAC/CG,EAAmB,cAAY,cAAc,EAC7CC,EAAeF,EAClB,KAAKC,EAAiB,YAAY,CAAC,EACnC,MAAM,CAAC,EAGJE,EAAM,cAAY,KAAK,IAAI,WAAcD,CAAY,EAGrDE,EAAK,cAAY,YAAY,EAAE,EAG/BC,EAAa,cAAY,QAAQF,EAAKC,EAAIL,CAAI,EAC9CO,EAAgBD,EAAW,SAAS,EAAG,CAAC,gBAAc,EACtDE,EAAMF,EAAW,SAAS,CAAC,gBAAc,EAG/C,OAAO,IAAI,mBAAiB,EACzB,kBAAkB,CAAC,EACnB,gBAAgBJ,EAAiB,YAAY,CAAC,EAC9C,gBAAgBG,CAAE,EAClB,gBAAgBG,CAAG,EACnB,gBAAgBD,CAAa,EAC7B,MAAM,CACX,CAEA,YAAYR,EAA2BC,EAAqC,CAG1E,MAAMS,EAAS,IAAI,kBAAgBT,CAAI,EACvC,OAAIS,EAAO,gBAAgB,IAAM,EAExB,UAEF,QAAM,SAAS,CACpB,QAAM,aAAaA,EAAO,qBAAqB,EAAE,CAAC,EAClD,QAAM,aAAaA,EAAO,qBAAqB,EAAE,CAAC,EAClD,QAAM,aAAaA,EAAO,qBAAqB,EAAE,CAAC,EAClD,QAAM,aACJA,EAAO,qBAAqBA,EAAO,2BAA2B,CAAC,CACjE,CACF,CAAC,EAAE,IAAKC,GAAW,CACjB,MAAMC,EAAqBD,EAAO,CAAC,EAC7BL,EAAKK,EAAO,CAAC,EACbF,EAAME,EAAO,CAAC,EACdH,EAAgBG,EAAO,CAAC,EAIxBP,EADa,IAAI,mBAAiBJ,CAAa,EACrB,KAAKY,CAAkB,EAAE,MAAM,CAAC,EAG1DP,EAAM,cAAY,KAAK,IAAI,WAAcD,CAAY,EAGrDG,EAAa,IAAI,WAAW,CAAC,GAAGC,EAAe,GAAGC,CAAG,CAAC,EAE5D,OADkB,cAAY,QAAQJ,EAAKC,EAAIC,CAAU,CAE3D,CAAC,CACH,CACF",
6
- "names": ["DefaultLedgerKeyringProtocol_exports", "__export", "DefaultLedgerKeyringProtocol", "__toCommonJS", "import_device_management_kit", "import_purify_ts", "import_KeypairFromBytes", "import_di", "import_crypto", "import_useCasesTypes", "dmk", "sessionId", "baseUrl", "keypair", "applicationId", "clientName", "permissions", "trustchainId", "jwt", "encryptionKey", "data", "privateKey", "ephemeralKeypair", "sharedSecret", "key", "iv", "ciphertext", "encryptedData", "tag", "parser", "parsed", "ephemeralPublicKey"]
4
+ "sourcesContent": ["import { type DeviceManagementKit } from \"@ledgerhq/device-management-kit\";\nimport { type Container } from \"inversify\";\n\nimport { type AuthenticateDAReturnType } from \"@api/app-binder/AuthenticateDeviceActionTypes\";\nimport { type LKRPEnv } from \"@api/app-binder/LKRPTypes\";\nimport { type LedgerKeyringProtocol } from \"@api/LedgerKeyringProtocol\";\nimport { makeContainer } from \"@internal/di\";\n\nimport {\n type AuthenticateUseCase,\n type AuthenticateUsecaseInput,\n} from \"./use-cases/authentication/AuthenticateUseCase\";\nimport { type DecryptDataUseCase } from \"./use-cases/authentication/DecryptDataUseCase\";\nimport { type EncryptDataUseCase } from \"./use-cases/authentication/EncryptDataUseCase\";\nimport { useCasesTypes } from \"./use-cases/di/useCasesTypes\";\n\ntype DefaultLedgerKeyringProtocolConstructorArgs = {\n dmk: DeviceManagementKit;\n applicationId: number;\n env?: LKRPEnv;\n baseUrl?: string;\n};\n\nexport class DefaultLedgerKeyringProtocol implements LedgerKeyringProtocol {\n name: string;\n private _container: Container;\n\n constructor({\n dmk,\n applicationId,\n env,\n baseUrl,\n }: DefaultLedgerKeyringProtocolConstructorArgs) {\n this.name = \"Ledger Keyring Protocol\";\n this._container = makeContainer({\n dmk,\n applicationId,\n env,\n baseUrl,\n });\n }\n\n authenticate(input: AuthenticateUsecaseInput): AuthenticateDAReturnType {\n return this._container\n .get<AuthenticateUseCase>(useCasesTypes.AuthenticateUseCase)\n .execute(input);\n }\n\n encryptData(encryptionKey: Uint8Array, data: Uint8Array): Uint8Array {\n return this._container\n .get<EncryptDataUseCase>(useCasesTypes.EncryptDataUseCase)\n .execute(encryptionKey, data);\n }\n\n decryptData(encryptionKey: Uint8Array, data: Uint8Array): Uint8Array {\n return this._container\n .get<DecryptDataUseCase>(useCasesTypes.DecryptDataUseCase)\n .execute(encryptionKey, data);\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kCAAAE,IAAA,eAAAC,EAAAH,GAMA,IAAAI,EAA8B,wBAQ9BC,EAA8B,wCASvB,MAAMH,CAA8D,CACzE,KACQ,WAER,YAAY,CACV,IAAAI,EACA,cAAAC,EACA,IAAAC,EACA,QAAAC,CACF,EAAgD,CAC9C,KAAK,KAAO,0BACZ,KAAK,cAAa,iBAAc,CAC9B,IAAAH,EACA,cAAAC,EACA,IAAAC,EACA,QAAAC,CACF,CAAC,CACH,CAEA,aAAaC,EAA2D,CACtE,OAAO,KAAK,WACT,IAAyB,gBAAc,mBAAmB,EAC1D,QAAQA,CAAK,CAClB,CAEA,YAAYC,EAA2BC,EAA8B,CACnE,OAAO,KAAK,WACT,IAAwB,gBAAc,kBAAkB,EACxD,QAAQD,EAAeC,CAAI,CAChC,CAEA,YAAYD,EAA2BC,EAA8B,CACnE,OAAO,KAAK,WACT,IAAwB,gBAAc,kBAAkB,EACxD,QAAQD,EAAeC,CAAI,CAChC,CACF",
6
+ "names": ["DefaultLedgerKeyringProtocol_exports", "__export", "DefaultLedgerKeyringProtocol", "__toCommonJS", "import_di", "import_useCasesTypes", "dmk", "applicationId", "env", "baseUrl", "input", "encryptionKey", "data"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var s=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var I=Object.prototype.hasOwnProperty;var y=(t,e)=>{for(var i in e)s(t,i,{get:e[i],enumerable:!0})},v=(t,e,i,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of A(e))!I.call(t,n)&&n!==i&&s(t,n,{get:()=>e[n],enumerable:!(r=l(e,n))||r.enumerable});return t};var S=t=>v(s({},"__esModule",{value:!0}),t),w=(t,e,i,r)=>{for(var n=r>1?void 0:r?l(e,i):e,c=t.length-1,u;c>=0;c--)(u=t[c])&&(n=(r?u(e,i,n):u(n))||n);return r&&n&&s(e,i,n),n},m=(t,e)=>(i,r)=>e(i,r,t);var N={};y(N,{LedgerKeyringProtocolBinder:()=>p});module.exports=S(N);var a=require("@ledgerhq/device-management-kit"),o=require("inversify"),d=require("../externalTypes"),k=require("../lkrp-datasource/di/lkrpDatasourceTypes"),D=require("./command/GetVersionCommand"),h=require("./device-action/AuthenticateDeviceAction");let p=class{constructor(e,i,r){this.dmk=e;this.sessionId=i;this.lkrpDataSource=r}authenticate(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new h.AuthenticateDeviceAction({input:{lkrpDataSource:this.lkrpDataSource,applicationId:e.applicationId,clientName:e.clientName,permissions:e.permissions,keypair:e.keypair,trustchainId:e.trustchainId??null,jwt:e.jwt??null}})})}getVersion(e){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new a.SendCommandInAppDeviceAction({input:{command:new D.GetVersionCommand,appName:"Ledger Sync",requiredUserInteraction:a.UserInteractionRequired.None,skipOpenApp:e.skipOpenApp}})})}getAppName(){throw new Error("Not implemented")}getSeedId(){throw new Error("Not implemented")}init(){throw new Error("Not implemented")}parseStream(){throw new Error("Not implemented")}signBlock(){throw new Error("Not implemented")}setTrustedMember(){throw new Error("Not implemented")}};p=w([(0,o.injectable)(),m(0,(0,o.inject)(d.externalTypes.Dmk)),m(1,(0,o.inject)(d.externalTypes.SessionId)),m(2,(0,o.inject)(k.lkrpDatasourceTypes.LKRPDataSource))],p);0&&(module.exports={LedgerKeyringProtocolBinder});
1
+ "use strict";var a=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var v=(t,e)=>{for(var n in e)a(t,n,{get:e[n],enumerable:!0})},S=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of I(e))!y.call(t,i)&&i!==n&&a(t,i,{get:()=>e[i],enumerable:!(r=D(e,i))||r.enumerable});return t};var N=t=>S(a({},"__esModule",{value:!0}),t),h=(t,e,n,r)=>{for(var i=r>1?void 0:r?D(e,n):e,c=t.length-1,u;c>=0;c--)(u=t[c])&&(i=(r?u(e,n,i):u(i))||i);return r&&i&&a(e,n,i),i},s=(t,e)=>(n,r)=>e(n,r,t);var f={};v(f,{LedgerKeyringProtocolBinder:()=>p});module.exports=N(f);var m=require("@ledgerhq/device-management-kit"),o=require("inversify"),d=require("../externalTypes"),k=require("../lkrp-datasource/di/lkrpDatasourceTypes"),l=require("./command/GetVersionCommand"),A=require("./device-action/AuthenticateWithDeviceDeviceAction"),w=require("./device-action/AuthenticateWithKeypairDeviceAction");let p=class{constructor(e,n,r){this.dmk=e;this.applicationId=n;this.lkrpDataSource=r}authenticateWithKeypair(e){return new w.AuthenticateWithKeypairDeviceAction({input:{lkrpDataSource:this.lkrpDataSource,appId:this.applicationId,keypair:e.keypair,trustchainId:e.trustchainId}}).execute()}authenticateWithDevice(e){return this.dmk.executeDeviceAction({sessionId:e.sessionId,deviceAction:new A.AuthenticateWithDeviceDeviceAction({input:{lkrpDataSource:this.lkrpDataSource,appId:this.applicationId,clientName:e.clientName,permissions:e.permissions,keypair:e.keypair}})})}getVersion(e){return this.dmk.executeDeviceAction({sessionId:e.sessionId,deviceAction:new m.SendCommandInAppDeviceAction({input:{command:new l.GetVersionCommand,appName:"Ledger Sync",requiredUserInteraction:m.UserInteractionRequired.None,skipOpenApp:e.skipOpenApp}})})}getAppName(){throw new Error("Not implemented")}getSeedId(){throw new Error("Not implemented")}init(){throw new Error("Not implemented")}parseStream(){throw new Error("Not implemented")}signBlock(){throw new Error("Not implemented")}setTrustedMember(){throw new Error("Not implemented")}};p=h([(0,o.injectable)(),s(0,(0,o.inject)(d.externalTypes.Dmk)),s(1,(0,o.inject)(d.externalTypes.ApplicationId)),s(2,(0,o.inject)(k.lkrpDatasourceTypes.LKRPDataSource))],p);0&&(module.exports={LedgerKeyringProtocolBinder});
2
2
  //# sourceMappingURL=LedgerKeyringProtocolBinder.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/internal/app-binder/LedgerKeyringProtocolBinder.ts"],
4
- "sourcesContent": ["import {\n DeviceManagementKit,\n type DeviceSessionId,\n SendCommandInAppDeviceAction,\n UserInteractionRequired,\n} from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\n\nimport { AuthenticateDAReturnType } from \"@api/app-binder/AuthenticateDeviceActionTypes\";\nimport { GetVersionDAReturnType } from \"@api/app-binder/GetVersionDeviceActionTypes\";\nimport { JWT, Keypair, Permissions } from \"@api/app-binder/LKRPTypes\";\nimport { externalTypes } from \"@internal/externalTypes\";\nimport { type LKRPDataSource } from \"@internal/lkrp-datasource/data/LKRPDataSource\";\nimport { lkrpDatasourceTypes } from \"@internal/lkrp-datasource/di/lkrpDatasourceTypes\";\n\nimport { GetVersionCommand } from \"./command/GetVersionCommand\";\nimport { AuthenticateDeviceAction } from \"./device-action/AuthenticateDeviceAction\";\n\n@injectable()\nexport class LedgerKeyringProtocolBinder {\n constructor(\n @inject(externalTypes.Dmk) private readonly dmk: DeviceManagementKit,\n\n @inject(externalTypes.SessionId)\n private readonly sessionId: DeviceSessionId,\n\n @inject(lkrpDatasourceTypes.LKRPDataSource)\n private readonly lkrpDataSource: LKRPDataSource,\n ) {}\n\n authenticate(args: {\n keypair: Keypair;\n applicationId: number;\n clientName: string;\n permissions: Permissions;\n trustchainId?: string;\n jwt?: JWT;\n }): AuthenticateDAReturnType {\n return this.dmk.executeDeviceAction({\n sessionId: this.sessionId,\n deviceAction: new AuthenticateDeviceAction({\n input: {\n lkrpDataSource: this.lkrpDataSource,\n applicationId: args.applicationId,\n clientName: args.clientName,\n permissions: args.permissions,\n keypair: args.keypair,\n trustchainId: args.trustchainId ?? null,\n jwt: args.jwt ?? null,\n },\n }),\n });\n }\n\n getVersion(args: { skipOpenApp: boolean }): GetVersionDAReturnType {\n return this.dmk.executeDeviceAction({\n sessionId: this.sessionId,\n deviceAction: new SendCommandInAppDeviceAction({\n input: {\n command: new GetVersionCommand(),\n appName: \"Ledger Sync\",\n requiredUserInteraction: UserInteractionRequired.None,\n skipOpenApp: args.skipOpenApp,\n },\n }),\n });\n }\n\n getAppName(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n getSeedId(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n init(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n parseStream(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n signBlock(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n setTrustedMember(): unknown {\n throw new Error(\"Not implemented\");\n }\n}\n"],
5
- "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iCAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAKO,2CACPC,EAAmC,qBAKnCC,EAA8B,mCAE9BC,EAAoC,4DAEpCC,EAAkC,uCAClCC,EAAyC,oDAGlC,IAAMC,EAAN,KAAkC,CACvC,YAC8CC,EAG3BC,EAGAC,EACjB,CAP4C,SAAAF,EAG3B,eAAAC,EAGA,oBAAAC,CAChB,CAEH,aAAaC,EAOgB,CAC3B,OAAO,KAAK,IAAI,oBAAoB,CAClC,UAAW,KAAK,UAChB,aAAc,IAAI,2BAAyB,CACzC,MAAO,CACL,eAAgB,KAAK,eACrB,cAAeA,EAAK,cACpB,WAAYA,EAAK,WACjB,YAAaA,EAAK,YAClB,QAASA,EAAK,QACd,aAAcA,EAAK,cAAgB,KACnC,IAAKA,EAAK,KAAO,IACnB,CACF,CAAC,CACH,CAAC,CACH,CAEA,WAAWA,EAAwD,CACjE,OAAO,KAAK,IAAI,oBAAoB,CAClC,UAAW,KAAK,UAChB,aAAc,IAAI,+BAA6B,CAC7C,MAAO,CACL,QAAS,IAAI,oBACb,QAAS,cACT,wBAAyB,0BAAwB,KACjD,YAAaA,EAAK,WACpB,CACF,CAAC,CACH,CAAC,CACH,CAEA,YAAsB,CACpB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,WAAqB,CACnB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,MAAgB,CACd,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,aAAuB,CACrB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,WAAqB,CACnB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,kBAA4B,CAC1B,MAAM,IAAI,MAAM,iBAAiB,CACnC,CACF,EAxEaJ,EAANK,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,gBAAc,GAAG,GAExBA,EAAA,eAAO,gBAAc,SAAS,GAG9BA,EAAA,eAAO,sBAAoB,cAAc,IAPjCN",
6
- "names": ["LedgerKeyringProtocolBinder_exports", "__export", "LedgerKeyringProtocolBinder", "__toCommonJS", "import_device_management_kit", "import_inversify", "import_externalTypes", "import_lkrpDatasourceTypes", "import_GetVersionCommand", "import_AuthenticateDeviceAction", "LedgerKeyringProtocolBinder", "dmk", "sessionId", "lkrpDataSource", "args", "__decorateClass", "__decorateParam"]
4
+ "sourcesContent": ["import {\n DeviceManagementKit,\n type DeviceSessionId,\n SendCommandInAppDeviceAction,\n UserInteractionRequired,\n} from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\n\nimport { AuthenticateDAReturnType } from \"@api/app-binder/AuthenticateDeviceActionTypes\";\nimport { GetVersionDAReturnType } from \"@api/app-binder/GetVersionDeviceActionTypes\";\nimport { Keypair, Permissions } from \"@api/app-binder/LKRPTypes\";\nimport { externalTypes } from \"@internal/externalTypes\";\nimport { type LKRPDataSource } from \"@internal/lkrp-datasource/data/LKRPDataSource\";\nimport { lkrpDatasourceTypes } from \"@internal/lkrp-datasource/di/lkrpDatasourceTypes\";\n\nimport { GetVersionCommand } from \"./command/GetVersionCommand\";\nimport { AuthenticateWithDeviceDeviceAction } from \"./device-action/AuthenticateWithDeviceDeviceAction\";\nimport { AuthenticateWithKeypairDeviceAction } from \"./device-action/AuthenticateWithKeypairDeviceAction\";\n\n@injectable()\nexport class LedgerKeyringProtocolBinder {\n constructor(\n @inject(externalTypes.Dmk) private readonly dmk: DeviceManagementKit,\n\n @inject(externalTypes.ApplicationId)\n private readonly applicationId: number,\n\n @inject(lkrpDatasourceTypes.LKRPDataSource)\n private readonly lkrpDataSource: LKRPDataSource,\n ) {}\n\n authenticateWithKeypair(args: {\n keypair: Keypair;\n trustchainId: string;\n }): AuthenticateDAReturnType {\n return new AuthenticateWithKeypairDeviceAction({\n input: {\n lkrpDataSource: this.lkrpDataSource,\n appId: this.applicationId,\n keypair: args.keypair,\n trustchainId: args.trustchainId,\n },\n }).execute();\n }\n\n authenticateWithDevice(args: {\n keypair: Keypair;\n clientName: string;\n permissions: Permissions;\n sessionId: DeviceSessionId;\n }): AuthenticateDAReturnType {\n return this.dmk.executeDeviceAction({\n sessionId: args.sessionId,\n deviceAction: new AuthenticateWithDeviceDeviceAction({\n input: {\n lkrpDataSource: this.lkrpDataSource,\n appId: this.applicationId,\n clientName: args.clientName,\n permissions: args.permissions,\n keypair: args.keypair,\n },\n }),\n });\n }\n\n getVersion(args: {\n skipOpenApp: boolean;\n sessionId: DeviceSessionId;\n }): GetVersionDAReturnType {\n return this.dmk.executeDeviceAction({\n sessionId: args.sessionId,\n deviceAction: new SendCommandInAppDeviceAction({\n input: {\n command: new GetVersionCommand(),\n appName: \"Ledger Sync\",\n requiredUserInteraction: UserInteractionRequired.None,\n skipOpenApp: args.skipOpenApp,\n },\n }),\n });\n }\n\n getAppName(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n getSeedId(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n init(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n parseStream(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n signBlock(): unknown {\n throw new Error(\"Not implemented\");\n }\n\n setTrustedMember(): unknown {\n throw new Error(\"Not implemented\");\n }\n}\n"],
5
+ "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iCAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAKO,2CACPC,EAAmC,qBAKnCC,EAA8B,mCAE9BC,EAAoC,4DAEpCC,EAAkC,uCAClCC,EAAmD,8DACnDC,EAAoD,+DAG7C,IAAMC,EAAN,KAAkC,CACvC,YAC8CC,EAG3BC,EAGAC,EACjB,CAP4C,SAAAF,EAG3B,mBAAAC,EAGA,oBAAAC,CAChB,CAEH,wBAAwBC,EAGK,CAC3B,OAAO,IAAI,sCAAoC,CAC7C,MAAO,CACL,eAAgB,KAAK,eACrB,MAAO,KAAK,cACZ,QAASA,EAAK,QACd,aAAcA,EAAK,YACrB,CACF,CAAC,EAAE,QAAQ,CACb,CAEA,uBAAuBA,EAKM,CAC3B,OAAO,KAAK,IAAI,oBAAoB,CAClC,UAAWA,EAAK,UAChB,aAAc,IAAI,qCAAmC,CACnD,MAAO,CACL,eAAgB,KAAK,eACrB,MAAO,KAAK,cACZ,WAAYA,EAAK,WACjB,YAAaA,EAAK,YAClB,QAASA,EAAK,OAChB,CACF,CAAC,CACH,CAAC,CACH,CAEA,WAAWA,EAGgB,CACzB,OAAO,KAAK,IAAI,oBAAoB,CAClC,UAAWA,EAAK,UAChB,aAAc,IAAI,+BAA6B,CAC7C,MAAO,CACL,QAAS,IAAI,oBACb,QAAS,cACT,wBAAyB,0BAAwB,KACjD,YAAaA,EAAK,WACpB,CACF,CAAC,CACH,CAAC,CACH,CAEA,YAAsB,CACpB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,WAAqB,CACnB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,MAAgB,CACd,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,aAAuB,CACrB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,WAAqB,CACnB,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,kBAA4B,CAC1B,MAAM,IAAI,MAAM,iBAAiB,CACnC,CACF,EArFaJ,EAANK,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,gBAAc,GAAG,GAExBA,EAAA,eAAO,gBAAc,aAAa,GAGlCA,EAAA,eAAO,sBAAoB,cAAc,IAPjCN",
6
+ "names": ["LedgerKeyringProtocolBinder_exports", "__export", "LedgerKeyringProtocolBinder", "__toCommonJS", "import_device_management_kit", "import_inversify", "import_externalTypes", "import_lkrpDatasourceTypes", "import_GetVersionCommand", "import_AuthenticateWithDeviceDeviceAction", "import_AuthenticateWithKeypairDeviceAction", "LedgerKeyringProtocolBinder", "dmk", "applicationId", "lkrpDataSource", "args", "__decorateClass", "__decorateParam"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var a=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var C=(o,e)=>{for(var t in e)a(o,t,{get:e[t],enumerable:!0})},y=(o,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let d of l(e))!g.call(o,d)&&d!==t&&a(o,d,{get:()=>e[d],enumerable:!(n=i(e,d))||n.enumerable});return o};var T=o=>y(a({},"__esModule",{value:!0}),o);var c={};C(c,{SetTrustedMemberCommand:()=>f});module.exports=T(c);var r=require("@ledgerhq/device-management-kit"),s=require("@ledgerhq/signer-utils"),p=require("purify-ts"),u=require("../../utils/TLVTags"),m=require("./utils/ledgerKeyringProtocolErrors");class f{constructor(e){this.args=e}errorHelper=new s.CommandErrorHelper(m.LEDGER_SYNC_ERRORS,m.LedgerKeyringProtocolErrorFactory);getApdu(){const{iv:e,memberTlv:t}=this.args;return new r.ApduBuilder({cla:224,ins:9,p1:0,p2:0}).add8BitUIntToData(u.TPTags.IV).add8BitUIntToData(e.length).addBufferToData(e).addBufferToData(t).build()}parseResponse(e){return p.Maybe.fromNullable(this.errorHelper.getError(e)).orDefaultLazy(()=>new r.ApduParser(e).getUnparsedRemainingLength()!==0?(0,r.CommandResultFactory)({error:new r.InvalidStatusWordError("Unexpected response data for SetTrustedMemberCommand")}):(0,r.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SetTrustedMemberCommand});
1
+ "use strict";var a=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var C=(o,e)=>{for(var t in e)a(o,t,{get:e[t],enumerable:!0})},y=(o,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let d of l(e))!g.call(o,d)&&d!==t&&a(o,d,{get:()=>e[d],enumerable:!(n=i(e,d))||n.enumerable});return o};var T=o=>y(a({},"__esModule",{value:!0}),o);var c={};C(c,{SetTrustedMemberCommand:()=>f});module.exports=T(c);var r=require("@ledgerhq/device-management-kit"),s=require("@ledgerhq/signer-utils"),p=require("purify-ts"),u=require("../../models/Tags"),m=require("./utils/ledgerKeyringProtocolErrors");class f{constructor(e){this.args=e}errorHelper=new s.CommandErrorHelper(m.LEDGER_SYNC_ERRORS,m.LedgerKeyringProtocolErrorFactory);getApdu(){const{iv:e,memberTlv:t}=this.args;return new r.ApduBuilder({cla:224,ins:9,p1:0,p2:0}).add8BitUIntToData(u.TPTags.IV).add8BitUIntToData(e.length).addBufferToData(e).addBufferToData(t).build()}parseResponse(e){return p.Maybe.fromNullable(this.errorHelper.getError(e)).orDefaultLazy(()=>new r.ApduParser(e).getUnparsedRemainingLength()!==0?(0,r.CommandResultFactory)({error:new r.InvalidStatusWordError("Unexpected response data for SetTrustedMemberCommand")}):(0,r.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SetTrustedMemberCommand});
2
2
  //# sourceMappingURL=SetTrustedMemberCommand.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SetTrustedMemberCommand.ts"],
4
- "sourcesContent": ["import {\n type Apdu,\n ApduBuilder,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n type SetTrustedMemberCommandArgs,\n type SetTrustedMemberCommandResponse,\n} from \"@api/app-binder/SetTrustedMemberTypes\";\nimport { TPTags } from \"@internal/utils/TLVTags\";\n\nimport {\n LEDGER_SYNC_ERRORS,\n type LedgerKeyringProtocolErrorCodes,\n LedgerKeyringProtocolErrorFactory,\n} from \"./utils/ledgerKeyringProtocolErrors\";\n\nexport class SetTrustedMemberCommand\n implements\n Command<\n SetTrustedMemberCommandResponse,\n SetTrustedMemberCommandArgs,\n LedgerKeyringProtocolErrorCodes\n >\n{\n private readonly errorHelper = new CommandErrorHelper<\n SetTrustedMemberCommandResponse,\n LedgerKeyringProtocolErrorCodes\n >(LEDGER_SYNC_ERRORS, LedgerKeyringProtocolErrorFactory);\n\n constructor(private readonly args: SetTrustedMemberCommandArgs) {}\n\n getApdu(): Apdu {\n const { iv, memberTlv } = this.args;\n return (\n new ApduBuilder({ cla: 0xe0, ins: 0x09, p1: 0x00, p2: 0x00 })\n // tag for IV\n .add8BitUIntToData(TPTags.IV)\n // IV length\n .add8BitUIntToData(iv.length)\n // IV bytes\n .addBufferToData(iv)\n // TrustedMember bytes\n .addBufferToData(memberTlv)\n .build()\n );\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<\n SetTrustedMemberCommandResponse,\n LedgerKeyringProtocolErrorCodes\n > {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(apduResponse);\n if (parser.getUnparsedRemainingLength() !== 0) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\n \"Unexpected response data for SetTrustedMemberCommand\",\n ),\n });\n }\n return CommandResultFactory({ data: undefined });\n });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,6BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EASO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAMtBC,EAAuB,mCAEvBC,EAIO,+CAEA,MAAMN,CAOb,CAME,YAA6BO,EAAmC,CAAnC,UAAAA,CAAoC,CALhD,YAAc,IAAI,qBAGjC,qBAAoB,mCAAiC,EAIvD,SAAgB,CACd,KAAM,CAAE,GAAAC,EAAI,UAAAC,CAAU,EAAI,KAAK,KAC/B,OACE,IAAI,cAAY,CAAE,IAAK,IAAM,IAAK,EAAM,GAAI,EAAM,GAAI,CAAK,CAAC,EAEzD,kBAAkB,SAAO,EAAE,EAE3B,kBAAkBD,EAAG,MAAM,EAE3B,gBAAgBA,CAAE,EAElB,gBAAgBC,CAAS,EACzB,MAAM,CAEb,CAEA,cACEC,EAIA,CACA,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,cAAc,IACC,IAAI,aAAWA,CAAY,EAC/B,2BAA2B,IAAM,KACnC,wBAAqB,CAC1B,MAAO,IAAI,yBACT,sDACF,CACF,CAAC,KAEI,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAChD,CACH,CACF",
6
- "names": ["SetTrustedMemberCommand_exports", "__export", "SetTrustedMemberCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_TLVTags", "import_ledgerKeyringProtocolErrors", "args", "iv", "memberTlv", "apduResponse"]
4
+ "sourcesContent": ["import {\n type Apdu,\n ApduBuilder,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n type SetTrustedMemberCommandArgs,\n type SetTrustedMemberCommandResponse,\n} from \"@api/app-binder/SetTrustedMemberTypes\";\nimport { TPTags } from \"@internal/models/Tags\";\n\nimport {\n LEDGER_SYNC_ERRORS,\n type LedgerKeyringProtocolErrorCodes,\n LedgerKeyringProtocolErrorFactory,\n} from \"./utils/ledgerKeyringProtocolErrors\";\n\nexport class SetTrustedMemberCommand\n implements\n Command<\n SetTrustedMemberCommandResponse,\n SetTrustedMemberCommandArgs,\n LedgerKeyringProtocolErrorCodes\n >\n{\n private readonly errorHelper = new CommandErrorHelper<\n SetTrustedMemberCommandResponse,\n LedgerKeyringProtocolErrorCodes\n >(LEDGER_SYNC_ERRORS, LedgerKeyringProtocolErrorFactory);\n\n constructor(private readonly args: SetTrustedMemberCommandArgs) {}\n\n getApdu(): Apdu {\n const { iv, memberTlv } = this.args;\n return (\n new ApduBuilder({ cla: 0xe0, ins: 0x09, p1: 0x00, p2: 0x00 })\n // tag for IV\n .add8BitUIntToData(TPTags.IV)\n // IV length\n .add8BitUIntToData(iv.length)\n // IV bytes\n .addBufferToData(iv)\n // TrustedMember bytes\n .addBufferToData(memberTlv)\n .build()\n );\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<\n SetTrustedMemberCommandResponse,\n LedgerKeyringProtocolErrorCodes\n > {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(apduResponse);\n if (parser.getUnparsedRemainingLength() !== 0) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\n \"Unexpected response data for SetTrustedMemberCommand\",\n ),\n });\n }\n return CommandResultFactory({ data: undefined });\n });\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,6BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EASO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAMtBC,EAAuB,iCAEvBC,EAIO,+CAEA,MAAMN,CAOb,CAME,YAA6BO,EAAmC,CAAnC,UAAAA,CAAoC,CALhD,YAAc,IAAI,qBAGjC,qBAAoB,mCAAiC,EAIvD,SAAgB,CACd,KAAM,CAAE,GAAAC,EAAI,UAAAC,CAAU,EAAI,KAAK,KAC/B,OACE,IAAI,cAAY,CAAE,IAAK,IAAM,IAAK,EAAM,GAAI,EAAM,GAAI,CAAK,CAAC,EAEzD,kBAAkB,SAAO,EAAE,EAE3B,kBAAkBD,EAAG,MAAM,EAE3B,gBAAgBA,CAAE,EAElB,gBAAgBC,CAAS,EACzB,MAAM,CAEb,CAEA,cACEC,EAIA,CACA,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,cAAc,IACC,IAAI,aAAWA,CAAY,EAC/B,2BAA2B,IAAM,KACnC,wBAAqB,CAC1B,MAAO,IAAI,yBACT,sDACF,CACF,CAAC,KAEI,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAChD,CACH,CACF",
6
+ "names": ["SetTrustedMemberCommand_exports", "__export", "SetTrustedMemberCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_Tags", "import_ledgerKeyringProtocolErrors", "args", "iv", "memberTlv", "apduResponse"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var m=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var c=(o,r)=>{for(var a in r)m(o,a,{get:r[a],enumerable:!0})},u=(o,r,a,d)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of l(r))!g.call(o,n)&&n!==a&&m(o,n,{get:()=>r[n],enumerable:!(d=i(r,n))||d.enumerable});return o};var y=o=>u(m({},"__esModule",{value:!0}),o);var R={};c(R,{SignBlockHeaderCommand:()=>C});module.exports=y(R);var e=require("@ledgerhq/device-management-kit"),s=require("@ledgerhq/signer-utils"),p=require("purify-ts"),t=require("./utils/ledgerKeyringProtocolErrors");class C{constructor(r){this.args=r}errorHelper=new s.CommandErrorHelper(t.LEDGER_SYNC_ERRORS,t.LedgerKeyringProtocolErrorFactory);getApdu(){return new e.ApduBuilder({cla:224,ins:7,p1:0,p2:0}).addBufferToData(this.args.header).build()}parseResponse(r){return p.Maybe.fromNullable(this.errorHelper.getError(r)).orDefaultLazy(()=>{const a=new e.ApduParser(r),d=a.getUnparsedRemainingLength(),n=a.extractFieldByLength(d);return n?(0,e.CommandResultFactory)({data:n}):(0,e.CommandResultFactory)({error:new e.InvalidStatusWordError("No data returned by SignBlockHeaderCommand")})})}}0&&(module.exports={SignBlockHeaderCommand});
1
+ "use strict";var s=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var C=(n,r)=>{for(var e in r)s(n,e,{get:r[e],enumerable:!0})},f=(n,r,e,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of y(r))!u.call(n,a)&&a!==e&&s(n,a,{get:()=>r[a],enumerable:!(t=c(r,a))||t.enumerable});return n};var R=n=>f(s({},"__esModule",{value:!0}),n);var E={};C(E,{ISSUER_PLACEHOLDER_TLV:()=>g,SignBlockHeaderCommand:()=>A});module.exports=R(E);var o=require("@ledgerhq/device-management-kit"),p=require("@ledgerhq/signer-utils"),l=require("purify-ts"),d=require("../../models/Tags"),m=require("./utils/ledgerKeyringProtocolErrors");const i=[3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],g=Uint8Array.from([d.GeneralTags.PublicKey,i.length,...i]);class A{constructor(r){this.args=r}errorHelper=new p.CommandErrorHelper(m.LEDGER_SYNC_ERRORS,m.LedgerKeyringProtocolErrorFactory);getApdu(){const{parent:r,commandCount:e}=this.args,t=Uint8Array.from([d.GeneralTags.Hash,r.length,...r]);return new o.ApduBuilder({cla:224,ins:7,p1:0,p2:0}).addBufferToData(Uint8Array.from([d.GeneralTags.Int,1,1])).addBufferToData(Uint8Array.from(t)).addBufferToData(g).addBufferToData(Uint8Array.from([d.GeneralTags.Int,1,e])).build()}parseResponse(r){return l.Maybe.fromNullable(this.errorHelper.getError(r)).orDefaultLazy(()=>{const e=new o.ApduParser(r),t=e.getUnparsedRemainingLength(),a=e.extractFieldByLength(t);return a?(0,o.CommandResultFactory)({data:a}):(0,o.CommandResultFactory)({error:new o.InvalidStatusWordError("No data returned by SignBlockHeaderCommand")})})}}0&&(module.exports={ISSUER_PLACEHOLDER_TLV,SignBlockHeaderCommand});
2
2
  //# sourceMappingURL=SignBlockHeader.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SignBlockHeader.ts"],
4
- "sourcesContent": ["import {\n type Apdu,\n ApduBuilder,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n type SignBlockHeaderCommandArgs,\n type SignBlockHeaderCommandResponse,\n} from \"@api/app-binder/SignBlockHeaderCommandTypes\";\n\nimport {\n LEDGER_SYNC_ERRORS,\n type LedgerKeyringProtocolErrorCodes,\n LedgerKeyringProtocolErrorFactory,\n} from \"./utils/ledgerKeyringProtocolErrors\";\n\nexport class SignBlockHeaderCommand\n implements\n Command<\n SignBlockHeaderCommandResponse,\n SignBlockHeaderCommandArgs,\n LedgerKeyringProtocolErrorCodes\n >\n{\n private readonly errorHelper = new CommandErrorHelper<\n SignBlockHeaderCommandResponse,\n LedgerKeyringProtocolErrorCodes\n >(LEDGER_SYNC_ERRORS, LedgerKeyringProtocolErrorFactory);\n\n constructor(private readonly args: SignBlockHeaderCommandArgs) {}\n\n getApdu(): Apdu {\n return new ApduBuilder({\n cla: 0xe0,\n ins: 0x07,\n p1: 0x00,\n p2: 0x00,\n })\n .addBufferToData(this.args.header)\n .build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<\n SignBlockHeaderCommandResponse,\n LedgerKeyringProtocolErrorCodes\n > {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(apduResponse);\n const remaining = parser.getUnparsedRemainingLength();\n const payload = parser.extractFieldByLength(remaining);\n if (!payload) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\n \"No data returned by SignBlockHeaderCommand\",\n ),\n });\n }\n return CommandResultFactory({ data: payload });\n });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,4BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EASO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAOtBC,EAIO,+CAEA,MAAML,CAOb,CAME,YAA6BM,EAAkC,CAAlC,UAAAA,CAAmC,CAL/C,YAAc,IAAI,qBAGjC,qBAAoB,mCAAiC,EAIvD,SAAgB,CACd,OAAO,IAAI,cAAY,CACrB,IAAK,IACL,IAAK,EACL,GAAI,EACJ,GAAI,CACN,CAAC,EACE,gBAAgB,KAAK,KAAK,MAAM,EAChC,MAAM,CACX,CAEA,cACEC,EAIA,CACA,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,cAAc,IAAM,CACpB,MAAMC,EAAS,IAAI,aAAWD,CAAY,EACpCE,EAAYD,EAAO,2BAA2B,EAC9CE,EAAUF,EAAO,qBAAqBC,CAAS,EACrD,OAAKC,KAOE,wBAAqB,CAAE,KAAMA,CAAQ,CAAC,KANpC,wBAAqB,CAC1B,MAAO,IAAI,yBACT,4CACF,CACF,CAAC,CAGL,CAAC,CACH,CACF",
6
- "names": ["SignBlockHeader_exports", "__export", "SignBlockHeaderCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ledgerKeyringProtocolErrors", "args", "apduResponse", "parser", "remaining", "payload"]
4
+ "sourcesContent": ["import {\n type Apdu,\n ApduBuilder,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n type SignBlockHeaderCommandArgs,\n type SignBlockHeaderCommandResponse,\n} from \"@api/app-binder/SignBlockHeaderCommandTypes\";\nimport { GeneralTags } from \"@internal/models/Tags\";\n\nimport {\n LEDGER_SYNC_ERRORS,\n type LedgerKeyringProtocolErrorCodes,\n LedgerKeyringProtocolErrorFactory,\n} from \"./utils/ledgerKeyringProtocolErrors\";\n\nconst ISSUER_PLACEHOLDER = [\n 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0,\n];\nexport const ISSUER_PLACEHOLDER_TLV = Uint8Array.from([\n GeneralTags.PublicKey,\n ISSUER_PLACEHOLDER.length,\n ...ISSUER_PLACEHOLDER,\n]);\n\nexport class SignBlockHeaderCommand\n implements\n Command<\n SignBlockHeaderCommandResponse,\n SignBlockHeaderCommandArgs,\n LedgerKeyringProtocolErrorCodes\n >\n{\n private readonly errorHelper = new CommandErrorHelper<\n SignBlockHeaderCommandResponse,\n LedgerKeyringProtocolErrorCodes\n >(LEDGER_SYNC_ERRORS, LedgerKeyringProtocolErrorFactory);\n\n constructor(private readonly args: SignBlockHeaderCommandArgs) {}\n\n getApdu(): Apdu {\n const { parent, commandCount } = this.args;\n const parentTlv = Uint8Array.from([\n GeneralTags.Hash,\n parent.length,\n ...parent,\n ]);\n\n return new ApduBuilder({\n cla: 0xe0,\n ins: 0x07,\n p1: 0x00,\n p2: 0x00,\n })\n .addBufferToData(Uint8Array.from([GeneralTags.Int, 1, 1])) // Version 1\n .addBufferToData(Uint8Array.from(parentTlv)) // Parent block hash\n .addBufferToData(ISSUER_PLACEHOLDER_TLV) // Placeholder for issuer public key (will be replaced by the device)\n .addBufferToData(Uint8Array.from([GeneralTags.Int, 1, commandCount])) // Command count\n .build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<\n SignBlockHeaderCommandResponse,\n LedgerKeyringProtocolErrorCodes\n > {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(apduResponse);\n const remaining = parser.getUnparsedRemainingLength();\n const payload = parser.extractFieldByLength(remaining);\n if (!payload) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\n \"No data returned by SignBlockHeaderCommand\",\n ),\n });\n }\n return CommandResultFactory({ data: payload });\n });\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,4BAAAE,EAAA,2BAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EASO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAMtBC,EAA4B,iCAE5BC,EAIO,+CAEP,MAAMC,EAAqB,CACzB,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC3E,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CACpB,EACaR,EAAyB,WAAW,KAAK,CACpD,cAAY,UACZQ,EAAmB,OACnB,GAAGA,CACL,CAAC,EAEM,MAAMP,CAOb,CAME,YAA6BQ,EAAkC,CAAlC,UAAAA,CAAmC,CAL/C,YAAc,IAAI,qBAGjC,qBAAoB,mCAAiC,EAIvD,SAAgB,CACd,KAAM,CAAE,OAAAC,EAAQ,aAAAC,CAAa,EAAI,KAAK,KAChCC,EAAY,WAAW,KAAK,CAChC,cAAY,KACZF,EAAO,OACP,GAAGA,CACL,CAAC,EAED,OAAO,IAAI,cAAY,CACrB,IAAK,IACL,IAAK,EACL,GAAI,EACJ,GAAI,CACN,CAAC,EACE,gBAAgB,WAAW,KAAK,CAAC,cAAY,IAAK,EAAG,CAAC,CAAC,CAAC,EACxD,gBAAgB,WAAW,KAAKE,CAAS,CAAC,EAC1C,gBAAgBZ,CAAsB,EACtC,gBAAgB,WAAW,KAAK,CAAC,cAAY,IAAK,EAAGW,CAAY,CAAC,CAAC,EACnE,MAAM,CACX,CAEA,cACEE,EAIA,CACA,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,cAAc,IAAM,CACpB,MAAMC,EAAS,IAAI,aAAWD,CAAY,EACpCE,EAAYD,EAAO,2BAA2B,EAC9CE,EAAUF,EAAO,qBAAqBC,CAAS,EACrD,OAAKC,KAOE,wBAAqB,CAAE,KAAMA,CAAQ,CAAC,KANpC,wBAAqB,CAC1B,MAAO,IAAI,yBACT,4CACF,CACF,CAAC,CAGL,CAAC,CACH,CACF",
6
+ "names": ["SignBlockHeader_exports", "__export", "ISSUER_PLACEHOLDER_TLV", "SignBlockHeaderCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_Tags", "import_ledgerKeyringProtocolErrors", "ISSUER_PLACEHOLDER", "args", "parent", "commandCount", "parentTlv", "apduResponse", "parser", "remaining", "payload"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=require("@ledgerhq/device-management-kit"),e=require("vitest"),d=require("./SignBlockHeader");const a=Uint8Array.from([240,202,204,26]),c=Uint8Array.from([240,202,204,26]),p=Uint8Array.from([0,c.length,...c]),l=Uint8Array.from([129,c.length,...c]),m=new Uint8Array([...p,...l]);(0,e.describe)("SignBlockHeaderCommand",()=>{(0,e.describe)("getApdu()",()=>{(0,e.it)("should build the correct APDU for a given header",()=>{const n={header:a},s=new d.SignBlockHeaderCommand(n).getApdu(),r=Uint8Array.from([224,7,0,0,a.length,...a]);(0,e.expect)(s.getRawApdu()).toEqual(r)})}),(0,e.describe)("parseResponse()",()=>{(0,e.it)("should return raw payload on success",()=>{const n={header:a},t=new d.SignBlockHeaderCommand(n),s=new o.ApduResponse({statusCode:Uint8Array.from([144,0]),data:m}),r=t.parseResponse(s);if((0,e.expect)((0,o.isSuccessCommandResult)(r)).toBe(!0),(0,o.isSuccessCommandResult)(r)){const i=r.data;(0,e.expect)(i).toEqual(m)}}),(0,e.it)("should map SW errors to CommandResult errors",()=>{const n={header:a},t=new d.SignBlockHeaderCommand(n),s=new o.ApduResponse({statusCode:Uint8Array.from([106,134]),data:new Uint8Array}),r=t.parseResponse(s);(0,e.expect)((0,o.isSuccessCommandResult)(r)).toBe(!1),(0,o.isSuccessCommandResult)(r)||(0,e.expect)(r.error.errorCode).toBe("6a86")}),(0,e.it)("should error if no data is returned",()=>{const n={header:a},t=new d.SignBlockHeaderCommand(n),s=new o.ApduResponse({statusCode:Uint8Array.from([144,0]),data:new Uint8Array}),r=t.parseResponse(s);(0,e.expect)((0,o.isSuccessCommandResult)(r)).toBe(!0),(0,o.isSuccessCommandResult)(r)&&(0,e.expect)(r.data).toEqual(new Uint8Array([]))})})});
1
+ "use strict";var e=require("@ledgerhq/device-management-kit"),o=require("vitest"),d=require("../../models/Tags"),a=require("./SignBlockHeader");const c=3,m=Uint8Array.from([240,202,204,26]),p=Uint8Array.from([d.GeneralTags.Int,1,1,d.GeneralTags.Hash,4,...m,...a.ISSUER_PLACEHOLDER_TLV,d.GeneralTags.Int,1,c]),i=Uint8Array.from([240,202,204,26]),l=Uint8Array.from([0,i.length,...i]),g=Uint8Array.from([129,i.length,...i]),u=new Uint8Array([...l,...g]);(0,o.describe)("SignBlockHeaderCommand",()=>{(0,o.describe)("getApdu()",()=>{(0,o.it)("should build the correct APDU for a parent hash and a commands count",()=>{const n={parent:m,commandCount:c},t=new a.SignBlockHeaderCommand(n).getApdu(),r=Uint8Array.from([224,7,0,0,p.length,...p]);(0,o.expect)(t.getRawApdu()).toEqual(r)})}),(0,o.describe)("parseResponse()",()=>{(0,o.it)("should return raw payload on success",()=>{const n={parent:m,commandCount:c},s=new a.SignBlockHeaderCommand(n),t=new e.ApduResponse({statusCode:Uint8Array.from([144,0]),data:u}),r=s.parseResponse(t);if((0,o.expect)((0,e.isSuccessCommandResult)(r)).toBe(!0),(0,e.isSuccessCommandResult)(r)){const A=r.data;(0,o.expect)(A).toEqual(u)}}),(0,o.it)("should map SW errors to CommandResult errors",()=>{const n={parent:m,commandCount:c},s=new a.SignBlockHeaderCommand(n),t=new e.ApduResponse({statusCode:Uint8Array.from([106,134]),data:new Uint8Array}),r=s.parseResponse(t);(0,o.expect)((0,e.isSuccessCommandResult)(r)).toBe(!1),(0,e.isSuccessCommandResult)(r)||(0,o.expect)(r.error.errorCode).toBe("6a86")}),(0,o.it)("should error if no data is returned",()=>{const n={parent:m,commandCount:c},s=new a.SignBlockHeaderCommand(n),t=new e.ApduResponse({statusCode:Uint8Array.from([144,0]),data:new Uint8Array}),r=s.parseResponse(t);(0,o.expect)((0,e.isSuccessCommandResult)(r)).toBe(!0),(0,e.isSuccessCommandResult)(r)&&(0,o.expect)(r.data).toEqual(new Uint8Array([]))})})});
2
2
  //# sourceMappingURL=SignBlockHeader.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/app-binder/command/SignBlockHeader.test.ts"],
4
- "sourcesContent": ["/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { describe, expect, it } from \"vitest\";\n\nimport {\n type SignBlockHeaderCommandArgs,\n type SignBlockHeaderCommandResponse,\n} from \"@api/app-binder/SignBlockHeaderCommandTypes\";\n\nimport { SignBlockHeaderCommand } from \"./SignBlockHeader\";\n\nconst HEADER_BYTES = Uint8Array.from([0xf0, 0xca, 0xcc, 0x1a]);\nconst TLV_VALUE = Uint8Array.from([0xf0, 0xca, 0xcc, 0x1a]);\nconst IV_TLV = Uint8Array.from([0x00, TLV_VALUE.length, ...TLV_VALUE]);\nconst ISSUER_TLV = Uint8Array.from([0x81, TLV_VALUE.length, ...TLV_VALUE]);\nconst FULL_TLV_PAYLOAD = new Uint8Array([...IV_TLV, ...ISSUER_TLV]);\n\ndescribe(\"SignBlockHeaderCommand\", () => {\n describe(\"getApdu()\", () => {\n it(\"should build the correct APDU for a given header\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = { header: HEADER_BYTES };\n const cmd = new SignBlockHeaderCommand(args);\n\n // when\n const apdu = cmd.getApdu();\n const expected = Uint8Array.from([\n 0xe0,\n 0x07,\n 0x00,\n 0x00,\n HEADER_BYTES.length,\n ...HEADER_BYTES,\n ]);\n\n // then\n expect(apdu.getRawApdu()).toEqual(expected);\n });\n });\n\n describe(\"parseResponse()\", () => {\n it(\"should return raw payload on success\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = { header: HEADER_BYTES };\n const cmd = new SignBlockHeaderCommand(args);\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: FULL_TLV_PAYLOAD,\n });\n\n // when\n const result = cmd.parseResponse(response);\n\n // then\n expect(isSuccessCommandResult(result)).toBe(true);\n if (isSuccessCommandResult(result)) {\n const res: SignBlockHeaderCommandResponse = result.data;\n expect(res).toEqual(FULL_TLV_PAYLOAD);\n }\n });\n\n it(\"should map SW errors to CommandResult errors\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = { header: HEADER_BYTES };\n const cmd = new SignBlockHeaderCommand(args);\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x6a, 0x86]),\n data: new Uint8Array(),\n });\n\n // when\n const result = cmd.parseResponse(response);\n\n // then\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect((result.error as any).errorCode).toBe(\"6a86\");\n }\n });\n\n it(\"should error if no data is returned\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = { header: HEADER_BYTES };\n const cmd = new SignBlockHeaderCommand(args);\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: new Uint8Array(),\n });\n\n // when\n const result = cmd.parseResponse(response);\n\n // then\n expect(isSuccessCommandResult(result)).toBe(true);\n if (isSuccessCommandResult(result)) {\n expect(result.data).toEqual(new Uint8Array([]));\n }\n });\n });\n});\n"],
5
- "mappings": "aAEA,IAAAA,EAGO,2CACPC,EAAqC,kBAOrCC,EAAuC,6BAEvC,MAAMC,EAAe,WAAW,KAAK,CAAC,IAAM,IAAM,IAAM,EAAI,CAAC,EACvDC,EAAY,WAAW,KAAK,CAAC,IAAM,IAAM,IAAM,EAAI,CAAC,EACpDC,EAAS,WAAW,KAAK,CAAC,EAAMD,EAAU,OAAQ,GAAGA,CAAS,CAAC,EAC/DE,EAAa,WAAW,KAAK,CAAC,IAAMF,EAAU,OAAQ,GAAGA,CAAS,CAAC,EACnEG,EAAmB,IAAI,WAAW,CAAC,GAAGF,EAAQ,GAAGC,CAAU,CAAC,KAElE,YAAS,yBAA0B,IAAM,IACvC,YAAS,YAAa,IAAM,IAC1B,MAAG,mDAAoD,IAAM,CAE3D,MAAME,EAAmC,CAAE,OAAQL,CAAa,EAI1DM,EAHM,IAAI,yBAAuBD,CAAI,EAG1B,QAAQ,EACnBE,EAAW,WAAW,KAAK,CAC/B,IACA,EACA,EACA,EACAP,EAAa,OACb,GAAGA,CACL,CAAC,KAGD,UAAOM,EAAK,WAAW,CAAC,EAAE,QAAQC,CAAQ,CAC5C,CAAC,CACH,CAAC,KAED,YAAS,kBAAmB,IAAM,IAChC,MAAG,uCAAwC,IAAM,CAE/C,MAAMF,EAAmC,CAAE,OAAQL,CAAa,EAC1DQ,EAAM,IAAI,yBAAuBH,CAAI,EACrCI,EAAW,IAAI,eAAa,CAChC,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAML,CACR,CAAC,EAGKM,EAASF,EAAI,cAAcC,CAAQ,EAIzC,MADA,aAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAI,KAC5C,0BAAuBA,CAAM,EAAG,CAClC,MAAMC,EAAsCD,EAAO,QACnD,UAAOC,CAAG,EAAE,QAAQP,CAAgB,CACtC,CACF,CAAC,KAED,MAAG,+CAAgD,IAAM,CAEvD,MAAMC,EAAmC,CAAE,OAAQL,CAAa,EAC1DQ,EAAM,IAAI,yBAAuBH,CAAI,EACrCI,EAAW,IAAI,eAAa,CAChC,WAAY,WAAW,KAAK,CAAC,IAAM,GAAI,CAAC,EACxC,KAAM,IAAI,UACZ,CAAC,EAGKC,EAASF,EAAI,cAAcC,CAAQ,KAGzC,aAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAK,KAC5C,0BAAuBA,CAAM,MAChC,UAAQA,EAAO,MAAc,SAAS,EAAE,KAAK,MAAM,CAEvD,CAAC,KAED,MAAG,sCAAuC,IAAM,CAE9C,MAAML,EAAmC,CAAE,OAAQL,CAAa,EAC1DQ,EAAM,IAAI,yBAAuBH,CAAI,EACrCI,EAAW,IAAI,eAAa,CAChC,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAM,IAAI,UACZ,CAAC,EAGKC,EAASF,EAAI,cAAcC,CAAQ,KAGzC,aAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAI,KAC5C,0BAAuBA,CAAM,MAC/B,UAAOA,EAAO,IAAI,EAAE,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,CAElD,CAAC,CACH,CAAC,CACH,CAAC",
6
- "names": ["import_device_management_kit", "import_vitest", "import_SignBlockHeader", "HEADER_BYTES", "TLV_VALUE", "IV_TLV", "ISSUER_TLV", "FULL_TLV_PAYLOAD", "args", "apdu", "expected", "cmd", "response", "result", "res"]
4
+ "sourcesContent": ["/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { describe, expect, it } from \"vitest\";\n\nimport {\n type SignBlockHeaderCommandArgs,\n type SignBlockHeaderCommandResponse,\n} from \"@api/app-binder/SignBlockHeaderCommandTypes\";\nimport { GeneralTags } from \"@internal/models/Tags\";\n\nimport {\n ISSUER_PLACEHOLDER_TLV,\n SignBlockHeaderCommand,\n} from \"./SignBlockHeader\";\n\nconst COMMAND_COUNT = 3;\nconst PARENT_BYTES = Uint8Array.from([0xf0, 0xca, 0xcc, 0x1a]);\nconst HEADER_BYTES = Uint8Array.from([\n ...[GeneralTags.Int, 1, 1], // version 1\n ...[GeneralTags.Hash, 4, ...PARENT_BYTES], // Parent hash\n ...ISSUER_PLACEHOLDER_TLV,\n ...[GeneralTags.Int, 1, COMMAND_COUNT], // command count\n]);\nconst TLV_VALUE = Uint8Array.from([0xf0, 0xca, 0xcc, 0x1a]);\nconst IV_TLV = Uint8Array.from([0x00, TLV_VALUE.length, ...TLV_VALUE]);\nconst ISSUER_TLV = Uint8Array.from([0x81, TLV_VALUE.length, ...TLV_VALUE]);\nconst FULL_TLV_PAYLOAD = new Uint8Array([...IV_TLV, ...ISSUER_TLV]);\n\ndescribe(\"SignBlockHeaderCommand\", () => {\n describe(\"getApdu()\", () => {\n it(\"should build the correct APDU for a parent hash and a commands count\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = {\n parent: PARENT_BYTES,\n commandCount: COMMAND_COUNT,\n };\n const cmd = new SignBlockHeaderCommand(args);\n\n // when\n const apdu = cmd.getApdu();\n const expected = Uint8Array.from([\n 0xe0,\n 0x07,\n 0x00,\n 0x00,\n HEADER_BYTES.length,\n ...HEADER_BYTES,\n ]);\n\n // then\n expect(apdu.getRawApdu()).toEqual(expected);\n });\n });\n\n describe(\"parseResponse()\", () => {\n it(\"should return raw payload on success\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = {\n parent: PARENT_BYTES,\n commandCount: COMMAND_COUNT,\n };\n const cmd = new SignBlockHeaderCommand(args);\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: FULL_TLV_PAYLOAD,\n });\n\n // when\n const result = cmd.parseResponse(response);\n\n // then\n expect(isSuccessCommandResult(result)).toBe(true);\n if (isSuccessCommandResult(result)) {\n const res: SignBlockHeaderCommandResponse = result.data;\n expect(res).toEqual(FULL_TLV_PAYLOAD);\n }\n });\n\n it(\"should map SW errors to CommandResult errors\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = {\n parent: PARENT_BYTES,\n commandCount: COMMAND_COUNT,\n };\n const cmd = new SignBlockHeaderCommand(args);\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x6a, 0x86]),\n data: new Uint8Array(),\n });\n\n // when\n const result = cmd.parseResponse(response);\n\n // then\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect((result.error as any).errorCode).toBe(\"6a86\");\n }\n });\n\n it(\"should error if no data is returned\", () => {\n // given\n const args: SignBlockHeaderCommandArgs = {\n parent: PARENT_BYTES,\n commandCount: COMMAND_COUNT,\n };\n const cmd = new SignBlockHeaderCommand(args);\n const response = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: new Uint8Array(),\n });\n\n // when\n const result = cmd.parseResponse(response);\n\n // then\n expect(isSuccessCommandResult(result)).toBe(true);\n if (isSuccessCommandResult(result)) {\n expect(result.data).toEqual(new Uint8Array([]));\n }\n });\n });\n});\n"],
5
+ "mappings": "aAEA,IAAAA,EAGO,2CACPC,EAAqC,kBAMrCC,EAA4B,iCAE5BC,EAGO,6BAEP,MAAMC,EAAgB,EAChBC,EAAe,WAAW,KAAK,CAAC,IAAM,IAAM,IAAM,EAAI,CAAC,EACvDC,EAAe,WAAW,KAAK,CAC/B,cAAY,IAAK,EAAG,EACpB,cAAY,KAAM,EAAG,GAAGD,EAC5B,GAAG,yBACC,cAAY,IAAK,EAAGD,CAC1B,CAAC,EACKG,EAAY,WAAW,KAAK,CAAC,IAAM,IAAM,IAAM,EAAI,CAAC,EACpDC,EAAS,WAAW,KAAK,CAAC,EAAMD,EAAU,OAAQ,GAAGA,CAAS,CAAC,EAC/DE,EAAa,WAAW,KAAK,CAAC,IAAMF,EAAU,OAAQ,GAAGA,CAAS,CAAC,EACnEG,EAAmB,IAAI,WAAW,CAAC,GAAGF,EAAQ,GAAGC,CAAU,CAAC,KAElE,YAAS,yBAA0B,IAAM,IACvC,YAAS,YAAa,IAAM,IAC1B,MAAG,uEAAwE,IAAM,CAE/E,MAAME,EAAmC,CACvC,OAAQN,EACR,aAAcD,CAChB,EAIMQ,EAHM,IAAI,yBAAuBD,CAAI,EAG1B,QAAQ,EACnBE,EAAW,WAAW,KAAK,CAC/B,IACA,EACA,EACA,EACAP,EAAa,OACb,GAAGA,CACL,CAAC,KAGD,UAAOM,EAAK,WAAW,CAAC,EAAE,QAAQC,CAAQ,CAC5C,CAAC,CACH,CAAC,KAED,YAAS,kBAAmB,IAAM,IAChC,MAAG,uCAAwC,IAAM,CAE/C,MAAMF,EAAmC,CACvC,OAAQN,EACR,aAAcD,CAChB,EACMU,EAAM,IAAI,yBAAuBH,CAAI,EACrCI,EAAW,IAAI,eAAa,CAChC,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAML,CACR,CAAC,EAGKM,EAASF,EAAI,cAAcC,CAAQ,EAIzC,MADA,aAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAI,KAC5C,0BAAuBA,CAAM,EAAG,CAClC,MAAMC,EAAsCD,EAAO,QACnD,UAAOC,CAAG,EAAE,QAAQP,CAAgB,CACtC,CACF,CAAC,KAED,MAAG,+CAAgD,IAAM,CAEvD,MAAMC,EAAmC,CACvC,OAAQN,EACR,aAAcD,CAChB,EACMU,EAAM,IAAI,yBAAuBH,CAAI,EACrCI,EAAW,IAAI,eAAa,CAChC,WAAY,WAAW,KAAK,CAAC,IAAM,GAAI,CAAC,EACxC,KAAM,IAAI,UACZ,CAAC,EAGKC,EAASF,EAAI,cAAcC,CAAQ,KAGzC,aAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAK,KAC5C,0BAAuBA,CAAM,MAChC,UAAQA,EAAO,MAAc,SAAS,EAAE,KAAK,MAAM,CAEvD,CAAC,KAED,MAAG,sCAAuC,IAAM,CAE9C,MAAML,EAAmC,CACvC,OAAQN,EACR,aAAcD,CAChB,EACMU,EAAM,IAAI,yBAAuBH,CAAI,EACrCI,EAAW,IAAI,eAAa,CAChC,WAAY,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,EACxC,KAAM,IAAI,UACZ,CAAC,EAGKC,EAASF,EAAI,cAAcC,CAAQ,KAGzC,aAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAI,KAC5C,0BAAuBA,CAAM,MAC/B,UAAOA,EAAO,IAAI,EAAE,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,CAElD,CAAC,CACH,CAAC,CACH,CAAC",
6
+ "names": ["import_device_management_kit", "import_vitest", "import_Tags", "import_SignBlockHeader", "COMMAND_COUNT", "PARENT_BYTES", "HEADER_BYTES", "TLV_VALUE", "IV_TLV", "ISSUER_TLV", "FULL_TLV_PAYLOAD", "args", "apdu", "expected", "cmd", "response", "result", "res"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var l=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var g=(p,r)=>{for(var s in r)l(p,s,{get:r[s],enumerable:!0})},k=(p,r,s,u)=>{if(r&&typeof r=="object"||typeof r=="function")for(let d of D(r))!E.call(p,d)&&d!==s&&l(p,d,{get:()=>r[d],enumerable:!(u=S(r,d))||u.enumerable});return p};var I=p=>k(l({},"__esModule",{value:!0}),p);var v={};g(v,{AddToTrustchainDeviceAction:()=>f});module.exports=I(v);var n=require("@ledgerhq/device-management-kit"),c=require("purify-ts"),i=require("xstate"),T=require("../../app-binder/task/InitTask"),A=require("../../app-binder/task/ParseStreamToDeviceTask"),y=require("../../app-binder/task/SignBlockTask"),h=require("../../utils/eitherSeqRecord"),o=require("../../utils/required"),m=require("./utils/raiseAndAssign");class f extends n.XStateDeviceAction{makeStateMachine(r){const{initCommand:s,parseStream:u,signBlock:d}=this.extractDependencies(r);return(0,i.setup)({types:{input:{},context:{},output:{}},actors:{initCommand:(0,i.fromPromise)(s),parseStream:(0,i.fromPromise)(u),signBlock:(0,i.fromPromise)(d)},actions:{assignErrorFromEvent:(0,m.raiseAndAssign)(({event:t})=>(0,c.Left)(new n.UnknownDAError(String(t.error))))},guards:{isTustchainEmpty:({context:t})=>t.input.toMaybe().chain(e=>e.applicationStream.parse().toMaybe()).map(e=>e.length===0).orDefault(!0)}}).createMachine({id:"AddToTrustchainDeviceAction",context:({input:t})=>({input:t,intermediateValue:{requiredUserInteraction:n.UserInteractionRequired.None},_internalState:(0,c.Right)({sessionKeypair:null})}),initial:"InitSession",states:{InitSession:{on:{success:"ParseStream",error:"Error"},invoke:{id:"initCommand",src:"initCommand",onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,m.raiseAndAssign)(({event:t})=>t.output.map(e=>({raise:"success",assign:{sessionKeypair:e}})))}}},ParseStream:{on:{success:"CheckApplicationStreamExist",error:"Error"},invoke:{id:"parseStream",src:"parseStream",input:({context:t})=>t.input.chain(e=>(0,o.required)(e.trustchain?.["m/"],"Missing root stream").chain(a=>a.parse()).chain(a=>(0,o.required)(a[0],"Missing seed block")).map(a=>({seedBlock:a,applicationStream:e.applicationStream}))),onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,m.raiseAndAssign)(({event:t})=>t.output.map(()=>({raise:"success"})))}}},CheckApplicationStreamExist:{always:[{target:"AddToNewStream",guard:"isTustchainEmpty"},{target:"AddToExistingStream"}]},AddToExistingStream:{on:{success:"Success",error:"Error"},entry:(0,i.assign)({intermediateValue:{requiredUserInteraction:"add-ledger-sync"}}),exit:(0,i.assign)({intermediateValue:{requiredUserInteraction:n.UserInteractionRequired.None}}),invoke:{id:"signBlock",src:"signBlock",input:({context:t})=>t.input.chain(e=>(0,h.eitherSeqRecord)({lkrpDataSource:e.lkrpDataSource,trustchainId:e.trustchainId,jwt:e.jwt,clientName:e.clientName,sessionKeypair:()=>t._internalState.chain(({sessionKeypair:a})=>(0,o.required)(a,"Missing session keypair")),path:()=>(0,o.required)(e.applicationStream.getPath().extract(),"Missing application path"),parent:()=>(0,o.required)(e.applicationStream.parse().toMaybe().chainNullable(a=>a.at(-1)?.hash()).chainNullable(n.hexaStringToBuffer).extract(),"Missing parent block"),blockFlow:{type:"addMember",data:{name:e.clientName,publicKey:e.keypair.pubKeyToU8a(),permissions:e.permissions}}})),onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,m.raiseAndAssign)(({event:t})=>t.output.map(()=>({raise:"success"})))}}},AddToNewStream:{on:{success:"Success",error:"Error"},entry:(0,i.assign)({intermediateValue:{requiredUserInteraction:"add-ledger-sync"}}),exit:(0,i.assign)({intermediateValue:{requiredUserInteraction:n.UserInteractionRequired.None}}),invoke:{id:"signBlock",src:"signBlock",input:({context:t})=>t.input.chain(e=>(0,h.eitherSeqRecord)({lkrpDataSource:e.lkrpDataSource,trustchainId:e.trustchainId,jwt:e.jwt,clientName:e.clientName,sessionKeypair:()=>t._internalState.chain(({sessionKeypair:a})=>(0,o.required)(a,"Missing session keypair")),path:()=>(0,o.required)(e.applicationStream.getPath().extract(),"Missing application path"),parent:()=>(0,o.required)(c.Maybe.fromNullable(e.trustchain["m/"]).chain(a=>a.parse().toMaybe()).chainNullable(a=>a[0]?.hash()).chainNullable(n.hexaStringToBuffer).extract(),"Missing init block"),blockFlow:{type:"derive",data:{name:e.clientName,publicKey:e.keypair.pubKeyToU8a(),permissions:e.permissions}}})),onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,m.raiseAndAssign)(({event:t})=>t.output.map(()=>({raise:"success"})))}}},Success:{type:"final"},Error:{type:"final"}},output:({context:t})=>t._internalState.map(e=>{})})}extractDependencies(r){return{initCommand:()=>new T.InitTask(r).run(),parseStream:async s=>c.EitherAsync.liftEither(s.input).chain(u=>new A.ParseStreamToDeviceTask(r).run(u)).run(),signBlock:s=>c.EitherAsync.liftEither(s.input).chain(u=>new y.SignBlockTask(r).run(u)).run()}}}0&&(module.exports={AddToTrustchainDeviceAction});
1
+ "use strict";var S=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var k=Object.getOwnPropertyNames;var I=Object.prototype.hasOwnProperty;var b=(o,r)=>{for(var i in r)S(o,i,{get:r[i],enumerable:!0})},f=(o,r,i,c)=>{if(r&&typeof r=="object"||typeof r=="function")for(let m of k(r))!I.call(o,m)&&m!==i&&S(o,m,{get:()=>r[m],enumerable:!(c=g(r,m))||c.enumerable});return o};var M=o=>f(S({},"__esModule",{value:!0}),o);var w={};b(w,{AddToTrustchainDeviceAction:()=>v});module.exports=M(w);var s=require("@ledgerhq/device-management-kit"),u=require("purify-ts"),a=require("xstate"),d=require("../../../api/app-binder/AddToTrustchainDeviceActionTypes"),A=require("../../../api/app-binder/Errors"),y=require("../../app-binder/task/InitTask"),D=require("../../app-binder/task/ParseStreamToDeviceTask"),E=require("../../app-binder/task/SignBlockTask"),l=require("../../utils/eitherSeqRecord"),p=require("../../utils/required"),T=require("./utils/raiseAndAssign");class v extends s.XStateDeviceAction{makeStateMachine(r){const{initCommand:i,parseStream:c,signBlock:m}=this.extractDependencies(r);return(0,a.setup)({types:{input:{},context:{},output:{}},actors:{initCommand:(0,a.fromPromise)(i),parseStream:(0,a.fromPromise)(c),signBlock:(0,a.fromPromise)(m)},actions:{assignErrorFromEvent:(0,T.raiseAndAssign)(({event:t})=>(0,u.Left)(new A.LKRPUnknownError(String(t.error))))},guards:{isTustchainEmpty:({context:t})=>t.input.toMaybe().chain(e=>e.trustchain.getAppStream(e.appId)).chain(e=>e.parse().toMaybe()).map(e=>e.length===0).orDefault(!0)}}).createMachine({id:"AddToTrustchainDeviceAction",context:({input:t})=>({input:t,intermediateValue:{requiredUserInteraction:s.UserInteractionRequired.None},_internalState:(0,u.Right)({sessionKeypair:null})}),initial:"InitSession",states:{InitSession:{entry:(0,a.assign)({intermediateValue:{requiredUserInteraction:s.UserInteractionRequired.None,step:d.AddToTrustchaineDAStep.Initialize}}),on:{success:"ParseStream",error:"Error"},invoke:{id:"initCommand",src:"initCommand",onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,T.raiseAndAssign)(({event:t})=>t.output.map(e=>({raise:"success",assign:{sessionKeypair:e}})))}}},ParseStream:{entry:(0,a.assign)({intermediateValue:{requiredUserInteraction:s.UserInteractionRequired.None,step:d.AddToTrustchaineDAStep.ParseStream}}),on:{success:"CheckApplicationStreamExist",error:"Error"},invoke:{id:"parseStream",src:"parseStream",input:({context:t})=>t.input.chain(e=>(0,l.eitherSeqRecord)({seedBlock:()=>(0,p.required)(e.trustchain.getRootStream().chain(n=>n.parse().toMaybe()).extract()?.[0],"Missing seed block to parse"),applicationStream:()=>(0,p.required)(e.trustchain.getAppStream(e.appId).extract(),"Missing application stream to parse")})),onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,T.raiseAndAssign)(({event:t})=>t.output.map(()=>({raise:"success"})))}}},CheckApplicationStreamExist:{always:[{target:"AddToNewStream",guard:"isTustchainEmpty"},{target:"AddToExistingStream"}]},AddToExistingStream:{entry:(0,a.assign)({intermediateValue:{requiredUserInteraction:d.AddToTrustchainDAState.AddMember,step:d.AddToTrustchaineDAStep.AddMember}}),on:{success:"Success",error:"Error"},invoke:{id:"signBlock",src:"signBlock",input:({context:t})=>t.input.chain(e=>{const n=e.trustchain.getAppStream(e.appId);return(0,l.eitherSeqRecord)({lkrpDataSource:e.lkrpDataSource,trustchainId:e.trustchain.getId(),jwt:e.jwt,clientName:e.clientName,sessionKeypair:()=>t._internalState.chain(({sessionKeypair:h})=>(0,p.required)(h,"Missing session keypair")),path:()=>(0,p.required)(n.chain(h=>h.getPath()).extract(),"Missing application path"),parent:()=>(0,p.required)(n.chain(h=>h.parse().toMaybe()).chainNullable(h=>h.at(-1)?.hash()).chainNullable(s.hexaStringToBuffer).extract(),"Missing parent block"),blockFlow:{type:"addMember",data:{name:e.clientName,publicKey:e.keypair.pubKeyToU8a(),permissions:e.permissions}}})}),onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,T.raiseAndAssign)(({event:t})=>t.output.map(()=>({raise:"success"})))}}},AddToNewStream:{entry:(0,a.assign)({intermediateValue:{requiredUserInteraction:d.AddToTrustchainDAState.AddMember,step:d.AddToTrustchaineDAStep.AddMember}}),on:{success:"Success",error:"Error"},invoke:{id:"signBlock",src:"signBlock",input:({context:t})=>t.input.chain(e=>(0,l.eitherSeqRecord)({lkrpDataSource:e.lkrpDataSource,trustchainId:e.trustchain.getId(),jwt:e.jwt,clientName:e.clientName,sessionKeypair:()=>t._internalState.chain(({sessionKeypair:n})=>(0,p.required)(n,"Missing session keypair")),path:`m/0'/${e.appId}'/0'`,parent:()=>(0,p.required)(e.trustchain.getRootStream().chain(n=>n.parse().toMaybe()).chainNullable(n=>n[0]?.hash()).chainNullable(s.hexaStringToBuffer).extract(),"Missing init block"),blockFlow:{type:"derive",data:{name:e.clientName,publicKey:e.keypair.pubKeyToU8a(),permissions:e.permissions}}}).chain(()=>(0,u.Left)(new A.LKRPTrustchainNotReady))),onError:{actions:"assignErrorFromEvent"},onDone:{actions:(0,T.raiseAndAssign)(({event:t})=>t.output.map(()=>({raise:"success"})))}}},Success:{type:"final"},Error:{type:"final"}},output:({context:t})=>t._internalState.map(e=>{})})}extractDependencies(r){return{initCommand:()=>new y.InitTask(r).run(),parseStream:async i=>u.EitherAsync.liftEither(i.input).chain(c=>new D.ParseStreamToDeviceTask(r).run(c)).run(),signBlock:i=>u.EitherAsync.liftEither(i.input).chain(c=>new E.SignBlockTask(r).run(c)).run()}}}0&&(module.exports={AddToTrustchainDeviceAction});
2
2
  //# sourceMappingURL=AddToTrustchainDeviceAction.js.map