@auxcode/auxta 1.3.22 → 1.3.23-beta.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/build/cjs/macros/helpers/code.helper.d.ts +8 -1
- package/build/cjs/macros/helpers/code.helper.js +37 -2
- package/build/esm/macros/helpers/code.helper.d.ts +8 -1
- package/build/esm/macros/helpers/code.helper.js +37 -2
- package/build/tsconfig-cjs.tsbuildinfo +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
|
@@ -17,7 +17,14 @@ export declare class FunctionHelper extends ExtendDefaultPage {
|
|
|
17
17
|
clickAndWaitForPageToBeCreated(selector: string, page?: import("puppeteer").Page): Promise<void>;
|
|
18
18
|
closeLastPage(page?: import("puppeteer").Page): Promise<void>;
|
|
19
19
|
microsoftLogin(button: string, email: string, password: string): Promise<void>;
|
|
20
|
-
|
|
20
|
+
verifyEmail(from_name: string, from_email: string, subject: string, body: string): Promise<{
|
|
21
|
+
id: string;
|
|
22
|
+
threadId: string;
|
|
23
|
+
} | undefined>;
|
|
24
|
+
replyEmail(ids: {
|
|
25
|
+
id: string;
|
|
26
|
+
threadId: string;
|
|
27
|
+
}, body: string): Promise<void>;
|
|
21
28
|
private getHeader;
|
|
22
29
|
private getBody;
|
|
23
30
|
}
|
|
@@ -21,6 +21,7 @@ const extend_default_page_1 = require("./extend-default-page");
|
|
|
21
21
|
const puppeteer_2 = require("puppeteer");
|
|
22
22
|
const AuxGoogleAuth_1 = require("./AuxGoogleAuth");
|
|
23
23
|
const buffer_1 = require("buffer");
|
|
24
|
+
const MailComposer = require('nodemailer/lib/mail-composer');
|
|
24
25
|
class FunctionHelper extends extend_default_page_1.ExtendDefaultPage {
|
|
25
26
|
log(keyword, name, status) {
|
|
26
27
|
log_service_1.default.push(keyword, name, status);
|
|
@@ -189,7 +190,7 @@ class FunctionHelper extends extend_default_page_1.ExtendDefaultPage {
|
|
|
189
190
|
yield loginPage.waitForNetworkIdle();
|
|
190
191
|
});
|
|
191
192
|
}
|
|
192
|
-
|
|
193
|
+
verifyEmail(from_name, from_email, subject, body) {
|
|
193
194
|
return __awaiter(this, void 0, void 0, function* () {
|
|
194
195
|
yield AuxGoogleAuth_1.AuxGoogleAuth.setup();
|
|
195
196
|
const res = yield AuxGoogleAuth_1.AuxGoogleAuth.gmailClient.users.messages.list({
|
|
@@ -217,7 +218,7 @@ class FunctionHelper extends extend_default_page_1.ExtendDefaultPage {
|
|
|
217
218
|
if (message_sender.includes(from_email) && message_sender.includes(from_name.toLocaleLowerCase()) &&
|
|
218
219
|
message_subject.includes(subject.toLocaleLowerCase()) && message_body.includes(body.toLocaleLowerCase())) {
|
|
219
220
|
yield this.log('Then', `Email from: ${from_name} ${from_email} with subject: ${subject} and body: ${body} is found`, AuxTA_1.StepStatus.PASSED);
|
|
220
|
-
return
|
|
221
|
+
return { id: gmailResponse.data.id.toString(), threadId: gmailResponse.data.threadId.toString() };
|
|
221
222
|
}
|
|
222
223
|
}
|
|
223
224
|
break;
|
|
@@ -229,6 +230,40 @@ class FunctionHelper extends extend_default_page_1.ExtendDefaultPage {
|
|
|
229
230
|
yield this.log('Then', `Email from: ${from_name} ${from_email} with subject: ${subject} and body: ${body} is found`, AuxTA_1.StepStatus.FAILED);
|
|
230
231
|
});
|
|
231
232
|
}
|
|
233
|
+
replyEmail(ids, body) {
|
|
234
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
235
|
+
yield AuxGoogleAuth_1.AuxGoogleAuth.setup();
|
|
236
|
+
const gmailResponse = yield AuxGoogleAuth_1.AuxGoogleAuth.gmailClient.users.messages.get({
|
|
237
|
+
userId: "me",
|
|
238
|
+
id: ids.id,
|
|
239
|
+
format: 'FULL'
|
|
240
|
+
});
|
|
241
|
+
if (gmailResponse.data.payload) {
|
|
242
|
+
const message_to = this.getHeader('to', gmailResponse.data.payload.headers);
|
|
243
|
+
const message_sender = this.getHeader('from', gmailResponse.data.payload.headers);
|
|
244
|
+
const message_subject = this.getHeader('subject', gmailResponse.data.payload.headers);
|
|
245
|
+
const message_messageID = this.getHeader('Message-ID', gmailResponse.data.payload.headers);
|
|
246
|
+
const options = {
|
|
247
|
+
"to": message_to,
|
|
248
|
+
"from": message_sender,
|
|
249
|
+
"subject": message_subject,
|
|
250
|
+
"Reference": message_messageID,
|
|
251
|
+
"In-Reply-To": message_messageID,
|
|
252
|
+
"threadId": ids.threadId,
|
|
253
|
+
"html": body
|
|
254
|
+
};
|
|
255
|
+
const mailComposer = new MailComposer(options);
|
|
256
|
+
const message = yield mailComposer.compile().build();
|
|
257
|
+
const encodeMessage = Buffer.from(message).toString('base64').replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
|
|
258
|
+
yield AuxGoogleAuth_1.AuxGoogleAuth.gmailClient.users.messages.send({
|
|
259
|
+
userId: "me",
|
|
260
|
+
requestBody: {
|
|
261
|
+
raw: encodeMessage
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
});
|
|
266
|
+
}
|
|
232
267
|
getHeader(value, headers) {
|
|
233
268
|
for (const header of headers) {
|
|
234
269
|
if (header.name.toLocaleLowerCase() === value.toLocaleLowerCase()) {
|
|
@@ -17,7 +17,14 @@ export declare class FunctionHelper extends ExtendDefaultPage {
|
|
|
17
17
|
clickAndWaitForPageToBeCreated(selector: string, page?: import("puppeteer").Page): Promise<void>;
|
|
18
18
|
closeLastPage(page?: import("puppeteer").Page): Promise<void>;
|
|
19
19
|
microsoftLogin(button: string, email: string, password: string): Promise<void>;
|
|
20
|
-
|
|
20
|
+
verifyEmail(from_name: string, from_email: string, subject: string, body: string): Promise<{
|
|
21
|
+
id: string;
|
|
22
|
+
threadId: string;
|
|
23
|
+
} | undefined>;
|
|
24
|
+
replyEmail(ids: {
|
|
25
|
+
id: string;
|
|
26
|
+
threadId: string;
|
|
27
|
+
}, body: string): Promise<void>;
|
|
21
28
|
private getHeader;
|
|
22
29
|
private getBody;
|
|
23
30
|
}
|
|
@@ -15,6 +15,7 @@ import { ExtendDefaultPage } from "./extend-default-page";
|
|
|
15
15
|
import { KnownDevices } from "puppeteer";
|
|
16
16
|
import { AuxGoogleAuth } from "./AuxGoogleAuth";
|
|
17
17
|
import { atob } from "buffer";
|
|
18
|
+
const MailComposer = require('nodemailer/lib/mail-composer');
|
|
18
19
|
export class FunctionHelper extends ExtendDefaultPage {
|
|
19
20
|
log(keyword, name, status) {
|
|
20
21
|
log.push(keyword, name, status);
|
|
@@ -183,7 +184,7 @@ export class FunctionHelper extends ExtendDefaultPage {
|
|
|
183
184
|
yield loginPage.waitForNetworkIdle();
|
|
184
185
|
});
|
|
185
186
|
}
|
|
186
|
-
|
|
187
|
+
verifyEmail(from_name, from_email, subject, body) {
|
|
187
188
|
return __awaiter(this, void 0, void 0, function* () {
|
|
188
189
|
yield AuxGoogleAuth.setup();
|
|
189
190
|
const res = yield AuxGoogleAuth.gmailClient.users.messages.list({
|
|
@@ -211,7 +212,7 @@ export class FunctionHelper extends ExtendDefaultPage {
|
|
|
211
212
|
if (message_sender.includes(from_email) && message_sender.includes(from_name.toLocaleLowerCase()) &&
|
|
212
213
|
message_subject.includes(subject.toLocaleLowerCase()) && message_body.includes(body.toLocaleLowerCase())) {
|
|
213
214
|
yield this.log('Then', `Email from: ${from_name} ${from_email} with subject: ${subject} and body: ${body} is found`, StepStatus.PASSED);
|
|
214
|
-
return
|
|
215
|
+
return { id: gmailResponse.data.id.toString(), threadId: gmailResponse.data.threadId.toString() };
|
|
215
216
|
}
|
|
216
217
|
}
|
|
217
218
|
break;
|
|
@@ -223,6 +224,40 @@ export class FunctionHelper extends ExtendDefaultPage {
|
|
|
223
224
|
yield this.log('Then', `Email from: ${from_name} ${from_email} with subject: ${subject} and body: ${body} is found`, StepStatus.FAILED);
|
|
224
225
|
});
|
|
225
226
|
}
|
|
227
|
+
replyEmail(ids, body) {
|
|
228
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
229
|
+
yield AuxGoogleAuth.setup();
|
|
230
|
+
const gmailResponse = yield AuxGoogleAuth.gmailClient.users.messages.get({
|
|
231
|
+
userId: "me",
|
|
232
|
+
id: ids.id,
|
|
233
|
+
format: 'FULL'
|
|
234
|
+
});
|
|
235
|
+
if (gmailResponse.data.payload) {
|
|
236
|
+
const message_to = this.getHeader('to', gmailResponse.data.payload.headers);
|
|
237
|
+
const message_sender = this.getHeader('from', gmailResponse.data.payload.headers);
|
|
238
|
+
const message_subject = this.getHeader('subject', gmailResponse.data.payload.headers);
|
|
239
|
+
const message_messageID = this.getHeader('Message-ID', gmailResponse.data.payload.headers);
|
|
240
|
+
const options = {
|
|
241
|
+
"to": message_to,
|
|
242
|
+
"from": message_sender,
|
|
243
|
+
"subject": message_subject,
|
|
244
|
+
"Reference": message_messageID,
|
|
245
|
+
"In-Reply-To": message_messageID,
|
|
246
|
+
"threadId": ids.threadId,
|
|
247
|
+
"html": body
|
|
248
|
+
};
|
|
249
|
+
const mailComposer = new MailComposer(options);
|
|
250
|
+
const message = yield mailComposer.compile().build();
|
|
251
|
+
const encodeMessage = Buffer.from(message).toString('base64').replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
|
|
252
|
+
yield AuxGoogleAuth.gmailClient.users.messages.send({
|
|
253
|
+
userId: "me",
|
|
254
|
+
requestBody: {
|
|
255
|
+
raw: encodeMessage
|
|
256
|
+
}
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
});
|
|
260
|
+
}
|
|
226
261
|
getHeader(value, headers) {
|
|
227
262
|
for (const header of headers) {
|
|
228
263
|
if (header.name.toLocaleLowerCase() === value.toLocaleLowerCase()) {
|