@punks/backend-entity-manager 0.0.460 → 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.
@@ -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 IEntityGetAction<TEntity, TEntityId, TEntityDto> {
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> implements IEntityGetAction<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>(entityName: string): IEntityGetQuery<TEntity, TEntityId>;
111
- registerGetQuery<TEntity, TEntityId>(entityName: string, instance: IEntityGetQuery<TEntity, TEntityId>): void;
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>(entityName: string): IEntityGetAction<TEntity, TEntityId, TEntityDto>;
145
- registerGetAction<TEntity, TEntityId, TEntityDto>(entityName: string, instance: IEntityGetAction<TEntity, TEntityId, TEntityDto>): void;
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>(): IEntityGetQuery<TEntity, 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>(): IEntityGetAction<TEntity, 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> implements IEntityGetQuery<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;