playwright-ts-automationframework 1.1.68 → 1.1.69

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.
@@ -1,67 +1,15 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
28
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
- function verb(n) { return function (v) { return step([n, v]); }; }
30
- function step(op) {
31
- if (f) throw new TypeError("Generator is already executing.");
32
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
33
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
34
- if (y = 0, t) op = [op[0] & 2, t.value];
35
- switch (op[0]) {
36
- case 0: case 1: t = op; break;
37
- case 4: _.label++; return { value: op[1], done: false };
38
- case 5: _.label++; y = op[1]; op = [0]; continue;
39
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
- default:
41
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
- if (t[2]) _.ops.pop();
46
- _.trys.pop(); continue;
47
- }
48
- op = body.call(thisArg, _);
49
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
- }
52
- };
53
2
  Object.defineProperty(exports, "__esModule", { value: true });
54
3
  exports.Actions = void 0;
55
- var basePage_core_1 = require("./basePage.core");
56
- var logs_core_1 = require("./logs.core");
4
+ const basePage_core_1 = require("./basePage.core");
5
+ const logs_core_1 = require("./logs.core");
57
6
  /**
58
7
  * All wrapper methods over playwright actions methods with logger.
59
8
  * @author Ketan Pardeshi
60
9
  * */
61
- var Actions = /** @class */ (function (_super) {
62
- __extends(Actions, _super);
63
- function Actions(page) {
64
- return _super.call(this, page) || this;
10
+ class Actions extends basePage_core_1.BasePage {
11
+ constructor(page) {
12
+ super(page);
65
13
  }
66
14
  /**
67
15
  * Click on an element.
@@ -74,25 +22,15 @@ var Actions = /** @class */ (function (_super) {
74
22
  *
75
23
  * click(loginBtn);
76
24
  */
77
- Actions.prototype.click = function (control_1) {
78
- return __awaiter(this, arguments, void 0, function (control, isforceful) {
79
- if (isforceful === void 0) { isforceful = false; }
80
- return __generator(this, function (_a) {
81
- switch (_a.label) {
82
- case 0: return [4 /*yield*/, control.controlLocator.first().click({ force: isforceful }).then(function () {
83
- (0, logs_core_1.logAction)("Clicked on '" + control.controlDescription + "'");
84
- }, function (error) {
85
- (0, logs_core_1.logError)("\u274C Unable to click on '".concat(control.controlDescription, "'"));
86
- (0, logs_core_1.logConsole)("Error: '".concat(error, "'"));
87
- throw error;
88
- })];
89
- case 1:
90
- _a.sent();
91
- return [2 /*return*/];
92
- }
93
- });
25
+ async click(control, isforceful = false) {
26
+ await control.controlLocator.first().click({ force: isforceful }).then(() => {
27
+ (0, logs_core_1.logAction)("Clicked on '" + control.controlDescription + "'");
28
+ }, (error) => {
29
+ (0, logs_core_1.logError)(`❌ Unable to click on '${control.controlDescription}'`);
30
+ (0, logs_core_1.logConsole)(`Error: '${error}'`);
31
+ throw error;
94
32
  });
95
- };
33
+ }
96
34
  /**
97
35
  * Mouse hover on an element.
98
36
  *
@@ -104,23 +42,14 @@ var Actions = /** @class */ (function (_super) {
104
42
  *
105
43
  * mouseHover(loginBtn);
106
44
  */
107
- Actions.prototype.mouseHover = function (control) {
108
- return __awaiter(this, void 0, void 0, function () {
109
- return __generator(this, function (_a) {
110
- switch (_a.label) {
111
- case 0: return [4 /*yield*/, control.controlLocator.first().hover().then(function () {
112
- (0, logs_core_1.logAction)("Mouse hover to '" + control.controlDescription + "'");
113
- }, function (error) {
114
- (0, logs_core_1.logError)("\u274C Unable to mouse hover on '".concat(control.controlDescription, "'"));
115
- (0, logs_core_1.logConsole)("Error: '".concat(error, "'"));
116
- })];
117
- case 1:
118
- _a.sent();
119
- return [2 /*return*/];
120
- }
121
- });
45
+ async mouseHover(control) {
46
+ await control.controlLocator.first().hover().then(() => {
47
+ (0, logs_core_1.logAction)("Mouse hover to '" + control.controlDescription + "'");
48
+ }, (error) => {
49
+ (0, logs_core_1.logError)(`❌ Unable to mouse hover on '${control.controlDescription}'`);
50
+ (0, logs_core_1.logConsole)(`Error: '${error}'`);
122
51
  });
123
- };
52
+ }
124
53
  /**
125
54
  * Focus on element and press keyboard button.
126
55
  *
@@ -133,21 +62,10 @@ var Actions = /** @class */ (function (_super) {
133
62
  *
134
63
  * focusAndPressSpace(loginBtn, "Enter");
135
64
  */
136
- Actions.prototype.focusAndPressKeyboardEvent = function (control, action) {
137
- return __awaiter(this, void 0, void 0, function () {
138
- return __generator(this, function (_a) {
139
- switch (_a.label) {
140
- case 0: return [4 /*yield*/, control.controlLocator.first().focus()];
141
- case 1:
142
- _a.sent();
143
- return [4 /*yield*/, this.pressKeyboardEvent(control, action)];
144
- case 2:
145
- _a.sent();
146
- return [2 /*return*/];
147
- }
148
- });
149
- });
150
- };
65
+ async focusAndPressKeyboardEvent(control, action) {
66
+ await control.controlLocator.first().focus();
67
+ await this.pressKeyboardEvent(control, action);
68
+ }
151
69
  /**
152
70
  * Enter value in textbox control.
153
71
  *
@@ -159,50 +77,32 @@ var Actions = /** @class */ (function (_super) {
159
77
  *
160
78
  * type(usernameTxtbx);
161
79
  */
162
- Actions.prototype.type = function (control, textTobeEntered) {
163
- return __awaiter(this, void 0, void 0, function () {
164
- return __generator(this, function (_a) {
165
- switch (_a.label) {
166
- case 0: return [4 /*yield*/, control.controlLocator.first().fill(textTobeEntered).then(function () {
167
- if (control.controlDescription.trim().toLowerCase().endsWith('textbox')) {
168
- (0, logs_core_1.logAction)("Entered '".concat(textTobeEntered, "' in '").concat(control.controlDescription, "'"));
169
- }
170
- else {
171
- (0, logs_core_1.logAction)("Entered '".concat(textTobeEntered, "' in '").concat(control.controlDescription, "' textbox"));
172
- }
173
- }, function (error) {
174
- (0, logs_core_1.logError)("\u274C Unable to enter text in '".concat(control.controlDescription, "' textbox due to reason: ").concat(error));
175
- throw error;
176
- })];
177
- case 1:
178
- _a.sent();
179
- return [2 /*return*/];
180
- }
181
- });
80
+ async type(control, textTobeEntered) {
81
+ await control.controlLocator.first().fill(textTobeEntered).then(() => {
82
+ if (control.controlDescription.trim().toLowerCase().endsWith('textbox')) {
83
+ (0, logs_core_1.logAction)(`Entered '${textTobeEntered}' in '${control.controlDescription}'`);
84
+ }
85
+ else {
86
+ (0, logs_core_1.logAction)(`Entered '${textTobeEntered}' in '${control.controlDescription}' textbox`);
87
+ }
88
+ }, (error) => {
89
+ (0, logs_core_1.logError)(`❌ Unable to enter text in '${control.controlDescription}' textbox due to reason: ${error}`);
90
+ throw error;
182
91
  });
183
- };
184
- Actions.prototype.typePassword = function (control, textTobeEntered) {
185
- return __awaiter(this, void 0, void 0, function () {
186
- return __generator(this, function (_a) {
187
- switch (_a.label) {
188
- case 0: return [4 /*yield*/, control.controlLocator.first().fill(textTobeEntered).then(function () {
189
- if (control.controlDescription.trim().toLowerCase().endsWith('textbox')) {
190
- (0, logs_core_1.logAction)("Entered '********' in '".concat(control.controlDescription, "'"));
191
- }
192
- else {
193
- (0, logs_core_1.logAction)("Entered '********' in '".concat(control.controlDescription, "' textbox"));
194
- }
195
- }, function (error) {
196
- (0, logs_core_1.logError)("\u274C Unable to enter text in '".concat(control.controlDescription, "' textbox due to reason: ").concat(error));
197
- throw error;
198
- })];
199
- case 1:
200
- _a.sent();
201
- return [2 /*return*/];
202
- }
203
- });
92
+ }
93
+ async typePassword(control, textTobeEntered) {
94
+ await control.controlLocator.first().fill(textTobeEntered).then(() => {
95
+ if (control.controlDescription.trim().toLowerCase().endsWith('textbox')) {
96
+ (0, logs_core_1.logAction)(`Entered '********' in '${control.controlDescription}'`);
97
+ }
98
+ else {
99
+ (0, logs_core_1.logAction)(`Entered '********' in '${control.controlDescription}' textbox`);
100
+ }
101
+ }, (error) => {
102
+ (0, logs_core_1.logError)(`❌ Unable to enter text in '${control.controlDescription}' textbox due to reason: ${error}`);
103
+ throw error;
204
104
  });
205
- };
105
+ }
206
106
  /**
207
107
  * Press Keyboard event.
208
108
  *
@@ -215,20 +115,11 @@ var Actions = /** @class */ (function (_super) {
215
115
  *
216
116
  * pressKeyboardEvent(loginBtn, "Enter");
217
117
  */
218
- Actions.prototype.pressKeyboardEvent = function (control, key) {
219
- return __awaiter(this, void 0, void 0, function () {
220
- return __generator(this, function (_a) {
221
- switch (_a.label) {
222
- case 0: return [4 /*yield*/, control.controlLocator.first().press(key).then(function () {
223
- (0, logs_core_1.logAction)("Press Key '".concat(key.toUpperCase(), "' on '").concat(control.controlDescription, "'"));
224
- })];
225
- case 1:
226
- _a.sent();
227
- return [2 /*return*/];
228
- }
229
- });
118
+ async pressKeyboardEvent(control, key) {
119
+ await control.controlLocator.first().press(key).then(() => {
120
+ (0, logs_core_1.logAction)(`Press Key '${key.toUpperCase()}' on '${control.controlDescription}'`);
230
121
  });
231
- };
122
+ }
232
123
  /**
233
124
  * Select dropdown element by value.
234
125
  *
@@ -241,24 +132,15 @@ var Actions = /** @class */ (function (_super) {
241
132
  *
242
133
  * selectFromDropdownByValue(cityDrpdwn, "Sydney");
243
134
  */
244
- Actions.prototype.selectFromDropdownByValue = function (control, optionTobeSelcted) {
245
- return __awaiter(this, void 0, void 0, function () {
246
- return __generator(this, function (_a) {
247
- switch (_a.label) {
248
- case 0: return [4 /*yield*/, control.controlLocator.first().selectOption({ value: optionTobeSelcted }).then(function () {
249
- (0, logs_core_1.logAction)("Selected '" + optionTobeSelcted + "' from '" + control.controlDescription + "'");
250
- }, function (error) {
251
- (0, logs_core_1.logError)("\u274C Unable to select '".concat(optionTobeSelcted, "' from '").concat(control.controlDescription, "'"));
252
- (0, logs_core_1.logConsole)("Error: '".concat(error, "'"));
253
- throw error;
254
- })];
255
- case 1:
256
- _a.sent();
257
- return [2 /*return*/];
258
- }
259
- });
135
+ async selectFromDropdownByValue(control, optionTobeSelcted) {
136
+ await control.controlLocator.first().selectOption({ value: optionTobeSelcted }).then(function () {
137
+ (0, logs_core_1.logAction)("Selected '" + optionTobeSelcted + "' from '" + control.controlDescription + "'");
138
+ }, function (error) {
139
+ (0, logs_core_1.logError)(`❌ Unable to select '${optionTobeSelcted}' from '${control.controlDescription}'`);
140
+ (0, logs_core_1.logConsole)(`Error: '${error}'`);
141
+ throw error;
260
142
  });
261
- };
143
+ }
262
144
  /**
263
145
  * Select dropdown element by text.
264
146
  *
@@ -271,51 +153,30 @@ var Actions = /** @class */ (function (_super) {
271
153
  *
272
154
  * selectDropDownByText(cityDrpdwn, "Sydney");
273
155
  */
274
- Actions.prototype.selectFromDropdownByText = function (control, optionTobeSelcted) {
275
- return __awaiter(this, void 0, void 0, function () {
276
- return __generator(this, function (_a) {
277
- switch (_a.label) {
278
- case 0: return [4 /*yield*/, control.controlLocator.first().selectOption({ label: optionTobeSelcted }).then(function () {
279
- (0, logs_core_1.logAction)("Selected '".concat(optionTobeSelcted, "' from '").concat(control.controlDescription, "'"));
280
- }, function (error) {
281
- (0, logs_core_1.logError)("\u274C Unable to select '".concat(optionTobeSelcted, "' from '").concat(control.controlDescription, "'"));
282
- (0, logs_core_1.logConsole)("Error: '".concat(error, "'"));
283
- throw error;
284
- })];
285
- case 1:
286
- _a.sent();
287
- return [2 /*return*/];
288
- }
289
- });
156
+ async selectFromDropdownByText(control, optionTobeSelcted) {
157
+ await control.controlLocator.first().selectOption({ label: optionTobeSelcted }).then(() => {
158
+ (0, logs_core_1.logAction)(`Selected '${optionTobeSelcted}' from '${control.controlDescription}'`);
159
+ }, function (error) {
160
+ (0, logs_core_1.logError)(`❌ Unable to select '${optionTobeSelcted}' from '${control.controlDescription}'`);
161
+ (0, logs_core_1.logConsole)(`Error: '${error}'`);
162
+ throw error;
290
163
  });
291
- };
292
- Actions.prototype.selectFromDropdownByPartialText = function (control, partialText) {
293
- return __awaiter(this, void 0, void 0, function () {
294
- var options, matchingOption;
295
- return __generator(this, function (_a) {
296
- switch (_a.label) {
297
- case 0: return [4 /*yield*/, control.controlLocator.first().locator('option').allInnerTexts()];
298
- case 1:
299
- options = _a.sent();
300
- matchingOption = options.find(function (option) { return option.includes(partialText); });
301
- if (!matchingOption) {
302
- (0, logs_core_1.logError)("\u274C No option found containing '".concat(partialText, "' in '").concat(control.controlDescription, "'"));
303
- throw new Error("No matching option found for '".concat(partialText, "'"));
304
- }
305
- return [4 /*yield*/, control.controlLocator.first().selectOption({ label: matchingOption }).then(function () {
306
- (0, logs_core_1.logAction)("Selected '".concat(matchingOption, "' from '").concat(control.controlDescription, "'"));
307
- }, function (error) {
308
- (0, logs_core_1.logError)("\u274C Unable to select '".concat(matchingOption, "' from '").concat(control.controlDescription, "'"));
309
- (0, logs_core_1.logConsole)("Error: '".concat(error, "'"));
310
- throw error;
311
- })];
312
- case 2:
313
- _a.sent();
314
- return [2 /*return*/];
315
- }
316
- });
164
+ }
165
+ async selectFromDropdownByPartialText(control, partialText) {
166
+ const options = await control.controlLocator.first().locator('option').allInnerTexts();
167
+ const matchingOption = options.find(option => option.includes(partialText));
168
+ if (!matchingOption) {
169
+ (0, logs_core_1.logError)(`❌ No option found containing '${partialText}' in '${control.controlDescription}'`);
170
+ throw new Error(`No matching option found for '${partialText}'`);
171
+ }
172
+ await control.controlLocator.first().selectOption({ label: matchingOption }).then(() => {
173
+ (0, logs_core_1.logAction)(`Selected '${matchingOption}' from '${control.controlDescription}'`);
174
+ }, function (error) {
175
+ (0, logs_core_1.logError)(`❌ Unable to select '${matchingOption}' from '${control.controlDescription}'`);
176
+ (0, logs_core_1.logConsole)(`Error: '${error}'`);
177
+ throw error;
317
178
  });
318
- };
179
+ }
319
180
  /**
320
181
  * Select dropdown element by index.
321
182
  *
@@ -328,24 +189,15 @@ var Actions = /** @class */ (function (_super) {
328
189
  *
329
190
  * selectFromDropdownByIndex(cityDrpdwn, 1);
330
191
  */
331
- Actions.prototype.selectFromDropdownByIndex = function (control, index) {
332
- return __awaiter(this, void 0, void 0, function () {
333
- return __generator(this, function (_a) {
334
- switch (_a.label) {
335
- case 0: return [4 /*yield*/, control.controlLocator.first().selectOption({ index: index }).then(function () {
336
- (0, logs_core_1.logAction)("Selected '" + index + "' option from '" + control.controlDescription + "'");
337
- }, function (error) {
338
- (0, logs_core_1.logError)("\u274C Unable to select '".concat(index, "' option from '").concat(control.controlDescription, "'"));
339
- (0, logs_core_1.logConsole)("Error: '".concat(error, "'"));
340
- throw error;
341
- })];
342
- case 1:
343
- _a.sent();
344
- return [2 /*return*/];
345
- }
346
- });
192
+ async selectFromDropdownByIndex(control, index) {
193
+ await control.controlLocator.first().selectOption({ index: index }).then(function () {
194
+ (0, logs_core_1.logAction)("Selected '" + index + "' option from '" + control.controlDescription + "'");
195
+ }, function (error) {
196
+ (0, logs_core_1.logError)(`❌ Unable to select '${index}' option from '${control.controlDescription}'`);
197
+ (0, logs_core_1.logConsole)(`Error: '${error}'`);
198
+ throw error;
347
199
  });
348
- };
200
+ }
349
201
  /**
350
202
  * Select checkbox element.
351
203
  *
@@ -358,39 +210,23 @@ var Actions = /** @class */ (function (_super) {
358
210
  *
359
211
  * selectCheckbox(isMinorChkbx, true);
360
212
  */
361
- Actions.prototype.selectCheckbox = function (control_1) {
362
- return __awaiter(this, arguments, void 0, function (control, expectedCheckboxValue) {
363
- var error_1;
364
- if (expectedCheckboxValue === void 0) { expectedCheckboxValue = true; }
365
- return __generator(this, function (_a) {
366
- switch (_a.label) {
367
- case 0: return [4 /*yield*/, this.waitTillElementIsPresent(control)];
368
- case 1:
369
- _a.sent();
370
- _a.label = 2;
371
- case 2:
372
- _a.trys.push([2, 7, , 8]);
373
- if (!expectedCheckboxValue) return [3 /*break*/, 4];
374
- return [4 /*yield*/, control.controlLocator.first().check()];
375
- case 3:
376
- _a.sent();
377
- (0, logs_core_1.logAction)("Set checkbox value of '" + control.controlDescription + "' as checked");
378
- return [3 /*break*/, 6];
379
- case 4: return [4 /*yield*/, control.controlLocator.first().uncheck()];
380
- case 5:
381
- _a.sent();
382
- (0, logs_core_1.logAction)("Set checkbox value of '" + control.controlDescription + "' as unchecked");
383
- _a.label = 6;
384
- case 6: return [3 /*break*/, 8];
385
- case 7:
386
- error_1 = _a.sent();
387
- (0, logs_core_1.logError)("\u274C Unable to set checkbox value of '".concat(control.controlDescription, "' as ").concat(expectedCheckboxValue ? "checked" : "unchecked"));
388
- throw error_1;
389
- case 8: return [2 /*return*/];
390
- }
391
- });
392
- });
393
- };
213
+ async selectCheckbox(control, expectedCheckboxValue = true) {
214
+ await this.waitTillElementIsPresent(control);
215
+ try {
216
+ if (expectedCheckboxValue) {
217
+ await control.controlLocator.first().check();
218
+ (0, logs_core_1.logAction)("Set checkbox value of '" + control.controlDescription + "' as checked");
219
+ }
220
+ else {
221
+ await control.controlLocator.first().uncheck();
222
+ (0, logs_core_1.logAction)("Set checkbox value of '" + control.controlDescription + "' as unchecked");
223
+ }
224
+ }
225
+ catch (error) {
226
+ (0, logs_core_1.logError)(`❌ Unable to set checkbox value of '${control.controlDescription}' as ${expectedCheckboxValue ? "checked" : "unchecked"}`);
227
+ throw error;
228
+ }
229
+ }
394
230
  /**
395
231
  * Info to get weather checkbox/Radio element is selected or not.
396
232
  * Returns true if element is selected else false
@@ -403,23 +239,14 @@ var Actions = /** @class */ (function (_super) {
403
239
  *
404
240
  * let checkboxValue = isSelected(isMinorChkbx);
405
241
  */
406
- Actions.prototype.isSelected = function (control) {
407
- return __awaiter(this, void 0, void 0, function () {
408
- var isChecked;
409
- return __generator(this, function (_a) {
410
- switch (_a.label) {
411
- case 0: return [4 /*yield*/, control.controlLocator.first().isChecked()];
412
- case 1:
413
- isChecked = _a.sent();
414
- if (isChecked)
415
- (0, logs_core_1.logConsole)("".concat(control.controlDescription, " is selected"));
416
- else
417
- (0, logs_core_1.logConsole)("".concat(control.controlDescription, " is NOT selected"));
418
- return [2 /*return*/, isChecked];
419
- }
420
- });
421
- });
422
- };
242
+ async isSelected(control) {
243
+ const isChecked = await control.controlLocator.first().isChecked();
244
+ if (isChecked)
245
+ (0, logs_core_1.logConsole)(`${control.controlDescription} is selected`);
246
+ else
247
+ (0, logs_core_1.logConsole)(`${control.controlDescription} is NOT selected`);
248
+ return isChecked;
249
+ }
423
250
  /**
424
251
  * Info to get wheather element is enabled or not.
425
252
  * Returns true if element is enabled else false
@@ -432,22 +259,15 @@ var Actions = /** @class */ (function (_super) {
432
259
  *
433
260
  * let enabledValue = isEnabled(loginBtn);
434
261
  */
435
- Actions.prototype.isEnabled = function (control) {
436
- return __awaiter(this, void 0, void 0, function () {
437
- return __generator(this, function (_a) {
438
- switch (_a.label) {
439
- case 0: return [4 /*yield*/, control.controlLocator.first().isEnabled().then(function (value) {
440
- if (value)
441
- (0, logs_core_1.logConsole)("".concat(control.controlDescription, " is enabled"));
442
- else
443
- (0, logs_core_1.logConsole)("".concat(control.controlDescription, " is NOT enabled"));
444
- return value;
445
- })];
446
- case 1: return [2 /*return*/, _a.sent()];
447
- }
448
- });
262
+ async isEnabled(control) {
263
+ return await control.controlLocator.first().isEnabled().then(function (value) {
264
+ if (value)
265
+ (0, logs_core_1.logConsole)(`${control.controlDescription} is enabled`);
266
+ else
267
+ (0, logs_core_1.logConsole)(`${control.controlDescription} is NOT enabled`);
268
+ return value;
449
269
  });
450
- };
270
+ }
451
271
  /**
452
272
  * Info to get wheather element is displayed or not.
453
273
  * Returns true if element is displayed else false
@@ -460,23 +280,14 @@ var Actions = /** @class */ (function (_super) {
460
280
  *
461
281
  * let displayedValue = isDisplayed(loginBtn);
462
282
  */
463
- Actions.prototype.isDisplayed = function (control) {
464
- return __awaiter(this, void 0, void 0, function () {
465
- var isVisible;
466
- return __generator(this, function (_a) {
467
- switch (_a.label) {
468
- case 0: return [4 /*yield*/, control.controlLocator.first().isVisible()];
469
- case 1:
470
- isVisible = _a.sent();
471
- if (isVisible)
472
- (0, logs_core_1.logConsole)("".concat(control.controlDescription, " is displayed"));
473
- else
474
- (0, logs_core_1.logConsole)("".concat(control.controlDescription, " is NOT displayed"));
475
- return [2 /*return*/, isVisible];
476
- }
477
- });
478
- });
479
- };
283
+ async isDisplayed(control) {
284
+ const isVisible = await control.controlLocator.first().isVisible();
285
+ if (isVisible)
286
+ (0, logs_core_1.logConsole)(`${control.controlDescription} is displayed`);
287
+ else
288
+ (0, logs_core_1.logConsole)(`${control.controlDescription} is NOT displayed`);
289
+ return isVisible;
290
+ }
480
291
  /**
481
292
  * Read text of an element
482
293
  *
@@ -488,27 +299,17 @@ var Actions = /** @class */ (function (_super) {
488
299
  *
489
300
  * let errorMessage = getText(errorMsg);
490
301
  */
491
- Actions.prototype.getText = function (control) {
492
- return __awaiter(this, void 0, void 0, function () {
493
- var text, error_2;
494
- return __generator(this, function (_a) {
495
- switch (_a.label) {
496
- case 0:
497
- _a.trys.push([0, 2, , 3]);
498
- return [4 /*yield*/, control.controlLocator.first().innerText()];
499
- case 1:
500
- text = _a.sent();
501
- (0, logs_core_1.logConsole)("Value read from '".concat(control.controlDescription, "' is: '").concat(text, "'"));
502
- return [2 /*return*/, text];
503
- case 2:
504
- error_2 = _a.sent();
505
- (0, logs_core_1.logError)("\u274C Unable to read the text from '".concat(control.controlDescription, "' due to reason: ").concat(error_2));
506
- return [2 /*return*/, '']; // Return an empty string or handle it as needed
507
- case 3: return [2 /*return*/];
508
- }
509
- });
510
- });
511
- };
302
+ async getText(control) {
303
+ try {
304
+ const text = await control.controlLocator.first().innerText();
305
+ (0, logs_core_1.logConsole)(`Value read from '${control.controlDescription}' is: '${text}'`);
306
+ return text;
307
+ }
308
+ catch (error) {
309
+ (0, logs_core_1.logError)(`❌ Unable to read the text from '${control.controlDescription}' due to reason: ${error}`);
310
+ return ''; // Return an empty string or handle it as needed
311
+ }
312
+ }
512
313
  /**
513
314
  * Read textbox value of an element
514
315
  *
@@ -520,27 +321,17 @@ var Actions = /** @class */ (function (_super) {
520
321
  *
521
322
  * let textboxValue = getTextboxValue(usernameTxtbx);
522
323
  */
523
- Actions.prototype.getTextboxValue = function (control) {
524
- return __awaiter(this, void 0, void 0, function () {
525
- var value, error_3;
526
- return __generator(this, function (_a) {
527
- switch (_a.label) {
528
- case 0:
529
- _a.trys.push([0, 2, , 3]);
530
- return [4 /*yield*/, control.controlLocator.first().inputValue()];
531
- case 1:
532
- value = _a.sent();
533
- (0, logs_core_1.logConsole)("Value read from textbox '".concat(control.controlDescription, "' is: '").concat(value, "'"));
534
- return [2 /*return*/, value];
535
- case 2:
536
- error_3 = _a.sent();
537
- (0, logs_core_1.logError)("\u274C Unable to read the value from '".concat(control.controlDescription, "' due to reason: ").concat(error_3));
538
- return [2 /*return*/, '']; // Return an empty string or handle it as needed
539
- case 3: return [2 /*return*/];
540
- }
541
- });
542
- });
543
- };
324
+ async getTextboxValue(control) {
325
+ try {
326
+ const value = await control.controlLocator.first().inputValue();
327
+ (0, logs_core_1.logConsole)(`Value read from textbox '${control.controlDescription}' is: '${value}'`);
328
+ return value;
329
+ }
330
+ catch (error) {
331
+ (0, logs_core_1.logError)(`❌ Unable to read the value from '${control.controlDescription}' due to reason: ${error}`);
332
+ return ''; // Return an empty string or handle it as needed
333
+ }
334
+ }
544
335
  /**
545
336
  * Read selected dropdown item.
546
337
  *
@@ -552,27 +343,17 @@ var Actions = /** @class */ (function (_super) {
552
343
  *
553
344
  * let selectedItem = getSelectedItemFromDropdown(cityDrpdwn);
554
345
  */
555
- Actions.prototype.getSelectedItemFromDropdown = function (control) {
556
- return __awaiter(this, void 0, void 0, function () {
557
- var value, error_4;
558
- return __generator(this, function (_a) {
559
- switch (_a.label) {
560
- case 0:
561
- _a.trys.push([0, 2, , 3]);
562
- return [4 /*yield*/, control.controlLocator.first().inputValue()];
563
- case 1:
564
- value = _a.sent();
565
- (0, logs_core_1.logConsole)("Value read from '".concat(control.controlDescription, "' is: '").concat(value, "'"));
566
- return [2 /*return*/, value];
567
- case 2:
568
- error_4 = _a.sent();
569
- (0, logs_core_1.logError)("\u274C Unable to read the value from '".concat(control.controlDescription, "' due to reason: ").concat(error_4));
570
- return [2 /*return*/, '']; // Return an empty string or handle it as needed
571
- case 3: return [2 /*return*/];
572
- }
573
- });
574
- });
575
- };
346
+ async getSelectedItemFromDropdown(control) {
347
+ try {
348
+ const value = await control.controlLocator.first().inputValue();
349
+ (0, logs_core_1.logConsole)(`Value read from '${control.controlDescription}' is: '${value}'`);
350
+ return value;
351
+ }
352
+ catch (error) {
353
+ (0, logs_core_1.logError)(`❌ Unable to read the value from '${control.controlDescription}' due to reason: ${error}`);
354
+ return ''; // Return an empty string or handle it as needed
355
+ }
356
+ }
576
357
  /**
577
358
  * Read attribute value of element.
578
359
  *
@@ -585,27 +366,17 @@ var Actions = /** @class */ (function (_super) {
585
366
  *
586
367
  * let attributeValue = getAttributeValue(usernameTxtbx, "title");
587
368
  */
588
- Actions.prototype.getAttributeValue = function (control, attributeName) {
589
- return __awaiter(this, void 0, void 0, function () {
590
- var value, error_5;
591
- return __generator(this, function (_a) {
592
- switch (_a.label) {
593
- case 0:
594
- _a.trys.push([0, 2, , 3]);
595
- return [4 /*yield*/, control.controlLocator.first().getAttribute(attributeName)];
596
- case 1:
597
- value = _a.sent();
598
- (0, logs_core_1.logConsole)("Attribute value for '".concat(control.controlDescription, "' - Attribute Name: '").concat(attributeName, "', Value: '").concat(value, "'"));
599
- return [2 /*return*/, value];
600
- case 2:
601
- error_5 = _a.sent();
602
- (0, logs_core_1.logError)("\u274C Unable to read attribute value from '".concat(control.controlDescription, "' - Reason: ").concat(error_5));
603
- return [2 /*return*/, ''];
604
- case 3: return [2 /*return*/];
605
- }
606
- });
607
- });
608
- };
369
+ async getAttributeValue(control, attributeName) {
370
+ try {
371
+ let value = await control.controlLocator.first().getAttribute(attributeName);
372
+ (0, logs_core_1.logConsole)(`Attribute value for '${control.controlDescription}' - Attribute Name: '${attributeName}', Value: '${value}'`);
373
+ return value;
374
+ }
375
+ catch (error) {
376
+ (0, logs_core_1.logError)(`❌ Unable to read attribute value from '${control.controlDescription}' - Reason: ${error}`);
377
+ return '';
378
+ }
379
+ }
609
380
  /**
610
381
  * Scroll to an element.
611
382
  *
@@ -617,18 +388,9 @@ var Actions = /** @class */ (function (_super) {
617
388
  *
618
389
  * scrollToControl(loginBtn);
619
390
  */
620
- Actions.prototype.scrollToControl = function (control) {
621
- return __awaiter(this, void 0, void 0, function () {
622
- return __generator(this, function (_a) {
623
- switch (_a.label) {
624
- case 0: return [4 /*yield*/, control.controlLocator.first().scrollIntoViewIfNeeded()];
625
- case 1:
626
- _a.sent();
627
- return [2 /*return*/];
628
- }
629
- });
630
- });
631
- };
391
+ async scrollToControl(control) {
392
+ await control.controlLocator.first().scrollIntoViewIfNeeded();
393
+ }
632
394
  /**
633
395
  * Navigate back on browser.
634
396
  *
@@ -636,18 +398,9 @@ var Actions = /** @class */ (function (_super) {
636
398
  *
637
399
  * navigateBack();
638
400
  */
639
- Actions.prototype.navigateBack = function () {
640
- return __awaiter(this, void 0, void 0, function () {
641
- return __generator(this, function (_a) {
642
- switch (_a.label) {
643
- case 0: return [4 /*yield*/, this.page.goBack()];
644
- case 1:
645
- _a.sent();
646
- return [2 /*return*/];
647
- }
648
- });
649
- });
650
- };
401
+ async navigateBack() {
402
+ await this.page.goBack();
403
+ }
651
404
  /**
652
405
  * Handle web Alert by accepting or dismissing it
653
406
  *
@@ -657,43 +410,28 @@ var Actions = /** @class */ (function (_super) {
657
410
  *
658
411
  * handleAlert("Accept");
659
412
  */
660
- Actions.prototype.handleAlert = function (action) {
661
- return __awaiter(this, void 0, void 0, function () {
662
- var _this = this;
663
- return __generator(this, function (_a) {
664
- this.page.on("dialog", function (dialog) { return __awaiter(_this, void 0, void 0, function () {
665
- return __generator(this, function (_a) {
666
- switch (_a.label) {
667
- case 0:
668
- if (!(action.toLowerCase() === 'accept')) return [3 /*break*/, 2];
669
- return [4 /*yield*/, dialog.accept().then(function () {
670
- (0, logs_core_1.logAction)('Alert is accepted');
671
- return true;
672
- }, function (error) {
673
- (0, logs_core_1.logError)("\u274C Unable to accept alert: ".concat(error));
674
- throw error;
675
- })];
676
- case 1:
677
- _a.sent();
678
- return [3 /*break*/, 4];
679
- case 2: return [4 /*yield*/, dialog.dismiss().then(function () {
680
- (0, logs_core_1.logAction)('Alert is dismissed');
681
- return false;
682
- }, function (error) {
683
- (0, logs_core_1.logError)("\u274C Unable to dismiss alert: ".concat(error));
684
- throw error;
685
- })];
686
- case 3:
687
- _a.sent();
688
- _a.label = 4;
689
- case 4: return [2 /*return*/];
690
- }
691
- });
692
- }); });
693
- return [2 /*return*/];
694
- });
413
+ async handleAlert(action) {
414
+ this.page.on("dialog", async (dialog) => {
415
+ if (action.toLowerCase() === 'accept') {
416
+ await dialog.accept().then(() => {
417
+ (0, logs_core_1.logAction)('Alert is accepted');
418
+ return true;
419
+ }, (error) => {
420
+ (0, logs_core_1.logError)(`❌ Unable to accept alert: ${error}`);
421
+ throw error;
422
+ });
423
+ }
424
+ else {
425
+ await dialog.dismiss().then(() => {
426
+ (0, logs_core_1.logAction)('Alert is dismissed');
427
+ return false;
428
+ }, (error) => {
429
+ (0, logs_core_1.logError)(`❌ Unable to dismiss alert: ${error}`);
430
+ throw error;
431
+ });
432
+ }
695
433
  });
696
- };
434
+ }
697
435
  /**
698
436
  * Read the web alert message
699
437
  *
@@ -701,20 +439,12 @@ var Actions = /** @class */ (function (_super) {
701
439
  *
702
440
  * let alertMsg = getAlertDialogMessage();
703
441
  */
704
- Actions.prototype.getAlertDialogMessage = function () {
705
- return __awaiter(this, void 0, void 0, function () {
706
- var _this = this;
707
- return __generator(this, function (_a) {
708
- this.page.on('dialog', function (dialog) { return __awaiter(_this, void 0, void 0, function () {
709
- return __generator(this, function (_a) {
710
- (0, logs_core_1.logConsole)("Alert is Displayed with text: ".concat(dialog.message()));
711
- return [2 /*return*/];
712
- });
713
- }); });
714
- return [2 /*return*/, this.page.on('dialog', function (dialog) { return dialog.message(); })];
715
- });
442
+ async getAlertDialogMessage() {
443
+ this.page.on('dialog', async (dialog) => {
444
+ (0, logs_core_1.logConsole)(`Alert is Displayed with text: ${dialog.message()}`);
716
445
  });
717
- };
446
+ return this.page.on('dialog', dialog => dialog.message());
447
+ }
718
448
  /**
719
449
  * Return all elements for given search criteria.
720
450
  *
@@ -726,54 +456,21 @@ var Actions = /** @class */ (function (_super) {
726
456
  *
727
457
  * findAll(dateColumn);
728
458
  */
729
- Actions.prototype.findAll = function (control) {
730
- return __awaiter(this, void 0, void 0, function () {
731
- var allElements;
732
- return __generator(this, function (_a) {
733
- switch (_a.label) {
734
- case 0: return [4 /*yield*/, this.waitTillElementIsPresent(control)];
735
- case 1:
736
- _a.sent();
737
- return [4 /*yield*/, control.controlLocator.all()];
738
- case 2:
739
- allElements = _a.sent();
740
- return [2 /*return*/, allElements];
741
- }
742
- });
743
- });
744
- };
745
- Actions.prototype.getAllInnerText = function (control) {
746
- return __awaiter(this, void 0, void 0, function () {
747
- var allElements;
748
- return __generator(this, function (_a) {
749
- switch (_a.label) {
750
- case 0: return [4 /*yield*/, this.waitTillElementIsPresent(control)];
751
- case 1:
752
- _a.sent();
753
- return [4 /*yield*/, control.controlLocator.allInnerTexts()];
754
- case 2:
755
- allElements = _a.sent();
756
- return [2 /*return*/, allElements];
757
- }
758
- });
759
- });
760
- };
761
- Actions.prototype.getAllTextContents = function (control) {
762
- return __awaiter(this, void 0, void 0, function () {
763
- var allElements;
764
- return __generator(this, function (_a) {
765
- switch (_a.label) {
766
- case 0: return [4 /*yield*/, this.waitTillElementIsPresent(control)];
767
- case 1:
768
- _a.sent();
769
- return [4 /*yield*/, control.controlLocator.allTextContents()];
770
- case 2:
771
- allElements = _a.sent();
772
- return [2 /*return*/, allElements];
773
- }
774
- });
775
- });
776
- };
459
+ async findAll(control) {
460
+ await this.waitTillElementIsPresent(control);
461
+ const allElements = await control.controlLocator.all();
462
+ return allElements;
463
+ }
464
+ async getAllInnerText(control) {
465
+ await this.waitTillElementIsPresent(control);
466
+ const allElements = await control.controlLocator.allInnerTexts();
467
+ return allElements;
468
+ }
469
+ async getAllTextContents(control) {
470
+ await this.waitTillElementIsPresent(control);
471
+ const allElements = await control.controlLocator.allTextContents();
472
+ return allElements;
473
+ }
777
474
  /**
778
475
  * Read the web URL
779
476
  *
@@ -781,13 +478,9 @@ var Actions = /** @class */ (function (_super) {
781
478
  *
782
479
  * let url = getURL();
783
480
  */
784
- Actions.prototype.getURL = function () {
785
- return __awaiter(this, void 0, void 0, function () {
786
- return __generator(this, function (_a) {
787
- return [2 /*return*/, this.page.url()];
788
- });
789
- });
790
- };
481
+ async getURL() {
482
+ return this.page.url();
483
+ }
791
484
  /**
792
485
  * Read the title of web Page
793
486
  *
@@ -795,18 +488,11 @@ var Actions = /** @class */ (function (_super) {
795
488
  *
796
489
  * let title = getTitle();
797
490
  */
798
- Actions.prototype.getTitle = function () {
799
- return __awaiter(this, void 0, void 0, function () {
800
- return __generator(this, function (_a) {
801
- switch (_a.label) {
802
- case 0: return [4 /*yield*/, this.page.title().then(function (value) {
803
- (0, logs_core_1.logAction)("Title of the webpage is: '" + value + "'");
804
- })];
805
- case 1: return [2 /*return*/, _a.sent()];
806
- }
807
- });
491
+ async getTitle() {
492
+ return await this.page.title().then((value) => {
493
+ (0, logs_core_1.logAction)("Title of the webpage is: '" + value + "'");
808
494
  });
809
- };
495
+ }
810
496
  /**
811
497
  * Wait till URL contains value
812
498
  *
@@ -816,27 +502,15 @@ var Actions = /** @class */ (function (_super) {
816
502
  *
817
503
  * waitTillPageURLContains("https://www.google.com/");
818
504
  */
819
- Actions.prototype.waitTillPageURLContains = function (url_1) {
820
- return __awaiter(this, arguments, void 0, function (url, timeoutInSeconds) {
821
- var error_6;
822
- if (timeoutInSeconds === void 0) { timeoutInSeconds = 60; }
823
- return __generator(this, function (_a) {
824
- switch (_a.label) {
825
- case 0:
826
- _a.trys.push([0, 2, , 3]);
827
- return [4 /*yield*/, this.page.waitForURL(url, {
828
- timeout: timeoutInSeconds * 1000,
829
- waitUntil: "load"
830
- })];
831
- case 1: return [2 /*return*/, _a.sent()];
832
- case 2:
833
- error_6 = _a.sent();
834
- return [3 /*break*/, 3];
835
- case 3: return [2 /*return*/];
836
- }
837
- });
838
- });
839
- };
505
+ async waitTillPageURLContains(url, timeoutInSeconds = 60) {
506
+ try {
507
+ return await this.page.waitForURL(url, {
508
+ timeout: timeoutInSeconds * 1000,
509
+ waitUntil: "load"
510
+ });
511
+ }
512
+ catch (error) { }
513
+ }
840
514
  /**
841
515
  * Wait till element is present
842
516
  *
@@ -848,33 +522,16 @@ var Actions = /** @class */ (function (_super) {
848
522
  *
849
523
  * waitTillElementIsPresent(usernameTxtbx);
850
524
  */
851
- Actions.prototype.waitTillElementIsPresent = function (control_1) {
852
- return __awaiter(this, arguments, void 0, function (control, timeoutInSeconds) {
853
- var error_7;
854
- if (timeoutInSeconds === void 0) { timeoutInSeconds = 60; }
855
- return __generator(this, function (_a) {
856
- switch (_a.label) {
857
- case 0: return [4 /*yield*/, this.page.waitForLoadState("domcontentloaded")];
858
- case 1:
859
- _a.sent();
860
- _a.label = 2;
861
- case 2:
862
- _a.trys.push([2, 4, , 5]);
863
- return [4 /*yield*/, control.controlLocator.first().waitFor({
864
- state: "visible",
865
- timeout: timeoutInSeconds * 1000,
866
- })];
867
- case 3:
868
- _a.sent();
869
- return [3 /*break*/, 5];
870
- case 4:
871
- error_7 = _a.sent();
872
- return [3 /*break*/, 5];
873
- case 5: return [2 /*return*/];
874
- }
875
- });
876
- });
877
- };
525
+ async waitTillElementIsPresent(control, timeoutInSeconds = 60) {
526
+ await this.page.waitForLoadState("domcontentloaded");
527
+ try {
528
+ await control.controlLocator.first().waitFor({
529
+ state: "visible",
530
+ timeout: timeoutInSeconds * 1000,
531
+ });
532
+ }
533
+ catch (error) { }
534
+ }
878
535
  /**
879
536
  * Wait till element is attached to the dom
880
537
  *
@@ -886,33 +543,16 @@ var Actions = /** @class */ (function (_super) {
886
543
  *
887
544
  * waitTillElementIsAttached(usernameTxtbx);
888
545
  */
889
- Actions.prototype.waitTillElementIsAttached = function (control_1) {
890
- return __awaiter(this, arguments, void 0, function (control, timeoutInSeconds) {
891
- var error_8;
892
- if (timeoutInSeconds === void 0) { timeoutInSeconds = 60; }
893
- return __generator(this, function (_a) {
894
- switch (_a.label) {
895
- case 0: return [4 /*yield*/, this.page.waitForLoadState("domcontentloaded")];
896
- case 1:
897
- _a.sent();
898
- _a.label = 2;
899
- case 2:
900
- _a.trys.push([2, 4, , 5]);
901
- return [4 /*yield*/, control.controlLocator.first().waitFor({
902
- state: "attached",
903
- timeout: timeoutInSeconds * 1000,
904
- })];
905
- case 3:
906
- _a.sent();
907
- return [3 /*break*/, 5];
908
- case 4:
909
- error_8 = _a.sent();
910
- return [3 /*break*/, 5];
911
- case 5: return [2 /*return*/];
912
- }
913
- });
914
- });
915
- };
546
+ async waitTillElementIsAttached(control, timeoutInSeconds = 60) {
547
+ await this.page.waitForLoadState("domcontentloaded");
548
+ try {
549
+ await control.controlLocator.first().waitFor({
550
+ state: "attached",
551
+ timeout: timeoutInSeconds * 1000,
552
+ });
553
+ }
554
+ catch (error) { }
555
+ }
916
556
  /**
917
557
  * Wait till element is not displayed
918
558
  *
@@ -924,29 +564,15 @@ var Actions = /** @class */ (function (_super) {
924
564
  *
925
565
  * waitTillElementIsNotPresent(usernameTxtbx);
926
566
  */
927
- Actions.prototype.waitTillElementIsNotPresent = function (control_1) {
928
- return __awaiter(this, arguments, void 0, function (control, timeoutInSeconds) {
929
- var error_9;
930
- if (timeoutInSeconds === void 0) { timeoutInSeconds = 60; }
931
- return __generator(this, function (_a) {
932
- switch (_a.label) {
933
- case 0:
934
- _a.trys.push([0, 2, , 3]);
935
- return [4 /*yield*/, control.controlLocator.waitFor({
936
- state: "hidden",
937
- timeout: timeoutInSeconds * 1000,
938
- })];
939
- case 1:
940
- _a.sent();
941
- return [3 /*break*/, 3];
942
- case 2:
943
- error_9 = _a.sent();
944
- return [3 /*break*/, 3];
945
- case 3: return [2 /*return*/];
946
- }
947
- });
948
- });
949
- };
567
+ async waitTillElementIsNotPresent(control, timeoutInSeconds = 60) {
568
+ try {
569
+ await control.controlLocator.waitFor({
570
+ state: "hidden",
571
+ timeout: timeoutInSeconds * 1000,
572
+ });
573
+ }
574
+ catch (error) { }
575
+ }
950
576
  /**
951
577
  * Wait for execution to stop for given time
952
578
  *
@@ -956,101 +582,31 @@ var Actions = /** @class */ (function (_super) {
956
582
  *
957
583
  * sleep(10);
958
584
  */
959
- Actions.prototype.sleep = function () {
960
- return __awaiter(this, arguments, void 0, function (timeInSeconds) {
961
- if (timeInSeconds === void 0) { timeInSeconds = 5; }
962
- return __generator(this, function (_a) {
963
- switch (_a.label) {
964
- case 0: return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, timeInSeconds * 1000); })];
965
- case 1:
966
- _a.sent();
967
- return [2 /*return*/];
968
- }
969
- });
970
- });
971
- };
972
- Actions.prototype.waitForPageTimeout = function () {
973
- return __awaiter(this, arguments, void 0, function (timeoutInSeconds) {
974
- if (timeoutInSeconds === void 0) { timeoutInSeconds = 5; }
975
- return __generator(this, function (_a) {
976
- switch (_a.label) {
977
- case 0: return [4 /*yield*/, this.page.waitForTimeout(timeoutInSeconds * 1000)];
978
- case 1:
979
- _a.sent();
980
- return [2 /*return*/];
981
- }
982
- });
983
- });
984
- };
985
- Actions.prototype.waitForPageLoad = function () {
986
- return __awaiter(this, arguments, void 0, function (timeInSeconds) {
987
- if (timeInSeconds === void 0) { timeInSeconds = 30; }
988
- return __generator(this, function (_a) {
989
- switch (_a.label) {
990
- case 0: return [4 /*yield*/, this.page.waitForLoadState("load", { timeout: timeInSeconds * 1000 })];
991
- case 1:
992
- _a.sent();
993
- return [2 /*return*/];
994
- }
995
- });
996
- });
997
- };
998
- Actions.prototype.waitForPageDOMcontentLoaded = function () {
999
- return __awaiter(this, arguments, void 0, function (timeInSeconds) {
1000
- if (timeInSeconds === void 0) { timeInSeconds = 30; }
1001
- return __generator(this, function (_a) {
1002
- switch (_a.label) {
1003
- case 0: return [4 /*yield*/, this.page.waitForLoadState("domcontentloaded", { timeout: timeInSeconds * 1000 })];
1004
- case 1:
1005
- _a.sent();
1006
- return [2 /*return*/];
1007
- }
1008
- });
1009
- });
1010
- };
1011
- Actions.prototype.waitForNetworkIdle = function () {
1012
- return __awaiter(this, arguments, void 0, function (timeInSeconds) {
1013
- if (timeInSeconds === void 0) { timeInSeconds = 30; }
1014
- return __generator(this, function (_a) {
1015
- switch (_a.label) {
1016
- case 0: return [4 /*yield*/, this.page.waitForLoadState("networkidle", { timeout: timeInSeconds * 1000 })];
1017
- case 1:
1018
- _a.sent();
1019
- return [2 /*return*/];
1020
- }
1021
- });
1022
- });
1023
- };
1024
- Actions.prototype.refreshWebPage = function () {
1025
- return __awaiter(this, arguments, void 0, function (timeInSeconds) {
1026
- if (timeInSeconds === void 0) { timeInSeconds = 30; }
1027
- return __generator(this, function (_a) {
1028
- switch (_a.label) {
1029
- case 0: return [4 /*yield*/, this.page.reload({ waitUntil: "load", timeout: timeInSeconds * 1000 })];
1030
- case 1:
1031
- _a.sent();
1032
- return [2 /*return*/];
1033
- }
1034
- });
1035
- });
1036
- };
585
+ async sleep(timeInSeconds = 5) {
586
+ await new Promise(resolve => setTimeout(resolve, timeInSeconds * 1000));
587
+ }
588
+ async waitForPageTimeout(timeoutInSeconds = 5) {
589
+ await this.page.waitForTimeout(timeoutInSeconds * 1000);
590
+ }
591
+ async waitForPageLoad(timeInSeconds = 30) {
592
+ await this.page.waitForLoadState("load", { timeout: timeInSeconds * 1000 });
593
+ }
594
+ async waitForPageDOMcontentLoaded(timeInSeconds = 30) {
595
+ await this.page.waitForLoadState("domcontentloaded", { timeout: timeInSeconds * 1000 });
596
+ }
597
+ async waitForNetworkIdle(timeInSeconds = 30) {
598
+ await this.page.waitForLoadState("networkidle", { timeout: timeInSeconds * 1000 });
599
+ }
600
+ async refreshWebPage(timeInSeconds = 30) {
601
+ await this.page.reload({ waitUntil: "load", timeout: timeInSeconds * 1000 });
602
+ }
1037
603
  /**
1038
604
  * Close the browser instance
1039
605
  *
1040
606
  * closeBrowser();
1041
607
  */
1042
- Actions.prototype.closeBrowser = function () {
1043
- return __awaiter(this, void 0, void 0, function () {
1044
- return __generator(this, function (_a) {
1045
- switch (_a.label) {
1046
- case 0: return [4 /*yield*/, this.page.close()];
1047
- case 1:
1048
- _a.sent();
1049
- return [2 /*return*/];
1050
- }
1051
- });
1052
- });
1053
- };
1054
- return Actions;
1055
- }(basePage_core_1.BasePage));
608
+ async closeBrowser() {
609
+ await this.page.close();
610
+ }
611
+ }
1056
612
  exports.Actions = Actions;