@ptc-org/nestjs-query-core 5.0.0-alpha.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/assemblers/abstract.assembler.d.ts +7 -11
- package/src/assemblers/abstract.assembler.js +3 -19
- package/src/assemblers/abstract.assembler.js.map +1 -1
- package/src/assemblers/assembler.d.ts +7 -27
- package/src/assemblers/assembler.js.map +1 -1
- package/src/services/assembler-query.service.js +34 -34
- package/src/services/assembler-query.service.js.map +1 -1
package/package.json
CHANGED
|
@@ -16,18 +16,14 @@ export declare abstract class AbstractAssembler<DTO, Entity, C = DeepPartial<DTO
|
|
|
16
16
|
* @param EntityClass - Optional class definition for the entity. If not provided it will be looked up from the \@Assembler annotation.
|
|
17
17
|
*/
|
|
18
18
|
constructor(DTOClass?: Class<DTO>, EntityClass?: Class<Entity>);
|
|
19
|
-
abstract convertToDTO(entity: Entity): DTO;
|
|
20
|
-
abstract convertToEntity(dto: DTO): Entity;
|
|
19
|
+
abstract convertToDTO(entity: Entity): Promise<DTO> | DTO;
|
|
20
|
+
abstract convertToEntity(dto: DTO): Promise<Entity> | Entity;
|
|
21
21
|
abstract convertQuery(query: Query<DTO>): Query<Entity>;
|
|
22
22
|
abstract convertAggregateQuery(aggregate: AggregateQuery<DTO>): AggregateQuery<Entity>;
|
|
23
23
|
abstract convertAggregateResponse(aggregate: AggregateResponse<Entity>): AggregateResponse<DTO>;
|
|
24
|
-
abstract convertToCreateEntity(create: C): CE;
|
|
25
|
-
abstract convertToUpdateEntity(update: U): UE;
|
|
26
|
-
convertToDTOs(entities: Entity[]): DTO[]
|
|
27
|
-
convertToEntities(dtos: DTO[]): Entity[]
|
|
28
|
-
convertToCreateEntities(createDtos: C[]): CE[]
|
|
29
|
-
convertAsyncToDTO(entity: Promise<Entity>): Promise<DTO>;
|
|
30
|
-
convertAsyncToDTOs(entities: Promise<Entity[]>): Promise<DTO[]>;
|
|
31
|
-
convertAsyncToEntity(dto: Promise<DTO>): Promise<Entity>;
|
|
32
|
-
convertAsyncToEntities(dtos: Promise<DTO[]>): Promise<Entity[]>;
|
|
24
|
+
abstract convertToCreateEntity(create: C): Promise<CE> | CE;
|
|
25
|
+
abstract convertToUpdateEntity(update: U): Promise<UE> | UE;
|
|
26
|
+
convertToDTOs(entities: Entity[]): Promise<DTO[]>;
|
|
27
|
+
convertToEntities(dtos: DTO[]): Promise<Entity[]>;
|
|
28
|
+
convertToCreateEntities(createDtos: C[]): Promise<CE[]>;
|
|
33
29
|
}
|
|
@@ -26,29 +26,13 @@ class AbstractAssembler {
|
|
|
26
26
|
this.EntityClass = EntityClas;
|
|
27
27
|
}
|
|
28
28
|
convertToDTOs(entities) {
|
|
29
|
-
return entities.map((e) => this.convertToDTO(e));
|
|
29
|
+
return Promise.all(entities.map((e) => this.convertToDTO(e)));
|
|
30
30
|
}
|
|
31
31
|
convertToEntities(dtos) {
|
|
32
|
-
return dtos.map((dto) => this.convertToEntity(dto));
|
|
32
|
+
return Promise.all(dtos.map((dto) => this.convertToEntity(dto)));
|
|
33
33
|
}
|
|
34
34
|
convertToCreateEntities(createDtos) {
|
|
35
|
-
return createDtos.map((c) => this.convertToCreateEntity(c));
|
|
36
|
-
}
|
|
37
|
-
async convertAsyncToDTO(entity) {
|
|
38
|
-
const e = await entity;
|
|
39
|
-
return this.convertToDTO(e);
|
|
40
|
-
}
|
|
41
|
-
async convertAsyncToDTOs(entities) {
|
|
42
|
-
const es = await entities;
|
|
43
|
-
return this.convertToDTOs(es);
|
|
44
|
-
}
|
|
45
|
-
async convertAsyncToEntity(dto) {
|
|
46
|
-
const d = await dto;
|
|
47
|
-
return this.convertToEntity(d);
|
|
48
|
-
}
|
|
49
|
-
async convertAsyncToEntities(dtos) {
|
|
50
|
-
const ds = await dtos;
|
|
51
|
-
return this.convertToEntities(ds);
|
|
35
|
+
return Promise.all(createDtos.map((c) => this.convertToCreateEntity(c)));
|
|
52
36
|
}
|
|
53
37
|
}
|
|
54
38
|
exports.AbstractAssembler = AbstractAssembler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.assembler.js","sourceRoot":"","sources":["../../../../../packages/core/src/assemblers/abstract.assembler.ts"],"names":[],"mappings":";;;AAEA,2CAA4D;AAE5D;;;;;;GAMG;AACH,MAAsB,iBAAiB;IAOrC;;;OAGG;IACH,YAAY,QAAqB,EAAE,WAA2B;QAC5D,MAAM,OAAO,GAAG,IAAA,+BAAmB,EAAC,IAAI,CAAC,WAA0D,CAAC,CAAA;QACpG,MAAM,OAAO,GAAG,QAAQ,IAAI,OAAO,EAAE,QAAQ,CAAA;QAC7C,MAAM,UAAU,GAAG,WAAW,IAAI,OAAO,EAAE,WAAW,CAAA;QACtD,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,+FAA+F;YAC/F,MAAM,IAAI,KAAK,CACb,+CAA+C,IAAI,CAAC,WAAW,CAAC,IAAI,mDAAmD,CACxH,CAAA;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;QACvB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAA;IAC/B,CAAC;
|
|
1
|
+
{"version":3,"file":"abstract.assembler.js","sourceRoot":"","sources":["../../../../../packages/core/src/assemblers/abstract.assembler.ts"],"names":[],"mappings":";;;AAEA,2CAA4D;AAE5D;;;;;;GAMG;AACH,MAAsB,iBAAiB;IAOrC;;;OAGG;IACH,YAAY,QAAqB,EAAE,WAA2B;QAC5D,MAAM,OAAO,GAAG,IAAA,+BAAmB,EAAC,IAAI,CAAC,WAA0D,CAAC,CAAA;QACpG,MAAM,OAAO,GAAG,QAAQ,IAAI,OAAO,EAAE,QAAQ,CAAA;QAC7C,MAAM,UAAU,GAAG,WAAW,IAAI,OAAO,EAAE,WAAW,CAAA;QACtD,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,+FAA+F;YAC/F,MAAM,IAAI,KAAK,CACb,+CAA+C,IAAI,CAAC,WAAW,CAAC,IAAI,mDAAmD,CACxH,CAAA;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;QACvB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAA;IAC/B,CAAC;IAgBM,aAAa,CAAC,QAAkB;QACrC,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,CAAC;IAEM,iBAAiB,CAAC,IAAW;QAClC,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAClE,CAAC;IAEM,uBAAuB,CAAC,UAAe;QAC5C,OAAO,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1E,CAAC;CACF;AAlDD,8CAkDC"}
|
|
@@ -5,12 +5,12 @@ export interface Assembler<DTO, Entity, CreateDTO = DeepPartial<DTO>, CreateEnti
|
|
|
5
5
|
* Convert an entity to a DTO
|
|
6
6
|
* @param entity - the entity to convert
|
|
7
7
|
*/
|
|
8
|
-
convertToDTO(entity: Entity): DTO;
|
|
8
|
+
convertToDTO(entity: Entity): Promise<DTO> | DTO;
|
|
9
9
|
/**
|
|
10
10
|
* Convert a DTO to an entity.
|
|
11
11
|
* @param dto - The dto to convert.
|
|
12
12
|
*/
|
|
13
|
-
convertToEntity(dto: DTO): Entity;
|
|
13
|
+
convertToEntity(dto: DTO): Promise<Entity> | Entity;
|
|
14
14
|
/**
|
|
15
15
|
* Convert a DTO query to an entity query.
|
|
16
16
|
* @param query - the query to convert.
|
|
@@ -30,47 +30,27 @@ export interface Assembler<DTO, Entity, CreateDTO = DeepPartial<DTO>, CreateEnti
|
|
|
30
30
|
* Convert a create dto input to the equivalent create entity type
|
|
31
31
|
* @param createDTO
|
|
32
32
|
*/
|
|
33
|
-
convertToCreateEntity(createDTO: CreateDTO): CreateEntity;
|
|
33
|
+
convertToCreateEntity(createDTO: CreateDTO): Promise<CreateEntity> | CreateEntity;
|
|
34
34
|
/**
|
|
35
35
|
* Convert a update dto input to the equivalent update entity type
|
|
36
36
|
* @param createDTO
|
|
37
37
|
*/
|
|
38
|
-
convertToUpdateEntity(createDTO: UpdateDTO): UpdateEntity;
|
|
38
|
+
convertToUpdateEntity(createDTO: UpdateDTO): Promise<UpdateEntity> | UpdateEntity;
|
|
39
39
|
/**
|
|
40
40
|
* Convert an array of entities to a an of DTOs
|
|
41
41
|
* @param entities - the entities to convert.
|
|
42
42
|
*/
|
|
43
|
-
convertToDTOs(entities: Entity[]): DTO[]
|
|
43
|
+
convertToDTOs(entities: Entity[]): Promise<DTO[]>;
|
|
44
44
|
/**
|
|
45
45
|
* Convert an array of DTOs to an array of entities.
|
|
46
46
|
* @param dtos - the dtos to convert.
|
|
47
47
|
*/
|
|
48
|
-
convertToEntities(dtos: DTO[]): Entity[]
|
|
49
|
-
/**
|
|
50
|
-
* Convert an entity to a DTO.
|
|
51
|
-
* @param entity - the promise that should resolve with the entity.
|
|
52
|
-
*/
|
|
53
|
-
convertAsyncToDTO(entity: Promise<Entity>): Promise<DTO>;
|
|
54
|
-
/**
|
|
55
|
-
* Convert an array of entities to an array of DTOs.
|
|
56
|
-
* @param entities - the promise that should resolve with the entity array.
|
|
57
|
-
*/
|
|
58
|
-
convertAsyncToDTOs(entities: Promise<Entity[]>): Promise<DTO[]>;
|
|
59
|
-
/**
|
|
60
|
-
* Convert a DTO to an entity.
|
|
61
|
-
* @param dto - the promise that should resolve with the DTO.
|
|
62
|
-
*/
|
|
63
|
-
convertAsyncToEntity(dto: Promise<DTO>): Promise<Entity>;
|
|
64
|
-
/**
|
|
65
|
-
* Convert an array of DTOs to an array of entities.
|
|
66
|
-
* @param dtos - the promise that should resolve with the dtos.
|
|
67
|
-
*/
|
|
68
|
-
convertAsyncToEntities(dtos: Promise<DTO[]>): Promise<Entity[]>;
|
|
48
|
+
convertToEntities(dtos: DTO[]): Promise<Entity[]>;
|
|
69
49
|
/**
|
|
70
50
|
* Convert an array of create DTOs to an array of create entities
|
|
71
51
|
* @param createDtos
|
|
72
52
|
*/
|
|
73
|
-
convertToCreateEntities(createDtos: CreateDTO[]): CreateEntity[]
|
|
53
|
+
convertToCreateEntities(createDtos: CreateDTO[]): Promise<CreateEntity[]>;
|
|
74
54
|
}
|
|
75
55
|
export interface AssemblerClasses<DTO, Entity> {
|
|
76
56
|
DTOClass: Class<DTO>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assembler.js","sourceRoot":"","sources":["../../../../../packages/core/src/assemblers/assembler.ts"],"names":[],"mappings":";;;AAAA,sCAAuF;AAEvF,2CAAkE;
|
|
1
|
+
{"version":3,"file":"assembler.js","sourceRoot":"","sources":["../../../../../packages/core/src/assemblers/assembler.ts"],"names":[],"mappings":";;;AAAA,sCAAuF;AAEvF,2CAAkE;AAuElE,MAAM,kBAAkB,GAAG,IAAI,uBAAc,CAAC,iCAAqB,CAAC,CAAA;AACpE,MAAM,SAAS,GAAG,IAAI,qBAAY,CAAiB,yBAAa,CAAC,CAAA;AAOjE;;;;GAIG;AACH,0EAA0E;AAC1E,SAAgB,SAAS,CAOvB,QAAoB,EAAE,WAA0B;IAChD,OAAO,CAA0D,GAAQ,EAAc,EAAE;QACvF,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,oCAAoC,QAAQ,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1F,CAAC;QACD,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAA;QACtD,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,CAAA;QACzC,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;AACH,CAAC;AAhBD,8BAgBC;AAED,SAAgB,aAAa,CAC3B,QAAoB;IAEpB,OAAO,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;AAChC,CAAC;AAJD,sCAIC;AAED,SAAgB,mBAAmB,CACjC,cAA2D;IAE3D,OAAO,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;AAC/C,CAAC;AAJD,kDAIC"}
|
|
@@ -6,24 +6,24 @@ class AssemblerQueryService {
|
|
|
6
6
|
this.assembler = assembler;
|
|
7
7
|
this.queryService = queryService;
|
|
8
8
|
}
|
|
9
|
-
addRelations(relationName, id, relationIds, opts) {
|
|
10
|
-
return this.assembler.
|
|
9
|
+
async addRelations(relationName, id, relationIds, opts) {
|
|
10
|
+
return this.assembler.convertToDTO(await this.queryService.addRelations(relationName, id, relationIds, this.convertModifyRelationsOptions(opts)));
|
|
11
11
|
}
|
|
12
|
-
createMany(items) {
|
|
12
|
+
async createMany(items) {
|
|
13
13
|
const { assembler } = this;
|
|
14
|
-
const converted = assembler.convertToCreateEntities(items);
|
|
15
|
-
return this.assembler.
|
|
14
|
+
const converted = await assembler.convertToCreateEntities(items);
|
|
15
|
+
return this.assembler.convertToDTOs(await this.queryService.createMany(converted));
|
|
16
16
|
}
|
|
17
|
-
createOne(item) {
|
|
18
|
-
const c = this.assembler.convertToCreateEntity(item);
|
|
19
|
-
return this.assembler.
|
|
17
|
+
async createOne(item) {
|
|
18
|
+
const c = await this.assembler.convertToCreateEntity(item);
|
|
19
|
+
return this.assembler.convertToDTO(await this.queryService.createOne(c));
|
|
20
20
|
}
|
|
21
21
|
async deleteMany(filter) {
|
|
22
22
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
23
23
|
return this.queryService.deleteMany(this.assembler.convertQuery({ filter }).filter);
|
|
24
24
|
}
|
|
25
|
-
deleteOne(id, opts) {
|
|
26
|
-
return this.assembler.
|
|
25
|
+
async deleteOne(id, opts) {
|
|
26
|
+
return this.assembler.convertToDTO(await this.queryService.deleteOne(id, this.convertFilterable(opts)));
|
|
27
27
|
}
|
|
28
28
|
async findById(id, opts) {
|
|
29
29
|
const entity = await this.queryService.findById(id, this.convertFilterable(opts));
|
|
@@ -32,11 +32,11 @@ class AssemblerQueryService {
|
|
|
32
32
|
}
|
|
33
33
|
return this.assembler.convertToDTO(entity);
|
|
34
34
|
}
|
|
35
|
-
getById(id, opts) {
|
|
36
|
-
return this.assembler.
|
|
35
|
+
async getById(id, opts) {
|
|
36
|
+
return this.assembler.convertToDTO(await this.queryService.getById(id, this.convertFilterable(opts)));
|
|
37
37
|
}
|
|
38
|
-
query(query, opts) {
|
|
39
|
-
return this.assembler.
|
|
38
|
+
async query(query, opts) {
|
|
39
|
+
return this.assembler.convertToDTOs(await this.queryService.query(this.assembler.convertQuery(query), opts));
|
|
40
40
|
}
|
|
41
41
|
async aggregate(filter, aggregate, opts) {
|
|
42
42
|
const aggregateResponse = await this.queryService.aggregate(this.assembler.convertQuery({ filter }).filter || {}, this.assembler.convertAggregateQuery(aggregate), opts);
|
|
@@ -47,7 +47,7 @@ class AssemblerQueryService {
|
|
|
47
47
|
}
|
|
48
48
|
async queryRelations(RelationClass, relationName, dto, query) {
|
|
49
49
|
if (Array.isArray(dto)) {
|
|
50
|
-
const entities = this.assembler.convertToEntities(dto);
|
|
50
|
+
const entities = await this.assembler.convertToEntities(dto);
|
|
51
51
|
const relationMap = await this.queryService.queryRelations(RelationClass, relationName, entities, query);
|
|
52
52
|
return entities.reduce((map, e, index) => {
|
|
53
53
|
const entry = relationMap.get(e) ?? [];
|
|
@@ -55,11 +55,11 @@ class AssemblerQueryService {
|
|
|
55
55
|
return map;
|
|
56
56
|
}, new Map());
|
|
57
57
|
}
|
|
58
|
-
return this.queryService.queryRelations(RelationClass, relationName, this.assembler.convertToEntity(dto), query);
|
|
58
|
+
return this.queryService.queryRelations(RelationClass, relationName, await this.assembler.convertToEntity(dto), query);
|
|
59
59
|
}
|
|
60
60
|
async countRelations(RelationClass, relationName, dto, filter) {
|
|
61
61
|
if (Array.isArray(dto)) {
|
|
62
|
-
const entities = this.assembler.convertToEntities(dto);
|
|
62
|
+
const entities = await this.assembler.convertToEntities(dto);
|
|
63
63
|
const relationMap = await this.queryService.countRelations(RelationClass, relationName, entities, filter);
|
|
64
64
|
return entities.reduce((map, e, index) => {
|
|
65
65
|
const entry = relationMap.get(e) ?? 0;
|
|
@@ -67,42 +67,42 @@ class AssemblerQueryService {
|
|
|
67
67
|
return map;
|
|
68
68
|
}, new Map());
|
|
69
69
|
}
|
|
70
|
-
return this.queryService.countRelations(RelationClass, relationName, this.assembler.convertToEntity(dto), filter);
|
|
70
|
+
return this.queryService.countRelations(RelationClass, relationName, await this.assembler.convertToEntity(dto), filter);
|
|
71
71
|
}
|
|
72
72
|
async findRelation(RelationClass, relationName, dto, opts) {
|
|
73
73
|
if (Array.isArray(dto)) {
|
|
74
|
-
const entities = this.assembler.convertToEntities(dto);
|
|
74
|
+
const entities = await this.assembler.convertToEntities(dto);
|
|
75
75
|
const relationMap = await this.queryService.findRelation(RelationClass, relationName, entities, opts);
|
|
76
76
|
return entities.reduce((map, e, index) => {
|
|
77
77
|
map.set(dto[index], relationMap.get(e));
|
|
78
78
|
return map;
|
|
79
79
|
}, new Map());
|
|
80
80
|
}
|
|
81
|
-
return this.queryService.findRelation(RelationClass, relationName, this.assembler.convertToEntity(dto));
|
|
81
|
+
return this.queryService.findRelation(RelationClass, relationName, await this.assembler.convertToEntity(dto));
|
|
82
82
|
}
|
|
83
|
-
removeRelation(relationName, id, relationId, opts) {
|
|
84
|
-
return this.assembler.
|
|
83
|
+
async removeRelation(relationName, id, relationId, opts) {
|
|
84
|
+
return this.assembler.convertToDTO(await this.queryService.removeRelation(relationName, id, relationId, this.convertModifyRelationsOptions(opts)));
|
|
85
85
|
}
|
|
86
|
-
removeRelations(relationName, id, relationIds, opts) {
|
|
87
|
-
return this.assembler.
|
|
86
|
+
async removeRelations(relationName, id, relationIds, opts) {
|
|
87
|
+
return this.assembler.convertToDTO(await this.queryService.removeRelations(relationName, id, relationIds, this.convertModifyRelationsOptions(opts)));
|
|
88
88
|
}
|
|
89
|
-
setRelations(relationName, id, relationIds, opts) {
|
|
90
|
-
return this.assembler.
|
|
89
|
+
async setRelations(relationName, id, relationIds, opts) {
|
|
90
|
+
return this.assembler.convertToDTO(await this.queryService.setRelations(relationName, id, relationIds, this.convertModifyRelationsOptions(opts)));
|
|
91
91
|
}
|
|
92
|
-
setRelation(relationName, id, relationId, opts) {
|
|
93
|
-
return this.assembler.
|
|
92
|
+
async setRelation(relationName, id, relationId, opts) {
|
|
93
|
+
return this.assembler.convertToDTO(await this.queryService.setRelation(relationName, id, relationId, this.convertModifyRelationsOptions(opts)));
|
|
94
94
|
}
|
|
95
|
-
updateMany(update, filter) {
|
|
96
|
-
return this.queryService.updateMany(this.assembler.convertToUpdateEntity(update),
|
|
95
|
+
async updateMany(update, filter) {
|
|
96
|
+
return this.queryService.updateMany(await this.assembler.convertToUpdateEntity(update),
|
|
97
97
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
98
98
|
this.assembler.convertQuery({ filter }).filter);
|
|
99
99
|
}
|
|
100
|
-
updateOne(id, update, opts) {
|
|
101
|
-
return this.assembler.
|
|
100
|
+
async updateOne(id, update, opts) {
|
|
101
|
+
return this.assembler.convertToDTO(await this.queryService.updateOne(id, await this.assembler.convertToUpdateEntity(update), this.convertFilterable(opts)));
|
|
102
102
|
}
|
|
103
103
|
async aggregateRelations(RelationClass, relationName, dto, filter, aggregate) {
|
|
104
104
|
if (Array.isArray(dto)) {
|
|
105
|
-
const entities = this.assembler.convertToEntities(dto);
|
|
105
|
+
const entities = await this.assembler.convertToEntities(dto);
|
|
106
106
|
const relationMap = await this.queryService.aggregateRelations(RelationClass, relationName, entities, filter, aggregate);
|
|
107
107
|
return entities.reduce((map, e, index) => {
|
|
108
108
|
const entry = relationMap.get(e) ?? [];
|
|
@@ -110,7 +110,7 @@ class AssemblerQueryService {
|
|
|
110
110
|
return map;
|
|
111
111
|
}, new Map());
|
|
112
112
|
}
|
|
113
|
-
return this.queryService.aggregateRelations(RelationClass, relationName, this.assembler.convertToEntity(dto), filter, aggregate);
|
|
113
|
+
return this.queryService.aggregateRelations(RelationClass, relationName, await this.assembler.convertToEntity(dto), filter, aggregate);
|
|
114
114
|
}
|
|
115
115
|
convertFilterable(filterable) {
|
|
116
116
|
if (!filterable) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assembler-query.service.js","sourceRoot":"","sources":["../../../../../packages/core/src/services/assembler-query.service.ts"],"names":[],"mappings":";;;AAsBA,MAAa,qBAAqB;IAGhC,YACW,SAA+C,EAC/C,YAA0C;QAD1C,cAAS,GAAT,SAAS,CAAsC;QAC/C,iBAAY,GAAZ,YAAY,CAA8B;IAClD,CAAC;IAEG,YAAY,
|
|
1
|
+
{"version":3,"file":"assembler-query.service.js","sourceRoot":"","sources":["../../../../../packages/core/src/services/assembler-query.service.ts"],"names":[],"mappings":"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"}
|