@ledgerhq/device-trusted-app-kit-ledger-keyring-protocol 0.0.0-legacy-speculos-datasource-20250820121907 → 0.0.0-lifi-with-logger-20251208144248

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 (542) 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/GetVersionCommandTypes.js +1 -1
  10. package/lib/cjs/api/app-binder/GetVersionCommandTypes.js.map +1 -1
  11. package/lib/cjs/api/crypto/CryptoService.js +2 -0
  12. package/lib/cjs/api/crypto/CryptoService.js.map +7 -0
  13. package/lib/cjs/api/crypto/Key.js +2 -0
  14. package/lib/cjs/api/crypto/Key.js.map +7 -0
  15. package/lib/cjs/api/crypto/KeyPair.js +2 -0
  16. package/lib/cjs/api/crypto/KeyPair.js.map +7 -0
  17. package/lib/cjs/api/crypto/noble/NobleCryptoService.js +2 -0
  18. package/lib/cjs/api/crypto/noble/NobleCryptoService.js.map +7 -0
  19. package/lib/cjs/api/crypto/noble/NobleCryptoService.test.js +2 -0
  20. package/lib/cjs/api/crypto/noble/NobleCryptoService.test.js.map +7 -0
  21. package/lib/cjs/api/crypto/noble/NobleKey.js +2 -0
  22. package/lib/cjs/api/crypto/noble/NobleKey.js.map +7 -0
  23. package/lib/cjs/api/crypto/noble/NobleKey.test.js +2 -0
  24. package/lib/cjs/api/crypto/noble/NobleKey.test.js.map +7 -0
  25. package/lib/cjs/api/crypto/noble/NobleKeyPair.js +2 -0
  26. package/lib/cjs/api/crypto/noble/NobleKeyPair.js.map +7 -0
  27. package/lib/cjs/api/crypto/noble/NobleKeyPair.test.js +2 -0
  28. package/lib/cjs/api/crypto/noble/NobleKeyPair.test.js.map +7 -0
  29. package/lib/cjs/api/index.js +1 -1
  30. package/lib/cjs/api/index.js.map +2 -2
  31. package/lib/cjs/api/model/Env.js +2 -0
  32. package/lib/cjs/api/model/Env.js.map +7 -0
  33. package/lib/cjs/api/model/Errors.js +2 -0
  34. package/lib/cjs/api/model/Errors.js.map +7 -0
  35. package/lib/cjs/api/model/JWT.js +2 -0
  36. package/lib/cjs/api/model/JWT.js.map +7 -0
  37. package/lib/cjs/api/model/Permissions.js +2 -0
  38. package/lib/cjs/api/model/Permissions.js.map +7 -0
  39. package/lib/cjs/internal/DefaultLedgerKeyringProtocol.js +1 -1
  40. package/lib/cjs/internal/DefaultLedgerKeyringProtocol.js.map +3 -3
  41. package/lib/cjs/internal/app-binder/LedgerKeyringProtocolBinder.js +1 -1
  42. package/lib/cjs/internal/app-binder/LedgerKeyringProtocolBinder.js.map +3 -3
  43. package/lib/cjs/internal/app-binder/command/GetAppNameCommand.js +1 -1
  44. package/lib/cjs/internal/app-binder/command/GetAppNameCommand.js.map +2 -2
  45. package/lib/cjs/internal/app-binder/command/GetSeedIdCommand.js +1 -1
  46. package/lib/cjs/internal/app-binder/command/GetSeedIdCommand.js.map +3 -3
  47. package/lib/cjs/internal/app-binder/command/GetSeedIdCommand.test.js +3 -3
  48. package/lib/cjs/internal/app-binder/command/GetSeedIdCommand.test.js.map +3 -3
  49. package/lib/cjs/internal/app-binder/command/GetVersionCommand.js +1 -1
  50. package/lib/cjs/internal/app-binder/command/GetVersionCommand.js.map +2 -2
  51. package/lib/cjs/internal/app-binder/command/InitCommand.js +1 -1
  52. package/lib/cjs/internal/app-binder/command/InitCommand.js.map +2 -2
  53. package/lib/cjs/internal/app-binder/command/InitCommand.test.js +1 -1
  54. package/lib/cjs/internal/app-binder/command/InitCommand.test.js.map +3 -3
  55. package/lib/cjs/internal/app-binder/command/ParseBlockSignatureCommand.js +1 -1
  56. package/lib/cjs/internal/app-binder/command/ParseBlockSignatureCommand.js.map +2 -2
  57. package/lib/cjs/internal/app-binder/command/ParseBlockSignatureCommand.test.js +1 -1
  58. package/lib/cjs/internal/app-binder/command/ParseBlockSignatureCommand.test.js.map +3 -3
  59. package/lib/cjs/internal/app-binder/command/ParseStreamBlockCommand.js +1 -1
  60. package/lib/cjs/internal/app-binder/command/ParseStreamBlockCommand.js.map +2 -2
  61. package/lib/cjs/internal/app-binder/command/ParseStreamBlockCommand.test.js +1 -1
  62. package/lib/cjs/internal/app-binder/command/ParseStreamBlockCommand.test.js.map +3 -3
  63. package/lib/cjs/internal/app-binder/command/ParseStreamBlockHeader.js +1 -1
  64. package/lib/cjs/internal/app-binder/command/ParseStreamBlockHeader.js.map +2 -2
  65. package/lib/cjs/internal/app-binder/command/ParseStreamBlockHeader.test.js +1 -1
  66. package/lib/cjs/internal/app-binder/command/ParseStreamBlockHeader.test.js.map +3 -3
  67. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.js +1 -1
  68. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.js.map +3 -3
  69. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.test.js +1 -1
  70. package/lib/cjs/internal/app-binder/command/SetTrustedMemberCommand.test.js.map +3 -3
  71. package/lib/cjs/internal/app-binder/command/SignBlockHeader.js +1 -1
  72. package/lib/cjs/internal/app-binder/command/SignBlockHeader.js.map +3 -3
  73. package/lib/cjs/internal/app-binder/command/SignBlockHeader.test.js +1 -1
  74. package/lib/cjs/internal/app-binder/command/SignBlockHeader.test.js.map +3 -3
  75. package/lib/cjs/internal/app-binder/command/SignBlockSignatureCommand.js +1 -1
  76. package/lib/cjs/internal/app-binder/command/SignBlockSignatureCommand.js.map +2 -2
  77. package/lib/cjs/internal/app-binder/command/SignBlockSignatureCommand.test.js +1 -1
  78. package/lib/cjs/internal/app-binder/command/SignBlockSignatureCommand.test.js.map +3 -3
  79. package/lib/cjs/internal/app-binder/command/SignBlockSingleCommand.js +1 -1
  80. package/lib/cjs/internal/app-binder/command/SignBlockSingleCommand.js.map +2 -2
  81. package/lib/cjs/internal/app-binder/command/SignBlockSingleCommand.test.js +1 -1
  82. package/lib/cjs/internal/app-binder/command/SignBlockSingleCommand.test.js.map +3 -3
  83. package/lib/cjs/internal/app-binder/device-action/AddToTrustchainDeviceAction.js +1 -1
  84. package/lib/cjs/internal/app-binder/device-action/AddToTrustchainDeviceAction.js.map +3 -3
  85. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js +2 -0
  86. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js.map +7 -0
  87. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js +2 -0
  88. package/lib/cjs/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js.map +7 -0
  89. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js +2 -0
  90. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js.map +7 -0
  91. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js +2 -0
  92. package/lib/cjs/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js.map +7 -0
  93. package/lib/cjs/internal/app-binder/task/AuthenticateTask.js +2 -0
  94. package/lib/cjs/internal/app-binder/task/AuthenticateTask.js.map +7 -0
  95. package/lib/cjs/internal/app-binder/task/ExtractEncryptionKeyTask.js +2 -0
  96. package/lib/cjs/internal/app-binder/task/ExtractEncryptionKeyTask.js.map +7 -0
  97. package/lib/cjs/internal/app-binder/task/InitTask.js +1 -1
  98. package/lib/cjs/internal/app-binder/task/InitTask.js.map +3 -3
  99. package/lib/cjs/internal/app-binder/task/ParseStreamToDeviceTask.js +1 -1
  100. package/lib/cjs/internal/app-binder/task/ParseStreamToDeviceTask.js.map +3 -3
  101. package/lib/cjs/internal/app-binder/task/SignBlockTask.js +1 -1
  102. package/lib/cjs/internal/app-binder/task/SignBlockTask.js.map +3 -3
  103. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.js +1 -1
  104. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.js.map +3 -3
  105. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.test.js +1 -1
  106. package/lib/cjs/internal/app-binder/task/SignChallengeWithKeypairTask.test.js.map +3 -3
  107. package/lib/cjs/internal/app-binder/task/utils/TrustedProperties.js +1 -1
  108. package/lib/cjs/internal/app-binder/task/utils/TrustedProperties.js.map +3 -3
  109. package/lib/cjs/internal/di.js +1 -1
  110. package/lib/cjs/internal/di.js.map +3 -3
  111. package/lib/cjs/internal/externalTypes.js +1 -1
  112. package/lib/cjs/internal/externalTypes.js.map +2 -2
  113. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.js +1 -1
  114. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.js.map +3 -3
  115. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js +1 -1
  116. package/lib/cjs/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js.map +3 -3
  117. package/lib/cjs/internal/lkrp-datasource/data/LKRPDataSource.js +1 -1
  118. package/lib/cjs/internal/lkrp-datasource/data/LKRPDataSource.js.map +1 -1
  119. package/lib/cjs/internal/models/LKRPBlockTypes.js +2 -0
  120. package/lib/cjs/internal/models/LKRPBlockTypes.js.map +7 -0
  121. package/lib/cjs/internal/models/LKRPCommandTypes.js +2 -0
  122. package/lib/cjs/internal/models/LKRPCommandTypes.js.map +7 -0
  123. package/lib/cjs/internal/{utils/TLVTags.js → models/Tags.js} +1 -1
  124. package/lib/cjs/internal/{utils/TLVTags.js.map → models/Tags.js.map} +2 -2
  125. package/lib/cjs/internal/models/Types.js +2 -0
  126. package/lib/cjs/internal/models/Types.js.map +7 -0
  127. package/lib/cjs/internal/use-cases/authentication/AuthenticateUseCase.js +1 -1
  128. package/lib/cjs/internal/use-cases/authentication/AuthenticateUseCase.js.map +3 -3
  129. package/lib/cjs/internal/use-cases/authentication/DecryptDataUseCase.js +2 -0
  130. package/lib/cjs/internal/use-cases/authentication/DecryptDataUseCase.js.map +7 -0
  131. package/lib/cjs/internal/use-cases/authentication/EncryptDataUseCase.js +2 -0
  132. package/lib/cjs/internal/use-cases/authentication/EncryptDataUseCase.js.map +7 -0
  133. package/lib/cjs/internal/use-cases/di/useCasesModule.js +1 -1
  134. package/lib/cjs/internal/use-cases/di/useCasesModule.js.map +3 -3
  135. package/lib/cjs/internal/use-cases/di/useCasesTypes.js +1 -1
  136. package/lib/cjs/internal/use-cases/di/useCasesTypes.js.map +2 -2
  137. package/lib/cjs/internal/utils/LKRPBlock.js +4 -4
  138. package/lib/cjs/internal/utils/LKRPBlock.js.map +3 -3
  139. package/lib/cjs/internal/utils/LKRPBlock.test.js +3 -3
  140. package/lib/cjs/internal/utils/LKRPBlock.test.js.map +3 -3
  141. package/lib/cjs/internal/utils/LKRPBlockStream.js +2 -2
  142. package/lib/cjs/internal/utils/LKRPBlockStream.js.map +3 -3
  143. package/lib/cjs/internal/utils/LKRPBlockStream.test.js +3 -3
  144. package/lib/cjs/internal/utils/LKRPBlockStream.test.js.map +3 -3
  145. package/lib/cjs/internal/utils/LKRPCommand.js +2 -2
  146. package/lib/cjs/internal/utils/LKRPCommand.js.map +3 -3
  147. package/lib/cjs/internal/utils/LKRPCommand.test.js +2 -2
  148. package/lib/cjs/internal/utils/LKRPCommand.test.js.map +3 -3
  149. package/lib/cjs/internal/utils/TLVParser.js +1 -1
  150. package/lib/cjs/internal/utils/TLVParser.js.map +3 -3
  151. package/lib/cjs/internal/utils/TLVParser.test.js +1 -1
  152. package/lib/cjs/internal/utils/TLVParser.test.js.map +3 -3
  153. package/lib/cjs/internal/utils/Trustchain.js +2 -0
  154. package/lib/cjs/internal/utils/Trustchain.js.map +7 -0
  155. package/lib/cjs/internal/utils/required.js +1 -1
  156. package/lib/cjs/internal/utils/required.js.map +2 -2
  157. package/lib/cjs/package.json +36 -31
  158. package/lib/esm/api/LedgerKeyringProtocolBuilder.js +1 -1
  159. package/lib/esm/api/LedgerKeyringProtocolBuilder.js.map +3 -3
  160. package/lib/esm/api/app-binder/AddToTrustchainDeviceActionTypes.js +1 -0
  161. package/lib/esm/api/app-binder/AddToTrustchainDeviceActionTypes.js.map +4 -4
  162. package/lib/esm/api/app-binder/AuthenticateDeviceActionTypes.js +1 -0
  163. package/lib/esm/api/app-binder/AuthenticateDeviceActionTypes.js.map +4 -4
  164. package/lib/esm/api/crypto/CryptoService.js +2 -0
  165. package/lib/esm/api/crypto/CryptoService.js.map +7 -0
  166. package/lib/esm/api/crypto/Key.js +2 -0
  167. package/lib/esm/api/crypto/Key.js.map +7 -0
  168. package/lib/esm/api/crypto/KeyPair.js +2 -0
  169. package/lib/esm/api/crypto/KeyPair.js.map +7 -0
  170. package/lib/esm/api/crypto/noble/NobleCryptoService.js +2 -0
  171. package/lib/esm/api/crypto/noble/NobleCryptoService.js.map +7 -0
  172. package/lib/esm/api/crypto/noble/NobleCryptoService.test.js +2 -0
  173. package/lib/esm/api/crypto/noble/NobleCryptoService.test.js.map +7 -0
  174. package/lib/esm/api/crypto/noble/NobleKey.js +2 -0
  175. package/lib/esm/api/crypto/noble/NobleKey.js.map +7 -0
  176. package/lib/esm/api/crypto/noble/NobleKey.test.js +2 -0
  177. package/lib/esm/api/crypto/noble/NobleKey.test.js.map +7 -0
  178. package/lib/esm/api/crypto/noble/NobleKeyPair.js +2 -0
  179. package/lib/esm/api/crypto/noble/NobleKeyPair.js.map +7 -0
  180. package/lib/esm/api/crypto/noble/NobleKeyPair.test.js +2 -0
  181. package/lib/esm/api/crypto/noble/NobleKeyPair.test.js.map +7 -0
  182. package/lib/esm/api/index.js +1 -1
  183. package/lib/esm/api/index.js.map +2 -2
  184. package/lib/esm/api/model/Env.js +2 -0
  185. package/lib/esm/api/model/Env.js.map +7 -0
  186. package/lib/esm/api/model/Errors.js +2 -0
  187. package/lib/esm/api/model/Errors.js.map +7 -0
  188. package/lib/esm/api/model/JWT.js +1 -0
  189. package/lib/esm/api/model/Permissions.js +2 -0
  190. package/lib/esm/api/model/Permissions.js.map +7 -0
  191. package/lib/esm/internal/DefaultLedgerKeyringProtocol.js +1 -1
  192. package/lib/esm/internal/DefaultLedgerKeyringProtocol.js.map +3 -3
  193. package/lib/esm/internal/app-binder/LedgerKeyringProtocolBinder.js +1 -1
  194. package/lib/esm/internal/app-binder/LedgerKeyringProtocolBinder.js.map +3 -3
  195. package/lib/esm/internal/app-binder/command/GetAppNameCommand.js +1 -1
  196. package/lib/esm/internal/app-binder/command/GetAppNameCommand.js.map +2 -2
  197. package/lib/esm/internal/app-binder/command/GetSeedIdCommand.js +1 -1
  198. package/lib/esm/internal/app-binder/command/GetSeedIdCommand.js.map +3 -3
  199. package/lib/esm/internal/app-binder/command/GetSeedIdCommand.test.js +3 -3
  200. package/lib/esm/internal/app-binder/command/GetSeedIdCommand.test.js.map +3 -3
  201. package/lib/esm/internal/app-binder/command/GetVersionCommand.js +1 -1
  202. package/lib/esm/internal/app-binder/command/GetVersionCommand.js.map +2 -2
  203. package/lib/esm/internal/app-binder/command/InitCommand.js +1 -1
  204. package/lib/esm/internal/app-binder/command/InitCommand.js.map +2 -2
  205. package/lib/esm/internal/app-binder/command/InitCommand.test.js +1 -1
  206. package/lib/esm/internal/app-binder/command/InitCommand.test.js.map +3 -3
  207. package/lib/esm/internal/app-binder/command/ParseBlockSignatureCommand.js +1 -1
  208. package/lib/esm/internal/app-binder/command/ParseBlockSignatureCommand.js.map +2 -2
  209. package/lib/esm/internal/app-binder/command/ParseBlockSignatureCommand.test.js +1 -1
  210. package/lib/esm/internal/app-binder/command/ParseBlockSignatureCommand.test.js.map +3 -3
  211. package/lib/esm/internal/app-binder/command/ParseStreamBlockCommand.js +1 -1
  212. package/lib/esm/internal/app-binder/command/ParseStreamBlockCommand.js.map +2 -2
  213. package/lib/esm/internal/app-binder/command/ParseStreamBlockCommand.test.js +1 -1
  214. package/lib/esm/internal/app-binder/command/ParseStreamBlockCommand.test.js.map +3 -3
  215. package/lib/esm/internal/app-binder/command/ParseStreamBlockHeader.js +1 -1
  216. package/lib/esm/internal/app-binder/command/ParseStreamBlockHeader.js.map +2 -2
  217. package/lib/esm/internal/app-binder/command/ParseStreamBlockHeader.test.js +1 -1
  218. package/lib/esm/internal/app-binder/command/ParseStreamBlockHeader.test.js.map +3 -3
  219. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.js +1 -1
  220. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.js.map +2 -2
  221. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.test.js +1 -1
  222. package/lib/esm/internal/app-binder/command/SetTrustedMemberCommand.test.js.map +3 -3
  223. package/lib/esm/internal/app-binder/command/SignBlockHeader.js +1 -1
  224. package/lib/esm/internal/app-binder/command/SignBlockHeader.js.map +3 -3
  225. package/lib/esm/internal/app-binder/command/SignBlockHeader.test.js +1 -1
  226. package/lib/esm/internal/app-binder/command/SignBlockHeader.test.js.map +3 -3
  227. package/lib/esm/internal/app-binder/command/SignBlockSignatureCommand.js +1 -1
  228. package/lib/esm/internal/app-binder/command/SignBlockSignatureCommand.js.map +2 -2
  229. package/lib/esm/internal/app-binder/command/SignBlockSignatureCommand.test.js +1 -1
  230. package/lib/esm/internal/app-binder/command/SignBlockSignatureCommand.test.js.map +3 -3
  231. package/lib/esm/internal/app-binder/command/SignBlockSingleCommand.js +1 -1
  232. package/lib/esm/internal/app-binder/command/SignBlockSingleCommand.js.map +2 -2
  233. package/lib/esm/internal/app-binder/command/SignBlockSingleCommand.test.js +1 -1
  234. package/lib/esm/internal/app-binder/command/SignBlockSingleCommand.test.js.map +3 -3
  235. package/lib/esm/internal/app-binder/device-action/AddToTrustchainDeviceAction.js +1 -1
  236. package/lib/esm/internal/app-binder/device-action/AddToTrustchainDeviceAction.js.map +3 -3
  237. package/lib/esm/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js +2 -0
  238. package/lib/esm/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.js.map +7 -0
  239. package/lib/esm/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js +2 -0
  240. package/lib/esm/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.js.map +7 -0
  241. package/lib/esm/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js +1 -0
  242. package/lib/esm/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js +1 -0
  243. package/lib/esm/internal/app-binder/task/AuthenticateTask.js +2 -0
  244. package/lib/esm/internal/app-binder/task/AuthenticateTask.js.map +7 -0
  245. package/lib/esm/internal/app-binder/task/ExtractEncryptionKeyTask.js +2 -0
  246. package/lib/esm/internal/app-binder/task/ExtractEncryptionKeyTask.js.map +7 -0
  247. package/lib/esm/internal/app-binder/task/InitTask.js +1 -1
  248. package/lib/esm/internal/app-binder/task/InitTask.js.map +3 -3
  249. package/lib/esm/internal/app-binder/task/ParseStreamToDeviceTask.js +1 -1
  250. package/lib/esm/internal/app-binder/task/ParseStreamToDeviceTask.js.map +3 -3
  251. package/lib/esm/internal/app-binder/task/SignBlockTask.js +1 -1
  252. package/lib/esm/internal/app-binder/task/SignBlockTask.js.map +3 -3
  253. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.js +1 -1
  254. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.js.map +3 -3
  255. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.test.js +1 -1
  256. package/lib/esm/internal/app-binder/task/SignChallengeWithKeypairTask.test.js.map +3 -3
  257. package/lib/esm/internal/app-binder/task/utils/TrustedProperties.js +1 -1
  258. package/lib/esm/internal/app-binder/task/utils/TrustedProperties.js.map +3 -3
  259. package/lib/esm/internal/di.js +1 -1
  260. package/lib/esm/internal/di.js.map +3 -3
  261. package/lib/esm/internal/externalTypes.js +1 -1
  262. package/lib/esm/internal/externalTypes.js.map +2 -2
  263. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.js +1 -1
  264. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.js.map +3 -3
  265. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js +1 -1
  266. package/lib/esm/internal/lkrp-datasource/data/HttpLKRPDataSource.test.js.map +3 -3
  267. package/lib/esm/internal/models/LKRPBlockTypes.js +1 -0
  268. package/lib/esm/internal/models/LKRPCommandTypes.js +1 -0
  269. package/lib/esm/internal/{utils/TLVTags.js → models/Tags.js} +1 -1
  270. package/lib/esm/internal/{utils/TLVTags.js.map → models/Tags.js.map} +1 -1
  271. package/lib/esm/internal/models/Types.js +1 -0
  272. package/lib/esm/internal/use-cases/authentication/AuthenticateUseCase.js +1 -1
  273. package/lib/esm/internal/use-cases/authentication/AuthenticateUseCase.js.map +3 -3
  274. package/lib/esm/internal/use-cases/authentication/DecryptDataUseCase.js +2 -0
  275. package/lib/esm/internal/use-cases/authentication/DecryptDataUseCase.js.map +7 -0
  276. package/lib/esm/internal/use-cases/authentication/EncryptDataUseCase.js +2 -0
  277. package/lib/esm/internal/use-cases/authentication/EncryptDataUseCase.js.map +7 -0
  278. package/lib/esm/internal/use-cases/di/useCasesModule.js +1 -1
  279. package/lib/esm/internal/use-cases/di/useCasesModule.js.map +3 -3
  280. package/lib/esm/internal/use-cases/di/useCasesTypes.js +1 -1
  281. package/lib/esm/internal/use-cases/di/useCasesTypes.js.map +2 -2
  282. package/lib/esm/internal/utils/LKRPBlock.js +3 -3
  283. package/lib/esm/internal/utils/LKRPBlock.js.map +3 -3
  284. package/lib/esm/internal/utils/LKRPBlock.test.js +2 -2
  285. package/lib/esm/internal/utils/LKRPBlock.test.js.map +3 -3
  286. package/lib/esm/internal/utils/LKRPBlockStream.js +2 -2
  287. package/lib/esm/internal/utils/LKRPBlockStream.js.map +3 -3
  288. package/lib/esm/internal/utils/LKRPBlockStream.test.js +3 -3
  289. package/lib/esm/internal/utils/LKRPBlockStream.test.js.map +3 -3
  290. package/lib/esm/internal/utils/LKRPCommand.js +2 -2
  291. package/lib/esm/internal/utils/LKRPCommand.js.map +3 -3
  292. package/lib/esm/internal/utils/LKRPCommand.test.js +2 -2
  293. package/lib/esm/internal/utils/LKRPCommand.test.js.map +3 -3
  294. package/lib/esm/internal/utils/TLVParser.js +1 -1
  295. package/lib/esm/internal/utils/TLVParser.js.map +3 -3
  296. package/lib/esm/internal/utils/TLVParser.test.js +1 -1
  297. package/lib/esm/internal/utils/TLVParser.test.js.map +3 -3
  298. package/lib/esm/internal/utils/Trustchain.js +2 -0
  299. package/lib/esm/internal/utils/Trustchain.js.map +7 -0
  300. package/lib/esm/internal/utils/required.js +1 -1
  301. package/lib/esm/internal/utils/required.js.map +2 -2
  302. package/lib/esm/package.json +36 -31
  303. package/lib/types/api/LedgerKeyringProtocol.d.ts +4 -5
  304. package/lib/types/api/LedgerKeyringProtocol.d.ts.map +1 -1
  305. package/lib/types/api/LedgerKeyringProtocolBuilder.d.ts +12 -6
  306. package/lib/types/api/LedgerKeyringProtocolBuilder.d.ts.map +1 -1
  307. package/lib/types/api/app-binder/AddToTrustchainDeviceActionTypes.d.ts +25 -11
  308. package/lib/types/api/app-binder/AddToTrustchainDeviceActionTypes.d.ts.map +1 -1
  309. package/lib/types/api/app-binder/AuthenticateDeviceActionTypes.d.ts +27 -31
  310. package/lib/types/api/app-binder/AuthenticateDeviceActionTypes.d.ts.map +1 -1
  311. package/lib/types/api/app-binder/GetVersionCommandTypes.d.ts +0 -1
  312. package/lib/types/api/app-binder/GetVersionCommandTypes.d.ts.map +1 -1
  313. package/lib/types/api/crypto/CryptoService.d.ts +22 -0
  314. package/lib/types/api/crypto/CryptoService.d.ts.map +1 -0
  315. package/lib/types/api/crypto/Key.d.ts +7 -0
  316. package/lib/types/api/crypto/Key.d.ts.map +1 -0
  317. package/lib/types/api/crypto/KeyPair.d.ts +13 -0
  318. package/lib/types/api/crypto/KeyPair.d.ts.map +1 -0
  319. package/lib/types/api/crypto/noble/NobleCryptoService.d.ts +13 -0
  320. package/lib/types/api/crypto/noble/NobleCryptoService.d.ts.map +1 -0
  321. package/lib/types/api/crypto/noble/NobleCryptoService.test.d.ts +2 -0
  322. package/lib/types/api/crypto/noble/NobleCryptoService.test.d.ts.map +1 -0
  323. package/lib/types/api/crypto/noble/NobleKey.d.ts +11 -0
  324. package/lib/types/api/crypto/noble/NobleKey.d.ts.map +1 -0
  325. package/lib/types/api/crypto/noble/NobleKey.test.d.ts +2 -0
  326. package/lib/types/api/crypto/noble/NobleKey.test.d.ts.map +1 -0
  327. package/lib/types/api/crypto/noble/NobleKeyPair.d.ts +18 -0
  328. package/lib/types/api/crypto/noble/NobleKeyPair.d.ts.map +1 -0
  329. package/lib/types/api/crypto/noble/NobleKeyPair.test.d.ts +2 -0
  330. package/lib/types/api/crypto/noble/NobleKeyPair.test.d.ts.map +1 -0
  331. package/lib/types/api/index.d.ts +10 -2
  332. package/lib/types/api/index.d.ts.map +1 -1
  333. package/lib/types/api/model/Env.d.ts +5 -0
  334. package/lib/types/api/model/Env.d.ts.map +1 -0
  335. package/lib/types/api/model/Errors.d.ts +53 -0
  336. package/lib/types/api/model/Errors.d.ts.map +1 -0
  337. package/lib/types/api/model/JWT.d.ts +9 -0
  338. package/lib/types/api/model/JWT.d.ts.map +1 -0
  339. package/lib/types/api/{app-binder/LKRPTypes.d.ts → model/Permissions.d.ts} +1 -15
  340. package/lib/types/api/model/Permissions.d.ts.map +1 -0
  341. package/lib/types/internal/DefaultLedgerKeyringProtocol.d.ts +12 -9
  342. package/lib/types/internal/DefaultLedgerKeyringProtocol.d.ts.map +1 -1
  343. package/lib/types/internal/app-binder/LedgerKeyringProtocolBinder.d.ts +14 -8
  344. package/lib/types/internal/app-binder/LedgerKeyringProtocolBinder.d.ts.map +1 -1
  345. package/lib/types/internal/app-binder/command/GetAppNameCommand.d.ts +5 -1
  346. package/lib/types/internal/app-binder/command/GetAppNameCommand.d.ts.map +1 -1
  347. package/lib/types/internal/app-binder/command/GetSeedIdCommand.d.ts +14 -1
  348. package/lib/types/internal/app-binder/command/GetSeedIdCommand.d.ts.map +1 -1
  349. package/lib/types/internal/app-binder/command/GetVersionCommand.d.ts +3 -1
  350. package/lib/types/internal/app-binder/command/GetVersionCommand.d.ts.map +1 -1
  351. package/lib/types/internal/app-binder/command/InitCommand.d.ts +5 -1
  352. package/lib/types/internal/app-binder/command/InitCommand.d.ts.map +1 -1
  353. package/lib/types/internal/app-binder/command/ParseBlockSignatureCommand.d.ts +5 -1
  354. package/lib/types/internal/app-binder/command/ParseBlockSignatureCommand.d.ts.map +1 -1
  355. package/lib/types/internal/app-binder/command/ParseStreamBlockCommand.d.ts +6 -1
  356. package/lib/types/internal/app-binder/command/ParseStreamBlockCommand.d.ts.map +1 -1
  357. package/lib/types/internal/app-binder/command/ParseStreamBlockHeader.d.ts +5 -1
  358. package/lib/types/internal/app-binder/command/ParseStreamBlockHeader.d.ts.map +1 -1
  359. package/lib/types/internal/app-binder/command/SetTrustedMemberCommand.d.ts +6 -1
  360. package/lib/types/internal/app-binder/command/SetTrustedMemberCommand.d.ts.map +1 -1
  361. package/lib/types/internal/app-binder/command/SignBlockHeader.d.ts +7 -1
  362. package/lib/types/internal/app-binder/command/SignBlockHeader.d.ts.map +1 -1
  363. package/lib/types/internal/app-binder/command/SignBlockSignatureCommand.d.ts +6 -1
  364. package/lib/types/internal/app-binder/command/SignBlockSignatureCommand.d.ts.map +1 -1
  365. package/lib/types/internal/app-binder/command/SignBlockSingleCommand.d.ts +5 -1
  366. package/lib/types/internal/app-binder/command/SignBlockSingleCommand.d.ts.map +1 -1
  367. package/lib/types/internal/app-binder/device-action/AddToTrustchainDeviceAction.d.ts +10 -6
  368. package/lib/types/internal/app-binder/device-action/AddToTrustchainDeviceAction.d.ts.map +1 -1
  369. package/lib/types/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.d.ts +32 -0
  370. package/lib/types/internal/app-binder/device-action/AuthenticateWithDeviceDeviceAction.d.ts.map +1 -0
  371. package/lib/types/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.d.ts +33 -0
  372. package/lib/types/internal/app-binder/device-action/AuthenticateWithKeypairDeviceAction.d.ts.map +1 -0
  373. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.d.ts +22 -0
  374. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.d.ts.map +1 -0
  375. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.d.ts +19 -0
  376. package/lib/types/internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.d.ts.map +1 -0
  377. package/lib/types/internal/app-binder/task/AuthenticateTask.d.ts +9 -0
  378. package/lib/types/internal/app-binder/task/AuthenticateTask.d.ts.map +1 -0
  379. package/lib/types/internal/app-binder/task/ExtractEncryptionKeyTask.d.ts +8 -0
  380. package/lib/types/internal/app-binder/task/ExtractEncryptionKeyTask.d.ts.map +1 -0
  381. package/lib/types/internal/app-binder/task/InitTask.d.ts +5 -3
  382. package/lib/types/internal/app-binder/task/InitTask.d.ts.map +1 -1
  383. package/lib/types/internal/app-binder/task/ParseStreamToDeviceTask.d.ts +3 -3
  384. package/lib/types/internal/app-binder/task/ParseStreamToDeviceTask.d.ts.map +1 -1
  385. package/lib/types/internal/app-binder/task/SignBlockTask.d.ts +15 -13
  386. package/lib/types/internal/app-binder/task/SignBlockTask.d.ts.map +1 -1
  387. package/lib/types/internal/app-binder/task/SignChallengeWithKeypairTask.d.ts +7 -6
  388. package/lib/types/internal/app-binder/task/SignChallengeWithKeypairTask.d.ts.map +1 -1
  389. package/lib/types/internal/app-binder/task/utils/TrustedProperties.d.ts +2 -2
  390. package/lib/types/internal/app-binder/task/utils/TrustedProperties.d.ts.map +1 -1
  391. package/lib/types/internal/di.d.ts +7 -3
  392. package/lib/types/internal/di.d.ts.map +1 -1
  393. package/lib/types/internal/externalTypes.d.ts +2 -1
  394. package/lib/types/internal/externalTypes.d.ts.map +1 -1
  395. package/lib/types/internal/lkrp-datasource/data/HttpLKRPDataSource.d.ts +8 -10
  396. package/lib/types/internal/lkrp-datasource/data/HttpLKRPDataSource.d.ts.map +1 -1
  397. package/lib/types/internal/lkrp-datasource/data/LKRPDataSource.d.ts +8 -8
  398. package/lib/types/internal/lkrp-datasource/data/LKRPDataSource.d.ts.map +1 -1
  399. package/lib/types/internal/models/LKRPBlockTypes.d.ts +11 -0
  400. package/lib/types/internal/models/LKRPBlockTypes.d.ts.map +1 -0
  401. package/lib/types/internal/{utils/types.d.ts → models/LKRPCommandTypes.d.ts} +6 -29
  402. package/lib/types/internal/models/LKRPCommandTypes.d.ts.map +1 -0
  403. package/lib/types/internal/{utils/TLVTags.d.ts → models/Tags.d.ts} +1 -1
  404. package/lib/types/internal/models/Tags.d.ts.map +1 -0
  405. package/lib/types/internal/models/Types.d.ts +10 -0
  406. package/lib/types/internal/models/Types.d.ts.map +1 -0
  407. package/lib/types/internal/use-cases/authentication/AuthenticateUseCase.d.ts +15 -2
  408. package/lib/types/internal/use-cases/authentication/AuthenticateUseCase.d.ts.map +1 -1
  409. package/lib/types/internal/use-cases/authentication/DecryptDataUseCase.d.ts +7 -0
  410. package/lib/types/internal/use-cases/authentication/DecryptDataUseCase.d.ts.map +1 -0
  411. package/lib/types/internal/use-cases/authentication/EncryptDataUseCase.d.ts +7 -0
  412. package/lib/types/internal/use-cases/authentication/EncryptDataUseCase.d.ts.map +1 -0
  413. package/lib/types/internal/use-cases/di/useCasesModule.d.ts.map +1 -1
  414. package/lib/types/internal/use-cases/di/useCasesTypes.d.ts +2 -0
  415. package/lib/types/internal/use-cases/di/useCasesTypes.d.ts.map +1 -1
  416. package/lib/types/internal/utils/LKRPBlock.d.ts +2 -2
  417. package/lib/types/internal/utils/LKRPBlock.d.ts.map +1 -1
  418. package/lib/types/internal/utils/LKRPBlockStream.d.ts +8 -8
  419. package/lib/types/internal/utils/LKRPBlockStream.d.ts.map +1 -1
  420. package/lib/types/internal/utils/LKRPCommand.d.ts +4 -3
  421. package/lib/types/internal/utils/LKRPCommand.d.ts.map +1 -1
  422. package/lib/types/internal/utils/TLVParser.d.ts +4 -3
  423. package/lib/types/internal/utils/TLVParser.d.ts.map +1 -1
  424. package/lib/types/internal/utils/Trustchain.d.ts +14 -0
  425. package/lib/types/internal/utils/Trustchain.d.ts.map +1 -0
  426. package/lib/types/internal/utils/required.d.ts +1 -1
  427. package/lib/types/internal/utils/required.d.ts.map +1 -1
  428. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  429. package/package.json +35 -30
  430. package/lib/cjs/api/app-binder/Errors.js +0 -2
  431. package/lib/cjs/api/app-binder/Errors.js.map +0 -7
  432. package/lib/cjs/api/app-binder/GetAppNameCommandTypes.js +0 -2
  433. package/lib/cjs/api/app-binder/GetAppNameCommandTypes.js.map +0 -7
  434. package/lib/cjs/api/app-binder/GetSeedIdCommandTypes.js +0 -2
  435. package/lib/cjs/api/app-binder/GetSeedIdCommandTypes.js.map +0 -7
  436. package/lib/cjs/api/app-binder/InitCommandTypes.js +0 -2
  437. package/lib/cjs/api/app-binder/InitCommandTypes.js.map +0 -7
  438. package/lib/cjs/api/app-binder/KeypairFromBytes.js +0 -2
  439. package/lib/cjs/api/app-binder/KeypairFromBytes.js.map +0 -7
  440. package/lib/cjs/api/app-binder/LKRPTypes.js +0 -2
  441. package/lib/cjs/api/app-binder/LKRPTypes.js.map +0 -7
  442. package/lib/cjs/api/app-binder/ParseStreamBlockCommandCommandTypes.js +0 -2
  443. package/lib/cjs/api/app-binder/ParseStreamBlockCommandCommandTypes.js.map +0 -7
  444. package/lib/cjs/api/app-binder/ParseStreamBlockHeaderCommandTypes.js +0 -2
  445. package/lib/cjs/api/app-binder/ParseStreamBlockHeaderCommandTypes.js.map +0 -7
  446. package/lib/cjs/api/app-binder/ParseStreamBlockSignatureTypes.js +0 -2
  447. package/lib/cjs/api/app-binder/ParseStreamBlockSignatureTypes.js.map +0 -7
  448. package/lib/cjs/api/app-binder/SetTrustedMemberTypes.js +0 -2
  449. package/lib/cjs/api/app-binder/SetTrustedMemberTypes.js.map +0 -7
  450. package/lib/cjs/api/app-binder/SignBlockCommandTypes.js +0 -2
  451. package/lib/cjs/api/app-binder/SignBlockCommandTypes.js.map +0 -7
  452. package/lib/cjs/api/app-binder/SignBlockHeaderCommandTypes.js +0 -2
  453. package/lib/cjs/api/app-binder/SignBlockHeaderCommandTypes.js.map +0 -7
  454. package/lib/cjs/api/app-binder/SignBlockSignatureCommandTypes.js +0 -2
  455. package/lib/cjs/api/app-binder/SignBlockSignatureCommandTypes.js.map +0 -7
  456. package/lib/cjs/api/app-binder/SignBlockSingleCommandTypes.js +0 -2
  457. package/lib/cjs/api/app-binder/SignBlockSingleCommandTypes.js.map +0 -7
  458. package/lib/cjs/internal/app-binder/device-action/AuthenticateDeviceAction.js +0 -2
  459. package/lib/cjs/internal/app-binder/device-action/AuthenticateDeviceAction.js.map +0 -7
  460. package/lib/cjs/internal/utils/TLVBuilder.js +0 -2
  461. package/lib/cjs/internal/utils/TLVBuilder.js.map +0 -7
  462. package/lib/cjs/internal/utils/crypto.js +0 -2
  463. package/lib/cjs/internal/utils/crypto.js.map +0 -7
  464. package/lib/cjs/internal/utils/hex.js +0 -2
  465. package/lib/cjs/internal/utils/hex.js.map +0 -7
  466. package/lib/cjs/internal/utils/types.js +0 -2
  467. package/lib/cjs/internal/utils/types.js.map +0 -7
  468. package/lib/esm/api/app-binder/Errors.js +0 -2
  469. package/lib/esm/api/app-binder/Errors.js.map +0 -7
  470. package/lib/esm/api/app-binder/GetAppNameCommandTypes.js +0 -1
  471. package/lib/esm/api/app-binder/GetSeedIdCommandTypes.js +0 -1
  472. package/lib/esm/api/app-binder/InitCommandTypes.js +0 -1
  473. package/lib/esm/api/app-binder/KeypairFromBytes.js +0 -2
  474. package/lib/esm/api/app-binder/KeypairFromBytes.js.map +0 -7
  475. package/lib/esm/api/app-binder/LKRPTypes.js +0 -2
  476. package/lib/esm/api/app-binder/LKRPTypes.js.map +0 -7
  477. package/lib/esm/api/app-binder/ParseStreamBlockCommandCommandTypes.js +0 -1
  478. package/lib/esm/api/app-binder/ParseStreamBlockHeaderCommandTypes.js +0 -1
  479. package/lib/esm/api/app-binder/ParseStreamBlockSignatureTypes.js +0 -1
  480. package/lib/esm/api/app-binder/SetTrustedMemberTypes.js +0 -1
  481. package/lib/esm/api/app-binder/SetTrustedMemberTypes.js.map +0 -7
  482. package/lib/esm/api/app-binder/SignBlockCommandTypes.js +0 -1
  483. package/lib/esm/api/app-binder/SignBlockCommandTypes.js.map +0 -7
  484. package/lib/esm/api/app-binder/SignBlockHeaderCommandTypes.js +0 -1
  485. package/lib/esm/api/app-binder/SignBlockHeaderCommandTypes.js.map +0 -7
  486. package/lib/esm/api/app-binder/SignBlockSignatureCommandTypes.js +0 -1
  487. package/lib/esm/api/app-binder/SignBlockSignatureCommandTypes.js.map +0 -7
  488. package/lib/esm/api/app-binder/SignBlockSingleCommandTypes.js +0 -1
  489. package/lib/esm/api/app-binder/SignBlockSingleCommandTypes.js.map +0 -7
  490. package/lib/esm/internal/app-binder/device-action/AuthenticateDeviceAction.js +0 -2
  491. package/lib/esm/internal/app-binder/device-action/AuthenticateDeviceAction.js.map +0 -7
  492. package/lib/esm/internal/utils/TLVBuilder.js +0 -2
  493. package/lib/esm/internal/utils/TLVBuilder.js.map +0 -7
  494. package/lib/esm/internal/utils/crypto.js +0 -2
  495. package/lib/esm/internal/utils/crypto.js.map +0 -7
  496. package/lib/esm/internal/utils/hex.js +0 -2
  497. package/lib/esm/internal/utils/hex.js.map +0 -7
  498. package/lib/esm/internal/utils/types.js +0 -1
  499. package/lib/esm/internal/utils/types.js.map +0 -7
  500. package/lib/types/api/app-binder/Errors.d.ts +0 -27
  501. package/lib/types/api/app-binder/Errors.d.ts.map +0 -1
  502. package/lib/types/api/app-binder/GetAppNameCommandTypes.d.ts +0 -5
  503. package/lib/types/api/app-binder/GetAppNameCommandTypes.d.ts.map +0 -1
  504. package/lib/types/api/app-binder/GetSeedIdCommandTypes.d.ts +0 -14
  505. package/lib/types/api/app-binder/GetSeedIdCommandTypes.d.ts.map +0 -1
  506. package/lib/types/api/app-binder/InitCommandTypes.d.ts +0 -5
  507. package/lib/types/api/app-binder/InitCommandTypes.d.ts.map +0 -1
  508. package/lib/types/api/app-binder/KeypairFromBytes.d.ts +0 -11
  509. package/lib/types/api/app-binder/KeypairFromBytes.d.ts.map +0 -1
  510. package/lib/types/api/app-binder/LKRPTypes.d.ts.map +0 -1
  511. package/lib/types/api/app-binder/ParseStreamBlockCommandCommandTypes.d.ts +0 -6
  512. package/lib/types/api/app-binder/ParseStreamBlockCommandCommandTypes.d.ts.map +0 -1
  513. package/lib/types/api/app-binder/ParseStreamBlockHeaderCommandTypes.d.ts +0 -5
  514. package/lib/types/api/app-binder/ParseStreamBlockHeaderCommandTypes.d.ts.map +0 -1
  515. package/lib/types/api/app-binder/ParseStreamBlockSignatureTypes.d.ts +0 -5
  516. package/lib/types/api/app-binder/ParseStreamBlockSignatureTypes.d.ts.map +0 -1
  517. package/lib/types/api/app-binder/SetTrustedMemberTypes.d.ts +0 -6
  518. package/lib/types/api/app-binder/SetTrustedMemberTypes.d.ts.map +0 -1
  519. package/lib/types/api/app-binder/SignBlockCommandTypes.d.ts +0 -9
  520. package/lib/types/api/app-binder/SignBlockCommandTypes.d.ts.map +0 -1
  521. package/lib/types/api/app-binder/SignBlockHeaderCommandTypes.d.ts +0 -5
  522. package/lib/types/api/app-binder/SignBlockHeaderCommandTypes.d.ts.map +0 -1
  523. package/lib/types/api/app-binder/SignBlockSignatureCommandTypes.d.ts +0 -6
  524. package/lib/types/api/app-binder/SignBlockSignatureCommandTypes.d.ts.map +0 -1
  525. package/lib/types/api/app-binder/SignBlockSingleCommandTypes.d.ts +0 -5
  526. package/lib/types/api/app-binder/SignBlockSingleCommandTypes.d.ts.map +0 -1
  527. package/lib/types/internal/app-binder/device-action/AuthenticateDeviceAction.d.ts +0 -42
  528. package/lib/types/internal/app-binder/device-action/AuthenticateDeviceAction.d.ts.map +0 -1
  529. package/lib/types/internal/utils/TLVBuilder.d.ts +0 -15
  530. package/lib/types/internal/utils/TLVBuilder.d.ts.map +0 -1
  531. package/lib/types/internal/utils/TLVTags.d.ts.map +0 -1
  532. package/lib/types/internal/utils/crypto.d.ts +0 -19
  533. package/lib/types/internal/utils/crypto.d.ts.map +0 -1
  534. package/lib/types/internal/utils/hex.d.ts +0 -3
  535. package/lib/types/internal/utils/hex.d.ts.map +0 -1
  536. package/lib/types/internal/utils/types.d.ts.map +0 -1
  537. /package/lib/esm/api/{app-binder/GetAppNameCommandTypes.js.map → model/JWT.js.map} +0 -0
  538. /package/lib/esm/{api/app-binder/GetSeedIdCommandTypes.js.map → internal/app-binder/device-action/models/AuthenticateWithDeviceDeviceActionTypes.js.map} +0 -0
  539. /package/lib/esm/{api/app-binder/InitCommandTypes.js.map → internal/app-binder/device-action/models/AuthenticateWithKeypairDeviceActionTypes.js.map} +0 -0
  540. /package/lib/esm/{api/app-binder/ParseStreamBlockCommandCommandTypes.js.map → internal/models/LKRPBlockTypes.js.map} +0 -0
  541. /package/lib/esm/{api/app-binder/ParseStreamBlockHeaderCommandTypes.js.map → internal/models/LKRPCommandTypes.js.map} +0 -0
  542. /package/lib/esm/{api/app-binder/ParseStreamBlockSignatureTypes.js.map → internal/models/Types.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/internal/externalTypes.ts"],
4
- "sourcesContent": ["export const externalTypes = {\n Dmk: Symbol.for(\"Dmk\"),\n SessionId: Symbol.for(\"SessionId\"),\n};\n\nexport type TrustedProperty = {\n iv: Uint8Array;\n issuer: Uint8Array;\n xpriv: Uint8Array;\n ephemeralPubKey: Uint8Array;\n commandIV: Uint8Array;\n groupKey: Uint8Array;\n newMember: Uint8Array;\n};\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GAAO,MAAME,EAAgB,CAC3B,IAAK,OAAO,IAAI,KAAK,EACrB,UAAW,OAAO,IAAI,WAAW,CACnC",
4
+ "sourcesContent": ["export const externalTypes = {\n Dmk: Symbol.for(\"Dmk\"),\n ApplicationId: Symbol.for(\"ApplicationId\"),\n CryptoService: Symbol.for(\"CryptoService\"),\n};\n\nexport type TrustedProperty = {\n iv: Uint8Array;\n issuer: Uint8Array;\n xpriv: Uint8Array;\n ephemeralPubKey: Uint8Array;\n commandIV: Uint8Array;\n groupKey: Uint8Array;\n newMember: Uint8Array;\n};\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GAAO,MAAME,EAAgB,CAC3B,IAAK,OAAO,IAAI,KAAK,EACrB,cAAe,OAAO,IAAI,eAAe,EACzC,cAAe,OAAO,IAAI,eAAe,CAC3C",
6
6
  "names": ["externalTypes_exports", "__export", "externalTypes", "__toCommonJS"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var m=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var R=Object.prototype.hasOwnProperty;var b=(o,t)=>{for(var e in t)m(o,e,{get:t[e],enumerable:!0})},T=(o,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of y(t))!R.call(o,r)&&r!==e&&m(o,r,{get:()=>t[r],enumerable:!(s=l(t,r))||s.enumerable});return o};var P=o=>T(m({},"__esModule",{value:!0}),o),p=(o,t,e,s)=>{for(var r=s>1?void 0:s?l(t,e):t,i=o.length-1,u;i>=0;i--)(u=o[i])&&(r=(s?u(t,e,r):u(r))||r);return s&&r&&m(t,e,r),r},d=(o,t)=>(e,s)=>t(e,s,o);var $={};b($,{HttpLKRPDataSource:()=>h});module.exports=P($);var c=require("inversify"),n=require("purify-ts"),a=require("../../../api/app-binder/Errors"),f=require("../../lkrp-datasource/di/lkrpDatasourceTypes"),g=require("../../utils/LKRPBlockStream");let h=class{constructor(t){this.baseUrl=t}getChallenge(){return this.request("/challenge",n.Nothing)}authenticate(t){return this.request("/authenticate",n.Nothing,{method:"POST",body:JSON.stringify(t)}).map(e=>({jwt:e,trustchainId:n.Maybe.fromNullable(Object.keys(e.permissions).find(s=>!!e.permissions[s]?.["m/"]))}))}getTrustchainById(t,e){return this.request(`/trustchain/${t}`,(0,n.Just)(e)).map(s=>Object.fromEntries(Object.entries(s).map(([r,i])=>[r,g.LKRPBlockStream.fromHex(i)])))}postDerivation(t,e,s){return this.request(`/trustchain/${t}/derivation`,(0,n.Just)(s),{method:"POST",body:JSON.stringify(e.toString())})}putCommands(t,e,s,r){return this.request(`/trustchain/${t}/commands`,(0,n.Just)(r),{method:"PUT",body:JSON.stringify({path:e,blocks:[s.toString()]})})}request(t,e,s){const r=this.baseUrl+t;return n.EitherAsync.fromPromise(async()=>{const i=await fetch(r,{...s,headers:{...s?.headers,"Content-Type":"application/json",...e.mapOrDefault(({access_token:u})=>({Authorization:`Bearer ${u}`}),{})}});switch(i.status){case 204:return(0,n.Right)(void 0);case 401:throw new a.LKRPUnauthorizedError(`Unauthorized request to ${r}: [${i.status}] ${i.statusText}`);default:if(!i.ok)throw new a.LKRPHttpRequestError(`Failed to fetch ${r}: [${i.status}] ${i.statusText}`);return(0,n.Right)(await i.json())}}).mapLeft(i=>i instanceof a.LKRPHttpRequestError?i:new a.LKRPHttpRequestError(i))}};h=p([(0,c.injectable)(),d(0,(0,c.inject)(f.lkrpDatasourceTypes.BaseUrl))],h);0&&(module.exports={HttpLKRPDataSource});
1
+ "use strict";var m=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var R=Object.prototype.hasOwnProperty;var b=(r,t)=>{for(var e in t)m(r,e,{get:t[e],enumerable:!0})},N=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of T(t))!R.call(r,s)&&s!==e&&m(r,s,{get:()=>t[s],enumerable:!(n=f(t,s))||n.enumerable});return r};var k=r=>N(m({},"__esModule",{value:!0}),r),l=(r,t,e,n)=>{for(var s=n>1?void 0:n?f(t,e):t,u=r.length-1,a;u>=0;u--)(a=r[u])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&m(t,e,s),s},p=(r,t)=>(e,n)=>t(e,n,r);var P={};b(P,{HttpLKRPDataSource:()=>c});module.exports=k(P);var h=require("inversify"),i=require("purify-ts"),d=require("../../../api/model/Errors"),y=require("../../lkrp-datasource/di/lkrpDatasourceTypes"),S=require("../../utils/Trustchain");let c=class{constructor(t){this.baseUrl=t}getChallenge(){return this.request("/challenge",i.Nothing)}authenticate(t){return this.request("/authenticate",i.Nothing,{method:"POST",body:JSON.stringify(t)}).map(e=>({jwt:e,trustchainId:i.Maybe.fromNullable(Object.keys(e.permissions).find(n=>!!e.permissions[n]?.["m/"]))}))}getTrustchainById(t,e){return this.request(`/trustchain/${t}`,(0,i.Just)(e)).map(n=>new S.Trustchain(t,n))}postDerivation(t,e,n){return this.request(`/trustchain/${t}/derivation`,(0,i.Just)(n),{method:"POST",body:JSON.stringify(e.toString())})}putCommands(t,e,n,s){return this.request(`/trustchain/${t}/commands`,(0,i.Just)(s),{method:"PUT",body:JSON.stringify({path:e,blocks:[n.toString()]})})}request(t,e,n){const s=this.baseUrl+t,u={...n?.headers,"Content-Type":"application/json",...e.mapOrDefault(({access_token:a})=>({Authorization:`Bearer ${a}`}),{})};return(0,i.EitherAsync)(()=>fetch(s,{...n,headers:u})).mapLeft(a=>({status:"UNKNOWN",message:g(a)})).chain(async a=>{switch(a.status){case 204:return(0,i.Right)(void 0);default:return(0,i.EitherAsync)(()=>a.json()).mapLeft(g).map(o=>a.ok?(0,i.Right)(o):(0,i.Left)(g(o))).chain(i.EitherAsync.liftEither).mapLeft(o=>({status:L.get(a.status)??"UNKNOWN",message:`[${a.status}] ${o||a.statusText}`}))}}).mapLeft(({status:a,message:o})=>new d.LKRPDataSourceError({status:a,message:`${o||"Unknown error"} (from: ${s})`}))}};c=l([(0,h.injectable)(),p(0,(0,h.inject)(y.lkrpDatasourceTypes.BaseUrl))],c);const L=new Map([[400,"BAD_REQUEST"],[401,"UNAUTHORIZED"]]);function g(r){if(r){if(typeof r!="object"||r.toString!=={}.toString)return String(r);if("message"in r)return String(r.message)}}0&&(module.exports={HttpLKRPDataSource});
2
2
  //# sourceMappingURL=HttpLKRPDataSource.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/lkrp-datasource/data/HttpLKRPDataSource.ts"],
4
- "sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { EitherAsync, Just, Maybe, Nothing, Right } from \"purify-ts\";\n\nimport {\n LKRPHttpRequestError,\n LKRPUnauthorizedError,\n} from \"@api/app-binder/Errors\";\nimport { JWT } from \"@api/app-binder/LKRPTypes\";\nimport { lkrpDatasourceTypes } from \"@internal/lkrp-datasource/di/lkrpDatasourceTypes\";\nimport { LKRPBlock } from \"@internal/utils/LKRPBlock\";\nimport { LKRPBlockStream } from \"@internal/utils/LKRPBlockStream\";\n\nimport {\n AuthenticationPayload,\n Challenge,\n LKRPDataSource,\n} from \"./LKRPDataSource\";\n\n@injectable()\nexport class HttpLKRPDataSource implements LKRPDataSource {\n constructor(\n @inject(lkrpDatasourceTypes.BaseUrl) private readonly baseUrl: string,\n ) {}\n\n getChallenge() {\n return this.request<Challenge>(\"/challenge\", Nothing);\n }\n\n authenticate(payload: AuthenticationPayload) {\n return this.request<JWT>(\"/authenticate\", Nothing, {\n method: \"POST\",\n body: JSON.stringify(payload),\n }).map((jwt) => ({\n jwt,\n trustchainId: Maybe.fromNullable(\n Object.keys(jwt.permissions).find((id) =>\n Boolean(jwt.permissions[id]?.[\"m/\"]),\n ),\n ),\n }));\n }\n\n getTrustchainById(id: string, jwt: JWT) {\n return this.request<{ [path: string]: string }>(\n `/trustchain/${id}`,\n Just(jwt),\n ).map((serialized) =>\n Object.fromEntries(\n Object.entries(serialized).map(([path, stream]) => [\n path,\n LKRPBlockStream.fromHex(stream),\n ]),\n ),\n );\n }\n\n postDerivation(id: string, block: LKRPBlock, jwt: JWT) {\n return this.request<void>(`/trustchain/${id}/derivation`, Just(jwt), {\n method: \"POST\",\n body: JSON.stringify(block.toString()),\n });\n }\n\n putCommands(id: string, path: string, block: LKRPBlock, jwt: JWT) {\n return this.request<void>(`/trustchain/${id}/commands`, Just(jwt), {\n method: \"PUT\",\n body: JSON.stringify({ path, blocks: [block.toString()] }),\n });\n }\n\n private request<Res>(\n endpoint: `/${string}`,\n jwt: Maybe<{ access_token: string }>,\n init?: RequestInit,\n ): EitherAsync<LKRPHttpRequestError, Res> {\n const href = this.baseUrl + endpoint;\n\n return EitherAsync.fromPromise(async () => {\n const response = await fetch(href, {\n ...init,\n headers: {\n ...init?.headers,\n \"Content-Type\": \"application/json\",\n ...jwt.mapOrDefault<{ Authorization?: string }>(\n ({ access_token }) => ({ Authorization: `Bearer ${access_token}` }),\n {},\n ),\n },\n });\n switch (response.status) {\n case 204:\n return Right(undefined as Res);\n\n case 401:\n throw new LKRPUnauthorizedError(\n `Unauthorized request to ${href}: [${response.status}] ${response.statusText}`,\n );\n\n default:\n if (!response.ok) {\n throw new LKRPHttpRequestError(\n `Failed to fetch ${href}: [${response.status}] ${response.statusText}`,\n );\n }\n return Right((await response.json()) as Res);\n }\n }).mapLeft((error: unknown) =>\n error instanceof LKRPHttpRequestError\n ? error\n : new LKRPHttpRequestError(error),\n );\n }\n}\n"],
5
- "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBACnCC,EAAyD,qBAEzDC,EAGO,kCAEPC,EAAoC,4DAEpCC,EAAgC,2CASzB,IAAMC,EAAN,KAAmD,CACxD,YACwDC,EACtD,CADsD,aAAAA,CACrD,CAEH,cAAe,CACb,OAAO,KAAK,QAAmB,aAAc,SAAO,CACtD,CAEA,aAAaC,EAAgC,CAC3C,OAAO,KAAK,QAAa,gBAAiB,UAAS,CACjD,OAAQ,OACR,KAAM,KAAK,UAAUA,CAAO,CAC9B,CAAC,EAAE,IAAKC,IAAS,CACf,IAAAA,EACA,aAAc,QAAM,aAClB,OAAO,KAAKA,EAAI,WAAW,EAAE,KAAMC,GACjC,EAAQD,EAAI,YAAYC,CAAE,IAAI,IAAI,CACpC,CACF,CACF,EAAE,CACJ,CAEA,kBAAkBA,EAAYD,EAAU,CACtC,OAAO,KAAK,QACV,eAAeC,CAAE,MACjB,QAAKD,CAAG,CACV,EAAE,IAAKE,GACL,OAAO,YACL,OAAO,QAAQA,CAAU,EAAE,IAAI,CAAC,CAACC,EAAMC,CAAM,IAAM,CACjDD,EACA,kBAAgB,QAAQC,CAAM,CAChC,CAAC,CACH,CACF,CACF,CAEA,eAAeH,EAAYI,EAAkBL,EAAU,CACrD,OAAO,KAAK,QAAc,eAAeC,CAAE,iBAAe,QAAKD,CAAG,EAAG,CACnE,OAAQ,OACR,KAAM,KAAK,UAAUK,EAAM,SAAS,CAAC,CACvC,CAAC,CACH,CAEA,YAAYJ,EAAYE,EAAcE,EAAkBL,EAAU,CAChE,OAAO,KAAK,QAAc,eAAeC,CAAE,eAAa,QAAKD,CAAG,EAAG,CACjE,OAAQ,MACR,KAAM,KAAK,UAAU,CAAE,KAAAG,EAAM,OAAQ,CAACE,EAAM,SAAS,CAAC,CAAE,CAAC,CAC3D,CAAC,CACH,CAEQ,QACNC,EACAN,EACAO,EACwC,CACxC,MAAMC,EAAO,KAAK,QAAUF,EAE5B,OAAO,cAAY,YAAY,SAAY,CACzC,MAAMG,EAAW,MAAM,MAAMD,EAAM,CACjC,GAAGD,EACH,QAAS,CACP,GAAGA,GAAM,QACT,eAAgB,mBAChB,GAAGP,EAAI,aACL,CAAC,CAAE,aAAAU,CAAa,KAAO,CAAE,cAAe,UAAUA,CAAY,EAAG,GACjE,CAAC,CACH,CACF,CACF,CAAC,EACD,OAAQD,EAAS,OAAQ,CACvB,IAAK,KACH,SAAO,SAAM,MAAgB,EAE/B,IAAK,KACH,MAAM,IAAI,wBACR,2BAA2BD,CAAI,MAAMC,EAAS,MAAM,KAAKA,EAAS,UAAU,EAC9E,EAEF,QACE,GAAI,CAACA,EAAS,GACZ,MAAM,IAAI,uBACR,mBAAmBD,CAAI,MAAMC,EAAS,MAAM,KAAKA,EAAS,UAAU,EACtE,EAEF,SAAO,SAAO,MAAMA,EAAS,KAAK,CAAS,CAC/C,CACF,CAAC,EAAE,QAASE,GACVA,aAAiB,uBACbA,EACA,IAAI,uBAAqBA,CAAK,CACpC,CACF,CACF,EA7Fad,EAANe,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,sBAAoB,OAAO,IAF1BhB",
6
- "names": ["HttpLKRPDataSource_exports", "__export", "HttpLKRPDataSource", "__toCommonJS", "import_inversify", "import_purify_ts", "import_Errors", "import_lkrpDatasourceTypes", "import_LKRPBlockStream", "HttpLKRPDataSource", "baseUrl", "payload", "jwt", "id", "serialized", "path", "stream", "block", "endpoint", "init", "href", "response", "access_token", "error", "__decorateClass", "__decorateParam"]
4
+ "sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { EitherAsync, Just, Left, Maybe, Nothing, Right } from \"purify-ts\";\n\nimport {\n LKRPDataSourceError,\n LKRPDataSourceErrorStatus,\n} from \"@api/model/Errors\";\nimport { JWT } from \"@api/model/JWT\";\nimport { lkrpDatasourceTypes } from \"@internal/lkrp-datasource/di/lkrpDatasourceTypes\";\nimport { LKRPBlock } from \"@internal/utils/LKRPBlock\";\nimport { Trustchain } from \"@internal/utils/Trustchain\";\n\nimport {\n AuthenticationPayload,\n Challenge,\n LKRPDataSource,\n} from \"./LKRPDataSource\";\n\n@injectable()\nexport class HttpLKRPDataSource implements LKRPDataSource {\n constructor(\n @inject(lkrpDatasourceTypes.BaseUrl) private readonly baseUrl: string,\n ) {}\n\n getChallenge() {\n return this.request<Challenge>(\"/challenge\", Nothing);\n }\n\n authenticate(payload: AuthenticationPayload) {\n return this.request<JWT>(\"/authenticate\", Nothing, {\n method: \"POST\",\n body: JSON.stringify(payload),\n }).map((jwt) => ({\n jwt,\n trustchainId: Maybe.fromNullable(\n Object.keys(jwt.permissions).find((id) =>\n Boolean(jwt.permissions[id]?.[\"m/\"]),\n ),\n ),\n }));\n }\n\n getTrustchainById(id: string, jwt: JWT) {\n return this.request<{ [path: string]: string }>(\n `/trustchain/${id}`,\n Just(jwt),\n ).map((serialized) => new Trustchain(id, serialized));\n }\n\n postDerivation(id: string, block: LKRPBlock, jwt: JWT) {\n return this.request<void>(`/trustchain/${id}/derivation`, Just(jwt), {\n method: \"POST\",\n body: JSON.stringify(block.toString()),\n });\n }\n\n putCommands(id: string, path: string, block: LKRPBlock, jwt: JWT) {\n return this.request<void>(`/trustchain/${id}/commands`, Just(jwt), {\n method: \"PUT\",\n body: JSON.stringify({ path, blocks: [block.toString()] }),\n });\n }\n\n private request<Res>(\n endpoint: `/${string}`,\n jwt: Maybe<{ access_token: string }>,\n init?: RequestInit,\n ): EitherAsync<LKRPDataSourceError, Res> {\n const href = this.baseUrl + endpoint;\n const headers = {\n ...init?.headers,\n \"Content-Type\": \"application/json\",\n ...jwt.mapOrDefault<{ Authorization?: string }>(\n ({ access_token }) => ({ Authorization: `Bearer ${access_token}` }),\n {},\n ),\n };\n\n return EitherAsync(() => fetch(href, { ...init, headers }))\n .mapLeft((err) => ({\n status: \"UNKNOWN\" as const,\n message: errToString(err),\n }))\n .chain(async (response) => {\n switch (response.status) {\n case 204:\n return Right(undefined as Res);\n\n default:\n return EitherAsync(() => response.json())\n .mapLeft(errToString)\n .map((data) =>\n response.ok ? Right(data as Res) : Left(errToString(data)),\n )\n .chain(EitherAsync.liftEither)\n .mapLeft((message) => ({\n status: statusMap.get(response.status) ?? \"UNKNOWN\",\n message: `[${response.status}] ${message || response.statusText}`,\n }));\n }\n })\n .mapLeft(\n ({ status, message }) =>\n new LKRPDataSourceError({\n status,\n message: `${message || \"Unknown error\"} (from: ${href})`,\n }),\n );\n }\n}\n\nconst statusMap = new Map<unknown, LKRPDataSourceErrorStatus>([\n [400, \"BAD_REQUEST\"],\n [401, \"UNAUTHORIZED\"],\n]);\n\nfunction errToString(error: unknown): string | void {\n if (!error) return undefined;\n if (typeof error !== \"object\") return String(error);\n if (error.toString !== {}.toString) return String(error);\n if (\"message\" in error) return String(error.message);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["HttpLKRPDataSource_exports", "__export", "HttpLKRPDataSource", "__toCommonJS", "import_inversify", "import_purify_ts", "import_Errors", "import_lkrpDatasourceTypes", "import_Trustchain", "HttpLKRPDataSource", "baseUrl", "payload", "jwt", "id", "serialized", "block", "path", "endpoint", "init", "href", "headers", "access_token", "err", "errToString", "response", "data", "message", "statusMap", "status", "__decorateClass", "__decorateParam", "error"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=require("purify-ts"),u=require("../../../api/app-binder/Errors"),h=require("../../utils/LKRPBlock"),m=require("../../utils/LKRPBlockStream"),c=require("./HttpLKRPDataSource");const r={access_token:"ACCESS TOKEN",permissions:{TRUSTCHAIN_ID:{"m/":["owner"]}}},i={version:0,challenge:{data:"1010101010010101010",expiry:"2025-06-30T10:00:00Z"},host:"example.com",rp:[{credential:{version:0,curveId:33,signAlgorithm:1,publicKey:"aaaaaaaaaaaaaaaaaaaaaaaaaa"},signature:"abababababababab"}],protocolVersion:{major:1,minor:0,patch:0}},l={credential:{version:0,curveId:33,signAlgorithm:1,publicKey:"bbbbbbbbbbbbbbbbbbbbbbbbbbb"},signature:"acacacacacacacac",attestation:"0000000000000000"};describe("HttpLKRPDataSource",()=>{const a=vi.spyOn(global,"fetch"),t="https://example.com";afterEach(()=>{a.mockClear()}),describe("getChallenge",()=>{it("should fetch challenge successfully",async()=>{const e={tlv:"0f1234567890",json:i};a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(e)});const n=await new c.HttpLKRPDataSource(t).getChallenge();expect(a).toHaveBeenCalledWith(`${t}/challenge`,{headers:{"Content-Type":"application/json"}}),expect(n).toEqual((0,o.Right)(e))}),it("should handle fetch error",async()=>{const e=new Error("Random error");a.mockRejectedValueOnce(e);const n=await new c.HttpLKRPDataSource(t).getChallenge();expect(n).toEqual((0,o.Left)(new u.LKRPHttpRequestError(e)))})}),describe("authenticate",()=>{it("should fetch a JWT when the authentication is successful",async()=>{a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(r)});const s=await new c.HttpLKRPDataSource(t).authenticate({challenge:i,signature:l});expect(a).toHaveBeenCalledWith(`${t}/authenticate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({challenge:i,signature:l})}),expect(s).toEqual((0,o.Right)({jwt:r,trustchainId:(0,o.Just)("TRUSTCHAIN_ID")}))}),it("should return no trustchainId the returned JWT does not contain one",async()=>{const e={access_token:"ACCESS TOKEN",permissions:{}};a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(e)});const n=await new c.HttpLKRPDataSource(t).authenticate({challenge:i,signature:l});expect(n).toEqual((0,o.Right)({jwt:e,trustchainId:o.Nothing}))}),it("should handle authentication error",async()=>{a.mockResolvedValueOnce({ok:!1,status:401,statusText:"Unauthorized"});const s=await new c.HttpLKRPDataSource(t).authenticate({challenge:i,signature:l});expect(s).toEqual((0,o.Left)(new u.LKRPUnauthorizedError(`Unauthorized request to ${t}/authenticate: [401] Unauthorized`)))})}),describe("getTrustchainById",()=>{it("should fetch trustchain by ID successfully",async()=>{const e={"m/":"0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1e1d","m/16'":"1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b"};a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(e)});const n=await new c.HttpLKRPDataSource(t).getTrustchainById("TRUSTCHAIN_ID",r);expect(a).toHaveBeenCalledWith(`${t}/trustchain/TRUSTCHAIN_ID`,{headers:{"Content-Type":"application/json",Authorization:`Bearer ${r.access_token}`}}),expect(n).toEqual((0,o.Right)({"m/":m.LKRPBlockStream.fromHex("0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1e1d"),"m/16'":m.LKRPBlockStream.fromHex("1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b")}))}),it("should handle errors",async()=>{a.mockResolvedValueOnce({ok:!1,status:500,statusText:"Internal Server Error"});const s=await new c.HttpLKRPDataSource(t).getTrustchainById("TRUSTCHAIN_ID",r);expect(s).toEqual((0,o.Left)(new u.LKRPHttpRequestError(`Failed to fetch ${t}/trustchain/TRUSTCHAIN_ID: [500] Internal Server Error`)))})}),describe("postDerivation",()=>{it("should post derivation successfully",async()=>{const e="0102030405060708090a0b0c0d0e0f",s=h.LKRPBlock.fromHex(e);a.mockResolvedValueOnce({ok:!0,status:204});const d=await new c.HttpLKRPDataSource(t).postDerivation("TRUSTCHAIN_ID",s,r);expect(a).toHaveBeenCalledWith(`${t}/trustchain/TRUSTCHAIN_ID/derivation`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r.access_token}`},body:JSON.stringify(e)}),expect(d).toEqual((0,o.Right)(void 0))})}),describe("putCommands",()=>{it("should put commands successfully",async()=>{const e="0102030405060708090a0b0c0d0e0f",s=h.LKRPBlock.fromHex(e);a.mockResolvedValueOnce({ok:!0,status:204});const d=await new c.HttpLKRPDataSource(t).putCommands("TRUSTCHAIN_ID","m/0'/16'/0'",s,r);expect(a).toHaveBeenCalledWith(`${t}/trustchain/TRUSTCHAIN_ID/commands`,{method:"PUT",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r.access_token}`},body:JSON.stringify({path:"m/0'/16'/0'",blocks:[e]})}),expect(d).toEqual((0,o.Right)(void 0))})})});
1
+ "use strict";var o=require("purify-ts"),l=require("../../../api/model/Errors"),h=require("../../utils/LKRPBlock"),m=require("../../utils/Trustchain"),c=require("./HttpLKRPDataSource");const r={access_token:"ACCESS TOKEN",permissions:{TRUSTCHAIN_ID:{"m/":["owner"]}}},i={version:0,challenge:{data:"1010101010010101010",expiry:"2025-06-30T10:00:00Z"},host:"example.com",rp:[{credential:{version:0,curveId:33,signAlgorithm:1,publicKey:"aaaaaaaaaaaaaaaaaaaaaaaaaa"},signature:"abababababababab"}],protocolVersion:{major:1,minor:0,patch:0}},u={credential:{version:0,curveId:33,signAlgorithm:1,publicKey:"bbbbbbbbbbbbbbbbbbbbbbbbbbb"},signature:"acacacacacacacac",attestation:"0000000000000000"};describe("HttpLKRPDataSource",()=>{const a=vi.spyOn(global,"fetch"),t="https://example.com";afterEach(()=>{a.mockClear()}),describe("getChallenge",()=>{it("should fetch challenge successfully",async()=>{const e={tlv:"0f1234567890",json:i};a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(e)});const n=await new c.HttpLKRPDataSource(t).getChallenge();expect(a).toHaveBeenCalledWith(`${t}/challenge`,{headers:{"Content-Type":"application/json"}}),expect(n).toEqual((0,o.Right)(e))}),it("should handle fetch error",async()=>{const e={status:"UNKNOWN",message:"Random error"};a.mockRejectedValueOnce(e);const n=await new c.HttpLKRPDataSource(t).getChallenge();expect(n).toEqual((0,o.Left)(new l.LKRPDataSourceError({status:"UNKNOWN",message:`Random error (from: ${t}/challenge)`})))})}),describe("authenticate",()=>{it("should fetch a JWT when the authentication is successful",async()=>{a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(r)});const s=await new c.HttpLKRPDataSource(t).authenticate({challenge:i,signature:u});expect(a).toHaveBeenCalledWith(`${t}/authenticate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({challenge:i,signature:u})}),expect(s).toEqual((0,o.Right)({jwt:r,trustchainId:(0,o.Just)("TRUSTCHAIN_ID")}))}),it("should return no trustchainId the returned JWT does not contain one",async()=>{const e={access_token:"ACCESS TOKEN",permissions:{}};a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(e)});const n=await new c.HttpLKRPDataSource(t).authenticate({challenge:i,signature:u});expect(n).toEqual((0,o.Right)({jwt:e,trustchainId:o.Nothing}))}),it("should handle authentication error",async()=>{a.mockResolvedValueOnce({ok:!1,status:401,statusText:"Unauthorized",json:()=>Promise.resolve({message:"Unauthorized access"})});const s=await new c.HttpLKRPDataSource(t).authenticate({challenge:i,signature:u});expect(s).toEqual((0,o.Left)(new l.LKRPDataSourceError({status:"UNAUTHORIZED",message:`[401] Unauthorized access (from: ${t}/authenticate)`})))})}),describe("getTrustchainById",()=>{it("should fetch trustchain by ID successfully",async()=>{const e={"m/":"0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1e1d","m/16'":"1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b"};a.mockResolvedValueOnce({ok:!0,json:()=>Promise.resolve(e)});const n=await new c.HttpLKRPDataSource(t).getTrustchainById("TRUSTCHAIN_ID",r);expect(a).toHaveBeenCalledWith(`${t}/trustchain/TRUSTCHAIN_ID`,{headers:{"Content-Type":"application/json",Authorization:`Bearer ${r.access_token}`}}),expect(n).toEqual((0,o.Right)(new m.Trustchain("TRUSTCHAIN_ID",e)))}),it("should handle errors",async()=>{a.mockResolvedValueOnce({ok:!1,status:500,statusText:"Internal Server Error",json:()=>Promise.resolve({})});const s=await new c.HttpLKRPDataSource(t).getTrustchainById("TRUSTCHAIN_ID",r);expect(s).toEqual((0,o.Left)(new l.LKRPDataSourceError({status:"UNKNOWN",message:`[500] Internal Server Error (from: ${t}/trustchain/TRUSTCHAIN_ID)`})))})}),describe("postDerivation",()=>{it("should post derivation successfully",async()=>{const e="0102030405060708090a0b0c0d0e0f",s=h.LKRPBlock.fromHex(e);a.mockResolvedValueOnce({ok:!0,status:204});const d=await new c.HttpLKRPDataSource(t).postDerivation("TRUSTCHAIN_ID",s,r);expect(a).toHaveBeenCalledWith(`${t}/trustchain/TRUSTCHAIN_ID/derivation`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r.access_token}`},body:JSON.stringify(e)}),expect(d).toEqual((0,o.Right)(void 0))})}),describe("putCommands",()=>{it("should put commands successfully",async()=>{const e="0102030405060708090a0b0c0d0e0f",s=h.LKRPBlock.fromHex(e);a.mockResolvedValueOnce({ok:!0,status:204});const d=await new c.HttpLKRPDataSource(t).putCommands("TRUSTCHAIN_ID","m/0'/16'/0'",s,r);expect(a).toHaveBeenCalledWith(`${t}/trustchain/TRUSTCHAIN_ID/commands`,{method:"PUT",headers:{"Content-Type":"application/json",Authorization:`Bearer ${r.access_token}`},body:JSON.stringify({path:"m/0'/16'/0'",blocks:[e]})}),expect(d).toEqual((0,o.Right)(void 0))})})});
2
2
  //# sourceMappingURL=HttpLKRPDataSource.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/lkrp-datasource/data/HttpLKRPDataSource.test.ts"],
