@applitools/spec-driver-puppeteer 1.1.38 → 1.1.39

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.
@@ -167,12 +167,14 @@ async function mainContext(frame) {
167
167
  }
168
168
  exports.mainContext = mainContext;
169
169
  async function parentContext(frame) {
170
+ var _a;
170
171
  frame = extractContext(frame);
171
- return frame.parentFrame();
172
+ return (_a = frame.parentFrame()) !== null && _a !== void 0 ? _a : frame;
172
173
  }
173
174
  exports.parentContext = parentContext;
174
175
  async function childContext(_frame, element) {
175
- return element.contentFrame();
176
+ const frame = (await element.contentFrame());
177
+ return frame;
176
178
  }
177
179
  exports.childContext = childContext;
178
180
  async function findElement(frame, selector, parent) {
@@ -186,10 +188,9 @@ async function findElements(frame, selector, parent) {
186
188
  }
187
189
  exports.findElements = findElements;
188
190
  async function setElementText(frame, element, text) {
189
- if (isSelector(element))
190
- element = await findElement(frame, element);
191
- await element.evaluate((element) => (element.value = ''));
192
- await element.type(text);
191
+ const resolvedElement = isSelector(element) ? await findElement(frame, element) : element;
192
+ await (resolvedElement === null || resolvedElement === void 0 ? void 0 : resolvedElement.evaluate(element => (element.value = '')));
193
+ await (resolvedElement === null || resolvedElement === void 0 ? void 0 : resolvedElement.type(text));
193
194
  }
194
195
  exports.setElementText = setElementText;
195
196
  async function getViewportSize(page) {
@@ -239,21 +240,18 @@ async function takeScreenshot(page) {
239
240
  }
240
241
  exports.takeScreenshot = takeScreenshot;
241
242
  async function click(frame, element) {
242
- if (isSelector(element))
243
- element = await findElement(frame, element);
244
- await element.click();
243
+ const resolvedElement = isSelector(element) ? await findElement(frame, element) : element;
244
+ await (resolvedElement === null || resolvedElement === void 0 ? void 0 : resolvedElement.click());
245
245
  }
246
246
  exports.click = click;
247
247
  async function hover(frame, element) {
248
- if (isSelector(element))
249
- element = await findElement(frame, element);
250
- await element.hover();
248
+ const resolvedElement = isSelector(element) ? await findElement(frame, element) : element;
249
+ await (resolvedElement === null || resolvedElement === void 0 ? void 0 : resolvedElement.hover());
251
250
  }
252
251
  exports.hover = hover;
253
252
  async function scrollIntoView(frame, element, align = false) {
254
- if (isSelector(element))
255
- element = await findElement(frame, element);
256
- await frame.evaluate((element, align) => element.scrollIntoView(align), element, align);
253
+ const resolvedElement = isSelector(element) ? await findElement(frame, element) : element;
254
+ await frame.evaluate((element, align) => element === null || element === void 0 ? void 0 : element.scrollIntoView(align), resolvedElement, align);
257
255
  }
258
256
  exports.scrollIntoView = scrollIntoView;
259
257
  async function waitUntilDisplayed(frame, selector) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/spec-driver-puppeteer",
3
- "version": "1.1.38",
3
+ "version": "1.1.39",
4
4
  "keywords": [
5
5
  "puppeteer",
6
6
  "chrome devtools protocol",
@@ -36,8 +36,8 @@
36
36
  "types"
37
37
  ],
38
38
  "scripts": {
39
- "lint": "eslint '**/*.ts'",
40
- "build": "ttsc",
39
+ "lint": "node ../../node_modules/.bin/eslint '**/*.ts'",
40
+ "build": "node ../../node_modules/.bin/ttsc --project ./tsconfig.build.json",
41
41
  "test": "mocha ./test/**/*.spec.ts --no-timeouts -r ts-node/register",
42
42
  "test:sanity": "yarn test",
43
43
  "setup": "yarn puppeteer:setup",
@@ -50,36 +50,18 @@
50
50
  "version": "bongo version",
51
51
  "postversion": "bongo postversion --skip-release-notification"
52
52
  },
53
- "husky": {
54
- "hooks": {
55
- "pre-push": "yarn bongo lint"
56
- }
57
- },
58
53
  "dependencies": {
59
- "@applitools/driver": "1.11.26",
60
- "@applitools/utils": "1.3.28"
54
+ "@applitools/driver": "1.11.28",
55
+ "@applitools/utils": "1.3.30"
61
56
  },
62
57
  "devDependencies": {
63
58
  "@applitools/api-extractor": "1.2.11",
64
59
  "@applitools/bongo": "^2.2.2",
65
- "@applitools/scripts": "1.2.0",
66
- "@applitools/test-utils": "1.5.10",
60
+ "@applitools/test-utils": "1.5.12",
67
61
  "@types/mocha": "^9.1.1",
68
62
  "@types/node": "12",
69
- "@typescript-eslint/eslint-plugin": "^5.27.0",
70
- "@typescript-eslint/parser": "^5.27.0",
71
- "eslint": "^8.16.0",
72
- "eslint-config-prettier": "^8.5.0",
73
- "eslint-plugin-mocha-no-only": "^1.1.1",
74
- "eslint-plugin-node": "^11.1.0",
75
- "eslint-plugin-prettier": "^4.0.0",
76
- "husky": "^4.3.7",
77
63
  "mocha": "^9.2.2",
78
- "prettier": "^2.6.2",
79
- "puppeteer": "^15.3.1",
80
- "ts-node": "^10.8.0",
81
- "ttypescript": "^1.5.13",
82
- "typescript": "^4.7.2"
64
+ "puppeteer": "^15.3.1"
83
65
  },
84
66
  "peerDependencies": {
85
67
  "puppeteer": ">=5.3.0"
package/types/index.d.ts CHANGED
@@ -4,16 +4,16 @@ export function isDriver(page: any): page is Driver;
4
4
  export function isContext(frame: any): frame is Context;
5
5
  export function isElement(element: any): element is Element<globalThis.Element>;
6
6
  export function isSelector(selector: any): selector is Selector;
7
- export function transformSelector(selector: string | { selector: string | Selector; type?: string; }): Selector;
8
- export function untransformSelector(selector: Selector): string | { selector: string; type?: string; };
7
+ export function transformSelector(selector: string | { selector: string | Selector; type?: undefined | string; }): Selector;
8
+ export function untransformSelector(selector: Selector): string | { selector: string; type?: undefined | string; };
9
9
  export function extractContext(page: Driver | Context): Context;
10
10
  export function isStaleElementError(err: any): boolean;
11
11
  export function executeScript(frame: Context, script: string | ((arg: any) => any), arg: any): Promise<any>;
12
12
  export function mainContext(frame: Context): Promise<Context>;
13
13
  export function parentContext(frame: Context): Promise<Context>;
14
14
  export function childContext(_frame: Context, element: Element<globalThis.Element>): Promise<Context>;
15
- export function findElement(frame: Context, selector: Selector, parent?: Element<globalThis.Element>): Promise<Element<globalThis.Element>>;
16
- export function findElements(frame: Context, selector: Selector, parent?: Element<globalThis.Element>): Promise<Array<Element<globalThis.Element>>>;
15
+ export function findElement(frame: Context, selector: Selector, parent?: undefined | Element<globalThis.Element>): Promise<null | Element<globalThis.Element>>;
16
+ export function findElements(frame: Context, selector: Selector, parent?: undefined | Element<globalThis.Element>): Promise<Array<Element<globalThis.Element>>>;
17
17
  export function setElementText(frame: Context, element: Selector | Element<globalThis.Element>, text: string): Promise<void>;
18
18
  export function getViewportSize(page: Driver): Promise<{ width: number; height: number; }>;
19
19
  export function setViewportSize(page: Driver, size: { width: number; height: number; }): Promise<void>;
@@ -28,7 +28,7 @@ export function hover(frame: Context, element: Selector | Element<globalThis.Ele
28
28
  export function scrollIntoView(frame: Context, element: Selector | Element<globalThis.Element>, align: boolean): Promise<void>;
29
29
  export function waitUntilDisplayed(frame: Context, selector: Selector): Promise<void>;
30
30
  export function build(env: any): Promise<[Driver, () => Promise<void>]>;
31
- export type Driver = import('puppeteer').Page & { __applitoolsBrand?: never; };
32
- export type Context = import('puppeteer').Frame & { __applitoolsBrand?: never; };
33
- export type Element<T extends globalThis.Element = globalThis.Element> = import('puppeteer').ElementHandle<T> & { __applitoolsBrand?: never; };
34
- export type Selector = string & { __applitoolsBrand?: never; };
31
+ export type Driver = import('puppeteer').Page & { __applitoolsBrand?: undefined; };
32
+ export type Context = import('puppeteer').Frame & { __applitoolsBrand?: undefined; };
33
+ export type Element<T extends globalThis.Element = globalThis.Element> = import('puppeteer').ElementHandle<T> & { __applitoolsBrand?: undefined; };
34
+ export type Selector = string & { __applitoolsBrand?: undefined; };