@rapidrest/service-core 1.0.0-rc.7 → 1.0.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/LICENSE +382 -23
- package/README.md +79 -5
- package/dist/lib/ApiErrors.js +10 -0
- package/dist/lib/ApiErrors.js.map +1 -1
- package/dist/lib/BackgroundService.js +1 -4
- package/dist/lib/BackgroundService.js.map +1 -1
- package/dist/lib/BackgroundServiceManager.js +47 -6
- package/dist/lib/BackgroundServiceManager.js.map +1 -1
- package/dist/lib/BulkError.js +4 -0
- package/dist/lib/BulkError.js.map +1 -1
- package/dist/lib/EventListenerManager.js +53 -18
- package/dist/lib/EventListenerManager.js.map +1 -1
- package/dist/lib/NetUtils.js +1 -0
- package/dist/lib/NetUtils.js.map +1 -1
- package/dist/lib/NotificationUtils.js +27 -8
- package/dist/lib/NotificationUtils.js.map +1 -1
- package/dist/lib/ObjectFactory.js +25 -44
- package/dist/lib/ObjectFactory.js.map +1 -1
- package/dist/lib/OpenApiSpec.js +31 -11
- package/dist/lib/OpenApiSpec.js.map +1 -1
- package/dist/lib/Server.js +74 -110
- package/dist/lib/Server.js.map +1 -1
- package/dist/lib/auth/AuthMiddleware.js +11 -16
- package/dist/lib/auth/AuthMiddleware.js.map +1 -1
- package/dist/lib/auth/JWTStrategy.js +68 -17
- package/dist/lib/auth/JWTStrategy.js.map +1 -1
- package/dist/lib/auth/index.js +0 -1
- package/dist/lib/auth/index.js.map +1 -1
- package/dist/lib/database/ConnectionKinds.js +15 -0
- package/dist/lib/database/ConnectionKinds.js.map +1 -1
- package/dist/lib/database/ConnectionManager.js +140 -61
- package/dist/lib/database/ConnectionManager.js.map +1 -1
- package/dist/lib/database/MongoConnection.js +13 -3
- package/dist/lib/database/MongoConnection.js.map +1 -1
- package/dist/lib/database/MongoRepository.js +61 -15
- package/dist/lib/database/MongoRepository.js.map +1 -1
- package/dist/lib/database/MongoSchemaSync.js +3 -3
- package/dist/lib/database/MongoSchemaSync.js.map +1 -1
- package/dist/lib/database/NamingUtils.js +3 -2
- package/dist/lib/database/NamingUtils.js.map +1 -1
- package/dist/lib/database/RedisCache.js +64 -0
- package/dist/lib/database/RedisCache.js.map +1 -0
- package/dist/lib/database/TypeOrmSupport.js +53 -13
- package/dist/lib/database/TypeOrmSupport.js.map +1 -1
- package/dist/lib/database/index.js +1 -0
- package/dist/lib/database/index.js.map +1 -1
- package/dist/lib/decorators/DatabaseDecorators.js +264 -20
- package/dist/lib/decorators/DatabaseDecorators.js.map +1 -1
- package/dist/lib/decorators/DocDecorators.js +30 -9
- package/dist/lib/decorators/DocDecorators.js.map +1 -1
- package/dist/lib/decorators/EventDecorators.js +1 -0
- package/dist/lib/decorators/EventDecorators.js.map +1 -1
- package/dist/lib/decorators/ModelDecorators.js +39 -23
- package/dist/lib/decorators/ModelDecorators.js.map +1 -1
- package/dist/lib/decorators/PersistenceDecorators.js +4 -3
- package/dist/lib/decorators/PersistenceDecorators.js.map +1 -1
- package/dist/lib/decorators/RouteDecorators.js +139 -36
- package/dist/lib/decorators/RouteDecorators.js.map +1 -1
- package/dist/lib/http/IWebSocketShim.js +2 -0
- package/dist/lib/http/IWebSocketShim.js.map +1 -0
- package/dist/lib/http/MiddlewareChain.js +167 -0
- package/dist/lib/http/MiddlewareChain.js.map +1 -0
- package/dist/lib/http/RuntimeDetect.js +9 -0
- package/dist/lib/http/RuntimeDetect.js.map +1 -0
- package/dist/lib/http/bun/BunAdapters.js +326 -0
- package/dist/lib/http/bun/BunAdapters.js.map +1 -0
- package/dist/lib/http/bun/BunRouter.js +391 -0
- package/dist/lib/http/bun/BunRouter.js.map +1 -0
- package/dist/lib/http/bun/BunWebSocket.js +49 -0
- package/dist/lib/http/bun/BunWebSocket.js.map +1 -0
- package/dist/lib/http/index.js +16 -3
- package/dist/lib/http/index.js.map +1 -1
- package/dist/lib/http/session/RedisSessionStore.js +30 -0
- package/dist/lib/http/session/RedisSessionStore.js.map +1 -0
- package/dist/lib/http/session/SessionManager.js +113 -0
- package/dist/lib/http/session/SessionManager.js.map +1 -0
- package/dist/lib/http/session/SessionStore.js +6 -0
- package/dist/lib/http/session/SessionStore.js.map +1 -0
- package/dist/lib/http/session/sessionMiddleware.js +42 -0
- package/dist/lib/http/session/sessionMiddleware.js.map +1 -0
- package/dist/lib/http/types.js +0 -3
- package/dist/lib/http/types.js.map +1 -1
- package/dist/lib/http/uWS/Adapters.js +421 -0
- package/dist/lib/http/uWS/Adapters.js.map +1 -0
- package/dist/lib/http/{Router.js → uWS/Router.js} +73 -173
- package/dist/lib/http/uWS/Router.js.map +1 -0
- package/dist/lib/http/{WebSocket.js → uWS/WebSocket.js} +4 -1
- package/dist/lib/http/uWS/WebSocket.js.map +1 -0
- package/dist/lib/models/BaseEntity.js +2 -1
- package/dist/lib/models/BaseEntity.js.map +1 -1
- package/dist/lib/models/BaseMongoEntity.js +2 -2
- package/dist/lib/models/BaseMongoEntity.js.map +1 -1
- package/dist/lib/models/ModelUtils.js +248 -101
- package/dist/lib/models/ModelUtils.js.map +1 -1
- package/dist/lib/models/RecoverableBaseEntity.js +6 -1
- package/dist/lib/models/RecoverableBaseEntity.js.map +1 -1
- package/dist/lib/models/RecoverableBaseMongoEntity.js +1 -0
- package/dist/lib/models/RecoverableBaseMongoEntity.js.map +1 -1
- package/dist/lib/models/RepoUtils.js +641 -203
- package/dist/lib/models/RepoUtils.js.map +1 -1
- package/dist/lib/models/SimpleEntity.js +1 -0
- package/dist/lib/models/SimpleEntity.js.map +1 -1
- package/dist/lib/models/SimpleMongoEntity.js +2 -1
- package/dist/lib/models/SimpleMongoEntity.js.map +1 -1
- package/dist/lib/models/StatusExtraData.js +4 -0
- package/dist/lib/models/StatusExtraData.js.map +1 -1
- package/dist/lib/routes/{AdminRoute.js → BaseAdminRoute.js} +98 -80
- package/dist/lib/routes/BaseAdminRoute.js.map +1 -0
- package/dist/lib/routes/{MetricsRoute.js → BaseMetricsRoute.js} +29 -15
- package/dist/lib/routes/BaseMetricsRoute.js.map +1 -0
- package/dist/lib/routes/{OpenAPIRoute.js → BaseOpenAPIRoute.js} +32 -32
- package/dist/lib/routes/BaseOpenAPIRoute.js.map +1 -0
- package/dist/lib/routes/BasePushRoute.js +305 -0
- package/dist/lib/routes/BasePushRoute.js.map +1 -0
- package/dist/lib/routes/BaseStaticRoute.js +153 -0
- package/dist/lib/routes/BaseStaticRoute.js.map +1 -0
- package/dist/lib/routes/BaseStatusRoute.js +80 -0
- package/dist/lib/routes/BaseStatusRoute.js.map +1 -0
- package/dist/lib/routes/CRUDRoute.js +284 -0
- package/dist/lib/routes/CRUDRoute.js.map +1 -0
- package/dist/lib/routes/ModelRoute.js +84 -57
- package/dist/lib/routes/ModelRoute.js.map +1 -1
- package/dist/lib/routes/RouteUtils.js +108 -20
- package/dist/lib/routes/RouteUtils.js.map +1 -1
- package/dist/lib/routes/index.js +7 -4
- package/dist/lib/routes/index.js.map +1 -1
- package/dist/lib/security/ACLUtils.js +297 -170
- package/dist/lib/security/ACLUtils.js.map +1 -1
- package/dist/lib/security/AccessControlList.js +18 -10
- package/dist/lib/security/AccessControlList.js.map +1 -1
- package/dist/lib/security/AccessControlListMongo.js +19 -68
- package/dist/lib/security/AccessControlListMongo.js.map +1 -1
- package/dist/lib/security/AccessControlListSQL.js +21 -70
- package/dist/lib/security/AccessControlListSQL.js.map +1 -1
- package/dist/lib/security/BaseACLRoute.js +239 -0
- package/dist/lib/security/BaseACLRoute.js.map +1 -0
- package/dist/lib/security/index.js +3 -0
- package/dist/lib/security/index.js.map +1 -1
- package/dist/lib/test/request.js +62 -5
- package/dist/lib/test/request.js.map +1 -1
- package/dist/lib/test/requestws.js +34 -10
- package/dist/lib/test/requestws.js.map +1 -1
- package/dist/types/ApiErrors.d.ts +8 -2
- package/dist/types/BackgroundService.d.ts +0 -5
- package/dist/types/BackgroundServiceManager.d.ts +2 -1
- package/dist/types/EventListenerManager.d.ts +7 -6
- package/dist/types/NotificationUtils.d.ts +5 -3
- package/dist/types/OpenApiSpec.d.ts +2 -2
- package/dist/types/Server.d.ts +28 -10
- package/dist/types/auth/AuthMiddleware.d.ts +3 -3
- package/dist/types/auth/AuthStrategy.d.ts +10 -7
- package/dist/types/auth/JWTStrategy.d.ts +6 -4
- package/dist/types/auth/index.d.ts +0 -1
- package/dist/types/database/ConnectionKinds.d.ts +7 -0
- package/dist/types/database/ConnectionManager.d.ts +29 -4
- package/dist/types/database/MongoConnection.d.ts +16 -4
- package/dist/types/database/MongoRepository.d.ts +32 -11
- package/dist/types/database/RedisCache.d.ts +23 -0
- package/dist/types/database/TypeOrmSupport.d.ts +4 -4
- package/dist/types/database/index.d.ts +1 -0
- package/dist/types/decorators/DatabaseDecorators.d.ts +139 -8
- package/dist/types/decorators/DocDecorators.d.ts +11 -2
- package/dist/types/decorators/ModelDecorators.d.ts +12 -5
- package/dist/types/decorators/PersistenceDecorators.d.ts +11 -4
- package/dist/types/decorators/RouteDecorators.d.ts +36 -6
- package/dist/types/http/IWebSocketShim.d.ts +11 -0
- package/dist/types/http/MiddlewareChain.d.ts +47 -0
- package/dist/types/http/RuntimeDetect.d.ts +2 -0
- package/dist/types/http/bun/BunAdapters.d.ts +139 -0
- package/dist/types/http/bun/BunRouter.d.ts +79 -0
- package/dist/types/http/bun/BunWebSocket.d.ts +35 -0
- package/dist/types/http/index.d.ts +16 -6
- package/dist/types/http/session/RedisSessionStore.d.ts +15 -0
- package/dist/types/http/session/SessionManager.d.ts +35 -0
- package/dist/types/http/session/SessionStore.d.ts +12 -0
- package/dist/types/http/session/sessionMiddleware.d.ts +10 -0
- package/dist/types/http/types.d.ts +42 -3
- package/dist/types/http/uWS/Adapters.d.ts +129 -0
- package/dist/types/http/{Router.d.ts → uWS/Router.d.ts} +14 -38
- package/dist/types/http/{WebSocket.d.ts → uWS/WebSocket.d.ts} +6 -5
- package/dist/types/models/BaseEntity.d.ts +1 -1
- package/dist/types/models/ModelUtils.d.ts +47 -14
- package/dist/types/models/RecoverableBaseEntity.d.ts +3 -1
- package/dist/types/models/RepoUtils.d.ts +84 -14
- package/dist/types/routes/BaseAdminRoute.d.ts +65 -0
- package/dist/types/routes/BaseMetricsRoute.d.ts +37 -0
- package/dist/types/routes/BaseOpenAPIRoute.d.ts +33 -0
- package/dist/types/routes/BasePushRoute.d.ts +53 -0
- package/dist/types/routes/BaseStaticRoute.d.ts +44 -0
- package/dist/types/routes/BaseStatusRoute.d.ts +37 -0
- package/dist/types/routes/CRUDRoute.d.ts +57 -0
- package/dist/types/routes/ModelRoute.d.ts +39 -36
- package/dist/types/routes/RouteUtils.d.ts +19 -0
- package/dist/types/routes/index.d.ts +7 -4
- package/dist/types/security/ACLUtils.d.ts +94 -18
- package/dist/types/security/AccessControlList.d.ts +37 -59
- package/dist/types/security/AccessControlListMongo.d.ts +3 -8
- package/dist/types/security/AccessControlListSQL.d.ts +3 -8
- package/dist/types/security/BaseACLRoute.d.ts +73 -0
- package/dist/types/security/index.d.ts +3 -0
- package/dist/types/test/request.d.ts +18 -1
- package/package.json +135 -129
- package/tsconfig.export.json +17 -0
- package/dist/lib/auth/BasicStrategy.js +0 -113
- package/dist/lib/auth/BasicStrategy.js.map +0 -1
- package/dist/lib/http/Adapters.js +0 -241
- package/dist/lib/http/Adapters.js.map +0 -1
- package/dist/lib/http/Router.js.map +0 -1
- package/dist/lib/http/WebSocket.js.map +0 -1
- package/dist/lib/routes/AdminRoute.js.map +0 -1
- package/dist/lib/routes/MetricsRoute.js.map +0 -1
- package/dist/lib/routes/OpenAPIRoute.js.map +0 -1
- package/dist/lib/routes/StatusRoute.js +0 -55
- package/dist/lib/routes/StatusRoute.js.map +0 -1
- package/dist/lib/security/ACLRouteMongo.js +0 -194
- package/dist/lib/security/ACLRouteMongo.js.map +0 -1
- package/dist/lib/security/ACLRouteSQL.js +0 -193
- package/dist/lib/security/ACLRouteSQL.js.map +0 -1
- package/dist/types/auth/BasicStrategy.d.ts +0 -37
- package/dist/types/http/Adapters.d.ts +0 -68
- package/dist/types/routes/AdminRoute.d.ts +0 -47
- package/dist/types/routes/MetricsRoute.d.ts +0 -15
- package/dist/types/routes/OpenAPIRoute.d.ts +0 -17
- package/dist/types/routes/StatusRoute.d.ts +0 -11
- package/dist/types/security/ACLRouteMongo.d.ts +0 -19
- package/dist/types/security/ACLRouteSQL.d.ts +0 -19
- package/docs/Makefile +0 -20
- package/docs/conf.py +0 -58
- package/docs/index.rst +0 -17
- package/docs/make.bat +0 -35
- package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/README.md +0 -13
- package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/MongoRepository.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/RedisConnection.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/Repository.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/README.md +0 -23
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Default.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Description.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Document.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Example.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Format.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Returns.md +0 -28
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Summary.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Tags.md +0 -25
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/TypeInfo.md +0 -28
- package/docs/reference/@rapidrest/namespaces/DocDecorators/interfaces/DocumentsData.md +0 -57
- package/docs/reference/@rapidrest/namespaces/EventDecorators/README.md +0 -12
- package/docs/reference/@rapidrest/namespaces/EventDecorators/functions/EventListener.md +0 -17
- package/docs/reference/@rapidrest/namespaces/EventDecorators/functions/OnEvent.md +0 -26
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/README.md +0 -26
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Cache.md +0 -25
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/ChildEntity.md +0 -18
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/DataStore.md +0 -25
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Identifier.md +0 -27
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Protect.md +0 -35
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Reference.md +0 -25
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Shard.md +0 -27
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/TrackChanges.md +0 -26
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/interfaces/PendingTypeOrmColumn.md +0 -45
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/variables/pendingTypeOrmColumns.md +0 -14
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/README.md +0 -27
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Column.md +0 -25
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Entity.md +0 -25
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Index.md +0 -119
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/PrimaryColumn.md +0 -25
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Unique.md +0 -68
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getColumnMetadata.md +0 -26
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getEntityName.md +0 -26
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getIndexMetadata.md +0 -27
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/CollationOptions.md +0 -79
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/ColumnInfo.md +0 -41
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/ColumnOptions.md +0 -51
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/EntityOptions.md +0 -32
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/IndexInfo.md +0 -41
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/IndexOptions.md +0 -61
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/README.md +0 -36
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/After.md +0 -26
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Auth.md +0 -33
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/AuthResult.md +0 -31
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Before.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/ContentType.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Delete.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Get.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Head.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Header.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Method.md +0 -31
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Model.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Options.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Param.md +0 -26
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Patch.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Post.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Protect.md +0 -31
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Put.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Query.md +0 -26
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Request.md +0 -31
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/RequiresRole.md +0 -26
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Response.md +0 -31
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Route.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Socket.md +0 -33
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/User.md +0 -31
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Validate.md +0 -25
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/WebSocket.md +0 -25
- package/docs/reference/README.md +0 -20
- package/docs/reference/classes/ACLUtils.md +0 -263
- package/docs/reference/classes/AdminRoute.md +0 -51
- package/docs/reference/classes/AuthMiddleware.md +0 -173
- package/docs/reference/classes/BackgroundService.md +0 -117
- package/docs/reference/classes/BackgroundServiceManager.md +0 -172
- package/docs/reference/classes/BaseEntity.md +0 -82
- package/docs/reference/classes/BaseMongoEntity.md +0 -107
- package/docs/reference/classes/BasicStrategy.md +0 -131
- package/docs/reference/classes/BasicStrategyOptions.md +0 -115
- package/docs/reference/classes/BulkError.md +0 -271
- package/docs/reference/classes/ConnectionManager.md +0 -75
- package/docs/reference/classes/EventListenerManager.md +0 -88
- package/docs/reference/classes/HttpRouter.md +0 -343
- package/docs/reference/classes/JWTStrategy.md +0 -100
- package/docs/reference/classes/JWTStrategyOptions.md +0 -97
- package/docs/reference/classes/MetricsRoute.md +0 -27
- package/docs/reference/classes/ModelRoute.md +0 -527
- package/docs/reference/classes/ModelUtils.md +0 -446
- package/docs/reference/classes/MongoConnection.md +0 -218
- package/docs/reference/classes/MongoRepository.md +0 -390
- package/docs/reference/classes/MongoSchemaSync.md +0 -97
- package/docs/reference/classes/NetUtils.md +0 -90
- package/docs/reference/classes/NotificationUtils.md +0 -77
- package/docs/reference/classes/ObjectFactory.md +0 -336
- package/docs/reference/classes/OpenAPIRoute.md +0 -77
- package/docs/reference/classes/OpenApiSpec.md +0 -892
- package/docs/reference/classes/RecoverableBaseEntity.md +0 -114
- package/docs/reference/classes/RecoverableBaseMongoEntity.md +0 -124
- package/docs/reference/classes/RedisTransport.md +0 -2202
- package/docs/reference/classes/RepoUtils.md +0 -482
- package/docs/reference/classes/RouteUtils.md +0 -191
- package/docs/reference/classes/Server.md +0 -408
- package/docs/reference/classes/SimpleEntity.md +0 -48
- package/docs/reference/classes/SimpleMongoEntity.md +0 -66
- package/docs/reference/classes/StatusExtraData.md +0 -57
- package/docs/reference/classes/StatusRoute.md +0 -26
- package/docs/reference/classes/UWSRequest.md +0 -226
- package/docs/reference/classes/UWSResponse.md +0 -257
- package/docs/reference/classes/UWSWebSocketShim.md +0 -958
- package/docs/reference/enumerations/ACLAction.md +0 -63
- package/docs/reference/enumerations/ApiErrorMessages.md +0 -123
- package/docs/reference/enumerations/ApiErrors.md +0 -123
- package/docs/reference/functions/createWebSocketStream.md +0 -27
- package/docs/reference/functions/isSqlDataSource.md +0 -26
- package/docs/reference/functions/readBody.md +0 -29
- package/docs/reference/functions/resolveCollectionName.md +0 -33
- package/docs/reference/functions/runChain.md +0 -40
- package/docs/reference/functions/snakeCase.md +0 -28
- package/docs/reference/globals.md +0 -106
- package/docs/reference/interfaces/ACLRecord.md +0 -96
- package/docs/reference/interfaces/AccessControlList.md +0 -76
- package/docs/reference/interfaces/AuthResult.md +0 -55
- package/docs/reference/interfaces/AuthStrategy.md +0 -95
- package/docs/reference/interfaces/CreateRequestOptions.md +0 -121
- package/docs/reference/interfaces/DeleteRequestOptions.md +0 -137
- package/docs/reference/interfaces/FindRequestOptions.md +0 -133
- package/docs/reference/interfaces/HttpRequest.md +0 -147
- package/docs/reference/interfaces/HttpResponse.md +0 -164
- package/docs/reference/interfaces/JWTAuthResult.md +0 -84
- package/docs/reference/interfaces/RepoCreateOptions.md +0 -95
- package/docs/reference/interfaces/RepoDeleteOptions.md +0 -105
- package/docs/reference/interfaces/RepoFindOptions.md +0 -125
- package/docs/reference/interfaces/RepoOperationOptions.md +0 -69
- package/docs/reference/interfaces/RepoUpdateOptions.md +0 -101
- package/docs/reference/interfaces/RequestOptions.md +0 -112
- package/docs/reference/interfaces/RequestWS.md +0 -225
- package/docs/reference/interfaces/TruncateRequestOptions.md +0 -161
- package/docs/reference/interfaces/UpdateRequestOptions.md +0 -139
- package/docs/reference/type-aliases/ErrorHandler.md +0 -35
- package/docs/reference/type-aliases/NextFunction.md +0 -23
- package/docs/reference/type-aliases/OneOrMany.md +0 -19
- package/docs/reference/type-aliases/OneOrNull.md +0 -19
- package/docs/reference/type-aliases/PartialBaseEntity.md +0 -17
- package/docs/reference/type-aliases/PartialSimpleEntity.md +0 -17
- package/docs/reference/type-aliases/RequestHandler.md +0 -31
- package/docs/reference/type-aliases/UpdateObject.md +0 -19
- package/docs/reference/type-aliases/WsUpgradeAuth.md +0 -27
- package/docs/reference/type-aliases/WsUpgradeAuthResult.md +0 -47
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
[**@rapidrest/service-core**](../README.md)
|
|
2
|
-
|
|
3
|
-
***
|
|
4
|
-
|
|
5
|
-
[@rapidrest/service-core](../globals.md) / BackgroundServiceManager
|
|
6
|
-
|
|
7
|
-
# Class: BackgroundServiceManager
|
|
8
|
-
|
|
9
|
-
Defined in: [src/BackgroundServiceManager.ts:35](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/BackgroundServiceManager.ts#L35)
|
|
10
|
-
|
|
11
|
-
The `BackgroundServiceManager` manages all configured background services in the application. It is responsible for
|
|
12
|
-
initializing the jobs, scheduling them and performing any related shutdown tasks. See the `BackgroundService`
|
|
13
|
-
class for details on how to create a background service class to be used by this manager.
|
|
14
|
-
|
|
15
|
-
## Usage
|
|
16
|
-
To use the manager instantiate a new object and provide the required constructor arguments. Then simply call the
|
|
17
|
-
`startAll` function. When shutting your application down you should call the `stopAll` function.
|
|
18
|
-
|
|
19
|
-
```
|
|
20
|
-
import { BackgroundServiceManager } from "@rapidrest/service-core";
|
|
21
|
-
|
|
22
|
-
const manager: BackgroundServiceManager = new BackgroundServiceManager(objectFactory, serviceClasses, config, logger);
|
|
23
|
-
await manager.startAll();
|
|
24
|
-
...
|
|
25
|
-
await manager.stopAll();
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
You may optionally start and stop individual services using the `start` and `stop` functions respectively.
|
|
29
|
-
|
|
30
|
-
```
|
|
31
|
-
await manager.start("MyService");
|
|
32
|
-
...
|
|
33
|
-
await manger.stop("MyService");
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
## Author
|
|
37
|
-
|
|
38
|
-
Jean-Philippe Steinmetz <rapidrests@gmail.com>
|
|
39
|
-
|
|
40
|
-
## Constructors
|
|
41
|
-
|
|
42
|
-
### Constructor
|
|
43
|
-
|
|
44
|
-
> **new BackgroundServiceManager**(`objectFactory`, `classes`, `config`, `logger`): `BackgroundServiceManager`
|
|
45
|
-
|
|
46
|
-
Defined in: [src/BackgroundServiceManager.ts:43](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/BackgroundServiceManager.ts#L43)
|
|
47
|
-
|
|
48
|
-
#### Parameters
|
|
49
|
-
|
|
50
|
-
##### objectFactory
|
|
51
|
-
|
|
52
|
-
[`ObjectFactory`](ObjectFactory.md)
|
|
53
|
-
|
|
54
|
-
##### classes
|
|
55
|
-
|
|
56
|
-
##### config
|
|
57
|
-
|
|
58
|
-
`any`
|
|
59
|
-
|
|
60
|
-
##### logger
|
|
61
|
-
|
|
62
|
-
`any`
|
|
63
|
-
|
|
64
|
-
#### Returns
|
|
65
|
-
|
|
66
|
-
`BackgroundServiceManager`
|
|
67
|
-
|
|
68
|
-
## Methods
|
|
69
|
-
|
|
70
|
-
### getService()
|
|
71
|
-
|
|
72
|
-
> **getService**(`name`): [`BackgroundService`](BackgroundService.md) \| `undefined`
|
|
73
|
-
|
|
74
|
-
Defined in: [src/BackgroundServiceManager.ts:55](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/BackgroundServiceManager.ts#L55)
|
|
75
|
-
|
|
76
|
-
Returns the service instance with the given name.
|
|
77
|
-
|
|
78
|
-
#### Parameters
|
|
79
|
-
|
|
80
|
-
##### name
|
|
81
|
-
|
|
82
|
-
`string`
|
|
83
|
-
|
|
84
|
-
The name of the background service to retrieve.
|
|
85
|
-
|
|
86
|
-
#### Returns
|
|
87
|
-
|
|
88
|
-
[`BackgroundService`](BackgroundService.md) \| `undefined`
|
|
89
|
-
|
|
90
|
-
***
|
|
91
|
-
|
|
92
|
-
### start()
|
|
93
|
-
|
|
94
|
-
> **start**(`serviceName`, `clazz?`, ...`args`): `Promise`\<`void`\>
|
|
95
|
-
|
|
96
|
-
Defined in: [src/BackgroundServiceManager.ts:81](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/BackgroundServiceManager.ts#L81)
|
|
97
|
-
|
|
98
|
-
Starts the background service with the given name.
|
|
99
|
-
|
|
100
|
-
#### Parameters
|
|
101
|
-
|
|
102
|
-
##### serviceName
|
|
103
|
-
|
|
104
|
-
`string`
|
|
105
|
-
|
|
106
|
-
The name of the background service to start.
|
|
107
|
-
|
|
108
|
-
##### clazz?
|
|
109
|
-
|
|
110
|
-
`any`
|
|
111
|
-
|
|
112
|
-
The class type of the service to start. If not specified the name is used to lookup the class type.
|
|
113
|
-
|
|
114
|
-
##### args
|
|
115
|
-
|
|
116
|
-
...`any`
|
|
117
|
-
|
|
118
|
-
The list of arguments to pass into the service constructor
|
|
119
|
-
|
|
120
|
-
#### Returns
|
|
121
|
-
|
|
122
|
-
`Promise`\<`void`\>
|
|
123
|
-
|
|
124
|
-
***
|
|
125
|
-
|
|
126
|
-
### startAll()
|
|
127
|
-
|
|
128
|
-
> **startAll**(): `Promise`\<`void`\>
|
|
129
|
-
|
|
130
|
-
Defined in: [src/BackgroundServiceManager.ts:62](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/BackgroundServiceManager.ts#L62)
|
|
131
|
-
|
|
132
|
-
Starts all configured background services.
|
|
133
|
-
|
|
134
|
-
#### Returns
|
|
135
|
-
|
|
136
|
-
`Promise`\<`void`\>
|
|
137
|
-
|
|
138
|
-
***
|
|
139
|
-
|
|
140
|
-
### stop()
|
|
141
|
-
|
|
142
|
-
> **stop**(`serviceName`): `Promise`\<`void`\>
|
|
143
|
-
|
|
144
|
-
Defined in: [src/BackgroundServiceManager.ts:139](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/BackgroundServiceManager.ts#L139)
|
|
145
|
-
|
|
146
|
-
Stops the background service with the given name.
|
|
147
|
-
|
|
148
|
-
#### Parameters
|
|
149
|
-
|
|
150
|
-
##### serviceName
|
|
151
|
-
|
|
152
|
-
`string`
|
|
153
|
-
|
|
154
|
-
The name of the background service to stop.
|
|
155
|
-
|
|
156
|
-
#### Returns
|
|
157
|
-
|
|
158
|
-
`Promise`\<`void`\>
|
|
159
|
-
|
|
160
|
-
***
|
|
161
|
-
|
|
162
|
-
### stopAll()
|
|
163
|
-
|
|
164
|
-
> **stopAll**(): `Promise`\<`void`\>
|
|
165
|
-
|
|
166
|
-
Defined in: [src/BackgroundServiceManager.ts:124](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/BackgroundServiceManager.ts#L124)
|
|
167
|
-
|
|
168
|
-
Stops all currently active background services that are owned by the manager.
|
|
169
|
-
|
|
170
|
-
#### Returns
|
|
171
|
-
|
|
172
|
-
`Promise`\<`void`\>
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
[**@rapidrest/service-core**](../README.md)
|
|
2
|
-
|
|
3
|
-
***
|
|
4
|
-
|
|
5
|
-
[@rapidrest/service-core](../globals.md) / BaseEntity
|
|
6
|
-
|
|
7
|
-
# Abstract Class: BaseEntity
|
|
8
|
-
|
|
9
|
-
Defined in: [src/models/BaseEntity.ts:18](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L18)
|
|
10
|
-
|
|
11
|
-
Provides a common base class for all entity's that will be persisted to a datastore.
|
|
12
|
-
|
|
13
|
-
Note that the `@CreateDateColumn`, `@UpdateDateColumn`, and `@VersionColumn` decorators from TypeORM are not supported
|
|
14
|
-
because they are not implemented in TypeORM's MongoDB support. They are instead implemented directly by this
|
|
15
|
-
library as part of `ModelRoute`.
|
|
16
|
-
|
|
17
|
-
## Author
|
|
18
|
-
|
|
19
|
-
Jean-Philippe Steinmetz <rapidrests@gmail.com>
|
|
20
|
-
|
|
21
|
-
## Extended by
|
|
22
|
-
|
|
23
|
-
- [`BaseMongoEntity`](BaseMongoEntity.md)
|
|
24
|
-
- [`RecoverableBaseEntity`](RecoverableBaseEntity.md)
|
|
25
|
-
|
|
26
|
-
## Constructors
|
|
27
|
-
|
|
28
|
-
### Constructor
|
|
29
|
-
|
|
30
|
-
> **new BaseEntity**(`other?`): `BaseEntity`
|
|
31
|
-
|
|
32
|
-
Defined in: [src/models/BaseEntity.ts:52](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L52)
|
|
33
|
-
|
|
34
|
-
#### Parameters
|
|
35
|
-
|
|
36
|
-
##### other?
|
|
37
|
-
|
|
38
|
-
`Partial`\<`BaseEntity`\>
|
|
39
|
-
|
|
40
|
-
#### Returns
|
|
41
|
-
|
|
42
|
-
`BaseEntity`
|
|
43
|
-
|
|
44
|
-
## Properties
|
|
45
|
-
|
|
46
|
-
### dateCreated
|
|
47
|
-
|
|
48
|
-
> **dateCreated**: `Date`
|
|
49
|
-
|
|
50
|
-
Defined in: [src/models/BaseEntity.ts:35](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L35)
|
|
51
|
-
|
|
52
|
-
The date and time that the entity was created.
|
|
53
|
-
|
|
54
|
-
***
|
|
55
|
-
|
|
56
|
-
### dateModified
|
|
57
|
-
|
|
58
|
-
> **dateModified**: `Date`
|
|
59
|
-
|
|
60
|
-
Defined in: [src/models/BaseEntity.ts:43](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L43)
|
|
61
|
-
|
|
62
|
-
The date and time that the entity was last modified.
|
|
63
|
-
|
|
64
|
-
***
|
|
65
|
-
|
|
66
|
-
### uid
|
|
67
|
-
|
|
68
|
-
> **uid**: `string`
|
|
69
|
-
|
|
70
|
-
Defined in: [src/models/BaseEntity.ts:27](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L27)
|
|
71
|
-
|
|
72
|
-
The universally unique identifier of the entity.
|
|
73
|
-
|
|
74
|
-
***
|
|
75
|
-
|
|
76
|
-
### version
|
|
77
|
-
|
|
78
|
-
> **version**: `number` = `0`
|
|
79
|
-
|
|
80
|
-
Defined in: [src/models/BaseEntity.ts:50](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L50)
|
|
81
|
-
|
|
82
|
-
The optimistic lock version.
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
[**@rapidrest/service-core**](../README.md)
|
|
2
|
-
|
|
3
|
-
***
|
|
4
|
-
|
|
5
|
-
[@rapidrest/service-core](../globals.md) / BaseMongoEntity
|
|
6
|
-
|
|
7
|
-
# Abstract Class: BaseMongoEntity
|
|
8
|
-
|
|
9
|
-
Defined in: [src/models/BaseMongoEntity.ts:18](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseMongoEntity.ts#L18)
|
|
10
|
-
|
|
11
|
-
Provides a common base class for all entity's that will be persisted in a MongoDB database.
|
|
12
|
-
|
|
13
|
-
## Author
|
|
14
|
-
|
|
15
|
-
Jean-Philippe Steinmetz <rapidrests@gmail.com>
|
|
16
|
-
|
|
17
|
-
## Extends
|
|
18
|
-
|
|
19
|
-
- [`BaseEntity`](BaseEntity.md)
|
|
20
|
-
|
|
21
|
-
## Constructors
|
|
22
|
-
|
|
23
|
-
### Constructor
|
|
24
|
-
|
|
25
|
-
> **new BaseMongoEntity**(`other?`): `BaseMongoEntity`
|
|
26
|
-
|
|
27
|
-
Defined in: [src/models/BaseMongoEntity.ts:26](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseMongoEntity.ts#L26)
|
|
28
|
-
|
|
29
|
-
#### Parameters
|
|
30
|
-
|
|
31
|
-
##### other?
|
|
32
|
-
|
|
33
|
-
`Partial`\<`BaseMongoEntity`\>
|
|
34
|
-
|
|
35
|
-
#### Returns
|
|
36
|
-
|
|
37
|
-
`BaseMongoEntity`
|
|
38
|
-
|
|
39
|
-
#### Overrides
|
|
40
|
-
|
|
41
|
-
[`BaseEntity`](BaseEntity.md).[`constructor`](BaseEntity.md#constructor)
|
|
42
|
-
|
|
43
|
-
## Properties
|
|
44
|
-
|
|
45
|
-
### \_id?
|
|
46
|
-
|
|
47
|
-
> `optional` **\_id?**: `any`
|
|
48
|
-
|
|
49
|
-
Defined in: [src/models/BaseMongoEntity.ts:24](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseMongoEntity.ts#L24)
|
|
50
|
-
|
|
51
|
-
The internal unique identifier used by MongoDB.
|
|
52
|
-
|
|
53
|
-
***
|
|
54
|
-
|
|
55
|
-
### dateCreated
|
|
56
|
-
|
|
57
|
-
> **dateCreated**: `Date`
|
|
58
|
-
|
|
59
|
-
Defined in: [src/models/BaseEntity.ts:35](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L35)
|
|
60
|
-
|
|
61
|
-
The date and time that the entity was created.
|
|
62
|
-
|
|
63
|
-
#### Inherited from
|
|
64
|
-
|
|
65
|
-
[`BaseEntity`](BaseEntity.md).[`dateCreated`](BaseEntity.md#datecreated)
|
|
66
|
-
|
|
67
|
-
***
|
|
68
|
-
|
|
69
|
-
### dateModified
|
|
70
|
-
|
|
71
|
-
> **dateModified**: `Date`
|
|
72
|
-
|
|
73
|
-
Defined in: [src/models/BaseEntity.ts:43](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L43)
|
|
74
|
-
|
|
75
|
-
The date and time that the entity was last modified.
|
|
76
|
-
|
|
77
|
-
#### Inherited from
|
|
78
|
-
|
|
79
|
-
[`BaseEntity`](BaseEntity.md).[`dateModified`](BaseEntity.md#datemodified)
|
|
80
|
-
|
|
81
|
-
***
|
|
82
|
-
|
|
83
|
-
### uid
|
|
84
|
-
|
|
85
|
-
> **uid**: `string`
|
|
86
|
-
|
|
87
|
-
Defined in: [src/models/BaseEntity.ts:27](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L27)
|
|
88
|
-
|
|
89
|
-
The universally unique identifier of the entity.
|
|
90
|
-
|
|
91
|
-
#### Inherited from
|
|
92
|
-
|
|
93
|
-
[`BaseEntity`](BaseEntity.md).[`uid`](BaseEntity.md#uid)
|
|
94
|
-
|
|
95
|
-
***
|
|
96
|
-
|
|
97
|
-
### version
|
|
98
|
-
|
|
99
|
-
> **version**: `number` = `0`
|
|
100
|
-
|
|
101
|
-
Defined in: [src/models/BaseEntity.ts:50](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/models/BaseEntity.ts#L50)
|
|
102
|
-
|
|
103
|
-
The optimistic lock version.
|
|
104
|
-
|
|
105
|
-
#### Inherited from
|
|
106
|
-
|
|
107
|
-
[`BaseEntity`](BaseEntity.md).[`version`](BaseEntity.md#version)
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
[**@rapidrest/service-core**](../README.md)
|
|
2
|
-
|
|
3
|
-
***
|
|
4
|
-
|
|
5
|
-
[@rapidrest/service-core](../globals.md) / BasicStrategy
|
|
6
|
-
|
|
7
|
-
# Class: BasicStrategy
|
|
8
|
-
|
|
9
|
-
Defined in: [src/auth/BasicStrategy.ts:39](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L39)
|
|
10
|
-
|
|
11
|
-
## Author
|
|
12
|
-
|
|
13
|
-
Jean-Philippe Steinmetz <rapidrests@gmail.com>
|
|
14
|
-
|
|
15
|
-
## Implements
|
|
16
|
-
|
|
17
|
-
- [`AuthStrategy`](../interfaces/AuthStrategy.md)
|
|
18
|
-
|
|
19
|
-
## Constructors
|
|
20
|
-
|
|
21
|
-
### Constructor
|
|
22
|
-
|
|
23
|
-
> **new BasicStrategy**(`options?`): `BasicStrategy`
|
|
24
|
-
|
|
25
|
-
Defined in: [src/auth/BasicStrategy.ts:43](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L43)
|
|
26
|
-
|
|
27
|
-
#### Parameters
|
|
28
|
-
|
|
29
|
-
##### options?
|
|
30
|
-
|
|
31
|
-
[`BasicStrategyOptions`](BasicStrategyOptions.md) = `...`
|
|
32
|
-
|
|
33
|
-
#### Returns
|
|
34
|
-
|
|
35
|
-
`BasicStrategy`
|
|
36
|
-
|
|
37
|
-
## Properties
|
|
38
|
-
|
|
39
|
-
### name
|
|
40
|
-
|
|
41
|
-
> `readonly` **name**: `string` = `"basic"`
|
|
42
|
-
|
|
43
|
-
Defined in: [src/auth/BasicStrategy.ts:40](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L40)
|
|
44
|
-
|
|
45
|
-
The unique name of the strategy used to register with the `AuthMiddleware`.
|
|
46
|
-
|
|
47
|
-
#### Implementation of
|
|
48
|
-
|
|
49
|
-
[`AuthStrategy`](../interfaces/AuthStrategy.md).[`name`](../interfaces/AuthStrategy.md#name)
|
|
50
|
-
|
|
51
|
-
## Methods
|
|
52
|
-
|
|
53
|
-
### authenticate()
|
|
54
|
-
|
|
55
|
-
> **authenticate**(`req`, `res`, `required?`): `Promise`\<[`AuthResult`](../interfaces/AuthResult.md) \| `undefined`\>
|
|
56
|
-
|
|
57
|
-
Defined in: [src/auth/BasicStrategy.ts:80](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L80)
|
|
58
|
-
|
|
59
|
-
Attempts to perform authentication with the given request data. If authentication was successful, returns an
|
|
60
|
-
`AuthResult` containing the authentication details. If authentication fails and `required` is set to `true`
|
|
61
|
-
throws an error, otherwise returns `undefined`.
|
|
62
|
-
|
|
63
|
-
#### Parameters
|
|
64
|
-
|
|
65
|
-
##### req
|
|
66
|
-
|
|
67
|
-
[`HttpRequest`](../interfaces/HttpRequest.md)
|
|
68
|
-
|
|
69
|
-
The request containing data to attempt authentication with.
|
|
70
|
-
|
|
71
|
-
##### res
|
|
72
|
-
|
|
73
|
-
[`HttpResponse`](../interfaces/HttpResponse.md)
|
|
74
|
-
|
|
75
|
-
The response to use when writing back directly to the client.
|
|
76
|
-
|
|
77
|
-
##### required?
|
|
78
|
-
|
|
79
|
-
`boolean`
|
|
80
|
-
|
|
81
|
-
Set to `true` to if authentication is required to pass, otherwise set to `false`.
|
|
82
|
-
|
|
83
|
-
#### Returns
|
|
84
|
-
|
|
85
|
-
`Promise`\<[`AuthResult`](../interfaces/AuthResult.md) \| `undefined`\>
|
|
86
|
-
|
|
87
|
-
#### Implementation of
|
|
88
|
-
|
|
89
|
-
[`AuthStrategy`](../interfaces/AuthStrategy.md).[`authenticate`](../interfaces/AuthStrategy.md#authenticate)
|
|
90
|
-
|
|
91
|
-
***
|
|
92
|
-
|
|
93
|
-
### authenticateSync()
|
|
94
|
-
|
|
95
|
-
> **authenticateSync**(`req`, `res`, `required?`): [`AuthResult`](../interfaces/AuthResult.md) \| `undefined`
|
|
96
|
-
|
|
97
|
-
Defined in: [src/auth/BasicStrategy.ts:112](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L112)
|
|
98
|
-
|
|
99
|
-
Attempts to perform authentication with the given request data. If authentication was successful, returns an
|
|
100
|
-
`AuthResult` containing the authentication details. If authentication fails and `required` is set to `true`
|
|
101
|
-
throws an error, otherwise returns `undefined`.
|
|
102
|
-
|
|
103
|
-
This is the synchronous version of `authenticate` that performs blocking based authentication.
|
|
104
|
-
|
|
105
|
-
#### Parameters
|
|
106
|
-
|
|
107
|
-
##### req
|
|
108
|
-
|
|
109
|
-
[`HttpRequest`](../interfaces/HttpRequest.md)
|
|
110
|
-
|
|
111
|
-
The request containing data to attempt authentication with.
|
|
112
|
-
|
|
113
|
-
##### res
|
|
114
|
-
|
|
115
|
-
[`HttpResponse`](../interfaces/HttpResponse.md)
|
|
116
|
-
|
|
117
|
-
The response to use when writing back directly to the client.
|
|
118
|
-
|
|
119
|
-
##### required?
|
|
120
|
-
|
|
121
|
-
`boolean`
|
|
122
|
-
|
|
123
|
-
Set to `true` to if authentication is required to pass, otherwise set to `false`.
|
|
124
|
-
|
|
125
|
-
#### Returns
|
|
126
|
-
|
|
127
|
-
[`AuthResult`](../interfaces/AuthResult.md) \| `undefined`
|
|
128
|
-
|
|
129
|
-
#### Implementation of
|
|
130
|
-
|
|
131
|
-
[`AuthStrategy`](../interfaces/AuthStrategy.md).[`authenticateSync`](../interfaces/AuthStrategy.md#authenticatesync)
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
[**@rapidrest/service-core**](../README.md)
|
|
2
|
-
|
|
3
|
-
***
|
|
4
|
-
|
|
5
|
-
[@rapidrest/service-core](../globals.md) / BasicStrategyOptions
|
|
6
|
-
|
|
7
|
-
# Class: BasicStrategyOptions
|
|
8
|
-
|
|
9
|
-
Defined in: [src/auth/BasicStrategy.ts:13](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L13)
|
|
10
|
-
|
|
11
|
-
Describes the configuration options that can be used to initialize BasicStrategy.
|
|
12
|
-
|
|
13
|
-
## Author
|
|
14
|
-
|
|
15
|
-
Jean-Philippe Steinmetz
|
|
16
|
-
|
|
17
|
-
## Constructors
|
|
18
|
-
|
|
19
|
-
### Constructor
|
|
20
|
-
|
|
21
|
-
> **new BasicStrategyOptions**(): `BasicStrategyOptions`
|
|
22
|
-
|
|
23
|
-
#### Returns
|
|
24
|
-
|
|
25
|
-
`BasicStrategyOptions`
|
|
26
|
-
|
|
27
|
-
## Properties
|
|
28
|
-
|
|
29
|
-
### allowQueryParam
|
|
30
|
-
|
|
31
|
-
> **allowQueryParam**: `boolean` = `false`
|
|
32
|
-
|
|
33
|
-
Defined in: [src/auth/BasicStrategy.ts:25](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L25)
|
|
34
|
-
|
|
35
|
-
Set to `true` to allow credentials to be supplied via the `queryKey` URL parameter.
|
|
36
|
-
Disabled by default — query parameters appear in server logs, browser history, and
|
|
37
|
-
Referer headers, which permanently exposes credentials outside the application.
|
|
38
|
-
|
|
39
|
-
***
|
|
40
|
-
|
|
41
|
-
### headerKey
|
|
42
|
-
|
|
43
|
-
> **headerKey**: `string` = `"authorization"`
|
|
44
|
-
|
|
45
|
-
Defined in: [src/auth/BasicStrategy.ts:15](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L15)
|
|
46
|
-
|
|
47
|
-
The name of the header to look for when performing header based authentication. Default value is `Authorization`.
|
|
48
|
-
|
|
49
|
-
***
|
|
50
|
-
|
|
51
|
-
### headerScheme
|
|
52
|
-
|
|
53
|
-
> **headerScheme**: `string` = `"basic"`
|
|
54
|
-
|
|
55
|
-
Defined in: [src/auth/BasicStrategy.ts:17](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L17)
|
|
56
|
-
|
|
57
|
-
The authorization scheme type when using header based authentication. Default value is `jwt`.
|
|
58
|
-
|
|
59
|
-
***
|
|
60
|
-
|
|
61
|
-
### queryKey
|
|
62
|
-
|
|
63
|
-
> **queryKey**: `string` = `"auth_basic"`
|
|
64
|
-
|
|
65
|
-
Defined in: [src/auth/BasicStrategy.ts:19](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L19)
|
|
66
|
-
|
|
67
|
-
The name of the request query parameter to retrieve the token from when using query based authentication. Default value is `auth_basic`.
|
|
68
|
-
|
|
69
|
-
## Methods
|
|
70
|
-
|
|
71
|
-
### verify()
|
|
72
|
-
|
|
73
|
-
> **verify**(`uid`, `secret`): `JWTUser` \| `Promise`\<`JWTUser` \| `undefined`\> \| `undefined`
|
|
74
|
-
|
|
75
|
-
Defined in: [src/auth/BasicStrategy.ts:27](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L27)
|
|
76
|
-
|
|
77
|
-
Override this function to handle asynchronous (non-blocking) verification of the login info.
|
|
78
|
-
|
|
79
|
-
#### Parameters
|
|
80
|
-
|
|
81
|
-
##### uid
|
|
82
|
-
|
|
83
|
-
`string`
|
|
84
|
-
|
|
85
|
-
##### secret
|
|
86
|
-
|
|
87
|
-
`string`
|
|
88
|
-
|
|
89
|
-
#### Returns
|
|
90
|
-
|
|
91
|
-
`JWTUser` \| `Promise`\<`JWTUser` \| `undefined`\> \| `undefined`
|
|
92
|
-
|
|
93
|
-
***
|
|
94
|
-
|
|
95
|
-
### verifySync()
|
|
96
|
-
|
|
97
|
-
> **verifySync**(`uid`, `secret`): `JWTUser` \| `undefined`
|
|
98
|
-
|
|
99
|
-
Defined in: [src/auth/BasicStrategy.ts:31](https://github.com/rapidrest/service-core/blob/0879470e308cd5828ebcf6efdbdba1cd0178007b/src/auth/BasicStrategy.ts#L31)
|
|
100
|
-
|
|
101
|
-
Override this function to handle synchronous (blocking) verification of the login info.
|
|
102
|
-
|
|
103
|
-
#### Parameters
|
|
104
|
-
|
|
105
|
-
##### uid
|
|
106
|
-
|
|
107
|
-
`string`
|
|
108
|
-
|
|
109
|
-
##### secret
|
|
110
|
-
|
|
111
|
-
`string`
|
|
112
|
-
|
|
113
|
-
#### Returns
|
|
114
|
-
|
|
115
|
-
`JWTUser` \| `undefined`
|