@punks/backend-entity-manager 0.0.96 → 0.0.98
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 +109 -10
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/__test__/entity/foo.d.ts +1 -1
- package/dist/cjs/types/__test__/providers/typeorm/converter/foo.d.ts +9 -0
- package/dist/cjs/types/__test__/providers/typeorm/entity/foo.d.ts +1 -83
- package/dist/cjs/types/__test__/providers/typeorm/init/foo.d.ts +6 -0
- package/dist/cjs/types/__test__/providers/typeorm/manager/foo.d.ts +4 -0
- package/dist/cjs/types/__test__/providers/typeorm/models/foo.d.ts +56 -0
- package/dist/cjs/types/__test__/providers/typeorm/queries/foo.d.ts +12 -0
- package/dist/cjs/types/__test__/providers/typeorm/repository/foo.d.ts +6 -0
- package/dist/cjs/types/__test__/providers/typeorm/serializer/foo.d.ts +6 -0
- package/dist/cjs/types/integrations/repository/typeorm/clause.d.ts +32 -0
- package/dist/cjs/types/integrations/repository/typeorm/facets.d.ts +7 -0
- package/dist/cjs/types/integrations/repository/typeorm/queryBuilder.d.ts +6 -1
- package/dist/cjs/types/integrations/repository/typeorm/queryClauseBuilder.d.ts +8 -0
- package/dist/cjs/types/integrations/repository/typeorm/repository.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appRoles/appRole.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appTenants/appTenant.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appUsers/appUser.query.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.models.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.query.d.ts +1 -1
- package/dist/esm/index.js +110 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/__test__/entity/foo.d.ts +1 -1
- package/dist/esm/types/__test__/providers/typeorm/converter/foo.d.ts +9 -0
- package/dist/esm/types/__test__/providers/typeorm/entity/foo.d.ts +1 -83
- package/dist/esm/types/__test__/providers/typeorm/init/foo.d.ts +6 -0
- package/dist/esm/types/__test__/providers/typeorm/manager/foo.d.ts +4 -0
- package/dist/esm/types/__test__/providers/typeorm/models/foo.d.ts +56 -0
- package/dist/esm/types/__test__/providers/typeorm/queries/foo.d.ts +12 -0
- package/dist/esm/types/__test__/providers/typeorm/repository/foo.d.ts +6 -0
- package/dist/esm/types/__test__/providers/typeorm/serializer/foo.d.ts +6 -0
- package/dist/esm/types/integrations/repository/typeorm/clause.d.ts +32 -0
- package/dist/esm/types/integrations/repository/typeorm/facets.d.ts +7 -0
- package/dist/esm/types/integrations/repository/typeorm/queryBuilder.d.ts +6 -1
- package/dist/esm/types/integrations/repository/typeorm/queryClauseBuilder.d.ts +8 -0
- package/dist/esm/types/integrations/repository/typeorm/repository.d.ts +1 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appRoles/appRole.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appTenants/appTenant.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appUsers/appUser.query.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.models.d.ts +2 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.query.d.ts +1 -1
- package/dist/index.d.ts +50 -2
- package/package.json +1 -1
|
@@ -6,9 +6,9 @@ import { IEntitiesSearchResults } from "../../models";
|
|
|
6
6
|
import { EntityServiceLocator } from "../../providers/services";
|
|
7
7
|
import { InMemoryRepository } from "../../testing/mocks/repository";
|
|
8
8
|
import { EntitySerializerSheetDefinition, IAuthenticationContext, IEntityManager } from "../../abstractions";
|
|
9
|
-
import { FooDeleteParameters } from "../providers/typeorm/entity/foo";
|
|
10
9
|
import { IEntitiesDeleteResult } from "../../abstractions/repository";
|
|
11
10
|
import { EntitySerializer } from "../../base";
|
|
11
|
+
import { FooDeleteParameters } from "../providers/typeorm/models/foo";
|
|
12
12
|
export interface FooEntity {
|
|
13
13
|
id: string;
|
|
14
14
|
name: string;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IEntityConverter } from "../../../../abstractions";
|
|
2
|
+
import { FooEntity } from "../entity/foo";
|
|
3
|
+
import { FooCreateInput, FooDto, FooListItemDto, FooUpdateInput } from "../models/foo";
|
|
4
|
+
export declare class FooConverter implements IEntityConverter<FooEntity, FooDto, FooListItemDto, FooCreateInput, FooUpdateInput> {
|
|
5
|
+
toListItemDto(entity: FooEntity): FooListItemDto;
|
|
6
|
+
toEntityDto(entity: FooEntity): FooDto;
|
|
7
|
+
createDtoToEntity(input: FooCreateInput): Partial<FooEntity>;
|
|
8
|
+
updateDtoToEntity(input: FooUpdateInput): Partial<FooEntity>;
|
|
9
|
+
}
|
|
@@ -1,89 +1,7 @@
|
|
|
1
|
-
import { DataSource, Repository, FindOptionsWhere } from "typeorm";
|
|
2
|
-
import { EntitySerializerSheetDefinition, IAuthenticationContext, IEntityConverter, IEntityManager, IEntityManagerServiceRoot, IEntitySearchParameters, ISearchSorting, ISearchSortingField, SortDirection } from "../../../../abstractions";
|
|
3
|
-
import { TypeOrmRepository } from "../../../../integrations/repository/typeorm";
|
|
4
|
-
import { EntityServiceLocator } from "../../../../providers/services";
|
|
5
|
-
import { TypeOrmQueryBuilder } from "../../../../integrations/repository/typeorm";
|
|
6
|
-
import { IEntitiesDeleteParameters } from "../../../../abstractions/commands";
|
|
7
|
-
import { EntitySerializer } from "../../../../base";
|
|
8
1
|
export declare class FooEntity {
|
|
9
2
|
id: string;
|
|
10
3
|
name: string;
|
|
11
4
|
age: number;
|
|
5
|
+
enabled: boolean;
|
|
12
6
|
updatedOn: Date;
|
|
13
7
|
}
|
|
14
|
-
export type FooEntityManager = IEntityManager<FooEntity, string, Partial<FooEntity>, Partial<FooEntity>, FooDeleteParameters, FooSearchParameters, FooSorting, FooCursor, FooFacets>;
|
|
15
|
-
export declare class FooTypeOrmRepo extends TypeOrmRepository<FooEntity, string> {
|
|
16
|
-
constructor(repository: Repository<FooEntity>);
|
|
17
|
-
}
|
|
18
|
-
export interface FooSearchFilters {
|
|
19
|
-
minAge?: number;
|
|
20
|
-
maxAge?: number;
|
|
21
|
-
}
|
|
22
|
-
export declare enum FooSorting {
|
|
23
|
-
Name = "Name",
|
|
24
|
-
Age = "Age"
|
|
25
|
-
}
|
|
26
|
-
export type FooCursor = number;
|
|
27
|
-
export interface FooSearchParameters extends IEntitySearchParameters<FooSorting, FooCursor> {
|
|
28
|
-
filters?: FooSearchFilters;
|
|
29
|
-
}
|
|
30
|
-
export interface FooSearchSortingField extends ISearchSortingField<FooSorting> {
|
|
31
|
-
field: FooSorting;
|
|
32
|
-
direction: SortDirection;
|
|
33
|
-
}
|
|
34
|
-
export interface FooQuerySorting extends ISearchSorting<FooSorting> {
|
|
35
|
-
fields: FooSearchSortingField[];
|
|
36
|
-
}
|
|
37
|
-
export interface FooDeleteParameters extends IEntitiesDeleteParameters<FooSorting> {
|
|
38
|
-
filters?: FooSearchFilters;
|
|
39
|
-
sorting?: FooQuerySorting;
|
|
40
|
-
}
|
|
41
|
-
export interface FooFacets {
|
|
42
|
-
}
|
|
43
|
-
export declare class FooQueryBuilder extends TypeOrmQueryBuilder<FooEntity, FooSearchParameters, FooSorting, FooFacets, unknown> {
|
|
44
|
-
constructor(services: EntityServiceLocator<FooEntity, string>);
|
|
45
|
-
protected buildContextFilter(context?: IAuthenticationContext<unknown> | undefined): FindOptionsWhere<FooEntity> | FindOptionsWhere<FooEntity>[];
|
|
46
|
-
protected buildWhereClause(request: FooSearchParameters): FindOptionsWhere<FooEntity> | FindOptionsWhere<FooEntity>[];
|
|
47
|
-
private buildAgeWhereClause;
|
|
48
|
-
protected calculateFacets(request: FooSearchParameters): Promise<FooFacets | undefined>;
|
|
49
|
-
}
|
|
50
|
-
export interface FooDto {
|
|
51
|
-
id: string;
|
|
52
|
-
profile: {
|
|
53
|
-
name: string;
|
|
54
|
-
age: number;
|
|
55
|
-
};
|
|
56
|
-
updatedOn: Date;
|
|
57
|
-
}
|
|
58
|
-
export interface FooListItemDto {
|
|
59
|
-
id: string;
|
|
60
|
-
profile: {
|
|
61
|
-
name: string;
|
|
62
|
-
age: number;
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
export interface FooCreateInput {
|
|
66
|
-
profile: {
|
|
67
|
-
name: string;
|
|
68
|
-
age: number;
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
export interface FooUpdateInput {
|
|
72
|
-
id: string;
|
|
73
|
-
profile: {
|
|
74
|
-
name: string;
|
|
75
|
-
age: number;
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
export declare class FooConverter implements IEntityConverter<FooEntity, FooDto, FooListItemDto, FooCreateInput, FooUpdateInput> {
|
|
79
|
-
toListItemDto(entity: FooEntity): FooListItemDto;
|
|
80
|
-
toEntityDto(entity: FooEntity): FooDto;
|
|
81
|
-
createDtoToEntity(input: FooCreateInput): Partial<FooEntity>;
|
|
82
|
-
updateDtoToEntity(input: FooUpdateInput): Partial<FooEntity>;
|
|
83
|
-
}
|
|
84
|
-
export declare class FooSerializer extends EntitySerializer<FooEntity, string> {
|
|
85
|
-
protected getDefinition(): EntitySerializerSheetDefinition<FooEntity>;
|
|
86
|
-
}
|
|
87
|
-
export declare const registerFooTypeOrmEntity: (container: IEntityManagerServiceRoot, dataSource: DataSource, options?: {
|
|
88
|
-
useConverter?: boolean;
|
|
89
|
-
}) => import("../../../../abstractions").IEntityManagerServiceCollection<FooEntity, string>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DataSource } from "typeorm";
|
|
2
|
+
import { IEntityManagerServiceRoot } from "../../../../abstractions";
|
|
3
|
+
import { FooEntity } from "../entity/foo";
|
|
4
|
+
export declare const registerFooTypeOrmEntity: (container: IEntityManagerServiceRoot, dataSource: DataSource, options?: {
|
|
5
|
+
useConverter?: boolean;
|
|
6
|
+
}) => import("../../../../abstractions").IEntityManagerServiceCollection<FooEntity, string>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { IEntityManager } from "../../../../abstractions/manager";
|
|
2
|
+
import { FooEntity } from "../entity/foo";
|
|
3
|
+
import { FooCursor, FooDeleteParameters, FooFacets, FooSearchParameters, FooSorting } from "../models/foo";
|
|
4
|
+
export type FooEntityManager = IEntityManager<FooEntity, string, Partial<FooEntity>, Partial<FooEntity>, FooDeleteParameters, FooSearchParameters, FooSorting, FooCursor, FooFacets>;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { IEntitiesDeleteParameters, IEntitySearchParameters, ISearchSorting, ISearchSortingField, SortDirection } from "../../../../abstractions";
|
|
2
|
+
import { BooleanFilter, NumericFilter, StringFilter } from "../../../../integrations/repository/typeorm/clause";
|
|
3
|
+
export interface FooSearchFilters {
|
|
4
|
+
age?: NumericFilter;
|
|
5
|
+
name?: StringFilter;
|
|
6
|
+
enabled?: BooleanFilter;
|
|
7
|
+
}
|
|
8
|
+
export declare enum FooSorting {
|
|
9
|
+
Name = "Name",
|
|
10
|
+
Age = "Age"
|
|
11
|
+
}
|
|
12
|
+
export type FooCursor = number;
|
|
13
|
+
export interface FooSearchParameters extends IEntitySearchParameters<FooSorting, FooCursor> {
|
|
14
|
+
filters?: FooSearchFilters;
|
|
15
|
+
}
|
|
16
|
+
export interface FooSearchSortingField extends ISearchSortingField<FooSorting> {
|
|
17
|
+
field: FooSorting;
|
|
18
|
+
direction: SortDirection;
|
|
19
|
+
}
|
|
20
|
+
export interface FooQuerySorting extends ISearchSorting<FooSorting> {
|
|
21
|
+
fields: FooSearchSortingField[];
|
|
22
|
+
}
|
|
23
|
+
export interface FooDeleteParameters extends IEntitiesDeleteParameters<FooSorting> {
|
|
24
|
+
filters?: FooSearchFilters;
|
|
25
|
+
sorting?: FooQuerySorting;
|
|
26
|
+
}
|
|
27
|
+
export interface FooFacets {
|
|
28
|
+
}
|
|
29
|
+
export interface FooDto {
|
|
30
|
+
id: string;
|
|
31
|
+
profile: {
|
|
32
|
+
name: string;
|
|
33
|
+
age: number;
|
|
34
|
+
};
|
|
35
|
+
updatedOn: Date;
|
|
36
|
+
}
|
|
37
|
+
export interface FooListItemDto {
|
|
38
|
+
id: string;
|
|
39
|
+
profile: {
|
|
40
|
+
name: string;
|
|
41
|
+
age: number;
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export interface FooCreateInput {
|
|
45
|
+
profile: {
|
|
46
|
+
name: string;
|
|
47
|
+
age: number;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export interface FooUpdateInput {
|
|
51
|
+
id: string;
|
|
52
|
+
profile: {
|
|
53
|
+
name: string;
|
|
54
|
+
age: number;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FindOptionsWhere } from "typeorm";
|
|
2
|
+
import { IAuthenticationContext } from "../../../../abstractions";
|
|
3
|
+
import { TypeOrmQueryBuilder } from "../../../../integrations";
|
|
4
|
+
import { EntityServiceLocator } from "../../../../providers/services";
|
|
5
|
+
import { FooEntity } from "../entity/foo";
|
|
6
|
+
import { FooFacets, FooSearchParameters, FooSorting } from "../models/foo";
|
|
7
|
+
export declare class FooQueryBuilder extends TypeOrmQueryBuilder<FooEntity, FooSearchParameters, FooSorting, FooFacets, unknown> {
|
|
8
|
+
constructor(services: EntityServiceLocator<FooEntity, string>);
|
|
9
|
+
protected buildContextFilter(context?: IAuthenticationContext<unknown> | undefined): FindOptionsWhere<FooEntity> | FindOptionsWhere<FooEntity>[];
|
|
10
|
+
protected buildWhereClause(request: FooSearchParameters): FindOptionsWhere<FooEntity> | FindOptionsWhere<FooEntity>[];
|
|
11
|
+
protected calculateFacets(request: FooSearchParameters): Promise<FooFacets>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Repository } from "typeorm";
|
|
2
|
+
import { TypeOrmRepository } from "../../../../integrations";
|
|
3
|
+
import { FooEntity } from "../entity/foo";
|
|
4
|
+
export declare class FooTypeOrmRepo extends TypeOrmRepository<FooEntity, string> {
|
|
5
|
+
constructor(repository: Repository<FooEntity>);
|
|
6
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { EntitySerializerSheetDefinition } from "../../../../abstractions";
|
|
2
|
+
import { EntitySerializer } from "../../../../base";
|
|
3
|
+
import { FooEntity } from "../entity/foo";
|
|
4
|
+
export declare class FooSerializer extends EntitySerializer<FooEntity, string> {
|
|
5
|
+
protected getDefinition(): EntitySerializerSheetDefinition<FooEntity>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export type NumericFilter = {
|
|
2
|
+
in?: number[];
|
|
3
|
+
eq?: number;
|
|
4
|
+
gt?: number;
|
|
5
|
+
gte?: number;
|
|
6
|
+
lt?: number;
|
|
7
|
+
lte?: number;
|
|
8
|
+
};
|
|
9
|
+
export type StringFilter = {
|
|
10
|
+
gt?: string;
|
|
11
|
+
gte?: string;
|
|
12
|
+
lt?: string;
|
|
13
|
+
lte?: string;
|
|
14
|
+
in?: string[];
|
|
15
|
+
eq?: string;
|
|
16
|
+
like?: string;
|
|
17
|
+
ne?: string;
|
|
18
|
+
notIn?: string[];
|
|
19
|
+
notLike?: string;
|
|
20
|
+
};
|
|
21
|
+
export type BooleanFilter = {
|
|
22
|
+
eq?: boolean;
|
|
23
|
+
ne?: boolean;
|
|
24
|
+
};
|
|
25
|
+
export type DateFilter = {
|
|
26
|
+
in?: Date[];
|
|
27
|
+
eq?: Date;
|
|
28
|
+
gt?: Date;
|
|
29
|
+
gte?: Date;
|
|
30
|
+
lt?: Date;
|
|
31
|
+
lte?: Date;
|
|
32
|
+
};
|
|
@@ -5,14 +5,18 @@ import { QueryBuilderBase } from "../../../templates";
|
|
|
5
5
|
import { TypeOrmRepository } from "./repository";
|
|
6
6
|
import { EntityServiceLocator } from "../../../providers/services";
|
|
7
7
|
import { IEntitiesDeleteResult } from "../../../abstractions/repository";
|
|
8
|
+
import { QueryClauseBuilder } from "./queryClauseBuilder";
|
|
9
|
+
import { Facet } from "./facets";
|
|
8
10
|
export declare abstract class TypeOrmQueryBuilder<TEntity extends ObjectLiteral, TEntitySearchParameters extends IEntitySearchParameters<TSorting, number>, TSorting extends SortingType, TFacets extends IEntityFacets, TUserContext> extends QueryBuilderBase<TEntity, TEntitySearchParameters, TSorting, number, TFacets, TUserContext> {
|
|
9
11
|
private readonly services;
|
|
10
12
|
private repository;
|
|
13
|
+
protected clause: QueryClauseBuilder;
|
|
11
14
|
constructor(services: EntityServiceLocator<TEntity, unknown>);
|
|
12
15
|
exists(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<boolean>;
|
|
13
16
|
count(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<number>;
|
|
14
17
|
delete(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<IEntitiesDeleteResult>;
|
|
15
18
|
search(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<IEntitiesSearchResults<TEntitySearchParameters, TEntity, TSorting, number, TFacets>>;
|
|
19
|
+
protected getFieldFacet(): Promise<void>;
|
|
16
20
|
protected findPagedQueryResults(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<TEntity[]>;
|
|
17
21
|
protected getRelationsToLoad(request: TEntitySearchParameters, context: IAuthenticationContext<TUserContext> | undefined): FindOptionsRelations<TEntity> | undefined;
|
|
18
22
|
protected buildPagingParameters(request: TEntitySearchParameters): {
|
|
@@ -22,6 +26,7 @@ export declare abstract class TypeOrmQueryBuilder<TEntity extends ObjectLiteral,
|
|
|
22
26
|
protected countQueryResults(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<number>;
|
|
23
27
|
protected abstract buildWhereClause(request: TEntitySearchParameters): FindOptionsWhere<TEntity>[] | FindOptionsWhere<TEntity>;
|
|
24
28
|
protected abstract buildContextFilter(context?: IAuthenticationContext<TUserContext>): FindOptionsWhere<TEntity>[] | FindOptionsWhere<TEntity>;
|
|
25
|
-
protected abstract calculateFacets(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<TFacets
|
|
29
|
+
protected abstract calculateFacets(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<TFacets>;
|
|
30
|
+
protected calculateFacet<TField extends keyof TEntity, TValue>(field: TField, request: TEntitySearchParameters, context: IAuthenticationContext<TUserContext> | undefined): Promise<Facet<TValue>>;
|
|
26
31
|
protected getRepository(): TypeOrmRepository<TEntity, unknown>;
|
|
27
32
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FindOperator } from "typeorm";
|
|
2
|
+
import { BooleanFilter, DateFilter, NumericFilter, StringFilter } from "./clause";
|
|
3
|
+
export declare class QueryClauseBuilder {
|
|
4
|
+
stringFilter(filter: StringFilter): FindOperator<string>;
|
|
5
|
+
numericFilter(filter: NumericFilter): FindOperator<number>;
|
|
6
|
+
dateFilter(filter: DateFilter): FindOperator<Date>;
|
|
7
|
+
boolFilter(filter: BooleanFilter): FindOperator<boolean>;
|
|
8
|
+
}
|
|
@@ -8,6 +8,7 @@ export declare class TypeOrmRepository<TEntity extends ObjectLiteral, TEntityId>
|
|
|
8
8
|
private readonly logger;
|
|
9
9
|
constructor(innerRepository: Repository<TEntity>);
|
|
10
10
|
getInnerRepository(): Repository<TEntity>;
|
|
11
|
+
distinct<TField extends keyof TEntity, TValue>(field: TField, condition: FindManyOptions<TEntity>): Promise<any[]>;
|
|
11
12
|
exists(id: TEntityId): Promise<boolean>;
|
|
12
13
|
existsBy(condition: FindOneOptions<TEntity>): Promise<boolean>;
|
|
13
14
|
get(id: TEntityId): Promise<TEntity | undefined>;
|
package/dist/esm/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.query.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export declare class AppCompanyQueryBuilder extends NestTypeOrmQueryBuilder<AppC
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppCompanyEntity> | FindOptionsWhere<AppCompanyEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppCompanySearchParameters): FindOptionsWhere<AppCompanyEntity> | FindOptionsWhere<AppCompanyEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppCompanySearchParameters): Promise<AppCompanyFacets
|
|
10
|
+
protected calculateFacets(request: AppCompanySearchParameters): Promise<AppCompanyFacets>;
|
|
11
11
|
}
|
package/dist/esm/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.query.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export declare class AppDivisionQueryBuilder extends NestTypeOrmQueryBuilder<App
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppDivisionEntity> | FindOptionsWhere<AppDivisionEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppDivisionSearchParameters): FindOptionsWhere<AppDivisionEntity> | FindOptionsWhere<AppDivisionEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppDivisionSearchParameters): Promise<AppDivisionFacets
|
|
10
|
+
protected calculateFacets(request: AppDivisionSearchParameters): Promise<AppDivisionFacets>;
|
|
11
11
|
}
|
|
@@ -7,5 +7,5 @@ export declare class AppOrganizationQueryBuilder extends NestTypeOrmQueryBuilder
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppOrganizationEntity> | FindOptionsWhere<AppOrganizationEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppOrganizationSearchParameters): FindOptionsWhere<AppOrganizationEntity> | FindOptionsWhere<AppOrganizationEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppOrganizationSearchParameters): Promise<AppOrganizationFacets
|
|
10
|
+
protected calculateFacets(request: AppOrganizationSearchParameters): Promise<AppOrganizationFacets>;
|
|
11
11
|
}
|
|
@@ -7,6 +7,6 @@ export declare class AppRoleQueryBuilder extends NestTypeOrmQueryBuilder<AppRole
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppRoleEntity> | FindOptionsWhere<AppRoleEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppRoleSearchParameters, context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppRoleEntity> | FindOptionsWhere<AppRoleEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppRoleSearchParameters): Promise<AppRoleFacets
|
|
10
|
+
protected calculateFacets(request: AppRoleSearchParameters): Promise<AppRoleFacets>;
|
|
11
11
|
protected getRelationsToLoad(request: AppRoleSearchParameters, context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsRelations<AppRoleEntity> | undefined;
|
|
12
12
|
}
|
package/dist/esm/types/platforms/nest/__test__/server/entities/appTenants/appTenant.query.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export declare class AppTenantQueryBuilder extends NestTypeOrmQueryBuilder<AppTe
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppTenantEntity> | FindOptionsWhere<AppTenantEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppTenantSearchParameters): FindOptionsWhere<AppTenantEntity> | FindOptionsWhere<AppTenantEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppTenantSearchParameters): Promise<AppTenantFacets
|
|
10
|
+
protected calculateFacets(request: AppTenantSearchParameters): Promise<AppTenantFacets>;
|
|
11
11
|
}
|
|
@@ -7,5 +7,5 @@ export declare class AppUserGroupMemberQueryBuilder extends NestTypeOrmQueryBuil
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppUserGroupMemberEntity> | FindOptionsWhere<AppUserGroupMemberEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppUserGroupMemberSearchParameters): FindOptionsWhere<AppUserGroupMemberEntity> | FindOptionsWhere<AppUserGroupMemberEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppUserGroupMemberSearchParameters): Promise<AppUserGroupMemberFacets
|
|
10
|
+
protected calculateFacets(request: AppUserGroupMemberSearchParameters): Promise<AppUserGroupMemberFacets>;
|
|
11
11
|
}
|
package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.query.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export declare class AppUserGroupQueryBuilder extends NestTypeOrmQueryBuilder<Ap
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppUserGroupEntity> | FindOptionsWhere<AppUserGroupEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppUserGroupSearchParameters): FindOptionsWhere<AppUserGroupEntity> | FindOptionsWhere<AppUserGroupEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppUserGroupSearchParameters): Promise<AppUserGroupFacets
|
|
10
|
+
protected calculateFacets(request: AppUserGroupSearchParameters): Promise<AppUserGroupFacets>;
|
|
11
11
|
}
|
|
@@ -7,5 +7,5 @@ export declare class AppUserProfileQueryBuilder extends NestTypeOrmQueryBuilder<
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppUserProfileEntity> | FindOptionsWhere<AppUserProfileEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppUserProfileSearchParameters): FindOptionsWhere<AppUserProfileEntity> | FindOptionsWhere<AppUserProfileEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppUserProfileSearchParameters): Promise<AppUserProfileFacets
|
|
10
|
+
protected calculateFacets(request: AppUserProfileSearchParameters): Promise<AppUserProfileFacets>;
|
|
11
11
|
}
|
package/dist/esm/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.query.d.ts
CHANGED
|
@@ -7,6 +7,6 @@ export declare class AppUserRoleQueryBuilder extends NestTypeOrmQueryBuilder<App
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppUserRoleEntity> | FindOptionsWhere<AppUserRoleEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppUserRoleSearchParameters): FindOptionsWhere<AppUserRoleEntity> | FindOptionsWhere<AppUserRoleEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppUserRoleSearchParameters): Promise<AppUserRoleFacets
|
|
10
|
+
protected calculateFacets(request: AppUserRoleSearchParameters): Promise<AppUserRoleFacets>;
|
|
11
11
|
protected getRelationsToLoad(request: AppUserRoleSearchParameters, context: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsRelations<AppUserRoleEntity> | undefined;
|
|
12
12
|
}
|
|
@@ -7,5 +7,5 @@ export declare class AppUserQueryBuilder extends NestTypeOrmQueryBuilder<AppUser
|
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<AppUserEntity> | FindOptionsWhere<AppUserEntity>[];
|
|
9
9
|
protected buildWhereClause(request: AppUserSearchParameters): FindOptionsWhere<AppUserEntity> | FindOptionsWhere<AppUserEntity>[];
|
|
10
|
-
protected calculateFacets(request: AppUserSearchParameters): Promise<AppUserFacets
|
|
10
|
+
protected calculateFacets(request: AppUserSearchParameters): Promise<AppUserFacets>;
|
|
11
11
|
}
|
|
@@ -2,6 +2,7 @@ import { IEntitySearchParameters, ISearchSorting, ISearchSortingField, SortDirec
|
|
|
2
2
|
import { IEntitiesSearchResults, IEntitiesSearchResultsPaging } from "../../../../../../models";
|
|
3
3
|
import { FooEntity } from "../../database/core/entities/foo.entity";
|
|
4
4
|
import { IEntitiesDeleteParameters } from "../../../../../../abstractions/commands";
|
|
5
|
+
import { NumberFacets } from "../../../../../../integrations/repository/typeorm/facets";
|
|
5
6
|
export type FooEntityId = string;
|
|
6
7
|
export type FooCreateData = Partial<FooEntity>;
|
|
7
8
|
export type FooUpdateData = Partial<FooEntity>;
|
|
@@ -9,6 +10,7 @@ export interface FooSearchParameters extends IEntitySearchParameters<FooSorting,
|
|
|
9
10
|
filters?: FooSearchFilters;
|
|
10
11
|
}
|
|
11
12
|
export interface FooFacets {
|
|
13
|
+
age: NumberFacets;
|
|
12
14
|
}
|
|
13
15
|
export interface FooSearchFilters {
|
|
14
16
|
minAge?: number;
|
|
@@ -10,5 +10,5 @@ export declare class FooQueryBuilder extends NestTypeOrmQueryBuilder<FooEntity,
|
|
|
10
10
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<FooEntity> | FindOptionsWhere<FooEntity>[];
|
|
11
11
|
protected buildWhereClause(request: FooSearchParameters): FindOptionsWhere<FooEntity> | FindOptionsWhere<FooEntity>[];
|
|
12
12
|
private buildAgeWhereClause;
|
|
13
|
-
protected calculateFacets(request: FooSearchParameters, context?: IAuthenticationContext<AppAuthContext>): Promise<FooFacets
|
|
13
|
+
protected calculateFacets(request: FooSearchParameters, context?: IAuthenticationContext<AppAuthContext>): Promise<FooFacets>;
|
|
14
14
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ import { Reflector, ModulesContainer as ModulesContainer$1 } from '@nestjs/core'
|
|
|
13
13
|
import { JwtService } from '@nestjs/jwt';
|
|
14
14
|
import * as express from 'express';
|
|
15
15
|
import { Response, Request, NextFunction } from 'express';
|
|
16
|
-
import { ObjectLiteral, FindOneOptions, FindManyOptions, Repository, ObjectId, FindOptionsWhere, FindOptionsRelations } from 'typeorm';
|
|
16
|
+
import { ObjectLiteral, FindOneOptions, FindManyOptions, Repository, ObjectId, FindOptionsWhere, FindOperator, FindOptionsRelations } from 'typeorm';
|
|
17
17
|
import { EventEmitter2 } from '@nestjs/event-emitter';
|
|
18
18
|
import * as qs from 'qs';
|
|
19
19
|
import * as express_serve_static_core from 'express-serve-static-core';
|
|
@@ -1852,6 +1852,7 @@ declare class TypeOrmRepository<TEntity extends ObjectLiteral, TEntityId> implem
|
|
|
1852
1852
|
private readonly logger;
|
|
1853
1853
|
constructor(innerRepository: Repository<TEntity>);
|
|
1854
1854
|
getInnerRepository(): Repository<TEntity>;
|
|
1855
|
+
distinct<TField extends keyof TEntity, TValue>(field: TField, condition: FindManyOptions<TEntity>): Promise<any[]>;
|
|
1855
1856
|
exists(id: TEntityId): Promise<boolean>;
|
|
1856
1857
|
existsBy(condition: FindOneOptions<TEntity>): Promise<boolean>;
|
|
1857
1858
|
get(id: TEntityId): Promise<TEntity | undefined>;
|
|
@@ -1868,14 +1869,60 @@ declare class TypeOrmRepository<TEntity extends ObjectLiteral, TEntityId> implem
|
|
|
1868
1869
|
upsert(id: TEntityId, entity: Partial<TEntity>): Promise<TEntity>;
|
|
1869
1870
|
}
|
|
1870
1871
|
|
|
1872
|
+
type NumericFilter = {
|
|
1873
|
+
in?: number[];
|
|
1874
|
+
eq?: number;
|
|
1875
|
+
gt?: number;
|
|
1876
|
+
gte?: number;
|
|
1877
|
+
lt?: number;
|
|
1878
|
+
lte?: number;
|
|
1879
|
+
};
|
|
1880
|
+
type StringFilter = {
|
|
1881
|
+
gt?: string;
|
|
1882
|
+
gte?: string;
|
|
1883
|
+
lt?: string;
|
|
1884
|
+
lte?: string;
|
|
1885
|
+
in?: string[];
|
|
1886
|
+
eq?: string;
|
|
1887
|
+
like?: string;
|
|
1888
|
+
ne?: string;
|
|
1889
|
+
notIn?: string[];
|
|
1890
|
+
notLike?: string;
|
|
1891
|
+
};
|
|
1892
|
+
type BooleanFilter = {
|
|
1893
|
+
eq?: boolean;
|
|
1894
|
+
ne?: boolean;
|
|
1895
|
+
};
|
|
1896
|
+
type DateFilter = {
|
|
1897
|
+
in?: Date[];
|
|
1898
|
+
eq?: Date;
|
|
1899
|
+
gt?: Date;
|
|
1900
|
+
gte?: Date;
|
|
1901
|
+
lt?: Date;
|
|
1902
|
+
lte?: Date;
|
|
1903
|
+
};
|
|
1904
|
+
|
|
1905
|
+
declare class QueryClauseBuilder {
|
|
1906
|
+
stringFilter(filter: StringFilter): FindOperator<string>;
|
|
1907
|
+
numericFilter(filter: NumericFilter): FindOperator<number>;
|
|
1908
|
+
dateFilter(filter: DateFilter): FindOperator<Date>;
|
|
1909
|
+
boolFilter(filter: BooleanFilter): FindOperator<boolean>;
|
|
1910
|
+
}
|
|
1911
|
+
|
|
1912
|
+
type Facet<T> = {
|
|
1913
|
+
values: T[];
|
|
1914
|
+
};
|
|
1915
|
+
|
|
1871
1916
|
declare abstract class TypeOrmQueryBuilder<TEntity extends ObjectLiteral, TEntitySearchParameters extends IEntitySearchParameters<TSorting, number>, TSorting extends SortingType, TFacets extends IEntityFacets, TUserContext> extends QueryBuilderBase<TEntity, TEntitySearchParameters, TSorting, number, TFacets, TUserContext> {
|
|
1872
1917
|
private readonly services;
|
|
1873
1918
|
private repository;
|
|
1919
|
+
protected clause: QueryClauseBuilder;
|
|
1874
1920
|
constructor(services: EntityServiceLocator<TEntity, unknown>);
|
|
1875
1921
|
exists(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<boolean>;
|
|
1876
1922
|
count(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<number>;
|
|
1877
1923
|
delete(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<IEntitiesDeleteResult>;
|
|
1878
1924
|
search(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<IEntitiesSearchResults<TEntitySearchParameters, TEntity, TSorting, number, TFacets>>;
|
|
1925
|
+
protected getFieldFacet(): Promise<void>;
|
|
1879
1926
|
protected findPagedQueryResults(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<TEntity[]>;
|
|
1880
1927
|
protected getRelationsToLoad(request: TEntitySearchParameters, context: IAuthenticationContext<TUserContext> | undefined): FindOptionsRelations<TEntity> | undefined;
|
|
1881
1928
|
protected buildPagingParameters(request: TEntitySearchParameters): {
|
|
@@ -1885,7 +1932,8 @@ declare abstract class TypeOrmQueryBuilder<TEntity extends ObjectLiteral, TEntit
|
|
|
1885
1932
|
protected countQueryResults(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<number>;
|
|
1886
1933
|
protected abstract buildWhereClause(request: TEntitySearchParameters): FindOptionsWhere<TEntity>[] | FindOptionsWhere<TEntity>;
|
|
1887
1934
|
protected abstract buildContextFilter(context?: IAuthenticationContext<TUserContext>): FindOptionsWhere<TEntity>[] | FindOptionsWhere<TEntity>;
|
|
1888
|
-
protected abstract calculateFacets(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<TFacets
|
|
1935
|
+
protected abstract calculateFacets(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<TFacets>;
|
|
1936
|
+
protected calculateFacet<TField extends keyof TEntity, TValue>(field: TField, request: TEntitySearchParameters, context: IAuthenticationContext<TUserContext> | undefined): Promise<Facet<TValue>>;
|
|
1889
1937
|
protected getRepository(): TypeOrmRepository<TEntity, unknown>;
|
|
1890
1938
|
}
|
|
1891
1939
|
|