@brightchain/brightchain-api-lib 0.23.21 → 0.24.0

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 (452) hide show
  1. package/package.json +5 -5
  2. package/src/lib/__tests__/fixtures/mock-backend-brightchain-member.d.ts.map +1 -1
  3. package/src/lib/__tests__/fixtures/mock-backend-brightchain-member.js +11 -0
  4. package/src/lib/__tests__/fixtures/mock-backend-brightchain-member.js.map +1 -1
  5. package/src/lib/__tests__/fixtures/mocked-model.js +63 -60
  6. package/src/lib/__tests__/fixtures/mocked-model.js.map +1 -1
  7. package/src/lib/application.d.ts +1 -1
  8. package/src/lib/application.d.ts.map +1 -1
  9. package/src/lib/application.js +113 -33
  10. package/src/lib/application.js.map +1 -1
  11. package/src/lib/auth/aclEnforcedAvailability.js +4 -0
  12. package/src/lib/auth/aclEnforcedAvailability.js.map +1 -1
  13. package/src/lib/auth/aclEnforcedBlockStore.js +7 -0
  14. package/src/lib/auth/aclEnforcedBlockStore.js.map +1 -1
  15. package/src/lib/auth/ecdsaNodeAuthenticator.js +1 -0
  16. package/src/lib/auth/ecdsaNodeAuthenticator.js.map +1 -1
  17. package/src/lib/auth/poolAclBootstrap.js +2 -0
  18. package/src/lib/auth/poolAclBootstrap.js.map +1 -1
  19. package/src/lib/auth/poolAclStore.js +2 -1
  20. package/src/lib/auth/poolAclStore.js.map +1 -1
  21. package/src/lib/auth/poolAclUpdater.js +4 -0
  22. package/src/lib/auth/poolAclUpdater.js.map +1 -1
  23. package/src/lib/availability/availabilityMetrics.js +43 -45
  24. package/src/lib/availability/availabilityMetrics.js.map +1 -1
  25. package/src/lib/availability/availabilityService.js +26 -20
  26. package/src/lib/availability/availabilityService.js.map +1 -1
  27. package/src/lib/availability/blockRegistry.js +46 -25
  28. package/src/lib/availability/blockRegistry.js.map +1 -1
  29. package/src/lib/availability/discoveryProtocol.js +10 -8
  30. package/src/lib/availability/discoveryProtocol.js.map +1 -1
  31. package/src/lib/availability/gossipService.js +56 -45
  32. package/src/lib/availability/gossipService.js.map +1 -1
  33. package/src/lib/availability/heartbeatMonitor.js +22 -20
  34. package/src/lib/availability/heartbeatMonitor.js.map +1 -1
  35. package/src/lib/availability/poolDiscoveryService.js +7 -1
  36. package/src/lib/availability/poolDiscoveryService.js.map +1 -1
  37. package/src/lib/availability/quorumGossipHandler.js +13 -6
  38. package/src/lib/availability/quorumGossipHandler.js.map +1 -1
  39. package/src/lib/availability/reconciliationService.js +18 -12
  40. package/src/lib/availability/reconciliationService.js.map +1 -1
  41. package/src/lib/blockFetch/blockFetcher.js +14 -8
  42. package/src/lib/blockFetch/blockFetcher.js.map +1 -1
  43. package/src/lib/blockFetch/fetchQueue.js +9 -7
  44. package/src/lib/blockFetch/fetchQueue.js.map +1 -1
  45. package/src/lib/blockFetch/httpBlockFetchTransport.js +2 -0
  46. package/src/lib/blockFetch/httpBlockFetchTransport.js.map +1 -1
  47. package/src/lib/browserKeyring.js +5 -2
  48. package/src/lib/browserKeyring.js.map +1 -1
  49. package/src/lib/controllers/api/blocks.d.ts.map +1 -1
  50. package/src/lib/controllers/api/blocks.js +9 -3
  51. package/src/lib/controllers/api/blocks.js.map +1 -1
  52. package/src/lib/controllers/api/brighthub/connectionController.d.ts +80 -0
  53. package/src/lib/controllers/api/brighthub/connectionController.d.ts.map +1 -0
  54. package/src/lib/controllers/api/brighthub/connectionController.js +890 -0
  55. package/src/lib/controllers/api/brighthub/connectionController.js.map +1 -0
  56. package/src/lib/controllers/api/brighthub/index.d.ts +9 -0
  57. package/src/lib/controllers/api/brighthub/index.d.ts.map +1 -0
  58. package/src/lib/controllers/api/brighthub/index.js +12 -0
  59. package/src/lib/controllers/api/brighthub/index.js.map +1 -0
  60. package/src/lib/controllers/api/brighthub/messagingController.d.ts +84 -0
  61. package/src/lib/controllers/api/brighthub/messagingController.d.ts.map +1 -0
  62. package/src/lib/controllers/api/brighthub/messagingController.js +1077 -0
  63. package/src/lib/controllers/api/brighthub/messagingController.js.map +1 -0
  64. package/src/lib/controllers/api/brighthub/notificationController.d.ts +89 -0
  65. package/src/lib/controllers/api/brighthub/notificationController.d.ts.map +1 -0
  66. package/src/lib/controllers/api/brighthub/notificationController.js +444 -0
  67. package/src/lib/controllers/api/brighthub/notificationController.js.map +1 -0
  68. package/src/lib/controllers/api/brighthub/postController.d.ts +75 -0
  69. package/src/lib/controllers/api/brighthub/postController.d.ts.map +1 -0
  70. package/src/lib/controllers/api/brighthub/postController.js +388 -0
  71. package/src/lib/controllers/api/brighthub/postController.js.map +1 -0
  72. package/src/lib/controllers/api/brighthub/timelineController.d.ts +74 -0
  73. package/src/lib/controllers/api/brighthub/timelineController.d.ts.map +1 -0
  74. package/src/lib/controllers/api/brighthub/timelineController.js +418 -0
  75. package/src/lib/controllers/api/brighthub/timelineController.js.map +1 -0
  76. package/src/lib/controllers/api/brightpass.d.ts.map +1 -1
  77. package/src/lib/controllers/api/brightpass.js +46 -4
  78. package/src/lib/controllers/api/brightpass.js.map +1 -1
  79. package/src/lib/controllers/api/cbl.js +1 -0
  80. package/src/lib/controllers/api/cbl.js.map +1 -1
  81. package/src/lib/controllers/api/channels.js +2 -2
  82. package/src/lib/controllers/api/channels.js.map +1 -1
  83. package/src/lib/controllers/api/conversations.js +1 -1
  84. package/src/lib/controllers/api/conversations.js.map +1 -1
  85. package/src/lib/controllers/api/docs.js +2 -1
  86. package/src/lib/controllers/api/docs.js.map +1 -1
  87. package/src/lib/controllers/api/emails.d.ts.map +1 -1
  88. package/src/lib/controllers/api/emails.js +16 -2
  89. package/src/lib/controllers/api/emails.js.map +1 -1
  90. package/src/lib/controllers/api/explodingMessages.js +2 -4
  91. package/src/lib/controllers/api/explodingMessages.js.map +1 -1
  92. package/src/lib/controllers/api/groups.js +2 -2
  93. package/src/lib/controllers/api/groups.js.map +1 -1
  94. package/src/lib/controllers/api/health.d.ts +9 -2
  95. package/src/lib/controllers/api/health.d.ts.map +1 -1
  96. package/src/lib/controllers/api/health.js +48 -6
  97. package/src/lib/controllers/api/health.js.map +1 -1
  98. package/src/lib/controllers/api/index.d.ts +1 -0
  99. package/src/lib/controllers/api/index.d.ts.map +1 -1
  100. package/src/lib/controllers/api/index.js +1 -0
  101. package/src/lib/controllers/api/index.js.map +1 -1
  102. package/src/lib/controllers/api/introspection.js +2 -0
  103. package/src/lib/controllers/api/introspection.js.map +1 -1
  104. package/src/lib/controllers/api/messages.js +1 -1
  105. package/src/lib/controllers/api/messages.js.map +1 -1
  106. package/src/lib/controllers/api/nodes.js +6 -6
  107. package/src/lib/controllers/api/nodes.js.map +1 -1
  108. package/src/lib/controllers/api/quorum.d.ts +1 -1
  109. package/src/lib/controllers/api/quorum.d.ts.map +1 -1
  110. package/src/lib/controllers/api/quorum.js +3 -2
  111. package/src/lib/controllers/api/quorum.js.map +1 -1
  112. package/src/lib/controllers/api/scbl.js +3 -0
  113. package/src/lib/controllers/api/scbl.js.map +1 -1
  114. package/src/lib/controllers/api/sessions.d.ts +18 -2
  115. package/src/lib/controllers/api/sessions.d.ts.map +1 -1
  116. package/src/lib/controllers/api/sessions.js +60 -3
  117. package/src/lib/controllers/api/sessions.js.map +1 -1
  118. package/src/lib/controllers/api/sync.js +4 -4
  119. package/src/lib/controllers/api/sync.js.map +1 -1
  120. package/src/lib/controllers/api/user.d.ts +2 -0
  121. package/src/lib/controllers/api/user.d.ts.map +1 -1
  122. package/src/lib/controllers/api/user.js +95 -3
  123. package/src/lib/controllers/api/user.js.map +1 -1
  124. package/src/lib/controllers/identity/deviceController.js +2 -2
  125. package/src/lib/controllers/identity/deviceController.js.map +1 -1
  126. package/src/lib/controllers/identity/directoryController.js +1 -1
  127. package/src/lib/controllers/identity/directoryController.js.map +1 -1
  128. package/src/lib/controllers/identity/identityProofController.js +4 -6
  129. package/src/lib/controllers/identity/identityProofController.js.map +1 -1
  130. package/src/lib/databaseInit.d.ts +3 -3
  131. package/src/lib/databaseInit.js +5 -5
  132. package/src/lib/databaseInit.js.map +1 -1
  133. package/src/lib/datastore/block-document-store.d.ts.map +1 -1
  134. package/src/lib/datastore/block-document-store.js +18 -6
  135. package/src/lib/datastore/block-document-store.js.map +1 -1
  136. package/src/lib/datastore/document-store.d.ts.map +1 -1
  137. package/src/lib/datastore/memory-document-store.js +5 -2
  138. package/src/lib/datastore/memory-document-store.js.map +1 -1
  139. package/src/lib/encryption/encryptedMetadataService.js +2 -0
  140. package/src/lib/encryption/encryptedMetadataService.js.map +1 -1
  141. package/src/lib/encryption/encryptionAwareReplication.js +3 -0
  142. package/src/lib/encryption/encryptionAwareReplication.js.map +1 -1
  143. package/src/lib/encryption/errors.d.ts.map +1 -1
  144. package/src/lib/encryption/errors.js +8 -0
  145. package/src/lib/encryption/errors.js.map +1 -1
  146. package/src/lib/encryption/poolKeyManager.js +2 -0
  147. package/src/lib/encryption/poolKeyManager.js.map +1 -1
  148. package/src/lib/environment.js +10 -0
  149. package/src/lib/environment.js.map +1 -1
  150. package/src/lib/errors/express-validation.js +1 -0
  151. package/src/lib/errors/express-validation.js.map +1 -1
  152. package/src/lib/errors/invalid-backup-code-version.js +1 -0
  153. package/src/lib/errors/invalid-backup-code-version.js.map +1 -1
  154. package/src/lib/errors/memberIndexSchemaValidationError.js +1 -0
  155. package/src/lib/errors/memberIndexSchemaValidationError.js.map +1 -1
  156. package/src/lib/errors/missing-validated-data.js +2 -0
  157. package/src/lib/errors/missing-validated-data.js.map +1 -1
  158. package/src/lib/errors/token-not-found.js +1 -0
  159. package/src/lib/errors/token-not-found.js.map +1 -1
  160. package/src/lib/errors/typed-error-local.js +3 -0
  161. package/src/lib/errors/typed-error-local.js.map +1 -1
  162. package/src/lib/interfaces/brightpass/index.d.ts +103 -0
  163. package/src/lib/interfaces/brightpass/index.d.ts.map +1 -0
  164. package/src/lib/interfaces/brightpass/index.js +11 -0
  165. package/src/lib/interfaces/brightpass/index.js.map +1 -0
  166. package/src/lib/interfaces/environment.d.ts +1 -1
  167. package/src/lib/interfaces/environment.d.ts.map +1 -1
  168. package/src/lib/interfaces/index.d.ts +1 -0
  169. package/src/lib/interfaces/index.d.ts.map +1 -1
  170. package/src/lib/interfaces/member/memberProfileResponse.d.ts.map +1 -1
  171. package/src/lib/interfaces/member/operational.d.ts.map +1 -1
  172. package/src/lib/interfaces/member-init-config.d.ts +1 -1
  173. package/src/lib/interfaces/member-init-config.d.ts.map +1 -1
  174. package/src/lib/interfaces/responses/api-backup-codes-response.d.ts.map +1 -1
  175. package/src/lib/interfaces/responses/api-challenge-response.d.ts.map +1 -1
  176. package/src/lib/interfaces/responses/api-code-count-response.d.ts.map +1 -1
  177. package/src/lib/interfaces/responses/api-detailed-health-response.d.ts.map +1 -1
  178. package/src/lib/interfaces/responses/api-discover-block-response.d.ts.map +1 -1
  179. package/src/lib/interfaces/responses/api-express-validation-error.d.ts.map +1 -1
  180. package/src/lib/interfaces/responses/api-get-block-response.d.ts.map +1 -1
  181. package/src/lib/interfaces/responses/api-get-node-response.d.ts.map +1 -1
  182. package/src/lib/interfaces/responses/api-health-response.d.ts.map +1 -1
  183. package/src/lib/interfaces/responses/api-list-nodes-response.d.ts.map +1 -1
  184. package/src/lib/interfaces/responses/api-login-response.d.ts.map +1 -1
  185. package/src/lib/interfaces/responses/api-members-response.d.ts.map +1 -1
  186. package/src/lib/interfaces/responses/api-mnemonic-response.d.ts.map +1 -1
  187. package/src/lib/interfaces/responses/api-reconcile-response.d.ts.map +1 -1
  188. package/src/lib/interfaces/responses/api-register-node-response.d.ts.map +1 -1
  189. package/src/lib/interfaces/responses/api-registration-response.d.ts.map +1 -1
  190. package/src/lib/interfaces/responses/api-replicate-block-response.d.ts.map +1 -1
  191. package/src/lib/interfaces/responses/api-request-user-response.d.ts.map +1 -1
  192. package/src/lib/interfaces/responses/api-store-block-response.d.ts.map +1 -1
  193. package/src/lib/interfaces/responses/api-store-cbl-response.d.ts.map +1 -1
  194. package/src/lib/interfaces/responses/api-sync-request-response.d.ts.map +1 -1
  195. package/src/lib/interfaces/responses/brighthub/api-connection-response.d.ts +21 -0
  196. package/src/lib/interfaces/responses/brighthub/api-connection-response.d.ts.map +1 -0
  197. package/src/lib/interfaces/responses/brighthub/api-connection-response.js +3 -0
  198. package/src/lib/interfaces/responses/brighthub/api-connection-response.js.map +1 -0
  199. package/src/lib/interfaces/responses/brighthub/api-messaging-response.d.ts +39 -0
  200. package/src/lib/interfaces/responses/brighthub/api-messaging-response.d.ts.map +1 -0
  201. package/src/lib/interfaces/responses/brighthub/api-messaging-response.js +3 -0
  202. package/src/lib/interfaces/responses/brighthub/api-messaging-response.js.map +1 -0
  203. package/src/lib/interfaces/responses/brighthub/api-notification-response.d.ts +30 -0
  204. package/src/lib/interfaces/responses/brighthub/api-notification-response.d.ts.map +1 -0
  205. package/src/lib/interfaces/responses/brighthub/api-notification-response.js +3 -0
  206. package/src/lib/interfaces/responses/brighthub/api-notification-response.js.map +1 -0
  207. package/src/lib/interfaces/responses/brighthub/api-post-response.d.ts +21 -0
  208. package/src/lib/interfaces/responses/brighthub/api-post-response.d.ts.map +1 -0
  209. package/src/lib/interfaces/responses/brighthub/api-post-response.js +3 -0
  210. package/src/lib/interfaces/responses/brighthub/api-post-response.js.map +1 -0
  211. package/src/lib/interfaces/responses/brighthub/api-timeline-response.d.ts +14 -0
  212. package/src/lib/interfaces/responses/brighthub/api-timeline-response.d.ts.map +1 -0
  213. package/src/lib/interfaces/responses/brighthub/api-timeline-response.js +3 -0
  214. package/src/lib/interfaces/responses/brighthub/api-timeline-response.js.map +1 -0
  215. package/src/lib/interfaces/responses/brighthub/api-user-profile-response.d.ts +10 -0
  216. package/src/lib/interfaces/responses/brighthub/api-user-profile-response.d.ts.map +1 -0
  217. package/src/lib/interfaces/responses/brighthub/api-user-profile-response.js +3 -0
  218. package/src/lib/interfaces/responses/brighthub/api-user-profile-response.js.map +1 -0
  219. package/src/lib/interfaces/responses/brighthub/index.d.ts +13 -0
  220. package/src/lib/interfaces/responses/brighthub/index.d.ts.map +1 -0
  221. package/src/lib/interfaces/responses/brighthub/index.js +9 -0
  222. package/src/lib/interfaces/responses/brighthub/index.js.map +1 -0
  223. package/src/lib/interfaces/responses/index.d.ts +1 -0
  224. package/src/lib/interfaces/responses/index.d.ts.map +1 -1
  225. package/src/lib/interfaces/storage/storedDocumentTypes.d.ts +1 -1
  226. package/src/lib/interfaces/storage/storedDocumentTypes.js +1 -1
  227. package/src/lib/interfaces/storage/userRoleSchema.d.ts.map +1 -1
  228. package/src/lib/interfaces/storage/userRoleSchema.js +1 -3
  229. package/src/lib/interfaces/storage/userRoleSchema.js.map +1 -1
  230. package/src/lib/middlewares.js +31 -31
  231. package/src/lib/middlewares.js.map +1 -1
  232. package/src/lib/nodeKeyring.js +2 -0
  233. package/src/lib/nodeKeyring.js.map +1 -1
  234. package/src/lib/plugins/brightchain-database-plugin.d.ts +14 -14
  235. package/src/lib/plugins/brightchain-database-plugin.d.ts.map +1 -1
  236. package/src/lib/plugins/brightchain-database-plugin.js +36 -34
  237. package/src/lib/plugins/brightchain-database-plugin.js.map +1 -1
  238. package/src/lib/routers/api.d.ts +63 -1
  239. package/src/lib/routers/api.d.ts.map +1 -1
  240. package/src/lib/routers/api.js +126 -2
  241. package/src/lib/routers/api.js.map +1 -1
  242. package/src/lib/routers/app.d.ts.map +1 -1
  243. package/src/lib/routers/app.js +10 -1
  244. package/src/lib/routers/app.js.map +1 -1
  245. package/src/lib/routers/base.js +2 -0
  246. package/src/lib/routers/base.js.map +1 -1
  247. package/src/lib/routers/index.d.ts +1 -0
  248. package/src/lib/routers/index.d.ts.map +1 -1
  249. package/src/lib/routers/index.js +1 -0
  250. package/src/lib/routers/index.js.map +1 -1
  251. package/src/lib/routers/testEmailRouter.d.ts +15 -0
  252. package/src/lib/routers/testEmailRouter.d.ts.map +1 -0
  253. package/src/lib/routers/testEmailRouter.js +34 -0
  254. package/src/lib/routers/testEmailRouter.js.map +1 -0
  255. package/src/lib/secureEnclaveKeyring.js +4 -2
  256. package/src/lib/secureEnclaveKeyring.js.map +1 -1
  257. package/src/lib/services/auth.d.ts.map +1 -1
  258. package/src/lib/services/auth.js +11 -2
  259. package/src/lib/services/auth.js.map +1 -1
  260. package/src/lib/services/base.js +1 -0
  261. package/src/lib/services/base.js.map +1 -1
  262. package/src/lib/services/blockServiceFactory.js +2 -0
  263. package/src/lib/services/blockServiceFactory.js.map +1 -1
  264. package/src/lib/services/blockStore.js +3 -2
  265. package/src/lib/services/blockStore.js.map +1 -1
  266. package/src/lib/services/blocks.js +1 -0
  267. package/src/lib/services/blocks.js.map +1 -1
  268. package/src/lib/services/brightChainBackupCodeService.d.ts +114 -0
  269. package/src/lib/services/brightChainBackupCodeService.d.ts.map +1 -0
  270. package/src/lib/services/brightChainBackupCodeService.js +303 -0
  271. package/src/lib/services/brightChainBackupCodeService.js.map +1 -0
  272. package/src/lib/services/brightchain-authentication-provider.d.ts.map +1 -1
  273. package/src/lib/services/brightchain-authentication-provider.js +40 -9
  274. package/src/lib/services/brightchain-authentication-provider.js.map +1 -1
  275. package/src/lib/services/brightchain-member-init.service.d.ts +17 -17
  276. package/src/lib/services/brightchain-member-init.service.d.ts.map +1 -1
  277. package/src/lib/services/brightchain-member-init.service.js +12 -9
  278. package/src/lib/services/brightchain-member-init.service.js.map +1 -1
  279. package/src/lib/services/brighthub/connectionService.d.ts +286 -0
  280. package/src/lib/services/brighthub/connectionService.d.ts.map +1 -0
  281. package/src/lib/services/brighthub/connectionService.js +1887 -0
  282. package/src/lib/services/brighthub/connectionService.js.map +1 -0
  283. package/src/lib/services/brighthub/discoveryService.d.ts +110 -0
  284. package/src/lib/services/brighthub/discoveryService.d.ts.map +1 -0
  285. package/src/lib/services/brighthub/discoveryService.js +528 -0
  286. package/src/lib/services/brighthub/discoveryService.js.map +1 -0
  287. package/src/lib/services/brighthub/feedService.d.ts +141 -0
  288. package/src/lib/services/brighthub/feedService.d.ts.map +1 -0
  289. package/src/lib/services/brighthub/feedService.js +418 -0
  290. package/src/lib/services/brighthub/feedService.js.map +1 -0
  291. package/src/lib/services/brighthub/index.d.ts +11 -0
  292. package/src/lib/services/brighthub/index.d.ts.map +1 -0
  293. package/src/lib/services/brighthub/index.js +14 -0
  294. package/src/lib/services/brighthub/index.js.map +1 -0
  295. package/src/lib/services/brighthub/messagingService.d.ts +109 -0
  296. package/src/lib/services/brighthub/messagingService.d.ts.map +1 -0
  297. package/src/lib/services/brighthub/messagingService.js +947 -0
  298. package/src/lib/services/brighthub/messagingService.js.map +1 -0
  299. package/src/lib/services/brighthub/messagingService.test-helpers.d.ts +75 -0
  300. package/src/lib/services/brighthub/messagingService.test-helpers.d.ts.map +1 -0
  301. package/src/lib/services/brighthub/messagingService.test-helpers.js +237 -0
  302. package/src/lib/services/brighthub/messagingService.test-helpers.js.map +1 -0
  303. package/src/lib/services/brighthub/notificationService.d.ts +172 -0
  304. package/src/lib/services/brighthub/notificationService.d.ts.map +1 -0
  305. package/src/lib/services/brighthub/notificationService.js +768 -0
  306. package/src/lib/services/brighthub/notificationService.js.map +1 -0
  307. package/src/lib/services/brighthub/notificationService.test-helpers.d.ts +75 -0
  308. package/src/lib/services/brighthub/notificationService.test-helpers.d.ts.map +1 -0
  309. package/src/lib/services/brighthub/notificationService.test-helpers.js +230 -0
  310. package/src/lib/services/brighthub/notificationService.test-helpers.js.map +1 -0
  311. package/src/lib/services/brighthub/postService.d.ts +129 -0
  312. package/src/lib/services/brighthub/postService.d.ts.map +1 -0
  313. package/src/lib/services/brighthub/postService.js +470 -0
  314. package/src/lib/services/brighthub/postService.js.map +1 -0
  315. package/src/lib/services/brighthub/postService.test-helpers.d.ts +40 -0
  316. package/src/lib/services/brighthub/postService.test-helpers.d.ts.map +1 -0
  317. package/src/lib/services/brighthub/postService.test-helpers.js +84 -0
  318. package/src/lib/services/brighthub/postService.test-helpers.js.map +1 -0
  319. package/src/lib/services/brighthub/textFormatter.d.ts +64 -0
  320. package/src/lib/services/brighthub/textFormatter.d.ts.map +1 -0
  321. package/src/lib/services/brighthub/textFormatter.js +256 -0
  322. package/src/lib/services/brighthub/textFormatter.js.map +1 -0
  323. package/src/lib/services/brighthub/threadService.d.ts +79 -0
  324. package/src/lib/services/brighthub/threadService.d.ts.map +1 -0
  325. package/src/lib/services/brighthub/threadService.js +246 -0
  326. package/src/lib/services/brighthub/threadService.js.map +1 -0
  327. package/src/lib/services/brighthub/userProfileService.d.ts +203 -0
  328. package/src/lib/services/brighthub/userProfileService.d.ts.map +1 -0
  329. package/src/lib/services/brighthub/userProfileService.js +868 -0
  330. package/src/lib/services/brighthub/userProfileService.js.map +1 -0
  331. package/src/lib/services/brighthub/userProfileService.test-helpers.d.ts +86 -0
  332. package/src/lib/services/brighthub/userProfileService.test-helpers.d.ts.map +1 -0
  333. package/src/lib/services/brighthub/userProfileService.test-helpers.js +169 -0
  334. package/src/lib/services/brighthub/userProfileService.test-helpers.js.map +1 -0
  335. package/src/lib/services/brighthub/webSocketServer.d.ts +68 -0
  336. package/src/lib/services/brighthub/webSocketServer.d.ts.map +1 -0
  337. package/src/lib/services/brighthub/webSocketServer.js +194 -0
  338. package/src/lib/services/brighthub/webSocketServer.js.map +1 -0
  339. package/src/lib/services/brightpass/auditLogger.js +10 -5
  340. package/src/lib/services/brightpass/auditLogger.js.map +1 -1
  341. package/src/lib/services/brightpass/vaultEncryption.js +8 -8
  342. package/src/lib/services/brightpass/vaultEncryption.js.map +1 -1
  343. package/src/lib/services/brightpass.js +16 -8
  344. package/src/lib/services/brightpass.js.map +1 -1
  345. package/src/lib/services/cliOperatorPrompt.js +5 -2
  346. package/src/lib/services/cliOperatorPrompt.js.map +1 -1
  347. package/src/lib/services/clientWebSocketServer.d.ts +69 -4
  348. package/src/lib/services/clientWebSocketServer.d.ts.map +1 -1
  349. package/src/lib/services/clientWebSocketServer.js +188 -10
  350. package/src/lib/services/clientWebSocketServer.js.map +1 -1
  351. package/src/lib/services/contentAwareBlocksService.js +2 -0
  352. package/src/lib/services/contentAwareBlocksService.js.map +1 -1
  353. package/src/lib/services/contentIngestionService.d.ts.map +1 -1
  354. package/src/lib/services/contentIngestionService.js +2 -0
  355. package/src/lib/services/contentIngestionService.js.map +1 -1
  356. package/src/lib/services/diskQuorumService.js +3 -0
  357. package/src/lib/services/diskQuorumService.js.map +1 -1
  358. package/src/lib/services/email.js +5 -0
  359. package/src/lib/services/email.js.map +1 -1
  360. package/src/lib/services/eventNotificationSystem.d.ts +51 -10
  361. package/src/lib/services/eventNotificationSystem.d.ts.map +1 -1
  362. package/src/lib/services/eventNotificationSystem.js +76 -23
  363. package/src/lib/services/eventNotificationSystem.js.map +1 -1
  364. package/src/lib/services/expirationScheduler.js +6 -3
  365. package/src/lib/services/expirationScheduler.js.map +1 -1
  366. package/src/lib/services/fakeEmailService.d.ts +68 -0
  367. package/src/lib/services/fakeEmailService.d.ts.map +1 -0
  368. package/src/lib/services/fakeEmailService.js +110 -0
  369. package/src/lib/services/fakeEmailService.js.map +1 -0
  370. package/src/lib/services/fec.js +1 -3
  371. package/src/lib/services/fec.js.map +1 -1
  372. package/src/lib/services/fecServiceFactory.js +2 -2
  373. package/src/lib/services/fecServiceFactory.js.map +1 -1
  374. package/src/lib/services/fecUsageExample.js +1 -3
  375. package/src/lib/services/fecUsageExample.js.map +1 -1
  376. package/src/lib/services/identityExpirationScheduler.d.ts.map +1 -1
  377. package/src/lib/services/identityExpirationScheduler.js +7 -2
  378. package/src/lib/services/identityExpirationScheduler.js.map +1 -1
  379. package/src/lib/services/index.d.ts +3 -1
  380. package/src/lib/services/index.d.ts.map +1 -1
  381. package/src/lib/services/index.js +3 -1
  382. package/src/lib/services/index.js.map +1 -1
  383. package/src/lib/services/messageEventsWebSocketHandler.js +1 -0
  384. package/src/lib/services/messageEventsWebSocketHandler.js.map +1 -1
  385. package/src/lib/services/messagePassingService.js +5 -0
  386. package/src/lib/services/messagePassingService.js.map +1 -1
  387. package/src/lib/services/nativeRsFecService.js +3 -5
  388. package/src/lib/services/nativeRsFecService.js.map +1 -1
  389. package/src/lib/services/presenceService.js +5 -4
  390. package/src/lib/services/presenceService.js.map +1 -1
  391. package/src/lib/services/quorum.js +3 -2
  392. package/src/lib/services/quorum.js.map +1 -1
  393. package/src/lib/services/quorumDatabaseAdapter.d.ts +5 -5
  394. package/src/lib/services/quorumDatabaseAdapter.d.ts.map +1 -1
  395. package/src/lib/services/quorumDatabaseAdapter.js +5 -3
  396. package/src/lib/services/quorumDatabaseAdapter.js.map +1 -1
  397. package/src/lib/services/rbac-input-builder.js +5 -0
  398. package/src/lib/services/rbac-input-builder.js.map +1 -1
  399. package/src/lib/services/secureKeyStorage.js +3 -0
  400. package/src/lib/services/secureKeyStorage.js.map +1 -1
  401. package/src/lib/services/sessionAdapter.d.ts +4 -4
  402. package/src/lib/services/sessionAdapter.d.ts.map +1 -1
  403. package/src/lib/services/sessionAdapter.js +3 -2
  404. package/src/lib/services/sessionAdapter.js.map +1 -1
  405. package/src/lib/services/webSocketMessageServer.js +7 -4
  406. package/src/lib/services/webSocketMessageServer.js.map +1 -1
  407. package/src/lib/services/webSocketPeerProvider.js +2 -1
  408. package/src/lib/services/webSocketPeerProvider.js.map +1 -1
  409. package/src/lib/services/websocketHandler.js +9 -1
  410. package/src/lib/services/websocketHandler.js.map +1 -1
  411. package/src/lib/shared-types.d.ts +1 -2
  412. package/src/lib/shared-types.d.ts.map +1 -1
  413. package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.d.ts +63 -0
  414. package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.d.ts.map +1 -0
  415. package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.js +160 -0
  416. package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.js.map +1 -0
  417. package/src/lib/stores/availabilityAwareBlockStore.js +34 -5
  418. package/src/lib/stores/availabilityAwareBlockStore.js.map +1 -1
  419. package/src/lib/stores/cloudBlockStoreBase.d.ts +121 -0
  420. package/src/lib/stores/cloudBlockStoreBase.d.ts.map +1 -0
  421. package/src/lib/stores/cloudBlockStoreBase.js +1165 -0
  422. package/src/lib/stores/cloudBlockStoreBase.js.map +1 -0
  423. package/src/lib/stores/diskBlockAsyncStore.js +9 -5
  424. package/src/lib/stores/diskBlockAsyncStore.js.map +1 -1
  425. package/src/lib/stores/diskBlockMetadataStore.js +2 -0
  426. package/src/lib/stores/diskBlockMetadataStore.js.map +1 -1
  427. package/src/lib/stores/diskBlockStore.js +10 -8
  428. package/src/lib/stores/diskBlockStore.js.map +1 -1
  429. package/src/lib/stores/diskCBLStore.d.ts.map +1 -1
  430. package/src/lib/stores/diskCBLStore.js +8 -0
  431. package/src/lib/stores/diskCBLStore.js.map +1 -1
  432. package/src/lib/stores/index.d.ts +1 -0
  433. package/src/lib/stores/index.d.ts.map +1 -1
  434. package/src/lib/stores/index.js +1 -0
  435. package/src/lib/stores/index.js.map +1 -1
  436. package/src/lib/systemKeyring.d.ts.map +1 -1
  437. package/src/lib/systemKeyring.js +5 -4
  438. package/src/lib/systemKeyring.js.map +1 -1
  439. package/src/lib/transforms/checksumTransform.js +1 -0
  440. package/src/lib/transforms/checksumTransform.js.map +1 -1
  441. package/src/lib/transforms/memoryWritableStream.js +1 -0
  442. package/src/lib/transforms/memoryWritableStream.js.map +1 -1
  443. package/src/lib/transforms/xorMultipleTransform.js +3 -0
  444. package/src/lib/transforms/xorMultipleTransform.js.map +1 -1
  445. package/src/lib/utils/rehydration.d.ts +1 -1
  446. package/src/lib/utils/rehydration.js +1 -1
  447. package/src/lib/utils/serialization.d.ts +1 -1
  448. package/src/lib/utils/serialization.js +1 -1
  449. package/src/lib/services/backupCodeService.d.ts +0 -35
  450. package/src/lib/services/backupCodeService.d.ts.map +0 -1
  451. package/src/lib/services/backupCodeService.js +0 -109
  452. package/src/lib/services/backupCodeService.js.map +0 -1
