rez_core 2.2.192 → 2.2.193

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.
Files changed (36) hide show
  1. package/dist/module/communication/controller/communication.controller.d.ts +11 -4
  2. package/dist/module/communication/controller/communication.controller.js +14 -6
  3. package/dist/module/communication/controller/communication.controller.js.map +1 -1
  4. package/dist/module/communication/dto/create-config.dto.d.ts +16 -1
  5. package/dist/module/communication/dto/create-config.dto.js +51 -2
  6. package/dist/module/communication/dto/create-config.dto.js.map +1 -1
  7. package/dist/module/communication/service/communication.service.d.ts +20 -1
  8. package/dist/module/communication/service/communication.service.js +93 -2
  9. package/dist/module/communication/service/communication.service.js.map +1 -1
  10. package/dist/module/communication/service/wrapper.service.d.ts +28 -0
  11. package/dist/module/communication/service/wrapper.service.js +151 -0
  12. package/dist/module/communication/service/wrapper.service.js.map +1 -0
  13. package/dist/module/communication/strategies/communication.strategy.d.ts +12 -1
  14. package/dist/module/communication/strategies/communication.strategy.js +37 -0
  15. package/dist/module/communication/strategies/communication.strategy.js.map +1 -1
  16. package/dist/module/communication/strategies/email/gmail-api.strategy.d.ts +2 -0
  17. package/dist/module/communication/strategies/email/gmail-api.strategy.js +64 -20
  18. package/dist/module/communication/strategies/email/gmail-api.strategy.js.map +1 -1
  19. package/dist/module/communication/strategies/email/sendgrid-api.strategy.d.ts +10 -0
  20. package/dist/module/communication/strategies/email/sendgrid-api.strategy.js +61 -1
  21. package/dist/module/communication/strategies/email/sendgrid-api.strategy.js.map +1 -1
  22. package/dist/module/workflow/service/populate-workflow.service.js +1 -1
  23. package/dist/module/workflow/service/populate-workflow.service.js.map +1 -1
  24. package/dist/module/workflow/service/task.service.js +3 -0
  25. package/dist/module/workflow/service/task.service.js.map +1 -1
  26. package/dist/tsconfig.build.tsbuildinfo +1 -1
  27. package/package.json +1 -1
  28. package/src/module/communication/controller/communication.controller.ts +14 -3
  29. package/src/module/communication/dto/create-config.dto.ts +38 -1
  30. package/src/module/communication/service/communication.service.ts +157 -3
  31. package/src/module/communication/service/wrapper.service.ts +185 -0
  32. package/src/module/communication/strategies/communication.strategy.ts +63 -1
  33. package/src/module/communication/strategies/email/gmail-api.strategy.ts +121 -24
  34. package/src/module/communication/strategies/email/sendgrid-api.strategy.ts +82 -2
  35. package/src/module/workflow/service/populate-workflow.service.ts +1 -1
  36. package/src/module/workflow/service/task.service.ts +3 -1
