@punks/backend-entity-manager 0.0.459 → 0.0.461
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 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/abstractions/actions.d.ts +8 -8
- package/dist/cjs/types/abstractions/manager.d.ts +1 -1
- package/dist/cjs/types/abstractions/queries.d.ts +10 -4
- package/dist/cjs/types/actions/get.d.ts +2 -1
- package/dist/cjs/types/concrete/index.d.ts +2 -2
- package/dist/cjs/types/integrations/repository/typeorm/queryBuilder.d.ts +2 -1
- package/dist/cjs/types/providers/services/entities-locator.d.ts +4 -4
- package/dist/cjs/types/providers/services/entity-locator.d.ts +2 -2
- package/dist/cjs/types/queries/get.d.ts +4 -3
- package/dist/cjs/types/queries/search.d.ts +2 -2
- package/dist/esm/index.js +17 -9
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/abstractions/actions.d.ts +8 -8
- package/dist/esm/types/abstractions/manager.d.ts +1 -1
- package/dist/esm/types/abstractions/queries.d.ts +10 -4
- package/dist/esm/types/actions/get.d.ts +2 -1
- package/dist/esm/types/concrete/index.d.ts +2 -2
- package/dist/esm/types/integrations/repository/typeorm/queryBuilder.d.ts +2 -1
- package/dist/esm/types/providers/services/entities-locator.d.ts +4 -4
- package/dist/esm/types/providers/services/entity-locator.d.ts +2 -2
- package/dist/esm/types/queries/get.d.ts +4 -3
- package/dist/esm/types/queries/search.d.ts +2 -2
- package/dist/index.d.ts +170 -165
- package/package.json +1 -1
|
@@ -5,6 +5,7 @@ import { SortingType } from "./common";
|
|
|
5
5
|
import { EntitiesExportInput, EntitiesExportResult, EntitiesSampleDownloadOptions, EntitiesSampleDownloadResult } from "./export";
|
|
6
6
|
import { EntitiesImportInput, EntitiesImportResult } from "./import";
|
|
7
7
|
import { EntitiesParseInput, EntitiesParseResult } from "./parse";
|
|
8
|
+
import { IEntitiesSearchQueryOptions, IEntityGetQueryOptions } from "./queries";
|
|
8
9
|
import { IEntitySearchParameters, ISearchFilters } from "./searchParameters";
|
|
9
10
|
import { IEntityFacets } from "./searchResults";
|
|
10
11
|
export interface IEntityCreateAction<TEntity, TEntityCreateDto, TEntityDto> {
|
|
@@ -16,13 +17,10 @@ export interface IEntityDeleteAction<TEntity, TEntityId> {
|
|
|
16
17
|
export interface IEntitiesDeleteAction<TEntity, TEntitiesDeleteParameters extends IEntitiesDeleteParameters<TSorting>, TSorting> {
|
|
17
18
|
execute(params: TEntitiesDeleteParameters): Promise<void>;
|
|
18
19
|
}
|
|
19
|
-
export interface
|
|
20
|
-
execute(id: TEntityId): Promise<TEntityDto | undefined>;
|
|
20
|
+
export interface IEntityGetActionOptions<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> extends IEntityGetQueryOptions<TEntity, TEntitySearchParameters> {
|
|
21
21
|
}
|
|
22
|
-
export interface IEntityGetAction<TEntity, TEntityId, TEntityDto
|
|
23
|
-
execute(id: TEntityId, options?:
|
|
24
|
-
relations?: string[];
|
|
25
|
-
}): Promise<TEntityDto | undefined>;
|
|
22
|
+
export interface IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> {
|
|
23
|
+
execute(id: TEntityId, options?: IEntityGetActionOptions<TEntity, TEntitySearchParameters>): Promise<TEntityDto | undefined>;
|
|
26
24
|
}
|
|
27
25
|
export interface IEntityExistsAction<TEntity, TEntityFilters extends ISearchFilters> {
|
|
28
26
|
execute(filters: TEntityFilters): Promise<boolean>;
|
|
@@ -36,8 +34,10 @@ export interface IEntityUpdateAction<TEntity, TEntityId, TEntityUpdateDto, TEnti
|
|
|
36
34
|
export interface IEntityUpsertAction<TEntity, TEntityId, TEntityUpdateDto, TEntityDto> {
|
|
37
35
|
execute(id: TEntityId, input: TEntityUpdateDto): Promise<TEntityDto>;
|
|
38
36
|
}
|
|
37
|
+
export interface IEntitiesSearchActionOptions<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> extends IEntitiesSearchQueryOptions<TEntity, TEntitySearchParameters> {
|
|
38
|
+
}
|
|
39
39
|
export interface IEntitiesSearchAction<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TEntityListItemDto, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets> {
|
|
40
|
-
execute(request: TEntitySearchParameters): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntityListItemDto, TSorting, TCursor, TFacets>>;
|
|
40
|
+
execute(request: TEntitySearchParameters, options?: IEntitiesSearchActionOptions<TEntity, TEntitySearchParameters>): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntityListItemDto, TSorting, TCursor, TFacets>>;
|
|
41
41
|
}
|
|
42
42
|
export interface IEntitiesExportAction<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor> {
|
|
43
43
|
execute<TPayload = unknown>(input: EntitiesExportInput<TEntity, TEntitySearchParameters, TSorting, TCursor, TPayload>): Promise<EntitiesExportResult>;
|
|
@@ -55,7 +55,7 @@ export interface IEntityVersionsSearchAction<TEntity, TEntityVersionDto, TCursor
|
|
|
55
55
|
execute(request: IEntityVersionsSearchRequest<TCursor>): Promise<IEntityVersionsSearchResponse<TEntityVersionDto, TCursor>>;
|
|
56
56
|
}
|
|
57
57
|
export interface IEntityActions<TEntity, TEntityId, TEntityCreateDto, TEntityUpdateDto, TEntityDto, TEntityListItemDto, TEntitiesDeleteParameters extends IEntitiesDeleteParameters<TSorting>, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets> {
|
|
58
|
-
get get(): IEntityGetAction<TEntity, TEntityId, TEntityDto>;
|
|
58
|
+
get get(): IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters>;
|
|
59
59
|
get search(): IEntitiesSearchAction<TEntity, TEntitySearchParameters, TEntityListItemDto, TSorting, TCursor, TFacets>;
|
|
60
60
|
get exists(): IEntityExistsAction<TEntity, NonNullable<TEntitySearchParameters["filters"]>>;
|
|
61
61
|
get count(): IEntitiesCountAction<TEntity, NonNullable<TEntitySearchParameters["filters"]>>;
|
|
@@ -4,7 +4,7 @@ import { IEntitiesCountQuery, IEntitiesFindQuery, IEntitiesSearchQuery, IEntityE
|
|
|
4
4
|
import { IEntitySearchParameters } from "./searchParameters";
|
|
5
5
|
import { IEntityFacets } from "./searchResults";
|
|
6
6
|
export interface IEntityManager<TEntity, TEntityId, TEntityCreateData, TEntityUpdateData, TEntitiesDeleteParameters extends IEntitiesDeleteParameters<TSorting>, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets> {
|
|
7
|
-
get get(): IEntityGetQuery<TEntity, TEntityId>;
|
|
7
|
+
get get(): IEntityGetQuery<TEntity, TEntityId, TEntitySearchParameters>;
|
|
8
8
|
get search(): IEntitiesSearchQuery<TEntity, TEntitySearchParameters, TSorting, TCursor, TFacets>;
|
|
9
9
|
get find(): IEntitiesFindQuery<TEntity, TEntitySearchParameters, TSorting, TCursor>;
|
|
10
10
|
get exists(): IEntityExistsQuery<TEntity, NonNullable<TEntitySearchParameters["filters"]>>;
|
|
@@ -4,11 +4,17 @@ import { SortingType } from "./common";
|
|
|
4
4
|
import { IEntitiesDeleteResult } from "./repository";
|
|
5
5
|
import { IEntitySearchParameters, ISearchFilters } from "./searchParameters";
|
|
6
6
|
import { IEntityFacets } from "./searchResults";
|
|
7
|
+
export interface IEntitiesSearchQueryOptions<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> {
|
|
8
|
+
relations?: TEntitySearchParameters["relations"];
|
|
9
|
+
}
|
|
7
10
|
export interface IEntitiesSearchQuery<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets> {
|
|
8
|
-
execute(request: TEntitySearchParameters): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntity, TSorting, TCursor, TFacets>>;
|
|
11
|
+
execute(request: TEntitySearchParameters, options?: IEntitiesSearchQueryOptions<TEntity, TEntitySearchParameters>): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntity, TSorting, TCursor, TFacets>>;
|
|
12
|
+
}
|
|
13
|
+
export interface IEntityGetQueryOptions<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> {
|
|
14
|
+
relations?: TEntitySearchParameters["relations"];
|
|
9
15
|
}
|
|
10
|
-
export interface IEntityGetQuery<TEntity, TEntityId
|
|
11
|
-
execute(id: TEntityId): Promise<TEntity | undefined>;
|
|
16
|
+
export interface IEntityGetQuery<TEntity, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> {
|
|
17
|
+
execute(id: TEntityId, options?: IEntityGetQueryOptions<TEntity, TEntitySearchParameters>): Promise<TEntity | undefined>;
|
|
12
18
|
}
|
|
13
19
|
export interface IEntitiesFindQuery<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor> {
|
|
14
20
|
execute(request: {
|
|
@@ -27,7 +33,7 @@ export interface IEntityVersionsSearchQuery<TEntity, TCursor> {
|
|
|
27
33
|
execute(params: IEntityVersionsSearchParameters<TCursor>): Promise<IEntityVersionsSearchResults<TEntity, TCursor>>;
|
|
28
34
|
}
|
|
29
35
|
export interface IEntitiesQueryBuilder<TEntity, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets, TUserContext> {
|
|
30
|
-
get(id: TEntityId, context?: IAuthenticationContext<TUserContext>): Promise<TEntity | undefined>;
|
|
36
|
+
get(id: TEntityId, context?: IAuthenticationContext<TUserContext>, options?: IEntityGetQueryOptions<TEntity, TEntitySearchParameters>): Promise<TEntity | undefined>;
|
|
31
37
|
find(request?: {
|
|
32
38
|
filters?: TEntitySearchParameters["filters"];
|
|
33
39
|
sorting?: TEntitySearchParameters["sorting"];
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IEntityGetAction } from "../abstractions/actions";
|
|
2
|
+
import { IEntitySearchParameters } from "../abstractions/searchParameters";
|
|
2
3
|
import { EntityServiceLocator } from "../providers/services";
|
|
3
|
-
export declare class EntityGetAction<TEntity, TEntityId, TEntityDto
|
|
4
|
+
export declare class EntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> implements IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters> {
|
|
4
5
|
private readonly services;
|
|
5
6
|
constructor(services: EntityServiceLocator<TEntity, TEntityId>);
|
|
6
7
|
execute(id: TEntityId): Promise<TEntityDto | undefined>;
|
|
@@ -12,7 +12,7 @@ export declare class EntityManager<TEntity, TEntityId, TEntityCreateData, TEntit
|
|
|
12
12
|
get exists(): IEntityExistsQuery<TEntity, NonNullable<TEntitySearchParameters["filters"]>>;
|
|
13
13
|
get count(): IEntitiesCountQuery<TEntity, NonNullable<TEntitySearchParameters["filters"]>>;
|
|
14
14
|
get deleteItems(): IEntitiesDeleteCommand<TEntity, TEntitiesDeleteParameters, TSorting>;
|
|
15
|
-
get get(): IEntityGetQuery<TEntity, TEntityId>;
|
|
15
|
+
get get(): IEntityGetQuery<TEntity, TEntityId, TEntitySearchParameters>;
|
|
16
16
|
get search(): IEntitiesSearchQuery<TEntity, TEntitySearchParameters, TSorting, TCursor, TFacets>;
|
|
17
17
|
get find(): IEntitiesFindQuery<TEntity, TEntitySearchParameters, TSorting, TCursor>;
|
|
18
18
|
get version(): IEntityVersionCommand<TEntity, TEntityId>;
|
|
@@ -33,7 +33,7 @@ export declare class EntityActions<TEntity, TEntityId, TEntityCreateDto, TEntity
|
|
|
33
33
|
get exists(): IEntityExistsAction<TEntity, NonNullable<TEntitySearchParameters["filters"]>>;
|
|
34
34
|
get count(): IEntitiesCountAction<TEntity, NonNullable<TEntitySearchParameters["filters"]>>;
|
|
35
35
|
get deleteItems(): IEntitiesDeleteAction<TEntity, TEntitiesDeleteParameters, TSorting>;
|
|
36
|
-
get get(): IEntityGetAction<TEntity, TEntityId, TEntityDto>;
|
|
36
|
+
get get(): IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters>;
|
|
37
37
|
get search(): IEntitiesSearchAction<TEntity, TEntitySearchParameters, TEntityListItemDto, TSorting, TCursor, TFacets>;
|
|
38
38
|
get create(): IEntityCreateAction<TEntity, TEntityCreateDto, TEntityDto>;
|
|
39
39
|
get update(): IEntityUpdateAction<TEntity, TEntityId, TEntityUpdateDto, TEntityDto>;
|
|
@@ -10,13 +10,14 @@ import { BooleanFacetsType, FacetType, NumberFacetsType, FacetBuilderInput, Stri
|
|
|
10
10
|
import { QueryBuilderOperation } from "../../../templates/queryBuilder";
|
|
11
11
|
import { ChildrenMap } from "./traverse";
|
|
12
12
|
import { PermissionsChecker } from "./permissionsChecker";
|
|
13
|
+
import { IEntityGetQueryOptions } from "../../../abstractions/queries";
|
|
13
14
|
export declare abstract class TypeOrmQueryBuilder<TEntity extends ObjectLiteral, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, number>, TSorting extends SortingType, TFacets extends IEntityFacets, TUserContext> extends QueryBuilderBase<TEntity, TEntityId, TEntitySearchParameters, TSorting, number, TFacets, TUserContext> {
|
|
14
15
|
private readonly services;
|
|
15
16
|
private repository;
|
|
16
17
|
protected clause: QueryClauseBuilder;
|
|
17
18
|
protected permissions: PermissionsChecker<TUserContext>;
|
|
18
19
|
constructor(services: EntityServiceLocator<TEntity, unknown>);
|
|
19
|
-
get(id: TEntityId, context?: IAuthenticationContext<TUserContext>): Promise<TEntity | undefined>;
|
|
20
|
+
get(id: TEntityId, context?: IAuthenticationContext<TUserContext>, options?: IEntityGetQueryOptions<TEntity, TEntitySearchParameters>): Promise<TEntity | undefined>;
|
|
20
21
|
exists(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<boolean>;
|
|
21
22
|
count(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<number>;
|
|
22
23
|
delete(filters: NonNullable<TEntitySearchParameters["filters"]>, context?: IAuthenticationContext<TUserContext> | undefined): Promise<IEntitiesDeleteResult>;
|
|
@@ -107,8 +107,8 @@ export declare class EntitiesServiceLocator {
|
|
|
107
107
|
resolveSnapshotService<TEntity, TEntityId>(entityName: string): IEntitySnapshotService<TEntityId, unknown> | undefined;
|
|
108
108
|
resolveAuthorizationMiddleware<TEntity, TAuthenticationContext extends IAuthenticationContext<TUserContext>, TUserContext>(entityName: string): IEntityAuthorizationMiddleware<TEntity, TAuthenticationContext, TUserContext> | undefined;
|
|
109
109
|
registerAuthorizationMiddleware<TEntity, TAuthenticationContext extends IAuthenticationContext<TUserContext>, TUserContext>(entityName: string, instance: IEntityAuthorizationMiddleware<TEntity, TAuthenticationContext, TUserContext>): void;
|
|
110
|
-
resolveGetQuery<TEntity, TEntityId
|
|
111
|
-
registerGetQuery<TEntity, TEntityId
|
|
110
|
+
resolveGetQuery<TEntity, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>>(entityName: string): IEntityGetQuery<TEntity, TEntityId, TEntitySearchParameters>;
|
|
111
|
+
registerGetQuery<TEntity, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>>(entityName: string, instance: IEntityGetQuery<TEntity, TEntityId, TEntitySearchParameters>): void;
|
|
112
112
|
resolveSearchQuery<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets>(entityName: string): IEntitiesSearchQuery<TEntity, TEntitySearchParameters, TSorting, TCursor, TFacets>;
|
|
113
113
|
registerSearchQuery<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets>(entityName: string, instance: IEntitiesSearchQuery<TEntity, TEntitySearchParameters, TSorting, TCursor, TFacets>): void;
|
|
114
114
|
resolveFindQuery<TEntity, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor>(entityName: string): IEntitiesFindQuery<TEntity, TEntitySearchParameters, TSorting, TCursor>;
|
|
@@ -141,8 +141,8 @@ export declare class EntitiesServiceLocator {
|
|
|
141
141
|
registerParseCommand<TEntity>(entityName: string, instance: IEntitiesParseCommand<TEntity>): void;
|
|
142
142
|
resolveSampleDownloadCommand<TEntity>(entityName: string): IEntitiesSampleDownloadCommand<TEntity>;
|
|
143
143
|
registerSampleDownloadCommand<TEntity>(entityName: string, instance: IEntitiesSampleDownloadCommand<TEntity>): void;
|
|
144
|
-
resolveGetAction<TEntity, TEntityId, TEntityDto
|
|
145
|
-
registerGetAction<TEntity, TEntityId, TEntityDto
|
|
144
|
+
resolveGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>>(entityName: string): IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters>;
|
|
145
|
+
registerGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>>(entityName: string, instance: IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters>): void;
|
|
146
146
|
resolveExistsAction<TEntity, TEntityFilters extends ISearchFilters>(entityName: string): IEntityExistsAction<TEntity, TEntityFilters>;
|
|
147
147
|
registerExistsAction<TEntity, TEntityFilters extends ISearchFilters>(entityName: string, instance: IEntityExistsAction<TEntity, TEntityFilters>): void;
|
|
148
148
|
resolveCountAction<TEntity, TEntityFilters extends ISearchFilters>(entityName: string): IEntitiesCountAction<TEntity, TEntityFilters>;
|
|
@@ -37,7 +37,7 @@ export declare class EntityServiceLocator<TEntity, TEntityId> {
|
|
|
37
37
|
resolveSnapshotService<TEntity, TEntityId>(): IEntitySnapshotService<TEntityId, unknown> | undefined;
|
|
38
38
|
resolveAdapter<TEntityCreateData, TEntityUpdateData>(): IEntityAdapter<TEntity, TEntityCreateData, TEntityUpdateData> | undefined;
|
|
39
39
|
resolveAuthorizationMiddleware<TAuthenticationContext extends IAuthenticationContext<TUserContext>, TUserContext>(): IEntityAuthorizationMiddleware<TEntity, TAuthenticationContext, TUserContext> | undefined;
|
|
40
|
-
resolveGetQuery<TEntityId
|
|
40
|
+
resolveGetQuery<TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>>(): IEntityGetQuery<TEntity, TEntityId, TEntitySearchParameters>;
|
|
41
41
|
resolveExistsQuery<TEntityFilters extends ISearchFilters>(): IEntityExistsQuery<TEntity, TEntityFilters>;
|
|
42
42
|
resolveCountQuery<TEntityFilters extends ISearchFilters>(): IEntitiesCountQuery<TEntity, TEntityFilters>;
|
|
43
43
|
resolveVersionsSearchQuery<TCursor>(): IEntityVersionsSearchQuery<TEntity, TCursor>;
|
|
@@ -54,7 +54,7 @@ export declare class EntityServiceLocator<TEntity, TEntityId> {
|
|
|
54
54
|
resolveImportCommand(): IEntitiesImportCommand<TEntity>;
|
|
55
55
|
resolveParseCommand(): IEntitiesParseCommand<TEntity>;
|
|
56
56
|
resolveExportCommand<TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor>(): IEntitiesExportCommand<TEntity, TEntitySearchParameters, TSorting, TCursor>;
|
|
57
|
-
resolveGetAction<TEntityId, TEntityDto
|
|
57
|
+
resolveGetAction<TEntityId, TEntityDto, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>>(): IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters>;
|
|
58
58
|
resolveExistsAction<TEntityFilters extends ISearchFilters>(): IEntityExistsAction<TEntity, TEntityFilters>;
|
|
59
59
|
resolveCountAction<TEntityFilters extends ISearchFilters>(): IEntitiesCountAction<TEntity, TEntityFilters>;
|
|
60
60
|
resolveSearchAction<TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TEntityListItemDto, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets>(): IEntitiesSearchAction<TEntity, TEntitySearchParameters, TEntityListItemDto, TSorting, TCursor, TFacets>;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { IEntityGetQuery } from "../abstractions/queries";
|
|
1
|
+
import { IEntityGetQuery, IEntityGetQueryOptions } from "../abstractions/queries";
|
|
2
|
+
import { IEntitySearchParameters } from "../abstractions/searchParameters";
|
|
2
3
|
import { EntityServiceLocator } from "../providers/services";
|
|
3
|
-
export declare class EntityGetQuery<TEntity, TEntityId
|
|
4
|
+
export declare class EntityGetQuery<TEntity, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> implements IEntityGetQuery<TEntity, TEntityId, TEntitySearchParameters> {
|
|
4
5
|
private readonly services;
|
|
5
6
|
constructor(services: EntityServiceLocator<TEntity, TEntityId>);
|
|
6
|
-
execute(id: TEntityId): Promise<TEntity | undefined>;
|
|
7
|
+
execute(id: TEntityId, options?: IEntityGetQueryOptions<TEntity, TEntitySearchParameters>): Promise<TEntity | undefined>;
|
|
7
8
|
private authorize;
|
|
8
9
|
private getContext;
|
|
9
10
|
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { IEntityFacets } from "../abstractions";
|
|
2
2
|
import { SortingType } from "../abstractions/common";
|
|
3
|
-
import { IEntitiesSearchQuery } from "../abstractions/queries";
|
|
3
|
+
import { IEntitiesSearchQuery, IEntitiesSearchQueryOptions } from "../abstractions/queries";
|
|
4
4
|
import { IEntitySearchParameters } from "../abstractions/searchParameters";
|
|
5
5
|
import { IEntitiesSearchResults } from "../models";
|
|
6
6
|
import { EntityServiceLocator } from "../providers/services";
|
|
7
7
|
export declare class EntitiesSearchQuery<TEntity, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets, TUserContext> implements IEntitiesSearchQuery<TEntity, TEntitySearchParameters, TSorting, TCursor, TFacets> {
|
|
8
8
|
private readonly services;
|
|
9
9
|
constructor(services: EntityServiceLocator<TEntity, TEntityId>);
|
|
10
|
-
execute(request: TEntitySearchParameters): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntity, TSorting, TCursor, TFacets>>;
|
|
10
|
+
execute(request: TEntitySearchParameters, options?: IEntitiesSearchQueryOptions<TEntity, TEntitySearchParameters>): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TEntity, TSorting, TCursor, TFacets>>;
|
|
11
11
|
private getContext;
|
|
12
12
|
private filterAllowedEntities;
|
|
13
13
|
private authorizeSearch;
|
package/dist/esm/index.js
CHANGED
|
@@ -674,7 +674,9 @@ class EntityUpdateAction {
|
|
|
674
674
|
await this.services
|
|
675
675
|
.resolveUpdateCommand()
|
|
676
676
|
.execute(id, updateInput);
|
|
677
|
-
const entity = await this.services
|
|
677
|
+
const entity = await this.services
|
|
678
|
+
.resolveGetQuery()
|
|
679
|
+
.execute(id);
|
|
678
680
|
if (!entity) {
|
|
679
681
|
throw new Error(`Newly created entity not found with id ${id}`);
|
|
680
682
|
}
|
|
@@ -706,7 +708,9 @@ class EntityUpsertAction {
|
|
|
706
708
|
await this.services
|
|
707
709
|
.resolveUpsertCommand()
|
|
708
710
|
.execute(id, updateInput);
|
|
709
|
-
const entity = await this.services
|
|
711
|
+
const entity = await this.services
|
|
712
|
+
.resolveGetQuery()
|
|
713
|
+
.execute(id);
|
|
710
714
|
if (!entity) {
|
|
711
715
|
throw new Error(`Newly created entity not found with id ${id}`);
|
|
712
716
|
}
|
|
@@ -2293,11 +2297,11 @@ class EntityGetQuery {
|
|
|
2293
2297
|
constructor(services) {
|
|
2294
2298
|
this.services = services;
|
|
2295
2299
|
}
|
|
2296
|
-
async execute(id) {
|
|
2300
|
+
async execute(id, options) {
|
|
2297
2301
|
const context = await this.getContext();
|
|
2298
2302
|
const entity = await this.services
|
|
2299
2303
|
.resolveQueryBuilder()
|
|
2300
|
-
.get(id, context);
|
|
2304
|
+
.get(id, context, options);
|
|
2301
2305
|
if (entity) {
|
|
2302
2306
|
await this.authorize(entity);
|
|
2303
2307
|
}
|
|
@@ -2331,11 +2335,14 @@ class EntitiesSearchQuery {
|
|
|
2331
2335
|
constructor(services) {
|
|
2332
2336
|
this.services = services;
|
|
2333
2337
|
}
|
|
2334
|
-
async execute(request) {
|
|
2338
|
+
async execute(request, options) {
|
|
2335
2339
|
const context = await this.getContext();
|
|
2336
2340
|
await this.authorizeSearch(context);
|
|
2337
2341
|
const queryBuilder = this.services.resolveQueryBuilder();
|
|
2338
|
-
const result = await queryBuilder.search(
|
|
2342
|
+
const result = await queryBuilder.search({
|
|
2343
|
+
...request,
|
|
2344
|
+
relations: options?.relations ?? request.relations,
|
|
2345
|
+
}, context);
|
|
2339
2346
|
const filteredEntities = await this.filterAllowedEntities(result.items, context);
|
|
2340
2347
|
return {
|
|
2341
2348
|
...result,
|
|
@@ -3815,9 +3822,10 @@ class TypeOrmQueryBuilder extends QueryBuilderBase {
|
|
|
3815
3822
|
this.clause = new QueryClauseBuilder();
|
|
3816
3823
|
this.permissions = new PermissionsChecker();
|
|
3817
3824
|
}
|
|
3818
|
-
async get(id, context) {
|
|
3825
|
+
async get(id, context, options) {
|
|
3819
3826
|
return await this.getRepository().get(id, {
|
|
3820
|
-
relations:
|
|
3827
|
+
relations: options?.relations ??
|
|
3828
|
+
this.getRelationsToLoad(undefined, context, QueryBuilderOperation.Get),
|
|
3821
3829
|
});
|
|
3822
3830
|
}
|
|
3823
3831
|
async exists(filters, context) {
|
|
@@ -35865,7 +35873,7 @@ let AwsS3FileProvider = class AwsS3FileProvider {
|
|
|
35865
35873
|
};
|
|
35866
35874
|
}
|
|
35867
35875
|
getBucketFileUploadPath(fileName, filePath) {
|
|
35868
|
-
return `${ensureTailingSlash(filePath)}${
|
|
35876
|
+
return `${ensureTailingSlash(filePath)}${fileName}`;
|
|
35869
35877
|
}
|
|
35870
35878
|
getBucketFileUploadDayPath(fileName, date) {
|
|
35871
35879
|
return `${ensureTailingSlash(awsBucketSettings.value.paths.filesUpload)}${createDayPath(date)}${ensureStartSlash(newUuid$1())}_${fileName}`;
|