4
- "sourcesContent": ["import { Just, Left, Nothing, Right } from \"purify-ts\";\n\nimport {\n LKRPHttpRequestError,\n LKRPUnauthorizedError,\n} from \"@api/app-binder/Errors\";\nimport { LKRPBlock } from \"@internal/utils/LKRPBlock\";\nimport { LKRPBlockStream } from \"@internal/utils/LKRPBlockStream\";\n\nimport { HttpLKRPDataSource } from \"./HttpLKRPDataSource\";\n\nconst mockJwt = {\n access_token: \"ACCESS TOKEN\",\n permissions: { TRUSTCHAIN_ID: { \"m/\": [\"owner\"] } },\n};\n\nconst mockChallengeJSON = {\n version: 0,\n challenge: {\n data: \"1010101010010101010\",\n expiry: \"2025-06-30T10:00:00Z\",\n },\n host: \"example.com\",\n rp: [\n {\n credential: {\n version: 0,\n curveId: 33,\n signAlgorithm: 1,\n publicKey: \"aaaaaaaaaaaaaaaaaaaaaaaaaa\",\n },\n signature: \"abababababababab\",\n },\n ],\n protocolVersion: { major: 1, minor: 0, patch: 0 },\n};\n\nconst mockSignature = {\n credential: {\n version: 0,\n curveId: 33,\n signAlgorithm: 1,\n publicKey: \"bbbbbbbbbbbbbbbbbbbbbbbbbbb\",\n },\n signature: \"acacacacacacacac\",\n attestation: \"0000000000000000\",\n};\n\ndescribe(\"HttpLKRPDataSource\", () => {\n const fetchSpy = vi.spyOn(global, \"fetch\");\n const baseUrl = \"https://example.com\";\n\n afterEach(() => {\n fetchSpy.mockClear();\n });\n\n describe(\"getChallenge\", () => {\n it(\"should fetch challenge successfully\", async () => {\n // GIVEN\n const mockChallenge = {\n tlv: \"0f1234567890\",\n json: mockChallengeJSON,\n };\n\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(mockChallenge),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getChallenge();\n expect(fetchSpy).toHaveBeenCalledWith(`${baseUrl}/challenge`, {\n headers: {\n \"Content-Type\": \"application/json\",\n },\n });\n\n // THEN\n expect(result).toEqual(Right(mockChallenge));\n });\n\n it(\"should handle fetch error\", async () => {\n // GIVEN\n const error = new Error(\"Random error\");\n fetchSpy.mockRejectedValueOnce(error);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getChallenge();\n\n // THEN\n expect(result).toEqual(Left(new LKRPHttpRequestError(error)));\n });\n });\n\n describe(\"authenticate\", () => {\n it(\"should fetch a JWT when the authentication is successful\", async () => {\n // GIVEN\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(mockJwt),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.authenticate({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n });\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(`${baseUrl}/authenticate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n }),\n });\n expect(result).toEqual(\n Right({ jwt: mockJwt, trustchainId: Just(\"TRUSTCHAIN_ID\") }),\n );\n });\n\n it(\"should return no trustchainId the returned JWT does not contain one\", async () => {\n // GIVEN\n const jwtWithoutTrustchainId = {\n access_token: \"ACCESS TOKEN\",\n permissions: {},\n };\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(jwtWithoutTrustchainId),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.authenticate({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n });\n\n // THEN\n expect(result).toEqual(\n Right({ jwt: jwtWithoutTrustchainId, trustchainId: Nothing }),\n );\n });\n\n it(\"should handle authentication error\", async () => {\n // GIVEN\n fetchSpy.mockResolvedValueOnce({\n ok: false,\n status: 401,\n statusText: \"Unauthorized\",\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.authenticate({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n });\n\n // THEN\n expect(result).toEqual(\n Left(\n new LKRPUnauthorizedError(\n `Unauthorized request to ${baseUrl}/authenticate: [401] Unauthorized`,\n ),\n ),\n );\n });\n });\n\n describe(\"getTrustchainById\", () => {\n it(\"should fetch trustchain by ID successfully\", async () => {\n // GIVEN\n const mockTrustchain = {\n \"m/\": \"0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1e1d\",\n \"m/16'\": \"1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b\",\n };\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(mockTrustchain),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getTrustchainById(\n \"TRUSTCHAIN_ID\",\n mockJwt,\n );\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(\n `${baseUrl}/trustchain/TRUSTCHAIN_ID`,\n {\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${mockJwt.access_token}`,\n },\n },\n );\n expect(result).toEqual(\n Right({\n \"m/\": LKRPBlockStream.fromHex(\n \"0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1e1d\",\n ),\n \"m/16'\": LKRPBlockStream.fromHex(\n \"1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b\",\n ),\n }),\n );\n });\n\n it(\"should handle errors\", async () => {\n // GIVEN\n fetchSpy.mockResolvedValueOnce({\n ok: false,\n status: 500,\n statusText: \"Internal Server Error\",\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getTrustchainById(\n \"TRUSTCHAIN_ID\",\n mockJwt,\n );\n\n // THEN\n expect(result).toEqual(\n Left(\n new LKRPHttpRequestError(\n `Failed to fetch ${baseUrl}/trustchain/TRUSTCHAIN_ID: [500] Internal Server Error`,\n ),\n ),\n );\n });\n });\n\n describe(\"postDerivation\", () => {\n it(\"should post derivation successfully\", async () => {\n // GIVEN\n const hex = \"0102030405060708090a0b0c0d0e0f\";\n const mockBlock = LKRPBlock.fromHex(hex);\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n status: 204,\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.postDerivation(\n \"TRUSTCHAIN_ID\",\n mockBlock,\n mockJwt,\n );\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(\n `${baseUrl}/trustchain/TRUSTCHAIN_ID/derivation`,\n {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${mockJwt.access_token}`,\n },\n body: JSON.stringify(hex),\n },\n );\n expect(result).toEqual(Right(undefined));\n });\n });\n\n describe(\"putCommands\", () => {\n it(\"should put commands successfully\", async () => {\n // GIVEN\n const hex = \"0102030405060708090a0b0c0d0e0f\";\n const mockBlock = LKRPBlock.fromHex(hex);\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n status: 204,\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.putCommands(\n \"TRUSTCHAIN_ID\",\n \"m/0'/16'/0'\",\n mockBlock,\n mockJwt,\n );\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(\n `${baseUrl}/trustchain/TRUSTCHAIN_ID/commands`,\n {\n method: \"PUT\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${mockJwt.access_token}`,\n },\n body: JSON.stringify({ path: \"m/0'/16'/0'\", blocks: [hex] }),\n },\n );\n expect(result).toEqual(Right(undefined));\n });\n });\n});\n"],
5
- "mappings": "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",
6
- "names": ["import_purify_ts", "import_Errors", "import_LKRPBlock", "import_LKRPBlockStream", "import_HttpLKRPDataSource", "mockJwt", "mockChallengeJSON", "mockSignature", "fetchSpy", "baseUrl", "mockChallenge", "result", "error", "jwtWithoutTrustchainId", "mockTrustchain", "hex", "mockBlock"]
4
+ "sourcesContent": ["import { Just, Left, Nothing, Right } from \"purify-ts\";\n\nimport { LKRPDataSourceError } from \"@api/model/Errors\";\nimport { LKRPBlock } from \"@internal/utils/LKRPBlock\";\nimport { Trustchain } from \"@internal/utils/Trustchain\";\n\nimport { HttpLKRPDataSource } from \"./HttpLKRPDataSource\";\n\nconst mockJwt = {\n access_token: \"ACCESS TOKEN\",\n permissions: { TRUSTCHAIN_ID: { \"m/\": [\"owner\"] } },\n};\n\nconst mockChallengeJSON = {\n version: 0,\n challenge: {\n data: \"1010101010010101010\",\n expiry: \"2025-06-30T10:00:00Z\",\n },\n host: \"example.com\",\n rp: [\n {\n credential: {\n version: 0,\n curveId: 33,\n signAlgorithm: 1,\n publicKey: \"aaaaaaaaaaaaaaaaaaaaaaaaaa\",\n },\n signature: \"abababababababab\",\n },\n ],\n protocolVersion: { major: 1, minor: 0, patch: 0 },\n};\n\nconst mockSignature = {\n credential: {\n version: 0,\n curveId: 33,\n signAlgorithm: 1,\n publicKey: \"bbbbbbbbbbbbbbbbbbbbbbbbbbb\",\n },\n signature: \"acacacacacacacac\",\n attestation: \"0000000000000000\",\n};\n\ndescribe(\"HttpLKRPDataSource\", () => {\n const fetchSpy = vi.spyOn(global, \"fetch\");\n const baseUrl = \"https://example.com\";\n\n afterEach(() => {\n fetchSpy.mockClear();\n });\n\n describe(\"getChallenge\", () => {\n it(\"should fetch challenge successfully\", async () => {\n // GIVEN\n const mockChallenge = {\n tlv: \"0f1234567890\",\n json: mockChallengeJSON,\n };\n\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(mockChallenge),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getChallenge();\n expect(fetchSpy).toHaveBeenCalledWith(`${baseUrl}/challenge`, {\n headers: {\n \"Content-Type\": \"application/json\",\n },\n });\n\n // THEN\n expect(result).toEqual(Right(mockChallenge));\n });\n\n it(\"should handle fetch error\", async () => {\n // GIVEN\n const error = { status: \"UNKNOWN\", message: \"Random error\" } as const;\n fetchSpy.mockRejectedValueOnce(error);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getChallenge();\n\n // THEN\n expect(result).toEqual(\n Left(\n new LKRPDataSourceError({\n status: \"UNKNOWN\",\n message: `Random error (from: ${baseUrl}/challenge)`,\n }),\n ),\n );\n });\n });\n\n describe(\"authenticate\", () => {\n it(\"should fetch a JWT when the authentication is successful\", async () => {\n // GIVEN\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(mockJwt),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.authenticate({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n });\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(`${baseUrl}/authenticate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n }),\n });\n expect(result).toEqual(\n Right({ jwt: mockJwt, trustchainId: Just(\"TRUSTCHAIN_ID\") }),\n );\n });\n\n it(\"should return no trustchainId the returned JWT does not contain one\", async () => {\n // GIVEN\n const jwtWithoutTrustchainId = {\n access_token: \"ACCESS TOKEN\",\n permissions: {},\n };\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(jwtWithoutTrustchainId),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.authenticate({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n });\n\n // THEN\n expect(result).toEqual(\n Right({ jwt: jwtWithoutTrustchainId, trustchainId: Nothing }),\n );\n });\n\n it(\"should handle authentication error\", async () => {\n // GIVEN\n fetchSpy.mockResolvedValueOnce({\n ok: false,\n status: 401,\n statusText: \"Unauthorized\",\n json: () => Promise.resolve({ message: \"Unauthorized access\" }),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.authenticate({\n challenge: mockChallengeJSON,\n signature: mockSignature,\n });\n\n // THEN\n expect(result).toEqual(\n Left(\n new LKRPDataSourceError({\n status: \"UNAUTHORIZED\",\n message: `[401] Unauthorized access (from: ${baseUrl}/authenticate)`,\n }),\n ),\n );\n });\n });\n\n describe(\"getTrustchainById\", () => {\n it(\"should fetch trustchain by ID successfully\", async () => {\n // GIVEN\n const mockTrustchainData = {\n \"m/\": \"0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1e1d\",\n \"m/16'\": \"1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b\",\n };\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n json: () => Promise.resolve(mockTrustchainData),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getTrustchainById(\n \"TRUSTCHAIN_ID\",\n mockJwt,\n );\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(\n `${baseUrl}/trustchain/TRUSTCHAIN_ID`,\n {\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${mockJwt.access_token}`,\n },\n },\n );\n expect(result).toEqual(\n Right(new Trustchain(\"TRUSTCHAIN_ID\", mockTrustchainData)),\n );\n });\n\n it(\"should handle errors\", async () => {\n // GIVEN\n fetchSpy.mockResolvedValueOnce({\n ok: false,\n status: 500,\n statusText: \"Internal Server Error\",\n json: () => Promise.resolve({}),\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.getTrustchainById(\n \"TRUSTCHAIN_ID\",\n mockJwt,\n );\n\n // THEN\n expect(result).toEqual(\n Left(\n new LKRPDataSourceError({\n status: \"UNKNOWN\",\n message: `[500] Internal Server Error (from: ${baseUrl}/trustchain/TRUSTCHAIN_ID)`,\n }),\n ),\n );\n });\n });\n\n describe(\"postDerivation\", () => {\n it(\"should post derivation successfully\", async () => {\n // GIVEN\n const hex = \"0102030405060708090a0b0c0d0e0f\";\n const mockBlock = LKRPBlock.fromHex(hex);\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n status: 204,\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.postDerivation(\n \"TRUSTCHAIN_ID\",\n mockBlock,\n mockJwt,\n );\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(\n `${baseUrl}/trustchain/TRUSTCHAIN_ID/derivation`,\n {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${mockJwt.access_token}`,\n },\n body: JSON.stringify(hex),\n },\n );\n expect(result).toEqual(Right(undefined));\n });\n });\n\n describe(\"putCommands\", () => {\n it(\"should put commands successfully\", async () => {\n // GIVEN\n const hex = \"0102030405060708090a0b0c0d0e0f\";\n const mockBlock = LKRPBlock.fromHex(hex);\n fetchSpy.mockResolvedValueOnce({\n ok: true,\n status: 204,\n } as Response);\n\n // WHEN\n const dataSource = new HttpLKRPDataSource(baseUrl);\n const result = await dataSource.putCommands(\n \"TRUSTCHAIN_ID\",\n \"m/0'/16'/0'\",\n mockBlock,\n mockJwt,\n );\n\n // THEN\n expect(fetchSpy).toHaveBeenCalledWith(\n `${baseUrl}/trustchain/TRUSTCHAIN_ID/commands`,\n {\n method: \"PUT\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${mockJwt.access_token}`,\n },\n body: JSON.stringify({ path: \"m/0'/16'/0'\", blocks: [hex] }),\n },\n );\n expect(result).toEqual(Right(undefined));\n });\n });\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["import_purify_ts", "import_Errors", "import_LKRPBlock", "import_Trustchain", "import_HttpLKRPDataSource", "mockJwt", "mockChallengeJSON", "mockSignature", "fetchSpy", "baseUrl", "mockChallenge", "result", "error", "jwtWithoutTrustchainId", "mockTrustchainData", "hex", "mockBlock"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var i=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var l=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of s(t))!p.call(e,r)&&r!==o&&i(e,r,{get:()=>t[r],enumerable:!(n=a(t,r))||n.enumerable});return e};var g=e=>l(i({},"__esModule",{value:!0}),e);var u={};module.exports=g(u);
1
+ "use strict";var i=Object.defineProperty;var o=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(e,t,a,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of s(t))!l.call(e,r)&&r!==a&&i(e,r,{get:()=>t[r],enumerable:!(n=o(t,r))||n.enumerable});return e};var g=e=>c(i({},"__esModule",{value:!0}),e);var p={};module.exports=g(p);
2
2
  //# sourceMappingURL=LKRPDataSource.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/lkrp-datasource/data/LKRPDataSource.ts"],
