@punks/backend-entity-manager 0.0.149 → 0.0.150

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.
Files changed (114) hide show
  1. package/dist/cjs/index.js +24 -18
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/__test__/entity/foo.d.ts +8 -2
  4. package/dist/cjs/types/__test__/providers/typeorm/entity/foo.d.ts +2 -1
  5. package/dist/cjs/types/__test__/providers/typeorm/models/foo.d.ts +4 -0
  6. package/dist/cjs/types/__test__/providers/typeorm/serializer/foo.d.ts +9 -2
  7. package/dist/cjs/types/abstractions/configuration.d.ts +1 -1
  8. package/dist/cjs/types/abstractions/serializer.d.ts +12 -10
  9. package/dist/cjs/types/base/serializer.d.ts +10 -4
  10. package/dist/cjs/types/commands/export.d.ts +1 -1
  11. package/dist/cjs/types/commands/import.d.ts +0 -1
  12. package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities/appDirectory.entity.d.ts +2 -1
  13. package/dist/cjs/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.models.d.ts +1 -0
  14. package/dist/cjs/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.serializer.d.ts +10 -0
  15. package/dist/cjs/types/platforms/nest/__test__/server/entities/appDirectories/appDirectory.models.d.ts +1 -0
  16. package/dist/cjs/types/platforms/nest/__test__/server/entities/appDirectories/appDirectory.serializer.d.ts +7 -2
  17. package/dist/cjs/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.models.d.ts +1 -0
  18. package/dist/cjs/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.serializer.d.ts +10 -0
  19. package/dist/cjs/types/platforms/nest/__test__/server/entities/appEmailLogs/appEmailLog.models.d.ts +1 -0
  20. package/dist/cjs/types/platforms/nest/__test__/server/entities/appEmailLogs/appEmailLog.serializer.d.ts +6 -1
  21. package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.models.d.ts +1 -0
  22. package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.serializer.d.ts +6 -1
  23. package/dist/cjs/types/platforms/nest/__test__/server/entities/appFileReferences/appFileReference.models.d.ts +1 -0
  24. package/dist/cjs/types/platforms/nest/__test__/server/entities/appFileReferences/appFileReference.serializer.d.ts +6 -1
  25. package/dist/cjs/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.models.d.ts +1 -0
  26. package/dist/cjs/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.serializer.d.ts +10 -0
  27. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRoles/appRole.models.d.ts +1 -0
  28. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRoles/appRole.serializer.d.ts +10 -0
  29. package/dist/cjs/types/platforms/nest/__test__/server/entities/appTenants/appTenant.models.d.ts +1 -0
  30. package/dist/cjs/types/platforms/nest/__test__/server/entities/appTenants/appTenant.serializer.d.ts +10 -0
  31. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.models.d.ts +1 -0
  32. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.serializer.d.ts +10 -0
  33. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.models.d.ts +1 -0
  34. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.serializer.d.ts +10 -0
  35. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.models.d.ts +1 -0
  36. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.serializer.d.ts +10 -0
  37. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.models.d.ts +1 -0
  38. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.serializer.d.ts +10 -0
  39. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUsers/appUser.models.d.ts +1 -0
  40. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUsers/appUser.serializer.d.ts +10 -0
  41. package/dist/cjs/types/platforms/nest/__test__/server/entities/crmContacts/crmContact.models.d.ts +1 -0
  42. package/dist/cjs/types/platforms/nest/__test__/server/entities/crmContacts/crmContact.serializer.d.ts +6 -1
  43. package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.models.d.ts +8 -0
  44. package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.serializer.d.ts +7 -2
  45. package/dist/cjs/types/platforms/nest/base/entitySerializer.d.ts +4 -3
  46. package/dist/cjs/types/providers/services.d.ts +3 -3
  47. package/dist/esm/index.js +24 -18
  48. package/dist/esm/index.js.map +1 -1
  49. package/dist/esm/types/__test__/entity/foo.d.ts +8 -2
  50. package/dist/esm/types/__test__/providers/typeorm/entity/foo.d.ts +2 -1
  51. package/dist/esm/types/__test__/providers/typeorm/models/foo.d.ts +4 -0
  52. package/dist/esm/types/__test__/providers/typeorm/serializer/foo.d.ts +9 -2
  53. package/dist/esm/types/abstractions/configuration.d.ts +1 -1
  54. package/dist/esm/types/abstractions/serializer.d.ts +12 -10
  55. package/dist/esm/types/base/serializer.d.ts +10 -4
  56. package/dist/esm/types/commands/export.d.ts +1 -1
  57. package/dist/esm/types/commands/import.d.ts +0 -1
  58. package/dist/esm/types/platforms/nest/__test__/server/database/core/entities/appDirectory.entity.d.ts +2 -1
  59. package/dist/esm/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.models.d.ts +1 -0
  60. package/dist/esm/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.serializer.d.ts +10 -0
  61. package/dist/esm/types/platforms/nest/__test__/server/entities/appDirectories/appDirectory.models.d.ts +1 -0
  62. package/dist/esm/types/platforms/nest/__test__/server/entities/appDirectories/appDirectory.serializer.d.ts +7 -2
  63. package/dist/esm/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.models.d.ts +1 -0
  64. package/dist/esm/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.serializer.d.ts +10 -0
  65. package/dist/esm/types/platforms/nest/__test__/server/entities/appEmailLogs/appEmailLog.models.d.ts +1 -0
  66. package/dist/esm/types/platforms/nest/__test__/server/entities/appEmailLogs/appEmailLog.serializer.d.ts +6 -1
  67. package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.models.d.ts +1 -0
  68. package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.serializer.d.ts +6 -1
  69. package/dist/esm/types/platforms/nest/__test__/server/entities/appFileReferences/appFileReference.models.d.ts +1 -0
  70. package/dist/esm/types/platforms/nest/__test__/server/entities/appFileReferences/appFileReference.serializer.d.ts +6 -1
  71. package/dist/esm/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.models.d.ts +1 -0
  72. package/dist/esm/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.serializer.d.ts +10 -0
  73. package/dist/esm/types/platforms/nest/__test__/server/entities/appRoles/appRole.models.d.ts +1 -0
  74. package/dist/esm/types/platforms/nest/__test__/server/entities/appRoles/appRole.serializer.d.ts +10 -0
  75. package/dist/esm/types/platforms/nest/__test__/server/entities/appTenants/appTenant.models.d.ts +1 -0
  76. package/dist/esm/types/platforms/nest/__test__/server/entities/appTenants/appTenant.serializer.d.ts +10 -0
  77. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.models.d.ts +1 -0
  78. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.serializer.d.ts +10 -0
  79. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.models.d.ts +1 -0
  80. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.serializer.d.ts +10 -0
  81. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.models.d.ts +1 -0
  82. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.serializer.d.ts +10 -0
  83. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.models.d.ts +1 -0
  84. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.serializer.d.ts +10 -0
  85. package/dist/esm/types/platforms/nest/__test__/server/entities/appUsers/appUser.models.d.ts +1 -0
  86. package/dist/esm/types/platforms/nest/__test__/server/entities/appUsers/appUser.serializer.d.ts +10 -0
  87. package/dist/esm/types/platforms/nest/__test__/server/entities/crmContacts/crmContact.models.d.ts +1 -0
  88. package/dist/esm/types/platforms/nest/__test__/server/entities/crmContacts/crmContact.serializer.d.ts +6 -1
  89. package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.models.d.ts +8 -0
  90. package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.serializer.d.ts +7 -2
  91. package/dist/esm/types/platforms/nest/base/entitySerializer.d.ts +4 -3
  92. package/dist/esm/types/providers/services.d.ts +3 -3
  93. package/dist/index.d.ts +29 -20
  94. package/package.json +1 -1
  95. package/dist/cjs/types/platforms/nest/__test__/server/app/appCompanies/appCompany.serializer.d.ts +0 -6
  96. package/dist/cjs/types/platforms/nest/__test__/server/app/appDivisions/appDivision.serializer.d.ts +0 -6
  97. package/dist/cjs/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.serializer.d.ts +0 -6
  98. package/dist/cjs/types/platforms/nest/__test__/server/app/appRoles/appRole.serializer.d.ts +0 -6
  99. package/dist/cjs/types/platforms/nest/__test__/server/app/appTenants/appTenant.serializer.d.ts +0 -6
  100. package/dist/cjs/types/platforms/nest/__test__/server/app/appUserGroupMembers/appUserGroupMember.serializer.d.ts +0 -6
  101. package/dist/cjs/types/platforms/nest/__test__/server/app/appUserGroups/appUserGroup.serializer.d.ts +0 -6
  102. package/dist/cjs/types/platforms/nest/__test__/server/app/appUserProfiles/appUserProfile.serializer.d.ts +0 -6
  103. package/dist/cjs/types/platforms/nest/__test__/server/app/appUserRoles/appUserRole.serializer.d.ts +0 -6
  104. package/dist/cjs/types/platforms/nest/__test__/server/app/appUsers/appUser.serializer.d.ts +0 -6
  105. package/dist/esm/types/platforms/nest/__test__/server/app/appCompanies/appCompany.serializer.d.ts +0 -6
  106. package/dist/esm/types/platforms/nest/__test__/server/app/appDivisions/appDivision.serializer.d.ts +0 -6
  107. package/dist/esm/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.serializer.d.ts +0 -6
  108. package/dist/esm/types/platforms/nest/__test__/server/app/appRoles/appRole.serializer.d.ts +0 -6
  109. package/dist/esm/types/platforms/nest/__test__/server/app/appTenants/appTenant.serializer.d.ts +0 -6
  110. package/dist/esm/types/platforms/nest/__test__/server/app/appUserGroupMembers/appUserGroupMember.serializer.d.ts +0 -6
  111. package/dist/esm/types/platforms/nest/__test__/server/app/appUserGroups/appUserGroup.serializer.d.ts +0 -6
  112. package/dist/esm/types/platforms/nest/__test__/server/app/appUserProfiles/appUserProfile.serializer.d.ts +0 -6
  113. package/dist/esm/types/platforms/nest/__test__/server/app/appUserRoles/appUserRole.serializer.d.ts +0 -6
  114. package/dist/esm/types/platforms/nest/__test__/server/app/appUsers/appUser.serializer.d.ts +0 -6
