@punks/backend-entity-manager 0.0.489 → 0.0.491

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.
@@ -1,2 +1,3 @@
1
1
  export * from "./types";
2
2
  export { DataExportService } from "./service";
3
+ export { DataSheet, DataSheetsBuilder, DataSheetsExporterService, } from "./sheetsExporter";
@@ -1,5 +1,10 @@
1
1
  /// <reference types="node" />
2
2
  import { DataSerializationFormat, DataSerializerColumnDefinition } from "./types";
3
+ export declare class DataExportSheetsSerializer {
4
+ serializeXlsx(input: {
5
+ name: string;
6
+ }): void;
7
+ }
3
8
  export declare class DataExportSerializer<TExportItem> {
4
9
  serialize(items: TExportItem[], exportParams: {
5
10
  name: string;
@@ -9,5 +14,4 @@ export declare class DataExportSerializer<TExportItem> {
9
14
  contentType: string;
10
15
  content: Buffer;
11
16
  };
12
- private getColumnValue;
13
17
  }
@@ -0,0 +1,14 @@
1
+ import { DataExportFile, DataSerializerColumnDefinition } from "./types";
2
+ export type DataSheet<T> = {
3
+ name: string;
4
+ data: T[];
5
+ columns: DataSerializerColumnDefinition<any>[];
6
+ };
7
+ export declare class DataSheetsBuilder {
8
+ private sheets;
9
+ addSheet<T>(sheet: DataSheet<T>): void;
10
+ build(): Promise<DataExportFile>;
11
+ }
12
+ export declare class DataSheetsExporterService {
13
+ createBuilder(): DataSheetsBuilder;
14
+ }
@@ -0,0 +1,3 @@
1
+ import { DataSerializerColumnDefinition } from "./types";
2
+ export declare const getColumnValue: <TExportItem>(item: TExportItem, definition: DataSerializerColumnDefinition<TExportItem>) => any;
3
+ export declare const joinArrayColumn: (value: any[], separator?: string) => string;
@@ -1,7 +1,7 @@
1
1
  import { CacheService } from "./cache";
2
2
  import { EmailService } from "./email";
3
3
  import { EventsService } from "./events";
4
- import { DataExportService } from "./export";
4
+ import { DataExportService, DataSheetsExporterService } from "./export";
5
5
  import { FilesManager } from "./files";
6
6
  import { AppHashingService } from "./hashing";
7
7
  import { EntityManagerService } from "./manager";
@@ -10,4 +10,4 @@ import { OperationLockService } from "./operations/operation-lock.service";
10
10
  import { SecretsService } from "./secrets";
11
11
  import { AppSessionService } from "./session";
12
12
  import { TrackingService } from "./tracking";
13
- export declare const Services: (typeof AppSessionService | typeof AppHashingService | typeof EntityManagerService | typeof MediaLibraryService | typeof OperationLockService | typeof EmailService | typeof DataExportService | typeof CacheService | typeof FilesManager | typeof EventsService | typeof TrackingService | typeof SecretsService)[];
13
+ export declare const Services: (typeof AppSessionService | typeof AppHashingService | typeof EntityManagerService | typeof MediaLibraryService | typeof OperationLockService | typeof EmailService | typeof DataExportService | typeof DataSheetsExporterService | typeof CacheService | typeof FilesManager | typeof EventsService | typeof TrackingService | typeof SecretsService)[];
package/dist/esm/index.js CHANGED
@@ -22873,12 +22873,18 @@ var DataSerializationFormat;
22873
22873
  DataSerializationFormat["Xlsx"] = "xlsx";
22874
22874
  })(DataSerializationFormat || (DataSerializationFormat = {}));
22875
22875
 
22876
- const DEFAULT_DELIMITER = ";";
22876
+ const getColumnValue = (item, definition) => {
22877
+ return typeof definition.selector === "function"
22878
+ ? definition.selector(item)
22879
+ : item[definition.selector];
22880
+ };
22877
22881
  const DEFAULT_ARRAY_SEPARATOR = "|";
22878
22882
  const joinArrayColumn = (value, separator) => value
22879
22883
  ?.map((x) => x.toString().trim())
22880
22884
  .filter((x) => x)
22881
22885
  .join(separator ?? DEFAULT_ARRAY_SEPARATOR);