4
- "sourcesContent": ["import { type EitherAsync, type Maybe } from \"purify-ts\";\n\nimport { type LKRPHttpRequestError } from \"@api/app-binder/Errors\";\nimport { type JWT } from \"@api/app-binder/LKRPTypes\";\nimport { type LKRPBlock } from \"@internal/utils/LKRPBlock\";\nimport { type Trustchain } from \"@internal/utils/types\";\n\nexport interface LKRPDataSource {\n getChallenge(): EitherAsync<LKRPHttpRequestError, Challenge>;\n\n authenticate(\n payload: AuthenticationPayload,\n ): EitherAsync<LKRPHttpRequestError, AuthenticationResponse>;\n\n getTrustchainById(\n id: string,\n jwt: JWT,\n ): EitherAsync<LKRPHttpRequestError, Trustchain>;\n\n postDerivation(\n id: string,\n blocks: LKRPBlock,\n jwt: JWT,\n ): EitherAsync<LKRPHttpRequestError, void>;\n\n putCommands(\n id: string,\n path: string,\n block: LKRPBlock,\n jwt: JWT,\n ): EitherAsync<LKRPHttpRequestError, void>;\n}\n\nexport type Challenge = { json: ChallengeJSON; tlv: string };\n\nexport type AuthenticationResponse = {\n jwt: JWT;\n trustchainId: Maybe<string>;\n};\n\nexport type AuthenticationPayload = {\n challenge: ChallengeJSON;\n signature: ChallengeSignature;\n};\n\ntype ChallengeJSON = {\n version: number;\n challenge: {\n data: string;\n expiry: string;\n };\n host: string;\n rp: { credential: Credential; signature: string }[];\n protocolVersion: {\n major: number;\n minor: number;\n patch: number;\n };\n};\n\ntype ChallengeSignature = {\n credential: Credential;\n signature: string;\n attestation: string;\n};\n\ntype Credential = {\n version: number;\n curveId: number;\n signAlgorithm: number;\n publicKey: string;\n};\n"],
4
+ "sourcesContent": ["import { type EitherAsync, type Maybe } from \"purify-ts\";\n\nimport { type LKRPDataSourceError } from \"@api/model/Errors\";\nimport { type JWT } from \"@api/model/JWT\";\nimport { type LKRPBlock } from \"@internal/utils/LKRPBlock\";\nimport { type Trustchain } from \"@internal/utils/Trustchain\";\n\nexport interface LKRPDataSource {\n getChallenge(): EitherAsync<LKRPDataSourceError, Challenge>;\n\n authenticate(\n payload: AuthenticationPayload,\n ): EitherAsync<LKRPDataSourceError, AuthenticationResponse>;\n\n getTrustchainById(\n id: string,\n jwt: JWT,\n ): EitherAsync<LKRPDataSourceError, Trustchain>;\n\n postDerivation(\n id: string,\n blocks: LKRPBlock,\n jwt: JWT,\n ): EitherAsync<LKRPDataSourceError, void>;\n\n putCommands(\n id: string,\n path: string,\n block: LKRPBlock,\n jwt: JWT,\n ): EitherAsync<LKRPDataSourceError, void>;\n}\n\nexport type Challenge = { json: ChallengeJSON; tlv: string };\n\nexport type AuthenticationResponse = {\n jwt: JWT;\n trustchainId: Maybe<string>;\n};\n\nexport type AuthenticationPayload = {\n challenge: ChallengeJSON;\n signature: ChallengeSignature;\n};\n\ntype ChallengeJSON = {\n version: number;\n challenge: {\n data: string;\n expiry: string;\n };\n host: string;\n rp: { credential: Credential; signature: string }[];\n protocolVersion: {\n major: number;\n minor: number;\n patch: number;\n };\n};\n\ntype ChallengeSignature = {\n credential: Credential;\n signature: string;\n attestation: string;\n};\n\ntype Credential = {\n version: number;\n curveId: number;\n signAlgorithm: number;\n publicKey: string;\n};\n"],
5
5
  "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