package/dist/cjs/index.js CHANGED
@@ -140,6 +140,19 @@ const DEFAULT_DELIMITER = ";";
140
140
  class EntitySerializer {
141
141
  constructor(entityName) {
142
142
  this.entityName = entityName;
143
+ this.logger = backendCore.Log.getLogger(`${entityName} -> Serializer`);
144
+ }
145
+ async export(filters) {
146
+ const entities = await this.loadEntities(filters ?? {});
147
+ return await this.convertToSheetItems(entities);
148
+ }
149
+ async import(items) {
150
+ this.logger.info(`Entities import -> started (${items.length} items)`);
151
+ for (const [index, item] of items.entries()) {
152
+ await this.importItem(item);
153
+ this.logger.info(`Entity imported -> ${index + 1}/${items.length}`);
154
+ }
155
+ this.logger.info(`Entities import -> completed (${items.length} items)`);
143
156
  }
144
157
  async parse(data, format) {
145
158
  switch (format) {
@@ -631,8 +644,8 @@ class EntitiesExportCommand {
631
644
  this.settings = settings;
632
645
  }
633
646
  async execute(input) {
634
- const exportEntities = await this.getExportEntities(input.filter);
635
- const outputFile = await this.buildExportFile(exportEntities.items, input.options.format);
647
+ const sheetItems = await this.getExportSheetItems(input.filter);
648
+ const outputFile = await this.buildExportFile(sheetItems, input.options.format);
636
649
  const downloadUrl = await this.uploadExportFile(outputFile);
637
650
  return {
638
651
  downloadUrl,
@@ -662,8 +675,8 @@ class EntitiesExportCommand {
662
675
  buildAbsoluteBucketPath(relativePath) {
663
676
  return `${this.settings.exportBucket.rootFolderPath ?? ""}/exports/${createDayPath$1(new Date())}/${relativePath}`;
664
677
  }
665
- async getExportEntities(filters) {
666
- return this.services.resolveSearchQuery().execute(filters ?? {});
678
+ async getExportSheetItems(filters) {
679
+ return await this.services.resolveSerializer().export(filters);
667
680
  }
668
681
  get bucket() {
669
682
  return this.services.getRootServices().resolveDefaultBucketProvider();
@@ -682,9 +695,7 @@ class EntitiesImportCommand {
682
695
  fileName: input.file.fileName,
683
696
  });
684
697
  const importEntities = await this.parseImportFile(input.file.content, input.format);
685
- for (const entry of importEntities) {
686
- await this.importEntity(entry);
687
- }
698
+ await this.services.resolveSerializer().import(importEntities);
688
699
  return {
689
700
  statistics: {
690
701
  importedCount: importEntities.length,
@@ -694,17 +705,6 @@ class EntitiesImportCommand {
694
705
  },
695
706
  };
696
707
  }
697
- async importEntity(entry) {
698
- try {
699
- if (!entry.id) {
700
- return this.services.resolveCreateCommand().execute(entry.item);
701
- }
702
- return this.services.resolveUpsertCommand().execute(entry.id, entry.item);
703
- }
704
- catch (error) {
705
- throw new Error(`Error importing entry with id ${entry.id}`);
706
- }
707
- }
708
708
  async parseImportFile(content, format) {
709
709
  return await this.services.resolveSerializer().parse(content, format);
710
710
  }
@@ -2321,6 +2321,12 @@ class NestEntityManager {
2321
2321
  class NestEntitySerializer extends EntitySerializer {
2322
2322
  constructor(entityName, registry) {
2323
2323
  super(entityName);
2324
+ this.registry = registry;
2325
+ }
2326
+ get manager() {
2327
+ return this.registry
2328
+ .resolveEntityServicesCollection(this.entityName)
2329
+ .resolveEntityManager();
2324
2330
  }
2325
2331
  }
2326
2332