@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.
@@ -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
- clickInMail(from_name: string, from_email: string, subject: string, body: string): Promise<true | undefined>;
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
- clickInMail(from_name, from_email, subject, body) {
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 true;
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
- clickInMail(from_name: string, from_email: string, subject: string, body: string): Promise<true | undefined>;
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
- clickInMail(from_name, from_email, subject, body) {
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 true;
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()) {