@@ -0,0 +1,28 @@
1
+ import { DataSource } from 'typeorm';
2
+ import { CommunicationService } from './communication.service';
3
+ import { GoogleService } from './calendar-event.service';
4
+ import { IcsMeetingService } from 'src/module/ics/service/ics.service';
5
+ export declare class WrapperService {
6
+ private readonly datasource;
7
+ private readonly communicationService;
8
+ private readonly googleService;
9
+ private readonly icsService;
10
+ private readonly logger;
11
+ constructor(datasource: DataSource, communicationService: CommunicationService, googleService: GoogleService, icsService: IcsMeetingService);
12
+ sendMailWrapper(payload: any, loggedInUser: any): Promise<{
13
+ success: boolean;
14
+ data: import("../strategies/communication.strategy").CommunicationResult;
15
+ error?: undefined;
16
+ } | {
17
+ success: boolean;
18
+ error: any;
19
+ data?: undefined;
20
+ }>;
21
+ scheduleMeetingWrapper(payload: any, loggedInUser: any): Promise<{
22
+ success: boolean;
23
+ error?: undefined;
24
+ } | {
25
+ success: boolean;
26
+ error: any;
27
+ }>;
28
+ }
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var WrapperService_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.WrapperService = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const typeorm_1 = require("typeorm");
16
+ const communication_service_1 = require("./communication.service");
17
+ const calendar_event_service_1 = require("./calendar-event.service");
18
+ const ics_service_1 = require("../../ics/service/ics.service");
19
+ let WrapperService = WrapperService_1 = class WrapperService {
20
+ constructor(datasource, communicationService, googleService, icsService) {
21
+ this.datasource = datasource;
22
+ this.communicationService = communicationService;
23
+ this.googleService = googleService;
24
+ this.icsService = icsService;
25
+ this.logger = new common_1.Logger(WrapperService_1.name);
26
+ }
27
+ async sendMailWrapper(payload, loggedInUser) {
28
+ try {
29
+ const { level_id, level_type } = loggedInUser;
30
+ const configs = await this.datasource.query(`SELECT *
31
+ FROM cr_communication_hub
32
+ WHERE level_id = ?
33
+ AND level_type = ?
34
+ AND communication_config_type = 'EMAIL'`, [level_id, level_type]);
35
+ let payloadSendMail;
36
+ if (configs && configs.length > 0) {
37
+ payloadSendMail = {
38
+ levelId: level_id,
39
+ levelType: level_type,
40
+ to: payload.to,
41
+ message: payload.message,
42
+ subject: payload.subject,
43
+ type: 'EMAIL',
44
+ cc: payload.cc,
45
+ bcc: payload.bcc,
46
+ html: payload.html,
47
+ attachments: payload.attachments,
48
+ templateId: payload.templateId,
49
+ variables: payload.variables,
50
+ };
51
+ }
52
+ else {
53
+ const fallbackConfigs = await this.datasource.query(`SELECT *
54
+ FROM cr_communication_hub
55
+ WHERE level_type = 'ORG'
56
+ AND communication_config_type = 'EMAIL'`);
57
+ if (!fallbackConfigs || fallbackConfigs.length === 0) {
58
+ throw new Error('No active email communication config found');
59
+ }
60
+ payloadSendMail = {
61
+ levelId: 1,
62
+ levelType: 'ORG',
63
+ to: payload.to,
64
+ message: payload.message,
65
+ subject: payload.subject,
66
+ type: 'EMAIL',
67
+ cc: payload.cc,
68
+ bcc: payload.bcc,
69
+ html: payload.html,
70
+ attachments: payload.attachments,
71
+ templateId: payload.templateId,
72
+ variables: payload.variables,
73
+ };
74
+ }
75
+ const result = await this.communicationService.sendGenericMessage(payloadSendMail);
76
+ return {
77
+ success: true,
78
+ data: result,
79
+ };
80
+ }
81
+ catch (error) {
82
+ this.logger.error('sendMailWrapper error', error.message);
83
+ return {
84
+ success: false,
85
+ error: error.message,
86
+ };
87
+ }
88
+ }
89
+ async scheduleMeetingWrapper(payload, loggedInUser) {
90
+ try {
91
+ this.logger.log(`scheduleMeetingWrapper called by user: ${loggedInUser?.id || 'unknown'}`);
92
+ const { level_id, level_type } = loggedInUser;
93
+ const configs = await this.datasource.query(`SELECT *
94
+ FROM cr_communication_hub
95
+ WHERE level_id = ?
96
+ AND level_type = ?
97
+ AND communication_config_type = 'EMAIL' AND provider = 'gmail' AND service = 'API'`, [level_id, level_type]);
98
+ let configCred;
99
+ if (configs && configs.length > 0) {
100
+ configCred = await this.datasource.query(`SELECT config_json
101
+ FROM cr_communication_config
102
+ WHERE id = ?`, [configs[0].config_id]);
103
+ if (!configCred || configCred.length === 0) {
104
+ throw new Error('No Google credentials found for user-level config');
105
+ }
106
+ configCred = configCred[0].config_json;
107
+ const result = await this.googleService.createEvent(configCred, payload);
108
+ }
109
+ else {
110
+ const fallbackConfigs = await this.datasource.query(`SELECT *
111
+ FROM cr_communication_hub
112
+ WHERE level_type = 'ORG'
113
+ AND communication_config_type = 'CALENDAR'`);
114
+ configCred = await this.datasource.query(`SELECT config_json
115
+ FROM cr_communication_config
116
+ WHERE id = ?`, [fallbackConfigs[0]?.config_id]);
117
+ const base64String = await this.icsService.generateIcs(payload);
118
+ const result = await this.communicationService.sendGenericMessage({
119
+ ...payload,
120
+ attachments: [
121
+ {
122
+ content: base64String,
123
+ type: 'text/calendar',
124
+ filename: 'invite.ics',
125
+ disposition: 'attachment',
126
+ },
127
+ ],
128
+ });
129
+ }
130
+ return {
131
+ success: true,
132
+ };
133
+ }
134
+ catch (error) {
135
+ this.logger.error('scheduleMeetingWrapper error', error.message);
136
+ return {
137
+ success: false,
138
+ error: error.message,
139
+ };
140
+ }
141
+ }
142
+ };
143
+ exports.WrapperService = WrapperService;
144
+ exports.WrapperService = WrapperService = WrapperService_1 = __decorate([
145
+ (0, common_1.Injectable)(),
146
+ __metadata("design:paramtypes", [typeorm_1.DataSource,
147
+ communication_service_1.CommunicationService,
148
+ calendar_event_service_1.GoogleService,
149
+ ics_service_1.IcsMeetingService])
150
+ ], WrapperService);
151
+ //# sourceMappingURL=wrapper.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapper.service.js","sourceRoot":"","sources":["../../../../src/module/communication/service/wrapper.service.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,19 @@ export interface CommunicationResult {
11
11
  timestamp: Date;
