@brightchain/brightchain-api-lib 0.15.0 → 0.17.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 +4 -4
- package/src/browser.d.ts +13 -0
- package/src/browser.d.ts.map +1 -0
- package/src/browser.js +16 -0
- package/src/browser.js.map +1 -0
- package/src/index.d.ts +5 -1
- package/src/index.d.ts.map +1 -1
- package/src/index.js +7 -1
- package/src/index.js.map +1 -1
- package/src/lib/adapters/brightChainDbDocumentStoreAdapter.d.ts +24 -0
- package/src/lib/adapters/brightChainDbDocumentStoreAdapter.d.ts.map +1 -0
- package/src/lib/adapters/brightChainDbDocumentStoreAdapter.js +53 -0
- package/src/lib/adapters/brightChainDbDocumentStoreAdapter.js.map +1 -0
- package/src/lib/application-base.d.ts +8 -37
- package/src/lib/application-base.d.ts.map +1 -1
- package/src/lib/application-base.js +8 -80
- package/src/lib/application-base.js.map +1 -1
- package/src/lib/application.d.ts +56 -7
- package/src/lib/application.d.ts.map +1 -1
- package/src/lib/application.js +169 -134
- package/src/lib/application.js.map +1 -1
- package/src/lib/availability/gossipService.d.ts +20 -1
- package/src/lib/availability/gossipService.d.ts.map +1 -1
- package/src/lib/availability/gossipService.js +59 -0
- package/src/lib/availability/gossipService.js.map +1 -1
- package/src/lib/availability/index.d.ts +1 -0
- package/src/lib/availability/index.d.ts.map +1 -1
- package/src/lib/availability/index.js +1 -0
- package/src/lib/availability/index.js.map +1 -1
- package/src/lib/availability/poolDiscoveryService.d.ts +117 -0
- package/src/lib/availability/poolDiscoveryService.d.ts.map +1 -0
- package/src/lib/availability/poolDiscoveryService.js +218 -0
- package/src/lib/availability/poolDiscoveryService.js.map +1 -0
- package/src/lib/blockFetch/httpBlockFetchTransport.d.ts.map +1 -1
- package/src/lib/blockFetch/httpBlockFetchTransport.js.map +1 -1
- package/src/lib/constants.js +2 -2
- package/src/lib/constants.js.map +1 -1
- package/src/lib/controllers/api/blocks.d.ts.map +1 -1
- package/src/lib/controllers/api/blocks.js +290 -290
- package/src/lib/controllers/api/blocks.js.map +1 -1
- package/src/lib/controllers/api/brightpass.d.ts.map +1 -1
- package/src/lib/controllers/api/brightpass.js +270 -274
- package/src/lib/controllers/api/brightpass.js.map +1 -1
- package/src/lib/controllers/api/energy.d.ts.map +1 -1
- package/src/lib/controllers/api/energy.js +93 -93
- package/src/lib/controllers/api/energy.js.map +1 -1
- package/src/lib/controllers/api/health.d.ts +4 -4
- package/src/lib/controllers/api/health.d.ts.map +1 -1
- package/src/lib/controllers/api/health.js.map +1 -1
- package/src/lib/controllers/api/i18n.d.ts.map +1 -1
- package/src/lib/controllers/api/i18n.js +8 -8
- package/src/lib/controllers/api/i18n.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.d.ts +60 -0
- package/src/lib/controllers/api/introspection.d.ts.map +1 -0
- package/src/lib/controllers/api/introspection.js +375 -0
- package/src/lib/controllers/api/introspection.js.map +1 -0
- package/src/lib/controllers/api/nodes.d.ts +7 -6
- package/src/lib/controllers/api/nodes.d.ts.map +1 -1
- package/src/lib/controllers/api/nodes.js.map +1 -1
- package/src/lib/controllers/api/quorum.d.ts.map +1 -1
- package/src/lib/controllers/api/quorum.js +483 -483
- package/src/lib/controllers/api/quorum.js.map +1 -1
- package/src/lib/controllers/api/sessions.d.ts.map +1 -1
- package/src/lib/controllers/api/sessions.js +8 -8
- package/src/lib/controllers/api/sessions.js.map +1 -1
- package/src/lib/controllers/api/sync.d.ts +6 -5
- package/src/lib/controllers/api/sync.d.ts.map +1 -1
- package/src/lib/controllers/api/sync.js.map +1 -1
- package/src/lib/controllers/api/user.d.ts.map +1 -1
- package/src/lib/controllers/api/user.js +260 -180
- package/src/lib/controllers/api/user.js.map +1 -1
- package/src/lib/controllers/base.d.ts +1 -2
- package/src/lib/controllers/base.d.ts.map +1 -1
- package/src/lib/controllers/base.js +0 -1
- package/src/lib/controllers/base.js.map +1 -1
- package/src/lib/databaseInit.d.ts +28 -0
- package/src/lib/databaseInit.d.ts.map +1 -0
- package/src/lib/databaseInit.js +107 -0
- package/src/lib/databaseInit.js.map +1 -0
- package/src/lib/enumerations/brightChainApiStrings.d.ts +4 -0
- package/src/lib/enumerations/brightChainApiStrings.d.ts.map +1 -1
- package/src/lib/enumerations/brightChainApiStrings.js +4 -0
- package/src/lib/enumerations/brightChainApiStrings.js.map +1 -1
- package/src/lib/enumerations/index.d.ts +1 -0
- package/src/lib/enumerations/index.d.ts.map +1 -1
- package/src/lib/enumerations/index.js +1 -0
- package/src/lib/enumerations/index.js.map +1 -1
- package/src/lib/enumerations/websocketMessageType.d.ts +5 -1
- package/src/lib/enumerations/websocketMessageType.d.ts.map +1 -1
- package/src/lib/enumerations/websocketMessageType.js +4 -0
- package/src/lib/enumerations/websocketMessageType.js.map +1 -1
- package/src/lib/environment.d.ts +5 -0
- package/src/lib/environment.d.ts.map +1 -1
- package/src/lib/environment.js +7 -0
- package/src/lib/environment.js.map +1 -1
- package/src/lib/errors/index.d.ts +1 -0
- package/src/lib/errors/index.d.ts.map +1 -1
- package/src/lib/errors/index.js +1 -0
- package/src/lib/errors/index.js.map +1 -1
- package/src/lib/errors/memberIndexSchemaValidationError.d.ts +6 -0
- package/src/lib/errors/memberIndexSchemaValidationError.d.ts.map +1 -0
- package/src/lib/errors/memberIndexSchemaValidationError.js +15 -0
- package/src/lib/errors/memberIndexSchemaValidationError.js.map +1 -0
- package/src/lib/factories/blockStoreFactory.d.ts +2 -13
- package/src/lib/factories/blockStoreFactory.d.ts.map +1 -1
- package/src/lib/factories/blockStoreFactory.js +5 -10
- package/src/lib/factories/blockStoreFactory.js.map +1 -1
- package/src/lib/interfaces/application.d.ts +7 -1
- package/src/lib/interfaces/application.d.ts.map +1 -1
- package/src/lib/interfaces/blocksHandlers.d.ts +3 -3
- package/src/lib/interfaces/blocksHandlers.d.ts.map +1 -1
- package/src/lib/interfaces/brightchain-init-result.d.ts +17 -0
- package/src/lib/interfaces/brightchain-init-result.d.ts.map +1 -0
- package/src/lib/interfaces/brightchain-init-result.js +9 -0
- package/src/lib/interfaces/brightchain-init-result.js.map +1 -0
- package/src/lib/interfaces/cblHandlers.d.ts +3 -2
- package/src/lib/interfaces/cblHandlers.d.ts.map +1 -1
- package/src/lib/interfaces/environment.d.ts +4 -0
- package/src/lib/interfaces/environment.d.ts.map +1 -1
- package/src/lib/interfaces/index.d.ts +5 -0
- package/src/lib/interfaces/index.d.ts.map +1 -1
- package/src/lib/interfaces/introspectionApiResponses.d.ts +66 -0
- package/src/lib/interfaces/introspectionApiResponses.d.ts.map +1 -0
- package/src/lib/interfaces/introspectionApiResponses.js +3 -0
- package/src/lib/interfaces/introspectionApiResponses.js.map +1 -0
- package/src/lib/interfaces/members-handlers.d.ts +11 -0
- package/src/lib/interfaces/members-handlers.d.ts.map +1 -0
- package/src/lib/interfaces/members-handlers.js +3 -0
- package/src/lib/interfaces/members-handlers.js.map +1 -0
- package/src/lib/interfaces/responses/api-backup-codes-response.d.ts +2 -5
- package/src/lib/interfaces/responses/api-backup-codes-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-challenge-response.d.ts +2 -5
- package/src/lib/interfaces/responses/api-challenge-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-code-count-response.d.ts +2 -5
- 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 +5 -0
- package/src/lib/interfaces/responses/api-detailed-health-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-detailed-health-response.js +3 -0
- package/src/lib/interfaces/responses/api-detailed-health-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-discover-block-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-discover-block-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-discover-block-response.js +3 -0
- package/src/lib/interfaces/responses/api-discover-block-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-error.d.ts +5 -0
- package/src/lib/interfaces/responses/api-error.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-error.js +3 -0
- package/src/lib/interfaces/responses/api-error.js.map +1 -0
- package/src/lib/interfaces/responses/api-express-validation-error.d.ts +7 -0
- package/src/lib/interfaces/responses/api-express-validation-error.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-express-validation-error.js +3 -0
- package/src/lib/interfaces/responses/api-express-validation-error.js.map +1 -0
- package/src/lib/interfaces/responses/api-get-block-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-get-block-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-get-block-response.js +3 -0
- package/src/lib/interfaces/responses/api-get-block-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-get-node-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-get-node-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-get-node-response.js +3 -0
- package/src/lib/interfaces/responses/api-get-node-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-health-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-health-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-health-response.js +3 -0
- package/src/lib/interfaces/responses/api-health-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-list-nodes-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-list-nodes-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-list-nodes-response.js +3 -0
- package/src/lib/interfaces/responses/api-list-nodes-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-login-response.d.ts +2 -14
- package/src/lib/interfaces/responses/api-login-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-members-response.d.ts +8 -0
- package/src/lib/interfaces/responses/api-members-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-members-response.js +3 -0
- package/src/lib/interfaces/responses/api-members-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-mnemonic-response.d.ts +2 -5
- package/src/lib/interfaces/responses/api-mnemonic-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-reconcile-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-reconcile-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-reconcile-response.js +3 -0
- package/src/lib/interfaces/responses/api-reconcile-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-register-node-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-register-node-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-register-node-response.js +3 -0
- package/src/lib/interfaces/responses/api-register-node-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-registration-response.d.ts +2 -10
- package/src/lib/interfaces/responses/api-registration-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-replicate-block-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-replicate-block-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-replicate-block-response.js +3 -0
- package/src/lib/interfaces/responses/api-replicate-block-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-request-user-response.d.ts +2 -6
- package/src/lib/interfaces/responses/api-request-user-response.d.ts.map +1 -1
- package/src/lib/interfaces/responses/api-status-code-response.d.ts +7 -0
- package/src/lib/interfaces/responses/api-status-code-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-status-code-response.js +3 -0
- package/src/lib/interfaces/responses/api-status-code-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-store-block-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-store-block-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-store-block-response.js +3 -0
- package/src/lib/interfaces/responses/api-store-block-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-store-cbl-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-store-cbl-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-store-cbl-response.js +3 -0
- package/src/lib/interfaces/responses/api-store-cbl-response.js.map +1 -0
- package/src/lib/interfaces/responses/api-sync-request-response.d.ts +5 -0
- package/src/lib/interfaces/responses/api-sync-request-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/api-sync-request-response.js +3 -0
- package/src/lib/interfaces/responses/api-sync-request-response.js.map +1 -0
- package/src/lib/interfaces/responses/block-data-response.d.ts +11 -0
- package/src/lib/interfaces/responses/block-data-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/block-data-response.js +3 -0
- package/src/lib/interfaces/responses/block-data-response.js.map +1 -0
- package/src/lib/interfaces/responses/block-location-response.d.ts +11 -0
- package/src/lib/interfaces/responses/block-location-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/block-location-response.js +3 -0
- package/src/lib/interfaces/responses/block-location-response.js.map +1 -0
- package/src/lib/interfaces/responses/index.d.ts +18 -0
- package/src/lib/interfaces/responses/index.d.ts.map +1 -1
- package/src/lib/interfaces/status-code-response.d.ts +1 -6
- package/src/lib/interfaces/status-code-response.d.ts.map +1 -1
- package/src/lib/interfaces/storage/client-session.d.ts +8 -0
- package/src/lib/interfaces/storage/client-session.d.ts.map +1 -0
- package/src/lib/interfaces/storage/client-session.js +3 -0
- package/src/lib/interfaces/storage/client-session.js.map +1 -0
- package/src/lib/interfaces/storage/collection.d.ts +9 -0
- package/src/lib/interfaces/storage/collection.d.ts.map +1 -0
- package/src/lib/interfaces/storage/collection.js +3 -0
- package/src/lib/interfaces/storage/collection.js.map +1 -0
- package/src/lib/interfaces/storage/database-lifecycle-hooks.d.ts +8 -0
- package/src/lib/interfaces/storage/database-lifecycle-hooks.d.ts.map +1 -0
- package/src/lib/interfaces/storage/database-lifecycle-hooks.js +3 -0
- package/src/lib/interfaces/storage/database-lifecycle-hooks.js.map +1 -0
- package/src/lib/interfaces/storage/database.d.ts +9 -0
- package/src/lib/interfaces/storage/database.d.ts.map +1 -0
- package/src/lib/interfaces/storage/database.js +3 -0
- package/src/lib/interfaces/storage/database.js.map +1 -0
- package/src/lib/interfaces/storage/document-types.d.ts +9 -0
- package/src/lib/interfaces/storage/document-types.d.ts.map +1 -0
- package/src/lib/interfaces/storage/document-types.js +10 -0
- package/src/lib/interfaces/storage/document-types.js.map +1 -0
- package/src/lib/interfaces/storage/index.d.ts +7 -0
- package/src/lib/interfaces/storage/index.d.ts.map +1 -0
- package/src/lib/interfaces/storage/index.js +7 -0
- package/src/lib/interfaces/storage/index.js.map +1 -0
- package/src/lib/interfaces/storage/memberIndexSchema.d.ts +11 -0
- package/src/lib/interfaces/storage/memberIndexSchema.d.ts.map +1 -0
- package/src/lib/interfaces/storage/memberIndexSchema.js +26 -0
- package/src/lib/interfaces/storage/memberIndexSchema.js.map +1 -0
- package/src/lib/interfaces/userApiResponse.d.ts +17 -0
- package/src/lib/interfaces/userApiResponse.d.ts.map +1 -0
- package/src/lib/interfaces/userApiResponse.js +3 -0
- package/src/lib/interfaces/userApiResponse.js.map +1 -0
- package/src/lib/interfaces/websocketMessages.d.ts +64 -1
- package/src/lib/interfaces/websocketMessages.d.ts.map +1 -1
- package/src/lib/middleware/index.d.ts +2 -0
- package/src/lib/middleware/index.d.ts.map +1 -0
- package/src/lib/middleware/index.js +6 -0
- package/src/lib/middleware/index.js.map +1 -0
- package/src/lib/middleware/validateBody.d.ts +13 -0
- package/src/lib/middleware/validateBody.d.ts.map +1 -0
- package/src/lib/middleware/validateBody.js +35 -0
- package/src/lib/middleware/validateBody.js.map +1 -0
- package/src/lib/middlewares/authentication.d.ts +2 -0
- package/src/lib/middlewares/authentication.d.ts.map +1 -1
- package/src/lib/middlewares/authentication.js.map +1 -1
- package/src/lib/routers/api.d.ts +27 -0
- package/src/lib/routers/api.d.ts.map +1 -1
- package/src/lib/routers/api.js +44 -0
- package/src/lib/routers/api.js.map +1 -1
- package/src/lib/routers/app.d.ts +22 -14
- package/src/lib/routers/app.d.ts.map +1 -1
- package/src/lib/routers/app.js +28 -116
- package/src/lib/routers/app.js.map +1 -1
- package/src/lib/services/auth.d.ts +3 -1
- package/src/lib/services/auth.d.ts.map +1 -1
- package/src/lib/services/auth.js +51 -4
- package/src/lib/services/auth.js.map +1 -1
- package/src/lib/services/brightchain-member-init.service.d.ts +66 -0
- package/src/lib/services/brightchain-member-init.service.d.ts.map +1 -0
- package/src/lib/services/brightchain-member-init.service.js +152 -0
- package/src/lib/services/brightchain-member-init.service.js.map +1 -0
- package/src/lib/services/brightpass.property.helpers.d.ts +23 -0
- package/src/lib/services/brightpass.property.helpers.d.ts.map +1 -0
- package/src/lib/services/brightpass.property.helpers.js +113 -0
- package/src/lib/services/brightpass.property.helpers.js.map +1 -0
- package/src/lib/services/clientWebSocketServer.d.ts +147 -0
- package/src/lib/services/clientWebSocketServer.d.ts.map +1 -0
- package/src/lib/services/clientWebSocketServer.js +437 -0
- package/src/lib/services/clientWebSocketServer.js.map +1 -0
- package/src/lib/services/index.d.ts +2 -0
- package/src/lib/services/index.d.ts.map +1 -1
- package/src/lib/services/index.js +2 -0
- package/src/lib/services/index.js.map +1 -1
- package/src/lib/stores/diskBlockAsyncStore.d.ts +4 -4
- package/src/lib/stores/diskBlockAsyncStore.d.ts.map +1 -1
- package/src/lib/stores/diskBlockAsyncStore.js.map +1 -1
- package/src/lib/stores/diskBlockStore.d.ts +82 -17
- package/src/lib/stores/diskBlockStore.d.ts.map +1 -1
- package/src/lib/stores/diskBlockStore.js +787 -19
- package/src/lib/stores/diskBlockStore.js.map +1 -1
- package/src/lib/stores/diskBlockSyncStore.d.ts +24 -5
- package/src/lib/stores/diskBlockSyncStore.d.ts.map +1 -1
- package/src/lib/stores/diskBlockSyncStore.js +30 -13
- package/src/lib/stores/diskBlockSyncStore.js.map +1 -1
- package/src/lib/upstream-stubs.d.ts +36 -0
- package/src/lib/upstream-stubs.d.ts.map +1 -0
- package/src/lib/upstream-stubs.js +43 -0
- package/src/lib/upstream-stubs.js.map +1 -0
- package/src/lib/validation/userValidation.d.ts +27 -0
- package/src/lib/validation/userValidation.d.ts.map +1 -0
- package/src/lib/validation/userValidation.js +70 -0
- package/src/lib/validation/userValidation.js.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/middlewares/authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAS1D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,OAAO;IACpD,aAAa,CAAC,EAAE,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/middlewares/authentication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAS1D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,OAAO;IACpD,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,UAAU,EAAE,CAAC;IAC7B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAaxD;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,IAE1D,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,IAAI,CAsER;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,IAEpD,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,IAAI,CAqDR;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,SAvJpC,qBAAqB,OACrB,QAAQ,QACP,YAAY,KACjB,IAAI,CAsJR;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,SAnKrC,qBAAqB,OACrB,QAAQ,QACP,YAAY,KACjB,IAAI,CAkKR;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,SA1FtC,qBAAqB,OACrB,QAAQ,QACP,YAAY,KACjB,IAAI,CAyFR;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,SAtGzC,qBAAqB,OACrB,QAAQ,QACP,YAAY,KACjB,IAAI,CAqGR;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,KAAK,EAAE,UAAU,EAAE,SAlHhD,qBAAqB,OACrB,QAAQ,QACP,YAAY,KACjB,IAAI,CAiHR;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,UApNjE,qBAAqB,OACrB,QAAQ,QACP,YAAY,KACjB,IAAI,IAmNR;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,MAAM,EACjB,GAAG,KAAK,EAAE,UAAU,EAAE,UAnOf,qBAAqB,OACrB,QAAQ,QACP,YAAY,KACjB,IAAI,IAmOR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/middlewares/authentication.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/middlewares/authentication.ts"],"names":[],"mappings":"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"}
|
package/src/lib/routers/api.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ import { ConversationService } from '@brightchain/brightchain-lib/lib/services/c
|
|
|
4
4
|
import { GroupService } from '@brightchain/brightchain-lib/lib/services/communication/groupService';
|
|
5
5
|
import { PermissionService } from '@brightchain/brightchain-lib/lib/services/communication/permissionService';
|
|
6
6
|
import { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
7
|
+
import { PoolDiscoveryService } from '../availability/poolDiscoveryService';
|
|
8
|
+
import { IntrospectionController, IntrospectionControllerConfig } from '../controllers/api/introspection';
|
|
7
9
|
import { NodesController } from '../controllers/api/nodes';
|
|
8
10
|
import { SyncController } from '../controllers/api/sync';
|
|
9
11
|
import { IBrightChainApplication } from '../interfaces';
|
|
@@ -31,6 +33,8 @@ export declare class ApiRouter<TID extends PlatformID = DefaultBackendIdType> ex
|
|
|
31
33
|
private readonly scblController;
|
|
32
34
|
private readonly syncController;
|
|
33
35
|
private readonly userController;
|
|
36
|
+
private introspectionController;
|
|
37
|
+
private readonly brightchainApplication;
|
|
34
38
|
private readonly jwtService;
|
|
35
39
|
private readonly emailService;
|
|
36
40
|
private readonly roleService;
|
|
@@ -137,5 +141,28 @@ export declare class ApiRouter<TID extends PlatformID = DefaultBackendIdType> ex
|
|
|
137
141
|
* Get the ChannelController instance.
|
|
138
142
|
*/
|
|
139
143
|
getChannelController(): typeof this.channelController;
|
|
144
|
+
/**
|
|
145
|
+
* Initialize the IntrospectionController with its full config.
|
|
146
|
+
* Called once all dependencies are available.
|
|
147
|
+
* Mounts routes at `/introspection`.
|
|
148
|
+
* @requirements 1.1, 1.4, 1.5
|
|
149
|
+
*/
|
|
150
|
+
initIntrospectionController(config: IntrospectionControllerConfig): void;
|
|
151
|
+
/**
|
|
152
|
+
* Update the IntrospectionController config after initialization.
|
|
153
|
+
* Useful when individual dependencies become available incrementally.
|
|
154
|
+
* @requirements 1.4, 1.5
|
|
155
|
+
*/
|
|
156
|
+
setIntrospectionConfig(config: IntrospectionControllerConfig): void;
|
|
157
|
+
/**
|
|
158
|
+
* Set the PoolDiscoveryService on the IntrospectionController.
|
|
159
|
+
* Called by App.setPoolDiscoveryService after the service is wired.
|
|
160
|
+
* @requirements 7.1, 8.3
|
|
161
|
+
*/
|
|
162
|
+
setIntrospectionPoolDiscoveryService(service: PoolDiscoveryService): void;
|
|
163
|
+
/**
|
|
164
|
+
* Get the IntrospectionController instance.
|
|
165
|
+
*/
|
|
166
|
+
getIntrospectionController(): IntrospectionController<TID> | null;
|
|
140
167
|
}
|
|
141
168
|
//# sourceMappingURL=api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"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"}
|
package/src/lib/routers/api.js
CHANGED
|
@@ -14,6 +14,7 @@ const energy_1 = require("../controllers/api/energy");
|
|
|
14
14
|
const groups_1 = require("../controllers/api/groups");
|
|
15
15
|
const health_1 = require("../controllers/api/health");
|
|
16
16
|
const i18n_1 = require("../controllers/api/i18n");
|
|
17
|
+
const introspection_1 = require("../controllers/api/introspection");
|
|
17
18
|
const messages_1 = require("../controllers/api/messages");
|
|
18
19
|
const nodes_1 = require("../controllers/api/nodes");
|
|
19
20
|
const quorum_1 = require("../controllers/api/quorum");
|
|
@@ -31,6 +32,8 @@ class ApiRouter extends base_1.BaseRouter {
|
|
|
31
32
|
*/
|
|
32
33
|
constructor(application) {
|
|
33
34
|
super(application);
|
|
35
|
+
this.introspectionController = null;
|
|
36
|
+
this.brightchainApplication = application;
|
|
34
37
|
this.jwtService = new node_express_suite_1.JwtService(application);
|
|
35
38
|
this.roleService = new node_express_suite_1.RoleService(application);
|
|
36
39
|
this.emailService = new email_1.EmailService(application);
|
|
@@ -210,6 +213,47 @@ class ApiRouter extends base_1.BaseRouter {
|
|
|
210
213
|
getChannelController() {
|
|
211
214
|
return this.channelController;
|
|
212
215
|
}
|
|
216
|
+
// ─── Introspection controller wiring ────────────────────────────────
|
|
217
|
+
/**
|
|
218
|
+
* Initialize the IntrospectionController with its full config.
|
|
219
|
+
* Called once all dependencies are available.
|
|
220
|
+
* Mounts routes at `/introspection`.
|
|
221
|
+
* @requirements 1.1, 1.4, 1.5
|
|
222
|
+
*/
|
|
223
|
+
initIntrospectionController(config) {
|
|
224
|
+
this.introspectionController = new introspection_1.IntrospectionController(this.brightchainApplication, config);
|
|
225
|
+
this.router.use('/introspection', this.introspectionController.router);
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Update the IntrospectionController config after initialization.
|
|
229
|
+
* Useful when individual dependencies become available incrementally.
|
|
230
|
+
* @requirements 1.4, 1.5
|
|
231
|
+
*/
|
|
232
|
+
setIntrospectionConfig(config) {
|
|
233
|
+
if (this.introspectionController) {
|
|
234
|
+
this.introspectionController.setConfig(config);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Set the PoolDiscoveryService on the IntrospectionController.
|
|
239
|
+
* Called by App.setPoolDiscoveryService after the service is wired.
|
|
240
|
+
* @requirements 7.1, 8.3
|
|
241
|
+
*/
|
|
242
|
+
setIntrospectionPoolDiscoveryService(service) {
|
|
243
|
+
if (this.introspectionController) {
|
|
244
|
+
const currentConfig = this.introspectionController.getConfig();
|
|
245
|
+
this.introspectionController.setConfig({
|
|
246
|
+
...currentConfig,
|
|
247
|
+
poolDiscoveryService: service,
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Get the IntrospectionController instance.
|
|
253
|
+
*/
|
|
254
|
+
getIntrospectionController() {
|
|
255
|
+
return this.introspectionController;
|
|
256
|
+
}
|
|
213
257
|
}
|
|
214
258
|
exports.ApiRouter = ApiRouter;
|
|
215
259
|
//# sourceMappingURL=api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":";;;AAWA,oEAA2E;AAC3E,4EAK6C;AAC7C,kDAA+C;AAE/C,sDAA6D;AAC7D,gDAAuD;AACvD,0DAAgE;AAChE,oEAA0E;AAC1E,kDAAyD;AACzD,sDAA4D;AAC5D,sDAA6D;AAC7D,sDAA4D;AAC5D,sDAA6D;AAC7D,kDAAyD;AACzD,oEAG0C;AAC1C,0DAAiE;AACjE,oDAA2D;AAC3D,sDAA6D;AAC7D,kDAAyD;AACzD,kDAAyD;AACzD,kDAAyD;AAEzD,6CAAiD;AAIjD,iCAAoC;AAEpC;;GAEG;AACH,MAAa,SAEX,SAAQ,iBAAe;IAyBvB;;OAEG;IACH,YAAY,WAAyC;QACnD,KAAK,CAAC,WAAW,CAAC,CAAC;QAZb,4BAAuB,GAAwC,IAAI,CAAC;QAa1E,IAAI,CAAC,sBAAsB,GAAG,WAAW,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,+BAAU,CAAM,WAAW,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,GAAG,IAAI,gCAAW,CAAM,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,YAAY,GAAG,IAAI,oBAAY,CAAM,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,kBAAkB,GAAG,IAAI,uCAAkB,EAAE,CAAC;QACnD,MAAM,MAAM,GAAiB;YAC3B,SAAS,EAAE,2BAAY,CAAC,KAAK,CAAC,UAAU;YACxC,wBAAwB,EAAE,2BAAY,CAAC,KAAK,CAAC,2BAA2B;YACxE,gBAAgB,EAAE,2BAAY,CAAC,KAAK,CAAC,iBAAiB;YACtD,kBAAkB,EAAE,2BAAY,CAAC,KAAK,CAAC,iCAAiC;YACxE,gBAAgB,EAAE,2BAAY,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ;YACvD,gBAAgB,EAAE,2BAAY,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;SACpD,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,IAAI,6BAAY,CAAM,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC,iBAAiB,GAAG,IAAI,sCAAiB,CAC5C,WAAW,EACX,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,WAAW,CACjB,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAc,CAAM,WAAW,CAAC,CAAC;QAC3D,IAAI,CAAC,gBAAgB,GAAG,IAAI,yBAAgB,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,iBAAiB,GAAG,IAAI,4BAAiB,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,sBAAsB,GAAG,IAAI,sCAAsB,CAAC,WAAW,CAAC,CAAC;QACtE,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAc,CAAC,WAAW,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,IAAI,wBAAe,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAG,IAAI,yBAAgB,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,GAAG,IAAI,wBAAe,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAG,IAAI,yBAAgB,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAc,CAAC,WAAW,CAAC,CAAC;QACtD,IAAI,CAAC,kBAAkB,GAAG,IAAI,6BAAkB,CAAC,WAAW,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,GAAG,IAAI,uBAAe,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAG,IAAI,yBAAgB,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,aAAa,GAAG,IAAI,mBAAa,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAc,CAAC,WAAW,CAAC,CAAC;QACtD,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAc,CAAC,WAAW,CAAC,CAAC;QAEtD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACI,wBAAwB,CAAC,OAA8B;QAC5D,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACI,oBAAoB,CAAC,QAA4B;QACtD,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACI,sBAAsB,CAAC,OAA6B;QACzD,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACI,kBAAkB;QACvB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACI,iBAAiB;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACI,0BAA0B,CAAC,OAA6B;QAC7D,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACI,wBAAwB,CAAC,OAA+B;QAC7D,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACI,kBAAkB,CAAC,WAAoC;QAC5D,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACI,iBAAiB,CAAC,KAAkB;QACzC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,uEAAuE;IAEvE;;;OAGG;IACI,sBAAsB,CAAC,OAA4B;QACxD,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACI,eAAe,CAAC,OAAqB;QAC1C,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACI,iBAAiB,CAAC,OAAuB;QAC9C,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACI,oBAAoB,CAAC,OAA0B;QACpD,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACI,gCAAgC,CACrC,OAA8B;QAE9B,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,yBAAyB;QAC9B,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,kBAAkB;QACvB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;OAEG;IACI,oBAAoB;QACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,uEAAuE;IAEvE;;;;;OAKG;IACI,2BAA2B,CAChC,MAAqC;QAErC,IAAI,CAAC,uBAAuB,GAAG,IAAI,uCAAuB,CACxD,IAAI,CAAC,sBAAsB,EAC3B,MAAM,CACP,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACI,sBAAsB,CAAC,MAAqC;QACjE,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,oCAAoC,CACzC,OAA6B;QAE7B,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,MAAM,aAAa,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,CAAC;YAC/D,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC;gBACrC,GAAG,aAAa;gBAChB,oBAAoB,EAAE,OAAO;aAC9B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACI,0BAA0B;QAC/B,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;CACF;AApSD,8BAoSC"}
|
package/src/lib/routers/app.d.ts
CHANGED
|
@@ -1,23 +1,31 @@
|
|
|
1
1
|
import { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
2
|
-
import {
|
|
2
|
+
import { IApplication, AppRouter as UpstreamAppRouter } from '@digitaldefiance/node-express-suite';
|
|
3
|
+
import { NextFunction, Request, Response } from 'express';
|
|
4
|
+
import { DefaultBackendIdType } from '../shared-types';
|
|
3
5
|
import { ApiRouter } from './api';
|
|
4
6
|
/**
|
|
5
|
-
* Application router
|
|
6
|
-
*
|
|
7
|
+
* Application router for BrightChain.
|
|
8
|
+
* Extends the upstream AppRouter to inherit standard routing behavior
|
|
9
|
+
* (API mounting, static file serving, EJS rendering, catch-all)
|
|
10
|
+
* while overriding renderIndex() for BrightChain-specific template locals.
|
|
7
11
|
*/
|
|
8
|
-
export declare class AppRouter<TID extends PlatformID> {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
export declare class AppRouter<TID extends PlatformID = DefaultBackendIdType> extends UpstreamAppRouter<TID, IApplication<TID>> {
|
|
13
|
+
/**
|
|
14
|
+
* Typed reference to the BrightChain ApiRouter.
|
|
15
|
+
* The upstream stores apiRouter as BaseRouter; this provides
|
|
16
|
+
* access to BrightChain-specific methods (setSyncEventSystem, etc.).
|
|
17
|
+
*/
|
|
18
|
+
private readonly brightchainApiRouter;
|
|
14
19
|
constructor(apiRouter: ApiRouter<TID>);
|
|
15
|
-
getAssetFilename(assetDir: string, pattern: RegExp): string | undefined;
|
|
16
20
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
|
|
21
|
+
* Returns the BrightChain-specific ApiRouter instance.
|
|
22
|
+
* Useful for wiring services (e.g. setSyncEventSystem) after construction.
|
|
23
|
+
*/
|
|
24
|
+
getBrightchainApiRouter(): ApiRouter<TID>;
|
|
25
|
+
/**
|
|
26
|
+
* Override the upstream's renderIndex to inject BrightChain-specific
|
|
27
|
+
* template locals (fontAwesomeKitId, custom tagline, etc.).
|
|
20
28
|
*/
|
|
21
|
-
|
|
29
|
+
renderIndex(req: Request, res: Response, next: NextFunction): void;
|
|
22
30
|
}
|
|
23
31
|
//# sourceMappingURL=app.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/app.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EACL,YAAY,EACZ,SAAS,IAAI,iBAAiB,EAC/B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC;;;;;GAKG;AACH,qBAAa,SAAS,CACpB,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,SAAQ,iBAAiB,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACjD;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAiB;gBAE1C,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC;IAKrC;;;OAGG;IACI,uBAAuB,IAAI,SAAS,CAAC,GAAG,CAAC;IAIhD;;;OAGG;IACa,WAAW,CACzB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,GACjB,IAAI;CAkBR"}
|
package/src/lib/routers/app.js
CHANGED
|
@@ -1,131 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AppRouter = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
4
|
const node_express_suite_1 = require("@digitaldefiance/node-express-suite");
|
|
6
|
-
const suite_core_lib_1 = require("@digitaldefiance/suite-core-lib");
|
|
7
|
-
const ejs_1 = tslib_1.__importDefault(require("ejs"));
|
|
8
|
-
const express_1 = require("express");
|
|
9
|
-
const fs_1 = require("fs");
|
|
10
|
-
const path_1 = require("path");
|
|
11
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
12
|
-
function keepEJS() {
|
|
13
|
-
ejs_1.default.compile(''); // Compile an empty string, doesn't generate anything meaningful
|
|
14
|
-
}
|
|
15
5
|
/**
|
|
16
|
-
* Application router
|
|
17
|
-
*
|
|
6
|
+
* Application router for BrightChain.
|
|
7
|
+
* Extends the upstream AppRouter to inherit standard routing behavior
|
|
8
|
+
* (API mounting, static file serving, EJS rendering, catch-all)
|
|
9
|
+
* while overriding renderIndex() for BrightChain-specific template locals.
|
|
18
10
|
*/
|
|
19
|
-
class AppRouter {
|
|
11
|
+
class AppRouter extends node_express_suite_1.AppRouter {
|
|
20
12
|
constructor(apiRouter) {
|
|
21
|
-
|
|
22
|
-
this.
|
|
23
|
-
this.viewsPath = (0, path_1.join)(this.application.environment.apiDistDir, 'views');
|
|
24
|
-
this.indexPath = (0, path_1.join)(this.application.environment.reactDistDir, 'index.html');
|
|
25
|
-
this.assetsDir = (0, path_1.join)(this.application.environment.reactDistDir, 'assets');
|
|
13
|
+
super(apiRouter);
|
|
14
|
+
this.brightchainApiRouter = apiRouter;
|
|
26
15
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return undefined;
|
|
34
|
-
}
|
|
16
|
+
/**
|
|
17
|
+
* Returns the BrightChain-specific ApiRouter instance.
|
|
18
|
+
* Useful for wiring services (e.g. setSyncEventSystem) after construction.
|
|
19
|
+
*/
|
|
20
|
+
getBrightchainApiRouter() {
|
|
21
|
+
return this.brightchainApiRouter;
|
|
35
22
|
}
|
|
36
23
|
/**
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
* @param debugRoutes Whether to log routes
|
|
24
|
+
* Override the upstream's renderIndex to inject BrightChain-specific
|
|
25
|
+
* template locals (fontAwesomeKitId, custom tagline, etc.).
|
|
40
26
|
*/
|
|
41
|
-
|
|
42
|
-
if (
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
if (!(0, fs_1.existsSync)(this.indexPath)) {
|
|
46
|
-
throw new Error(`Index file not found: ${this.indexPath}`);
|
|
47
|
-
}
|
|
48
|
-
if (this.apiRouter.application.environment.debug) {
|
|
49
|
-
app.use((req, res, next) => {
|
|
50
|
-
const port = (req.socket.localPort === 443 && req.protocol === 'https') ||
|
|
51
|
-
(req.socket.localPort === 80 && req.protocol === 'http')
|
|
52
|
-
? ''
|
|
53
|
-
: `:${req.socket.localPort}`;
|
|
54
|
-
console.log(`${(0, suite_core_lib_1.getSuiteCoreTranslation)(suite_core_lib_1.SuiteCoreStringKey.Admin_ServingRoute)}: ${req.method} ${req.protocol}://${req.hostname}${port}${req.url}`);
|
|
55
|
-
next();
|
|
56
|
-
});
|
|
27
|
+
renderIndex(req, res, next) {
|
|
28
|
+
if (req.url.endsWith('.js')) {
|
|
29
|
+
res.type('application/javascript');
|
|
57
30
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
next();
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
(0, node_express_suite_1.debugLog)(this.apiRouter.application.environment.debug, 'log', `Trying to serve static for ${req.url}`);
|
|
72
|
-
if (req.url.endsWith('.js')) {
|
|
73
|
-
res.type('application/javascript');
|
|
74
|
-
}
|
|
75
|
-
serveStaticWithLogging(req, res, (err) => {
|
|
76
|
-
if (err) {
|
|
77
|
-
(0, node_express_suite_1.debugLog)(this.apiRouter.application.environment.debug, 'error', 'Error serving static file:', err);
|
|
78
|
-
(0, node_express_suite_1.handleError)(err, res, node_express_suite_1.sendApiMessageResponse, next);
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
|
-
next();
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
// The "catchall" handler: for any request that doesn't
|
|
85
|
-
// match one above, send back React's index.html file.
|
|
86
|
-
// app.get('*', (req, res) => {
|
|
87
|
-
// res.sendFile(path.join(__dirname,'..', '..', '..', 'brightchain-react', 'index.html'));
|
|
88
|
-
// });
|
|
89
|
-
app.use((req, res) => {
|
|
90
|
-
const cspNonce = res.locals['cspNonce'];
|
|
91
|
-
if (req.url.endsWith('.js')) {
|
|
92
|
-
res.type('application/javascript');
|
|
93
|
-
}
|
|
94
|
-
const SiteName = 'BrightChain';
|
|
95
|
-
// translate(SuiteCoreStringKey.Common_Site)
|
|
96
|
-
const hostname = req.hostname;
|
|
97
|
-
const jsFile = this.getAssetFilename(this.assetsDir, /^index-.*\.js$/);
|
|
98
|
-
const cssFile = this.getAssetFilename(this.assetsDir, /^index-.*\.css$/);
|
|
99
|
-
const server = (req.socket.localPort === 443 && req.protocol === 'https') ||
|
|
100
|
-
(req.socket.localPort === 80 && req.protocol === 'http')
|
|
101
|
-
? `${req.protocol}://${hostname}`
|
|
102
|
-
: `${req.protocol}://${hostname}:${req.socket.localPort}`;
|
|
103
|
-
const environment = this.apiRouter.application
|
|
104
|
-
.environment;
|
|
105
|
-
res.render('index', {
|
|
106
|
-
cspNonce,
|
|
107
|
-
title: SiteName,
|
|
108
|
-
tagline: 'The Future of Decentralized Storage', // translate(SuiteCoreStringKey.SiteTagline),
|
|
109
|
-
server: server,
|
|
110
|
-
siteUrl: environment.serverUrl,
|
|
111
|
-
baseHref: environment.basePath,
|
|
112
|
-
fontawesomeKitId: environment.fontAwesomeKitId,
|
|
113
|
-
hostname: hostname,
|
|
114
|
-
siteTitle: SiteName,
|
|
115
|
-
jsFile: jsFile ? `assets/${jsFile}` : undefined,
|
|
116
|
-
cssFile: cssFile ? `assets/${cssFile}` : undefined,
|
|
117
|
-
}, (err, html) => {
|
|
118
|
-
// Render 'index.ejs'
|
|
119
|
-
if (err) {
|
|
120
|
-
console.error('Error rendering:', err);
|
|
121
|
-
if (!res.headersSent) {
|
|
122
|
-
res.status(500).send('An error occurred'); // Send a generic error message or render a separate error view
|
|
123
|
-
}
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
res.send(html);
|
|
127
|
-
});
|
|
128
|
-
});
|
|
31
|
+
const jsFile = this.getAssetFilename(this.assetsDir, /^index-.*\.js$/);
|
|
32
|
+
const cssFile = this.getAssetFilename(this.assetsDir, /^index-.*\.css$/);
|
|
33
|
+
const environment = this.application.environment;
|
|
34
|
+
const locals = {
|
|
35
|
+
...this.getBaseViewLocals(req, res),
|
|
36
|
+
fontawesomeKitId: environment.fontAwesomeKitId,
|
|
37
|
+
jsFile: jsFile ? `assets/${jsFile}` : undefined,
|
|
38
|
+
cssFile: cssFile ? `assets/${cssFile}` : undefined,
|
|
39
|
+
};
|
|
40
|
+
this.renderTemplate(req, res, next, 'index', locals);
|
|
129
41
|
}
|
|
130
42
|
}
|
|
131
43
|
exports.AppRouter = AppRouter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/app.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/app.ts"],"names":[],"mappings":";;;AACA,4EAG6C;AAM7C;;;;;GAKG;AACH,MAAa,SAEX,SAAQ,8BAAyC;IAQjD,YAAY,SAAyB;QACnC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;IACxC,CAAC;IAED;;;OAGG;IACI,uBAAuB;QAC5B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED;;;OAGG;IACa,WAAW,CACzB,GAAY,EACZ,GAAa,EACb,IAAkB;QAElB,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,WAA+B,CAAC;QAErE,MAAM,MAAM,GAAG;YACb,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC;YACnC,gBAAgB,EAAE,WAAW,CAAC,gBAAgB;YAC9C,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;YAC/C,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;SACnD,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;CACF;AAjDD,8BAiDC"}
|
|
@@ -14,10 +14,12 @@ export declare class AuthService<TID extends PlatformID = DefaultBackendIdType>
|
|
|
14
14
|
private emailService;
|
|
15
15
|
private jwtSecret;
|
|
16
16
|
constructor(application: IBrightChainApplication<TID>, memberStore: MemberStore, energyStore: EnergyAccountStore, emailService: EmailService<TID>, jwtSecret: string);
|
|
17
|
-
register(username: string, email: string, _mnemonic?: SecureString): Promise<IAuthToken>;
|
|
17
|
+
register(username: string, email: string, password: SecureString, _mnemonic?: SecureString): Promise<IAuthToken>;
|
|
18
18
|
login(credentials: IAuthCredentials): Promise<IAuthToken>;
|
|
19
19
|
signToken(memberId: string, username: string, type: MemberType): string;
|
|
20
20
|
verifyToken(token: string): Promise<ITokenPayload>;
|
|
21
|
+
storePasswordHash(memberId: Uint8Array, hash: string): Promise<void>;
|
|
22
|
+
getPasswordHash(memberId: Uint8Array): Promise<string>;
|
|
21
23
|
private sendWelcomeEmail;
|
|
22
24
|
}
|
|
23
25
|
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,EAClB,WAAW,EAEZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAIvC,qBAAa,WAAW,CACtB,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,SAAQ,WAAW,CAAC,GAAG,CAAC;IACxB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,SAAS,CAAS;gBAGxB,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC,EACzC,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,kBAAkB,EAC/B,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,EAC/B,SAAS,EAAE,MAAM;IASb,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,YAAY,EACtB,SAAS,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC,UAAU,CAAC;IA0ChB,KAAK,CAAC,WAAW,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4C/D,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM;IAYjE,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IASlD,iBAAiB,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASpE,eAAe,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;YAS9C,gBAAgB;CA2B/B"}
|
package/src/lib/services/auth.js
CHANGED
|
@@ -4,8 +4,10 @@ exports.AuthService = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const brightchain_lib_1 = require("@brightchain/brightchain-lib");
|
|
6
6
|
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
7
|
+
const bcrypt = tslib_1.__importStar(require("bcrypt"));
|
|
7
8
|
const jwt = tslib_1.__importStar(require("jsonwebtoken"));
|
|
8
9
|
const base_1 = require("./base");
|
|
10
|
+
const BCRYPT_ROUNDS = 12;
|
|
9
11
|
class AuthService extends base_1.BaseService {
|
|
10
12
|
constructor(application, memberStore, energyStore, emailService, jwtSecret) {
|
|
11
13
|
super(application);
|
|
@@ -14,14 +16,28 @@ class AuthService extends base_1.BaseService {
|
|
|
14
16
|
this.emailService = emailService;
|
|
15
17
|
this.jwtSecret = jwtSecret;
|
|
16
18
|
}
|
|
17
|
-
async register(username, email, _mnemonic) {
|
|
19
|
+
async register(username, email, password, _mnemonic) {
|
|
20
|
+
// Check for duplicate email
|
|
21
|
+
const existing = await this.memberStore.queryIndex({ email });
|
|
22
|
+
if (existing.length > 0) {
|
|
23
|
+
throw new Error('Email already registered');
|
|
24
|
+
}
|
|
25
|
+
// Hash password before member creation
|
|
26
|
+
const passwordValue = password.value;
|
|
27
|
+
if (!passwordValue) {
|
|
28
|
+
throw new Error('Password value is empty');
|
|
29
|
+
}
|
|
30
|
+
const passwordHash = await bcrypt.hash(passwordValue, BCRYPT_ROUNDS);
|
|
18
31
|
const { reference } = await this.memberStore.createMember({
|
|
19
32
|
type: ecies_lib_1.MemberType.User,
|
|
20
33
|
name: username,
|
|
21
34
|
contactEmail: new brightchain_lib_1.EmailString(email),
|
|
22
35
|
});
|
|
23
36
|
const memberId = reference.id.toString();
|
|
24
|
-
const
|
|
37
|
+
const idBytes = reference.id;
|
|
38
|
+
const memberChecksum = brightchain_lib_1.ServiceProvider.getInstance().checksumService.calculateChecksum(idBytes);
|
|
39
|
+
// Store password hash in member's private profile
|
|
40
|
+
await this.storePasswordHash(reference.id, passwordHash);
|
|
25
41
|
const energyAccount = brightchain_lib_1.EnergyAccount.createWithTrialCredits(memberChecksum);
|
|
26
42
|
await this.energyStore.set(memberChecksum, energyAccount);
|
|
27
43
|
await this.sendWelcomeEmail(email, username);
|
|
@@ -33,13 +49,28 @@ class AuthService extends base_1.BaseService {
|
|
|
33
49
|
};
|
|
34
50
|
}
|
|
35
51
|
async login(credentials) {
|
|
36
|
-
|
|
52
|
+
// Look up member by username
|
|
53
|
+
const results = await this.memberStore.queryIndex({
|
|
54
|
+
name: credentials.username,
|
|
55
|
+
limit: 1,
|
|
56
|
+
});
|
|
37
57
|
if (results.length === 0) {
|
|
38
58
|
throw new Error('Invalid credentials');
|
|
39
59
|
}
|
|
40
60
|
const reference = results[0];
|
|
61
|
+
// Retrieve stored password hash and verify
|
|
62
|
+
const storedHash = await this.getPasswordHash(reference.id);
|
|
63
|
+
const passwordValue = credentials.password.value;
|
|
64
|
+
if (!passwordValue) {
|
|
65
|
+
throw new Error('Password value is empty');
|
|
66
|
+
}
|
|
67
|
+
const isValid = await bcrypt.compare(passwordValue, storedHash);
|
|
68
|
+
if (!isValid) {
|
|
69
|
+
throw new Error('Invalid credentials');
|
|
70
|
+
}
|
|
41
71
|
const memberId = reference.id.toString();
|
|
42
|
-
const
|
|
72
|
+
const idBytes = reference.id;
|
|
73
|
+
const memberChecksum = brightchain_lib_1.ServiceProvider.getInstance().checksumService.calculateChecksum(idBytes);
|
|
43
74
|
const energyAccount = await this.energyStore.getOrCreate(memberChecksum);
|
|
44
75
|
const token = this.signToken(memberId, credentials.username, reference.type);
|
|
45
76
|
return {
|
|
@@ -67,6 +98,22 @@ class AuthService extends base_1.BaseService {
|
|
|
67
98
|
throw new Error('Invalid token');
|
|
68
99
|
}
|
|
69
100
|
}
|
|
101
|
+
async storePasswordHash(memberId, hash) {
|
|
102
|
+
await this.memberStore.updateMember(memberId, {
|
|
103
|
+
id: memberId,
|
|
104
|
+
privateChanges: {
|
|
105
|
+
passwordHash: hash,
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
async getPasswordHash(memberId) {
|
|
110
|
+
const profile = await this.memberStore.getMemberProfile(memberId);
|
|
111
|
+
const passwordHash = profile.privateProfile?.passwordHash;
|
|
112
|
+
if (!passwordHash) {
|
|
113
|
+
throw new Error('No password hash found for member');
|
|
114
|
+
}
|
|
115
|
+
return passwordHash;
|
|
116
|
+
}
|
|
70
117
|
async sendWelcomeEmail(email, username) {
|
|
71
118
|
if (!this.emailService) {
|
|
72
119
|
console.log(`[EmailService disabled] Would send welcome email to ${email}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":";;;;AAAA,kEAMsC;AACtC,0DAAsE;AAEtE,0DAAoC;AAMpC,iCAAqC;AAGrC,MAAa,WAEX,SAAQ,kBAAgB;IAMxB,YACE,WAAyC,EACzC,WAAwB,EACxB,WAA+B,EAC/B,YAA+B,EAC/B,SAAiB;QAEjB,KAAK,CAAC,WAAW,CAAC,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,QAAgB,EAChB,KAAa,EACb,SAAwB;QAExB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;YACxD,IAAI,EAAE,sBAAU,CAAC,IAAI;YACrB,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,IAAI,6BAAW,CAAC,KAAK,CAAC;SACrC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/auth.ts"],"names":[],"mappings":"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"}
|