@flusys/nestjs-email 4.1.1 → 5.0.1
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/README.md +93 -384
- package/cjs/config/message-keys.js +1 -38
- package/cjs/controllers/email-template.controller.js +9 -3
- package/cjs/docs/email-swagger.config.js +5 -3
- package/cjs/dtos/email-template.dto.js +1 -21
- package/cjs/entities/email-config.entity.js +2 -1
- package/cjs/entities/email-template.entity.js +3 -8
- package/cjs/providers/email-factory.service.js +5 -5
- package/cjs/providers/mailgun-provider.js +5 -2
- package/cjs/providers/sendgrid-provider.js +5 -2
- package/cjs/services/email-provider-config.service.js +0 -10
- package/cjs/services/email-template.service.js +0 -13
- package/config/message-keys.d.ts +0 -68
- package/dtos/email-template.dto.d.ts +0 -2
- package/entities/email-template.entity.d.ts +0 -1
- package/fesm/config/message-keys.js +1 -33
- package/fesm/controllers/email-template.controller.js +10 -4
- package/fesm/docs/email-swagger.config.js +5 -3
- package/fesm/dtos/email-template.dto.js +1 -21
- package/fesm/entities/email-config.entity.js +2 -1
- package/fesm/entities/email-template.entity.js +3 -8
- package/fesm/providers/email-factory.service.js +5 -5
- package/fesm/providers/mailgun-provider.js +5 -2
- package/fesm/providers/sendgrid-provider.js +5 -2
- package/fesm/services/email-provider-config.service.js +0 -10
- package/fesm/services/email-template.service.js +0 -13
- package/interfaces/email-template.interface.d.ts +0 -1
- package/package.json +3 -3
- package/services/email-provider-config.service.d.ts +0 -2
- package/services/email-template.service.d.ts +0 -1
|
@@ -11,8 +11,8 @@ function _define_property(obj, key, value) {
|
|
|
11
11
|
}
|
|
12
12
|
return obj;
|
|
13
13
|
}
|
|
14
|
-
import { InternalServerErrorException } from '@nestjs/common';
|
|
15
14
|
import { SYSTEM_MESSAGES } from '@flusys/nestjs-shared/constants';
|
|
15
|
+
import { InternalServerErrorException } from '@nestjs/common';
|
|
16
16
|
export class SendGridProvider {
|
|
17
17
|
async initialize(config) {
|
|
18
18
|
this.apiKey = config.apiKey;
|
|
@@ -24,7 +24,10 @@ export class SendGridProvider {
|
|
|
24
24
|
} catch {
|
|
25
25
|
throw new InternalServerErrorException({
|
|
26
26
|
message: 'SendGrid initialization failed. Install: npm install @sendgrid/mail',
|
|
27
|
-
messageKey: SYSTEM_MESSAGES.SDK_NOT_INSTALLED
|
|
27
|
+
messageKey: SYSTEM_MESSAGES.SDK_NOT_INSTALLED,
|
|
28
|
+
messageVariables: {
|
|
29
|
+
sdk: 'sendgrid'
|
|
30
|
+
}
|
|
28
31
|
});
|
|
29
32
|
}
|
|
30
33
|
}
|
|
@@ -108,16 +108,6 @@ export class EmailProviderConfigService extends RequestScopedApiService {
|
|
|
108
108
|
}
|
|
109
109
|
});
|
|
110
110
|
}
|
|
111
|
-
async getConfigByProvider(provider, user) {
|
|
112
|
-
await this.ensureRepositoryInitialized();
|
|
113
|
-
const where = buildCompanyWhereCondition({
|
|
114
|
-
provider,
|
|
115
|
-
isActive: true
|
|
116
|
-
}, this.emailConfig.isCompanyFeatureEnabled(), user);
|
|
117
|
-
return this.repository.find({
|
|
118
|
-
where
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
111
|
constructor(cacheManager, utilsService, emailConfig, dataSourceProvider){
|
|
122
112
|
super('emailConfig', null, cacheManager, utilsService, EmailProviderConfigService.name, true, 'email'), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "emailConfig", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.emailConfig = emailConfig, this.dataSourceProvider = dataSourceProvider;
|
|
123
113
|
}
|
|
@@ -44,7 +44,6 @@ const DEFAULT_SELECT_FIELDS = [
|
|
|
44
44
|
'schemaVersion',
|
|
45
45
|
'isActive',
|
|
46
46
|
'isHtml',
|
|
47
|
-
'metadata',
|
|
48
47
|
'createdAt',
|
|
49
48
|
'updatedAt'
|
|
50
49
|
];
|
|
@@ -104,18 +103,6 @@ export class EmailTemplateService extends RequestScopedApiService {
|
|
|
104
103
|
where
|
|
105
104
|
});
|
|
106
105
|
}
|
|
107
|
-
async getActiveTemplates(user) {
|
|
108
|
-
await this.ensureRepositoryInitialized();
|
|
109
|
-
const where = buildCompanyWhereCondition({
|
|
110
|
-
isActive: true
|
|
111
|
-
}, this.emailConfig.isCompanyFeatureEnabled(), user);
|
|
112
|
-
return this.repository.find({
|
|
113
|
-
where,
|
|
114
|
-
order: {
|
|
115
|
-
name: 'ASC'
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
106
|
// ─── Private Helpers ────────────────────────────────────────────────────────
|
|
120
107
|
async incrementSchemaVersionIfChanged(dto, entity) {
|
|
121
108
|
const updateDto = dto;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flusys/nestjs-email",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.1",
|
|
4
4
|
"description": "Modular email package with SMTP, SendGrid, and Mailgun providers",
|
|
5
5
|
"main": "cjs/index.js",
|
|
6
6
|
"module": "fesm/index.js",
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
}
|
|
106
106
|
},
|
|
107
107
|
"dependencies": {
|
|
108
|
-
"@flusys/nestjs-core": "
|
|
109
|
-
"@flusys/nestjs-shared": "
|
|
108
|
+
"@flusys/nestjs-core": "5.0.1",
|
|
109
|
+
"@flusys/nestjs-shared": "5.0.1"
|
|
110
110
|
}
|
|
111
111
|
}
|
|
@@ -6,7 +6,6 @@ import { EntityTarget, Repository, SelectQueryBuilder } from 'typeorm';
|
|
|
6
6
|
import { EmailConfigService } from './email-config.service';
|
|
7
7
|
import { CreateEmailConfigDto, UpdateEmailConfigDto } from '../dtos';
|
|
8
8
|
import { EmailConfig, EmailConfigBase } from '../entities';
|
|
9
|
-
import { EmailProviderTypeEnum } from '../enums';
|
|
10
9
|
import { IEmailConfig } from '../interfaces';
|
|
11
10
|
import { EmailDataSourceProvider } from './email-datasource.provider';
|
|
12
11
|
export declare class EmailProviderConfigService extends RequestScopedApiService<CreateEmailConfigDto, UpdateEmailConfigDto, IEmailConfig, EmailConfigBase, Repository<EmailConfigBase>> {
|
|
@@ -28,5 +27,4 @@ export declare class EmailProviderConfigService extends RequestScopedApiService<
|
|
|
28
27
|
}>;
|
|
29
28
|
findByIdDirect(id: string): Promise<EmailConfigBase | null>;
|
|
30
29
|
getDefaultConfig(user?: ILoggedUserInfo): Promise<EmailConfigBase | null>;
|
|
31
|
-
getConfigByProvider(provider: EmailProviderTypeEnum, user?: ILoggedUserInfo): Promise<EmailConfigBase[]>;
|
|
32
30
|
}
|
|
@@ -27,6 +27,5 @@ export declare class EmailTemplateService extends RequestScopedApiService<Create
|
|
|
27
27
|
}>;
|
|
28
28
|
findByIdDirect(id: string): Promise<EmailTemplateBase | null>;
|
|
29
29
|
findBySlug(slug: string, user?: ILoggedUserInfo): Promise<EmailTemplateBase | null>;
|
|
30
|
-
getActiveTemplates(user?: ILoggedUserInfo): Promise<EmailTemplateBase[]>;
|
|
31
30
|
private incrementSchemaVersionIfChanged;
|
|
32
31
|
}
|