@rapidrest/service-core 1.0.0-beta.1 → 1.0.0-beta.2
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/dist/lib/auth/AuthMiddleware.js +33 -3
- package/dist/lib/auth/AuthMiddleware.js.map +1 -1
- package/dist/lib/auth/BasicStrategy.js +46 -39
- package/dist/lib/auth/BasicStrategy.js.map +1 -1
- package/dist/lib/auth/JWTStrategy.js +69 -60
- package/dist/lib/auth/JWTStrategy.js.map +1 -1
- package/dist/lib/index.js +2 -1
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/routes/RouteUtils.js +8 -7
- package/dist/lib/routes/RouteUtils.js.map +1 -1
- package/dist/types/auth/AuthMiddleware.d.ts +12 -1
- package/dist/types/auth/AuthStrategy.d.ts +13 -1
- package/dist/types/auth/BasicStrategy.d.ts +7 -3
- package/dist/types/auth/JWTStrategy.d.ts +6 -3
- package/dist/types/index.d.ts +2 -1
- package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/MongoRepository.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/RedisConnection.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DatabaseDecorators/functions/Repository.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Default.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Description.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Document.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Example.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Format.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Returns.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Summary.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/Tags.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/functions/TypeInfo.md +1 -1
- package/docs/reference/@rapidrest/namespaces/DocDecorators/interfaces/DocumentsData.md +7 -7
- package/docs/reference/@rapidrest/namespaces/EventDecorators/functions/EventListener.md +1 -1
- package/docs/reference/@rapidrest/namespaces/EventDecorators/functions/OnEvent.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Cache.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/ChildEntity.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/DataStore.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Identifier.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Protect.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Reference.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/Shard.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/functions/TrackChanges.md +1 -1
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/interfaces/PendingTypeOrmColumn.md +5 -5
- package/docs/reference/@rapidrest/namespaces/ModelDecorators/variables/pendingTypeOrmColumns.md +1 -1
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Column.md +1 -1
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Entity.md +1 -1
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Index.md +3 -3
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/PrimaryColumn.md +1 -1
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/Unique.md +3 -3
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getColumnMetadata.md +1 -1
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getEntityName.md +1 -1
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/functions/getIndexMetadata.md +1 -1
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/ColumnInfo.md +4 -4
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/ColumnOptions.md +5 -5
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/IndexInfo.md +4 -4
- package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/IndexOptions.md +5 -5
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/After.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Auth.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/AuthResult.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Before.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/ContentType.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Delete.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Get.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Head.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Header.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Method.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Model.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Options.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Param.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Patch.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Post.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Protect.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Put.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Query.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Request.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/RequiresRole.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Response.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Route.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Socket.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/User.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/Validate.md +1 -1
- package/docs/reference/@rapidrest/namespaces/RouteDecorators/functions/WebSocket.md +1 -1
- package/docs/reference/classes/ACLUtils.md +10 -10
- package/docs/reference/classes/AdminRoute.md +3 -3
- package/docs/reference/classes/AuthMiddleware.md +55 -13
- package/docs/reference/classes/BackgroundService.md +8 -8
- package/docs/reference/classes/BackgroundServiceManager.md +7 -7
- package/docs/reference/classes/BaseEntity.md +6 -6
- package/docs/reference/classes/BaseMongoEntity.md +7 -7
- package/docs/reference/classes/BasicStrategy.md +52 -10
- package/docs/reference/classes/BasicStrategyOptions.md +35 -11
- package/docs/reference/classes/BulkError.md +3 -3
- package/docs/reference/classes/ConnectionManager.md +4 -4
- package/docs/reference/classes/EventListenerManager.md +5 -5
- package/docs/reference/classes/HttpRouter.md +343 -0
- package/docs/reference/classes/JWTStrategy.md +37 -14
- package/docs/reference/classes/JWTStrategyOptions.md +10 -10
- package/docs/reference/classes/MetricsRoute.md +2 -2
- package/docs/reference/classes/ModelRoute.md +28 -28
- package/docs/reference/classes/ModelUtils.md +10 -10
- package/docs/reference/classes/MongoConnection.md +12 -12
- package/docs/reference/classes/MongoRepository.md +17 -17
- package/docs/reference/classes/MongoSchemaSync.md +3 -3
- package/docs/reference/classes/NetUtils.md +4 -4
- package/docs/reference/classes/NotificationUtils.md +3 -3
- package/docs/reference/classes/ObjectFactory.md +10 -10
- package/docs/reference/classes/OpenAPIRoute.md +5 -5
- package/docs/reference/classes/OpenApiSpec.md +45 -45
- package/docs/reference/classes/RecoverableBaseEntity.md +7 -7
- package/docs/reference/classes/RecoverableBaseMongoEntity.md +8 -8
- package/docs/reference/classes/RedisTransport.md +4 -4
- package/docs/reference/classes/RepoUtils.md +28 -28
- package/docs/reference/classes/RouteUtils.md +17 -17
- package/docs/reference/classes/Server.md +29 -29
- package/docs/reference/classes/SimpleEntity.md +3 -3
- package/docs/reference/classes/SimpleMongoEntity.md +4 -4
- package/docs/reference/classes/StatusExtraData.md +4 -4
- package/docs/reference/classes/StatusRoute.md +1 -1
- package/docs/reference/classes/UWSRequest.md +226 -0
- package/docs/reference/classes/UWSResponse.md +257 -0
- package/docs/reference/classes/UWSWebSocketShim.md +958 -0
- package/docs/reference/enumerations/ACLAction.md +7 -7
- package/docs/reference/enumerations/ApiErrorMessages.md +15 -15
- package/docs/reference/enumerations/ApiErrors.md +15 -15
- package/docs/reference/functions/createWebSocketStream.md +27 -0
- package/docs/reference/functions/isSqlDataSource.md +1 -1
- package/docs/reference/functions/readBody.md +29 -0
- package/docs/reference/functions/resolveCollectionName.md +1 -1
- package/docs/reference/functions/runChain.md +40 -0
- package/docs/reference/functions/snakeCase.md +1 -1
- package/docs/reference/globals.md +15 -0
- package/docs/reference/interfaces/ACLRecord.md +8 -8
- package/docs/reference/interfaces/AccessControlList.md +5 -5
- package/docs/reference/interfaces/AuthResult.md +5 -5
- package/docs/reference/interfaces/AuthStrategy.md +47 -9
- package/docs/reference/interfaces/CreateRequestOptions.md +11 -11
- package/docs/reference/interfaces/DeleteRequestOptions.md +13 -13
- package/docs/reference/interfaces/FindRequestOptions.md +12 -12
- package/docs/reference/interfaces/HttpRequest.md +147 -0
- package/docs/reference/interfaces/HttpResponse.md +164 -0
- package/docs/reference/interfaces/JWTAuthResult.md +9 -9
- package/docs/reference/interfaces/RepoCreateOptions.md +7 -7
- package/docs/reference/interfaces/RepoDeleteOptions.md +9 -9
- package/docs/reference/interfaces/RepoFindOptions.md +11 -11
- package/docs/reference/interfaces/RepoOperationOptions.md +6 -6
- package/docs/reference/interfaces/RepoUpdateOptions.md +8 -8
- package/docs/reference/interfaces/RequestOptions.md +10 -10
- package/docs/reference/interfaces/RequestWS.md +225 -0
- package/docs/reference/interfaces/TruncateRequestOptions.md +15 -15
- package/docs/reference/interfaces/UpdateRequestOptions.md +13 -13
- package/docs/reference/type-aliases/ErrorHandler.md +35 -0
- package/docs/reference/type-aliases/NextFunction.md +23 -0
- package/docs/reference/type-aliases/OneOrMany.md +1 -1
- package/docs/reference/type-aliases/OneOrNull.md +1 -1
- package/docs/reference/type-aliases/PartialBaseEntity.md +1 -1
- package/docs/reference/type-aliases/PartialSimpleEntity.md +1 -1
- package/docs/reference/type-aliases/RequestHandler.md +31 -0
- package/docs/reference/type-aliases/UpdateObject.md +1 -1
- package/docs/reference/type-aliases/WsUpgradeAuth.md +27 -0
- package/docs/reference/type-aliases/WsUpgradeAuthResult.md +47 -0
- package/package.json +2 -2
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Interface: IndexInfo
|
|
8
8
|
|
|
9
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:50](https://github.com/rapidrest/service-core/blob/
|
|
9
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:50](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L50)
|
|
10
10
|
|
|
11
11
|
Describes a single database index of a model class.
|
|
12
12
|
|
|
@@ -16,7 +16,7 @@ Describes a single database index of a model class.
|
|
|
16
16
|
|
|
17
17
|
> **columns**: `string`[]
|
|
18
18
|
|
|
19
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:54](https://github.com/rapidrest/service-core/blob/
|
|
19
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:54](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L54)
|
|
20
20
|
|
|
21
21
|
The list of class properties that make up the index.
|
|
22
22
|
|
|
@@ -26,7 +26,7 @@ The list of class properties that make up the index.
|
|
|
26
26
|
|
|
27
27
|
> `optional` **name?**: `string`
|
|
28
28
|
|
|
29
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:52](https://github.com/rapidrest/service-core/blob/
|
|
29
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:52](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L52)
|
|
30
30
|
|
|
31
31
|
The explicit name of the index, if any.
|
|
32
32
|
|
|
@@ -36,6 +36,6 @@ The explicit name of the index, if any.
|
|
|
36
36
|
|
|
37
37
|
> **options**: [`IndexOptions`](IndexOptions.md)
|
|
38
38
|
|
|
39
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:56](https://github.com/rapidrest/service-core/blob/
|
|
39
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:56](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L56)
|
|
40
40
|
|
|
41
41
|
The options that the index was declared with.
|
package/docs/reference/@rapidrest/namespaces/PersistenceDecorators/interfaces/IndexOptions.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Interface: IndexOptions
|
|
8
8
|
|
|
9
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:24](https://github.com/rapidrest/service-core/blob/
|
|
9
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:24](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L24)
|
|
10
10
|
|
|
11
11
|
The set of options available when declaring a database index via the `@Index` decorator.
|
|
12
12
|
|
|
@@ -16,7 +16,7 @@ The set of options available when declaring a database index via the `@Index` de
|
|
|
16
16
|
|
|
17
17
|
> `optional` **background?**: `boolean`
|
|
18
18
|
|
|
19
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:30](https://github.com/rapidrest/service-core/blob/
|
|
19
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:30](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L30)
|
|
20
20
|
|
|
21
21
|
Set to `true` to build the index in the background. (MongoDB only)
|
|
22
22
|
|
|
@@ -26,7 +26,7 @@ Set to `true` to build the index in the background. (MongoDB only)
|
|
|
26
26
|
|
|
27
27
|
> `optional` **expireAfterSeconds?**: `number`
|
|
28
28
|
|
|
29
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:32](https://github.com/rapidrest/service-core/blob/
|
|
29
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:32](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L32)
|
|
30
30
|
|
|
31
31
|
The time, in seconds, after which indexed documents will be automatically deleted. (MongoDB only)
|
|
32
32
|
|
|
@@ -36,7 +36,7 @@ The time, in seconds, after which indexed documents will be automatically delete
|
|
|
36
36
|
|
|
37
37
|
> `optional` **sparse?**: `boolean`
|
|
38
38
|
|
|
39
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:28](https://github.com/rapidrest/service-core/blob/
|
|
39
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:28](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L28)
|
|
40
40
|
|
|
41
41
|
Set to `true` to only index documents in which the indexed properties exist. (MongoDB only)
|
|
42
42
|
|
|
@@ -46,6 +46,6 @@ Set to `true` to only index documents in which the indexed properties exist. (Mo
|
|
|
46
46
|
|
|
47
47
|
> `optional` **unique?**: `boolean`
|
|
48
48
|
|
|
49
|
-
Defined in: [src/decorators/PersistenceDecorators.ts:26](https://github.com/rapidrest/service-core/blob/
|
|
49
|
+
Defined in: [src/decorators/PersistenceDecorators.ts:26](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/PersistenceDecorators.ts#L26)
|
|
50
50
|
|
|
51
51
|
Set to `true` to enforce that all values of the indexed properties are unique.
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **After**(`func`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:13](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:13](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L13)
|
|
12
12
|
|
|
13
13
|
Indicates a provided function or list of functions to execute *after* the decorated function and before the response
|
|
14
14
|
is sent to a client. Note that the function must call `next()` in order for this decorator to work.
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Auth**(`strategies`, `require?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:33](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:33](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L33)
|
|
12
12
|
|
|
13
13
|
Applies PassportJS authentication to the decorated route or method for the provided strategy or list of strategies
|
|
14
14
|
should be attempted before processing the route.
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **AuthResult**(`target`, `propertyKey`, `index`): `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:45](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:45](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L45)
|
|
12
12
|
|
|
13
13
|
Injects the authenticated authentication result as the value of the decorated argument.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Before**(`func`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:56](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:56](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L56)
|
|
12
12
|
|
|
13
13
|
Indicates a provided function or list of functions to execute *before* the decorated function.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **ContentType**(`type`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:73](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:73](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L73)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function will return content encoded with the specified content type.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Delete**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:86](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:86](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L86)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `DELETE` requests at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Get**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:95](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:95](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L95)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `GET` requests at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Head**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:104](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:104](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L104)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `HEAD` requests at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Header**(`name`): (`target`, `propertyKey`, `index`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:113](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:113](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L113)
|
|
12
12
|
|
|
13
13
|
Injects the value of the specified request header with the given name as the value of the decorated argument.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Method**(`method`, `path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:127](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:127](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L127)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming HTTP requests for the specified HTTP method(s) at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Model**(`type`): \<`T`\>(`constructor`) => \{(...`args`): `(Anonymous class)`\<`T`\>; `modelClass`: `any`; `prototype`: `(Anonymous class)`\<`any`\>; \} & `T`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:150](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:150](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L150)
|
|
12
12
|
|
|
13
13
|
Indicates that the class utilizes is a manager for the specified class type.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Options**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:164](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:164](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L164)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `OPTIONS` requests at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Param**(`name?`): (`target`, `propertyKey`, `index`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:174](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:174](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L174)
|
|
12
12
|
|
|
13
13
|
Injects the value of the specified URI parameter with the given name as the value of the decorated argument. If no
|
|
14
14
|
name is specified the entire request parameter will be injected.
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Patch**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:187](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:187](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L187)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `PATCH` requests at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Post**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:196](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:196](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L196)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `POST` requests at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Protect**(`acl?`): (`target`, `propertyKey?`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:222](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:222](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L222)
|
|
12
12
|
|
|
13
13
|
Apply this to any route handler class or an individual route handler function to indicate that it should be
|
|
14
14
|
protected by the AccessControlList security system. The `acl` parameter specifies the ACL governing access
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Put**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:205](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:205](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L205)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `PUT` requests at the given sub-path.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Query**(`name?`): (`target`, `propertyKey`, `index`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:265](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:265](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L265)
|
|
12
12
|
|
|
13
13
|
Injects the value of the specified query parameter with the given name as the value of the decorated argument. If
|
|
14
14
|
no name is specified the entire request query will be injected.
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Request**(`target`, `propertyKey`, `index`): `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:276](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:276](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L276)
|
|
12
12
|
|
|
13
13
|
Injects the Express request object as the value of the decorated argument.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **RequiresRole**(`roles`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:297](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:297](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L297)
|
|
12
12
|
|
|
13
13
|
Indicates that the client must be an authenticated user with at least one of the specified role(s) to process the
|
|
14
14
|
request.
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Response**(`target`, `propertyKey`, `index`): `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:285](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:285](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L285)
|
|
12
12
|
|
|
13
13
|
Injects the Express response object as the value of the decorated argument.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Route**(`paths`): (`target`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:310](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:310](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L310)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated class contains Express route definitions.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Socket**(`target`, `propertyKey`, `index`): `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:323](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:323](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L323)
|
|
12
12
|
|
|
13
13
|
Injects the underlying Socket object associated with the request as the value of the decorated argument.
|
|
14
14
|
When the handler function is for a WebSocket request, the returned socket will be the newly established
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **User**(`target`, `propertyKey`, `index`): `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:332](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:332](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L332)
|
|
12
12
|
|
|
13
13
|
Injects the authenticated user object as the value of the decorated argument.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **Validate**(`func`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:343](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:343](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L343)
|
|
12
12
|
|
|
13
13
|
Indicates a validation function to execute in order to verify an incoming requests payload.
|
|
14
14
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
> **WebSocket**(`path?`): (`target`, `propertyKey`, `descriptor`) => `void`
|
|
10
10
|
|
|
11
|
-
Defined in: [src/decorators/RouteDecorators.ts:356](https://github.com/rapidrest/service-core/blob/
|
|
11
|
+
Defined in: [src/decorators/RouteDecorators.ts:356](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/decorators/RouteDecorators.ts#L356)
|
|
12
12
|
|
|
13
13
|
Indicates that the decorated function handles incoming `WebSocket` upgrade requests at the given sub-path.
|
|
14
14
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: ACLUtils
|
|
8
8
|
|
|
9
|
-
Defined in: [src/security/ACLUtils.ts:22](https://github.com/rapidrest/service-core/blob/
|
|
9
|
+
Defined in: [src/security/ACLUtils.ts:22](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L22)
|
|
10
10
|
|
|
11
11
|
Common utility functions for working with `AccessControlList` objects and validating user permissions.
|
|
12
12
|
|
|
@@ -26,7 +26,7 @@ Common utility functions for working with `AccessControlList` objects and valida
|
|
|
26
26
|
|
|
27
27
|
> **checkRequestPerms**(`uid`, `user`, `req`): `Promise`\<`boolean`\>
|
|
28
28
|
|
|
29
|
-
Defined in: [src/security/ACLUtils.ts:73](https://github.com/rapidrest/service-core/blob/
|
|
29
|
+
Defined in: [src/security/ACLUtils.ts:73](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L73)
|
|
30
30
|
|
|
31
31
|
Validates that the user has permission to perform the request operation against the URL path for the
|
|
32
32
|
provided request. If ACLUtils has not been initialized or the `acl` datastore has not been configured
|
|
@@ -48,7 +48,7 @@ The user to validate.
|
|
|
48
48
|
|
|
49
49
|
##### req
|
|
50
50
|
|
|
51
|
-
`HttpRequest`
|
|
51
|
+
[`HttpRequest`](../interfaces/HttpRequest.md)
|
|
52
52
|
|
|
53
53
|
The request whose URL path and method will be verified.
|
|
54
54
|
|
|
@@ -62,7 +62,7 @@ The request whose URL path and method will be verified.
|
|
|
62
62
|
|
|
63
63
|
> **findACL**(`entityId`, `parentUids?`): `Promise`\<[`AccessControlList`](../interfaces/AccessControlList.md) \| `null`\>
|
|
64
64
|
|
|
65
|
-
Defined in: [src/security/ACLUtils.ts:195](https://github.com/rapidrest/service-core/blob/
|
|
65
|
+
Defined in: [src/security/ACLUtils.ts:195](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L195)
|
|
66
66
|
|
|
67
67
|
Retrieves the access control list with the associated identifier and populates the parent(s).
|
|
68
68
|
|
|
@@ -90,7 +90,7 @@ The list of already found parent UIDs. This is used to break circular dependenci
|
|
|
90
90
|
|
|
91
91
|
> **getRecord**(`acl`, `user`): [`ACLRecord`](../interfaces/ACLRecord.md) \| `null`
|
|
92
92
|
|
|
93
|
-
Defined in: [src/security/ACLUtils.ts:459](https://github.com/rapidrest/service-core/blob/
|
|
93
|
+
Defined in: [src/security/ACLUtils.ts:459](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L459)
|
|
94
94
|
|
|
95
95
|
Retrieves the first available record in the provided ACL associated with the provided user.
|
|
96
96
|
|
|
@@ -120,7 +120,7 @@ The ACL record associated with the given user if found, otherwise `undefined`.
|
|
|
120
120
|
|
|
121
121
|
> **hasPermission**(`user`, `acl`, `action`): `Promise`\<`boolean`\>
|
|
122
122
|
|
|
123
|
-
Defined in: [src/security/ACLUtils.ts:127](https://github.com/rapidrest/service-core/blob/
|
|
123
|
+
Defined in: [src/security/ACLUtils.ts:127](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L127)
|
|
124
124
|
|
|
125
125
|
Validates that the user has permission to perform the provided action using the given access control list.
|
|
126
126
|
|
|
@@ -156,7 +156,7 @@ The action that the user desires permission for.
|
|
|
156
156
|
|
|
157
157
|
> **populateParent**(`acl`, `parentUids?`): `Promise`\<`void`\>
|
|
158
158
|
|
|
159
|
-
Defined in: [src/security/ACLUtils.ts:479](https://github.com/rapidrest/service-core/blob/
|
|
159
|
+
Defined in: [src/security/ACLUtils.ts:479](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L479)
|
|
160
160
|
|
|
161
161
|
Attempts to retrieve the parent access control list for the given ACL object.
|
|
162
162
|
|
|
@@ -184,7 +184,7 @@ The list of already found parent UIDs. This is used to break circular dependenci
|
|
|
184
184
|
|
|
185
185
|
> **removeACL**(`uid`): `Promise`\<`void`\>
|
|
186
186
|
|
|
187
|
-
Defined in: [src/security/ACLUtils.ts:247](https://github.com/rapidrest/service-core/blob/
|
|
187
|
+
Defined in: [src/security/ACLUtils.ts:247](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L247)
|
|
188
188
|
|
|
189
189
|
Deletes the ACL with the given identifier from the database.
|
|
190
190
|
|
|
@@ -206,7 +206,7 @@ The unique identifier of the ACL to remove.
|
|
|
206
206
|
|
|
207
207
|
> **saveACL**(`acl`): `Promise`\<[`AccessControlList`](../interfaces/AccessControlList.md) \| `null`\>
|
|
208
208
|
|
|
209
|
-
Defined in: [src/security/ACLUtils.ts:333](https://github.com/rapidrest/service-core/blob/
|
|
209
|
+
Defined in: [src/security/ACLUtils.ts:333](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L333)
|
|
210
210
|
|
|
211
211
|
Stores the given access control list into the ACL database.
|
|
212
212
|
|
|
@@ -230,7 +230,7 @@ Returns the ACL that was stored in the database.
|
|
|
230
230
|
|
|
231
231
|
> **saveDefaultACL**(`acl`): `Promise`\<[`AccessControlList`](../interfaces/AccessControlList.md) \| `null`\>
|
|
232
232
|
|
|
233
|
-
Defined in: [src/security/ACLUtils.ts:399](https://github.com/rapidrest/service-core/blob/
|
|
233
|
+
Defined in: [src/security/ACLUtils.ts:399](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/security/ACLUtils.ts#L399)
|
|
234
234
|
|
|
235
235
|
Stores the given default access control list into the ACL database. A default ACL is a special type of ACL
|
|
236
236
|
that is primarily defined and maintained within the code but allows for user-specific overrides. To accomplish
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: AdminRoute
|
|
8
8
|
|
|
9
|
-
Defined in: [src/routes/AdminRoute.ts:50](https://github.com/rapidrest/service-core/blob/
|
|
9
|
+
Defined in: [src/routes/AdminRoute.ts:50](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/routes/AdminRoute.ts#L50)
|
|
10
10
|
|
|
11
11
|
The `AdminRoute` provides a default `/admin` endpoint that gives trusted users the following abilities:
|
|
12
12
|
|
|
@@ -26,7 +26,7 @@ Jean-Philippe Steinmetz
|
|
|
26
26
|
|
|
27
27
|
> **new AdminRoute**(`releaseNotes`): `AdminRoute`
|
|
28
28
|
|
|
29
|
-
Defined in: [src/routes/AdminRoute.ts:82](https://github.com/rapidrest/service-core/blob/
|
|
29
|
+
Defined in: [src/routes/AdminRoute.ts:82](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/routes/AdminRoute.ts#L82)
|
|
30
30
|
|
|
31
31
|
Constructs a new `ReleaseNotesRoute` object with the specified defaults.
|
|
32
32
|
|
|
@@ -48,4 +48,4 @@ The ReleaseNotes specification object to serve.
|
|
|
48
48
|
|
|
49
49
|
> `protected` `optional` **cacheClient?**: `Redis`
|
|
50
50
|
|
|
51
|
-
Defined in: [src/routes/AdminRoute.ts:55](https://github.com/rapidrest/service-core/blob/
|
|
51
|
+
Defined in: [src/routes/AdminRoute.ts:55](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/routes/AdminRoute.ts#L55)
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: AuthMiddleware
|
|
8
8
|
|
|
9
|
-
Defined in: [src/auth/AuthMiddleware.ts:19](https://github.com/rapidrest/service-core/blob/
|
|
9
|
+
Defined in: [src/auth/AuthMiddleware.ts:19](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/auth/AuthMiddleware.ts#L19)
|
|
10
10
|
|
|
11
11
|
A set of common utilities for performing authentication using one or more strategies.
|
|
12
12
|
|
|
@@ -30,7 +30,7 @@ Jean-Philippe Steinmetz <rapidrests@gmail.com>
|
|
|
30
30
|
|
|
31
31
|
> `readonly` **strategies**: `Map`\<`string`, [`AuthStrategy`](../interfaces/AuthStrategy.md)\>
|
|
32
32
|
|
|
33
|
-
Defined in: [src/auth/AuthMiddleware.ts:30](https://github.com/rapidrest/service-core/blob/
|
|
33
|
+
Defined in: [src/auth/AuthMiddleware.ts:30](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/auth/AuthMiddleware.ts#L30)
|
|
34
34
|
|
|
35
35
|
The authentication strategies that have been registered.
|
|
36
36
|
|
|
@@ -38,9 +38,9 @@ The authentication strategies that have been registered.
|
|
|
38
38
|
|
|
39
39
|
### authenticate()
|
|
40
40
|
|
|
41
|
-
> **authenticate**(`strategies`, `req`, `res?`, `required?`):
|
|
41
|
+
> **authenticate**(`strategies`, `req`, `res?`, `required?`): `Promise`\<[`AuthResult`](../interfaces/AuthResult.md) \| `undefined`\>
|
|
42
42
|
|
|
43
|
-
Defined in: [src/auth/AuthMiddleware.ts:54](https://github.com/rapidrest/service-core/blob/
|
|
43
|
+
Defined in: [src/auth/AuthMiddleware.ts:54](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/auth/AuthMiddleware.ts#L54)
|
|
44
44
|
|
|
45
45
|
Performs authentication of the given request using one of the provided strategies.
|
|
46
46
|
|
|
@@ -54,13 +54,13 @@ The list of strategy names to attempt authentication with.
|
|
|
54
54
|
|
|
55
55
|
##### req
|
|
56
56
|
|
|
57
|
-
`HttpRequest`
|
|
57
|
+
[`HttpRequest`](../interfaces/HttpRequest.md)
|
|
58
58
|
|
|
59
59
|
The request containing data to perform authenticate with.
|
|
60
60
|
|
|
61
61
|
##### res?
|
|
62
62
|
|
|
63
|
-
`HttpResponse`
|
|
63
|
+
[`HttpResponse`](../interfaces/HttpResponse.md)
|
|
64
64
|
|
|
65
65
|
The response to use when writing back directly to the client.
|
|
66
66
|
|
|
@@ -72,20 +72,62 @@ Set to `true` to if authentication is required to pass, otherwise set to `false`
|
|
|
72
72
|
|
|
73
73
|
#### Returns
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
`Promise`\<[`AuthResult`](../interfaces/AuthResult.md) \| `undefined`\>
|
|
76
|
+
|
|
77
|
+
***
|
|
78
|
+
|
|
79
|
+
### authenticateSync()
|
|
80
|
+
|
|
81
|
+
> **authenticateSync**(`strategies`, `req`, `res?`, `required?`): [`AuthResult`](../interfaces/AuthResult.md) \| `undefined`
|
|
82
|
+
|
|
83
|
+
Defined in: [src/auth/AuthMiddleware.ts:92](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/auth/AuthMiddleware.ts#L92)
|
|
84
|
+
|
|
85
|
+
Performs authentication of the given request using one of the provided strategies.
|
|
86
|
+
|
|
87
|
+
This is the synchronous version of `authenticate` that performs blocking based authentication.
|
|
88
|
+
|
|
89
|
+
#### Parameters
|
|
90
|
+
|
|
91
|
+
##### strategies
|
|
92
|
+
|
|
93
|
+
`string`[]
|
|
94
|
+
|
|
95
|
+
The list of strategy names to attempt authentication with.
|
|
96
|
+
|
|
97
|
+
##### req
|
|
98
|
+
|
|
99
|
+
[`HttpRequest`](../interfaces/HttpRequest.md)
|
|
100
|
+
|
|
101
|
+
The request containing data to perform authenticate with.
|
|
102
|
+
|
|
103
|
+
##### res?
|
|
104
|
+
|
|
105
|
+
[`HttpResponse`](../interfaces/HttpResponse.md)
|
|
106
|
+
|
|
107
|
+
The response to use when writing back directly to the client.
|
|
108
|
+
|
|
109
|
+
##### required?
|
|
110
|
+
|
|
111
|
+
`boolean`
|
|
112
|
+
|
|
113
|
+
Set to `true` to if authentication is required to pass, otherwise set to `false`.
|
|
114
|
+
|
|
115
|
+
#### Returns
|
|
116
|
+
|
|
117
|
+
[`AuthResult`](../interfaces/AuthResult.md) \| `undefined`
|
|
76
118
|
|
|
77
119
|
***
|
|
78
120
|
|
|
79
121
|
### authWebSocket()
|
|
80
122
|
|
|
81
|
-
> **authWebSocket**(`required`): `RequestHandler`
|
|
123
|
+
> **authWebSocket**(`required`): [`RequestHandler`](../type-aliases/RequestHandler.md)
|
|
82
124
|
|
|
83
|
-
Defined in: [src/auth/AuthMiddleware.ts:
|
|
125
|
+
Defined in: [src/auth/AuthMiddleware.ts:133](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/auth/AuthMiddleware.ts#L133)
|
|
84
126
|
|
|
85
|
-
Returns a request handler function that will perform authentication of a websocket connection. Authentication
|
|
127
|
+
Returns a request handler function that will perform authentication of a websocket connection. Authentication
|
|
86
128
|
can be handled in two ways:
|
|
87
129
|
|
|
88
|
-
1. Authorization header
|
|
130
|
+
1. Authorization header
|
|
89
131
|
2. Negotiation via handshake
|
|
90
132
|
|
|
91
133
|
This middleware function primarily provides the implementation for item 2 above.
|
|
@@ -100,7 +142,7 @@ Set to `true` to indicate that auth is required, otherwise `false`.
|
|
|
100
142
|
|
|
101
143
|
#### Returns
|
|
102
144
|
|
|
103
|
-
`RequestHandler`
|
|
145
|
+
[`RequestHandler`](../type-aliases/RequestHandler.md)
|
|
104
146
|
|
|
105
147
|
***
|
|
106
148
|
|
|
@@ -108,7 +150,7 @@ Set to `true` to indicate that auth is required, otherwise `false`.
|
|
|
108
150
|
|
|
109
151
|
> **register**(`name`, `strategy`): `void`
|
|
110
152
|
|
|
111
|
-
Defined in: [src/auth/AuthMiddleware.ts:
|
|
153
|
+
Defined in: [src/auth/AuthMiddleware.ts:277](https://github.com/rapidrest/service-core/blob/5cd5bc79b3569101eabf54dec613fd4745a69b2b/src/auth/AuthMiddleware.ts#L277)
|
|
112
154
|
|
|
113
155
|
Registers the provided authentication strategy to be used
|
|
114
156
|
|