mongodb-dynamic-api 4.22.0 → 4.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -0
- package/package.json +1 -1
- package/src/dtos/index.d.ts +1 -0
- package/src/dtos/index.js +1 -0
- package/src/dtos/index.js.map +1 -1
- package/src/dtos/paging.query.d.ts +4 -0
- package/src/dtos/paging.query.js +35 -0
- package/src/dtos/paging.query.js.map +1 -0
- package/src/dynamic-api.module.js +6 -3
- package/src/dynamic-api.module.js.map +1 -1
- package/src/guards/base-policies.guard.d.ts +4 -1
- package/src/guards/base-policies.guard.js +14 -3
- package/src/guards/base-policies.guard.js.map +1 -1
- package/src/helpers/cache-path-registry.store.d.ts +13 -0
- package/src/helpers/cache-path-registry.store.js +45 -0
- package/src/helpers/cache-path-registry.store.js.map +1 -0
- package/src/helpers/index.d.ts +3 -0
- package/src/helpers/index.js +3 -0
- package/src/helpers/index.js.map +1 -1
- package/src/helpers/mixin-data.helper.js +19 -0
- package/src/helpers/mixin-data.helper.js.map +1 -1
- package/src/helpers/paging-params.helper.d.ts +13 -0
- package/src/helpers/paging-params.helper.js +14 -0
- package/src/helpers/paging-params.helper.js.map +1 -0
- package/src/helpers/paging-presenter-warning.helper.d.ts +3 -0
- package/src/helpers/paging-presenter-warning.helper.js +16 -0
- package/src/helpers/paging-presenter-warning.helper.js.map +1 -0
- package/src/helpers/pipeline-paging.helper.d.ts +3 -0
- package/src/helpers/pipeline-paging.helper.js +13 -0
- package/src/helpers/pipeline-paging.helper.js.map +1 -0
- package/src/interceptors/dynamic-api-cache.interceptor.d.ts +5 -1
- package/src/interceptors/dynamic-api-cache.interceptor.js +18 -3
- package/src/interceptors/dynamic-api-cache.interceptor.js.map +1 -1
- package/src/interfaces/dynamic-api-cache-options.interface.d.ts +1 -0
- package/src/interfaces/dynamic-api-custom-route.interface.d.ts +8 -2
- package/src/interfaces/dynamic-api-global-state.interface.d.ts +1 -0
- package/src/interfaces/dynamic-api-service-callback.interface.d.ts +1 -0
- package/src/mixins/policies-guard.mixin.d.ts +8 -1
- package/src/mixins/policies-guard.mixin.js +6 -2
- package/src/mixins/policies-guard.mixin.js.map +1 -1
- package/src/modules/auth/services/base-auth.service.js +1 -1
- package/src/modules/auth/services/base-auth.service.js.map +1 -1
- package/src/modules/dynamic-api-config/dynamic-api-config.module.js +8 -1
- package/src/modules/dynamic-api-config/dynamic-api-config.module.js.map +1 -1
- package/src/routes/aggregate/aggregate-controller.mixin.js +2 -1
- package/src/routes/aggregate/aggregate-controller.mixin.js.map +1 -1
- package/src/routes/aggregate/aggregate-gateway.mixin.js +3 -1
- package/src/routes/aggregate/aggregate-gateway.mixin.js.map +1 -1
- package/src/routes/aggregate/base-aggregate.service.d.ts +0 -1
- package/src/routes/aggregate/base-aggregate.service.js +3 -11
- package/src/routes/aggregate/base-aggregate.service.js.map +1 -1
- package/src/routes/cache-purge/cache-purge.helper.js +5 -9
- package/src/routes/cache-purge/cache-purge.helper.js.map +1 -1
- package/src/routes/custom/create-custom-route-controller.js +83 -41
- package/src/routes/custom/create-custom-route-controller.js.map +1 -1
- package/src/routes/custom/create-custom-route-gateway.js +13 -6
- package/src/routes/custom/create-custom-route-gateway.js.map +1 -1
- package/src/routes/custom/custom-route-callback.service.d.ts +7 -0
- package/src/routes/custom/custom-route-callback.service.js +11 -0
- package/src/routes/custom/custom-route-callback.service.js.map +1 -0
- package/src/routes/get-many/get-many-controller.mixin.js +1 -1
- package/src/routes/get-many/get-many-controller.mixin.js.map +1 -1
- package/src/services/base/base.service.d.ts +4 -0
- package/src/services/base/base.service.js +58 -4
- package/src/services/base/base.service.js.map +1 -1
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.d.ts +13 -0
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.js +84 -0
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.js.map +1 -0
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.d.ts +1 -0
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.js +4 -0
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.js.map +1 -1
- package/src/services/index.d.ts +1 -0
- package/src/services/index.js +1 -0
- package/src/services/index.js.map +1 -1
- package/src/version.json +1 -1
- package/test/for-feature/aggregate-ability-predicate-paging.e2e-spec.d.ts +1 -0
- package/test/for-feature/aggregate-ability-predicate-paging.e2e-spec.js +157 -0
- package/test/for-feature/aggregate-ability-predicate-paging.e2e-spec.js.map +1 -0
- package/test/for-feature/aggregate-paging-without-from-aggregate.e2e-spec.d.ts +1 -0
- package/test/for-feature/aggregate-paging-without-from-aggregate.e2e-spec.js +68 -0
- package/test/for-feature/aggregate-paging-without-from-aggregate.e2e-spec.js.map +1 -0
- package/test/for-feature/cache-identity-key.e2e-spec.d.ts +1 -0
- package/test/for-feature/cache-identity-key.e2e-spec.js +120 -0
- package/test/for-feature/cache-identity-key.e2e-spec.js.map +1 -0
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.d.ts +1 -0
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js +170 -0
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js.map +1 -0
- package/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.d.ts +1 -0
- package/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.js +108 -0
- package/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.js.map +1 -0
- package/test/for-feature/custom-route-inject.e2e-spec.d.ts +1 -0
- package/test/for-feature/custom-route-inject.e2e-spec.js +101 -0
- package/test/for-feature/custom-route-inject.e2e-spec.js.map +1 -0
- package/test/for-feature/custom-route-params-openapi.e2e-spec.d.ts +1 -0
- package/test/for-feature/custom-route-params-openapi.e2e-spec.js +77 -0
- package/test/for-feature/custom-route-params-openapi.e2e-spec.js.map +1 -0
- package/test/for-feature/custom-route-target-param.e2e-spec.d.ts +1 -0
- package/test/for-feature/custom-route-target-param.e2e-spec.js +102 -0
- package/test/for-feature/custom-route-target-param.e2e-spec.js.map +1 -0
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.d.ts +1 -0
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.js +152 -0
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.js.map +1 -0
- package/test/for-feature/exclude-from-response.e2e-spec.d.ts +1 -0
- package/test/for-feature/exclude-from-response.e2e-spec.js +93 -0
- package/test/for-feature/exclude-from-response.e2e-spec.js.map +1 -0
- package/test/for-feature/index-sync.e2e-spec.js +42 -0
- package/test/for-feature/index-sync.e2e-spec.js.map +1 -1
- package/test/for-feature/paging-query-helper.e2e-spec.d.ts +1 -0
- package/test/for-feature/paging-query-helper.e2e-spec.js +92 -0
- package/test/for-feature/paging-query-helper.e2e-spec.js.map +1 -0
- package/test/for-root/auth-api-basic.e2e-spec.js +2 -0
- package/test/for-root/auth-api-basic.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-update-account-derived-field.e2e-spec.d.ts +1 -0
- package/test/for-root/auth-api-update-account-derived-field.e2e-spec.js +71 -0
- package/test/for-root/auth-api-update-account-derived-field.e2e-spec.js.map +1 -0
- package/test/for-root/initialization.e2e-spec.js +2 -0
- package/test/for-root/initialization.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-basic.e2e-spec.js +1 -0
- package/test/for-root/websockets-auth-basic.e2e-spec.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CanActivate, NestInterceptor, Type, ValidationPipeOptions } from '@nestjs/common';
|
|
2
2
|
import { Model } from 'mongoose';
|
|
3
3
|
import { BaseEntity } from '../models';
|
|
4
|
-
import { AbilityPredicate, PredicateBehavior } from './dynamic-api-ability.interface';
|
|
4
|
+
import { AbilityPredicate, AuthAbilityPredicate, PredicateBehavior } from './dynamic-api-ability.interface';
|
|
5
5
|
import { DynamicApiRequest } from './dynamic-api-request.interface';
|
|
6
|
+
import { CallbackMethods } from './dynamic-api-service-callback.interface';
|
|
6
7
|
import { Mappable } from './dynamic-api-route-dtos-bundle.type';
|
|
7
8
|
import { DynamicApiWebSocketOptions } from './dynamic-api-web-socket.interface';
|
|
8
9
|
type HttpMethod = 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE';
|
|
@@ -12,24 +13,29 @@ interface CustomRouteContext<Entity extends BaseEntity, Body = unknown, Query =
|
|
|
12
13
|
params: Params;
|
|
13
14
|
body: Body;
|
|
14
15
|
query: Query;
|
|
16
|
+
methods: CallbackMethods;
|
|
15
17
|
req?: DynamicApiRequest;
|
|
16
18
|
}
|
|
17
19
|
interface CustomRouteConfig<Entity extends BaseEntity, Body = unknown, Query = unknown, Params extends Record<string, string> = Record<string, string>, Response = unknown> {
|
|
18
20
|
path: string;
|
|
19
21
|
method: HttpMethod;
|
|
20
|
-
handler: (ctx: CustomRouteContext<Entity, Body, Query, Params
|
|
22
|
+
handler: (ctx: CustomRouteContext<Entity, Body, Query, Params>, injected: unknown[]) => Promise<Response>;
|
|
23
|
+
inject?: Array<Type<unknown> | string | symbol>;
|
|
21
24
|
version?: string;
|
|
22
25
|
isPublic?: boolean;
|
|
23
26
|
description?: string;
|
|
24
27
|
guards?: Type<CanActivate>[];
|
|
25
28
|
abilityPredicate?: AbilityPredicate<Entity>;
|
|
29
|
+
authAbilityPredicate?: AuthAbilityPredicate<unknown, Body>;
|
|
26
30
|
predicateBehavior?: PredicateBehavior;
|
|
31
|
+
targetParam?: Extract<keyof Params, string>;
|
|
27
32
|
validationPipeOptions?: ValidationPipeOptions;
|
|
28
33
|
webSocket?: DynamicApiWebSocketOptions;
|
|
29
34
|
eventName?: string;
|
|
30
35
|
dTOs?: {
|
|
31
36
|
body?: Type;
|
|
32
37
|
query?: Type;
|
|
38
|
+
params?: Type;
|
|
33
39
|
presenter?: Type & Partial<Mappable<Entity>>;
|
|
34
40
|
};
|
|
35
41
|
useInterceptors?: Type<NestInterceptor>[];
|
|
@@ -38,6 +38,7 @@ type CallbackMethods = {
|
|
|
38
38
|
deleteManyDocuments<T>(entity: Type<T>, ids: string[]): Promise<DeleteResult>;
|
|
39
39
|
deleteOneDocument<T>(entity: Type<T>, id: string): Promise<DeleteResult>;
|
|
40
40
|
aggregateDocuments<T>(entity: Type<T>, pipeline: PipelineStage[]): Promise<T[]>;
|
|
41
|
+
recomputeDerivedFields<T>(entity: Type<T>, id: string): Promise<void>;
|
|
41
42
|
};
|
|
42
43
|
type DynamicApiCallbackMethods = CallbackMethods;
|
|
43
44
|
type AfterSaveCallback<Entity extends BaseEntity, User = unknown> = (entity: Entity, methods: CallbackMethods, user?: User) => Promise<void>;
|
|
@@ -2,12 +2,19 @@ import { Type } from '@nestjs/common';
|
|
|
2
2
|
import { PipelineStage } from 'mongodb-pipeline-builder';
|
|
3
3
|
import { AbilityPredicate, AuthAbilityPredicate, PoliciesGuardConstructor, PredicateBehavior, RouteType } from '../interfaces';
|
|
4
4
|
import { BaseEntity } from '../models';
|
|
5
|
-
|
|
5
|
+
interface RoutePoliciesGuardMixinOptions {
|
|
6
|
+
queryToPipeline?: (query: unknown) => PipelineStage[];
|
|
7
|
+
predicateBehavior?: PredicateBehavior;
|
|
8
|
+
targetParam?: string;
|
|
9
|
+
authAbilityPredicate?: AuthAbilityPredicate<unknown>;
|
|
10
|
+
}
|
|
11
|
+
declare function RoutePoliciesGuardMixin<Entity extends BaseEntity>(entity: Type<Entity>, routeType: RouteType, displayedName: string, version: string | undefined, abilityPredicate: AbilityPredicate<Entity> | undefined, options?: RoutePoliciesGuardMixinOptions): PoliciesGuardConstructor<Entity>;
|
|
6
12
|
interface SocketPoliciesGuardMixinOptions {
|
|
7
13
|
abilityPredicate?: AuthAbilityPredicate;
|
|
8
14
|
isPublic?: boolean;
|
|
9
15
|
queryToPipeline?: (query: unknown) => PipelineStage[];
|
|
10
16
|
predicateBehavior?: PredicateBehavior;
|
|
17
|
+
authAbilityPredicate?: AuthAbilityPredicate<unknown>;
|
|
11
18
|
}
|
|
12
19
|
declare function SocketPoliciesGuardMixin<Entity extends BaseEntity>(entity: Type<Entity>, routeType: RouteType, event: string, version: string | undefined, options?: SocketPoliciesGuardMixinOptions): PoliciesGuardConstructor<Entity>;
|
|
13
20
|
export { RoutePoliciesGuardMixin, SocketPoliciesGuardMixin };
|
|
@@ -20,7 +20,8 @@ const mongoose_2 = require("mongoose");
|
|
|
20
20
|
const dynamic_api_module_1 = require("../dynamic-api.module");
|
|
21
21
|
const guards_1 = require("../guards");
|
|
22
22
|
const helpers_1 = require("../helpers");
|
|
23
|
-
function RoutePoliciesGuardMixin(entity, routeType, displayedName, version, abilityPredicate,
|
|
23
|
+
function RoutePoliciesGuardMixin(entity, routeType, displayedName, version, abilityPredicate, options = {}) {
|
|
24
|
+
const { queryToPipeline, predicateBehavior, targetParam, authAbilityPredicate } = options;
|
|
24
25
|
let RoutePoliciesGuard = class RoutePoliciesGuard extends guards_1.BasePoliciesGuard {
|
|
25
26
|
constructor(model) {
|
|
26
27
|
super(model);
|
|
@@ -28,8 +29,10 @@ function RoutePoliciesGuardMixin(entity, routeType, displayedName, version, abil
|
|
|
28
29
|
this.routeType = routeType;
|
|
29
30
|
this.entity = entity;
|
|
30
31
|
this.abilityPredicate = abilityPredicate;
|
|
32
|
+
this.authAbilityPredicate = authAbilityPredicate;
|
|
31
33
|
this.predicateBehavior = predicateBehavior;
|
|
32
34
|
this.queryToPipeline = queryToPipeline;
|
|
35
|
+
this.targetParam = targetParam;
|
|
33
36
|
}
|
|
34
37
|
};
|
|
35
38
|
RoutePoliciesGuard = __decorate([
|
|
@@ -44,7 +47,7 @@ function RoutePoliciesGuardMixin(entity, routeType, displayedName, version, abil
|
|
|
44
47
|
return RoutePoliciesGuard;
|
|
45
48
|
}
|
|
46
49
|
function SocketPoliciesGuardMixin(entity, routeType, event, version, options = {}) {
|
|
47
|
-
const { abilityPredicate, isPublic, queryToPipeline, predicateBehavior } = options;
|
|
50
|
+
const { abilityPredicate, isPublic, queryToPipeline, predicateBehavior, authAbilityPredicate } = options;
|
|
48
51
|
let SocketPoliciesGuard = class SocketPoliciesGuard extends guards_1.BaseSocketPoliciesGuard {
|
|
49
52
|
constructor(model) {
|
|
50
53
|
super(model);
|
|
@@ -52,6 +55,7 @@ function SocketPoliciesGuardMixin(entity, routeType, event, version, options = {
|
|
|
52
55
|
this.routeType = routeType;
|
|
53
56
|
this.entity = entity;
|
|
54
57
|
this.abilityPredicate = abilityPredicate;
|
|
58
|
+
this.authAbilityPredicate = authAbilityPredicate;
|
|
55
59
|
this.predicateBehavior = predicateBehavior;
|
|
56
60
|
this.queryToPipeline = queryToPipeline;
|
|
57
61
|
this.isPublic = isPublic;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policies-guard.mixin.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/mixins/policies-guard.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"policies-guard.mixin.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/mixins/policies-guard.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAiHS,0DAAuB;AAAE,4DAAwB;AAjH1D,2CAAkD;AAClD,+CAA+C;AAE/C,uCAAiC;AACjC,8DAAyD;AACzD,sCAAuE;AACvE,wCAAqD;AAoBrD,SAAS,uBAAuB,CAC9B,MAAoB,EACpB,SAAoB,EACpB,aAAqB,EACrB,OAA2B,EAC3B,gBAAsD,EACtD,UAA0C,EAAE;IAE5C,MAAM,EAAE,eAAe,EAAE,iBAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC;IAE1F,IACM,kBAAkB,GADxB,MACM,kBAAmB,SAAQ,0BAAyB;QASxD,YAKE,KAAuC;YAEvC,KAAK,CAAC,KAAK,CAAC,CAAC;YAFM,UAAK,GAAL,KAAK,CAAe;YAb/B,cAAS,GAAG,SAAS,CAAC;YACtB,WAAM,GAAG,MAAM,CAAC;YAChB,qBAAgB,GAAyC,gBAAgB,CAAC;YAC1E,yBAAoB,GAA8C,oBAAoB,CAAC;YACvF,sBAAiB,GAAkC,iBAAiB,CAAC;YACrE,oBAAe,GAAG,eAAe,CAAC;YAClC,gBAAW,GAAG,WAAW,CAAC;QAUpC,CAAC;KACF,CAAA;IAlBK,kBAAkB;QADvB,IAAA,mBAAU,GAAE;QAWR,WAAA,IAAA,sBAAW,EACV,MAAM,CAAC,IAAI,EACX,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAC7C,CAAA;yCACyB,gBAAK;OAd7B,kBAAkB,CAkBvB;IAED,MAAM,CAAC,cAAc,CAAC,kBAAkB,EAAE,MAAM,EAAE;QAChD,KAAK,EAAE,GAAG,IAAA,qBAAW,EAAC,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC,EAAE;QAC3E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAYD,SAAS,wBAAwB,CAC/B,MAAoB,EACpB,SAAoB,EACpB,KAAa,EACb,OAA2B,EAC3B,UAA2C,EAAE;IAE7C,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC;IAEzG,IACM,mBAAmB,GADzB,MACM,mBAAoB,SAAQ,gCAA+B;QAS/D,YAKE,KAAuC;YAEvC,KAAK,CAAC,KAAK,CAAC,CAAC;YAFM,UAAK,GAAL,KAAK,CAAe;YAb/B,cAAS,GAAG,SAAS,CAAC;YACtB,WAAM,GAAG,MAAM,CAAC;YAChB,qBAAgB,GAAG,gBAAgB,CAAC;YACpC,yBAAoB,GAA8C,oBAAoB,CAAC;YACvF,sBAAiB,GAAkC,iBAAiB,CAAC;YACrE,oBAAe,GAAG,eAAe,CAAC;YAClC,aAAQ,GAAG,QAAQ,CAAC;QAU9B,CAAC;KACF,CAAA;IAlBK,mBAAmB;QADxB,IAAA,mBAAU,GAAE;QAWR,WAAA,IAAA,sBAAW,EACV,MAAM,CAAC,IAAI,EACX,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAC7C,CAAA;yCACyB,gBAAK;OAd7B,mBAAmB,CAkBxB;IAED,MAAM,CAAC,cAAc,CAAC,mBAAmB,EAAE,MAAM,EAAE;QACjD,KAAK,EAAE,GAAG,IAAA,qBAAW,EAAC,SAAS,EAAE,IAAA,oBAAU,EAAC,KAAK,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,EAAE;QACrF,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,mBAAmB,CAAC;AAC7B,CAAC"}
|
|
@@ -104,7 +104,7 @@ class BaseAuthService extends services_1.BaseService {
|
|
|
104
104
|
update =
|
|
105
105
|
await this.beforeUpdateAccountCallback({ ...user, id: user._id.toString() }, { update }, this.callbackMethods);
|
|
106
106
|
}
|
|
107
|
-
await this.
|
|
107
|
+
await this.updateOneDocument(this.entity, { _id: id }, { $set: update });
|
|
108
108
|
if (this.updateAccountCallback) {
|
|
109
109
|
const fullUser = (await this.model.findOne({ _id: id }).lean().exec());
|
|
110
110
|
const instance = this.buildInstance(fullUser);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-auth.service.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/services/base-auth.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base-auth.service.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/services/base-auth.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var DynamicApiConfigModule_1;
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.DynamicApiConfigModule = void 0;
|
|
11
|
+
const cache_manager_1 = require("@nestjs/cache-manager");
|
|
11
12
|
const common_1 = require("@nestjs/common");
|
|
12
13
|
const interfaces_1 = require("../../interfaces");
|
|
14
|
+
const dynamic_api_cache_service_1 = require("../../services/dynamic-api-cache/dynamic-api-cache.service");
|
|
13
15
|
let DynamicApiConfigModule = DynamicApiConfigModule_1 = class DynamicApiConfigModule {
|
|
14
16
|
static register(config) {
|
|
15
17
|
return {
|
|
@@ -20,8 +22,13 @@ let DynamicApiConfigModule = DynamicApiConfigModule_1 = class DynamicApiConfigMo
|
|
|
20
22
|
provide: interfaces_1.DYNAMIC_API_GLOBAL_STATE,
|
|
21
23
|
useValue: config,
|
|
22
24
|
},
|
|
25
|
+
{
|
|
26
|
+
provide: dynamic_api_cache_service_1.DynamicApiCacheService,
|
|
27
|
+
inject: [cache_manager_1.CACHE_MANAGER],
|
|
28
|
+
useFactory: (cacheManager) => new dynamic_api_cache_service_1.DynamicApiCacheService(cacheManager),
|
|
29
|
+
},
|
|
23
30
|
],
|
|
24
|
-
exports: [interfaces_1.DYNAMIC_API_GLOBAL_STATE],
|
|
31
|
+
exports: [interfaces_1.DYNAMIC_API_GLOBAL_STATE, dynamic_api_cache_service_1.DynamicApiCacheService],
|
|
25
32
|
};
|
|
26
33
|
}
|
|
27
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-api-config.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/modules/dynamic-api-config/dynamic-api-config.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;
|
|
1
|
+
{"version":3,"file":"dynamic-api-config.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/modules/dynamic-api-config/dynamic-api-config.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,yDAAsD;AACtD,2CAAuD;AAEvD,iDAAmF;AAInF,0GAAoG;AAG7F,IAAM,sBAAsB,8BAA5B,MAAM,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,MAA6B;QAC3C,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,wBAAsB;YAC9B,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,qCAAwB;oBACjC,QAAQ,EAAE,MAAM;iBACjB;gBACD;oBACE,OAAO,EAAE,kDAAsB;oBAC/B,MAAM,EAAE,CAAC,6BAAa,CAAC;oBACvB,UAAU,EAAE,CAAC,YAAmB,EAAE,EAAE,CAAC,IAAI,kDAAsB,CAAC,YAAY,CAAC;iBAC9E;aACF;YACD,OAAO,EAAE,CAAC,qCAAwB,EAAE,kDAAsB,CAAC;SAC5D,CAAC;IACJ,CAAC;CACF,CAAA;AAnBY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,sBAAsB,CAmBlC"}
|
|
@@ -43,7 +43,7 @@ function AggregateControllerMixin(entity, controllerOptions, { dTOs, useIntercep
|
|
|
43
43
|
presenter: AggregatePresenter,
|
|
44
44
|
}, isArrayResponse);
|
|
45
45
|
const toPipeline = AggregateQuery.toPipeline;
|
|
46
|
-
class AggregatePoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate, toPipeline, predicateBehavior) {
|
|
46
|
+
class AggregatePoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate, { queryToPipeline: toPipeline, predicateBehavior }) {
|
|
47
47
|
}
|
|
48
48
|
class BaseAggregateController {
|
|
49
49
|
constructor(service) {
|
|
@@ -61,6 +61,7 @@ function AggregateControllerMixin(entity, controllerOptions, { dTOs, useIntercep
|
|
|
61
61
|
}
|
|
62
62
|
const { list, count, totalPage } = await this.service.aggregate(pipelineBuilt, req?.user);
|
|
63
63
|
const fromAggregate = AggregatePresenter.fromAggregate;
|
|
64
|
+
(0, helpers_1.warnIfPagingResultDropped)(pipelineBuilt, !!fromAggregate, entity.name);
|
|
64
65
|
return fromAggregate ? fromAggregate(list, count, totalPage) : list;
|
|
65
66
|
}
|
|
66
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregate-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/aggregate/aggregate-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"aggregate-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/aggregate/aggregate-controller.mixin.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,8 +55,10 @@ function AggregateGatewayMixin(entity, controllerOptions, { dTOs, useInterceptor
|
|
|
55
55
|
if (!toPipeline) {
|
|
56
56
|
throw new websockets_1.WsException('Query DTO must have toPipeline static method');
|
|
57
57
|
}
|
|
58
|
-
const
|
|
58
|
+
const pipelineBuilt = toPipeline((0, class_transformer_1.plainToInstance)(AggregateData, data));
|
|
59
|
+
const { list, count, totalPage } = await this.service.aggregate(pipelineBuilt, _socket?.user);
|
|
59
60
|
const fromAggregate = AggregateResponse.fromAggregate;
|
|
61
|
+
(0, helpers_1.warnIfPagingResultDropped)(pipelineBuilt, !!fromAggregate, entity.name);
|
|
60
62
|
return {
|
|
61
63
|
event,
|
|
62
64
|
data: fromAggregate ? fromAggregate(list, count, totalPage) : list,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregate-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/aggregate/aggregate-gateway.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"aggregate-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/aggregate/aggregate-gateway.mixin.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BaseAggregateService = void 0;
|
|
4
4
|
const mongodb_pipeline_builder_1 = require("mongodb-pipeline-builder");
|
|
5
|
+
const pipeline_paging_helper_1 = require("../../helpers/pipeline-paging.helper");
|
|
5
6
|
const services_1 = require("../../services");
|
|
6
7
|
class BaseAggregateService extends services_1.BaseService {
|
|
7
8
|
constructor(model) {
|
|
@@ -13,7 +14,7 @@ class BaseAggregateService extends services_1.BaseService {
|
|
|
13
14
|
let documents;
|
|
14
15
|
let count;
|
|
15
16
|
let totalPage;
|
|
16
|
-
if (
|
|
17
|
+
if ((0, pipeline_paging_helper_1.isPagingPipeline)(pipeline)) {
|
|
17
18
|
const pagingResult = await (0, mongodb_pipeline_builder_1.GetPagingResult)(this.model, pipeline);
|
|
18
19
|
documents = pagingResult.GetDocs();
|
|
19
20
|
count = pagingResult.GetCount();
|
|
@@ -31,7 +32,7 @@ class BaseAggregateService extends services_1.BaseService {
|
|
|
31
32
|
const list = documents.map((d) => this.buildInstance(d));
|
|
32
33
|
if (this.predicateBehavior === 'filter' && this.abilityPredicate) {
|
|
33
34
|
const filtered = list.filter((instance) => this.abilityPredicate(instance, user));
|
|
34
|
-
return { list: filtered, count
|
|
35
|
+
return { list: filtered, count, totalPage };
|
|
35
36
|
}
|
|
36
37
|
return { list, count, totalPage };
|
|
37
38
|
}
|
|
@@ -40,15 +41,6 @@ class BaseAggregateService extends services_1.BaseService {
|
|
|
40
41
|
this.handleDuplicateKeyError(error);
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
|
-
withPagination(pipeline) {
|
|
44
|
-
const firstStageFacet = pipeline[0].$facet;
|
|
45
|
-
if (!firstStageFacet) {
|
|
46
|
-
return false;
|
|
47
|
-
}
|
|
48
|
-
const hasValidDocs = Array.isArray(firstStageFacet.docs) && firstStageFacet.docs.length > 0;
|
|
49
|
-
const hasValidCount = Array.isArray(firstStageFacet.count) && firstStageFacet.count.length > 0;
|
|
50
|
-
return hasValidDocs && hasValidCount;
|
|
51
|
-
}
|
|
52
44
|
}
|
|
53
45
|
exports.BaseAggregateService = BaseAggregateService;
|
|
54
46
|
//# sourceMappingURL=base-aggregate.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-aggregate.service.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/aggregate/base-aggregate.service.ts"],"names":[],"mappings":";;;AACA,uEAAqF;
|
|
1
|
+
{"version":3,"file":"base-aggregate.service.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/aggregate/base-aggregate.service.ts"],"names":[],"mappings":";;;AACA,uEAAqF;AAErF,iFAAwE;AAGxE,6CAA6C;AAG7C,MAAsB,oBACpB,SAAQ,sBAAmB;IAS3B,YAAyC,KAAoB;QAC3D,KAAK,CAAC,KAAK,CAAC,CAAC;QAD0B,UAAK,GAAL,KAAK,CAAe;IAE7D,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAyB,EAAE,IAAc;QACvD,IAAI,CAAC;YACH,IAAI,SAAmB,CAAC;YACxB,IAAI,KAAa,CAAC;YAClB,IAAI,SAAiB,CAAC;YAEtB,IAAI,IAAA,yCAAgB,EAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/B,MAAM,YAAY,GAAG,MAAM,IAAA,0CAAe,EAAS,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBACzE,SAAS,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC;gBACnC,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;gBAChC,SAAS,GAAG,YAAY,CAAC,kBAAkB,EAAE,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAS,EAAS,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAC7D,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC7B,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAC1B,SAAS,GAAG,CAAC,CAAC;YAChB,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gBACrB,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CACX,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CACxC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CACtE,CACF,CACF,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAEzD,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAQjE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;gBAClF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC9C,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACpC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;CACF;AA9DD,oDA8DC"}
|
|
@@ -8,17 +8,14 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
-
};
|
|
14
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
12
|
exports.CachePurgePresenter = void 0;
|
|
16
13
|
exports.createCachePurgeController = createCachePurgeController;
|
|
17
|
-
const cache_manager_1 = require("@nestjs/cache-manager");
|
|
18
14
|
const common_1 = require("@nestjs/common");
|
|
19
15
|
const swagger_1 = require("@nestjs/swagger");
|
|
20
16
|
const decorators_1 = require("../../decorators");
|
|
21
17
|
const dynamic_api_module_1 = require("../../dynamic-api.module");
|
|
18
|
+
const dynamic_api_cache_service_1 = require("../../services/dynamic-api-cache/dynamic-api-cache.service");
|
|
22
19
|
class CachePurgePresenter {
|
|
23
20
|
}
|
|
24
21
|
exports.CachePurgePresenter = CachePurgePresenter;
|
|
@@ -30,11 +27,11 @@ function createCachePurgeController(entity, { path, apiTag, version, isPublic })
|
|
|
30
27
|
const tag = apiTag || entity.name;
|
|
31
28
|
const isAuthEnabled = dynamic_api_module_1.DynamicApiModule.state.get('isAuthEnabled');
|
|
32
29
|
let CachePurgeController = class CachePurgeController {
|
|
33
|
-
constructor(
|
|
34
|
-
this.
|
|
30
|
+
constructor(cacheService) {
|
|
31
|
+
this.cacheService = cacheService;
|
|
35
32
|
}
|
|
36
33
|
async purgeCache() {
|
|
37
|
-
await this.
|
|
34
|
+
await this.cacheService.invalidate(entity);
|
|
38
35
|
return { purged: true };
|
|
39
36
|
}
|
|
40
37
|
};
|
|
@@ -48,8 +45,7 @@ function createCachePurgeController(entity, { path, apiTag, version, isPublic })
|
|
|
48
45
|
(0, common_1.Controller)({ path, version }),
|
|
49
46
|
(0, swagger_1.ApiTags)(tag),
|
|
50
47
|
(0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor),
|
|
51
|
-
|
|
52
|
-
__metadata("design:paramtypes", [Object])
|
|
48
|
+
__metadata("design:paramtypes", [dynamic_api_cache_service_1.DynamicApiCacheService])
|
|
53
49
|
], CachePurgeController);
|
|
54
50
|
const descriptor = Object.getOwnPropertyDescriptor(CachePurgeController.prototype, 'purgeCache');
|
|
55
51
|
(0, swagger_1.ApiOperation)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache-purge.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/cache-purge/cache-purge.helper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cache-purge.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/cache-purge/cache-purge.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;AAiE8B,gEAA0B;AAjExD,2CAMwB;AACxB,6CAAiG;AACjG,iDAA0C;AAC1C,iEAA4D;AAI5D,0GAAoG;AAEpG,MAAM,mBAAmB;CAGxB;AA+CQ,kDAAmB;AAhD1B;IADC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;;mDACf;AAGlB,SAAS,0BAA0B,CACjC,MAAoB,EACpB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAuC;IAExE,MAAM,GAAG,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC;IAClC,MAAM,aAAa,GAAG,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAElE,IAGM,oBAAoB,GAH1B,MAGM,oBAAoB;QACxB,YAA6B,YAAoC;YAApC,iBAAY,GAAZ,YAAY,CAAwB;QAAG,CAAC;QAG/D,AAAN,KAAK,CAAC,UAAU;YACd,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC3C,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;KACF,CAAA;IAJO;QADL,IAAA,eAAM,EAAC,OAAO,CAAC;;;;0DAIf;IAPG,oBAAoB;QAHzB,IAAA,mBAAU,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC7B,IAAA,iBAAO,EAAC,GAAG,CAAC;QACZ,IAAA,wBAAe,EAAC,mCAA0B,CAAC;yCAEC,kDAAsB;OAD7D,oBAAoB,CAQzB;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAEjG,IAAA,sBAAY,EAAC;QACX,WAAW,EAAE,aAAa,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9D,OAAO,EAAE,mBAAmB,GAAG,EAAE;KAClC,CAAC,CAAC,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAE7D,IAAA,qBAAW,EAAC;QACV,IAAI,EAAE,mBAAmB;KAC1B,CAAC,CAAC,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAE7D,IAAI,QAAQ,EAAE,CAAC;QACb,IAAA,mBAAM,GAAE,CAAC,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IACrE,CAAC;SAAM,IAAI,aAAa,EAAE,CAAC;QACzB,IAAA,uBAAa,GAAE,CAAC,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE,MAAM,EAAE;QAClD,KAAK,EAAE,aAAa,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,YAAY;QAClE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,oBAAoB,CAAC;AAC9B,CAAC"}
|