@punks/backend-entity-manager 0.0.461 → 0.0.463

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.
@@ -74,7 +74,7 @@ export type ImportEntry<TSheetItem, TEntityId> = {
74
74
  status: ImportEntryValidationResult;
75
75
  };
76
76
  export interface IEntitySerializer<TEntity, TEntityId, TEntitySearchParameters, TSheetItem, TPayload = unknown> {
77
- export(filters?: TEntitySearchParameters): Promise<TSheetItem[]>;
77
+ export(filters?: TEntitySearchParameters, payload?: TPayload): Promise<TSheetItem[]>;
78
78
  import(items: TSheetItem[], payload?: TPayload): Promise<void>;
79
79
  serialize(items: TSheetItem[], format: EntitySerializationFormat, payload?: TPayload): Promise<EntityExportFile>;
80
80
  parse<TPayload>(data: Buffer, format: EntitySerializationFormat, payload?: TPayload): Promise<ImportEntry<TSheetItem, TEntityId>[]>;
@@ -1,8 +1,8 @@
1
- import { IEntityGetAction } from "../abstractions/actions";
1
+ import { IEntityGetAction, IEntityGetActionOptions } from "../abstractions/actions";
2
2
  import { IEntitySearchParameters } from "../abstractions/searchParameters";
3
3
  import { EntityServiceLocator } from "../providers/services";
4
4
  export declare class EntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters extends IEntitySearchParameters<TEntity, unknown, unknown>> implements IEntityGetAction<TEntity, TEntityId, TEntityDto, TEntitySearchParameters> {
5
5
  private readonly services;
6
6
  constructor(services: EntityServiceLocator<TEntity, TEntityId>);
7
- execute(id: TEntityId): Promise<TEntityDto | undefined>;
7
+ execute(id: TEntityId, options?: IEntityGetActionOptions<TEntity, TEntitySearchParameters>): Promise<TEntityDto | undefined>;
8
8
  }
@@ -1,5 +1,5 @@
1
1
  import { IEntityFacets } from "../abstractions";
2
- import { IEntitiesSearchAction } from "../abstractions/actions";
2
+ import { IEntitiesSearchAction, IEntitiesSearchActionOptions } from "../abstractions/actions";
3
3
  import { SortingType } from "../abstractions/common";
4
4
  import { IEntitySearchParameters } from "../abstractions/searchParameters";
5
5
  import { IEntitiesSearchResults } from "../models";
@@ -7,5 +7,5 @@ import { EntityServiceLocator } from "../providers/services";
7
7
  export declare class EntitiesSearchAction<TEntity, TEntityId, TEntitySearchParameters extends IEntitySearchParameters<TEntity, TSorting, TCursor>, TListItemDto, TSorting extends SortingType, TCursor, TFacets extends IEntityFacets> implements IEntitiesSearchAction<TEntity, TEntitySearchParameters, TListItemDto, TSorting, TCursor, TFacets> {
8
8
  private readonly services;
9
9
  constructor(services: EntityServiceLocator<TEntity, TEntityId>);
10
- execute(request: TEntitySearchParameters): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TListItemDto, TSorting, TCursor, TFacets>>;
10
+ execute(request: TEntitySearchParameters, options?: IEntitiesSearchActionOptions<TEntity, TEntitySearchParameters>): Promise<IEntitiesSearchResults<TEntity, TEntitySearchParameters, TListItemDto, TSorting, TCursor, TFacets>>;
11
11
  }
@@ -17,7 +17,7 @@ export declare abstract class EntitySerializer<TEntity, TEntityId, TEntitySearch
17
17
  private readonly logger;
18
18
  protected readonly entityName: string;
19
19
  constructor(services: EntityServiceLocator<TEntity, TEntityId>, options?: EntitySerializerOptions | undefined);
20
- export(filters?: TEntitySearchParameters): Promise<TSheetItem[]>;
20
+ export(filters?: TEntitySearchParameters, payload?: TPayload): Promise<TSheetItem[]>;
21
21
  import(items: TSheetItem[], payload?: TPayload): Promise<void>;
22
22
  parse<TPayload>(data: Buffer, format: EntitySerializationFormat, payload?: TPayload): Promise<ImportEntry<TSheetItem, TEntityId>[]>;
23
23
  private parseCsv;
@@ -29,7 +29,7 @@ export declare abstract class EntitySerializer<TEntity, TEntityId, TEntitySearch
29
29
  serialize(data: TSheetItem[], format: EntitySerializationFormat, payload?: TPayload): Promise<EntityExportFile>;
30
30
  protected abstract getDefinition(context: TContext, payload?: TPayload): Promise<EntitySerializerSheetDefinition<TSheetItem>>;
31
31
  protected abstract loadEntities(filters?: TEntitySearchParameters): Promise<TEntity[]>;
32
- protected abstract convertToSheetItems(entities: TEntity[]): Promise<TSheetItem[]>;
32
+ protected abstract convertToSheetItems(entities: TEntity[], payload?: TPayload): Promise<TSheetItem[]>;
33
33
  protected validateSheetItem(item: TSheetItem, allItems: TSheetItem[], context: TContext): void;
34
34
  protected abstract importItem(item: TSheetItem, context: TContext, payload?: TPayload): Promise<EntityReference<TEntityId>>;
35
35
  protected getContext(): Promise<TContext>;
package/dist/esm/index.js CHANGED
@@ -235,9 +235,9 @@ class EntitySerializer {
235
235
  this.entityName = services.getEntityName();
236
236
  this.logger = Log.getLogger(`${services.getEntityName()} -> Serializer`);
237
237
  }
238
- async export(filters) {
238
+ async export(filters, payload) {
239
239
  const entities = await this.loadEntities(filters ?? {});
240
- return await this.convertToSheetItems(entities);
240
+ return await this.convertToSheetItems(entities, payload);
241
241
  }
242
242
  async import(items, payload) {
243
243
  this.logger.info(`Entities import -> started (${items.length} items)`);
@@ -592,8 +592,8 @@ class EntityGetAction {
592
592
  constructor(services) {
593
593
  this.services = services;
594
594
  }
595
- async execute(id) {
596
- const entity = await this.services.resolveGetQuery().execute(id);
595
+ async execute(id, options) {
596
+ const entity = await this.services.resolveGetQuery().execute(id, options);
597
597
  const converter = this.services.resolveConverter();
598
598
  return entity
599
599
  ? (await converter?.toEntityDto(entity)) ?? entity
@@ -646,9 +646,9 @@ class EntitiesSearchAction {
646
646
  constructor(services) {
647
647
  this.services = services;
648
648
  }
649
- async execute(request) {
649
+ async execute(request, options) {
650
650
  const searchQuery = this.services.resolveSearchQuery();
651
- const results = await searchQuery.execute(request);
651
+ const results = await searchQuery.execute(request, options);
652
652
  const converter = this.services.resolveConverter();
653
653
  return {
654
654
  items: await mapAsync(results.items, async (x) => ((await converter?.toListItemDto(x)) ?? x)),