@punks/backend-entity-manager 0.0.226 → 0.0.228
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 +17 -0
- 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/clause.d.ts +6 -0
- package/dist/cjs/types/integrations/repository/typeorm/queryBuilder.d.ts +1 -0
- package/dist/cjs/types/integrations/repository/typeorm/queryClauseBuilder.d.ts +2 -1
- package/dist/esm/index.js +17 -0
- 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/clause.d.ts +6 -0
- package/dist/esm/types/integrations/repository/typeorm/queryBuilder.d.ts +1 -0
- package/dist/esm/types/integrations/repository/typeorm/queryClauseBuilder.d.ts +2 -1
- package/dist/index.d.ts +10 -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[]>;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { FindOperator } from "typeorm";
|
|
2
|
-
import { BooleanFilter, DateFilter, EnumFilter, NumericFilter, StringFilter } from "./clause";
|
|
2
|
+
import { BooleanFilter, DateFilter, EnumFilter, IdFilter, NumericFilter, StringFilter } from "./clause";
|
|
3
3
|
export declare class QueryClauseBuilder {
|
|
4
4
|
enumFilter<T>(filter: EnumFilter<T>): FindOperator<T>;
|
|
5
|
+
idFilter(filter: IdFilter): FindOperator<string>;
|
|
5
6
|
stringFilter(filter: StringFilter): FindOperator<string>;
|
|
6
7
|
numericFilter(filter: NumericFilter): FindOperator<number>;
|
|
7
8
|
dateFilter(filter: DateFilter): FindOperator<Date>;
|
package/dist/esm/index.js
CHANGED
|
@@ -2866,6 +2866,22 @@ class QueryClauseBuilder {
|
|
|
2866
2866
|
}
|
|
2867
2867
|
return And(...clauses);
|
|
2868
2868
|
}
|
|
2869
|
+
idFilter(filter) {
|
|
2870
|
+
const clauses = [];
|
|
2871
|
+
if (!!filter?.in) {
|
|
2872
|
+
clauses.push(In(filter.in));
|
|
2873
|
+
}
|
|
2874
|
+
if (!!filter?.eq) {
|
|
2875
|
+
clauses.push(Equal(filter.eq));
|
|
2876
|
+
}
|
|
2877
|
+
if (!!filter?.ne) {
|
|
2878
|
+
clauses.push(Not(Equal(filter.ne)));
|
|
2879
|
+
}
|
|
2880
|
+
if (!!filter?.notIn) {
|
|
2881
|
+
clauses.push(Not(In(filter.notIn)));
|
|
2882
|
+
}
|
|
2883
|
+
return And(...clauses);
|
|
2884
|
+
}
|
|
2869
2885
|
stringFilter(filter) {
|
|
2870
2886
|
const clauses = [];
|
|
2871
2887
|
if (!!filter?.gte) {
|
|
@@ -3022,6 +3038,7 @@ class TypeOrmQueryBuilder extends QueryBuilderBase {
|
|
|
3022
3038
|
paging: {
|
|
3023
3039
|
pageSize: 1,
|
|
3024
3040
|
},
|
|
3041
|
+
relations: request.relations,
|
|
3025
3042
|
}, context);
|
|
3026
3043
|
return results[0];
|
|
3027
3044
|
}
|