@punks/backend-entity-manager 0.0.225 → 0.0.227
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +7 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/abstractions/queries.d.ts +2 -0
- package/dist/cjs/types/integrations/repository/typeorm/queryBuilder.d.ts +1 -0
- package/dist/cjs/types/services/events.d.ts +2 -0
- package/dist/esm/index.js +7 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/abstractions/queries.d.ts +2 -0
- package/dist/esm/types/integrations/repository/typeorm/queryBuilder.d.ts +1 -0
- package/dist/esm/types/services/events.d.ts +2 -0
- package/dist/index.d.ts +3 -0
- package/package.json +1 -1
|
@@ -14,6 +14,7 @@ export interface IEntitiesFindQuery<TEntity, TEntitySearchParameters extends IEn
|
|
|
14
14
|
execute(request: {
|
|
15
15
|
filters?: TEntitySearchParameters["filters"];
|
|
16
16
|
sorting?: TEntitySearchParameters["sorting"];
|
|
17
|
+
relations?: TEntitySearchParameters["relations"];
|
|
17
18
|
}): Promise<TEntity>;
|
|
18
19
|
}
|
|
19
20
|
export interface IEntityExistsQuery<TEntity, TEntityFilters extends ISearchFilters> {
|
|
@@ -30,6 +31,7 @@ export interface IEntitiesQueryBuilder<TEntity, TEntityId, TEntitySearchParamete
|
|
|
30
31
|
find(request?: {
|
|
31
32
|
filters?: TEntitySearchParameters["filters"];
|
|
32
33
|
sorting?: TEntitySearchParameters["sorting"];
|
|
34
|
+
relations?: TEntitySearchParameters["relations"];
|
|
33
35
|
}, context?: IAuthenticationContext<TUserContext>): Promise<TEntity>;
|
|
34
36
|
search(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntity, TSorting, TCursor, TFacets>>;
|
|
35
37
|
exists(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext>): Promise<boolean>;
|
|
@@ -26,6 +26,7 @@ export declare abstract class TypeOrmQueryBuilder<TEntity extends ObjectLiteral,
|
|
|
26
26
|
find(request: {
|
|
27
27
|
filters?: TEntitySearchParameters["filters"];
|
|
28
28
|
sorting?: TEntitySearchParameters["sorting"];
|
|
29
|
+
relations?: TEntitySearchParameters["relations"];
|
|
29
30
|
}, context?: IAuthenticationContext<TUserContext>): Promise<TEntity>;
|
|
30
31
|
search(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntity, TSorting, number, TFacets>>;
|
|
31
32
|
protected getFieldDistinctValues<T>(field: keyof TEntity, request: TEntitySearchParameters, context: IAuthenticationContext<TUserContext> | undefined): Promise<T[]>;
|
|
@@ -3,9 +3,11 @@ import { EntityServiceLocator } from "../providers/services";
|
|
|
3
3
|
export declare class EntityEventsManager<TEntity, TEntityId> implements IEntityEventsManager<TEntity, TEntityId> {
|
|
4
4
|
private readonly entityName;
|
|
5
5
|
private readonly services;
|
|
6
|
+
private readonly logger;
|
|
6
7
|
constructor(entityName: string, services: EntityServiceLocator<TEntity, TEntityId>);
|
|
7
8
|
processEntityCreatedEvent(entity: TEntity): Promise<void>;
|
|
8
9
|
processEntityUpdatedEvent(entity: TEntity): Promise<void>;
|
|
9
10
|
processEntityDeletedEvent(id: TEntityId): Promise<void>;
|
|
10
11
|
private emitEntityEvent;
|
|
12
|
+
private buildEventName;
|
|
11
13
|
}
|
package/dist/esm/index.js
CHANGED
|
@@ -2154,6 +2154,7 @@ class EntityEventsManager {
|
|
|
2154
2154
|
constructor(entityName, services) {
|
|
2155
2155
|
this.entityName = entityName;
|
|
2156
2156
|
this.services = services;
|
|
2157
|
+
this.logger = Log.getLogger("EntityEventsManager");
|
|
2157
2158
|
}
|
|
2158
2159
|
async processEntityCreatedEvent(entity) {
|
|
2159
2160
|
this.services.resolveReplicaSyncManager().syncReplicas(entity);
|
|
@@ -2181,7 +2182,11 @@ class EntityEventsManager {
|
|
|
2181
2182
|
if (!eventEmitter) {
|
|
2182
2183
|
return;
|
|
2183
2184
|
}
|
|
2184
|
-
|
|
2185
|
+
this.logger.debug(`Event emitted: ${this.buildEventName(event)}`, payload);
|
|
2186
|
+
await eventEmitter.emit(this.buildEventName(event), payload);
|
|
2187
|
+
}
|
|
2188
|
+
buildEventName(event) {
|
|
2189
|
+
return `${this.entityName}.${event}`;
|
|
2185
2190
|
}
|
|
2186
2191
|
}
|
|
2187
2192
|
|
|
@@ -3017,6 +3022,7 @@ class TypeOrmQueryBuilder extends QueryBuilderBase {
|
|
|
3017
3022
|
paging: {
|
|
3018
3023
|
pageSize: 1,
|
|
3019
3024
|
},
|
|
3025
|
+
relations: request.relations,
|
|
3020
3026
|
}, context);
|
|
3021
3027
|
return results[0];
|
|
3022
3028
|
}
|