6
  "names": ["LKRPDataSource_exports", "__toCommonJS"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ "use strict";var o=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var s=(r,a,n,e)=>{if(a&&typeof a=="object"||typeof a=="function")for(let t of i(a))!p.call(r,t)&&t!==n&&o(r,t,{get:()=>a[t],enumerable:!(e=m(a,t))||e.enumerable});return r};var y=r=>s(o({},"__esModule",{value:!0}),r);var P={};module.exports=y(P);
2
+ //# sourceMappingURL=LKRPBlockTypes.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/internal/models/LKRPBlockTypes.ts"],
4
+ "sourcesContent": ["import { type LKRPCommand } from \"@internal/utils/LKRPCommand\";\n\nexport type LKRPBlockData = {\n parent: string;\n issuer: Uint8Array;\n commands: LKRPCommand[];\n signature: Uint8Array;\n};\n\nexport type LKRPBlockParsedData = LKRPBlockData & { header: Uint8Array };\n"],
5
+ "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
+ "names": ["LKRPBlockTypes_exports", "__toCommonJS"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var a=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var m=(r,e,n,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of p(e))!d.call(r,i)&&i!==n&&a(r,i,{get:()=>e[i],enumerable:!(t=y(e,i))||t.enumerable});return r};var o=r=>m(a({},"__esModule",{value:!0}),r);var s={};module.exports=o(s);
2
+ //# sourceMappingURL=LKRPCommandTypes.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/internal/models/LKRPCommandTypes.ts"],
4
+ "sourcesContent": ["import { type CommandTags } from \"./Tags\";\n\nexport type LKRPCommandData = Seed | AddMember | PublishKey | Derive;\n\ntype Seed = {\n type: CommandTags.Seed;\n topic: Uint8Array;\n protocolVersion: number;\n groupKey: Uint8Array;\n initializationVector: Uint8Array;\n encryptedXpriv: Uint8Array;\n ephemeralPublicKey: Uint8Array;\n};\n\ntype AddMember = {\n type: CommandTags.AddMember;\n name: string;\n publicKey: Uint8Array;\n permissions: number;\n};\n\ntype PublishKey = {\n type: CommandTags.PublishKey;\n initializationVector: Uint8Array;\n encryptedXpriv: Uint8Array;\n recipient: Uint8Array;\n ephemeralPublicKey: Uint8Array;\n};\n\ntype Derive = {\n type: CommandTags.Derive;\n path: string;\n groupKey: Uint8Array;\n initializationVector: Uint8Array;\n encryptedXpriv: Uint8Array;\n ephemeralPublicKey: Uint8Array;\n};\n\nexport type UnsignedCommandData =\n | AddMemberUnsignedData\n | PublishKeyUnsignedData\n | DeriveUnsignedData;\n\nexport type AddMemberUnsignedData = AddMember;\ntype PublishKeyUnsignedData = Pick<PublishKey, \"type\" | \"recipient\">;\ntype DeriveUnsignedData = Pick<Derive, \"type\" | \"path\">;\n\nexport type EncryptedCommand =\n | EncryptedDeriveCommand\n | AddMemberUnsignedData\n | EncryptedPublishKeyCommand;\n\nexport type EncryptedDeriveCommand = DeriveUnsignedData &\n Pick<\n ParsedTrustedProperties,\n \"iv\" | \"xpriv\" | \"ephemeralPublicKey\" | \"commandIv\" | \"groupKey\"\n >;\nexport type EncryptedPublishKeyCommand = PublishKeyUnsignedData &\n Pick<\n ParsedTrustedProperties,\n \"iv\" | \"xpriv\" | \"ephemeralPublicKey\" | \"commandIv\"\n >;\n\ntype ParsedTrustedProperties = {\n iv: Uint8Array;\n issuer: Uint8Array;\n xpriv: Uint8Array;\n ephemeralPublicKey: Uint8Array;\n commandIv: Uint8Array;\n groupKey: Uint8Array;\n newMember: Uint8Array;\n};\n"],
5
+ "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
+ "names": ["LKRPCommandTypes_exports", "__toCommonJS"]
7
+ }
@@ -1,2 +1,2 @@
1
1
  "use strict";var I=Object.defineProperty;var N=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var A=(u,t)=>{for(var i in t)I(u,i,{get:t[i],enumerable:!0})},B=(u,t,i,S)=>{if(t&&typeof t=="object"||typeof t=="function")for(let M of p(t))!y.call(u,M)&&M!==i&&I(u,M,{get:()=>t[M],enumerable:!(S=N(t,M))||S.enumerable});return u};var U=u=>B(I({},"__esModule",{value:!0}),u);var V={};A(V,{CommandTags:()=>b,GeneralTags:()=>_,TPTags:()=>K});module.exports=U(V);var _=(x=>(x[x.Null=0]="Null",x[x.Int=1]="Int",x[x.Hash=2]="Hash",x[x.Signature=3]="Signature",x[x.String=4]="String",x[x.Bytes=5]="Bytes",x[x.PublicKey=6]="PublicKey",x))(_||{}),b=(E=>(E[E.Seed=16]="Seed",E[E.AddMember=17]="AddMember",E[E.PublishKey=18]="PublishKey",E[E.CloseStream=19]="CloseStream",E[E.EditMember=20]="EditMember",E[E.Derive=21]="Derive",E))(b||{});const R=128;var K=(x=>(x[x.IV=0]="IV",x[x.ISSUER=1|R]="ISSUER",x[x.XPRIV=2|R]="XPRIV",x[x.EPHEMERAL_PUBLIC_KEY=3]="EPHEMERAL_PUBLIC_KEY",x[x.COMMAND_IV=4]="COMMAND_IV",x[x.GROUPKEY=5]="GROUPKEY",x[x.NEW_MEMBER=6|R]="NEW_MEMBER",x))(K||{});0&&(module.exports={CommandTags,GeneralTags,TPTags});
