promod 2.5.4 → 3.0.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.
Files changed (88) hide show
  1. package/built/cjs/config.d.ts +43 -0
  2. package/built/cjs/config.js +161 -0
  3. package/built/cjs/config.js.map +1 -0
  4. package/built/cjs/helpers/execute.script.d.ts +1 -1
  5. package/built/cjs/helpers/execute.script.js +1 -3
  6. package/built/cjs/helpers/execute.script.js.map +1 -1
  7. package/built/cjs/index.d.ts +3 -1
  8. package/built/cjs/index.js +4 -1
  9. package/built/cjs/index.js.map +1 -1
  10. package/built/cjs/interface.d.ts +8 -4
  11. package/built/cjs/mappers.d.ts +1 -1
  12. package/built/cjs/mappers.js.map +1 -1
  13. package/built/cjs/pw/index.d.ts +2 -2
  14. package/built/cjs/pw/pw_client.d.ts +12 -11
  15. package/built/cjs/pw/pw_client.js +47 -58
  16. package/built/cjs/pw/pw_client.js.map +1 -1
  17. package/built/cjs/pw/pw_element.d.ts +17 -16
  18. package/built/cjs/pw/pw_element.js +19 -46
  19. package/built/cjs/pw/pw_element.js.map +1 -1
  20. package/built/cjs/shared/custom_selector_filter.d.ts +19 -0
  21. package/built/cjs/shared/custom_selector_filter.js +40 -0
  22. package/built/cjs/shared/custom_selector_filter.js.map +1 -0
  23. package/built/cjs/shared/validate_browser.d.ts +7 -0
  24. package/built/cjs/shared/validate_browser.js +29 -0
  25. package/built/cjs/shared/validate_browser.js.map +1 -0
  26. package/built/cjs/swd/swd_alignment.d.ts +1 -1
  27. package/built/cjs/swd/swd_alignment.js +2 -28
  28. package/built/cjs/swd/swd_alignment.js.map +1 -1
  29. package/built/cjs/swd/swd_client.d.ts +13 -10
  30. package/built/cjs/swd/swd_client.js +95 -31
  31. package/built/cjs/swd/swd_client.js.map +1 -1
  32. package/built/cjs/swd/swd_element.d.ts +14 -13
  33. package/built/cjs/swd/swd_element.js +13 -12
  34. package/built/cjs/swd/swd_element.js.map +1 -1
  35. package/built/esm/config.d.ts +43 -0
  36. package/built/esm/config.js +158 -0
  37. package/built/esm/config.js.map +1 -0
  38. package/built/esm/helpers/execute.script.d.ts +1 -1
  39. package/built/esm/helpers/execute.script.js +5 -9
  40. package/built/esm/helpers/execute.script.js.map +1 -1
  41. package/built/esm/index.d.ts +3 -1
  42. package/built/esm/index.js +4 -7
  43. package/built/esm/index.js.map +1 -1
  44. package/built/esm/interface.d.ts +8 -4
  45. package/built/esm/interface.js +1 -2
  46. package/built/esm/internals/index.js +1 -5
  47. package/built/esm/internals/index.js.map +1 -1
  48. package/built/esm/internals/logger.js +3 -6
  49. package/built/esm/internals/logger.js.map +1 -1
  50. package/built/esm/mappers.d.ts +1 -1
  51. package/built/esm/mappers.js +1 -7
  52. package/built/esm/mappers.js.map +1 -1
  53. package/built/esm/pw/index.d.ts +2 -2
  54. package/built/esm/pw/index.js +7 -10
  55. package/built/esm/pw/index.js.map +1 -1
  56. package/built/esm/pw/pw_client.d.ts +12 -11
  57. package/built/esm/pw/pw_client.js +103 -118
  58. package/built/esm/pw/pw_client.js.map +1 -1
  59. package/built/esm/pw/pw_element.d.ts +17 -16
  60. package/built/esm/pw/pw_element.js +84 -118
  61. package/built/esm/pw/pw_element.js.map +1 -1
  62. package/built/esm/shared/custom_selector_filter.d.ts +19 -0
  63. package/built/esm/shared/custom_selector_filter.js +38 -0
  64. package/built/esm/shared/custom_selector_filter.js.map +1 -0
  65. package/built/esm/shared/validate_browser.d.ts +7 -0
  66. package/built/esm/shared/validate_browser.js +27 -0
  67. package/built/esm/shared/validate_browser.js.map +1 -0
  68. package/built/esm/swd/index.js +7 -10
  69. package/built/esm/swd/index.js.map +1 -1
  70. package/built/esm/swd/swd_alignment.d.ts +1 -1
  71. package/built/esm/swd/swd_alignment.js +13 -42
  72. package/built/esm/swd/swd_alignment.js.map +1 -1
  73. package/built/esm/swd/swd_client.d.ts +13 -10
  74. package/built/esm/swd/swd_client.js +171 -111
  75. package/built/esm/swd/swd_client.js.map +1 -1
  76. package/built/esm/swd/swd_element.d.ts +14 -13
  77. package/built/esm/swd/swd_element.js +90 -97
  78. package/built/esm/swd/swd_element.js.map +1 -1
  79. package/docs/client.md +335 -111
  80. package/docs/config.md +176 -0
  81. package/docs/element.md +214 -141
  82. package/docs/elements.md +125 -65
  83. package/docs/init.md +66 -12
  84. package/oxlintrc.json +20 -0
  85. package/package.json +15 -18
  86. package/readme.md +114 -14
  87. package/tsconfig.esm.json +6 -2
  88. package/tsconfig.json +4 -1