22886
+
22887
+ const DEFAULT_DELIMITER = ";";
22882
22888
  class DataExportSerializer {
22883
22889
  serialize(items, exportParams) {
22884
22890
  switch (exportParams.format) {
@@ -22888,7 +22894,7 @@ class DataExportSerializer {
22888
22894
  content: Buffer.from(csvBuild(items, exportParams.columns.map((c) => ({
22889
22895
  name: c.name,
22890
22896
  value: (item) => {
22891
- const value = this.getColumnValue(item, c);
22897
+ const value = getColumnValue(item, c);
22892
22898
  return c.array
22893
22899
  ? joinArrayColumn(value, c.arraySeparator)
22894
22900
  : value;
@@ -22906,7 +22912,7 @@ class DataExportSerializer {
22906
22912
  columns: exportParams.columns.map((c) => ({
22907
22913
  header: c.name,
22908
22914
  value: (item) => {
22909
- const value = this.getColumnValue(item, c);
22915
+ const value = getColumnValue(item, c);
22910
22916
  return c.array
22911
22917
  ? joinArrayColumn(value, c.arraySeparator)
22912
22918
  : value;
@@ -22922,11 +22928,6 @@ class DataExportSerializer {
22922
22928
  };
22923
22929
  }
22924
22930
  }
22925
- getColumnValue(item, definition) {
22926
- return typeof definition.selector === "function"
22927
- ? definition.selector(item)
22928
- : item[definition.selector];
22929
- }
22930
22931
  }
22931
22932
 
22932
22933
  let DataExportService = class DataExportService {
@@ -23001,6 +23002,42 @@ DataExportService = __decorate([
23001
23002
  __metadata("design:paramtypes", [EntityManagerRegistry])
23002
23003
  ], DataExportService);
23003
23004
 
23005
+ class DataSheetsBuilder {
23006
+ constructor() {
23007
+ this.sheets = [];
23008
+ }
23009
+ addSheet(sheet) {
23010
+ this.sheets.push(sheet);
23011
+ }
23012
+ async build() {
23013
+ return {
23014
+ contentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
23015
+ content: Buffer.from(excelBuild(...this.sheets.map((s) => ({
23016
+ data: s.data,
23017
+ sheetName: s.name,
23018
+ columns: s.columns.map((c) => ({
23019
+ header: c.name,
23020
+ value: (item) => {
23021
+ const value = getColumnValue(item, c);
23022
+ return c.array
23023
+ ? joinArrayColumn(value, c.arraySeparator)
23024
+ : value;
23025
+ },
23026
+ headerSize: c.colSpan,
23027
+ })),
23028
+ })))),
23029
+ };
23030
+ }
23031
+ }
23032
+ let DataSheetsExporterService = class DataSheetsExporterService {
23033
+ createBuilder() {
23034
+ return new DataSheetsBuilder();
23035
+ }
23036
+ };
23037
+ DataSheetsExporterService = __decorate([
23038
+ Injectable()
23039
+ ], DataSheetsExporterService);
23040
+
23004
23041
  let CacheService = class CacheService {
23005
23042
  constructor(registry) {
23006
23043
  this.registry = registry;
@@ -23984,6 +24021,7 @@ const Services$1 = [
23984
24021
  AppHashingService,
23985
24022
  CacheService,
23986
24023
  DataExportService,
24024
+ DataSheetsExporterService,
23987
24025
  EntityManagerService,
23988
24026
  EmailService,
23989
24027
  EventsService,
@@ -45368,5 +45406,5 @@ class TestingAppSessionService {
45368
45406
  }
45369
45407
  }
45370
45408
 
45371
- export { AUTHENTICATION_EVENTS_NAMESPACE, ApiKeyAccess, AppExceptionsFilterBase, AppHashingService, AppInMemorySettings, AppSession, AppSessionMiddleware, AppSessionService, AuthGuard, Authenticated, AuthenticationEmailTemplates, AuthenticationError, AuthenticationEvents, AuthenticationExtensionSymbols, AuthenticationModule, AuthenticationService, AwsBucketModule, AwsDynamoDbModule, AwsEmailModule, AwsJobsModule, AwsS3BucketError, AwsS3BucketProvider, AwsS3MediaError, AwsS3MediaModule, AwsS3MediaProvider, AwsSecretsModule, AwsSecretsProvider, AwsSesEmailTemplate, BucketItemType, CacheService, ConnectorMode, CurrentUser, CustomDiscoveryModule, CustomDiscoveryService, DataExportService, DataSerializationFormat, DynamoDbCacheInstance, DynamoDbCollection, EmailService, EntityManagerConfigurationError, EntityManagerException, EntityManagerInitializer, EntityManagerModule, EntityManagerRegistry, EntityManagerService, EntityManagerSymbols, EntityManagerUnauthorizedException, EntityNotFoundException, EntityOperationType, EntityOperationUnauthorizedException, EntityParseResult, EntityParseValidationError, EntitySeeder, EntitySerializationFormat, EntitySerializer, EntitySnapshotService, EntityVersionOperation, EventsService, ExclusiveOperationResult, FilesManager, IEntityVersionsCursor, InMemoryBucketProvider, InMemoryEmailProvider, InMemoryFileProvider, InMemoryMediaProvider, InMemorySecretsProvider, InvalidCredentialsError, InvalidEntityHandling, JobConcurrency, JobInstance, JobProviderState, JobRunType, JobSchedule, JobStatus, JobsModule, JobsService, LockNotFoundError, MediaLibraryService, MemberOf, MissingEntityIdError, ModulesContainerProvider, MultiTenancyModule, MultipleEntitiesFoundException, NestEntityActions, NestEntityAuthorizationMiddleware, NestEntityManager, NestEntitySerializer, NestEntitySnapshotService, NestPipelineTemplate, NestTypeOrmEntitySeeder, NestTypeOrmQueryBuilder, NestTypeOrmRepository, OperationLockService, OperationTokenMismatchError, PLATFORM_EVENT_NAMESPACE, Permissions, PipelineController, PipelineErrorType, PipelineInvocationError, PipelineStatus, PipelineStepErrorType, PipelinesBuilder, PipelinesRunner, PlatformEvents, Public, QueryBuilderBase, QueryBuilderOperation, ReplicationMode, Roles, SanityMediaError, SanityMediaModule, SanityMediaProvider, SecretsService, SendgridEmailModule, SendgridEmailTemplate, SortDirection, TaskConcurrency, TaskRunType, TasksModule, TasksService, TestingAppSessionService, TrackingService, TypeOrmQueryBuilder, TypeOrmRepository, TypeormCacheInstance, TypeormOperationLockRepository, UserCreationError, UserRegistrationError, WpApiKeysService, WpAppInitializer, WpAwsSesEmailTemplate, WpBucketProvider, WpCacheInstance, WpEmailLogger, WpEmailProvider, WpEmailTemplate, WpEmailTemplateMiddleware, WpEntity, WpEntityActions, WpEntityAdapter, WpEntityAuthMiddleware, WpEntityConnector, WpEntityConnectorMapper, WpEntityConverter, WpEntityManager, WpEntityQueryBuilder, WpEntityRepository, WpEntitySeeder, WpEntitySerializer, WpEntitySnapshotService, WpEntityVersioningProvider, WpEventsTracker, WpFileProvider, WpFileReferenceRepository, WpGlobalAuthenticationMiddleware, WpMediaFolderRepository, WpMediaProvider, WpMediaReferenceRepository, WpPermissionsService, WpPipeline, WpRolesService, WpSendgridEmailTemplate, WpTask, WpUserRolesService, WpUserService, awsBatchSettings, buildPermissionsGuard, buildProviderToken, buildRolesGuard, createContainer, createExpressFileResponse, fieldEmailValidator, fieldOptionValidator, fieldOptionsValidator, fieldRequiredValidator, fieldTextValidator, getEntityManagerProviderToken, getLocalizedText, newUuid, renderHandlebarsTemplate, sessionStorage, toEntitiesImportInput };
45409
+ export { AUTHENTICATION_EVENTS_NAMESPACE, ApiKeyAccess, AppExceptionsFilterBase, AppHashingService, AppInMemorySettings, AppSession, AppSessionMiddleware, AppSessionService, AuthGuard, Authenticated, AuthenticationEmailTemplates, AuthenticationError, AuthenticationEvents, AuthenticationExtensionSymbols, AuthenticationModule, AuthenticationService, AwsBucketModule, AwsDynamoDbModule, AwsEmailModule, AwsJobsModule, AwsS3BucketError, AwsS3BucketProvider, AwsS3MediaError, AwsS3MediaModule, AwsS3MediaProvider, AwsSecretsModule, AwsSecretsProvider, AwsSesEmailTemplate, BucketItemType, CacheService, ConnectorMode, CurrentUser, CustomDiscoveryModule, CustomDiscoveryService, DataExportService, DataSerializationFormat, DataSheetsBuilder, DataSheetsExporterService, DynamoDbCacheInstance, DynamoDbCollection, EmailService, EntityManagerConfigurationError, EntityManagerException, EntityManagerInitializer, EntityManagerModule, EntityManagerRegistry, EntityManagerService, EntityManagerSymbols, EntityManagerUnauthorizedException, EntityNotFoundException, EntityOperationType, EntityOperationUnauthorizedException, EntityParseResult, EntityParseValidationError, EntitySeeder, EntitySerializationFormat, EntitySerializer, EntitySnapshotService, EntityVersionOperation, EventsService, ExclusiveOperationResult, FilesManager, IEntityVersionsCursor, InMemoryBucketProvider, InMemoryEmailProvider, InMemoryFileProvider, InMemoryMediaProvider, InMemorySecretsProvider, InvalidCredentialsError, InvalidEntityHandling, JobConcurrency, JobInstance, JobProviderState, JobRunType, JobSchedule, JobStatus, JobsModule, JobsService, LockNotFoundError, MediaLibraryService, MemberOf, MissingEntityIdError, ModulesContainerProvider, MultiTenancyModule, MultipleEntitiesFoundException, NestEntityActions, NestEntityAuthorizationMiddleware, NestEntityManager, NestEntitySerializer, NestEntitySnapshotService, NestPipelineTemplate, NestTypeOrmEntitySeeder, NestTypeOrmQueryBuilder, NestTypeOrmRepository, OperationLockService, OperationTokenMismatchError, PLATFORM_EVENT_NAMESPACE, Permissions, PipelineController, PipelineErrorType, PipelineInvocationError, PipelineStatus, PipelineStepErrorType, PipelinesBuilder, PipelinesRunner, PlatformEvents, Public, QueryBuilderBase, QueryBuilderOperation, ReplicationMode, Roles, SanityMediaError, SanityMediaModule, SanityMediaProvider, SecretsService, SendgridEmailModule, SendgridEmailTemplate, SortDirection, TaskConcurrency, TaskRunType, TasksModule, TasksService, TestingAppSessionService, TrackingService, TypeOrmQueryBuilder, TypeOrmRepository, TypeormCacheInstance, TypeormOperationLockRepository, UserCreationError, UserRegistrationError, WpApiKeysService, WpAppInitializer, WpAwsSesEmailTemplate, WpBucketProvider, WpCacheInstance, WpEmailLogger, WpEmailProvider, WpEmailTemplate, WpEmailTemplateMiddleware, WpEntity, WpEntityActions, WpEntityAdapter, WpEntityAuthMiddleware, WpEntityConnector, WpEntityConnectorMapper, WpEntityConverter, WpEntityManager, WpEntityQueryBuilder, WpEntityRepository, WpEntitySeeder, WpEntitySerializer, WpEntitySnapshotService, WpEntityVersioningProvider, WpEventsTracker, WpFileProvider, WpFileReferenceRepository, WpGlobalAuthenticationMiddleware, WpMediaFolderRepository, WpMediaProvider, WpMediaReferenceRepository, WpPermissionsService, WpPipeline, WpRolesService, WpSendgridEmailTemplate, WpTask, WpUserRolesService, WpUserService, awsBatchSettings, buildPermissionsGuard, buildProviderToken, buildRolesGuard, createContainer, createExpressFileResponse, fieldEmailValidator, fieldOptionValidator, fieldOptionsValidator, fieldRequiredValidator, fieldTextValidator, getEntityManagerProviderToken, getLocalizedText, newUuid, renderHandlebarsTemplate, sessionStorage, toEntitiesImportInput };
45372
45410
  //# sourceMappingURL=index.js.map