2
- //# sourceMappingURL=TLVTags.js.map
2
+ //# sourceMappingURL=Tags.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/internal/utils/TLVTags.ts"],
3
+ "sources": ["../../../../src/internal/models/Tags.ts"],
4
4
  "sourcesContent": ["export enum GeneralTags {\n Null = 0x00,\n Int = 0x01,\n Hash = 0x02,\n Signature = 0x03,\n String = 0x04,\n Bytes = 0x05,\n PublicKey = 0x06,\n}\n\nexport enum CommandTags {\n Seed = 0x10,\n AddMember = 0x11,\n PublishKey = 0x12,\n CloseStream = 0x13,\n EditMember = 0x14,\n Derive = 0x15,\n}\n\nconst TP_ENCRYPT = 1 << 7;\n\nexport enum TPTags {\n IV = 0x00,\n ISSUER = 0x01 | TP_ENCRYPT,\n XPRIV = 0x02 | TP_ENCRYPT,\n EPHEMERAL_PUBLIC_KEY = 0x03,\n COMMAND_IV = 0x04,\n GROUPKEY = 0x05,\n NEW_MEMBER = 0x06 | TP_ENCRYPT,\n}\n"],
5
5
  "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,gBAAAC,EAAA,WAAAC,IAAA,eAAAC,EAAAL,GAAO,IAAKG,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,IAAM,GAAN,MACAA,IAAA,KAAO,GAAP,OACAA,IAAA,UAAY,GAAZ,YACAA,IAAA,OAAS,GAAT,SACAA,IAAA,MAAQ,GAAR,QACAA,IAAA,UAAY,GAAZ,YAPUA,OAAA,IAUAD,OACVA,IAAA,KAAO,IAAP,OACAA,IAAA,UAAY,IAAZ,YACAA,IAAA,WAAa,IAAb,aACAA,IAAA,YAAc,IAAd,cACAA,IAAA,WAAa,IAAb,aACAA,IAAA,OAAS,IAAT,SANUA,OAAA,IASZ,MAAMI,EAAa,IAEZ,IAAKF,OACVA,IAAA,GAAK,GAAL,KACAA,IAAA,OAAS,EAAOE,GAAhB,SACAF,IAAA,MAAQ,EAAOE,GAAf,QACAF,IAAA,qBAAuB,GAAvB,uBACAA,IAAA,WAAa,GAAb,aACAA,IAAA,SAAW,GAAX,WACAA,IAAA,WAAa,EAAOE,GAApB,aAPUF,OAAA",