@@ -0,0 +1,303 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BrightChainBackupCodeService = void 0;
4
+ const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
5
+ const node_ecies_lib_1 = require("@digitaldefiance/node-ecies-lib");
6
+ const node_express_suite_1 = require("@digitaldefiance/node-express-suite");
7
+ const suite_core_lib_1 = require("@digitaldefiance/suite-core-lib");
8
+ /**
9
+ * BrightChain-native backup code service that ports the upstream
10
+ * cryptographic scheme (Argon2id / HKDF-SHA256 / AEAD / ECIES) to
11
+ * work with MemberStore and BrightDB instead of MongoDB.
12
+ *
13
+ * Delegates all cryptographic primitives to the upstream {@link BackupCode}
14
+ * static methods while handling persistence through {@link MemberStore}.
15
+ */
16
+ class BrightChainBackupCodeService {
17
+ memberStore;
18
+ eciesService;
19
+ keyWrappingService;
20
+ backupCodeConstants;
21
+ systemUser;
22
+ constructor(memberStore, eciesService, keyWrappingService, backupCodeConstants) {
23
+ this.memberStore = memberStore;
24
+ this.eciesService = eciesService;
25
+ this.keyWrappingService = keyWrappingService;
26
+ this.backupCodeConstants = backupCodeConstants;
27
+ }
28
+ /**
29
+ * Set the system user whose ECIES key pair is used to wrap/unwrap
30
+ * backup code AEAD blobs.
31
+ */
32
+ setSystemUser(user) {
33
+ this.systemUser = user;
34
+ }
35
+ /**
36
+ * Retrieve the system user, throwing if not yet set.
37
+ * @throws {Error} If the system user has not been provided via {@link setSystemUser}.
38
+ */
39
+ getSystemUser() {
40
+ if (!this.systemUser) {
41
+ throw new Error('System user not available');
42
+ }
43
+ return this.systemUser;
44
+ }
45
+ /**
46
+ * Generate N plaintext codes, encrypt them, persist to member profile,
47
+ * and return the plaintext strings.
48
+ *
49
+ * 1. Resolve system user and backup user (member)
50
+ * 2. Generate `Count` random backup codes via upstream BackupCode primitives
51
+ * 3. Encrypt codes (Argon2id KDF → AEAD → ECIES wrap) via upstream static method
52
+ * 4. Persist encrypted codes to member's private profile via MemberStore
53
+ * 5. Return plaintext display-formatted strings
54
+ */
55
+ async generateCodes(memberId) {
56
+ const systemUser = this.getSystemUser();
57
+ const backupUser = await this.memberStore.getMember(memberId);
58
+ // Generate plaintext backup codes using upstream primitives
59
+ const count = this.backupCodeConstants.Count;
60
+ const codes = [];
61
+ for (let i = 0; i < count; i++) {
62
+ codes.push(new node_express_suite_1.BackupCode(node_express_suite_1.BackupCode.generateBackupCode()));
63
+ }
64
+ // Encrypt codes using the upstream multi-layer scheme
65
+ // (HKDF-SHA256 checksum, Argon2id KDF, AEAD encryption, ECIES wrapping)
66
+ // MemberStore returns ecies-lib Member; BackupCode expects node-ecies-lib Member.
67
+ // Node_Member extends Base_Member, so instanceof narrows safely.
68
+ if (!(backupUser instanceof node_ecies_lib_1.Member)) {
69
+ throw new Error('backupUser must be a node-ecies-lib Member (Node_Member)');
70
+ }
71
+ const encryptedCodes = await node_express_suite_1.BackupCode.encryptBackupCodes(backupUser, systemUser, codes);
72
+ // Persist encrypted codes to member's private profile
73
+ await this.memberStore.updateMember(memberId, {
74
+ id: memberId,
75
+ privateChanges: {
76
+ backupCodes: encryptedCodes,
77
+ },
78
+ });
79
+ // Return plaintext display-formatted strings (e.g. xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx)
80
+ return codes.map((code) => code.value);
81
+ }
82
+ /**
83
+ * Return the count of stored backup codes for a member.
84
+ */
85
+ async getCodeCount(memberId) {
86
+ const profile = await this.memberStore.getMemberProfile(memberId);
87
+ if (!profile.privateProfile) {
88
+ return 0;
89
+ }
90
+ const storedCodes = profile.privateProfile.backupCodes ?? [];
91
+ return storedCodes.length;
92
+ }
93
+ /**
94
+ * Validate and consume a backup code. Detects the version of the stored
95
+ * codes, then delegates to the version-specific handler.
96
+ *
97
+ * @param encryptedBackupCodes - The stored encrypted backup codes array
98
+ * @param backupCode - The plaintext backup code submitted by the user
99
+ * @returns The updated codes array (matched entry removed) and the matched entry
100
+ * @throws {InvalidBackupCodeError} If no stored code matches the submitted code
101
+ * @throws {InvalidBackupCodeVersionError} If the stored codes have an unsupported version
102
+ */
103
+ useBackupCode(encryptedBackupCodes, backupCode) {
104
+ if (encryptedBackupCodes.length === 0) {
105
+ throw new suite_core_lib_1.InvalidBackupCodeError();
106
+ }
107
+ // Detect the version by matching the checksum against stored codes
108
+ const version = node_express_suite_1.BackupCode.detectBackupCodeVersion(encryptedBackupCodes, backupCode);
109
+ switch (version) {
110
+ case node_express_suite_1.BackupCode.BackupCodeVersion: {
111
+ // Filter to only codes of the matched version
112
+ const versionCodes = encryptedBackupCodes.filter((c) => c.version === node_express_suite_1.BackupCode.BackupCodeVersion);
113
+ // Validate the code against the version-filtered set
114
+ const isValid = node_express_suite_1.BackupCode.validateBackupCode(versionCodes, backupCode);
115
+ if (!isValid) {
116
+ throw new suite_core_lib_1.InvalidBackupCodeError();
117
+ }
118
+ // Find and remove the matched code by re-validating individually
119
+ const normalizedCode = node_express_suite_1.BackupCode.normalizeCode(backupCode);
120
+ let matchedCode;
121
+ for (const storedCode of versionCodes) {
122
+ if (node_express_suite_1.BackupCode.validateBackupCode([storedCode], normalizedCode)) {
123
+ matchedCode = storedCode;
124
+ break;
125
+ }
126
+ }
127
+ if (!matchedCode) {
128
+ throw new suite_core_lib_1.InvalidBackupCodeError();
129
+ }
130
+ // Filter out the matched code by checksum identity
131
+ const newCodesArray = encryptedBackupCodes.filter((c) => c.checksum !== matchedCode.checksum);
132
+ return { newCodesArray, code: matchedCode };
133
+ }
134
+ default:
135
+ throw new node_express_suite_1.InvalidBackupCodeVersionError(version);
136
+ }
137
+ }
138
+ /**
139
+ * Recover the user's private key from a consumed backup code entry.
140
+ */
141
+ /**
142
+ * Recover the user's private key from a consumed backup code entry.
143
+ *
144
+ * Flow (mirrors upstream BackupCodeService.recoverKeyWithBackupCodeV1):
145
+ * 1. Retrieve stored backup codes from the member's private profile
146
+ * 2. Consume the submitted code via useBackupCode() (constant-time checksum match)
147
+ * 3. Unwrap the ECIES layer using the system user's private key
148
+ * 4. Derive the Argon2id key from the plaintext code + per-code salt
149
+ * 5. Decrypt the AEAD blob to recover the user's private key
150
+ * 6. Reconstruct a Member with the recovered private key
151
+ * 7. Optionally re-wrap the private key with a new password
152
+ * 8. Persist the updated codes array (consumed code removed)
153
+ *
154
+ * @param memberId - The ID of the member whose key is being recovered
155
+ * @param backupCode - The plaintext backup code submitted by the user
156
+ * @param newPassword - Optional new password to re-wrap the recovered private key
157
+ * @returns The recovered BackendMember and remaining backup code count
158
+ * @throws {InvalidBackupCodeError} If the submitted code doesn't match any stored code
159
+ * @throws {Error} If the system user is not available or member is not found
160
+ */
161
+ async recoverKeyWithBackupCode(memberId, backupCode, newPassword) {
162
+ const systemUser = this.getSystemUser();
163
+ // Retrieve the member (for public key, name, email, type, etc.)
164
+ const member = await this.memberStore.getMember(memberId);
165
+ // Retrieve stored backup codes from the member's private profile
166
+ const profile = await this.memberStore.getMemberProfile(memberId);
167
+ if (!profile.privateProfile) {
168
+ throw new Error('Member not found');
169
+ }
170
+ const storedCodes = profile.privateProfile.backupCodes ?? [];
171
+ // Normalize the code (strip dashes)
172
+ const normalizedCode = node_express_suite_1.BackupCode.normalizeCode(backupCode);
173
+ // Consume the backup code (validates checksum and removes from array)
174
+ const { newCodesArray, code: matchedCode } = this.useBackupCode(storedCodes, normalizedCode);
175
+ // Derive the Argon2id decryption key from the plaintext code and per-code salt
176
+ let decryptionKey;
177
+ try {
178
+ decryptionKey = await node_express_suite_1.BackupCode.getBackupKeyV1(matchedCode.checksumSalt, normalizedCode);
179
+ // Unwrap the ECIES layer using the system user's private key
180
+ const privateKeyUnwrapped = await systemUser.decryptData(Buffer.from(matchedCode.encrypted, 'hex'));
181
+ // Decrypt the AEAD blob using the Argon2id-derived key
182
+ const decryptedPrivateKey = new ecies_lib_1.SecureBuffer(node_express_suite_1.SymmetricService.decryptBuffer(privateKeyUnwrapped, decryptionKey));
183
+ // Reconstruct the Member with the recovered private key
184
+ const recoveredUser = new node_ecies_lib_1.Member(this.eciesService, member.type, member.name, member.email, Buffer.from(member.publicKey), decryptedPrivateKey, undefined, // wallet
185
+ member.id, member.dateCreated, member.dateUpdated);
186
+ // Optionally re-wrap the private key with a new password
187
+ if (newPassword) {
188
+ const wrapped = this.keyWrappingService.wrapSecret(decryptedPrivateKey, new ecies_lib_1.SecureString(newPassword));
189
+ // Persist the password-wrapped private key alongside the updated codes
190
+ await this.memberStore.updateMember(memberId, {
191
+ id: memberId,
192
+ privateChanges: {
193
+ backupCodes: newCodesArray,
194
+ },
195
+ });
196
+ // Note: passwordWrappedPrivateKey storage would be handled by the
197
+ // caller or a separate auth service if needed. The wrapped value
198
+ // is available on the returned member for the controller to use.
199
+ void wrapped; // consumed by caller if needed
200
+ }
201
+ else {
202
+ // Persist the updated codes array (consumed code removed)
203
+ await this.memberStore.updateMember(memberId, {
204
+ id: memberId,
205
+ privateChanges: {
206
+ backupCodes: newCodesArray,
207
+ },
208
+ });
209
+ }
210
+ return { user: recoveredUser, codeCount: newCodesArray.length };
211
+ }
212
+ finally {
213
+ // Zero out the decryption key to prevent leakage
214
+ if (decryptionKey) {
215
+ decryptionKey.fill(0);
216
+ }
217
+ }
218
+ }
219
+ /**
220
+ * Clear existing codes and generate a fresh set.
221
+ *
222
+ * 1. Clear existing backup codes from the member's private profile
223
+ * 2. Generate and persist a new set of encrypted backup codes
224
+ * 3. Return the new plaintext code strings
225
+ */
226
+ async regenerateCodes(memberId) {
227
+ // Clear existing backup codes by persisting an empty array
228
+ await this.memberStore.updateMember(memberId, {
229
+ id: memberId,
230
+ privateChanges: { backupCodes: [] },
231
+ });
232
+ // Generate, encrypt, persist, and return new plaintext codes
233
+ return this.generateCodes(memberId);
234
+ }
235
+ /**
236
+ * Re-wrap all users' backup codes with a new system key (key rotation).
237
+ */
238
+ /**
239
+ * Re-wrap all users' backup codes with a new system key (key rotation).
240
+ *
241
+ * For each member in the store:
242
+ * 1. Retrieve their stored backup codes from the private profile
243
+ * 2. For each code, unwrap the ECIES layer with the old system key
244
+ * 3. Re-wrap the inner AEAD blob with the new system key
245
+ * 4. Persist the re-wrapped codes back to the member's private profile
246
+ *
247
+ * Individual user failures are logged and skipped — processing continues
248
+ * for remaining users.
249
+ *
250
+ * @param oldSystem - The old system user whose private key unwraps existing ECIES layers
251
+ * @param newSystem - The new system user whose public key re-wraps the AEAD blobs
252
+ * @returns The count of users whose codes were successfully re-wrapped
253
+ */
254
+ async rewrapAllUsersBackupCodes(oldSystem, newSystem) {
255
+ // Query all members from the index
256
+ const memberRefs = await this.memberStore.queryIndex({});
257
+ let successCount = 0;
258
+ for (const ref of memberRefs) {
259
+ try {
260
+ // Retrieve the member's profile to access their backup codes
261
+ const profile = await this.memberStore.getMemberProfile(ref.id);
262
+ if (!profile.privateProfile) {
263
+ continue;
264
+ }
265
+ const storedCodes = profile.privateProfile.backupCodes;
266
+ if (!storedCodes || storedCodes.length === 0) {
267
+ continue;
268
+ }
269
+ // Re-wrap each code: unwrap ECIES with old key, re-wrap with new key
270
+ const rewrappedCodes = [];
271
+ for (const code of storedCodes) {
272
+ // Unwrap the ECIES layer using the old system user's private key
273
+ const innerAeadBlob = await oldSystem.decryptData(Buffer.from(code.encrypted, 'hex'));
274
+ // Re-wrap the inner AEAD blob with the new system user's public key
275
+ const rewrappedBlob = await newSystem.encryptData(innerAeadBlob);
276
+ // Return a new IStoredBackupCode with the same version, checksumSalt,
277
+ // and checksum but with the re-wrapped encrypted field
278
+ rewrappedCodes.push({
279
+ version: code.version,
280
+ checksumSalt: code.checksumSalt,
281
+ checksum: code.checksum,
282
+ encrypted: rewrappedBlob.toString('hex'),
283
+ });
284
+ }
285
+ // Persist the re-wrapped codes to the member's private profile
286
+ await this.memberStore.updateMember(ref.id, {
287
+ id: ref.id,
288
+ privateChanges: {
289
+ backupCodes: rewrappedCodes,
290
+ },
291
+ });
292
+ successCount++;
293
+ }
294
+ catch (error) {
295
+ // Log the error for this user and continue with remaining users
296
+ console.error(`Failed to re-wrap backup codes for member ${String(ref.id)}:`, error);
297
+ }
298
+ }
299
+ return successCount;
300
+ }
301
+ }
302
+ exports.BrightChainBackupCodeService = BrightChainBackupCodeService;
303
+ //# sourceMappingURL=brightChainBackupCodeService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brightChainBackupCodeService.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/brightChainBackupCodeService.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"brightchain-authentication-provider.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/brightchain-authentication-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAEV,eAAe,EAEf,UAAU,EACX,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAsDxD;;;;GAIG;AACH,qBAAa,iCAAiC,CAC5C,GAAG,SAAS,UAAU,GAAG,MAAM,EAC/B,SAAS,SAAS,MAAM,GAAG,MAAM,CACjC,YAAW,uBAAuB,CAAC,GAAG,EAAE,SAAS,CAAC;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC;IAEtE,sDAAsD;IACtD,OAAO,CAAC,cAAc;IAIhB,YAAY,CAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IAgChD;;;;OAIG;YACW,kBAAkB;IA8C1B,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAyC1E;;;;OAIG;YACW,yBAAyB;IA6EjC,WAAW,CAAC,UAAU,SAAS,UAAU,GAAG,UAAU,EAC1D,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAiBvB,wBAAwB,CAC5B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAsF5B,wBAAwB,CAC5B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;CAoEnC"}
1
+ {"version":3,"file":"brightchain-authentication-provider.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/brightchain-authentication-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAEV,eAAe,EAEf,UAAU,EACX,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAsDxD;;;;GAIG;AACH,qBAAa,iCAAiC,CAC5C,GAAG,SAAS,UAAU,GAAG,MAAM,EAC/B,SAAS,SAAS,MAAM,GAAG,MAAM,CACjC,YAAW,uBAAuB,CAAC,GAAG,EAAE,SAAS,CAAC;IAEtC,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC;IAEtE,sDAAsD;IACtD,OAAO,CAAC,cAAc;IAIhB,YAAY,CAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IAgChD;;;;OAIG;YACW,kBAAkB;IA4C1B,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAqF1E;;;;OAIG;YACW,yBAAyB;IAuEjC,WAAW,CAAC,UAAU,SAAS,UAAU,GAAG,UAAU,EAC1D,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAiBvB,wBAAwB,CAC5B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAmF5B,wBAAwB,CAC5B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;CAoEnC"}
@@ -72,6 +72,7 @@ function memberTypeToRoleDTO(type, memberId) {
72
72
  * and jwt.verify for token validation — no Mongoose dependency.
73
73
  */
74
74
  class BrightChainAuthenticationProvider {
75
+ application;
75
76
  constructor(application) {
76
77
  this.application = application;
77
78
  }
@@ -154,6 +155,28 @@ class BrightChainAuthenticationProvider {
154
155
  const rolePrivileges = memberTypeToRolePrivileges(member.type);
155
156
  const roleDTO = memberTypeToRoleDTO(member.type, memberId);
156
157
  const settings = privateProfile?.settings ?? {};
158
+ // Check the `users` collection for settings overrides persisted by
159
+ // updateSettings (which writes to the DB, not the member store).
160
+ let dbSettings = {};
161
+ try {
162
+ const db = this.application.services.get('db');
163
+ if (db) {
164
+ const sp = brightchain_lib_1.ServiceProvider.getInstance();
165
+ const idHex = sp.idProvider.toString(id, 'hex');
166
+ const settingsCol = db.collection('user_settings');
167
+ let userDoc = await settingsCol.findOne({ _id: idHex });
168
+ if (!userDoc) {
169
+ const dashed = idHex.replace(/^([0-9a-f]{8})([0-9a-f]{4})([0-9a-f]{4})([0-9a-f]{4})([0-9a-f]{12})$/i, '$1-$2-$3-$4-$5');
170
+ userDoc = await settingsCol.findOne({ _id: dashed });
171
+ }
172
+ if (userDoc) {
173
+ dbSettings = userDoc;
174
+ }
175
+ }
176
+ }
177
+ catch {
178
+ // DB lookup is best-effort; fall through to member store settings
179
+ }
157
180
  return {
158
181
  id: memberId,
159
182
  email: member.email.toString(),
@@ -161,11 +184,21 @@ class BrightChainAuthenticationProvider {
161
184
  roles: [roleDTO],
162
185
  rolePrivileges,
163
186
  emailVerified: true, // BrightChain members are verified at creation
164
- timezone: settings['timezone'] ?? 'UTC',
165
- siteLanguage: settings['siteLanguage'] ?? 'en',
166
- darkMode: settings['darkMode'] ?? false,
167
- currency: settings['currency'] ?? 'USD',
168
- directChallenge: settings['directChallenge'] ?? false,
187
+ timezone: dbSettings['timezone'] ??
188
+ settings['timezone'] ??
189
+ 'UTC',
190
+ siteLanguage: dbSettings['siteLanguage'] ??
191
+ settings['siteLanguage'] ??
192
+ 'en',
193
+ darkMode: dbSettings['darkMode'] ??
194
+ settings['darkMode'] ??
195
+ false,
196
+ currency: dbSettings['currency'] ??
197
+ settings['currency'] ??
198
+ 'USD',
199
+ directChallenge: dbSettings['directChallenge'] ??
200
+ settings['directChallenge'] ??
201
+ false,
169
202
  lastLogin: publicProfile?.lastActive?.toISOString(),
170
203
  };
171
204
  }
@@ -196,8 +229,7 @@ class BrightChainAuthenticationProvider {
196
229
  }
197
230
  if (!userDoc)
198
231
  return null;
199
- if (userDoc.accountStatus &&
200
- userDoc.accountStatus !== 'Active') {
232
+ if (userDoc.accountStatus && userDoc.accountStatus !== 'Active') {
201
233
  return null;
202
234
  }
203
235
  // Determine MemberType from the member_index entry
@@ -269,8 +301,7 @@ class BrightChainAuthenticationProvider {
269
301
  catch (err) {
270
302
  // If getMember failed (seeded user without CBL blocks), reconstruct
271
303
  // from the mnemonic and verify the public key matches.
272
- if (err instanceof Error &&
273
- (err.message === 'Invalid mnemonic')) {
304
+ if (err instanceof Error && err.message === 'Invalid mnemonic') {
274
305
  throw err;
275
306
  }
276
307
  // Get the stored public key to verify the mnemonic derives the right key
@@ -1 +1 @@
1
- {"version":3,"file":"brightchain-authentication-provider.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/brightchain-authentication-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brightchain-authentication-provider.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/brightchain-authentication-provider.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,22 @@
1
1
  /**
2
- * @fileoverview BrightChainMemberInitService — initialises BrightChainDb and
2
+ * @fileoverview BrightChainMemberInitService — initialises BrightDB and
3
3
  * persists system/admin/member users as IMemberIndexDocument entries.
4
4
  *
5
5
  * Design constraints:
6
6
  * - NO imports from @digitaldefiance/node-express-suite (no Mongoose, no Express)
7
7
  * - NO `any` / `unknown` in the public API surface
8
8
  * - NO `as any` / `as unknown` casts
9
- * - All writes go through BrightChainDb.withTransaction exclusively
9
+ * - All writes go through BrightDb.withTransaction exclusively
10
10
  */
11
11
  import type { IBrightChainRbacInitInput, IBrightChainServerInitResult, IBrightChainUserCredentials } from '@brightchain/brightchain-lib';
12
12
  import { IBrightChainBaseInitResult, IBrightChainInitResult, IBrightChainMemberInitInput } from '@brightchain/brightchain-lib';
13
- import { BrightChainDb, CBLIndex } from '@brightchain/db';
13
+ import { BrightDb, CBLIndex } from '@brightchain/db';
14
14
  import type { IIdProvider } from '@digitaldefiance/ecies-lib';
15
15
  import { PlatformID } from '@digitaldefiance/node-ecies-lib';
16
16
  import { IBrightChainMemberInitConfig } from '../interfaces/member-init-config';
17
17
  export type { IBrightChainMemberInitConfig } from '../interfaces/member-init-config';
18
18
  /**
19
- * Initialises a BrightChainDb instance and persists system/admin/member users
19
+ * Initialises a BrightDB instance and persists system/admin/member users
20
20
  * as IMemberIndexDocument entries in the member index collection.
21
21
  *
22
22
  * The service is idempotent: calling initialize() multiple times with the same
@@ -28,31 +28,31 @@ export declare class BrightChainMemberInitService<TID extends PlatformID> {
28
28
  private readonly _idProvider;
29
29
  constructor(idProvider?: IIdProvider<TID>);
30
30
  /**
31
- * The initialised BrightChainDb instance.
31
+ * The initialised BrightDb instance.
32
32
  * @throws Error if initialize() has not been called yet.
33
33
  */
34
- get db(): BrightChainDb;
34
+ get db(): BrightDb;
35
35
  /**
36
36
  * The member pool CBLIndex.
37
37
  * @throws Error if initialize() has not been called yet.
38
38
  */
39
39
  get memberCblIndex(): CBLIndex;
40
40
  /**
41
- * Initialise the block store and BrightChainDb, then persist any missing
41
+ * Initialise the block store and BrightDB, then persist any missing
42
42
  * member index entries.
43
43
  *
44
44
  * Steps:
45
45
  * 1. Build the appropriate block store (disk or memory)
46
- * 2. Create BrightChainDb with an isolated HeadRegistry
46
+ * 2. Create BrightDb with an isolated HeadRegistry
47
47
  * 3. Create CBLIndex for the member pool
48
48
  * 4. Build candidate IMemberIndexDocument entries
49
49
  * 5. Validate all candidates against MEMBER_INDEX_SCHEMA (pre-transaction)
50
50
  * 6. Check which candidates are already present (idempotency)
51
51
  * 7. Insert missing entries in a single withTransaction call
52
52
  */
53
- initialize(config: IBrightChainMemberInitConfig, input: IBrightChainMemberInitInput<TID>): Promise<IBrightChainBaseInitResult<BrightChainDb, TID>>;
53
+ initialize(config: IBrightChainMemberInitConfig, input: IBrightChainMemberInitInput<TID>): Promise<IBrightChainBaseInitResult<BrightDb, TID>>;
54
54
  /**
55
- * Register typed Models for all RBAC collections on the given BrightChainDb.
55
+ * Register typed Models for all RBAC collections on the given BrightDB instance.
56
56
  *
57
57
  * After this call, `db.model('roles')`, `db.model('users')`, etc. return
58
58
  * Model instances that auto-serialize on writes and auto-rehydrate on reads.
@@ -101,7 +101,7 @@ export declare class BrightChainMemberInitService<TID extends PlatformID> {
101
101
  */
102
102
  private static validateRbacDocument;
103
103
  /**
104
- * Initialise the block store and BrightChainDb, then persist member index
104
+ * Initialise the block store and BrightDB, then persist member index
105
105
  * entries AND full RBAC documents (roles, users, user-roles, mnemonics).
106
106
  *
107
107
  * This is the full-featured init that mirrors the Mongoose
@@ -117,7 +117,7 @@ export declare class BrightChainMemberInitService<TID extends PlatformID> {
117
117
  * 9. Idempotency check for RBAC collections
118
118
  * 10. Insert missing RBAC documents in a single transaction
119
119
  */
120
- initializeWithRbac(config: IBrightChainMemberInitConfig, input: IBrightChainRbacInitInput<TID>): Promise<IBrightChainInitResult<TID, BrightChainDb>>;
120
+ initializeWithRbac(config: IBrightChainMemberInitConfig, input: IBrightChainRbacInitInput<TID>): Promise<IBrightChainInitResult<TID, BrightDb>>;
121
121
  /**
122
122
  * Map an IBrightChainUserInitEntry to an IBrightChainUserCredentials bundle.
123
123
  * Plaintext fields default to empty string / empty array when absent.
@@ -135,29 +135,29 @@ export declare class BrightChainMemberInitService<TID extends PlatformID> {
135
135
  * Print a formatted summary of the BrightChain server init results,
136
136
  * including full credentials for each user.
137
137
  */
138
- static printServerInitResults<TID extends PlatformID>(result: IBrightChainServerInitResult<TID, BrightChainDb>, config: IBrightChainMemberInitConfig, idProvider: IIdProvider<TID>): void;
138
+ static printServerInitResults<TID extends PlatformID>(result: IBrightChainServerInitResult<TID, BrightDb>, config: IBrightChainMemberInitConfig, idProvider: IIdProvider<TID>): void;
139
139
  /**
140
140
  * Print a formatted summary of the BrightChain member init results.
141
141
  * Kept for backward compatibility — delegates to printServerInitResults
142
142
  * when a full result is available, otherwise prints minimal info.
143
143
  */
144
- static printBaseInitResults<TID extends PlatformID>(input: IBrightChainMemberInitInput<TID>, result: IBrightChainBaseInitResult<BrightChainDb, TID>, config: IBrightChainMemberInitConfig, idProvider: IIdProvider<TID>): void;
144
+ static printBaseInitResults<TID extends PlatformID>(input: IBrightChainMemberInitInput<TID>, result: IBrightChainBaseInitResult<BrightDb, TID>, config: IBrightChainMemberInitConfig, idProvider: IIdProvider<TID>): void;
145
145
  /**
146
146
  * Print a formatted summary of the BrightChain member init results.
147
147
  * Kept for backward compatibility — delegates to printServerInitResults
148
148
  * when a full result is available, otherwise prints minimal info.
149
149
  */
150
- static printInitResults<TID extends PlatformID>(input: IBrightChainMemberInitInput<TID>, result: IBrightChainInitResult<TID, BrightChainDb>, config: IBrightChainMemberInitConfig, idProvider: IIdProvider<TID>): void;
150
+ static printInitResults<TID extends PlatformID>(input: IBrightChainMemberInitInput<TID>, result: IBrightChainInitResult<TID, BrightDb>, config: IBrightChainMemberInitConfig, idProvider: IIdProvider<TID>): void;
151
151
  /**
152
152
  * Combine a basic init result with user credentials to produce the full
153
153
  * IBrightChainServerInitResult. This keeps the initialize() method lean
154
154
  * while allowing callers to enrich the result with environment credentials.
155
155
  */
156
- static buildServerInitResult<TID extends PlatformID>(baseResult: IBrightChainInitResult<TID, BrightChainDb>, credentials: {
156
+ static buildServerInitResult<TID extends PlatformID>(baseResult: IBrightChainInitResult<TID, BrightDb>, credentials: {
157
157
  system: IBrightChainUserCredentials<TID>;
158
158
  admin: IBrightChainUserCredentials<TID>;
159
159
  member: IBrightChainUserCredentials<TID>;
160
- }): IBrightChainServerInitResult<TID, BrightChainDb>;
160
+ }): IBrightChainServerInitResult<TID, BrightDb>;
161
161
  /**
162
162
  * Format the full server init result as .env variable lines.
163
163
  * Outputs all credential fields matching the .env.example layout.
@@ -1 +1 @@
1
- {"version":3,"file":"brightchain-member-init.service.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/brightchain-member-init.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAGV,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAG5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAGL,0BAA0B,EAC1B,sBAAsB,EACtB,2BAA2B,EAI5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,aAAa,EACb,QAAQ,EAIT,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAG9D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAgB7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AA2BhF,YAAY,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAoErF;;;;;;GAMG;AACH,qBAAa,4BAA4B,CAAC,GAAG,SAAS,UAAU;IAC9D,OAAO,CAAC,GAAG,CAA4B;IACvC,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmB;gBAEnC,UAAU,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC;IAIzC;;;OAGG;IACH,IAAI,EAAE,IAAI,aAAa,CAOtB;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,QAAQ,CAO7B;IAED;;;;;;;;;;;;OAYG;IACG,UAAU,CACd,MAAM,EAAE,4BAA4B,EACpC,KAAK,EAAE,2BAA2B,CAAC,GAAG,CAAC,GACtC,OAAO,CAAC,0BAA0B,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAkF1D;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAqC1B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAmBhC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IA4BhC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAgBpC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IASpC;;;;;;;OAOG;IACH,MAAM,CAAC,mBAAmB,CACxB,CAAC,SAAS,MAAM,EAChB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjE,GAAG,EAAE,CAAC,GAAG,OAAO;IAIlB;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAoBnC;;;;;;;;;;;;;;;;OAgBG;IACG,kBAAkB,CACtB,MAAM,EAAE,4BAA4B,EACpC,KAAK,EAAE,yBAAyB,CAAC,GAAG,CAAC,GACpC,OAAO,CAAC,sBAAsB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IA0NtD;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAoBnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAW9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAmCnC;;;OAGG;IACH,MAAM,CAAC,sBAAsB,CAAC,GAAG,SAAS,UAAU,EAClD,MAAM,EAAE,4BAA4B,CAAC,GAAG,EAAE,aAAa,CAAC,EACxD,MAAM,EAAE,4BAA4B,EACpC,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,GAC3B,IAAI;IAuBP;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CAAC,GAAG,SAAS,UAAU,EAChD,KAAK,EAAE,2BAA2B,CAAC,GAAG,CAAC,EACvC,MAAM,EAAE,0BAA0B,CAAC,aAAa,EAAE,GAAG,CAAC,EACtD,MAAM,EAAE,4BAA4B,EACpC,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,GAC3B,IAAI;IAkCP;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,GAAG,SAAS,UAAU,EAC5C,KAAK,EAAE,2BAA2B,CAAC,GAAG,CAAC,EACvC,MAAM,EAAE,sBAAsB,CAAC,GAAG,EAAE,aAAa,CAAC,EAClD,MAAM,EAAE,4BAA4B,EACpC,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,GAC3B,IAAI;IAkCP;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,CAAC,GAAG,SAAS,UAAU,EACjD,UAAU,EAAE,sBAAsB,CAAC,GAAG,EAAE,aAAa,CAAC,EACtD,WAAW,EAAE;QACX,MAAM,EAAE,2BAA2B,CAAC,GAAG,CAAC,CAAC;QACzC,KAAK,EAAE,2BAA2B,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,EAAE,2BAA2B,CAAC,GAAG,CAAC,CAAC;KAC1C,GACA,4BAA4B,CAAC,GAAG,EAAE,aAAa,CAAC;IASnD;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,UAAU,EACxC,WAAW,EAAE;QACX,MAAM,EAAE,2BAA2B,CAAC,GAAG,CAAC,CAAC;QACzC,KAAK,EAAE,2BAA2B,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,EAAE,2BAA2B,CAAC,GAAG,CAAC,CAAC;KAC1C,EACD,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,GAC3B,MAAM;CA2BV"}
1
+ {"version":3,"file":"brightchain-member-init.service.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/brightchain-member-init.service.ts"],"names":[],"mappings":"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"}