12
12
  refreshedToken?: string;
13
13
  }
14
+ export interface EmailAttachment {
15
+ filename: string;
16
+ content: string;
17
+ contentType: string;
18
+ disposition?: 'attachment' | 'inline';
19
+ contentId?: string;
20
+ }
14
21
  export interface MessageTemplate {
15
22
  subject?: string;
16
23
  body: string;
17
- attachments?: any[];
24
+ attachments?: EmailAttachment[];
25
+ }
26
+ export declare class EmailAttachmentValidator {
27
+ static validate(attachments: EmailAttachment[], maxSizeBytes: number, providerName: string): void;
28
+ private static isValidBase64;
18
29
  }
@@ -1,3 +1,40 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmailAttachmentValidator = void 0;
4
+ class EmailAttachmentValidator {
5
+ static validate(attachments, maxSizeBytes, providerName) {
6
+ let totalSize = 0;
7
+ for (const attachment of attachments) {
8
+ if (!attachment.filename) {
9
+ throw new Error('Attachment filename is required');
10
+ }
11
+ if (!attachment.content) {
12
+ throw new Error(`Attachment content is required for ${attachment.filename}`);
13
+ }
14
+ if (!attachment.contentType) {
15
+ throw new Error(`Attachment contentType is required for ${attachment.filename}`);
16
+ }
17
+ if (!this.isValidBase64(attachment.content)) {
18
+ throw new Error(`Invalid base64 content for attachment ${attachment.filename}`);
19
+ }
20
+ const attachmentSize = (attachment.content.length * 3) / 4;
21
+ totalSize += attachmentSize;
22
+ if (totalSize > maxSizeBytes) {
23
+ const maxSizeMB = Math.floor(maxSizeBytes / (1024 * 1024));
24
+ throw new Error(`Total attachment size exceeds ${providerName} limit of ${maxSizeMB}MB`);
25
+ }
26
+ }
27
+ }
28
+ static isValidBase64(str) {
29
+ try {
30
+ const base64Regex = /^[A-Za-z0-9+/]*={0,2}$/;
31
+ return (base64Regex.test(str) &&
32
+ Buffer.from(str, 'base64').toString('base64') === str);
33
+ }
34
+ catch {
35
+ return false;
36
+ }
37
+ }
38
+ }
39
+ exports.EmailAttachmentValidator = EmailAttachmentValidator;
3
40
  //# sourceMappingURL=communication.strategy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"communication.strategy.js","sourceRoot":"","sources":["../../../../src/module/communication/strategies/communication.strategy.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"communication.strategy.js","sourceRoot":"","sources":["../../../../src/module/communication/strategies/communication.strategy.ts"],"names":[],"mappings":";;;AAiCA,MAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,WAA8B,EAAE,YAAoB,EAAE,YAAoB;QACxF,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YAErC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACrD,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,sCAAsC,UAAU,CAAC,QAAQ,EAAE,CAC5D,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CACb,0CAA0C,UAAU,CAAC,QAAQ,EAAE,CAChE,CAAC;YACJ,CAAC;YAGD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,KAAK,CACb,yCAAyC,UAAU,CAAC,QAAQ,EAAE,CAC/D,CAAC;YACJ,CAAC;YAGD,MAAM,cAAc,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3D,SAAS,IAAI,cAAc,CAAC;YAE5B,IAAI,SAAS,GAAG,YAAY,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;gBAC3D,MAAM,IAAI,KAAK,CAAC,iCAAiC,YAAY,aAAa,SAAS,IAAI,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,GAAW;QACtC,IAAI,CAAC;YAEH,MAAM,WAAW,GAAG,wBAAwB,CAAC;YAC7C,OAAO,CACL,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,CACtD,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AApDD,4DAoDC"}