6
- "names": ["TLVTags_exports", "__export", "CommandTags", "GeneralTags", "TPTags", "__toCommonJS", "TP_ENCRYPT"]
6
+ "names": ["Tags_exports", "__export", "CommandTags", "GeneralTags", "TPTags", "__toCommonJS", "TP_ENCRYPT"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ "use strict";var y=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var d=(r,e,a,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of p(e))!c.call(r,i)&&i!==a&&y(r,i,{get:()=>e[i],enumerable:!(t=n(e,i))||t.enumerable});return r};var l=r=>d(y({},"__esModule",{value:!0}),r);var o={};module.exports=l(o);
2
+ //# sourceMappingURL=Types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/internal/models/Types.ts"],
4
+ "sourcesContent": ["export type PublishedKey = {\n privateKey: Uint8Array;\n chainCode: Uint8Array;\n};\n\nexport type EncryptedPublishedKey = {\n encryptedXpriv: Uint8Array;\n initializationVector: Uint8Array;\n ephemeralPublicKey: Uint8Array;\n};\n"],
5
+ "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
+ "names": ["Types_exports", "__toCommonJS"]
7
+ }
@@ -1,2 +1,2 @@
1
- "use strict";var c=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var B=Object.prototype.hasOwnProperty;var f=(e,r)=>{for(var o in r)c(e,o,{get:r[o],enumerable:!0})},T=(e,r,o,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of u(r))!B.call(e,i)&&i!==o&&c(e,i,{get:()=>r[i],enumerable:!(n=g(r,i))||n.enumerable});return e};var l=e=>T(c({},"__esModule",{value:!0}),e),s=(e,r,o,n)=>{for(var i=n>1?void 0:n?g(r,o):r,p=e.length-1,t;p>=0;p--)(t=e[p])&&(i=(n?t(r,o,i):t(i))||i);return n&&i&&c(r,o,i),i},y=(e,r)=>(o,n)=>r(o,n,e);var K={};f(K,{AuthenticateUseCase:()=>m});module.exports=l(K);var d=require("inversify"),a=require("../../app-binder/di/appBinderTypes");let m=class{constructor(r){this.appBinder=r}execute(r,o,n,i,p,t){return this.appBinder.authenticate({keypair:r,applicationId:o,clientName:n,permissions:i,trustchainId:p,jwt:t})}};m=s([(0,d.injectable)(),y(0,(0,d.inject)(a.appBinderTypes.AppBinding))],m);0&&(module.exports={AuthenticateUseCase});
1
+ "use strict";var s=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var v=Object.prototype.hasOwnProperty;var D=(r,e)=>{for(var i in e)s(r,i,{get:e[i],enumerable:!0})},P=(r,e,i,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of g(e))!v.call(r,t)&&t!==i&&s(r,t,{get:()=>e[t],enumerable:!(n=d(e,t))||n.enumerable});return r};var l=r=>P(s({},"__esModule",{value:!0}),r),m=(r,e,i,n)=>{for(var t=n>1?void 0:n?d(e,i):e,c=r.length-1,p;c>=0;c--)(p=r[c])&&(t=(n?p(e,i,t):p(t))||t);return n&&t&&s(e,i,t),t},u=(r,e)=>(i,n)=>e(i,n,r);var B={};D(B,{AuthenticateUseCase:()=>o});module.exports=l(B);var f=require("@ledgerhq/device-management-kit"),a=require("inversify"),h=require("rxjs"),I=require("../../../api/model/Errors"),y=require("../../app-binder/di/appBinderTypes");let o=class{constructor(e){this.appBinder=e}execute(e){if(e.trustchainId)return this.appBinder.authenticateWithKeypair(e);const i=e.sessionId;return i?this.appBinder.authenticateWithDevice({...e,sessionId:i}):{observable:(0,h.of)({status:f.DeviceActionStatus.Error,error:new I.LKRPMissingDataError("Either a trustchainId or a device is required for authentication.")}),cancel:()=>{}}}};o=m([(0,a.injectable)(),u(0,(0,a.inject)(y.appBinderTypes.AppBinding))],o);0&&(module.exports={AuthenticateUseCase});
2
2
  //# sourceMappingURL=AuthenticateUseCase.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/authentication/AuthenticateUseCase.ts"],
4
- "sourcesContent": ["import { inject, injectable } from \"inversify\";\n\nimport { AuthenticateDAReturnType } from \"@api/app-binder/AuthenticateDeviceActionTypes\";\nimport { JWT, Keypair, Permissions } from \"@api/app-binder/LKRPTypes\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { LedgerKeyringProtocolBinder } from \"@internal/app-binder/LedgerKeyringProtocolBinder\";\n\n@injectable()\nexport class AuthenticateUseCase {\n constructor(\n @inject(appBinderTypes.AppBinding)\n private appBinder: LedgerKeyringProtocolBinder,\n ) {}\n\n execute(\n keypair: Keypair,\n applicationId: number,\n clientName: string,\n permissions: Permissions,\n trustchainId?: string,\n jwt?: JWT,\n ): AuthenticateDAReturnType {\n return this.appBinder.authenticate({\n keypair,\n applicationId,\n clientName,\n permissions,\n trustchainId,\n jwt,\n });\n }\n}\n"],
5
- "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,yBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBAInCC,EAA+B,kDAIxB,IAAMC,EAAN,KAA0B,CAC/B,YAEUC,EACR,CADQ,eAAAA,CACP,CAEH,QACEC,EACAC,EACAC,EACAC,EACAC,EACAC,EAC0B,CAC1B,OAAO,KAAK,UAAU,aAAa,CACjC,QAAAL,EACA,cAAAC,EACA,WAAAC,EACA,YAAAC,EACA,aAAAC,EACA,IAAAC,CACF,CAAC,CACH,CACF,EAvBaP,EAANQ,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,iBAAe,UAAU,IAFxBT",
6
- "names": ["AuthenticateUseCase_exports", "__export", "AuthenticateUseCase", "__toCommonJS", "import_inversify", "import_appBinderTypes", "AuthenticateUseCase", "appBinder", "keypair", "applicationId", "clientName", "permissions", "trustchainId", "jwt", "__decorateClass", "__decorateParam"]
4
+ "sourcesContent": ["import {\n DeviceActionStatus,\n DeviceSessionId,\n} from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { of } from \"rxjs\";\n\nimport { AuthenticateDAReturnType } from \"@api/app-binder/AuthenticateDeviceActionTypes\";\nimport { KeyPair } from \"@api/crypto/KeyPair\";\nimport { LKRPMissingDataError } from \"@api/model/Errors\";\nimport { Permissions } from \"@api/model/Permissions\";\nimport { appBinderTypes } from \"@internal/app-binder/di/appBinderTypes\";\nimport { LedgerKeyringProtocolBinder } from \"@internal/app-binder/LedgerKeyringProtocolBinder\";\n\nexport type AuthenticateUsecaseInput = {\n keyPair: KeyPair;\n clientName: string;\n permissions: Permissions;\n} & (\n | { trustchainId: string; sessionId?: DeviceSessionId }\n | { trustchainId?: undefined; sessionId: DeviceSessionId }\n);\n\n@injectable()\nexport class AuthenticateUseCase {\n constructor(\n @inject(appBinderTypes.AppBinding)\n private appBinder: LedgerKeyringProtocolBinder,\n ) {}\n\n execute(input: AuthenticateUsecaseInput): AuthenticateDAReturnType {\n if (input.trustchainId) {\n return this.appBinder.authenticateWithKeypair(input);\n }\n\n const sessionId = input.sessionId;\n if (sessionId) {\n return this.appBinder.authenticateWithDevice({ ...input, sessionId });\n }\n\n // The AuthenticateUsecaseInput type should prevent this case\n return {\n observable: of({\n status: DeviceActionStatus.Error,\n error: new LKRPMissingDataError(\n \"Either a trustchainId or a device is required for authentication.\",\n ),\n }),\n cancel: () => undefined,\n };\n }\n}\n"],
5
+ "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,yBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAGO,2CACPC,EAAmC,qBACnCC,EAAmB,gBAInBC,EAAqC,6BAErCC,EAA+B,kDAaxB,IAAMC,EAAN,KAA0B,CAC/B,YAEUC,EACR,CADQ,eAAAA,CACP,CAEH,QAAQC,EAA2D,CACjE,GAAIA,EAAM,aACR,OAAO,KAAK,UAAU,wBAAwBA,CAAK,EAGrD,MAAMC,EAAYD,EAAM,UACxB,OAAIC,EACK,KAAK,UAAU,uBAAuB,CAAE,GAAGD,EAAO,UAAAC,CAAU,CAAC,EAI/D,CACL,cAAY,MAAG,CACb,OAAQ,qBAAmB,MAC3B,MAAO,IAAI,uBACT,mEACF,CACF,CAAC,EACD,OAAQ,IAAG,EACb,CACF,CACF,EA3BaH,EAANI,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,iBAAe,UAAU,IAFxBL",
6
+ "names": ["AuthenticateUseCase_exports", "__export", "AuthenticateUseCase", "__toCommonJS", "import_device_management_kit", "import_inversify", "import_rxjs", "import_Errors", "import_appBinderTypes", "AuthenticateUseCase", "appBinder", "input", "sessionId", "__decorateClass", "__decorateParam"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ "use strict";var p=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var P=Object.prototype.hasOwnProperty;var U=(i,e)=>{for(var n in e)p(i,n,{get:e[n],enumerable:!0})},b=(i,e,n,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of B(e))!P.call(i,r)&&r!==n&&p(i,r,{get:()=>e[r],enumerable:!(t=l(e,r))||t.enumerable});return i};var E=i=>b(p({},"__esModule",{value:!0}),i),h=(i,e,n,t)=>{for(var r=t>1?void 0:t?l(e,n):e,o=i.length-1,c;o>=0;o--)(c=i[o])&&(r=(t?c(e,n,r):c(r))||r);return t&&r&&p(e,n,r),r},d=(i,e)=>(n,t)=>e(n,t,i);var F={};U(F,{DecryptDataUseCase:()=>y});module.exports=E(F);var g=require("@ledgerhq/device-management-kit"),m=require("inversify"),v=require("purify-ts"),a=require("../../../api/crypto/CryptoService"),s=require("../../../api/model/Errors"),S=require("../../externalTypes"),f=require("../../utils/eitherSeqRecord");let y=class{constructor(e){this.cryptoService=e}async execute(e,n){const t=new g.ByteArrayParser(n);if(t.extract8BitUInt()!==0)throw new s.LKRPParsingError("Unsupported serialization version");const r=(o,c)=>v.Maybe.fromNullable(o).toEither(new s.LKRPParsingError(`Missing ${c} field`));return(0,f.eitherSeqRecord)({ephemeralPublicKey:()=>r(t.extractFieldByLength(33),"ephemeral public key"),iv:()=>r(t.extractFieldByLength(16),"IV"),tag:()=>r(t.extractFieldByLength(16),"tag"),encryptedData:()=>r(t.extractFieldByLength(t.getUnparsedRemainingLength()),"encrypted data")}).map(async({ephemeralPublicKey:o,iv:c,tag:u,encryptedData:x})=>{const A=await this.cryptoService.importKeyPair(e,a.Curve.K256).deriveSharedSecret(o),w=this.cryptoService.hmac(new Uint8Array,A.slice(1),a.HashAlgo.SHA256),K=this.cryptoService.importSymmetricKey(w,a.EncryptionAlgo.AES256_GCM),L=new Uint8Array([...x,...u]);return await K.decrypt(c,L)}).caseOf({Left:o=>{throw o},Right:o=>o})}};y=h([(0,m.injectable)(),d(0,(0,m.inject)(S.externalTypes.CryptoService))],y);0&&(module.exports={DecryptDataUseCase});
2
+ //# sourceMappingURL=DecryptDataUseCase.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/use-cases/authentication/DecryptDataUseCase.ts"],
4
+ "sourcesContent": ["import { ByteArrayParser } from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n type CryptoService,\n Curve,\n EncryptionAlgo,\n HashAlgo,\n} from \"@api/crypto/CryptoService\";\nimport { LKRPParsingError } from \"@api/model/Errors\";\nimport { externalTypes } from \"@internal/externalTypes\";\nimport { eitherSeqRecord } from \"@internal/utils/eitherSeqRecord\";\n\n@injectable()\nexport class DecryptDataUseCase {\n constructor(\n @inject(externalTypes.CryptoService)\n private cryptoService: CryptoService,\n ) {}\n\n // TODO better return type instead of throw on errors\n async execute(\n encryptionKey: Uint8Array,\n data: Uint8Array,\n ): Promise<Uint8Array> {\n const parser = new ByteArrayParser(data);\n if (parser.extract8BitUInt() !== 0) {\n throw new LKRPParsingError(\"Unsupported serialization version\");\n }\n const required = (value: Uint8Array | undefined, field: string) =>\n Maybe.fromNullable(value).toEither(\n new LKRPParsingError(`Missing ${field} field`),\n );\n\n return eitherSeqRecord({\n ephemeralPublicKey: () =>\n required(parser.extractFieldByLength(33), \"ephemeral public key\"),\n iv: () => required(parser.extractFieldByLength(16), \"IV\"),\n tag: () => required(parser.extractFieldByLength(16), \"tag\"),\n encryptedData: () =>\n required(\n parser.extractFieldByLength(parser.getUnparsedRemainingLength()),\n \"encrypted data\",\n ),\n })\n .map(async ({ ephemeralPublicKey, iv, tag, encryptedData }) => {\n // Derive the shared secret using ECDH with an ephemeral keyPair\n const privateKey = this.cryptoService.importKeyPair(\n encryptionKey,\n Curve.K256,\n );\n const sharedSecret =\n await privateKey.deriveSharedSecret(ephemeralPublicKey);\n\n // Key derivation using HMAC-SHA256\n const key = this.cryptoService.hmac(\n new Uint8Array(),\n sharedSecret.slice(1),\n HashAlgo.SHA256,\n );\n\n // Decrypt the data\n const symmetricKey = this.cryptoService.importSymmetricKey(\n key,\n EncryptionAlgo.AES256_GCM,\n );\n const ciphertext = new Uint8Array([...encryptedData, ...tag]);\n const cleartext = await symmetricKey.decrypt(iv, ciphertext);\n return cleartext;\n })\n .caseOf({\n Left: (error) => {\n throw error;\n },\n Right: (cleartext) => cleartext,\n });\n }\n}\n"],
5
+ "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAgC,2CAChCC,EAAmC,qBACnCC,EAAsB,qBAEtBC,EAKO,qCACPC,EAAiC,6BACjCC,EAA8B,mCAC9BC,EAAgC,2CAGzB,IAAMC,EAAN,KAAyB,CAC9B,YAEUC,EACR,CADQ,mBAAAA,CACP,CAGH,MAAM,QACJC,EACAC,EACqB,CACrB,MAAMC,EAAS,IAAI,kBAAgBD,CAAI,EACvC,GAAIC,EAAO,gBAAgB,IAAM,EAC/B,MAAM,IAAI,mBAAiB,mCAAmC,EAEhE,MAAMC,EAAW,CAACC,EAA+BC,IAC/C,QAAM,aAAaD,CAAK,EAAE,SACxB,IAAI,mBAAiB,WAAWC,CAAK,QAAQ,CAC/C,EAEF,SAAO,mBAAgB,CACrB,mBAAoB,IAClBF,EAASD,EAAO,qBAAqB,EAAE,EAAG,sBAAsB,EAClE,GAAI,IAAMC,EAASD,EAAO,qBAAqB,EAAE,EAAG,IAAI,EACxD,IAAK,IAAMC,EAASD,EAAO,qBAAqB,EAAE,EAAG,KAAK,EAC1D,cAAe,IACbC,EACED,EAAO,qBAAqBA,EAAO,2BAA2B,CAAC,EAC/D,gBACF,CACJ,CAAC,EACE,IAAI,MAAO,CAAE,mBAAAI,EAAoB,GAAAC,EAAI,IAAAC,EAAK,cAAAC,CAAc,IAAM,CAM7D,MAAMC,EACJ,MALiB,KAAK,cAAc,cACpCV,EACA,QAAM,IACR,EAEmB,mBAAmBM,CAAkB,EAGlDK,EAAM,KAAK,cAAc,KAC7B,IAAI,WACJD,EAAa,MAAM,CAAC,EACpB,WAAS,MACX,EAGME,EAAe,KAAK,cAAc,mBACtCD,EACA,iBAAe,UACjB,EACME,EAAa,IAAI,WAAW,CAAC,GAAGJ,EAAe,GAAGD,CAAG,CAAC,EAE5D,OADkB,MAAMI,EAAa,QAAQL,EAAIM,CAAU,CAE7D,CAAC,EACA,OAAO,CACN,KAAOC,GAAU,CACf,MAAMA,CACR,EACA,MAAQC,GAAcA,CACxB,CAAC,CACL,CACF,EA/DajB,EAANkB,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,gBAAc,aAAa,IAF1BnB",
6
+ "names": ["DecryptDataUseCase_exports", "__export", "DecryptDataUseCase", "__toCommonJS", "import_device_management_kit", "import_inversify", "import_purify_ts", "import_CryptoService", "import_Errors", "import_externalTypes", "import_eitherSeqRecord", "DecryptDataUseCase", "cryptoService", "encryptionKey", "data", "parser", "required", "value", "field", "ephemeralPublicKey", "iv", "tag", "encryptedData", "sharedSecret", "key", "symmetricKey", "ciphertext", "error", "cleartext", "__decorateClass", "__decorateParam"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var p=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var T=(t,r)=>{for(var i in r)p(t,i,{get:r[i],enumerable:!0})},g=(t,r,i,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let e of B(r))!b.call(t,e)&&e!==i&&p(t,e,{get:()=>r[e],enumerable:!(o=u(r,e))||o.enumerable});return t};var w=t=>g(p({},"__esModule",{value:!0}),t),v=(t,r,i,o)=>{for(var e=o>1?void 0:o?u(r,i):r,a=t.length-1,y;a>=0;a--)(y=t[a])&&(e=(o?y(r,i,e):y(e))||e);return o&&e&&p(r,i,e),e},f=(t,r)=>(i,o)=>r(i,o,t);var P={};T(P,{EncryptDataUseCase:()=>n});module.exports=w(P);var K=require("@ledgerhq/device-management-kit"),m=require("inversify"),c=require("../../../api/crypto/CryptoService"),s=require("../../../api/crypto/Key"),h=require("../../externalTypes");let n=class{constructor(r){this.cryptoService=r}async execute(r,i){const o=this.cryptoService.importKeyPair(r,c.Curve.K256),e=await this.cryptoService.createKeyPair(c.Curve.K256),a=await o.deriveSharedSecret(e.getPublicKey()),y=this.cryptoService.hmac(new Uint8Array,a.slice(1),c.HashAlgo.SHA256),d=this.cryptoService.randomBytes(16),S=await this.cryptoService.importSymmetricKey(y,c.EncryptionAlgo.AES256_GCM).encrypt(d,i),l=S.subarray(0,-s.AES256_BLOCK_SIZE),A=S.subarray(-s.AES256_BLOCK_SIZE);return new K.ByteArrayBuilder().add8BitUIntToData(0).addBufferToData(e.getPublicKey()).addBufferToData(d).addBufferToData(A).addBufferToData(l).build()}};n=v([(0,m.injectable)(),f(0,(0,m.inject)(h.externalTypes.CryptoService))],n);0&&(module.exports={EncryptDataUseCase});
2
+ //# sourceMappingURL=EncryptDataUseCase.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/internal/use-cases/authentication/EncryptDataUseCase.ts"],
4
+ "sourcesContent": ["import { ByteArrayBuilder } from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\n\nimport {\n type CryptoService,\n Curve,\n EncryptionAlgo,\n HashAlgo,\n} from \"@api/crypto/CryptoService\";\nimport { AES256_BLOCK_SIZE } from \"@api/crypto/Key\";\nimport { externalTypes } from \"@internal/externalTypes\";\n\n@injectable()\nexport class EncryptDataUseCase {\n constructor(\n @inject(externalTypes.CryptoService)\n private cryptoService: CryptoService,\n ) {}\n\n async execute(\n encryptionKey: Uint8Array,\n data: Uint8Array,\n ): Promise<Uint8Array> {\n // Derive the shared secret using ECDH with an ephemeral keyPair\n const privateKey = this.cryptoService.importKeyPair(\n encryptionKey,\n Curve.K256,\n );\n const ephemeralKeypair = await this.cryptoService.createKeyPair(Curve.K256);\n const sharedSecret = await privateKey.deriveSharedSecret(\n ephemeralKeypair.getPublicKey(),\n );\n\n // Key derivation using HMAC-SHA256\n const key = this.cryptoService.hmac(\n new Uint8Array(),\n sharedSecret.slice(1),\n HashAlgo.SHA256,\n );\n\n // Generate a random IV (nonce)\n const iv = this.cryptoService.randomBytes(16);\n\n // Encrypt data\n const symmetricKey = this.cryptoService.importSymmetricKey(\n key,\n EncryptionAlgo.AES256_GCM,\n );\n const ciphertext = await symmetricKey.encrypt(iv, data);\n const encryptedData = ciphertext.subarray(0, -AES256_BLOCK_SIZE);\n const tag = ciphertext.subarray(-AES256_BLOCK_SIZE);\n\n // Serialize the result\n return new ByteArrayBuilder()\n .add8BitUIntToData(0) // Version of the format\n .addBufferToData(ephemeralKeypair.getPublicKey())\n .addBufferToData(iv)\n .addBufferToData(tag)\n .addBufferToData(encryptedData)\n .build();\n }\n}\n"],
5
+ "mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAiC,2CACjCC,EAAmC,qBAEnCC,EAKO,qCACPC,EAAkC,2BAClCC,EAA8B,mCAGvB,IAAMC,EAAN,KAAyB,CAC9B,YAEUC,EACR,CADQ,mBAAAA,CACP,CAEH,MAAM,QACJC,EACAC,EACqB,CAErB,MAAMC,EAAa,KAAK,cAAc,cACpCF,EACA,QAAM,IACR,EACMG,EAAmB,MAAM,KAAK,cAAc,cAAc,QAAM,IAAI,EACpEC,EAAe,MAAMF,EAAW,mBACpCC,EAAiB,aAAa,CAChC,EAGME,EAAM,KAAK,cAAc,KAC7B,IAAI,WACJD,EAAa,MAAM,CAAC,EACpB,WAAS,MACX,EAGME,EAAK,KAAK,cAAc,YAAY,EAAE,EAOtCC,EAAa,MAJE,KAAK,cAAc,mBACtCF,EACA,iBAAe,UACjB,EACsC,QAAQC,EAAIL,CAAI,EAChDO,EAAgBD,EAAW,SAAS,EAAG,CAAC,mBAAiB,EACzDE,EAAMF,EAAW,SAAS,CAAC,mBAAiB,EAGlD,OAAO,IAAI,mBAAiB,EACzB,kBAAkB,CAAC,EACnB,gBAAgBJ,EAAiB,aAAa,CAAC,EAC/C,gBAAgBG,CAAE,EAClB,gBAAgBG,CAAG,EACnB,gBAAgBD,CAAa,EAC7B,MAAM,CACX,CACF,EAhDaV,EAANY,EAAA,IADN,cAAW,EAGPC,EAAA,eAAO,gBAAc,aAAa,IAF1Bb",
6
+ "names": ["EncryptDataUseCase_exports", "__export", "EncryptDataUseCase", "__toCommonJS", "import_device_management_kit", "import_inversify", "import_CryptoService", "import_Key", "import_externalTypes", "EncryptDataUseCase", "cryptoService", "encryptionKey", "data", "privateKey", "ephemeralKeypair", "sharedSecret", "key", "iv", "ciphertext", "encryptedData", "tag", "__decorateClass", "__decorateParam"]
7
+ }
@@ -1,2 +1,2 @@
1
- "use strict";var r=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var C=Object.prototype.hasOwnProperty;var c=(e,t)=>{for(var s in t)r(e,s,{get:t[s],enumerable:!0})},f=(e,t,s,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of p(t))!C.call(e,o)&&o!==s&&r(e,o,{get:()=>t[o],enumerable:!(a=u(t,o))||a.enumerable});return e};var d=e=>f(r({},"__esModule",{value:!0}),e);var l={};c(l,{useCasesModuleFactory:()=>h});module.exports=d(l);var i=require("inversify"),m=require("../../use-cases/authentication/AuthenticateUseCase"),n=require("./useCasesTypes");const h=()=>new i.ContainerModule(({bind:e})=>{e(n.useCasesTypes.AuthenticateUseCase).to(m.AuthenticateUseCase)});0&&(module.exports={useCasesModuleFactory});
1
+ "use strict";var r=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var D=(e,t)=>{for(var s in t)r(e,s,{get:t[s],enumerable:!0})},U=(e,t,s,p)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of u(t))!y.call(e,a)&&a!==s&&r(e,a,{get:()=>t[a],enumerable:!(p=n(t,a))||p.enumerable});return e};var f=e=>U(r({},"__esModule",{value:!0}),e);var l={};D(l,{useCasesModuleFactory:()=>h});module.exports=f(l);var m=require("inversify"),C=require("../../use-cases/authentication/AuthenticateUseCase"),c=require("../../use-cases/authentication/DecryptDataUseCase"),i=require("../../use-cases/authentication/EncryptDataUseCase"),o=require("./useCasesTypes");const h=()=>new m.ContainerModule(({bind:e})=>{e(o.useCasesTypes.AuthenticateUseCase).to(C.AuthenticateUseCase),e(o.useCasesTypes.EncryptDataUseCase).to(i.EncryptDataUseCase),e(o.useCasesTypes.DecryptDataUseCase).to(c.DecryptDataUseCase)});0&&(module.exports={useCasesModuleFactory});
2
2
  //# sourceMappingURL=useCasesModule.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/di/useCasesModule.ts"],
