@punks/backend-entity-manager 0.0.340 → 0.0.341
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 +38 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/abstractions/email.d.ts +3 -0
- package/dist/cjs/types/platforms/nest/decorators/email.d.ts +3 -0
- package/dist/cjs/types/platforms/nest/decorators/symbols.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/processors/initializer/index.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/services/email/index.d.ts +1 -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 +38 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/abstractions/email.d.ts +3 -0
- package/dist/esm/types/platforms/nest/decorators/email.d.ts +3 -0
- package/dist/esm/types/platforms/nest/decorators/symbols.d.ts +1 -0
- package/dist/esm/types/platforms/nest/processors/initializer/index.d.ts +2 -0
- package/dist/esm/types/platforms/nest/services/email/index.d.ts +1 -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 +10 -1
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -1343,6 +1343,7 @@ const GlobalServices = {
|
|
|
1343
1343
|
ICacheInstance: "ICacheInstance",
|
|
1344
1344
|
IEmailProvider: "IEmailProvider",
|
|
1345
1345
|
IEmailLogger: "IEmailLogger",
|
|
1346
|
+
IEmailTemplateMiddleware: "IEmailTemplateMiddleware",
|
|
1346
1347
|
IEmailTemplatesCollection: "IEmailTemplatesCollection",
|
|
1347
1348
|
IBucketProvider: "IBucketProvider",
|
|
1348
1349
|
ISecretsProvider: "ISecretsProvider",
|
|
@@ -1644,6 +1645,14 @@ class EntitiesServiceLocator {
|
|
|
1644
1645
|
registerEmailTemplatesCollection(instance) {
|
|
1645
1646
|
this.provider.register(GlobalServices.Plugins.IEmailTemplatesCollection, instance);
|
|
1646
1647
|
}
|
|
1648
|
+
resolveEmailTemplateMiddleware() {
|
|
1649
|
+
return this.provider.resolve(GlobalServices.Plugins.IEmailTemplateMiddleware, {
|
|
1650
|
+
optional: true,
|
|
1651
|
+
});
|
|
1652
|
+
}
|
|
1653
|
+
registerEmailTemplateMiddleware(instance) {
|
|
1654
|
+
this.provider.register(GlobalServices.Plugins.IEmailTemplateMiddleware, instance);
|
|
1655
|
+
}
|
|
1647
1656
|
resolveEmailLogger() {
|
|
1648
1657
|
return this.provider.resolve(GlobalServices.Plugins.IEmailLogger);
|
|
1649
1658
|
}
|
|
@@ -3982,6 +3991,7 @@ const EntityManagerSymbols = {
|
|
|
3982
3991
|
EmailProvider: Symbol.for("WP:EMAIL_PROVIDER"),
|
|
3983
3992
|
EmailTemplate: Symbol.for("WP:EMAIL_TEMPLATE"),
|
|
3984
3993
|
EmailLogger: Symbol.for("WP:EMAIL_LOGGER"),
|
|
3994
|
+
EmailTemplateMiddleware: Symbol.for("WP:EMAIL_TEMPLATE_MIDDLEWARE"),
|
|
3985
3995
|
BucketProvider: Symbol.for("WP:BUCKET_PROVIDER"),
|
|
3986
3996
|
MediaProvider: Symbol.for("WP:MEDIA_PROVIDER"),
|
|
3987
3997
|
MediaReferenceRepository: Symbol.for("WP:MEDIA_REFERENCE_REPOSITORY"),
|
|
@@ -22424,8 +22434,13 @@ exports.EmailService = class EmailService {
|
|
|
22424
22434
|
}
|
|
22425
22435
|
async sendTemplatedEmail(input) {
|
|
22426
22436
|
const template = this.getTemplate(input.templateId);
|
|
22427
|
-
|
|
22428
|
-
|
|
22437
|
+
const transformedPayload = this.templateMiddleware?.processPayload(input.payload) ?? input.payload;
|
|
22438
|
+
const sendInput = {
|
|
22439
|
+
...input,
|
|
22440
|
+
payload: transformedPayload,
|
|
22441
|
+
};
|
|
22442
|
+
await this.provider.sendTemplatedEmail(sendInput, template);
|
|
22443
|
+
await this.logger.logTemplatedEmail(sendInput);
|
|
22429
22444
|
}
|
|
22430
22445
|
async sendHtmlEmail(input) {
|
|
22431
22446
|
await this.provider.sendHtmlEmail(input);
|
|
@@ -22438,6 +22453,12 @@ exports.EmailService = class EmailService {
|
|
|
22438
22453
|
}
|
|
22439
22454
|
return template;
|
|
22440
22455
|
}
|
|
22456
|
+
get templateMiddleware() {
|
|
22457
|
+
return this.registry
|
|
22458
|
+
.getContainer()
|
|
22459
|
+
.getEntitiesServicesLocator()
|
|
22460
|
+
.resolveEmailTemplateMiddleware();
|
|
22461
|
+
}
|
|
22441
22462
|
get templates() {
|
|
22442
22463
|
return this.registry
|
|
22443
22464
|
.getContainer()
|
|
@@ -23504,6 +23525,7 @@ exports.EntityManagerInitializer = EntityManagerInitializer_1 = class EntityMana
|
|
|
23504
23525
|
await this.registerEventTrackingProviders();
|
|
23505
23526
|
await this.registerVersioningProviders();
|
|
23506
23527
|
await this.registerEmailLogger();
|
|
23528
|
+
await this.registerEmailTemplateMiddleware();
|
|
23507
23529
|
await this.registerFilesReferenceRepositoryProviders();
|
|
23508
23530
|
await this.registerFileProviders();
|
|
23509
23531
|
await this.registerMediaProviders();
|
|
@@ -23753,6 +23775,17 @@ exports.EntityManagerInitializer = EntityManagerInitializer_1 = class EntityMana
|
|
|
23753
23775
|
.registerEmailLogger(loggers[0].discoveredClass.instance);
|
|
23754
23776
|
this.logger.log(`Email logger ${loggers[0].discoveredClass.name} registered 🚜`);
|
|
23755
23777
|
}
|
|
23778
|
+
async registerEmailTemplateMiddleware() {
|
|
23779
|
+
const loggers = await this.discoverEmailTemplateMiddleware();
|
|
23780
|
+
if (!loggers.length) {
|
|
23781
|
+
return;
|
|
23782
|
+
}
|
|
23783
|
+
this.registry
|
|
23784
|
+
.getContainer()
|
|
23785
|
+
.getEntitiesServicesLocator()
|
|
23786
|
+
.registerEmailTemplateMiddleware(loggers[0].discoveredClass.instance);
|
|
23787
|
+
this.logger.log(`Email template middleware ${loggers[0].discoveredClass.name} registered 🚜`);
|
|
23788
|
+
}
|
|
23756
23789
|
async registerVersioningProviders() {
|
|
23757
23790
|
const providers = await this.discoverVersioningProviders();
|
|
23758
23791
|
if (!providers.length) {
|
|
@@ -23868,6 +23901,9 @@ exports.EntityManagerInitializer = EntityManagerInitializer_1 = class EntityMana
|
|
|
23868
23901
|
async discoverEmailLogger() {
|
|
23869
23902
|
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.EmailLogger);
|
|
23870
23903
|
}
|
|
23904
|
+
async discoverEmailTemplateMiddleware() {
|
|
23905
|
+
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.EmailTemplateMiddleware);
|
|
23906
|
+
}
|
|
23871
23907
|
async discoverOperationLockService() {
|
|
23872
23908
|
return await this.discover.providersWithMetaAtKey(EntityManagerSymbols.OperationLockService);
|
|
23873
23909
|
}
|