@@ -7,4 +7,6 @@ export declare class GmailApiStrategy implements CommunicationStrategy {
7
7
  validateConfig(config: any): boolean;
8
8
  refreshAccessToken(config: any): Promise<string>;
9
9
  validateConnection(config: any): Promise<boolean>;
10
+ private buildSimpleEmail;
11
+ private buildMultipartEmail;
10
12
  }
@@ -13,6 +13,7 @@ exports.GmailApiStrategy = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
14
  const config_1 = require("@nestjs/config");
15
15
  const axios_1 = require("axios");
16
+ const communication_strategy_1 = require("../communication.strategy");
16
17
  let GmailApiStrategy = class GmailApiStrategy {
17
18
  constructor(configService) {
18
19
  this.configService = configService;
@@ -22,9 +23,12 @@ let GmailApiStrategy = class GmailApiStrategy {
22
23
  if (!config || !config.refreshToken) {
23
24
  throw new Error('Invalid Gmail API configuration - missing refresh token');
24
25
  }
25
- const { subject, html, cc, bcc } = config;
26
+ const { subject, html, cc, bcc, attachments } = config;
26
27
  console.log('---- Using HTTP Gmail API ----');
27
28
  console.log('Always refreshing token before send...');
29
+ if (attachments && attachments.length > 0) {
30
+ communication_strategy_1.EmailAttachmentValidator.validate(attachments, 25 * 1024 * 1024, 'Gmail');
31
+ }
28
32
  const freshAccessToken = await this.refreshAccessToken(config);
29
33
  console.log('---- Fresh token obtained, preparing email ----');
30
34
  const toRecipients = Array.isArray(to) ? to.join(', ') : to;
@@ -38,25 +42,9 @@ let GmailApiStrategy = class GmailApiStrategy {
38
42
  ? bcc.join(', ')
39
43
  : bcc
40
44
  : undefined;
41
- const emailLines = [
42
- `To: ${toRecipients}`,
43
- `Subject: ${subject || 'Notification'}`,
44
- ];
45
- if (ccRecipients) {
46
- emailLines.push(`Cc: ${ccRecipients}`);
47
- }
48
- if (bccRecipients) {
49
- emailLines.push(`Bcc: ${bccRecipients}`);
50
- }
51
- emailLines.push('Content-Type: text/html; charset=utf-8');
52
- emailLines.push('');
53
- if (html) {
54
- emailLines.push(html);
55
- }
56
- else {
57
- emailLines.push(message);
58
- }
59
- const emailContent = emailLines.join('\n');
45
+ const emailContent = attachments && attachments.length > 0
46
+ ? this.buildMultipartEmail(toRecipients, ccRecipients, bccRecipients, subject, message, html, attachments)
47
+ : this.buildSimpleEmail(toRecipients, ccRecipients, bccRecipients, subject, message, html);
60
48
  const encodedMessage = Buffer.from(emailContent)
61
49
  .toString('base64')
62
50
  .replace(/\+/g, '-')
@@ -156,6 +144,62 @@ let GmailApiStrategy = class GmailApiStrategy {
156
144
  return false;
157
145
  }
158
146
  }
147
+ buildSimpleEmail(to, cc, bcc, subject, message, html) {
148
+ const emailLines = [`To: ${to}`, `Subject: ${subject || 'Notification'}`];
149
+ if (cc) {
150
+ emailLines.push(`Cc: ${cc}`);
151
+ }
152
+ if (bcc) {
153
+ emailLines.push(`Bcc: ${bcc}`);
154
+ }
155
+ emailLines.push('Content-Type: text/html; charset=utf-8');
156
+ emailLines.push('');
157
+ if (html) {
158
+ emailLines.push(html);
159
+ }
160
+ else {
161
+ emailLines.push(message || '');
162
+ }
163
+ return emailLines.join('\n');
164
+ }
165
+ buildMultipartEmail(to, cc, bcc, subject, message, html, attachments) {
166
+ const boundary = `----GmailBoundary${Date.now()}${Math.random().toString(36).substr(2, 9)}`;
167
+ const emailLines = [`To: ${to}`, `Subject: ${subject || 'Notification'}`];
168
+ if (cc) {
169
+ emailLines.push(`Cc: ${cc}`);
170
+ }
171
+ if (bcc) {
172
+ emailLines.push(`Bcc: ${bcc}`);
173
+ }
174
+ emailLines.push(`Content-Type: multipart/mixed; boundary="${boundary}"`);
175
+ emailLines.push('');
176
+ emailLines.push(`--${boundary}`);
177
+ emailLines.push('Content-Type: text/html; charset=utf-8');
178
+ emailLines.push('');
179
+ if (html) {
180
+ emailLines.push(html);
181
+ }
182
+ else {
183
+ emailLines.push(message || '');
184
+ }
185
+ if (attachments) {
186
+ for (const attachment of attachments) {
187
+ emailLines.push(`--${boundary}`);
188
+ emailLines.push(`Content-Type: ${attachment.contentType}`);
189
+ emailLines.push(`Content-Disposition: ${attachment.disposition || 'attachment'}; filename="${attachment.filename}"`);
190
+ emailLines.push('Content-Transfer-Encoding: base64');
191
+ if (attachment.contentId) {
192
+ emailLines.push(`Content-ID: <${attachment.contentId}>`);
193
+ }
194
+ emailLines.push('');
195
+ const base64Content = attachment.content;
196
+ const chunks = base64Content.match(/.{1,76}/g) || [];
197
+ emailLines.push(...chunks);
198
+ }
199
+ }
200
+ emailLines.push(`--${boundary}--`);
201
+ return emailLines.join('\n');
202
+ }
159
203
  };
160
204
  exports.GmailApiStrategy = GmailApiStrategy;
161
205
  exports.GmailApiStrategy = GmailApiStrategy = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"gmail-api.strategy.js","sourceRoot":"","sources":["../../../../../src/module/communication/strategies/email/gmail-api.strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gmail-api.strategy.js","sourceRoot":"","sources":["../../../../../src/module/communication/strategies/email/gmail-api.strategy.ts"],"names":[],"mappings":"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"}
@@ -10,4 +10,14 @@ export declare class SendGridApiStrategy implements CommunicationStrategy {
10
10
  }>;
11
11
  error?: string;
12
12
  }>;
13
+ getTemplates(apiKey: string): Promise<{
14
+ success: boolean;
15
+ data?: Array<{
16
+ id: string;
17
+ name: string;
18
+ generation: string;
19
+ }>;
20
+ error?: string;
21
+ }>;
22
+ private convertAttachmentsToSendGridFormat;
13
23
  }