4
- "sourcesContent": ["import { ContainerModule } from \"inversify\";\n\nimport { AuthenticateUseCase } from \"@internal/use-cases/authentication/AuthenticateUseCase\";\n\nimport { useCasesTypes } from \"./useCasesTypes\";\n\nexport const useCasesModuleFactory = () =>\n new ContainerModule(({ bind }) => {\n bind(useCasesTypes.AuthenticateUseCase).to(AuthenticateUseCase);\n });\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAgC,qBAEhCC,EAAoC,kEAEpCC,EAA8B,2BAEvB,MAAMJ,EAAwB,IACnC,IAAI,kBAAgB,CAAC,CAAE,KAAAK,CAAK,IAAM,CAChCA,EAAK,gBAAc,mBAAmB,EAAE,GAAG,qBAAmB,CAChE,CAAC",
6
- "names": ["useCasesModule_exports", "__export", "useCasesModuleFactory", "__toCommonJS", "import_inversify", "import_AuthenticateUseCase", "import_useCasesTypes", "bind"]
4
+ "sourcesContent": ["import { ContainerModule } from \"inversify\";\n\nimport { AuthenticateUseCase } from \"@internal/use-cases/authentication/AuthenticateUseCase\";\nimport { DecryptDataUseCase } from \"@internal/use-cases/authentication/DecryptDataUseCase\";\nimport { EncryptDataUseCase } from \"@internal/use-cases/authentication/EncryptDataUseCase\";\n\nimport { useCasesTypes } from \"./useCasesTypes\";\n\nexport const useCasesModuleFactory = () =>\n new ContainerModule(({ bind }) => {\n bind(useCasesTypes.AuthenticateUseCase).to(AuthenticateUseCase);\n bind(useCasesTypes.EncryptDataUseCase).to(EncryptDataUseCase);\n bind(useCasesTypes.DecryptDataUseCase).to(DecryptDataUseCase);\n });\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAgC,qBAEhCC,EAAoC,kEACpCC,EAAmC,iEACnCC,EAAmC,iEAEnCC,EAA8B,2BAEvB,MAAMN,EAAwB,IACnC,IAAI,kBAAgB,CAAC,CAAE,KAAAO,CAAK,IAAM,CAChCA,EAAK,gBAAc,mBAAmB,EAAE,GAAG,qBAAmB,EAC9DA,EAAK,gBAAc,kBAAkB,EAAE,GAAG,oBAAkB,EAC5DA,EAAK,gBAAc,kBAAkB,EAAE,GAAG,oBAAkB,CAC9D,CAAC",
6
+ "names": ["useCasesModule_exports", "__export", "useCasesModuleFactory", "__toCommonJS", "import_inversify", "import_AuthenticateUseCase", "import_DecryptDataUseCase", "import_EncryptDataUseCase", "import_useCasesTypes", "bind"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var C=Object.prototype.hasOwnProperty;var h=(s,e)=>{for(var a in e)o(s,a,{get:e[a],enumerable:!0})},i=(s,e,a,c)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of u(e))!C.call(s,t)&&t!==a&&o(s,t,{get:()=>e[t],enumerable:!(c=n(e,t))||c.enumerable});return s};var p=s=>i(o({},"__esModule",{value:!0}),s);var y={};h(y,{useCasesTypes:()=>r});module.exports=p(y);const r={AuthenticateUseCase:Symbol.for("AuthenticateUseCase")};0&&(module.exports={useCasesTypes});
1
+ "use strict";var o=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var C=Object.prototype.hasOwnProperty;var p=(a,e)=>{for(var t in e)o(a,t,{get:e[t],enumerable:!0})},D=(a,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of c(e))!C.call(a,s)&&s!==t&&o(a,s,{get:()=>e[s],enumerable:!(r=y(e,s))||r.enumerable});return a};var U=a=>D(o({},"__esModule",{value:!0}),a);var b={};p(b,{useCasesTypes:()=>n});module.exports=U(b);const n={AuthenticateUseCase:Symbol.for("AuthenticateUseCase"),EncryptDataUseCase:Symbol.for("EncryptDataUseCase"),DecryptDataUseCase:Symbol.for("DecryptDataUseCase")};0&&(module.exports={useCasesTypes});
2
2
  //# sourceMappingURL=useCasesTypes.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/internal/use-cases/di/useCasesTypes.ts"],
4
- "sourcesContent": ["export const useCasesTypes = {\n AuthenticateUseCase: Symbol.for(\"AuthenticateUseCase\"),\n};\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GAAO,MAAME,EAAgB,CAC3B,oBAAqB,OAAO,IAAI,qBAAqB,CACvD",
4
+ "sourcesContent": ["export const useCasesTypes = {\n AuthenticateUseCase: Symbol.for(\"AuthenticateUseCase\"),\n EncryptDataUseCase: Symbol.for(\"EncryptDataUseCase\"),\n DecryptDataUseCase: Symbol.for(\"DecryptDataUseCase\"),\n};\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GAAO,MAAME,EAAgB,CAC3B,oBAAqB,OAAO,IAAI,qBAAqB,EACrD,mBAAoB,OAAO,IAAI,oBAAoB,EACnD,mBAAoB,OAAO,IAAI,oBAAoB,CACrD",
6
6
  "names": ["useCasesTypes_exports", "__export", "useCasesTypes", "__toCommonJS"]
7
7
  }
@@ -1,5 +1,5 @@
1
- "use strict";var c=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var f=(s,r)=>{for(var t in r)c(s,t,{get:r[t],enumerable:!0})},b=(s,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of P(r))!d.call(s,i)&&i!==t&&c(s,i,{get:()=>r[i],enumerable:!(n=y(r,i))||n.enumerable});return s};var L=s=>b(c({},"__esModule",{value:!0}),s);var K={};f(K,{LKRPBlock:()=>o});module.exports=L(K);var a=require("@ledgerhq/device-management-kit"),e=require("purify-ts"),h=require("./crypto"),l=require("./TLVBuilder"),m=require("./TLVParser");class o{constructor(r,t){this.bytes=r;this.data=t?(0,e.Just)((0,e.Right)(t)):e.Nothing}hashValue=e.Nothing;data;static fromHex(r){return new o((0,a.hexaStringToBuffer)(r)??new Uint8Array)}static fromData(r){const t=new l.TLVBuilder().addInt(1,1).addHash((0,a.hexaStringToBuffer)(r.parent)??new Uint8Array).addPublicKey(r.issuer).addInt(r.commands.length,1),n=t.build();r.commands.forEach(g=>t.push(g.toU8A()));const i=t.build().length,u=t.addSignature(r.signature).build(),p=u.slice(i,u.length);return new o(u,{...r,header:n,signature:p})}toString(){return(0,a.bufferToHexaString)(this.bytes).slice(2)}toU8A(){return this.bytes}parse(){return this.data.orDefaultLazy(()=>{const r=new m.TLVParser(this.bytes).parseBlockData();return this.data=(0,e.Just)(r),r})}toHuman(){return this.parse().chain(r=>e.Either.sequence(r.commands.map(t=>t.toHuman())).map(t=>({...r,commands:t}))).map(r=>[`Parent: ${r.parent}`,`Issuer: ${(0,a.bufferToHexaString)(r.issuer).slice(2)}`,`Commands:${r.commands.flatMap(t=>t.split(`
2
- `).map(n=>`
3
- ${n}`)).join("")}`,`Signature: ${(0,a.bufferToHexaString)(r.signature.slice(2)).slice(2)}`].join(`
4
- `))}hash(){return this.hashValue.orDefaultLazy(()=>{const r=h.CryptoUtils.hash(this.bytes);return(0,a.bufferToHexaString)(r).slice(2)})}}0&&(module.exports={LKRPBlock});
1
+ "use strict";var m=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var P=Object.prototype.hasOwnProperty;var g=(n,r)=>{for(var e in r)m(n,e,{get:r[e],enumerable:!0})},L=(n,r,e,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of y(r))!P.call(n,o)&&o!==e&&m(n,o,{get:()=>r[o],enumerable:!(s=p(r,o))||s.enumerable});return n};var B=n=>L(m({},"__esModule",{value:!0}),n);var b={};g(b,{LKRPBlock:()=>u});module.exports=B(b);var t=require("@ledgerhq/device-management-kit"),f=require("@noble/hashes/sha256"),a=require("purify-ts"),i=require("../models/Tags"),l=require("./TLVParser");class u{constructor(r,e){this.bytes=r;this.data=e?(0,a.Just)((0,a.Right)(e)):a.Nothing}hashValue=a.Nothing;data;static fromHex(r){return new u((0,t.hexaStringToBuffer)(r)??new Uint8Array)}static fromData(r){const e=new t.ByteArrayBuilder().encodeInTLVFromUInt8(i.GeneralTags.Int,1).encodeInTLVFromHexa(i.GeneralTags.Hash,r.parent).encodeInTLVFromBuffer(i.GeneralTags.PublicKey,r.issuer).encodeInTLVFromUInt8(i.GeneralTags.Int,r.commands.length).build(),s=new t.ByteArrayBuilder;r.commands.forEach(d=>s.addBufferToData(d.toU8A()));const o=s.build(),c=new t.ByteArrayBuilder().encodeInTLVFromBuffer(i.GeneralTags.Signature,r.signature).build(),h=new t.ByteArrayBuilder().addBufferToData(e).addBufferToData(o).addBufferToData(c).build();return new u(h,{...r,header:e,signature:c})}toString(){return(0,t.bufferToHexaString)(this.bytes,!1)}toU8A(){return this.bytes}parse(){return this.data.orDefaultLazy(()=>{const r=new l.TLVParser(this.bytes).parseBlockData();return this.data=(0,a.Just)(r),r})}toHuman(){return this.parse().chain(r=>a.Either.sequence(r.commands.map(e=>e.toHuman())).map(e=>({...r,commands:e}))).map(r=>[`Parent: ${r.parent}`,`Issuer: ${(0,t.bufferToHexaString)(r.issuer,!1)}`,`Commands:${r.commands.flatMap(e=>e.split(`
2
+ `).map(s=>`
3
+ ${s}`)).join("")}`,`Signature: ${(0,t.bufferToHexaString)(r.signature.slice(2),!1)}`].join(`
4
+ `))}hash(){return this.hashValue.orDefaultLazy(()=>{const r=(0,f.sha256)(this.bytes);return(0,t.bufferToHexaString)(r,!1)})}}0&&(module.exports={LKRPBlock});
5
5
  //# sourceMappingURL=LKRPBlock.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/internal/utils/LKRPBlock.ts"],
