@brightchain/brightchain-api-lib 0.23.25 → 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.
- package/package.json +5 -5
- package/src/lib/__tests__/fixtures/mock-backend-brightchain-member.d.ts.map +1 -1
- package/src/lib/__tests__/fixtures/mock-backend-brightchain-member.js +11 -0
- package/src/lib/__tests__/fixtures/mock-backend-brightchain-member.js.map +1 -1
- package/src/lib/__tests__/fixtures/mocked-model.js +63 -60
- package/src/lib/__tests__/fixtures/mocked-model.js.map +1 -1
- package/src/lib/application.d.ts +1 -1
- package/src/lib/application.d.ts.map +1 -1
- package/src/lib/application.js +103 -34
- package/src/lib/application.js.map +1 -1
- package/src/lib/auth/aclEnforcedAvailability.js +4 -0
- package/src/lib/auth/aclEnforcedAvailability.js.map +1 -1
- package/src/lib/auth/aclEnforcedBlockStore.js +7 -0
- package/src/lib/auth/aclEnforcedBlockStore.js.map +1 -1
- package/src/lib/auth/ecdsaNodeAuthenticator.js +1 -0
- package/src/lib/auth/ecdsaNodeAuthenticator.js.map +1 -1
- package/src/lib/auth/poolAclBootstrap.js +2 -0
- package/src/lib/auth/poolAclBootstrap.js.map +1 -1
- package/src/lib/auth/poolAclStore.js +2 -1
- package/src/lib/auth/poolAclStore.js.map +1 -1
- package/src/lib/auth/poolAclUpdater.js +4 -0
- package/src/lib/auth/poolAclUpdater.js.map +1 -1
- package/src/lib/availability/availabilityMetrics.js +43 -45
- package/src/lib/availability/availabilityMetrics.js.map +1 -1
- package/src/lib/availability/availabilityService.js +26 -20
- package/src/lib/availability/availabilityService.js.map +1 -1
- package/src/lib/availability/blockRegistry.js +46 -25
- package/src/lib/availability/blockRegistry.js.map +1 -1
- package/src/lib/availability/discoveryProtocol.js +10 -8
- package/src/lib/availability/discoveryProtocol.js.map +1 -1
- package/src/lib/availability/gossipService.js +56 -45
- package/src/lib/availability/gossipService.js.map +1 -1
- package/src/lib/availability/heartbeatMonitor.js +22 -20
- package/src/lib/availability/heartbeatMonitor.js.map +1 -1
- package/src/lib/availability/poolDiscoveryService.js +7 -1
- package/src/lib/availability/poolDiscoveryService.js.map +1 -1
- package/src/lib/availability/quorumGossipHandler.js +13 -6
- package/src/lib/availability/quorumGossipHandler.js.map +1 -1
- package/src/lib/availability/reconciliationService.js +18 -12
- package/src/lib/availability/reconciliationService.js.map +1 -1
- package/src/lib/blockFetch/blockFetcher.js +14 -8
- package/src/lib/blockFetch/blockFetcher.js.map +1 -1
- package/src/lib/blockFetch/fetchQueue.js +9 -7
- package/src/lib/blockFetch/fetchQueue.js.map +1 -1
- package/src/lib/blockFetch/httpBlockFetchTransport.js +2 -0
- package/src/lib/blockFetch/httpBlockFetchTransport.js.map +1 -1
- package/src/lib/browserKeyring.js +5 -2
- package/src/lib/browserKeyring.js.map +1 -1
- package/src/lib/controllers/api/blocks.d.ts.map +1 -1
- package/src/lib/controllers/api/blocks.js +9 -3
- package/src/lib/controllers/api/blocks.js.map +1 -1
- package/src/lib/controllers/api/brighthub/connectionController.d.ts +80 -0
- package/src/lib/controllers/api/brighthub/connectionController.d.ts.map +1 -0
- package/src/lib/controllers/api/brighthub/connectionController.js +890 -0
- package/src/lib/controllers/api/brighthub/connectionController.js.map +1 -0
- package/src/lib/controllers/api/brighthub/index.d.ts +9 -0
- package/src/lib/controllers/api/brighthub/index.d.ts.map +1 -0
- package/src/lib/controllers/api/brighthub/index.js +12 -0
- package/src/lib/controllers/api/brighthub/index.js.map +1 -0
- package/src/lib/controllers/api/brighthub/messagingController.d.ts +84 -0
- package/src/lib/controllers/api/brighthub/messagingController.d.ts.map +1 -0
- package/src/lib/controllers/api/brighthub/messagingController.js +1077 -0
- package/src/lib/controllers/api/brighthub/messagingController.js.map +1 -0
- package/src/lib/controllers/api/brighthub/notificationController.d.ts +89 -0
- package/src/lib/controllers/api/brighthub/notificationController.d.ts.map +1 -0
- package/src/lib/controllers/api/brighthub/notificationController.js +444 -0
- package/src/lib/controllers/api/brighthub/notificationController.js.map +1 -0
- package/src/lib/controllers/api/brighthub/postController.d.ts +75 -0
- package/src/lib/controllers/api/brighthub/postController.d.ts.map +1 -0
- package/src/lib/controllers/api/brighthub/postController.js +388 -0
- package/src/lib/controllers/api/brighthub/postController.js.map +1 -0
- package/src/lib/controllers/api/brighthub/timelineController.d.ts +74 -0
- package/src/lib/controllers/api/brighthub/timelineController.d.ts.map +1 -0
- package/src/lib/controllers/api/brighthub/timelineController.js +418 -0
- package/src/lib/controllers/api/brighthub/timelineController.js.map +1 -0
- package/src/lib/controllers/api/brightpass.d.ts.map +1 -1
- package/src/lib/controllers/api/brightpass.js +46 -4
- package/src/lib/controllers/api/brightpass.js.map +1 -1
- package/src/lib/controllers/api/cbl.js +1 -0
- package/src/lib/controllers/api/cbl.js.map +1 -1
- package/src/lib/controllers/api/channels.js +2 -2
- package/src/lib/controllers/api/channels.js.map +1 -1
- package/src/lib/controllers/api/conversations.js +1 -1
- package/src/lib/controllers/api/conversations.js.map +1 -1
- package/src/lib/controllers/api/docs.js +2 -1
- package/src/lib/controllers/api/docs.js.map +1 -1
- package/src/lib/controllers/api/emails.d.ts.map +1 -1
- package/src/lib/controllers/api/emails.js +16 -2
- package/src/lib/controllers/api/emails.js.map +1 -1
- package/src/lib/controllers/api/explodingMessages.js +2 -4
- package/src/lib/controllers/api/explodingMessages.js.map +1 -1
- package/src/lib/controllers/api/groups.js +2 -2
- package/src/lib/controllers/api/groups.js.map +1 -1
- package/src/lib/controllers/api/health.d.ts +9 -2
- package/src/lib/controllers/api/health.d.ts.map +1 -1
- package/src/lib/controllers/api/health.js +48 -6
- package/src/lib/controllers/api/health.js.map +1 -1
- package/src/lib/controllers/api/index.d.ts +1 -0
- package/src/lib/controllers/api/index.d.ts.map +1 -1
- package/src/lib/controllers/api/index.js +1 -0
- package/src/lib/controllers/api/index.js.map +1 -1
- package/src/lib/controllers/api/introspection.js +2 -0
- package/src/lib/controllers/api/introspection.js.map +1 -1
- package/src/lib/controllers/api/messages.js +1 -1
- package/src/lib/controllers/api/messages.js.map +1 -1
- package/src/lib/controllers/api/nodes.js +6 -6
- package/src/lib/controllers/api/nodes.js.map +1 -1
- package/src/lib/controllers/api/quorum.d.ts +1 -1
- package/src/lib/controllers/api/quorum.d.ts.map +1 -1
- package/src/lib/controllers/api/quorum.js +3 -2
- package/src/lib/controllers/api/quorum.js.map +1 -1
- package/src/lib/controllers/api/scbl.js +3 -0
- package/src/lib/controllers/api/scbl.js.map +1 -1
- package/src/lib/controllers/api/sessions.d.ts +18 -2
- package/src/lib/controllers/api/sessions.d.ts.map +1 -1
- package/src/lib/controllers/api/sessions.js +60 -3
- package/src/lib/controllers/api/sessions.js.map +1 -1
- package/src/lib/controllers/api/sync.js +4 -4
- package/src/lib/controllers/api/sync.js.map +1 -1
- package/src/lib/controllers/api/user.d.ts +2 -0
- package/src/lib/controllers/api/user.d.ts.map +1 -1
- package/src/lib/controllers/api/user.js +95 -3
- package/src/lib/controllers/api/user.js.map +1 -1
- package/src/lib/controllers/identity/deviceController.js +2 -2
- package/src/lib/controllers/identity/deviceController.js.map +1 -1
- package/src/lib/controllers/identity/directoryController.js +1 -1
- package/src/lib/controllers/identity/directoryController.js.map +1 -1
- package/src/lib/controllers/identity/identityProofController.js +4 -6
- package/src/lib/controllers/identity/identityProofController.js.map +1 -1
- package/src/lib/databaseInit.d.ts +3 -3
- package/src/lib/databaseInit.js +5 -5
- package/src/lib/databaseInit.js.map +1 -1
- package/src/lib/datastore/block-document-store.d.ts.map +1 -1
- package/src/lib/datastore/block-document-store.js +18 -6
- package/src/lib/datastore/block-document-store.js.map +1 -1
- package/src/lib/datastore/document-store.d.ts.map +1 -1
- package/src/lib/datastore/memory-document-store.js +5 -2
- package/src/lib/datastore/memory-document-store.js.map +1 -1
- package/src/lib/encryption/encryptedMetadataService.js +2 -0
- package/src/lib/encryption/encryptedMetadataService.js.map +1 -1
- package/src/lib/encryption/encryptionAwareReplication.js +3 -0
- package/src/lib/encryption/encryptionAwareReplication.js.map +1 -1
- package/src/lib/encryption/errors.d.ts.map +1 -1
- package/src/lib/encryption/errors.js +8 -0
- package/src/lib/encryption/errors.js.map +1 -1
- package/src/lib/encryption/poolKeyManager.js +2 -0
- package/src/lib/encryption/poolKeyManager.js.map +1 -1
- package/src/lib/environment.js +10 -0
- package/src/lib/environment.js.map +1 -1
- package/src/lib/errors/express-validation.js +1 -0
- package/src/lib/errors/express-validation.js.map +1 -1
- package/src/lib/errors/invalid-backup-code-version.js +1 -0
- package/src/lib/errors/invalid-backup-code-version.js.map +1 -1
- package/src/lib/errors/memberIndexSchemaValidationError.js +1 -0
- package/src/lib/errors/memberIndexSchemaValidationError.js.map +1 -1
- package/src/lib/errors/missing-validated-data.js +2 -0
- package/src/lib/errors/missing-validated-data.js.map +1 -1
- package/src/lib/errors/token-not-found.js +1 -0
- package/src/lib/errors/token-not-found.js.map +1 -1
- package/src/lib/errors/typed-error-local.js +3 -0
- package/src/lib/errors/typed-error-local.js.map +1 -1
- package/src/lib/interfaces/brightpass/index.d.ts +1 -1
- package/src/lib/interfaces/brightpass/index.d.ts.map +1 -1
- package/src/lib/interfaces/environment.d.ts +1 -1
- package/src/lib/interfaces/environment.d.ts.map +1 -1
- package/src/lib/interfaces/member/memberProfileResponse.d.ts.map +1 -1
- package/src/lib/interfaces/member/operational.d.ts.map +1 -1
- package/src/lib/interfaces/member-init-config.d.ts +1 -1
- package/src/lib/interfaces/member-init-config.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-backup-codes-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-challenge-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-code-count-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-detailed-health-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-discover-block-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-express-validation-error.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-get-block-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-get-node-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-health-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-list-nodes-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-login-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-members-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-mnemonic-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-reconcile-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-register-node-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-registration-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-replicate-block-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-request-user-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-store-block-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-store-cbl-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-sync-request-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/brighthub/api-connection-response.d.ts +21 -0
- package/src/lib/interfaces/responses/brighthub/api-connection-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-connection-response.js +3 -0
- package/src/lib/interfaces/responses/brighthub/api-connection-response.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-messaging-response.d.ts +39 -0
- package/src/lib/interfaces/responses/brighthub/api-messaging-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-messaging-response.js +3 -0
- package/src/lib/interfaces/responses/brighthub/api-messaging-response.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-notification-response.d.ts +30 -0
- package/src/lib/interfaces/responses/brighthub/api-notification-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-notification-response.js +3 -0
- package/src/lib/interfaces/responses/brighthub/api-notification-response.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-post-response.d.ts +21 -0
- package/src/lib/interfaces/responses/brighthub/api-post-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-post-response.js +3 -0
- package/src/lib/interfaces/responses/brighthub/api-post-response.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-timeline-response.d.ts +14 -0
- package/src/lib/interfaces/responses/brighthub/api-timeline-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-timeline-response.js +3 -0
- package/src/lib/interfaces/responses/brighthub/api-timeline-response.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-user-profile-response.d.ts +10 -0
- package/src/lib/interfaces/responses/brighthub/api-user-profile-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-user-profile-response.js +3 -0
- package/src/lib/interfaces/responses/brighthub/api-user-profile-response.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/index.d.ts +13 -0
- package/src/lib/interfaces/responses/brighthub/index.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/index.js +9 -0
- package/src/lib/interfaces/responses/brighthub/index.js.map +1 -0
- package/src/lib/interfaces/responses/index.d.ts +1 -0
- package/src/lib/interfaces/responses/index.d.ts.map +1 -1
- package/src/lib/interfaces/storage/storedDocumentTypes.d.ts +1 -1
- package/src/lib/interfaces/storage/storedDocumentTypes.js +1 -1
- package/src/lib/interfaces/storage/userRoleSchema.d.ts.map +1 -1
- package/src/lib/interfaces/storage/userRoleSchema.js +1 -3
- package/src/lib/interfaces/storage/userRoleSchema.js.map +1 -1
- package/src/lib/middlewares.js +31 -31
- package/src/lib/middlewares.js.map +1 -1
- package/src/lib/nodeKeyring.js +2 -0
- package/src/lib/nodeKeyring.js.map +1 -1
- package/src/lib/plugins/brightchain-database-plugin.d.ts +14 -14
- package/src/lib/plugins/brightchain-database-plugin.d.ts.map +1 -1
- package/src/lib/plugins/brightchain-database-plugin.js +36 -34
- package/src/lib/plugins/brightchain-database-plugin.js.map +1 -1
- package/src/lib/routers/api.d.ts +62 -1
- package/src/lib/routers/api.d.ts.map +1 -1
- package/src/lib/routers/api.js +123 -2
- package/src/lib/routers/api.js.map +1 -1
- package/src/lib/routers/app.d.ts.map +1 -1
- package/src/lib/routers/app.js +10 -1
- package/src/lib/routers/app.js.map +1 -1
- package/src/lib/routers/base.js +2 -0
- package/src/lib/routers/base.js.map +1 -1
- package/src/lib/secureEnclaveKeyring.js +4 -2
- package/src/lib/secureEnclaveKeyring.js.map +1 -1
- package/src/lib/services/auth.d.ts.map +1 -1
- package/src/lib/services/auth.js +11 -2
- package/src/lib/services/auth.js.map +1 -1
- package/src/lib/services/base.js +1 -0
- package/src/lib/services/base.js.map +1 -1
- package/src/lib/services/blockServiceFactory.js +2 -0
- package/src/lib/services/blockServiceFactory.js.map +1 -1
- package/src/lib/services/blockStore.js +3 -2
- package/src/lib/services/blockStore.js.map +1 -1
- package/src/lib/services/blocks.js +1 -0
- package/src/lib/services/blocks.js.map +1 -1
- package/src/lib/services/brightChainBackupCodeService.d.ts +114 -0
- package/src/lib/services/brightChainBackupCodeService.d.ts.map +1 -0
- package/src/lib/services/brightChainBackupCodeService.js +303 -0
- package/src/lib/services/brightChainBackupCodeService.js.map +1 -0
- package/src/lib/services/brightchain-authentication-provider.d.ts.map +1 -1
- package/src/lib/services/brightchain-authentication-provider.js +40 -9
- package/src/lib/services/brightchain-authentication-provider.js.map +1 -1
- package/src/lib/services/brightchain-member-init.service.d.ts +17 -17
- package/src/lib/services/brightchain-member-init.service.d.ts.map +1 -1
- package/src/lib/services/brightchain-member-init.service.js +12 -9
- package/src/lib/services/brightchain-member-init.service.js.map +1 -1
- package/src/lib/services/brighthub/connectionService.d.ts +286 -0
- package/src/lib/services/brighthub/connectionService.d.ts.map +1 -0
- package/src/lib/services/brighthub/connectionService.js +1887 -0
- package/src/lib/services/brighthub/connectionService.js.map +1 -0
- package/src/lib/services/brighthub/discoveryService.d.ts +110 -0
- package/src/lib/services/brighthub/discoveryService.d.ts.map +1 -0
- package/src/lib/services/brighthub/discoveryService.js +528 -0
- package/src/lib/services/brighthub/discoveryService.js.map +1 -0
- package/src/lib/services/brighthub/feedService.d.ts +141 -0
- package/src/lib/services/brighthub/feedService.d.ts.map +1 -0
- package/src/lib/services/brighthub/feedService.js +418 -0
- package/src/lib/services/brighthub/feedService.js.map +1 -0
- package/src/lib/services/brighthub/index.d.ts +11 -0
- package/src/lib/services/brighthub/index.d.ts.map +1 -0
- package/src/lib/services/brighthub/index.js +14 -0
- package/src/lib/services/brighthub/index.js.map +1 -0
- package/src/lib/services/brighthub/messagingService.d.ts +109 -0
- package/src/lib/services/brighthub/messagingService.d.ts.map +1 -0
- package/src/lib/services/brighthub/messagingService.js +947 -0
- package/src/lib/services/brighthub/messagingService.js.map +1 -0
- package/src/lib/services/brighthub/messagingService.test-helpers.d.ts +75 -0
- package/src/lib/services/brighthub/messagingService.test-helpers.d.ts.map +1 -0
- package/src/lib/services/brighthub/messagingService.test-helpers.js +237 -0
- package/src/lib/services/brighthub/messagingService.test-helpers.js.map +1 -0
- package/src/lib/services/brighthub/notificationService.d.ts +172 -0
- package/src/lib/services/brighthub/notificationService.d.ts.map +1 -0
- package/src/lib/services/brighthub/notificationService.js +768 -0
- package/src/lib/services/brighthub/notificationService.js.map +1 -0
- package/src/lib/services/brighthub/notificationService.test-helpers.d.ts +75 -0
- package/src/lib/services/brighthub/notificationService.test-helpers.d.ts.map +1 -0
- package/src/lib/services/brighthub/notificationService.test-helpers.js +230 -0
- package/src/lib/services/brighthub/notificationService.test-helpers.js.map +1 -0
- package/src/lib/services/brighthub/postService.d.ts +129 -0
- package/src/lib/services/brighthub/postService.d.ts.map +1 -0
- package/src/lib/services/brighthub/postService.js +470 -0
- package/src/lib/services/brighthub/postService.js.map +1 -0
- package/src/lib/services/brighthub/postService.test-helpers.d.ts +40 -0
- package/src/lib/services/brighthub/postService.test-helpers.d.ts.map +1 -0
- package/src/lib/services/brighthub/postService.test-helpers.js +84 -0
- package/src/lib/services/brighthub/postService.test-helpers.js.map +1 -0
- package/src/lib/services/brighthub/textFormatter.d.ts +64 -0
- package/src/lib/services/brighthub/textFormatter.d.ts.map +1 -0
- package/src/lib/services/brighthub/textFormatter.js +256 -0
- package/src/lib/services/brighthub/textFormatter.js.map +1 -0
- package/src/lib/services/brighthub/threadService.d.ts +79 -0
- package/src/lib/services/brighthub/threadService.d.ts.map +1 -0
- package/src/lib/services/brighthub/threadService.js +246 -0
- package/src/lib/services/brighthub/threadService.js.map +1 -0
- package/src/lib/services/brighthub/userProfileService.d.ts +203 -0
- package/src/lib/services/brighthub/userProfileService.d.ts.map +1 -0
- package/src/lib/services/brighthub/userProfileService.js +868 -0
- package/src/lib/services/brighthub/userProfileService.js.map +1 -0
- package/src/lib/services/brighthub/userProfileService.test-helpers.d.ts +86 -0
- package/src/lib/services/brighthub/userProfileService.test-helpers.d.ts.map +1 -0
- package/src/lib/services/brighthub/userProfileService.test-helpers.js +169 -0
- package/src/lib/services/brighthub/userProfileService.test-helpers.js.map +1 -0
- package/src/lib/services/brighthub/webSocketServer.d.ts +68 -0
- package/src/lib/services/brighthub/webSocketServer.d.ts.map +1 -0
- package/src/lib/services/brighthub/webSocketServer.js +194 -0
- package/src/lib/services/brighthub/webSocketServer.js.map +1 -0
- package/src/lib/services/brightpass/auditLogger.js +10 -5
- package/src/lib/services/brightpass/auditLogger.js.map +1 -1
- package/src/lib/services/brightpass/vaultEncryption.js +8 -8
- package/src/lib/services/brightpass/vaultEncryption.js.map +1 -1
- package/src/lib/services/brightpass.js +16 -8
- package/src/lib/services/brightpass.js.map +1 -1
- package/src/lib/services/cliOperatorPrompt.js +5 -2
- package/src/lib/services/cliOperatorPrompt.js.map +1 -1
- package/src/lib/services/clientWebSocketServer.d.ts +69 -4
- package/src/lib/services/clientWebSocketServer.d.ts.map +1 -1
- package/src/lib/services/clientWebSocketServer.js +188 -10
- package/src/lib/services/clientWebSocketServer.js.map +1 -1
- package/src/lib/services/contentAwareBlocksService.js +2 -0
- package/src/lib/services/contentAwareBlocksService.js.map +1 -1
- package/src/lib/services/contentIngestionService.d.ts.map +1 -1
- package/src/lib/services/contentIngestionService.js +2 -0
- package/src/lib/services/contentIngestionService.js.map +1 -1
- package/src/lib/services/diskQuorumService.js +3 -0
- package/src/lib/services/diskQuorumService.js.map +1 -1
- package/src/lib/services/email.js +5 -0
- package/src/lib/services/email.js.map +1 -1
- package/src/lib/services/eventNotificationSystem.d.ts +51 -10
- package/src/lib/services/eventNotificationSystem.d.ts.map +1 -1
- package/src/lib/services/eventNotificationSystem.js +76 -23
- package/src/lib/services/eventNotificationSystem.js.map +1 -1
- package/src/lib/services/expirationScheduler.js +6 -3
- package/src/lib/services/expirationScheduler.js.map +1 -1
- package/src/lib/services/fakeEmailService.js +3 -4
- package/src/lib/services/fakeEmailService.js.map +1 -1
- package/src/lib/services/fec.js +1 -3
- package/src/lib/services/fec.js.map +1 -1
- package/src/lib/services/fecServiceFactory.js +2 -2
- package/src/lib/services/fecServiceFactory.js.map +1 -1
- package/src/lib/services/fecUsageExample.js +1 -3
- package/src/lib/services/fecUsageExample.js.map +1 -1
- package/src/lib/services/identityExpirationScheduler.d.ts.map +1 -1
- package/src/lib/services/identityExpirationScheduler.js +7 -2
- package/src/lib/services/identityExpirationScheduler.js.map +1 -1
- package/src/lib/services/index.d.ts +3 -2
- package/src/lib/services/index.d.ts.map +1 -1
- package/src/lib/services/index.js +3 -2
- package/src/lib/services/index.js.map +1 -1
- package/src/lib/services/messageEventsWebSocketHandler.js +1 -0
- package/src/lib/services/messageEventsWebSocketHandler.js.map +1 -1
- package/src/lib/services/messagePassingService.js +5 -0
- package/src/lib/services/messagePassingService.js.map +1 -1
- package/src/lib/services/nativeRsFecService.js +3 -5
- package/src/lib/services/nativeRsFecService.js.map +1 -1
- package/src/lib/services/presenceService.js +5 -4
- package/src/lib/services/presenceService.js.map +1 -1
- package/src/lib/services/quorum.js +3 -2
- package/src/lib/services/quorum.js.map +1 -1
- package/src/lib/services/quorumDatabaseAdapter.d.ts +5 -5
- package/src/lib/services/quorumDatabaseAdapter.d.ts.map +1 -1
- package/src/lib/services/quorumDatabaseAdapter.js +5 -3
- package/src/lib/services/quorumDatabaseAdapter.js.map +1 -1
- package/src/lib/services/rbac-input-builder.js +5 -0
- package/src/lib/services/rbac-input-builder.js.map +1 -1
- package/src/lib/services/secureKeyStorage.js +3 -0
- package/src/lib/services/secureKeyStorage.js.map +1 -1
- package/src/lib/services/sessionAdapter.d.ts +4 -4
- package/src/lib/services/sessionAdapter.d.ts.map +1 -1
- package/src/lib/services/sessionAdapter.js +3 -2
- package/src/lib/services/sessionAdapter.js.map +1 -1
- package/src/lib/services/webSocketMessageServer.js +7 -4
- package/src/lib/services/webSocketMessageServer.js.map +1 -1
- package/src/lib/services/webSocketPeerProvider.js +2 -1
- package/src/lib/services/webSocketPeerProvider.js.map +1 -1
- package/src/lib/services/websocketHandler.js +9 -1
- package/src/lib/services/websocketHandler.js.map +1 -1
- package/src/lib/shared-types.d.ts +1 -2
- package/src/lib/shared-types.d.ts.map +1 -1
- package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.d.ts +63 -0
- package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.d.ts.map +1 -0
- package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.js +160 -0
- package/src/lib/stores/__tests__/helpers/mockCloudBlockStore.js.map +1 -0
- package/src/lib/stores/availabilityAwareBlockStore.js +34 -5
- package/src/lib/stores/availabilityAwareBlockStore.js.map +1 -1
- package/src/lib/stores/cloudBlockStoreBase.d.ts +121 -0
- package/src/lib/stores/cloudBlockStoreBase.d.ts.map +1 -0
- package/src/lib/stores/cloudBlockStoreBase.js +1165 -0
- package/src/lib/stores/cloudBlockStoreBase.js.map +1 -0
- package/src/lib/stores/diskBlockAsyncStore.js +9 -5
- package/src/lib/stores/diskBlockAsyncStore.js.map +1 -1
- package/src/lib/stores/diskBlockMetadataStore.js +2 -0
- package/src/lib/stores/diskBlockMetadataStore.js.map +1 -1
- package/src/lib/stores/diskBlockStore.js +10 -8
- package/src/lib/stores/diskBlockStore.js.map +1 -1
- package/src/lib/stores/diskCBLStore.d.ts.map +1 -1
- package/src/lib/stores/diskCBLStore.js +8 -0
- package/src/lib/stores/diskCBLStore.js.map +1 -1
- package/src/lib/stores/index.d.ts +1 -0
- package/src/lib/stores/index.d.ts.map +1 -1
- package/src/lib/stores/index.js +1 -0
- package/src/lib/stores/index.js.map +1 -1
- package/src/lib/systemKeyring.d.ts.map +1 -1
- package/src/lib/systemKeyring.js +5 -4
- package/src/lib/systemKeyring.js.map +1 -1
- package/src/lib/transforms/checksumTransform.js +1 -0
- package/src/lib/transforms/checksumTransform.js.map +1 -1
- package/src/lib/transforms/memoryWritableStream.js +1 -0
- package/src/lib/transforms/memoryWritableStream.js.map +1 -1
- package/src/lib/transforms/xorMultipleTransform.js +3 -0
- package/src/lib/transforms/xorMultipleTransform.js.map +1 -1
- package/src/lib/utils/rehydration.d.ts +1 -1
- package/src/lib/utils/rehydration.js +1 -1
- package/src/lib/utils/serialization.d.ts +1 -1
- package/src/lib/utils/serialization.js +1 -1
- package/src/lib/services/backupCodeService.d.ts +0 -35
- package/src/lib/services/backupCodeService.d.ts.map +0 -1
- package/src/lib/services/backupCodeService.js +0 -109
- 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;
|
|
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:
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
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
|
|
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
|
|
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 {
|
|
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
|
|
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
|
|
31
|
+
* The initialised BrightDb instance.
|
|
32
32
|
* @throws Error if initialize() has not been called yet.
|
|
33
33
|
*/
|
|
34
|
-
get db():
|
|
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
|
|
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
|
|
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<
|
|
53
|
+
initialize(config: IBrightChainMemberInitConfig, input: IBrightChainMemberInitInput<TID>): Promise<IBrightChainBaseInitResult<BrightDb, TID>>;
|
|
54
54
|
/**
|
|
55
|
-
* Register typed Models for all RBAC collections on the given
|
|
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
|
|
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,
|
|
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,
|
|
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<
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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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"}
|