@punks/backend-entity-manager 0.0.50 → 0.0.51
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 +44 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/abstractions/index.d.ts +1 -0
- package/dist/cjs/types/abstractions/tracking.d.ts +9 -0
- package/dist/cjs/types/events/index.d.ts +1 -1
- package/dist/cjs/types/events/{globalEvents.d.ts → platformEvents.d.ts} +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities/eventLog.entity.d.ts +10 -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/tracking.d.ts +4 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/events/consts.d.ts +7 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/events/index.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/events/types.d.ts +26 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/index.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/processors/initializer/index.d.ts +2 -0
- package/dist/cjs/types/providers/services.d.ts +3 -1
- package/dist/cjs/types/symbols/ioc.d.ts +1 -0
- package/dist/esm/index.js +42 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/abstractions/index.d.ts +1 -0
- package/dist/esm/types/abstractions/tracking.d.ts +9 -0
- package/dist/esm/types/events/index.d.ts +1 -1
- package/dist/esm/types/events/{globalEvents.d.ts → platformEvents.d.ts} +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/database/core/entities/eventLog.entity.d.ts +10 -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/tracking.d.ts +4 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/events/consts.d.ts +7 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/events/index.d.ts +2 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/events/types.d.ts +26 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/index.d.ts +2 -0
- package/dist/esm/types/platforms/nest/processors/initializer/index.d.ts +2 -0
- package/dist/esm/types/providers/services.d.ts +3 -1
- package/dist/esm/types/symbols/ioc.d.ts +1 -0
- package/dist/index.d.ts +67 -12
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -87,9 +87,9 @@ exports.SortDirection = void 0;
|
|
|
87
87
|
SortDirection["Desc"] = "desc";
|
|
88
88
|
})(exports.SortDirection || (exports.SortDirection = {}));
|
|
89
89
|
|
|
90
|
-
const
|
|
90
|
+
const PlatformEvents = {
|
|
91
91
|
Messaging: {
|
|
92
|
-
EmailSent: "messaging:email.sent",
|
|
92
|
+
EmailSent: "platform:messaging:email.sent",
|
|
93
93
|
},
|
|
94
94
|
};
|
|
95
95
|
|
|
@@ -127,6 +127,7 @@ class NestEntityManager {
|
|
|
127
127
|
|
|
128
128
|
const EntityManagerSymbols = {
|
|
129
129
|
AppInitializer: Symbol.for("WP:APP_INITIALIZER"),
|
|
130
|
+
EventsTracker: Symbol.for("WP:EVENTS_TRACKER"),
|
|
130
131
|
Entity: Symbol.for("WP:ENTITY"),
|
|
131
132
|
EntityActions: Symbol.for("WP:ENTITY_ACTIONS"),
|
|
132
133
|
EntityAdapter: Symbol.for("WP:ENTITY_ADAPTER"),
|
|
@@ -194,6 +195,10 @@ const WpEntityQueryBuilder = (entityName, props = {}) => common.applyDecorators(
|
|
|
194
195
|
...props,
|
|
195
196
|
}));
|
|
196
197
|
|
|
198
|
+
const WpEventsTracker = (props = {}) => common.applyDecorators(common.Injectable(), common.SetMetadata(EntityManagerSymbols.EventsTracker, {
|
|
199
|
+
...props,
|
|
200
|
+
}));
|
|
201
|
+
|
|
197
202
|
const AuthenticationExtensionSymbols = {
|
|
198
203
|
UserService: Symbol.for("WP.EXT:AUTHENTICATION.USER_SERVICE"),
|
|
199
204
|
};
|
|
@@ -225,6 +230,14 @@ class OperationTokenMismatchError extends AuthenticationError {
|
|
|
225
230
|
}
|
|
226
231
|
}
|
|
227
232
|
|
|
233
|
+
const AuthenticationEvents = {
|
|
234
|
+
UserLogin: "authentication:user.login",
|
|
235
|
+
UserRegistrationStarted: "authentication:user.registrationStarted",
|
|
236
|
+
UserRegistrationCompleted: "authentication:user.registrationCompleted",
|
|
237
|
+
UserPasswordResetStarted: "authentication:user.passwordResetStarted",
|
|
238
|
+
UserPasswordResetCompleted: "authentication:user.passwordResetCompleted",
|
|
239
|
+
};
|
|
240
|
+
|
|
228
241
|
/******************************************************************************
|
|
229
242
|
Copyright (c) Microsoft Corporation.
|
|
230
243
|
|
|
@@ -658,6 +671,7 @@ const EntityServices = {
|
|
|
658
671
|
const GlobalServices = {
|
|
659
672
|
Events: {
|
|
660
673
|
IEventEmitter: "IEventEmitter",
|
|
674
|
+
IEventsTracker: "IEventsTracker",
|
|
661
675
|
},
|
|
662
676
|
Authentication: {
|
|
663
677
|
IAuthenticationContextProvider: "IAuthenticationContextProvider",
|
|
@@ -785,6 +799,12 @@ class EntitiesServiceLocator {
|
|
|
785
799
|
registerEmailProvider(instance) {
|
|
786
800
|
this.provider.register(GlobalServices.Messaging.IEmailProvider, instance);
|
|
787
801
|
}
|
|
802
|
+
resolveEventsTracker() {
|
|
803
|
+
return this.provider.resolve(GlobalServices.Events.IEventsTracker);
|
|
804
|
+
}
|
|
805
|
+
registerEventsTracker(instance) {
|
|
806
|
+
this.provider.register(GlobalServices.Events.IEventsTracker, instance);
|
|
807
|
+
}
|
|
788
808
|
resolveEmailTemplatesCollection() {
|
|
789
809
|
return this.provider.resolve(GlobalServices.Messaging.IEmailTemplatesCollection);
|
|
790
810
|
}
|
|
@@ -19555,6 +19575,7 @@ exports.EntityManagerInitializer = EntityManagerInitializer_1 = class EntityMana
|
|
|
19555
19575
|
}
|
|
19556
19576
|
await this.registerEmailTemplates();
|
|
19557
19577
|
await this.registerEmailProviders();
|
|
19578
|
+
await this.registerEventTrackingProviders();
|
|
19558
19579
|
await this.executeInitializers(app);
|
|
19559
19580
|
this.logger.log("Entity manager initialization completed 🚀");
|
|
19560
19581
|
}
|
|
@@ -19608,6 +19629,19 @@ exports.EntityManagerInitializer = EntityManagerInitializer_1 = class EntityMana
|
|
|
19608
19629
|
this.logger.log(`Entity manager app initializer ${initializer.discoveredClass.name} initialized 💪`);
|
|
19609
19630
|
}
|
|
19610
19631
|
}
|
|
19632
|
+
async registerEventTrackingProviders() {
|
|
19633
|
+
const providers = await this.discoverEventTrackingProviders();
|
|
19634
|
+
if (!providers.length) {
|
|
19635
|
+
this.logger.warn("No events tracker ⚠️");
|
|
19636
|
+
return;
|
|
19637
|
+
}
|
|
19638
|
+
// todo: handle multiple trackers
|
|
19639
|
+
this.registry
|
|
19640
|
+
.getContainer()
|
|
19641
|
+
.getEntitiesServicesLocator()
|
|
19642
|
+
.registerEventsTracker(providers[0].discoveredClass.instance);
|
|
19643
|
+
this.logger.log(`Events tracker ${providers[0].discoveredClass.name} registered 🚜`);
|
|
19644
|
+
}
|
|
19611
19645
|
async registerEmailProviders() {
|
|
19612
19646
|
const providers = await this.discoverEmailProviders();
|
|
19613
19647
|
if (!providers.length) {
|
|
@@ -19663,6 +19697,9 @@ exports.EntityManagerInitializer = EntityManagerInitializer_1 = class EntityMana
|
|
|
19663
19697
|
async discoverEmailProviders() {
|
|
19664
19698
|
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.EmailProvider);
|
|
19665
19699
|
}
|
|
19700
|
+
async discoverEventTrackingProviders() {
|
|
19701
|
+
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.EventsTracker);
|
|
19702
|
+
}
|
|
19666
19703
|
};
|
|
19667
19704
|
exports.EntityManagerInitializer = EntityManagerInitializer_1 = __decorate([
|
|
19668
19705
|
common.Injectable(),
|
|
@@ -25103,7 +25140,7 @@ let SendgridEmailProvider = class SendgridEmailProvider {
|
|
|
25103
25140
|
});
|
|
25104
25141
|
}
|
|
25105
25142
|
await this.client.send(request);
|
|
25106
|
-
await this.eventsService.emitEvent(
|
|
25143
|
+
await this.eventsService.emitEvent(PlatformEvents.Messaging.EmailSent, {
|
|
25107
25144
|
from: request.from,
|
|
25108
25145
|
to: request.to,
|
|
25109
25146
|
cc: request.cc,
|
|
@@ -25144,7 +25181,7 @@ let SendgridEmailProvider = class SendgridEmailProvider {
|
|
|
25144
25181
|
});
|
|
25145
25182
|
}
|
|
25146
25183
|
await this.client.send(request);
|
|
25147
|
-
await this.eventsService.emitEvent(
|
|
25184
|
+
await this.eventsService.emitEvent(PlatformEvents.Messaging.EmailSent, {
|
|
25148
25185
|
from: request.from,
|
|
25149
25186
|
to: request.to,
|
|
25150
25187
|
cc: request.cc,
|
|
@@ -25227,6 +25264,7 @@ exports.AppExceptionsFilterBase = AppExceptionsFilterBase;
|
|
|
25227
25264
|
exports.AppInMemorySettings = AppInMemorySettings;
|
|
25228
25265
|
exports.AuthenticationEmailTemplates = AuthenticationEmailTemplates;
|
|
25229
25266
|
exports.AuthenticationError = AuthenticationError;
|
|
25267
|
+
exports.AuthenticationEvents = AuthenticationEvents;
|
|
25230
25268
|
exports.AuthenticationExtensionSymbols = AuthenticationExtensionSymbols;
|
|
25231
25269
|
exports.AwsSesEmailTemplate = AwsSesEmailTemplate;
|
|
25232
25270
|
exports.EntityManagerConfigurationError = EntityManagerConfigurationError;
|
|
@@ -25235,7 +25273,6 @@ exports.EntityManagerSymbols = EntityManagerSymbols;
|
|
|
25235
25273
|
exports.EntityManagerUnauthorizedException = EntityManagerUnauthorizedException;
|
|
25236
25274
|
exports.EntityNotFoundException = EntityNotFoundException;
|
|
25237
25275
|
exports.EntityOperationUnauthorizedException = EntityOperationUnauthorizedException;
|
|
25238
|
-
exports.GlobalEvents = GlobalEvents;
|
|
25239
25276
|
exports.InvalidCredentialsError = InvalidCredentialsError;
|
|
25240
25277
|
exports.MultipleEntitiesFoundException = MultipleEntitiesFoundException;
|
|
25241
25278
|
exports.NestEntityActions = NestEntityActions;
|
|
@@ -25244,6 +25281,7 @@ exports.NestEntityManager = NestEntityManager;
|
|
|
25244
25281
|
exports.NestTypeOrmQueryBuilder = NestTypeOrmQueryBuilder;
|
|
25245
25282
|
exports.NestTypeOrmRepository = NestTypeOrmRepository;
|
|
25246
25283
|
exports.OperationTokenMismatchError = OperationTokenMismatchError;
|
|
25284
|
+
exports.PlatformEvents = PlatformEvents;
|
|
25247
25285
|
exports.QueryBuilderBase = QueryBuilderBase;
|
|
25248
25286
|
exports.SendgridEmailTemplate = SendgridEmailTemplate;
|
|
25249
25287
|
exports.WpAppInitializer = WpAppInitializer;
|
|
@@ -25258,6 +25296,7 @@ exports.WpEntityConverter = WpEntityConverter;
|
|
|
25258
25296
|
exports.WpEntityManager = WpEntityManager;
|
|
25259
25297
|
exports.WpEntityQueryBuilder = WpEntityQueryBuilder;
|
|
25260
25298
|
exports.WpEntityRepository = WpEntityRepository;
|
|
25299
|
+
exports.WpEventsTracker = WpEventsTracker;
|
|
25261
25300
|
exports.WpSendgridEmailTemplate = WpSendgridEmailTemplate;
|
|
25262
25301
|
exports.WpUserService = WpUserService;
|
|
25263
25302
|
exports.getLocalizedText = getLocalizedText;
|