4
- "sourcesContent": ["import {\n bufferToHexaString,\n hexaStringToBuffer,\n} from \"@ledgerhq/device-management-kit\";\nimport { Either, Just, type Maybe, Nothing, Right } from \"purify-ts\";\n\nimport { type LKRPParsingError } from \"@api/app-binder/Errors\";\n\nimport { CryptoUtils } from \"./crypto\";\nimport { TLVBuilder } from \"./TLVBuilder\";\nimport { TLVParser } from \"./TLVParser\";\nimport { type LKRPBlockData, type LKRPBlockParsedData } from \"./types\";\n\nexport class LKRPBlock {\n private hashValue: Maybe<string> = Nothing; // Cache hash value for performance\n private data: Maybe<Either<LKRPParsingError, LKRPBlockParsedData>>;\n\n public constructor(\n private readonly bytes: Uint8Array,\n data?: LKRPBlockParsedData,\n ) {\n this.data = data ? Just(Right(data)) : Nothing;\n }\n\n static fromHex(hex: string): LKRPBlock {\n return new LKRPBlock(hexaStringToBuffer(hex) ?? new Uint8Array());\n }\n\n static fromData(data: LKRPBlockData): LKRPBlock {\n const builder = new TLVBuilder()\n .addInt(1, 1) // Version 1\n .addHash(hexaStringToBuffer(data.parent) ?? new Uint8Array())\n .addPublicKey(data.issuer)\n .addInt(data.commands.length, 1);\n\n const header = builder.build();\n\n data.commands.forEach((cmd) => builder.push(cmd.toU8A()));\n\n const sigStart = builder.build().length;\n const bytes = builder.addSignature(data.signature).build();\n const signature = bytes.slice(sigStart, bytes.length);\n\n return new LKRPBlock(bytes, { ...data, header, signature });\n }\n\n toString(): string {\n return bufferToHexaString(this.bytes).slice(2);\n }\n\n toU8A(): Uint8Array {\n return this.bytes;\n }\n\n parse(): Either<LKRPParsingError, LKRPBlockParsedData> {\n return this.data.orDefaultLazy(() => {\n const data = new TLVParser(this.bytes).parseBlockData();\n this.data = Just(data);\n return data;\n });\n }\n\n toHuman(): Either<LKRPParsingError, string> {\n return this.parse()\n .chain((data) =>\n Either.sequence(data.commands.map((cmd) => cmd.toHuman())).map(\n (commands) => ({ ...data, commands }),\n ),\n )\n .map((data) =>\n [\n `Parent: ${data.parent}`,\n `Issuer: ${bufferToHexaString(data.issuer).slice(2)}`,\n `Commands:${data.commands\n .flatMap((cmd) => cmd.split(\"\\n\").map((l) => `\\n ${l}`))\n .join(\"\")}`,\n `Signature: ${bufferToHexaString(data.signature.slice(2)).slice(2)}`,\n ].join(\"\\n\"),\n );\n }\n\n hash(): string {\n return this.hashValue.orDefaultLazy(() => {\n const hashValue = CryptoUtils.hash(this.bytes);\n return bufferToHexaString(hashValue).slice(2);\n });\n }\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,eAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAGO,2CACPC,EAAyD,qBAIzDC,EAA4B,oBAC5BC,EAA2B,wBAC3BC,EAA0B,uBAGnB,MAAMN,CAAU,CAId,YACYO,EACjBC,EACA,CAFiB,WAAAD,EAGjB,KAAK,KAAOC,KAAO,WAAK,SAAMA,CAAI,CAAC,EAAI,SACzC,CARQ,UAA2B,UAC3B,KASR,OAAO,QAAQC,EAAwB,CACrC,OAAO,IAAIT,KAAU,sBAAmBS,CAAG,GAAK,IAAI,UAAY,CAClE,CAEA,OAAO,SAASD,EAAgC,CAC9C,MAAME,EAAU,IAAI,aAAW,EAC5B,OAAO,EAAG,CAAC,EACX,WAAQ,sBAAmBF,EAAK,MAAM,GAAK,IAAI,UAAY,EAC3D,aAAaA,EAAK,MAAM,EACxB,OAAOA,EAAK,SAAS,OAAQ,CAAC,EAE3BG,EAASD,EAAQ,MAAM,EAE7BF,EAAK,SAAS,QAASI,GAAQF,EAAQ,KAAKE,EAAI,MAAM,CAAC,CAAC,EAExD,MAAMC,EAAWH,EAAQ,MAAM,EAAE,OAC3BH,EAAQG,EAAQ,aAAaF,EAAK,SAAS,EAAE,MAAM,EACnDM,EAAYP,EAAM,MAAMM,EAAUN,EAAM,MAAM,EAEpD,OAAO,IAAIP,EAAUO,EAAO,CAAE,GAAGC,EAAM,OAAAG,EAAQ,UAAAG,CAAU,CAAC,CAC5D,CAEA,UAAmB,CACjB,SAAO,sBAAmB,KAAK,KAAK,EAAE,MAAM,CAAC,CAC/C,CAEA,OAAoB,CAClB,OAAO,KAAK,KACd,CAEA,OAAuD,CACrD,OAAO,KAAK,KAAK,cAAc,IAAM,CACnC,MAAMN,EAAO,IAAI,YAAU,KAAK,KAAK,EAAE,eAAe,EACtD,YAAK,QAAO,QAAKA,CAAI,EACdA,CACT,CAAC,CACH,CAEA,SAA4C,CAC1C,OAAO,KAAK,MAAM,EACf,MAAOA,GACN,SAAO,SAASA,EAAK,SAAS,IAAKI,GAAQA,EAAI,QAAQ,CAAC,CAAC,EAAE,IACxDG,IAAc,CAAE,GAAGP,EAAM,SAAAO,CAAS,EACrC,CACF,EACC,IAAKP,GACJ,CACE,WAAWA,EAAK,MAAM,GACtB,cAAW,sBAAmBA,EAAK,MAAM,EAAE,MAAM,CAAC,CAAC,GACnD,YAAYA,EAAK,SACd,QAASI,GAAQA,EAAI,MAAM;AAAA,CAAI,EAAE,IAAKI,GAAM;AAAA,IAAOA,CAAC,EAAE,CAAC,EACvD,KAAK,EAAE,CAAC,GACX,iBAAc,sBAAmBR,EAAK,UAAU,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EACpE,EAAE,KAAK;AAAA,CAAI,CACb,CACJ,CAEA,MAAe,CACb,OAAO,KAAK,UAAU,cAAc,IAAM,CACxC,MAAMS,EAAY,cAAY,KAAK,KAAK,KAAK,EAC7C,SAAO,sBAAmBA,CAAS,EAAE,MAAM,CAAC,CAC9C,CAAC,CACH,CACF",
6
- "names": ["LKRPBlock_exports", "__export", "LKRPBlock", "__toCommonJS", "import_device_management_kit", "import_purify_ts", "import_crypto", "import_TLVBuilder", "import_TLVParser", "bytes", "data", "hex", "builder", "header", "cmd", "sigStart", "signature", "commands", "l", "hashValue"]
4
+ "sourcesContent": ["import {\n bufferToHexaString,\n ByteArrayBuilder,\n hexaStringToBuffer,\n} from \"@ledgerhq/device-management-kit\";\nimport { sha256 } from \"@noble/hashes/sha256\";\nimport { Either, Just, type Maybe, Nothing, Right } from \"purify-ts\";\n\nimport { type LKRPParsingError } from \"@api/model/Errors\";\nimport {\n type LKRPBlockData,\n type LKRPBlockParsedData,\n} from \"@internal/models/LKRPBlockTypes\";\nimport { GeneralTags } from \"@internal/models/Tags\";\n\nimport { TLVParser } from \"./TLVParser\";\n\nexport class LKRPBlock {\n private hashValue: Maybe<string> = Nothing; // Cache hash value for performance\n private data: Maybe<Either<LKRPParsingError, LKRPBlockParsedData>>;\n\n public constructor(\n private readonly bytes: Uint8Array,\n data?: LKRPBlockParsedData,\n ) {\n this.data = data ? Just(Right(data)) : Nothing;\n }\n\n static fromHex(hex: string): LKRPBlock {\n return new LKRPBlock(hexaStringToBuffer(hex) ?? new Uint8Array());\n }\n\n static fromData(data: LKRPBlockData): LKRPBlock {\n const header = new ByteArrayBuilder()\n .encodeInTLVFromUInt8(GeneralTags.Int, 1) // Version 1\n .encodeInTLVFromHexa(GeneralTags.Hash, data.parent)\n .encodeInTLVFromBuffer(GeneralTags.PublicKey, data.issuer)\n .encodeInTLVFromUInt8(GeneralTags.Int, data.commands.length)\n .build();\n\n const commandsBuilder = new ByteArrayBuilder();\n data.commands.forEach((cmd) =>\n commandsBuilder.addBufferToData(cmd.toU8A()),\n );\n const commands = commandsBuilder.build();\n\n const signature = new ByteArrayBuilder()\n .encodeInTLVFromBuffer(GeneralTags.Signature, data.signature)\n .build();\n\n const bytes = new ByteArrayBuilder()\n .addBufferToData(header)\n .addBufferToData(commands)\n .addBufferToData(signature)\n .build();\n\n return new LKRPBlock(bytes, { ...data, header, signature });\n }\n\n toString(): string {\n return bufferToHexaString(this.bytes, false);\n }\n\n toU8A(): Uint8Array {\n return this.bytes;\n }\n\n parse(): Either<LKRPParsingError, LKRPBlockParsedData> {\n return this.data.orDefaultLazy(() => {\n const data = new TLVParser(this.bytes).parseBlockData();\n this.data = Just(data);\n return data;\n });\n }\n\n toHuman(): Either<LKRPParsingError, string> {\n return this.parse()\n .chain((data) =>\n Either.sequence(data.commands.map((cmd) => cmd.toHuman())).map(\n (commands) => ({ ...data, commands }),\n ),\n )\n .map((data) =>\n [\n `Parent: ${data.parent}`,\n `Issuer: ${bufferToHexaString(data.issuer, false)}`,\n `Commands:${data.commands\n .flatMap((cmd) => cmd.split(\"\\n\").map((l) => `\\n ${l}`))\n .join(\"\")}`,\n `Signature: ${bufferToHexaString(data.signature.slice(2), false)}`,\n ].join(\"\\n\"),\n );\n }\n\n hash(): string {\n return this.hashValue.orDefaultLazy(() => {\n const hashValue = sha256(this.bytes);\n return bufferToHexaString(hashValue, false);\n });\n }\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,eAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAIO,2CACPC,EAAuB,gCACvBC,EAAyD,qBAOzDC,EAA4B,iCAE5BC,EAA0B,uBAEnB,MAAMN,CAAU,CAId,YACYO,EACjBC,EACA,CAFiB,WAAAD,EAGjB,KAAK,KAAOC,KAAO,WAAK,SAAMA,CAAI,CAAC,EAAI,SACzC,CARQ,UAA2B,UAC3B,KASR,OAAO,QAAQC,EAAwB,CACrC,OAAO,IAAIT,KAAU,sBAAmBS,CAAG,GAAK,IAAI,UAAY,CAClE,CAEA,OAAO,SAASD,EAAgC,CAC9C,MAAME,EAAS,IAAI,mBAAiB,EACjC,qBAAqB,cAAY,IAAK,CAAC,EACvC,oBAAoB,cAAY,KAAMF,EAAK,MAAM,EACjD,sBAAsB,cAAY,UAAWA,EAAK,MAAM,EACxD,qBAAqB,cAAY,IAAKA,EAAK,SAAS,MAAM,EAC1D,MAAM,EAEHG,EAAkB,IAAI,mBAC5BH,EAAK,SAAS,QAASI,GACrBD,EAAgB,gBAAgBC,EAAI,MAAM,CAAC,CAC7C,EACA,MAAMC,EAAWF,EAAgB,MAAM,EAEjCG,EAAY,IAAI,mBAAiB,EACpC,sBAAsB,cAAY,UAAWN,EAAK,SAAS,EAC3D,MAAM,EAEHD,EAAQ,IAAI,mBAAiB,EAChC,gBAAgBG,CAAM,EACtB,gBAAgBG,CAAQ,EACxB,gBAAgBC,CAAS,EACzB,MAAM,EAET,OAAO,IAAId,EAAUO,EAAO,CAAE,GAAGC,EAAM,OAAAE,EAAQ,UAAAI,CAAU,CAAC,CAC5D,CAEA,UAAmB,CACjB,SAAO,sBAAmB,KAAK,MAAO,EAAK,CAC7C,CAEA,OAAoB,CAClB,OAAO,KAAK,KACd,CAEA,OAAuD,CACrD,OAAO,KAAK,KAAK,cAAc,IAAM,CACnC,MAAMN,EAAO,IAAI,YAAU,KAAK,KAAK,EAAE,eAAe,EACtD,YAAK,QAAO,QAAKA,CAAI,EACdA,CACT,CAAC,CACH,CAEA,SAA4C,CAC1C,OAAO,KAAK,MAAM,EACf,MAAOA,GACN,SAAO,SAASA,EAAK,SAAS,IAAKI,GAAQA,EAAI,QAAQ,CAAC,CAAC,EAAE,IACxDC,IAAc,CAAE,GAAGL,EAAM,SAAAK,CAAS,EACrC,CACF,EACC,IAAKL,GACJ,CACE,WAAWA,EAAK,MAAM,GACtB,cAAW,sBAAmBA,EAAK,OAAQ,EAAK,CAAC,GACjD,YAAYA,EAAK,SACd,QAASI,GAAQA,EAAI,MAAM;AAAA,CAAI,EAAE,IAAKG,GAAM;AAAA,IAAOA,CAAC,EAAE,CAAC,EACvD,KAAK,EAAE,CAAC,GACX,iBAAc,sBAAmBP,EAAK,UAAU,MAAM,CAAC,EAAG,EAAK,CAAC,EAClE,EAAE,KAAK;AAAA,CAAI,CACb,CACJ,CAEA,MAAe,CACb,OAAO,KAAK,UAAU,cAAc,IAAM,CACxC,MAAMQ,KAAY,UAAO,KAAK,KAAK,EACnC,SAAO,sBAAmBA,EAAW,EAAK,CAC5C,CAAC,CACH,CACF",
6
+ "names": ["LKRPBlock_exports", "__export", "LKRPBlock", "__toCommonJS", "import_device_management_kit", "import_sha256", "import_purify_ts", "import_Tags", "import_TLVParser", "bytes", "data", "hex", "header", "commandsBuilder", "cmd", "commands", "signature", "l", "hashValue"]
7
7
  }
@@ -1,4 +1,4 @@
1
- "use strict";var a=require("purify-ts"),r=require("../../api/app-binder/Errors"),i=require("./hex"),d=require("./LKRPBlock"),f=require("./LKRPCommand"),n=require("./TLVTags");const t={parent:"0000",issuer:new Uint8Array([1,2,3]),commands:[f.LKRPCommand.fromHex("10020102"),f.LKRPCommand.fromHex("11020304")],signature:new Uint8Array([4,5,6])},s=["010101","02020000","0603010203","010102"].join(""),b=[...s,"10020102","11020304","0303040506"].join(""),o={...t,header:(0,i.hexToBytes)(s),signature:Uint8Array.from([n.GeneralTags.Signature,3,...t.signature])};describe("LKRPBlock",()=>{describe("fromData",()=>{it("should create a Block from data",()=>{const e=d.LKRPBlock.fromData(t);expect(e.parse()).toStrictEqual((0,a.Right)(o)),expect(e.toString()).toBe(b)})}),describe("toString",()=>{it("should return the hex representation of the block",()=>{const e=d.LKRPBlock.fromHex(b);expect(e.toString()).toBe(b)})}),describe("toU8A",()=>{it("should return the bytes of the block",()=>{const e=new Uint8Array([1,2,3,4,5,6,7,8]),c=new d.LKRPBlock(e);expect(c.toU8A()).toBe(e)})}),describe("parse",()=>{it("should parse the block data correctly",()=>{const c=d.LKRPBlock.fromHex(b).parse();expect(c).toStrictEqual((0,a.Right)(o))}),it("should fail if the block data is invalid",()=>{const e=d.LKRPBlock.fromHex("invalid");expect(e.parse()).toStrictEqual((0,a.Left)(new r.LKRPParsingError("Unexpected end of TLV")))})}),describe("toHuman",()=>{it("should return a human-readable representation of the block",()=>{const e=`
1
+ "use strict";var r=require("@ledgerhq/device-management-kit"),c=require("purify-ts"),i=require("../../api/model/Errors"),n=require("../models/Tags"),d=require("./LKRPBlock"),f=require("./LKRPCommand");const t={parent:"0000",issuer:new Uint8Array([1,2,3]),commands:[f.LKRPCommand.fromHex("10020102"),f.LKRPCommand.fromHex("11020304")],signature:new Uint8Array([4,5,6])},s=["010101","02020000","0603010203","010102"].join(""),b=[...s,"10020102","11020304","0303040506"].join(""),o={...t,header:(0,r.hexaStringToBuffer)(s),signature:Uint8Array.from([n.GeneralTags.Signature,3,...t.signature])};describe("LKRPBlock",()=>{describe("fromData",()=>{it("should create a Block from data",()=>{const e=d.LKRPBlock.fromData(t);expect(e.parse()).toStrictEqual((0,c.Right)(o)),expect(e.toString()).toBe(b)})}),describe("toString",()=>{it("should return the hex representation of the block",()=>{const e=d.LKRPBlock.fromHex(b);expect(e.toString()).toBe(b)})}),describe("toU8A",()=>{it("should return the bytes of the block",()=>{const e=new Uint8Array([1,2,3,4,5,6,7,8]),a=new d.LKRPBlock(e);expect(a.toU8A()).toBe(e)})}),describe("parse",()=>{it("should parse the block data correctly",()=>{const a=d.LKRPBlock.fromHex(b).parse();expect(a).toStrictEqual((0,c.Right)(o))}),it("should fail if the block data is invalid",()=>{const e=d.LKRPBlock.fromHex("invalid");expect(e.parse()).toStrictEqual((0,c.Left)(new i.LKRPParsingError("Unexpected end of TLV")))})}),describe("toHuman",()=>{it("should return a human-readable representation of the block",()=>{const e=`
2
2
  01 01 01
3
3
  02 20 1d bf 17 52 c5 4b 9f b5 4f b7 c3 63 c1 e6 15 f7 2f d9 61 b7 97 e6 f0 9e 6c 1d 1b 6e db 28 5a 6d
4
4
  06 21 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21
@@ -19,6 +19,6 @@
19
19
  06 21 03 d4 c6 1d da 2a af 76 29 54 fc e9 73 96 d9 be 03 99 e1 dc 75 c3 b7 90 c7 a3 4d de 85 96 a1 18 12
20
20
  06 21 02 45 f1 1d 7d 78 bd 22 76 45 11 8a bb 20 b4 07 ff 97 8d f8 7a 6b b3 c4 46 1d 63 37 66 85 8f 98 f5
21
21
  03 47 30 45 02 21 00 a0 ea 9d ee 12 f3 83 13 2f 90 72 ad 47 85 a4 15 14 75 d5 70 4a a9 ff 7f 95 52 e9 03 47 b4 ce be 02 20 71 a3 e4 4c 1f 4f a6 4b c6 e2 f4 06 fa 00 fc b4 6f 70 1c 99 49 29 12 bf 33 c7 3e df b2 d5 d1 71
22
- `.replace(/\s/g,""),l=d.LKRPBlock.fromHex(e).toHuman();expect(l).toStrictEqual((0,a.Right)(["Parent: 1dbf1752c54b9fb54fb7c363c1e615f72fd961b797e6f09e6c1d1b6edb285a6d","Issuer: 0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021","Commands:"," Derive(0x15):"," path: m/0'/16'/1'"," groupKey: 034f37312d9babd8c032e1dd2de33da369fa1ce30f005bbba600d17330ba392cb2"," initializationVector: b6da2c97a3ec8b074f38f1508aed3335"," encryptedXpriv: d21f8f307702333f7a593bebd798a6b06eb5904277268a91350a3c1b1ee67c24b5a47d228c60d0fbc1524eac1bcf123e6e26b5d71708291cc08dcf49de0bb34bacf20093524ca6565d87c636b24475b2"," ephemeralPublicKey: 0293feb66412536d3d71d5c7afac96a36ea8c685889eebcf6f6f82685712fef150"," AddMember(0x11):"," name: debug-d4c61d"," publicKey: 03d4c61dda2aaf762954fce97396d9be0399e1dc75c3b790c7a34dde8596a11812"," permissions: 4294967295"," PublishKey(0x12):"," initializationVector: e7b736c40b14a830fb23aaded8eae544"," encryptedXpriv: df7e808c794675d0a2d466d4efc8ecd07d52368016100d34d6fdb8e6da86e92fbbb7110cb56429b83b1cb974ed4b705143f691b5b81468abd2c526266a6dee6df4fdf1a9d81fe74cda4f61c98960b4db"," recipient: 03d4c61dda2aaf762954fce97396d9be0399e1dc75c3b790c7a34dde8596a11812"," ephemeralPublicKey: 0245f11d7d78bd227645118abb20b407ff978df87a6bb3c4461d633766858f98f5","Signature: 3045022100a0ea9dee12f383132f9072ad4785a4151475d5704aa9ff7f9552e90347b4cebe022071a3e44c1f4fa64bc6e2f406fa00fcb46f701c99492912bf33c73edfb2d5d171"].join(`
23
- `)))})}),describe("hash",()=>{it("should return the hash of the block",()=>{const c=d.LKRPBlock.fromHex(b).hash();expect(c).toBe("7cf783bc15c062242ab92796237da3b192361da7645c488d5023698d4f9cc952")})})});
22
+ `.replace(/\s/g,""),l=d.LKRPBlock.fromHex(e).toHuman();expect(l).toStrictEqual((0,c.Right)(["Parent: 1dbf1752c54b9fb54fb7c363c1e615f72fd961b797e6f09e6c1d1b6edb285a6d","Issuer: 0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021","Commands:"," Derive(0x15):"," path: m/0'/16'/1'"," groupKey: 034f37312d9babd8c032e1dd2de33da369fa1ce30f005bbba600d17330ba392cb2"," initializationVector: b6da2c97a3ec8b074f38f1508aed3335"," encryptedXpriv: d21f8f307702333f7a593bebd798a6b06eb5904277268a91350a3c1b1ee67c24b5a47d228c60d0fbc1524eac1bcf123e6e26b5d71708291cc08dcf49de0bb34bacf20093524ca6565d87c636b24475b2"," ephemeralPublicKey: 0293feb66412536d3d71d5c7afac96a36ea8c685889eebcf6f6f82685712fef150"," AddMember(0x11):"," name: debug-d4c61d"," publicKey: 03d4c61dda2aaf762954fce97396d9be0399e1dc75c3b790c7a34dde8596a11812"," permissions: 4294967295"," PublishKey(0x12):"," initializationVector: e7b736c40b14a830fb23aaded8eae544"," encryptedXpriv: df7e808c794675d0a2d466d4efc8ecd07d52368016100d34d6fdb8e6da86e92fbbb7110cb56429b83b1cb974ed4b705143f691b5b81468abd2c526266a6dee6df4fdf1a9d81fe74cda4f61c98960b4db"," recipient: 03d4c61dda2aaf762954fce97396d9be0399e1dc75c3b790c7a34dde8596a11812"," ephemeralPublicKey: 0245f11d7d78bd227645118abb20b407ff978df87a6bb3c4461d633766858f98f5","Signature: 3045022100a0ea9dee12f383132f9072ad4785a4151475d5704aa9ff7f9552e90347b4cebe022071a3e44c1f4fa64bc6e2f406fa00fcb46f701c99492912bf33c73edfb2d5d171"].join(`
23
+ `)))})}),describe("hash",()=>{it("should return the hash of the block",()=>{const a=d.LKRPBlock.fromHex(b).hash();expect(a).toBe("7cf783bc15c062242ab92796237da3b192361da7645c488d5023698d4f9cc952")})})});
24
24
  //# sourceMappingURL=LKRPBlock.test.js.map