mongodb-dynamic-api 4.23.0 → 4.24.1
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 +21 -0
- package/package.json +1 -1
- package/src/builders/route-decorators/paginated-response.builder.d.ts +3 -0
- package/src/builders/route-decorators/paginated-response.builder.js +35 -0
- package/src/builders/route-decorators/paginated-response.builder.js.map +1 -0
- package/src/builders/route-decorators/route-decorators.builder.d.ts +1 -1
- package/src/builders/route-decorators/route-decorators.builder.js +9 -2
- package/src/builders/route-decorators/route-decorators.builder.js.map +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/guards/base-policies.guard.d.ts +3 -1
- package/src/guards/base-policies.guard.js +11 -1
- package/src/guards/base-policies.guard.js.map +1 -1
- 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/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/interfaces/dynamic-api-custom-route.interface.d.ts +4 -1
- package/src/mixins/policies-guard.mixin.d.ts +2 -0
- package/src/mixins/policies-guard.mixin.js +4 -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/routes/aggregate/aggregate-controller.mixin.js +1 -0
- 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/custom/create-custom-route-controller.js +6 -3
- package/src/routes/custom/create-custom-route-controller.js.map +1 -1
- package/src/routes/custom/create-custom-route-gateway.js +6 -3
- 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/services/base/base.service.d.ts +1 -0
- package/src/services/base/base.service.js +9 -0
- package/src/services/base/base.service.js.map +1 -1
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.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/aggregate-swagger-paginated-response.e2e-spec.d.ts +1 -0
- package/test/for-feature/aggregate-swagger-paginated-response.e2e-spec.js +98 -0
- package/test/for-feature/aggregate-swagger-paginated-response.e2e-spec.js.map +1 -0
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js +34 -0
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js.map +1 -1
- 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/derived-fields-raw-write-recompute.e2e-spec.js +24 -0
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.js.map +1 -1
- 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-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/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
Changelog
|
|
2
2
|
|
|
3
|
+
## [4.24.1](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v4.24.0...v4.24.1) (2026-09-01)
|
|
4
|
+
|
|
5
|
+
### aggregate
|
|
6
|
+
|
|
7
|
+
* **aggregate:** document paginated { list, count, totalPage } response shape in Swagger ([621bec5](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/621bec59bb404eb3d9da951061a53e88386366a2)), closes [#12](https://github.com/MikeDev75015/mongodb-dynamic-api/issues/12) [#14](https://github.com/MikeDev75015/mongodb-dynamic-api/issues/14) [#14](https://github.com/MikeDev75015/mongodb-dynamic-api/issues/14)
|
|
8
|
+
|
|
9
|
+
## [4.24.0](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v4.23.0...v4.24.0) (2026-08-29)
|
|
10
|
+
|
|
11
|
+
### aggregate
|
|
12
|
+
|
|
13
|
+
* **aggregate:** make abilityPredicate compatible with .Paging() pipelines ([450649e](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/450649ebc40f53657dd1c84f760fcfe05ab743c0))
|
|
14
|
+
* **aggregate:** warn on silently dropped paging results, add PagingQuery helper ([7708d5e](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/7708d5e68e9e922023d0519e2de149f05f929f4b))
|
|
15
|
+
|
|
16
|
+
### entities
|
|
17
|
+
|
|
18
|
+
* **entities:** recompute @DerivedField on useAuth updateAccount and custom routes ([3526172](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/35261722dd796763c83ac24d0764901e66759224))
|
|
19
|
+
|
|
20
|
+
### guards
|
|
21
|
+
|
|
22
|
+
* **guards:** add authAbilityPredicate for document-less custom routes ([f4f99d3](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/f4f99d3a492dda5b07217b6f6b6a66af3f7dcbf6))
|
|
23
|
+
|
|
3
24
|
## [4.23.0](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v4.22.0...v4.23.0) (2026-08-23)
|
|
4
25
|
|
|
5
26
|
### quality
|
package/package.json
CHANGED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.buildPaginatedResponseType = buildPaginatedResponseType;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
function buildPaginatedResponseType(presenter) {
|
|
15
|
+
class PaginatedResponse {
|
|
16
|
+
}
|
|
17
|
+
__decorate([
|
|
18
|
+
(0, swagger_1.ApiProperty)({ type: [presenter] }),
|
|
19
|
+
__metadata("design:type", Array)
|
|
20
|
+
], PaginatedResponse.prototype, "list", void 0);
|
|
21
|
+
__decorate([
|
|
22
|
+
(0, swagger_1.ApiProperty)(),
|
|
23
|
+
__metadata("design:type", Number)
|
|
24
|
+
], PaginatedResponse.prototype, "count", void 0);
|
|
25
|
+
__decorate([
|
|
26
|
+
(0, swagger_1.ApiProperty)(),
|
|
27
|
+
__metadata("design:type", Number)
|
|
28
|
+
], PaginatedResponse.prototype, "totalPage", void 0);
|
|
29
|
+
Object.defineProperty(PaginatedResponse, 'name', {
|
|
30
|
+
value: `Paginated${presenter.name}`,
|
|
31
|
+
writable: false,
|
|
32
|
+
});
|
|
33
|
+
return PaginatedResponse;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=paginated-response.builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paginated-response.builder.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/builders/route-decorators/paginated-response.builder.ts"],"names":[],"mappings":";;;;;;;;;;;AAoCS,gEAA0B;AAnCnC,6CAA8C;AAe9C,SAAS,0BAA0B,CAAC,SAAe;IACjD,MAAM,iBAAiB;KAStB;IAPC;QADC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;;mDACI;IAGvC;QADC,IAAA,qBAAW,GAAE;;oDACA;IAGd;QADC,IAAA,qBAAW,GAAE;;wDACI;IAGpB,MAAM,CAAC,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE;QAC/C,KAAK,EAAE,YAAY,SAAS,CAAC,IAAI,EAAE;QACnC,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,iBAAiB,CAAC;AAC3B,CAAC"}
|
|
@@ -17,7 +17,7 @@ declare class RouteDecoratorsBuilder<Entity extends BaseEntity> implements Dynam
|
|
|
17
17
|
body?: Type;
|
|
18
18
|
presenter?: Type;
|
|
19
19
|
}, isArrayResponse?: boolean);
|
|
20
|
-
build(): (
|
|
20
|
+
build(): ((target: object, key?: string | symbol, descriptor?: TypedPropertyDescriptor<any>) => any)[];
|
|
21
21
|
private getRouteDecorators;
|
|
22
22
|
private getApiDecorators;
|
|
23
23
|
}
|
|
@@ -6,6 +6,7 @@ const swagger_1 = require("@nestjs/swagger");
|
|
|
6
6
|
const decorators_1 = require("../../decorators");
|
|
7
7
|
const dynamic_api_module_1 = require("../../dynamic-api.module");
|
|
8
8
|
const helpers_1 = require("../../helpers");
|
|
9
|
+
const paginated_response_builder_1 = require("./paginated-response.builder");
|
|
9
10
|
class RouteDecoratorsBuilder {
|
|
10
11
|
constructor(routeType, entity, subPath, version, description, isPublic, dTOs = {}, isArrayResponse = false) {
|
|
11
12
|
this.routeType = routeType;
|
|
@@ -93,15 +94,21 @@ class RouteDecoratorsBuilder {
|
|
|
93
94
|
}
|
|
94
95
|
getApiDecorators(paramKey) {
|
|
95
96
|
const feature = this.subPath ? `${(0, helpers_1.pascalCase)(this.subPath)}-${this.entity.name}` : this.entity.name;
|
|
97
|
+
const presenter = this.dTOs.presenter ?? this.entity;
|
|
98
|
+
const isPaginatedAggregate = this.routeType === 'Aggregate'
|
|
99
|
+
&& typeof presenter.fromAggregate === 'function';
|
|
100
|
+
const responseType = isPaginatedAggregate ? (0, paginated_response_builder_1.buildPaginatedResponseType)(presenter) : presenter;
|
|
96
101
|
return [
|
|
97
102
|
(0, swagger_1.ApiOperation)({
|
|
98
103
|
operationId: `${(0, helpers_1.lowerFirst)(this.routeType)}${feature}${this.version ? 'V' + this.version : ''}`,
|
|
99
104
|
summary: this.description ??
|
|
100
105
|
`${(0, helpers_1.upperFirst)((0, helpers_1.lowerCase)(this.routeType))} ${(0, helpers_1.lowerCase)(feature)}`,
|
|
101
106
|
}),
|
|
107
|
+
...(isPaginatedAggregate ? [(0, swagger_1.ApiExtraModels)(presenter)] : []),
|
|
102
108
|
(0, swagger_1.ApiResponse)({
|
|
103
|
-
type:
|
|
104
|
-
isArray:
|
|
109
|
+
type: responseType,
|
|
110
|
+
isArray: !isPaginatedAggregate
|
|
111
|
+
&& (this.responseRouteTypeIsArray.includes(this.routeType) || this.isArrayResponse),
|
|
105
112
|
}),
|
|
106
113
|
...(this.dTOs.body ? [
|
|
107
114
|
(0, swagger_1.ApiBody)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route-decorators.builder.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/builders/route-decorators/route-decorators.builder.ts"],"names":[],"mappings":";;;AAAA,2CAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"route-decorators.builder.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/builders/route-decorators/route-decorators.builder.ts"],"names":[],"mappings":"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"}
|
package/src/dtos/index.d.ts
CHANGED
package/src/dtos/index.js
CHANGED
|
@@ -18,4 +18,5 @@ __exportStar(require("./many-entity.query"), exports);
|
|
|
18
18
|
__exportStar(require("./delete.presenter"), exports);
|
|
19
19
|
__exportStar(require("./entity.param"), exports);
|
|
20
20
|
__exportStar(require("./entity.query"), exports);
|
|
21
|
+
__exportStar(require("./paging.query"), exports);
|
|
21
22
|
//# sourceMappingURL=index.js.map
|
package/src/dtos/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,qDAAmC;AACnC,iDAA+B;AAC/B,iDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,qDAAmC;AACnC,iDAA+B;AAC/B,iDAA+B;AAC/B,iDAA+B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PagingQuery = void 0;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const class_transformer_1 = require("class-transformer");
|
|
15
|
+
const class_validator_1 = require("class-validator");
|
|
16
|
+
class PagingQuery {
|
|
17
|
+
}
|
|
18
|
+
exports.PagingQuery = PagingQuery;
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, swagger_1.ApiPropertyOptional)({ example: 1, minimum: 1, description: '1-based page number.' }),
|
|
21
|
+
(0, class_validator_1.IsOptional)(),
|
|
22
|
+
(0, class_transformer_1.Type)(() => Number),
|
|
23
|
+
(0, class_validator_1.IsInt)(),
|
|
24
|
+
(0, class_validator_1.Min)(1),
|
|
25
|
+
__metadata("design:type", Number)
|
|
26
|
+
], PagingQuery.prototype, "page", void 0);
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, swagger_1.ApiPropertyOptional)({ example: 20, minimum: 1, description: 'Documents per page.' }),
|
|
29
|
+
(0, class_validator_1.IsOptional)(),
|
|
30
|
+
(0, class_transformer_1.Type)(() => Number),
|
|
31
|
+
(0, class_validator_1.IsInt)(),
|
|
32
|
+
(0, class_validator_1.Min)(1),
|
|
33
|
+
__metadata("design:type", Number)
|
|
34
|
+
], PagingQuery.prototype, "pageSize", void 0);
|
|
35
|
+
//# sourceMappingURL=paging.query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paging.query.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/dtos/paging.query.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,yDAAyC;AACzC,qDAAyD;AAuBzD,MAAa,WAAW;CAcvB;AAdD,kCAcC;AARC;IALC,IAAA,6BAAmB,EAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC;IACpF,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,CAAC,CAAC;;yCACO;AAOd;IALC,IAAA,6BAAmB,EAAC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC;IACpF,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,CAAC,CAAC;;6CACW"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CanActivate, ExecutionContext, Type } from '@nestjs/common';
|
|
2
2
|
import { PipelineStage } from 'mongodb-pipeline-builder';
|
|
3
3
|
import { Model } from 'mongoose';
|
|
4
|
-
import { AbilityPredicate, PredicateBehavior, RouteType } from '../interfaces';
|
|
4
|
+
import { AbilityPredicate, AuthAbilityPredicate, PredicateBehavior, RouteType } from '../interfaces';
|
|
5
5
|
import { BaseEntity } from '../models';
|
|
6
6
|
import { BaseService } from '../services';
|
|
7
7
|
declare abstract class BasePoliciesGuard<Entity extends BaseEntity> extends BaseService<Entity> implements CanActivate {
|
|
@@ -9,6 +9,7 @@ declare abstract class BasePoliciesGuard<Entity extends BaseEntity> extends Base
|
|
|
9
9
|
protected routeType: RouteType;
|
|
10
10
|
protected entity: Type<Entity>;
|
|
11
11
|
protected abilityPredicate: AbilityPredicate<Entity> | undefined;
|
|
12
|
+
protected authAbilityPredicate: AuthAbilityPredicate<unknown> | undefined;
|
|
12
13
|
protected predicateBehavior: PredicateBehavior | undefined;
|
|
13
14
|
protected queryToPipeline?: (query: unknown) => PipelineStage[];
|
|
14
15
|
protected targetParam: string | undefined;
|
|
@@ -19,6 +20,7 @@ declare abstract class BaseSocketPoliciesGuard<Entity extends BaseEntity> extend
|
|
|
19
20
|
protected readonly model: Model<Entity>;
|
|
20
21
|
protected routeType: RouteType;
|
|
21
22
|
protected abilityPredicate: AbilityPredicate<Entity> | undefined;
|
|
23
|
+
protected authAbilityPredicate: AuthAbilityPredicate<unknown> | undefined;
|
|
22
24
|
protected predicateBehavior: PredicateBehavior | undefined;
|
|
23
25
|
protected entity: Type<Entity>;
|
|
24
26
|
protected queryToPipeline?: (query: unknown) => PipelineStage[];
|
|
@@ -11,7 +11,13 @@ class BasePoliciesGuard extends services_1.BaseService {
|
|
|
11
11
|
this.model = model;
|
|
12
12
|
}
|
|
13
13
|
async canActivate(context) {
|
|
14
|
-
const { user, query, params } = context.switchToHttp().getRequest();
|
|
14
|
+
const { user, query, params, body } = context.switchToHttp().getRequest();
|
|
15
|
+
if (this.authAbilityPredicate) {
|
|
16
|
+
if (!user || !this.authAbilityPredicate(user, body)) {
|
|
17
|
+
throw new common_1.ForbiddenException('Access Denied');
|
|
18
|
+
}
|
|
19
|
+
this.user = user;
|
|
20
|
+
}
|
|
15
21
|
if (this.abilityPredicate && this.predicateBehavior !== 'filter') {
|
|
16
22
|
if (!user) {
|
|
17
23
|
throw new common_1.ForbiddenException('Access Denied');
|
|
@@ -58,6 +64,10 @@ class BaseSocketPoliciesGuard extends services_1.BaseService {
|
|
|
58
64
|
this.logger.warn('No user data in socket');
|
|
59
65
|
throw new websockets_1.WsException('Access Denied');
|
|
60
66
|
}
|
|
67
|
+
if (this.authAbilityPredicate && !this.authAbilityPredicate(socket.user, data)) {
|
|
68
|
+
this.logger.warn('authAbilityPredicate denied access');
|
|
69
|
+
throw new websockets_1.WsException('Access Denied');
|
|
70
|
+
}
|
|
61
71
|
if (this.abilityPredicate && this.predicateBehavior !== 'filter') {
|
|
62
72
|
try {
|
|
63
73
|
this.user = socket.user;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-policies.guard.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/guards/base-policies.guard.ts"],"names":[],"mappings":";;;AAAA,2CAAyF;AACzF,mDAAiD;AAIjD,sCAAoD;AAEpD,0CAA0C;AAG1C,MAAe,iBAA6C,SAAQ,sBAAmB;
|
|
1
|
+
{"version":3,"file":"base-policies.guard.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/guards/base-policies.guard.ts"],"names":[],"mappings":";;;AAAA,2CAAyF;AACzF,mDAAiD;AAIjD,sCAAoD;AAEpD,0CAA0C;AAG1C,MAAe,iBAA6C,SAAQ,sBAAmB;IAkBrF,YAAyC,KAAoB;QAC3D,KAAK,CAAC,KAAK,CAAC,CAAC;QAD0B,UAAK,GAAL,KAAK,CAAe;IAE7D,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QAE1E,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,2BAAkB,CAAC,eAAe,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YACjE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,2BAAkB,CAAC,eAAe,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YAEjB,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;YAEpD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,CAAC,mCAAmC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAClE,CAAC;iBAAM,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW,IAAI,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC3E,MAAM,IAAI,CAAC,sCAAsC,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YACjF,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA4EQ,8CAAiB;AAzE1B,MAAe,uBAAmD,SAAQ,sBAAmB;IAY3F,YAAyC,KAAoB;QAC3D,KAAK,CAAC,KAAK,CAAC,CAAC;QAD0B,UAAK,GAAL,KAAK,CAAe;IAE7D,CAAC;IAED,IAAY,MAAM;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,IAAI,gCAAuB,CAAC,uBAAuB,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3G,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAyB;QAEzC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE;YAC/B,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,IAAI;YACJ,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB;SAC1C,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBAC3C,MAAM,IAAI,wBAAW,CAAC,eAAe,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC/E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;gBACvD,MAAM,IAAI,wBAAW,CAAC,eAAe,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;gBACjE,IAAI,CAAC;oBACH,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;oBAExB,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;oBAE1B,IAAI,EAAE,EAAE,CAAC;wBACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,wBAAwB,CAAC,CAAC;wBAC/E,MAAM,IAAI,CAAC,mCAAmC,CAAC,EAAE,CAAC,CAAC;oBACrD,CAAC;yBAAM,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;wBAC1E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;wBAClE,MAAM,IAAI,CAAC,sCAAsC,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;oBAChF,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;wBACnE,MAAM,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;oBACjD,MAAM,IAAI,wBAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAE2B,0DAAuB"}
|
package/src/helpers/index.d.ts
CHANGED
|
@@ -7,6 +7,9 @@ export * from './mint-token-pair.helper';
|
|
|
7
7
|
export * from './mixin-data.helper';
|
|
8
8
|
export * from './mongo-transaction.helper';
|
|
9
9
|
export * from './mongoose-cast-error.helper';
|
|
10
|
+
export * from './paging-params.helper';
|
|
11
|
+
export * from './paging-presenter-warning.helper';
|
|
12
|
+
export * from './pipeline-paging.helper';
|
|
10
13
|
export * from './predicate-identifier.helper';
|
|
11
14
|
export * from './repository.helper';
|
|
12
15
|
export * from './resolve-broadcast.helper';
|
package/src/helpers/index.js
CHANGED
|
@@ -23,6 +23,9 @@ __exportStar(require("./mint-token-pair.helper"), exports);
|
|
|
23
23
|
__exportStar(require("./mixin-data.helper"), exports);
|
|
24
24
|
__exportStar(require("./mongo-transaction.helper"), exports);
|
|
25
25
|
__exportStar(require("./mongoose-cast-error.helper"), exports);
|
|
26
|
+
__exportStar(require("./paging-params.helper"), exports);
|
|
27
|
+
__exportStar(require("./paging-presenter-warning.helper"), exports);
|
|
28
|
+
__exportStar(require("./pipeline-paging.helper"), exports);
|
|
26
29
|
__exportStar(require("./predicate-identifier.helper"), exports);
|
|
27
30
|
__exportStar(require("./repository.helper"), exports);
|
|
28
31
|
__exportStar(require("./resolve-broadcast.helper"), exports);
|
package/src/helpers/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yEAAuD;AACvD,kDAAgC;AAChC,qDAAmC;AACnC,sDAAoC;AACpC,kDAAgC;AAChC,2DAAyC;AACzC,sDAAoC;AACpC,6DAA2C;AAC3C,+DAA6C;AAC7C,gEAA8C;AAC9C,sDAAoC;AACpC,6DAA2C;AAC3C,yDAAuC;AACvC,4DAA0C;AAC1C,6DAA2C;AAC3C,kDAAgC;AAChC,yDAAuC;AACvC,qEAAmD;AACnD,0DAAwC;AACxC,6DAA2C;AAC3C,6DAA2C;AAC3C,oDAAkC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yEAAuD;AACvD,kDAAgC;AAChC,qDAAmC;AACnC,sDAAoC;AACpC,kDAAgC;AAChC,2DAAyC;AACzC,sDAAoC;AACpC,6DAA2C;AAC3C,+DAA6C;AAC7C,yDAAuC;AACvC,oEAAkD;AAClD,2DAAyC;AACzC,gEAA8C;AAC9C,sDAAoC;AACpC,6DAA2C;AAC3C,yDAAuC;AACvC,4DAA0C;AAC1C,6DAA2C;AAC3C,kDAAgC;AAChC,yDAAuC;AACvC,qEAAmD;AACnD,0DAAwC;AACxC,6DAA2C;AAC3C,6DAA2C;AAC3C,oDAAkC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface ParsePagingParamsOptions {
|
|
2
|
+
defaultPageSize?: number;
|
|
3
|
+
maxPageSize?: number;
|
|
4
|
+
}
|
|
5
|
+
interface ParsedPagingParams {
|
|
6
|
+
page: number;
|
|
7
|
+
pageSize: number;
|
|
8
|
+
}
|
|
9
|
+
declare function parsePagingParams(query: {
|
|
10
|
+
page?: number;
|
|
11
|
+
pageSize?: number;
|
|
12
|
+
}, options?: ParsePagingParamsOptions): ParsedPagingParams;
|
|
13
|
+
export { parsePagingParams, ParsePagingParamsOptions, ParsedPagingParams };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parsePagingParams = parsePagingParams;
|
|
4
|
+
function parsePagingParams(query, options = {}) {
|
|
5
|
+
const { defaultPageSize = 20, maxPageSize = 100 } = options;
|
|
6
|
+
const page = clamp(query.page, 1, 1, Number.POSITIVE_INFINITY);
|
|
7
|
+
const pageSize = clamp(query.pageSize, defaultPageSize, 1, maxPageSize);
|
|
8
|
+
return { page, pageSize };
|
|
9
|
+
}
|
|
10
|
+
function clamp(value, fallback, min, max) {
|
|
11
|
+
const truncated = Number.isFinite(value) ? Math.trunc(value) : fallback;
|
|
12
|
+
return Math.min(max, Math.max(min, truncated));
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=paging-params.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paging-params.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/paging-params.helper.ts"],"names":[],"mappings":";;AAiDS,8CAAiB;AAlB1B,SAAS,iBAAiB,CACxB,KAA2C,EAC3C,UAAoC,EAAE;IAEtC,MAAM,EAAE,eAAe,GAAG,EAAE,EAAE,WAAW,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC;IAE5D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;IAExE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAGD,SAAS,KAAK,CAAC,KAAyB,EAAE,QAAgB,EAAE,GAAW,EAAE,GAAW;IAClF,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClF,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;AACjD,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.warnIfPagingResultDropped = warnIfPagingResultDropped;
|
|
4
|
+
const logger_1 = require("../logger");
|
|
5
|
+
const pipeline_paging_helper_1 = require("./pipeline-paging.helper");
|
|
6
|
+
const logger = new logger_1.MongoDBDynamicApiLogger('AggregateRoute');
|
|
7
|
+
function warnIfPagingResultDropped(pipeline, hasFromAggregate, entityName) {
|
|
8
|
+
if (hasFromAggregate || !(0, pipeline_paging_helper_1.isPagingPipeline)(pipeline)) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
logger.warn(`[Aggregate] "${entityName}": pipeline uses .Paging(), but the route's presenter has no `
|
|
12
|
+
+ 'static fromAggregate(list, count, totalPage) method — count/totalPage are computed then '
|
|
13
|
+
+ 'silently dropped from the response; only the raw list array is returned. Add fromAggregate '
|
|
14
|
+
+ 'to the presenter (dTOs.presenter) to receive { list, count, totalPage } instead.');
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=paging-presenter-warning.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paging-presenter-warning.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/paging-presenter-warning.helper.ts"],"names":[],"mappings":";;AAqCS,8DAAyB;AApClC,sCAAoD;AACpD,qEAA4D;AAE5D,MAAM,MAAM,GAAG,IAAI,gCAAuB,CAAC,gBAAgB,CAAC,CAAC;AAgB7D,SAAS,yBAAyB,CAChC,QAAyB,EACzB,gBAAyB,EACzB,UAAkB;IAElB,IAAI,gBAAgB,IAAI,CAAC,IAAA,yCAAgB,EAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,OAAO;IACT,CAAC;IAED,MAAM,CAAC,IAAI,CACT,gBAAgB,UAAU,+DAA+D;UACvF,0FAA0F;UAC1F,6FAA6F;UAC7F,kFAAkF,CACrF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isPagingPipeline = isPagingPipeline;
|
|
4
|
+
function isPagingPipeline(pipeline) {
|
|
5
|
+
const firstStageFacet = pipeline[0]?.$facet;
|
|
6
|
+
if (!firstStageFacet) {
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
const hasValidDocs = Array.isArray(firstStageFacet.docs) && firstStageFacet.docs.length > 0;
|
|
10
|
+
const hasValidCount = Array.isArray(firstStageFacet.count) && firstStageFacet.count.length > 0;
|
|
11
|
+
return hasValidDocs && hasValidCount;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=pipeline-paging.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline-paging.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/pipeline-paging.helper.ts"],"names":[],"mappings":";;AAoCS,4CAAgB;AAbzB,SAAS,gBAAgB,CAAC,QAAyB;IACjD,MAAM,eAAe,GAAI,QAAQ,CAAC,CAAC,CAAsB,EAAE,MAAM,CAAC;IAElE,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5F,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAE/F,OAAO,YAAY,IAAI,aAAa,CAAC;AACvC,CAAC"}
|
|
@@ -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,6 +13,7 @@ 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> {
|
|
@@ -24,6 +26,7 @@ interface CustomRouteConfig<Entity extends BaseEntity, Body = unknown, Query = u
|
|
|
24
26
|
description?: string;
|
|
25
27
|
guards?: Type<CanActivate>[];
|
|
26
28
|
abilityPredicate?: AbilityPredicate<Entity>;
|
|
29
|
+
authAbilityPredicate?: AuthAbilityPredicate<unknown, Body>;
|
|
27
30
|
predicateBehavior?: PredicateBehavior;
|
|
28
31
|
targetParam?: Extract<keyof Params, string>;
|
|
29
32
|
validationPipeOptions?: ValidationPipeOptions;
|
|
@@ -6,6 +6,7 @@ interface RoutePoliciesGuardMixinOptions {
|
|
|
6
6
|
queryToPipeline?: (query: unknown) => PipelineStage[];
|
|
7
7
|
predicateBehavior?: PredicateBehavior;
|
|
8
8
|
targetParam?: string;
|
|
9
|
+
authAbilityPredicate?: AuthAbilityPredicate<unknown>;
|
|
9
10
|
}
|
|
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>;
|
|
11
12
|
interface SocketPoliciesGuardMixinOptions {
|
|
@@ -13,6 +14,7 @@ interface SocketPoliciesGuardMixinOptions {
|
|
|
13
14
|
isPublic?: boolean;
|
|
14
15
|
queryToPipeline?: (query: unknown) => PipelineStage[];
|
|
15
16
|
predicateBehavior?: PredicateBehavior;
|
|
17
|
+
authAbilityPredicate?: AuthAbilityPredicate<unknown>;
|
|
16
18
|
}
|
|
17
19
|
declare function SocketPoliciesGuardMixin<Entity extends BaseEntity>(entity: Type<Entity>, routeType: RouteType, event: string, version: string | undefined, options?: SocketPoliciesGuardMixinOptions): PoliciesGuardConstructor<Entity>;
|
|
18
20
|
export { RoutePoliciesGuardMixin, SocketPoliciesGuardMixin };
|
|
@@ -21,7 +21,7 @@ const dynamic_api_module_1 = require("../dynamic-api.module");
|
|
|
21
21
|
const guards_1 = require("../guards");
|
|
22
22
|
const helpers_1 = require("../helpers");
|
|
23
23
|
function RoutePoliciesGuardMixin(entity, routeType, displayedName, version, abilityPredicate, options = {}) {
|
|
24
|
-
const { queryToPipeline, predicateBehavior, targetParam } = options;
|
|
24
|
+
const { queryToPipeline, predicateBehavior, targetParam, authAbilityPredicate } = options;
|
|
25
25
|
let RoutePoliciesGuard = class RoutePoliciesGuard extends guards_1.BasePoliciesGuard {
|
|
26
26
|
constructor(model) {
|
|
27
27
|
super(model);
|
|
@@ -29,6 +29,7 @@ function RoutePoliciesGuardMixin(entity, routeType, displayedName, version, abil
|
|
|
29
29
|
this.routeType = routeType;
|
|
30
30
|
this.entity = entity;
|
|
31
31
|
this.abilityPredicate = abilityPredicate;
|
|
32
|
+
this.authAbilityPredicate = authAbilityPredicate;
|
|
32
33
|
this.predicateBehavior = predicateBehavior;
|
|
33
34
|
this.queryToPipeline = queryToPipeline;
|
|
34
35
|
this.targetParam = targetParam;
|
|
@@ -46,7 +47,7 @@ function RoutePoliciesGuardMixin(entity, routeType, displayedName, version, abil
|
|
|
46
47
|
return RoutePoliciesGuard;
|
|
47
48
|
}
|
|
48
49
|
function SocketPoliciesGuardMixin(entity, routeType, event, version, options = {}) {
|
|
49
|
-
const { abilityPredicate, isPublic, queryToPipeline, predicateBehavior } = options;
|
|
50
|
+
const { abilityPredicate, isPublic, queryToPipeline, predicateBehavior, authAbilityPredicate } = options;
|
|
50
51
|
let SocketPoliciesGuard = class SocketPoliciesGuard extends guards_1.BaseSocketPoliciesGuard {
|
|
51
52
|
constructor(model) {
|
|
52
53
|
super(model);
|
|
@@ -54,6 +55,7 @@ function SocketPoliciesGuardMixin(entity, routeType, event, version, options = {
|
|
|
54
55
|
this.routeType = routeType;
|
|
55
56
|
this.entity = entity;
|
|
56
57
|
this.abilityPredicate = abilityPredicate;
|
|
58
|
+
this.authAbilityPredicate = authAbilityPredicate;
|
|
57
59
|
this.predicateBehavior = predicateBehavior;
|
|
58
60
|
this.queryToPipeline = queryToPipeline;
|
|
59
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":";;;AAAA,2CAAsG;AAEtG,6CAAoD;AAGpD,4CAA0D;AAE1D,gDAA+D;AAC/D,oEAA+D;AAmB/D,MAAsB,eAA2C,SAAQ,sBAAmB;IAqC1F,YACqB,KAAoB,EACpB,UAAsB,EACtB,aAA4B,EAC5B,QAAyB;QAE5C,KAAK,CAAC,KAAK,CAAC,CAAC;QALM,UAAK,GAAL,KAAK,CAAe;QACpB,eAAU,GAAV,UAAU,CAAY;QACtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QAvCpC,eAAU,GAAG,OAAuB,CAAC;QACrC,kBAAa,GAAG,UAA0B,CAAC;QAC3C,4BAAuB,GAAqB,EAAE,CAAC;QAY/C,yBAAoB,GAAG,KAAK,CAAC;QAO7B,WAAM,GAAG,IAAI,CAAC;QAQd,kBAAa,GAAG,CAAC,CAAC;QAIX,WAAM,GAAG,IAAI,gCAAuB,CAAC,aAAa,CAAC,CAAC;IASrE,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,KAAa,EAAE,IAAY;QACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAGlC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;QAG1F,MAAM,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAEhH,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC9C,CAAC;IAES,KAAK,CAAC,KAAK,CAAC,IAAY,EAAE,UAAU,GAAG,KAAK;QACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE3B,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;YAClF,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC9C,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,aAAa,GAAG;YACpB,KAAqB;YACrB,IAAoB;YACpB,IAAI,CAAC,UAAU;YACf,GAAG,IAAI,CAAC,uBAAuB;SAChC,CAAC;QAEF,MAAM,OAAO,GAAW,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC;QAEzE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACpD,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC5D,MAAM,GAAG,GAAW,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtG,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACtE,MAAM,MAAM,GAAuB,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;YACvE,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CACxB,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,EAAE,EAE5B,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAC/D,CAAC,IAAI,EAAE,CAAC;QACX,CAAC;QAED,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;IACvC,CAAC;IAES,KAAK,CAAC,QAAQ,CAAC,YAA6B;QACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QACnC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAEvC,IAAI,CAAC;YAEH,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YAE/F,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAChC,YAAY;oBACV,MAAM,IAAI,CAAC,sBAAsB,CAAC,YAAsB,EAAE,EAAE,cAAc,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YACxG,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;YAEnG,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;gBAClF,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9D,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;YAElF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAES,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,EAAU;QACvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAEzB,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAE3E,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,aAAa,GAAG;YACpB,KAAqB;YACrB,IAAI,CAAC,UAAU;YACf,GAAG,IAAI,CAAC,uBAAuB;SAChC,CAAC;QAEF,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACnD,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,EAAE,EAAE,EAAU,EAAE,MAAuB;QACnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAEjC,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;YACzE,MAAM;gBACJ,MAAM,IAAI,CAAC,2BAA2B,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACnH,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CACxB,EAAE,GAAG,EAAE,EAAE,EAAE,EAEX,EAAE,IAAI,EAAE,MAAM,EAAE,CACjB,CAAC,IAAI,EAAE,CAAC;QAET,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC9C,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;YAChF,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,WAAW,EAAE,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC9E,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,EAAY,CAAC,CAAC;IAC3C,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,KAAa;QACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAE5B,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,4BAA4B,GAAG;YAClC,eAAe,EAAE,KAAK,IAAI,EAAE;gBAE1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC;qBACvF,IAAI,EAAU;qBACd,IAAI,EAAE,CAAC;gBAER,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;gBACT,CAAC;gBAED,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,iBAAiB,EAAE,KAAK,EAAE,MAA2D,EAAE,EAAE;gBACvF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAE5C,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EACjD,MAAM,EACN,EAAE,GAAG,EAAE,IAAI,EAAE,CACd,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;gBAExB,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;gBACT,CAAC;gBAED,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;SACF,CAAC;QAEF,MAAM,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAEjF,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAC7C,EAAE,KAAK,EAAE,EACT,EAAE,SAAS,EAAE,mBAAmB,GAAG,EAAE,EAAE,CACxC,CAAC;QAEF,MAAM,qBAAqB,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAChG,CAAC;IAES,KAAK,CAAC,cAAc,CAAC,kBAA0B,EAAE,WAAmB;QAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC,kBAAkB,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QACjH,IAAI,CAAC,eAAe,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAEtD,IAAI,KAAa,CAAC;QAClB,IAAI,GAAW,CAAC;QAEhB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAC3D,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YACtB,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;YACnB,MAAM,IAAI,4BAAmB,CAAC,uEAAuE,CAAC,CAAC;QACzG,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1C,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACf,MAAM,IAAI,8BAAqB,CAAC,6EAA6E,CAAC,CAAC;QACjH,CAAC;QAED,IAAI,MAAc,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,mCAAmC,CAC5D,SAAS,EAET,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EACjD,IAAI,CAAC,oBAAoB,EAAE,8BAA8B,CAC1D,CAAC;YACF,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACzB,MAAM,IAAI,2BAAkB,CAAC,8CAA8C,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAE1E,IAAI,IAAI,CAAC,oBAAoB,EAAE,4BAA4B,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;YAC7E,MAAM,IAAI,CAAC,oBAAoB,CAAC,4BAA4B,CAC1D,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EACpC,EAAE,kBAAkB,EAAE,WAAW,EAAE,cAAc,EAAE,EACnD,IAAI,CAAC,eAAe,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CACxB,EAAE,GAAG,EAAE,MAAM,EAAE,EAEf,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,CAC7E,CAAC;QAEF,IAAI,IAAI,CAAC,oBAAoB,EAAE,sBAAsB,EAAE,CAAC;YACtD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;YAC7E,MAAM,IAAI,CAAC,oBAAoB,CAAC,sBAAsB,CACpD,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EACpC,IAAI,CAAC,eAAe,CACrB,CAAC;QACJ,CAAC;IACH,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,QAAiB;QAC1D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE3B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAuB,CAAC;QAC7E,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEtD,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/B,MAAM,IAAI,8BAAqB,CAAC,uBAAuB,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAEjG,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAE1B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7E,CAAC;IAMO,kBAAkB,CAAC,QAAiB;QAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,CAAuB,CAAC;IAC9C,CAAC;IAOO,KAAK,CAAC,uBAAuB,CACnC,WAAmB,EACnB,MAA0B,EAC1B,MAA8B;QAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAChE,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kEAAkE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAClG,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,IAAI,8BAAqB,CAAC,uBAAuB,CAAC,CAAC;IAC3D,CAAC;IAMO,KAAK,CAAC,gBAAgB,CAC5B,MAA8B,EAC9B,SAAiB,EACjB,WAAmB,EACnB,IAAY,EACZ,MAA0B;QAG1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjE,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAIhD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAEjD,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAyB,EAE3E,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,EAAE,EACrD,EAAE,GAAG,EAAE,KAAK,EAAE,CACf,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;QAExB,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAOO,KAAK,CAAC,aAAa,CACzB,MAA8B,EAC9B,WAAmB;QAInB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0EAA0E,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1G,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAuB,CAAC;QAE7E,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0DAA0D,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC1F,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,8BAAqB,CAAC,uBAAuB,CAAC,CAAC;IAC3D,CAAC;IAGS,KAAK,CAAC,MAAM,CAAC,IAAY;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE3B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,sDAAsD;gBACtD,gDAAgD;gBAChD,+DAA+D;gBAC/D,oEAAoE,CACrE,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CACxB,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,EAAE,EAE5B,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE,CAC7C,CAAC,IAAI,EAAE,CAAC;IACX,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAkB;QAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,MAAM,EAAE,oBAAoB,GAAG,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAE/F,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAA,uBAAS,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAChF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,oBAAoB,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAE1E,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAClC,EAAE,UAAU,EAAE,EACd,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,EACrC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAC5B,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAkB,EAAE,IAAY;QAClD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAEvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAElE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YAC9C,MAAM,IAAI,8BAAqB,CAAC,mEAAmE,CAAC,CAAC;QACvG,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QACtF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,8BAAqB,CAAC,mBAAmB,CAAC,CAAC;QACvD,CAAC;QAGD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAU,CAAC,IAAI,EAAE,CAAC;QAE/F,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,8BAAqB,CAAC,iBAAiB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAErD,MAAM,UAAU,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;QAExD,IAAI,IAAI,CAAC,mBAAmB,EAAE,QAAQ,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAEO,iBAAiB,CAAC,OAAe;QACvC,MAAM,aAAa,GAAG,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAqB,kBAAkB,CAAC,CAAC;QACzF,MAAM,qBAAqB,GAAG,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAA8B,0BAA0B,CAAC,CAAC;QAGlH,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CACzB,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,IAAA,wBAAU,GAAE,EAAE,EACjC;YACE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAEnD,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE,CACF,CAAC;IACJ,CAAC;IAMO,KAAK,CAAC,cAAc,CAAC,IAAY;QACvC,MAAM,aAAa,GAAG;YACpB,KAAqB;YACrB,IAAoB;YACpB,IAAI,CAAC,UAAU;YACf,GAAG,IAAI,CAAC,uBAAuB;SAChC,CAAC;QACF,MAAM,OAAO,GAAW,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;IACvC,CAAC;IAMO,uBAAuB,CAAC,SAAiB;QAC/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC9C,IACE,MAAM,KAAK,IAAI;gBACf,OAAO,MAAM,KAAK,QAAQ;gBAC1B,aAAa,IAAI,MAAM;gBACvB,OAAQ,MAA6B,CAAC,WAAW,KAAK,QAAQ,EAC9D,CAAC;gBACD,OAAO,MAA4B,CAAC;YACtC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;QAED,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;IACpC,CAAC;IAOO,KAAK,CAAC,gBAAgB,CAC5B,WAAmB,EACnB,MAA0B;QAE1B,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACzE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QACnG,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC;IACrC,CAAC;IAOO,KAAK,CAAC,kBAAkB,CAC9B,aAAiC,EACjC,OAAsD;QAEtD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAChE,MAAM,MAAM,GACV,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAE,UAAU,CAAC,KAAK,CAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAE9D,MAAM,SAAS,GAAuB,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;QAE/D,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YAC3B,SAAS,CAAC,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC;YACnD,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACjC,SAAS,CAAC,YAAY,GAAG,OAAO,CAAC;QACnC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,eAAe,CAAC,IAAY,EAAE,aAA+B;QACnE,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,CAC5C,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CACd,IAAI,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CACnE,EACD,EAAY,CACb,CAAC,CAAC;IACL,CAAC;IAEO,mBAAmB,CAAC,YAA6B;QACvD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,4BAAmB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;CACF;AArnBD,0CAqnBC"}
|
|
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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"}
|
|
@@ -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
|
}
|