@punks/backend-entity-manager 0.0.100 → 0.0.102
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 +150 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/abstractions/configuration.d.ts +2 -2
- package/dist/cjs/types/abstractions/index.d.ts +1 -0
- package/dist/cjs/types/abstractions/settings.d.ts +7 -0
- package/dist/cjs/types/abstractions/versioning.d.ts +17 -0
- package/dist/cjs/types/commands/create.d.ts +2 -0
- package/dist/cjs/types/commands/delete.d.ts +2 -0
- package/dist/cjs/types/commands/update.d.ts +2 -0
- package/dist/cjs/types/commands/upsert.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.actions.d.ts +8 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.controller.d.ts +13 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.converter.d.ts +9 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.dto.d.ts +37 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.module.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities/appEntityVersion.entity.d.ts +11 -0
- package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities.d.ts +2 -1
- package/dist/cjs/types/platforms/nest/__test__/server/database/core/index.d.ts +4 -0
- package/dist/cjs/types/platforms/nest/__test__/server/database/core/repositories/appEntityVersion.repository.d.ts +7 -0
- package/dist/cjs/types/platforms/nest/__test__/server/database/core/repositories.d.ts +2 -1
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.adapter.d.ts +7 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.authentication.d.ts +11 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.manager.d.ts +7 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.models.d.ts +13 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.module.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.query.d.ts +12 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.serializer.d.ts +6 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.types.d.ts +47 -0
- package/dist/cjs/types/platforms/nest/__test__/server/index.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/__test__/server/infrastructure/versioning/module.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/__test__/server/infrastructure/versioning/providers/entity-versioning/index.d.ts +8 -0
- package/dist/cjs/types/platforms/nest/__test__/server/infrastructure/versioning/providers/index.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/__test__/tests/versioning/entity-versioning.test.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/decorators/index.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/decorators/symbols.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/decorators/versioning.d.ts +4 -0
- package/dist/cjs/types/platforms/nest/processors/initializer/index.d.ts +2 -0
- package/dist/cjs/types/providers/services.d.ts +8 -1
- package/dist/cjs/types/symbols/ioc.d.ts +6 -0
- package/dist/esm/index.js +150 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/abstractions/configuration.d.ts +2 -2
- package/dist/esm/types/abstractions/index.d.ts +1 -0
- package/dist/esm/types/abstractions/settings.d.ts +7 -0
- package/dist/esm/types/abstractions/versioning.d.ts +17 -0
- package/dist/esm/types/commands/create.d.ts +2 -0
- package/dist/esm/types/commands/delete.d.ts +2 -0
- package/dist/esm/types/commands/update.d.ts +2 -0
- package/dist/esm/types/commands/upsert.d.ts +2 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.actions.d.ts +8 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.controller.d.ts +13 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.converter.d.ts +9 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.dto.d.ts +37 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/appEntityVersions/appEntityVersion.module.d.ts +2 -0
- package/dist/esm/types/platforms/nest/__test__/server/database/core/entities/appEntityVersion.entity.d.ts +11 -0
- package/dist/esm/types/platforms/nest/__test__/server/database/core/entities.d.ts +2 -1
- package/dist/esm/types/platforms/nest/__test__/server/database/core/index.d.ts +4 -0
- package/dist/esm/types/platforms/nest/__test__/server/database/core/repositories/appEntityVersion.repository.d.ts +7 -0
- package/dist/esm/types/platforms/nest/__test__/server/database/core/repositories.d.ts +2 -1
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.adapter.d.ts +7 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.authentication.d.ts +11 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.manager.d.ts +7 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.models.d.ts +13 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.module.d.ts +2 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.query.d.ts +12 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.serializer.d.ts +6 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.types.d.ts +47 -0
- package/dist/esm/types/platforms/nest/__test__/server/index.d.ts +1 -0
- package/dist/esm/types/platforms/nest/__test__/server/infrastructure/versioning/module.d.ts +2 -0
- package/dist/esm/types/platforms/nest/__test__/server/infrastructure/versioning/providers/entity-versioning/index.d.ts +8 -0
- package/dist/esm/types/platforms/nest/__test__/server/infrastructure/versioning/providers/index.d.ts +2 -0
- package/dist/esm/types/platforms/nest/__test__/tests/versioning/entity-versioning.test.d.ts +1 -0
- package/dist/esm/types/platforms/nest/decorators/index.d.ts +1 -0
- package/dist/esm/types/platforms/nest/decorators/symbols.d.ts +1 -0
- package/dist/esm/types/platforms/nest/decorators/versioning.d.ts +4 -0
- package/dist/esm/types/platforms/nest/processors/initializer/index.d.ts +2 -0
- package/dist/esm/types/providers/services.d.ts +8 -1
- package/dist/esm/types/symbols/ioc.d.ts +6 -0
- package/dist/index.d.ts +45 -6
- package/package.json +1 -1
package/dist/esm/index.js
CHANGED
|
@@ -101,6 +101,14 @@ var EntitySerializationFormat;
|
|
|
101
101
|
EntitySerializationFormat["Xlsx"] = "xlsx";
|
|
102
102
|
})(EntitySerializationFormat || (EntitySerializationFormat = {}));
|
|
103
103
|
|
|
104
|
+
var EntityVersionOperation;
|
|
105
|
+
(function (EntityVersionOperation) {
|
|
106
|
+
EntityVersionOperation["Create"] = "create";
|
|
107
|
+
EntityVersionOperation["Update"] = "update";
|
|
108
|
+
EntityVersionOperation["Upsert"] = "upsert";
|
|
109
|
+
EntityVersionOperation["Delete"] = "delete";
|
|
110
|
+
})(EntityVersionOperation || (EntityVersionOperation = {}));
|
|
111
|
+
|
|
104
112
|
class EntitySeeder {
|
|
105
113
|
constructor() {
|
|
106
114
|
this.logger = Log.getLogger(EntitySeeder.name);
|
|
@@ -450,9 +458,11 @@ class EntityCreateCommand {
|
|
|
450
458
|
this.services = services;
|
|
451
459
|
}
|
|
452
460
|
async execute(input) {
|
|
453
|
-
|
|
461
|
+
const entity = this.adaptEntity(input);
|
|
454
462
|
await this.authorize(entity);
|
|
455
|
-
|
|
463
|
+
const createdItem = await this.services.resolveRepository().create(entity);
|
|
464
|
+
// todo: parametrize id field
|
|
465
|
+
await this.versionEntity(createdItem.id, createdItem);
|
|
456
466
|
await this.services
|
|
457
467
|
.resolveEventsManager()
|
|
458
468
|
.processEntityCreatedEvent(createdItem);
|
|
@@ -478,6 +488,27 @@ class EntityCreateCommand {
|
|
|
478
488
|
if (!authorizationResult.isAuthorized)
|
|
479
489
|
throw new EntityOperationUnauthorizedException(EntityOperationType.Create, this.services.getEntityName(), entity);
|
|
480
490
|
}
|
|
491
|
+
async versionEntity(id, entity) {
|
|
492
|
+
if (!this.isVersioningEnabled()) {
|
|
493
|
+
return;
|
|
494
|
+
}
|
|
495
|
+
const versioning = this.services.resolveVersioningProvider();
|
|
496
|
+
if (!versioning) {
|
|
497
|
+
return;
|
|
498
|
+
}
|
|
499
|
+
const contextService = this.services.resolveAuthenticationContextProvider();
|
|
500
|
+
const context = await contextService?.getContext();
|
|
501
|
+
await versioning.versionEntity({
|
|
502
|
+
operationType: EntityVersionOperation.Create,
|
|
503
|
+
entityId: id,
|
|
504
|
+
entityType: this.services.getEntityName(),
|
|
505
|
+
data: entity,
|
|
506
|
+
modifiedByUserId: context?.userId,
|
|
507
|
+
});
|
|
508
|
+
}
|
|
509
|
+
isVersioningEnabled() {
|
|
510
|
+
return (this.services.resolveEntityConfiguration().versioning?.enabled ?? false);
|
|
511
|
+
}
|
|
481
512
|
}
|
|
482
513
|
|
|
483
514
|
class EntityDeleteCommand {
|
|
@@ -490,6 +521,7 @@ class EntityDeleteCommand {
|
|
|
490
521
|
}
|
|
491
522
|
await this.authorize(id);
|
|
492
523
|
await this.services.resolveRepository().delete(id);
|
|
524
|
+
await this.versionEntity(id);
|
|
493
525
|
await this.services.resolveEventsManager().processEntityDeletedEvent(id);
|
|
494
526
|
}
|
|
495
527
|
async authorize(id) {
|
|
@@ -510,6 +542,26 @@ class EntityDeleteCommand {
|
|
|
510
542
|
if (!authorizationResult.isAuthorized)
|
|
511
543
|
throw new EntityOperationUnauthorizedException(EntityOperationType.Delete, this.services.getEntityName(), entity);
|
|
512
544
|
}
|
|
545
|
+
async versionEntity(id) {
|
|
546
|
+
if (!this.isVersioningEnabled()) {
|
|
547
|
+
return;
|
|
548
|
+
}
|
|
549
|
+
const versioning = this.services.resolveVersioningProvider();
|
|
550
|
+
if (!versioning) {
|
|
551
|
+
return;
|
|
552
|
+
}
|
|
553
|
+
const contextService = this.services.resolveAuthenticationContextProvider();
|
|
554
|
+
const context = await contextService?.getContext();
|
|
555
|
+
await versioning.versionEntity({
|
|
556
|
+
operationType: EntityVersionOperation.Delete,
|
|
557
|
+
entityId: id,
|
|
558
|
+
entityType: this.services.getEntityName(),
|
|
559
|
+
modifiedByUserId: context?.userId,
|
|
560
|
+
});
|
|
561
|
+
}
|
|
562
|
+
isVersioningEnabled() {
|
|
563
|
+
return (this.services.resolveEntityConfiguration().versioning?.enabled ?? false);
|
|
564
|
+
}
|
|
513
565
|
}
|
|
514
566
|
|
|
515
567
|
class EntitiesDeleteCommand {
|
|
@@ -522,6 +574,7 @@ class EntitiesDeleteCommand {
|
|
|
522
574
|
const deleteResult = await this.services
|
|
523
575
|
.resolveQueryBuilder()
|
|
524
576
|
.delete(params.filters, context);
|
|
577
|
+
// todo: version deleted entities
|
|
525
578
|
// todo: add entities deleted event
|
|
526
579
|
return deleteResult;
|
|
527
580
|
}
|
|
@@ -702,6 +755,7 @@ class EntityUpdateCommand {
|
|
|
702
755
|
const updatedEntity = await this.services
|
|
703
756
|
.resolveRepository()
|
|
704
757
|
.update(id, entity);
|
|
758
|
+
await this.versionEntity(id, updatedEntity);
|
|
705
759
|
await this.services
|
|
706
760
|
.resolveEventsManager()
|
|
707
761
|
.processEntityUpdatedEvent(updatedEntity);
|
|
@@ -731,6 +785,27 @@ class EntityUpdateCommand {
|
|
|
731
785
|
if (!authorizationResult.isAuthorized)
|
|
732
786
|
throw new EntityOperationUnauthorizedException(EntityOperationType.Create, this.services.getEntityName(), currentEntity);
|
|
733
787
|
}
|
|
788
|
+
async versionEntity(id, entity) {
|
|
789
|
+
if (!this.isVersioningEnabled()) {
|
|
790
|
+
return;
|
|
791
|
+
}
|
|
792
|
+
const versioning = this.services.resolveVersioningProvider();
|
|
793
|
+
if (!versioning) {
|
|
794
|
+
return;
|
|
795
|
+
}
|
|
796
|
+
const contextService = this.services.resolveAuthenticationContextProvider();
|
|
797
|
+
const context = await contextService?.getContext();
|
|
798
|
+
await versioning.versionEntity({
|
|
799
|
+
operationType: EntityVersionOperation.Update,
|
|
800
|
+
entityId: id,
|
|
801
|
+
entityType: this.services.getEntityName(),
|
|
802
|
+
data: entity,
|
|
803
|
+
modifiedByUserId: context?.userId,
|
|
804
|
+
});
|
|
805
|
+
}
|
|
806
|
+
isVersioningEnabled() {
|
|
807
|
+
return (this.services.resolveEntityConfiguration().versioning?.enabled ?? false);
|
|
808
|
+
}
|
|
734
809
|
}
|
|
735
810
|
|
|
736
811
|
class EntityUpsertCommand {
|
|
@@ -741,6 +816,7 @@ class EntityUpsertCommand {
|
|
|
741
816
|
const entity = this.adaptEntity(data);
|
|
742
817
|
await this.authorize(id, entity);
|
|
743
818
|
const updatedEntity = await this.upsertEntity(id, entity);
|
|
819
|
+
await this.versionEntity(id, updatedEntity);
|
|
744
820
|
await this.services
|
|
745
821
|
.resolveEventsManager()
|
|
746
822
|
.processEntityUpdatedEvent(updatedEntity);
|
|
@@ -776,6 +852,27 @@ class EntityUpsertCommand {
|
|
|
776
852
|
if (!authorizationResult.isAuthorized)
|
|
777
853
|
throw new EntityOperationUnauthorizedException(EntityOperationType.Create, this.services.getEntityName(), entity);
|
|
778
854
|
}
|
|
855
|
+
async versionEntity(id, entity) {
|
|
856
|
+
if (!this.isVersioningEnabled()) {
|
|
857
|
+
return;
|
|
858
|
+
}
|
|
859
|
+
const versioning = this.services.resolveVersioningProvider();
|
|
860
|
+
if (!versioning) {
|
|
861
|
+
return;
|
|
862
|
+
}
|
|
863
|
+
const contextService = this.services.resolveAuthenticationContextProvider();
|
|
864
|
+
const context = await contextService?.getContext();
|
|
865
|
+
await versioning.versionEntity({
|
|
866
|
+
operationType: EntityVersionOperation.Upsert,
|
|
867
|
+
entityId: id,
|
|
868
|
+
entityType: this.services.getEntityName(),
|
|
869
|
+
data: entity,
|
|
870
|
+
modifiedByUserId: context?.userId,
|
|
871
|
+
});
|
|
872
|
+
}
|
|
873
|
+
isVersioningEnabled() {
|
|
874
|
+
return (this.services.resolveEntityConfiguration().versioning?.enabled ?? false);
|
|
875
|
+
}
|
|
779
876
|
}
|
|
780
877
|
|
|
781
878
|
class EntityManager {
|
|
@@ -961,6 +1058,9 @@ const EntityServices = {
|
|
|
961
1058
|
Storage: {
|
|
962
1059
|
IEntityRepository: "IEntityRepository",
|
|
963
1060
|
},
|
|
1061
|
+
Settings: {
|
|
1062
|
+
IEntityConfiguration: "IEntityConfiguration",
|
|
1063
|
+
},
|
|
964
1064
|
};
|
|
965
1065
|
const GlobalServices = {
|
|
966
1066
|
Events: {
|
|
@@ -978,6 +1078,9 @@ const GlobalServices = {
|
|
|
978
1078
|
IEmailTemplatesCollection: "IEmailTemplatesCollection",
|
|
979
1079
|
IBucketProvider: "IBucketProvider",
|
|
980
1080
|
},
|
|
1081
|
+
Versioning: {
|
|
1082
|
+
IEntityVersioningProvider: "IEntityVersioningProvider",
|
|
1083
|
+
},
|
|
981
1084
|
};
|
|
982
1085
|
|
|
983
1086
|
class EntityServiceLocator {
|
|
@@ -1003,6 +1106,12 @@ class EntityServiceLocator {
|
|
|
1003
1106
|
resolveEventsManager() {
|
|
1004
1107
|
return this.services.resolveEventsManager(this.entityName);
|
|
1005
1108
|
}
|
|
1109
|
+
resolveVersioningProvider() {
|
|
1110
|
+
return this.services.resolveEntityVersioningProvider();
|
|
1111
|
+
}
|
|
1112
|
+
resolveEntityConfiguration() {
|
|
1113
|
+
return this.services.resolveEntityConfiguration(this.entityName);
|
|
1114
|
+
}
|
|
1006
1115
|
resolveReplicaSyncManager() {
|
|
1007
1116
|
return this.services.resolveReplicaSyncManager(this.entityName);
|
|
1008
1117
|
}
|
|
@@ -1133,6 +1242,12 @@ class EntitiesServiceLocator {
|
|
|
1133
1242
|
registerEmailProvider(instance) {
|
|
1134
1243
|
this.provider.register(GlobalServices.Plugins.IEmailProvider, instance);
|
|
1135
1244
|
}
|
|
1245
|
+
resolveEntityVersioningProvider() {
|
|
1246
|
+
return this.provider.resolve(GlobalServices.Versioning.IEntityVersioningProvider);
|
|
1247
|
+
}
|
|
1248
|
+
registerEntityVersioningProvider(instance) {
|
|
1249
|
+
this.provider.register(GlobalServices.Versioning.IEntityVersioningProvider, instance);
|
|
1250
|
+
}
|
|
1136
1251
|
resolveBucketProvider() {
|
|
1137
1252
|
return this.provider.resolve(GlobalServices.Plugins.IBucketProvider);
|
|
1138
1253
|
}
|
|
@@ -1165,6 +1280,12 @@ class EntitiesServiceLocator {
|
|
|
1165
1280
|
registerAuthenticationContextProvider(instance) {
|
|
1166
1281
|
this.provider.register(GlobalServices.Authentication.IAuthenticationContextProvider, instance);
|
|
1167
1282
|
}
|
|
1283
|
+
resolveEntityConfiguration(entityName) {
|
|
1284
|
+
return this.provider.resolveEntityService(EntityServices.Settings.IEntityConfiguration, entityName);
|
|
1285
|
+
}
|
|
1286
|
+
registerEntityConfiguration(entityName, instance) {
|
|
1287
|
+
return this.provider.registerEntityService(EntityServices.Settings.IEntityConfiguration, entityName, instance);
|
|
1288
|
+
}
|
|
1168
1289
|
resolveEntityManager(entityName) {
|
|
1169
1290
|
return this.provider.resolveEntityService(EntityServices.Services.IEntityManager, entityName);
|
|
1170
1291
|
}
|
|
@@ -1763,11 +1884,13 @@ class EntityManagerServiceRoot {
|
|
|
1763
1884
|
addAuthentication({ provider }) {
|
|
1764
1885
|
this.getEntitiesServicesLocator().registerAuthenticationContextProvider(provider);
|
|
1765
1886
|
}
|
|
1766
|
-
registerEntity(
|
|
1887
|
+
registerEntity(entity, repository) {
|
|
1888
|
+
const { name: entityName } = entity;
|
|
1767
1889
|
const collection = new EntityManagerServiceCollection(entityName, this.getEntitiesServicesLocator());
|
|
1768
1890
|
const services = this.getEntityServicesLocator(entityName);
|
|
1769
1891
|
collection.locator.registerEntityManager(entityName, new EntityManager(services));
|
|
1770
1892
|
collection.locator.registerEntityActions(entityName, new EntityActions(services));
|
|
1893
|
+
collection.locator.registerEntityConfiguration(entityName, entity);
|
|
1771
1894
|
collection.locator.registerRepository(entityName, repository);
|
|
1772
1895
|
const replicaManager = new EntityReplicaManager(services);
|
|
1773
1896
|
collection.locator.registerReplicaSyncManager(entityName, replicaManager);
|
|
@@ -1949,6 +2072,7 @@ const EntityManagerSymbols = {
|
|
|
1949
2072
|
EntityManager: Symbol.for("WP:ENTITY_MANAGER"),
|
|
1950
2073
|
EntityQueryBuilder: Symbol.for("WP:ENTITY_QUERY_BUILDER"),
|
|
1951
2074
|
EntitySeeder: Symbol.for("WP:ENTITY_SEEDER"),
|
|
2075
|
+
EntityVersioningProvider: Symbol.for("WP:ENTITY_VERSIONING_PROVIDER"),
|
|
1952
2076
|
EmailProvider: Symbol.for("WP:EMAIL_PROVIDER"),
|
|
1953
2077
|
EmailTemplate: Symbol.for("WP:EMAIL_TEMPLATE"),
|
|
1954
2078
|
BucketProvider: Symbol.for("WP:BUCKET_PROVIDER"),
|
|
@@ -2032,6 +2156,10 @@ const WpEventsTracker = (props = {}) => applyDecorators(Injectable(), SetMetadat
|
|
|
2032
2156
|
...props,
|
|
2033
2157
|
}));
|
|
2034
2158
|
|
|
2159
|
+
const WpEntityVersioningProvider = (props = {}) => applyDecorators(Injectable(), SetMetadata(EntityManagerSymbols.EntityVersioningProvider, {
|
|
2160
|
+
...props,
|
|
2161
|
+
}));
|
|
2162
|
+
|
|
2035
2163
|
/******************************************************************************
|
|
2036
2164
|
Copyright (c) Microsoft Corporation.
|
|
2037
2165
|
|
|
@@ -2300,7 +2428,7 @@ let EntityManagerRegistry = class EntityManagerRegistry {
|
|
|
2300
2428
|
throw new Error(`No inject type found for entity repository: ${entityName}`);
|
|
2301
2429
|
}
|
|
2302
2430
|
const repositoryInstance = (await app.resolve(repository.discoveredClass.injectType));
|
|
2303
|
-
const registration = this.container.registerEntity(
|
|
2431
|
+
const registration = this.container.registerEntity(entity.meta, repositoryInstance);
|
|
2304
2432
|
if (!serializer?.discoveredClass?.injectType) {
|
|
2305
2433
|
throw new Error(`No inject type found for entity serializer: ${entityName}`);
|
|
2306
2434
|
}
|
|
@@ -20859,6 +20987,7 @@ let EntityManagerInitializer = EntityManagerInitializer_1 = class EntityManagerI
|
|
|
20859
20987
|
await this.registerEmailTemplates();
|
|
20860
20988
|
await this.registerEmailProviders();
|
|
20861
20989
|
await this.registerEventTrackingProviders();
|
|
20990
|
+
await this.registerVersioningProviders();
|
|
20862
20991
|
await this.registerBucketProviders();
|
|
20863
20992
|
await this.executeInitializers(app);
|
|
20864
20993
|
await this.executeSeeders();
|
|
@@ -20964,6 +21093,19 @@ let EntityManagerInitializer = EntityManagerInitializer_1 = class EntityManagerI
|
|
|
20964
21093
|
.registerEventsTracker(providers[0].discoveredClass.instance);
|
|
20965
21094
|
this.logger.log(`Events tracker ${providers[0].discoveredClass.name} registered 🚜`);
|
|
20966
21095
|
}
|
|
21096
|
+
async registerVersioningProviders() {
|
|
21097
|
+
const providers = await this.discoverVersioningProviders();
|
|
21098
|
+
if (!providers.length) {
|
|
21099
|
+
return;
|
|
21100
|
+
}
|
|
21101
|
+
for (const provider of providers) {
|
|
21102
|
+
this.registry
|
|
21103
|
+
.getContainer()
|
|
21104
|
+
.getEntitiesServicesLocator()
|
|
21105
|
+
.registerEntityVersioningProvider(provider.discoveredClass.instance);
|
|
21106
|
+
this.logger.log(`Versioning provider ${provider.discoveredClass.name} registered 🚜`);
|
|
21107
|
+
}
|
|
21108
|
+
}
|
|
20967
21109
|
async registerEmailProviders() {
|
|
20968
21110
|
const providers = await this.discoverEmailProviders();
|
|
20969
21111
|
if (!providers.length) {
|
|
@@ -21006,6 +21148,9 @@ let EntityManagerInitializer = EntityManagerInitializer_1 = class EntityManagerI
|
|
|
21006
21148
|
async discoverRepositories() {
|
|
21007
21149
|
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.EntityRepository);
|
|
21008
21150
|
}
|
|
21151
|
+
async discoverVersioningProviders() {
|
|
21152
|
+
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.EntityVersioningProvider);
|
|
21153
|
+
}
|
|
21009
21154
|
async discoverQueryBuilders() {
|
|
21010
21155
|
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.EntityQueryBuilder);
|
|
21011
21156
|
}
|
|
@@ -27396,5 +27541,5 @@ InMemoryEmailProvider = __decorate([
|
|
|
27396
27541
|
WpEmailProvider("in-memory")
|
|
27397
27542
|
], InMemoryEmailProvider);
|
|
27398
27543
|
|
|
27399
|
-
export { AUTHENTICATION_EVENTS_NAMESPACE, AppExceptionsFilterBase, AppHashingService, AppInMemorySettings, AppSessionMiddleware, AppSessionService, AuthGuard, Authenticated, AuthenticationEmailTemplates, AuthenticationError, AuthenticationEvents, AuthenticationExtensionSymbols, AuthenticationModule, AuthenticationService, AwsBucketModule, AwsEmailModule, AwsS2BucketError, AwsS3BucketProvider, AwsSesEmailTemplate, BooleanFacet, BooleanFacetItem, BucketItemType, EmailService, EntityManagerConfigurationError, EntityManagerException, EntityManagerInitializer, EntityManagerModule, EntityManagerRegistry, EntityManagerService, EntityManagerSymbols, EntityManagerUnauthorizedException, EntityNotFoundException, EntityOperationType, EntityOperationUnauthorizedException, EntitySeeder, EntitySerializationFormat, EntitySerializer, EventsService, InMemoryBucketProvider, InMemoryEmailProvider, InvalidCredentialsError, MemberOf, MissingEntityIdError, ModulesContainerProvider, MultiTenancyModule, MultipleEntitiesFoundException, NestEntityActions, NestEntityAuthorizationMiddleware, NestEntityManager, NestEntitySerializer, NestPipelineTemplate, NestTypeOrmEntitySeeder, NestTypeOrmQueryBuilder, NestTypeOrmRepository, NumericFacet, NumericFacetItem, OperationTokenMismatchError, PLATFORM_EVENT_NAMESPACE, PipelineController, PipelineErrorType, PipelineStatus, PipelineStepErrorType, PipelinesBuilder, PipelinesRunner, PlatformEvents, Public, QueryBuilderBase, ReplicationMode, Roles, SendgridEmailModule, SendgridEmailTemplate, SortDirection, StringFacet, StringFacetItem, TrackingService, UserCreationError, UserRegistrationError, WpAppInitializer, WpAwsSesEmailTemplate, WpBucketProvider, WpEmailTemplate, WpEntity, WpEntityActions, WpEntityAdapter, WpEntityAuthMiddleware, WpEntityConnector, WpEntityConverter, WpEntityManager, WpEntityQueryBuilder, WpEntityRepository, WpEntitySeeder, WpEntitySerializer, WpEventsTracker, WpPipeline, WpRolesService, WpSendgridEmailTemplate, WpUserRolesService, WpUserService, buildRolesGuard, createContainer, createExpressFileResponse, getLocalizedText, newUuid, renderHandlebarsTemplate, toEntitiesImportInput };
|
|
27544
|
+
export { AUTHENTICATION_EVENTS_NAMESPACE, AppExceptionsFilterBase, AppHashingService, AppInMemorySettings, AppSessionMiddleware, AppSessionService, AuthGuard, Authenticated, AuthenticationEmailTemplates, AuthenticationError, AuthenticationEvents, AuthenticationExtensionSymbols, AuthenticationModule, AuthenticationService, AwsBucketModule, AwsEmailModule, AwsS2BucketError, AwsS3BucketProvider, AwsSesEmailTemplate, BooleanFacet, BooleanFacetItem, BucketItemType, EmailService, EntityManagerConfigurationError, EntityManagerException, EntityManagerInitializer, EntityManagerModule, EntityManagerRegistry, EntityManagerService, EntityManagerSymbols, EntityManagerUnauthorizedException, EntityNotFoundException, EntityOperationType, EntityOperationUnauthorizedException, EntitySeeder, EntitySerializationFormat, EntitySerializer, EntityVersionOperation, EventsService, InMemoryBucketProvider, InMemoryEmailProvider, InvalidCredentialsError, MemberOf, MissingEntityIdError, ModulesContainerProvider, MultiTenancyModule, MultipleEntitiesFoundException, NestEntityActions, NestEntityAuthorizationMiddleware, NestEntityManager, NestEntitySerializer, NestPipelineTemplate, NestTypeOrmEntitySeeder, NestTypeOrmQueryBuilder, NestTypeOrmRepository, NumericFacet, NumericFacetItem, OperationTokenMismatchError, PLATFORM_EVENT_NAMESPACE, PipelineController, PipelineErrorType, PipelineStatus, PipelineStepErrorType, PipelinesBuilder, PipelinesRunner, PlatformEvents, Public, QueryBuilderBase, ReplicationMode, Roles, SendgridEmailModule, SendgridEmailTemplate, SortDirection, StringFacet, StringFacetItem, TrackingService, UserCreationError, UserRegistrationError, WpAppInitializer, WpAwsSesEmailTemplate, WpBucketProvider, WpEmailTemplate, WpEntity, WpEntityActions, WpEntityAdapter, WpEntityAuthMiddleware, WpEntityConnector, WpEntityConverter, WpEntityManager, WpEntityQueryBuilder, WpEntityRepository, WpEntitySeeder, WpEntitySerializer, WpEntityVersioningProvider, WpEventsTracker, WpPipeline, WpRolesService, WpSendgridEmailTemplate, WpUserRolesService, WpUserService, buildRolesGuard, createContainer, createExpressFileResponse, getLocalizedText, newUuid, renderHandlebarsTemplate, toEntitiesImportInput };
|
|
27400
27545
|
//# sourceMappingURL=index.js.map
|