@@ -10,6 +10,7 @@ exports.SendGridApiStrategy = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
11
  const sgMail = require("@sendgrid/mail");
12
12
  const axios_1 = require("axios");
13
+ const communication_strategy_1 = require("../communication.strategy");
13
14
  let SendGridApiStrategy = class SendGridApiStrategy {
14
15
  async sendMessage(to, message, config) {
15
16
  try {
@@ -49,7 +50,8 @@ let SendGridApiStrategy = class SendGridApiStrategy {
49
50
  mailData.bcc = Array.isArray(config.bcc) ? config.bcc : [config.bcc];
50
51
  }
51
52
  if (config.attachments) {
52
- mailData.attachments = config.attachments;
53
+ communication_strategy_1.EmailAttachmentValidator.validate(config.attachments, 30 * 1024 * 1024, 'SendGrid');
54
+ mailData.attachments = this.convertAttachmentsToSendGridFormat(config.attachments);
53
55
  }
54
56
  if (config.categories) {
55
57
  mailData.categories = Array.isArray(config.categories)
@@ -147,6 +149,64 @@ let SendGridApiStrategy = class SendGridApiStrategy {
147
149
  };
148
150
  }
149
151
  }
152
+ async getTemplates(apiKey) {
153
+ try {
154
+ if (!apiKey) {
155
+ throw new Error('SendGrid API key is required');
156
+ }
157
+ const response = await axios_1.default.get('https://api.sendgrid.com/v3/templates?generations=dynamic', {
158
+ headers: {
159
+ Authorization: `Bearer ${apiKey}`,
160
+ 'Content-Type': 'application/json',
161
+ },
162
+ });
163
+ const templates = response.data.result || response.data.templates || [];
164
+ const formattedTemplates = templates
165
+ .filter((template) => template.generation === 'dynamic')
166
+ .map((template) => ({
167
+ id: template.id,
168
+ name: template.name || `Template ${template.id}`,
169
+ generation: template.generation,
170
+ }));
171
+ return {
172
+ success: true,
173
+ data: formattedTemplates,
174
+ };
175
+ }
176
+ catch (error) {
177
+ let errorMessage = 'Failed to fetch templates';
178
+ if (error.response?.status === 401) {
179
+ errorMessage = 'Invalid SendGrid API key';
180
+ }
181
+ else if (error.response?.status === 403) {
182
+ errorMessage = 'SendGrid API key does not have required permissions';
183
+ }
184
+ else if (error.response?.data?.errors) {
185
+ errorMessage = error.response.data.errors
186
+ .map((err) => err.message)
187
+ .join(', ');
188
+ }
189
+ else if (error.response?.data?.message) {
190
+ errorMessage = error.response.data.message;
191
+ }
192
+ else if (error.message) {
193
+ errorMessage = error.message;
194
+ }
195
+ return {
196
+ success: false,
197
+ error: errorMessage,
198
+ };
199
+ }
200
+ }
201
+ convertAttachmentsToSendGridFormat(attachments) {
202
+ return attachments.map((attachment) => ({
203
+ content: attachment.content,
204
+ filename: attachment.filename,
205
+ type: attachment.contentType,
206
+ disposition: attachment.disposition || 'attachment',
207
+ content_id: attachment.contentId,
208
+ }));
209
+ }
150
210
  };
151
211
  exports.SendGridApiStrategy = SendGridApiStrategy;
152
212
  exports.SendGridApiStrategy = SendGridApiStrategy = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"sendgrid-api.strategy.js","sourceRoot":"","sources":["../../../../../src/module/communication/strategies/email/sendgrid-api.strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sendgrid-api.strategy.js","sourceRoot":"","sources":["../../../../../src/module/communication/strategies/email/sendgrid-api.strategy.ts"],"names":[],"mappings":"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"}
@@ -151,7 +151,7 @@ let PopulateWorkflowService = class PopulateWorkflowService extends entity_servi
151
151
  organization_id,
152
152
  action_requirement: matchedNewMandatory?.id ?? null,
153
153
  level_id: organization_id,
154
- entity_type: 'WFAC',
154
+ entity_type: 'WFA',
155
155
  form: formActionCategory.length > 0 ? formViewMaster[0]?.id : null,
156
156
  status: statusValue,
157
157
  }, loggedInUser);
@@ -1 +1 @@
1
- {"version":3,"file":"populate-workflow.service.js","sourceRoot":"","sources":["../../../../src/module/workflow/service/populate-workflow.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"populate-workflow.service.js","sourceRoot":"","sources":["../../../../src/module/workflow/service/populate-workflow.service.ts"],"names":[],"mappings":"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"}
@@ -284,7 +284,10 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
284
284
  WHERE status != ?
285
285
  AND TIMESTAMP(due_date, due_time) BETWEEN ? AND ?
286
286
  `, [completedId, now, in30Min]);
287
+ if (tasks.length > 0)
288
+ console.log('Tasks due in 30 mins', tasks);
287
289
  if (!tasks.length) {
290
+ console.log('No tasks due in 30 mins');
288
291
  return;
289
292
  }
290
293
  for (const task of tasks) {