@@ -1,35 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Browser = exports.browser = void 0;
4
- const sat_utils_1 = require("sat-utils");
5
- const sat_compare_1 = require("sat-compare");
6
- const sat_wait_1 = require("sat-wait");
7
- const execute_script_1 = require("../helpers/execute.script");
8
- const mappers_1 = require("../mappers");
9
- const internals_1 = require("../internals");
10
- function validateBrowserCallMethod(browserClass) {
11
- const protKeys = Object.getOwnPropertyNames(browserClass.prototype).filter((item) => item !== 'constructor');
12
- for (const key of protKeys) {
13
- const descriptor = Object.getOwnPropertyDescriptor(browserClass.prototype, key);
14
- if ((0, sat_utils_1.isAsyncFunction)(descriptor.value)) {
15
- const originalMethod = descriptor.value;
16
- // eslint-disable-next-line no-inner-declarations
17
- async function decoratedWithChecker(...args) {
18
- if (!this._engineDriver) {
19
- throw new Error(`
20
- ${key}(): Seems like driver was not initialized,
21
- or visit https://github.com/Simple-Automation-Testing/promod/blob/master/docs/init.md#getDriver
22
- `);
23
- }
24
- return originalMethod.call(this, ...args);
25
- }
26
- Object.defineProperty(decoratedWithChecker, 'name', { value: key });
27
- descriptor.value = decoratedWithChecker;
28
- Object.defineProperty(browserClass.prototype, key, descriptor);
29
- }
30
- }
31
- return new browserClass();
32
- }
1
+ import { toArray, isNotEmptyObject, isNumber, isAsyncFunction, lengthToIndexesArray, asyncForEach, asyncSome, safeJSONstringify, isString, asyncFilter, } from 'sat-utils';
2
+ import { compare } from 'sat-compare';
3
+ import { waitFor } from 'sat-wait';
4
+ import { toNativeEngineExecuteScriptArgs } from '../helpers/execute.script';
5
+ import { KeysPW, resolveUrl } from '../mappers';
6
+ import { promodLogger } from '../internals';
7
+ import { validateBrowserCallMethod } from '../shared/validate_browser';
33
8
  class PageWrapper {
34
9
  /** @private */
35
10
  _context;
@@ -73,23 +48,23 @@ class PageWrapper {
73
48
  }
74
49
  async switchToNextPage(tabObject = {}) {
75
50
  const { strictEquality = true, index = 0, expectedQuantity, timeout = 5000, ...titleUrl } = tabObject;
76
- if ((0, sat_utils_1.isNumber)(expectedQuantity)) {
51
+ if (isNumber(expectedQuantity)) {
77
52
  let errorMessage;
78
- await (0, sat_wait_1.waitFor)(async () => {
53
+ await waitFor(async () => {
79
54
  const tabs = this._context.pages();
80
55
  errorMessage = () => `Expected browser tabs count is ${expectedQuantity}, current browser tabs count is ${tabs.length}`;
81
56
  return tabs.length === expectedQuantity;
82
57
  }, { message: errorMessage, timeout });
83
58
  }
84
- if ((0, sat_utils_1.isNumber)(index) && this._context.pages().length < index + 1) {
59
+ if (isNumber(index) && this._context.pages().length < index + 1) {
85
60
  throw new Error(`Index is out available browser tabs count, index is ${index}, current browser tabs count is ${this._context.pages().length}`);
86
61
  }
87
- else if ((0, sat_utils_1.isNumber)(index)) {
62
+ else if (isNumber(index)) {
88
63
  this._currentPage = this._context.pages()[index];
89
64
  }
90
- if ((0, sat_utils_1.isNotEmptyObject)(titleUrl)) {
65
+ if (isNotEmptyObject(titleUrl)) {
91
66
  let errorMessage;
92
- await (0, sat_wait_1.waitFor)(async () => {
67
+ await waitFor(async () => {
93
68
  const tabs = this._context.pages();
94
69
  for (const tab of tabs) {
95
70
  this._currentPage = tab;
@@ -97,11 +72,11 @@ class PageWrapper {
97
72
  url: await this._currentPage.url(),
98
73
  title: await this._currentPage.title(),
99
74
  };
100
- const { result } = (0, sat_compare_1.compare)(currentBrowserState, titleUrl, { stringIncludes: !strictEquality });
75
+ const { result } = compare(currentBrowserState, titleUrl, { stringIncludes: !strictEquality });
101
76
  if (result)
102
77
  return true;
103
78
  }
104
- errorMessage = () => `Expected browser tab state is ${(0, sat_utils_1.safeJSONstringify)(titleUrl)}, current browser tab states was not met`;
79
+ errorMessage = () => `Expected browser tab state is ${safeJSONstringify(titleUrl)}, current browser tab states was not met`;
105
80
  }, { message: errorMessage, timeout });
106
81
  }
107
82
  }
@@ -128,11 +103,11 @@ class ContextWrapper {
128
103
  const { currentBrowserName, newBrowserName, capabilities } = browserData;
129
104
  const config = capabilities || this._contextConfig;
130
105
  const { userAgent, isMobile, viewport } = config;
131
- if ((0, sat_utils_1.isString)(currentBrowserName)) {
106
+ if (isString(currentBrowserName)) {
132
107
  this._currentContext['__promodBrowserName'] = currentBrowserName;
133
108
  }
134
109
  this._currentContext = await this.server.newContext({ userAgent, isMobile, viewport });
135
- if ((0, sat_utils_1.isString)(newBrowserName)) {
110
+ if (isString(newBrowserName)) {
136
111
  this._currentContext['__promodBrowserName'] = newBrowserName;
137
112
  }
138
113
  if (!this._currentPage) {
@@ -141,10 +116,6 @@ class ContextWrapper {
141
116
  else {
142
117
  await this._currentPage.updateContext(this._currentContext);
143
118
  }
144
- this._currentContext.on('page', async (page) => {
145
- // @ts-ignore
146
- this._currentContext._pages.add(page);
147
- });
148
119
  }
149
120
  async getCurrentContext() {
150
121
  if (!this._currentContext) {
@@ -155,22 +126,13 @@ class ContextWrapper {
155
126
  // TODO implement with tab - page title
156
127
  async changeContext({ index, browserName }) {
157
128
  const contexts = await this.server.contexts();
158
- if ((0, sat_utils_1.isNumber)(index) && contexts[index]) {
159
- this._currentContext.removeListener('page', () => { });
129
+ if (isNumber(index) && contexts[index]) {
160
130
  this._currentContext = contexts[index];
161
- this._currentContext.on('page', async (page) => {
162
- // @ts-ignore
163
- this._currentContext._pages.add(page);
164
- });
165
131
  await this._currentPage.updateContext(this._currentContext);
166
132
  }
167
- if (browserName && contexts.find((item) => item['__promodBrowserName'] === browserName)) {
168
- this._currentContext.removeListener('page', () => { });
133
+ if (browserName &&
134
+ contexts.find((item) => item['__promodBrowserName'] === browserName)) {
169
135
  this._currentContext = contexts.find((item) => item['__promodBrowserName'] === browserName);
170
- this._currentContext.on('page', async (page) => {
171
- // @ts-ignore
172
- this._currentContext._pages.add(page);
173
- });
174
136
  await this._currentPage.updateContext(this._currentContext);
175
137
  }
176
138
  }
@@ -195,7 +157,7 @@ class ContextWrapper {
195
157
  }
196
158
  }
197
159
  class Browser {
198
- wait = sat_wait_1.waitFor;
160
+ wait = waitFor;
199
161
  _engineDriver;
200
162
  _contextWrapper;
201
163
  _contextFrame;
@@ -211,10 +173,14 @@ class Browser {
211
173
  /** @private */
212
174
  _requestsMocks;
213
175
  constructor() {
214
- this.wait = sat_wait_1.waitFor;
176
+ this.wait = waitFor;
215
177
  }
216
178
  static getBrowser() {
217
- return validateBrowserCallMethod(Browser);
179
+ return validateBrowserCallMethod(Browser, {
180
+ driverPropertyName: '_engineDriver',
181
+ excludedMethods: ['constructor'],
182
+ errorUrlSuffix: '#getDriver',
183
+ });
218
184
  }
219
185
  currentClient() {
220
186
  return this._engineDriver;
@@ -229,6 +195,9 @@ class Browser {
229
195
  }
230
196
  this._requestsMocks.push(mock);
231
197
  }
198
+ clearMockRequests() {
199
+ this._requestsMocks = [];
200
+ }
232
201
  injectEngine({ context, page }) {
233
202
  if (context) {
234
203
  const browser = context.browser();
@@ -240,14 +209,16 @@ class Browser {
240
209
  this._contextWrapper = new ContextWrapper(browser);
241
210
  }
242
211
  }
243
- setClient({ driver, lauchNewInstance, baseConfig } = { driver: null }) {
212
+ setClient({ driver, lauchNewInstance, baseConfig, } = {
213
+ driver: null,
214
+ }) {
244
215
  this._engineDriver = driver || this._engineDriver;
245
216
  this._contextWrapper = new ContextWrapper(this._engineDriver, baseConfig);
246
217
  this._createNewDriver = lauchNewInstance;
247
218
  }
248
219
  /** @private */
249
220
  async getWorkingContext() {
250
- if ((0, sat_utils_1.isAsyncFunction)(this._contextFrame)) {
221
+ if (isAsyncFunction(this._contextFrame)) {
251
222
  return await this._contextFrame();
252
223
  }
253
224
  return await this._contextWrapper.getCurrentPage();
@@ -290,22 +261,22 @@ class Browser {
290
261
  * @returns {Promise<any[]>}
291
262
  */
292
263
  async getTabs() {
293
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "getTabs" from wrapped API`);
264
+ promodLogger.engineLog(`[PW] Promod client interface calls method "getTabs" from wrapped API`);
294
265
  return await (await this._contextWrapper.getCurrentContext()).pages();
295
266
  }
296
267
  async runNewBrowser(browserData = {}) {
297
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "runNewBrowser" from wrapped API, args: `, browserData.currentBrowserName, browserData.newBrowserName, browserData.capabilities);
268
+ promodLogger.engineLog(`[PW] Promod client interface calls method "runNewBrowser" from wrapped API, args: `, browserData.currentBrowserName, browserData.newBrowserName, browserData.capabilities);
298
269
  await this._contextWrapper.runNewContext(browserData);
299
270
  }
300
271
  async switchToBrowser(browserData = {}) {
301
272
  const { index, browserName, ...tabData } = browserData;
302
- if ((0, sat_utils_1.isNumber)(index) && (await this._contextWrapper.getContexts()).length > index) {
273
+ if (isNumber(index) && (await this._contextWrapper.getContexts()).length > index) {
303
274
  return await this._contextWrapper.changeContext({ index });
304
275
  }
305
- if ((0, sat_utils_1.isString)(browserName)) {
276
+ if (isString(browserName)) {
306
277
  return await this._contextWrapper.changeContext({ browserName });
307
278
  }
308
- if ((0, sat_utils_1.isNotEmptyObject)(tabData)) {
279
+ if (isNotEmptyObject(tabData)) {
309
280
  for (const [index] of (await this._contextWrapper.getContexts()).entries()) {
310
281
  await this._contextWrapper.changeContext({ index });
311
282
  const result = await this.switchToBrowserTab(tabData)
@@ -319,10 +290,10 @@ class Browser {
319
290
  throw new Error(`switchToBrowser(): required browser was not found`);
320
291
  }
321
292
  get keyboard() {
322
- return mappers_1.KeysPW;
293
+ return KeysPW;
323
294
  }
324
295
  get Key() {
325
- return mappers_1.KeysPW;
296
+ return KeysPW;
326
297
  }
327
298
  get baseUrl() {
328
299
  return this.appBaseUrl;
@@ -336,10 +307,20 @@ class Browser {
336
307
  return;
337
308
  }
338
309
  await this.closeAllpagesExceptInitial();
310
+ // switch context back to the remaining initial page
311
+ await this._contextWrapper.switchPage({ index: 0 });
339
312
  // set initialTab to null for further "it" to use
340
313
  this.initialTab = null;
341
314
  }
342
- async closeAllpagesExceptInitial() { }
315
+ async closeAllpagesExceptInitial() {
316
+ promodLogger.engineLog(`[PW] Promod client interface calls method "closeAllpagesExceptInitial" from wrapped API`);
317
+ const pages = (await this._contextWrapper.getCurrentContext()).pages();
318
+ for (const page of pages) {
319
+ if (page !== this.initialTab) {
320
+ await page.close();
321
+ }
322
+ }
323
+ }
343
324
  /**
344
325
  *
345
326
  * @example
@@ -368,7 +349,7 @@ class Browser {
368
349
  * @return {Promise<void>}
369
350
  */
370
351
  async switchToTab(tabObject) {
371
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "switchToTab" from wrapped API, args: `, tabObject);
352
+ promodLogger.engineLog(`[PW] Promod client interface calls method "switchToTab" from wrapped API, args: `, tabObject);
372
353
  if (!this.initialTab) {
373
354
  this.initialTab = await this.getCurrentTab();
374
355
  }
@@ -391,7 +372,7 @@ class Browser {
391
372
  */
392
373
  async makeActionAtEveryTab(action, handles) {
393
374
  const tabsCount = await this.getTabsCount();
394
- await (0, sat_utils_1.asyncForEach)((0, sat_utils_1.lengthToIndexesArray)(tabsCount), async (index) => {
375
+ await asyncForEach(lengthToIndexesArray(tabsCount), async (index) => {
395
376
  await this.switchToBrowserTab({ index });
396
377
  await action();
397
378
  });
@@ -410,7 +391,7 @@ class Browser {
410
391
  async setCookies(cookies) {
411
392
  const currentUrl = await this.getCurrentUrl();
412
393
  const parsed = new URL(currentUrl);
413
- const cookiesToSet = (0, sat_utils_1.toArray)(cookies).map(({ url = parsed.origin, domain, path, ...items }) => {
394
+ const cookiesToSet = toArray(cookies).map(({ url = parsed.origin, domain, path, ...items }) => {
414
395
  if (domain && path) {
415
396
  return { domain, path, ...items };
416
397
  }
@@ -515,7 +496,7 @@ class Browser {
515
496
  * @returns {Promise<Buffer>}
516
497
  */
517
498
  async takeScreenshot(opts = { timeout: 2500 }) {
518
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "takeScreenshot" from wrapped API`);
499
+ promodLogger.engineLog(`[PW] Promod client interface calls method "takeScreenshot" from wrapped API`);
519
500
  return (await this._contextWrapper.getCurrentPage()).screenshot(opts).catch((e) => {
520
501
  return Buffer.from('');
521
502
  });
@@ -567,11 +548,11 @@ class Browser {
567
548
  * @return {Promise<void>}
568
549
  */
569
550
  async keyDownAndHold(key, element) {
570
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "keyDownAndHold" from wrapped API, args: `, key, element);
551
+ promodLogger.engineLog(`[PW] Promod client interface calls method "keyDownAndHold" from wrapped API, args: `, key, element);
571
552
  if (element) {
572
553
  (await element.getEngineElement()).hover();
573
554
  }
574
- for (const k of (0, sat_utils_1.toArray)(key)) {
555
+ for (const k of toArray(key)) {
575
556
  await (await this.getCurrentPage()).keyboard.down(k);
576
557
  await (await this.getCurrentPage()).keyboard.down(k);
577
558
  }
@@ -588,11 +569,11 @@ class Browser {
588
569
  * @return {Promise<void>}
589
570
  */
590
571
  async keyUp(key, element) {
591
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "keyUp" from wrapped API, args: `, key, element);
572
+ promodLogger.engineLog(`[PW] Promod client interface calls method "keyUp" from wrapped API, args: `, key, element);
592
573
  if (element) {
593
574
  (await element.getEngineElement()).hover();
594
575
  }
595
- for (const k of (0, sat_utils_1.toArray)(key)) {
576
+ for (const k of toArray(key)) {
596
577
  await (await this.getCurrentPage()).keyboard.up(k);
597
578
  }
598
579
  return true;
@@ -608,11 +589,11 @@ class Browser {
608
589
  * @return {Promise<void>}
609
590
  */
610
591
  async keyDownAndUp(key, element) {
611
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "keyUp" from wrapped API, args: `, key, element);
592
+ promodLogger.engineLog(`[PW] Promod client interface calls method "keyUp" from wrapped API, args: `, key, element);
612
593
  if (element) {
613
594
  (await element.getEngineElement()).focus();
614
595
  }
615
- for (const k of (0, sat_utils_1.toArray)(key)) {
596
+ for (const k of toArray(key)) {
616
597
  await (await this.getCurrentPage()).keyboard.down(k);
617
598
  await (await this.getCurrentPage()).keyboard.up(k);
618
599
  }
@@ -628,7 +609,7 @@ class Browser {
628
609
  * @return {Promise<{ height: number; width: number }>} window size
629
610
  */
630
611
  async getWindomSize() {
631
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "getWindomSize" from wrapped API`);
612
+ promodLogger.engineLog(`[PW] Promod client interface calls method "getWindomSize" from wrapped API`);
632
613
  return await (await this._contextWrapper.getCurrentPage()).evaluate(() => ({ height: window.outerHeight, width: window.outerWidth }));
633
614
  }
634
615
  /**
@@ -657,13 +638,13 @@ class Browser {
657
638
  * @return {Promise<void>}
658
639
  */
659
640
  async get(url) {
660
- const getUrl = (0, mappers_1.resolveUrl)(url, this.appBaseUrl);
661
- (await this._contextWrapper.getCurrentPage()).goto(getUrl);
641
+ const getUrl = resolveUrl(url, this.appBaseUrl);
642
+ (await (await this._contextWrapper.getCurrentPage()).goto(getUrl));
662
643
  await (await this._contextWrapper.getCurrentPage())
663
- .waitForLoadState('domcontentloaded', { timeout: 10_000 })
644
+ .waitForLoadState('domcontentloaded', { timeout: 5_000 })
664
645
  .catch(console.error);
665
646
  await (await this._contextWrapper.getCurrentPage())
666
- .waitForLoadState('load', { timeout: 10_000 })
647
+ .waitForLoadState('load', { timeout: 5_000 })
667
648
  .catch(console.error);
668
649
  }
669
650
  /**
@@ -678,31 +659,40 @@ class Browser {
678
659
  * @return {Promise<void>}
679
660
  */
680
661
  async switchToIframe(selector, jumpToDefaultFirst = false, { timeout = 30_000, message = '' } = {}) {
681
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "switchToIframe" from wrapped API, args: `, selector, jumpToDefaultFirst);
662
+ promodLogger.engineLog(`[PW] Promod client interface calls method "switchToIframe" from wrapped API, args: `, selector, jumpToDefaultFirst);
682
663
  if (jumpToDefaultFirst) {
683
664
  await this.switchToDefauldIframe();
684
665
  }
685
666
  if (typeof selector === 'string') {
686
667
  this._contextFrame = async () => {
687
- return await (0, sat_wait_1.waitFor)(async () => {
668
+ return await waitFor(async () => {
688
669
  const page = await this.getCurrentPage();
689
670
  const pageFrames = await page.frames();
690
- const frames = await (0, sat_utils_1.asyncFilter)(pageFrames, async (frame) => (await frame
691
- .frameLocator(selector)
671
+ const frames = await asyncFilter(pageFrames, async (frame) => (await frame
672
+ .locator(selector)
692
673
  .first()
674
+ .contentFrame()
693
675
  .locator('*')
694
676
  .all()
695
677
  .catch(() => [])).length > 0);
696
678
  for (const [_index, frame] of frames.entries()) {
697
679
  const allElements = await frame
698
- .frameLocator(selector)
680
+ .locator(selector)
699
681
  .first()
682
+ .contentFrame()
700
683
  .locator('*')
701
684
  .all()
702
685
  .catch(() => []);
703
- const res = await (0, sat_utils_1.asyncSome)(allElements, async (item) => await item.isVisible());
686
+ const res = await asyncSome(allElements, async (item) => await item.isVisible());
704
687
  if (res) {
705
- return (await (await frame.frameLocator(selector).first().locator('*').first().elementHandle({ timeout: 25 })).ownerFrame());
688
+ const handle = await frame
689
+ .locator(selector)
690
+ .first()
691
+ .contentFrame()
692
+ .locator('*')
693
+ .first()
694
+ .evaluateHandle((el) => el);
695
+ return (await handle.ownerFrame());
706
696
  }
707
697
  }
708
698
  }, {
@@ -727,7 +717,7 @@ class Browser {
727
717
  * @return {Promise<void>}
728
718
  */
729
719
  async switchToDefauldIframe() {
730
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "switchToDefauldIframe" from wrapped API`);
720
+ promodLogger.engineLog(`[PW] Promod client interface calls method "switchToDefauldIframe" from wrapped API`);
731
721
  this._contextFrame = null;
732
722
  this._contextFrameHolder = null;
733
723
  }
@@ -743,7 +733,7 @@ class Browser {
743
733
  * @return {Promise<void>}
744
734
  */
745
735
  async setWindowSize(width, height) {
746
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "setWindowSize" from wrapped API, args: `, width, height);
736
+ promodLogger.engineLog(`[PW] Promod client interface calls method "setWindowSize" from wrapped API, args: `, width, height);
747
737
  (await this._contextWrapper.getCurrentPage()).setViewportSize({ width, height });
748
738
  }
749
739
  /**
@@ -757,7 +747,7 @@ class Browser {
757
747
  * @return {Promise<void>}
758
748
  */
759
749
  async sleep(time) {
760
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "sleep" from wrapped API, args: `, time);
750
+ promodLogger.engineLog(`[PW] Promod client interface calls method "sleep" from wrapped API, args: `, time);
761
751
  await (() => new Promise((resolve) => setTimeout(resolve, time)))();
762
752
  }
763
753
  /**
@@ -768,26 +758,22 @@ class Browser {
768
758
  * const result = await browser.executeScript(() => document.body.offsetHeight);
769
759
  *
770
760
  * @param {!Function} script scripts that needs to be executed
771
- * @param {any|any[]} [args] function args
761
+ * @param {any[]} [args] function args
772
762
  * @returns {Promise<any>}
773
763
  */
774
- async executeScript(script, args) {
775
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "executeScript" from wrapped API, args: `, script, args);
776
- let recomposedArgs = await (0, execute_script_1.toNativeEngineExecuteScriptArgs)(args);
777
- if ((0, sat_utils_1.isArray)(recomposedArgs)) {
778
- for (const [index, item] of Object.entries(recomposedArgs)) {
779
- recomposedArgs[index] = item?.elementHandle ? await item?.elementHandle() : item;
780
- }
781
- }
782
- else {
783
- recomposedArgs = recomposedArgs?.elementHandle ? await recomposedArgs.elementHandle() : recomposedArgs;
764
+ async executeScript(script, args = []) {
765
+ promodLogger.engineLog(`[PW] Promod client interface calls method "executeScript" from wrapped API, args: `, script, args);
766
+ const recomposedArgs = await toNativeEngineExecuteScriptArgs(args);
767
+ for (let i = 0; i < recomposedArgs.length; i++) {
768
+ const item = recomposedArgs[i];
769
+ recomposedArgs[i] = item?.evaluate ? await item?.evaluateHandle((node) => node) : item;
784
770
  }
785
- const result = await (0, sat_wait_1.waitFor)(async () => await (await this.getWorkingContext()).evaluate(script, recomposedArgs), {
771
+ const result = await waitFor(async () => await (await this.getWorkingContext()).evaluate(script, recomposedArgs), {
786
772
  stopIfNoError: true,
787
773
  timeout: 2000,
788
774
  interval: 500,
789
775
  });
790
- for (const item of (0, sat_utils_1.toArray)(recomposedArgs)) {
776
+ for (const item of recomposedArgs) {
791
777
  item?.dispose && (await item?.dispose());
792
778
  }
793
779
  return result;
@@ -802,7 +788,7 @@ class Browser {
802
788
  * @return {Promise<void>}
803
789
  */
804
790
  async back() {
805
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "back" from wrapped API`);
791
+ promodLogger.engineLog(`[PW] Promod client interface calls method "back" from wrapped API`);
806
792
  (await this._contextWrapper.getCurrentPage()).goBack();
807
793
  }
808
794
  /**
@@ -815,7 +801,7 @@ class Browser {
815
801
  * @return {Promise<void>}
816
802
  */
817
803
  async forward() {
818
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "forward" from wrapped API`);
804
+ promodLogger.engineLog(`[PW] Promod client interface calls method "forward" from wrapped API`);
819
805
  (await this._contextWrapper.getCurrentPage()).goForward();
820
806
  }
821
807
  /**
@@ -828,7 +814,7 @@ class Browser {
828
814
  * @return {Promise<void>}
829
815
  */
830
816
  async refresh() {
831
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "refresh" from wrapped API`);
817
+ promodLogger.engineLog(`[PW] Promod client interface calls method "refresh" from wrapped API`);
832
818
  (await this._contextWrapper.getCurrentPage()).reload();
833
819
  }
834
820
  /**
@@ -841,7 +827,7 @@ class Browser {
841
827
  * @return {Promise<void>}
842
828
  */
843
829
  async quit() {
844
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "quit" from wrapped API`);
830
+ promodLogger.engineLog(`[PW] Promod client interface calls method "quit" from wrapped API`);
845
831
  await (await this._contextWrapper.getCurrentContext()).close();
846
832
  }
847
833
  /**
@@ -867,17 +853,17 @@ class Browser {
867
853
  * @return {Promise<void>}
868
854
  */
869
855
  async close() {
870
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "close" from wrapped API`);
856
+ promodLogger.engineLog(`[PW] Promod client interface calls method "close" from wrapped API`);
871
857
  (await this.getCurrentPage()).close();
872
858
  }
873
859
  async scrollElementByMouseWheel(element, x, y, deltaX, deltaY, duration) {
874
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "scrollElementByMouseWheel" from wrapped API, args: `, element, x, y, deltaX, deltaY, duration);
860
+ promodLogger.engineLog(`[PW] Promod client interface calls method "scrollElementByMouseWheel" from wrapped API, args: `, element, x, y, deltaX, deltaY, duration);
875
861
  const { x: elementX, y: elementY } = await element.getRect();
876
862
  (await this.getCurrentPage()).mouse.move(elementX + x, elementY + y);
877
863
  (await this.getCurrentPage()).mouse.wheel(deltaX, deltaY);
878
864
  }
879
865
  async scrollByMouseWheel(x, y, deltaX, deltaY, duration) {
880
- internals_1.promodLogger.engineLog(`[PW] Promod client interface calls method "scrollByMouseWheel" from wrapped API, args: `, x, y, deltaX, deltaY, duration);
866
+ promodLogger.engineLog(`[PW] Promod client interface calls method "scrollByMouseWheel" from wrapped API, args: `, x, y, deltaX, deltaY, duration);
881
867
  (await this.getCurrentPage()).mouse.move(x, y);
882
868
  (await this.getCurrentPage()).mouse.wheel(deltaX, deltaY);
883
869
  }
@@ -890,7 +876,6 @@ class Browser {
890
876
  await (await this.getCurrentPage()).keyboard.up('Enter');
891
877
  }
892
878
  }
893
- exports.Browser = Browser;
894
879
  const browser = Browser.getBrowser();
895
- exports.browser = browser;
880
+ export { browser, Browser };
896
881
  //# sourceMappingURL=pw_client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pw_client.js","sourceRoot":"","sources":["../../../lib/pw/pw_client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pw_client.js","sourceRoot":"","sources":["../../../lib/pw/pw_client.ts"],"names":[],"mappings":"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"}