rez_core 3.1.142 → 3.1.144
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/module/integration/service/integration.service.d.ts +3 -1
- package/dist/module/integration/service/integration.service.js +16 -3
- package/dist/module/integration/service/integration.service.js.map +1 -1
- package/dist/module/integration/strategies/email/sendgrid-api.strategy.js +1 -4
- package/dist/module/integration/strategies/email/sendgrid-api.strategy.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/module/integration/service/integration.service.ts +14 -1
- package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +1 -3
package/package.json
CHANGED
|
@@ -18,8 +18,10 @@ import {
|
|
|
18
18
|
UpdateUserIntegrationDto,
|
|
19
19
|
} from '../dto/create-config.dto';
|
|
20
20
|
import { FieldMapperService } from '../../mapper/service/field-mapper.service';
|
|
21
|
-
import { COMM_TEMPLATE } from '../../../constant/global.constant';
|
|
21
|
+
import { COMM_TEMPLATE, ENTITYTYPE_MEDIA } from '../../../constant/global.constant';
|
|
22
22
|
import { EntityServiceImpl } from '../../meta/service/entity-service-impl.service';
|
|
23
|
+
import { MediaDataService } from '../../meta/service/media-data.service';
|
|
24
|
+
import axios from 'axios';
|
|
23
25
|
|
|
24
26
|
export interface SendMessageDto {
|
|
25
27
|
levelId: number;
|
|
@@ -87,6 +89,7 @@ export class IntegrationService {
|
|
|
87
89
|
private readonly gmailApiStrategy: GmailApiStrategy,
|
|
88
90
|
private readonly sendGridApiStrategy: SendGridApiStrategy,
|
|
89
91
|
private readonly configService: ConfigService,
|
|
92
|
+
private readonly mediaService: MediaDataService,
|
|
90
93
|
@Inject('FieldMapperService') private readonly fieldMapperService: FieldMapperService,
|
|
91
94
|
private readonly entityService: EntityServiceImpl,
|
|
92
95
|
@Inject(forwardRef(() => IntegrationQueueService))
|
|
@@ -961,6 +964,7 @@ export class IntegrationService {
|
|
|
961
964
|
templateId: externalTemplateId,
|
|
962
965
|
variables,
|
|
963
966
|
richText,
|
|
967
|
+
subject
|
|
964
968
|
};
|
|
965
969
|
|
|
966
970
|
// Handle user integration if user_id provided
|
|
@@ -1314,6 +1318,15 @@ export class IntegrationService {
|
|
|
1314
1318
|
if (!commTemplate.template_id) {
|
|
1315
1319
|
let richText = commTemplate.rich_text;
|
|
1316
1320
|
|
|
1321
|
+
if (!richText) {
|
|
1322
|
+
if (commTemplate.markup_id) {
|
|
1323
|
+
let url = await this.mediaService.getMediaDownloadUrl(commTemplate.markup_id, {}, 60000);
|
|
1324
|
+
if (url) {
|
|
1325
|
+
richText = await axios.get(url.signedUrl, { responseType: 'text' });
|
|
1326
|
+
}
|
|
1327
|
+
}
|
|
1328
|
+
}
|
|
1329
|
+
|
|
1317
1330
|
richText = richText.replace(/\{\{(\w+)\}\}/g, (match, key) => {
|
|
1318
1331
|
const value = variables[key];
|
|
1319
1332
|
return value !== undefined ? String(value) : match;
|
|
@@ -166,10 +166,8 @@ export class SendGridApiStrategy implements IntegrationStrategy {
|
|
|
166
166
|
} catch (error) {
|
|
167
167
|
let errorMessage = 'Failed to fetch verified senders';
|
|
168
168
|
|
|
169
|
-
if (error.response?.status === 401) {
|
|
169
|
+
if (error.response?.status === 401 || error.response?.status === 403) {
|
|
170
170
|
errorMessage = 'Invalid SendGrid API key';
|
|
171
|
-
} else if (error.response?.status === 403) {
|
|
172
|
-
errorMessage = 'SendGrid API key does not have required permissions';
|
|
173
171
|
} else if (error.response?.data?.errors) {
|
|
174
172
|
errorMessage = error.response.data.errors
|
|
175
173
|
.map((err: any) => err.message)
|