webdriverio 8.2.4 → 8.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/commands/browser/$$.d.ts +1 -1
- package/build/commands/browser/$$.d.ts.map +1 -1
- package/build/commands/browser/$$.js +11 -2
- package/build/commands/element/getProperty.d.ts +2 -2
- package/build/scripts/getProperty.d.ts +2 -2
- package/build/utils/getElementObject.d.ts +1 -1
- package/build/utils/getElementObject.d.ts.map +1 -1
- package/build/utils/index.d.ts +2 -1
- package/build/utils/index.d.ts.map +1 -1
- package/build/utils/index.js +1 -1
- package/package.json +2 -2
|
@@ -55,5 +55,5 @@ import type { Selector, ElementArray } from '../../types.js';
|
|
|
55
55
|
* @type utility
|
|
56
56
|
*
|
|
57
57
|
*/
|
|
58
|
-
export declare function $$(this: WebdriverIO.Browser | WebdriverIO.Element, selector: Selector | ElementReference[] | WebdriverIO.Element[]): Promise<ElementArray>;
|
|
58
|
+
export declare function $$(this: WebdriverIO.Browser | WebdriverIO.Element, selector: Selector | ElementReference[] | WebdriverIO.Element[] | HTMLElement[]): Promise<ElementArray>;
|
|
59
59
|
//# sourceMappingURL=$$.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$$.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/$$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAIvD,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,wBAAsB,EAAE,CACpB,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,EAC/C,QAAQ,EAAE,QAAQ,GAAG,gBAAgB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"$$.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/$$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAIvD,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,wBAAsB,EAAE,CACpB,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,EAC/C,QAAQ,EAAE,QAAQ,GAAG,gBAAgB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,WAAW,EAAE,yBAkBlF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { findElements, enhanceElementsArray } from '../../utils/index.js';
|
|
1
|
+
import { findElements, enhanceElementsArray, isElement, findElement } from '../../utils/index.js';
|
|
2
2
|
import { getElements } from '../../utils/getElementObject.js';
|
|
3
3
|
/**
|
|
4
4
|
* The `$$` command is a short way to call the [`findElements`](/docs/api/webdriver#findelements) command in order
|
|
@@ -56,9 +56,18 @@ import { getElements } from '../../utils/getElementObject.js';
|
|
|
56
56
|
*
|
|
57
57
|
*/
|
|
58
58
|
export async function $$(selector) {
|
|
59
|
-
|
|
59
|
+
let res = Array.isArray(selector)
|
|
60
60
|
? selector
|
|
61
61
|
: await findElements.call(this, selector);
|
|
62
|
+
/**
|
|
63
|
+
* allow user to transform a set of HTMLElements into a set of WebdriverIO elements
|
|
64
|
+
*/
|
|
65
|
+
if (Array.isArray(selector) && isElement(selector[0])) {
|
|
66
|
+
res = [];
|
|
67
|
+
for (const el of selector) {
|
|
68
|
+
res.push(await findElement.call(this, el));
|
|
69
|
+
}
|
|
70
|
+
}
|
|
62
71
|
const elements = await getElements.call(this, selector, res);
|
|
63
72
|
return enhanceElementsArray(elements, this, selector);
|
|
64
73
|
}
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
* @param {String} property name of the element property
|
|
15
15
|
* @return {Object|String|Boolean|Number|null} the value of the property of the selected element
|
|
16
16
|
*/
|
|
17
|
-
export declare function getProperty(this: WebdriverIO.Element, property: string): Promise<string | number | boolean | HTMLElement | Element | ChildNode | ParentNode |
|
|
17
|
+
export declare function getProperty(this: WebdriverIO.Element, property: string): Promise<string | number | boolean | HTMLElement | Element | ChildNode | ParentNode | (() => ElementInternals) | (() => void) | {
|
|
18
18
|
<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void;
|
|
19
19
|
(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
|
|
20
20
|
} | {
|
|
21
21
|
<K_1 extends keyof HTMLElementEventMap>(type: K_1, listener: (this: HTMLElement, ev: HTMLElementEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void;
|
|
22
22
|
(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
|
|
23
|
-
} | NamedNodeMap | DOMTokenList | ((this: Element, ev: Event) => any) | ((this: Element, ev: Event) => any) | ShadowRoot | ((init: ShadowRootInit) => ShadowRoot) | {
|
|
23
|
+
} | NamedNodeMap | DOMTokenList | ((this: Element, ev: Event) => any) | ((this: Element, ev: Event) => any) | Document | ShadowRoot | ((init: ShadowRootInit) => ShadowRoot) | {
|
|
24
24
|
<K_2 extends keyof HTMLElementTagNameMap>(selector: K_2): HTMLElementTagNameMap[K_2] | null;
|
|
25
25
|
<K_3 extends keyof SVGElementTagNameMap>(selector: K_3): SVGElementTagNameMap[K_3] | null;
|
|
26
26
|
<E extends Element = Element>(selectors: string): E | null;
|
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
* @param {String} property requested property
|
|
5
5
|
* @return {String} the value of the property
|
|
6
6
|
*/
|
|
7
|
-
export default function getProperty(element: HTMLElement, property: keyof HTMLElement): string | number | boolean | HTMLElement | Element | ChildNode | ParentNode |
|
|
7
|
+
export default function getProperty(element: HTMLElement, property: keyof HTMLElement): string | number | boolean | HTMLElement | Element | ChildNode | ParentNode | (() => ElementInternals) | (() => void) | {
|
|
8
8
|
<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void;
|
|
9
9
|
(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
|
|
10
10
|
} | {
|
|
11
11
|
<K_1 extends keyof HTMLElementEventMap>(type: K_1, listener: (this: HTMLElement, ev: HTMLElementEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void;
|
|
12
12
|
(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
|
|
13
|
-
} | NamedNodeMap | DOMTokenList | ((this: Element, ev: Event) => any) | ((this: Element, ev: Event) => any) | ShadowRoot | ((init: ShadowRootInit) => ShadowRoot) | {
|
|
13
|
+
} | NamedNodeMap | DOMTokenList | ((this: Element, ev: Event) => any) | ((this: Element, ev: Event) => any) | Document | ShadowRoot | ((init: ShadowRootInit) => ShadowRoot) | {
|
|
14
14
|
<K_2 extends keyof HTMLElementTagNameMap>(selector: K_2): HTMLElementTagNameMap[K_2] | null;
|
|
15
15
|
<K_3 extends keyof SVGElementTagNameMap>(selector: K_3): SVGElementTagNameMap[K_3] | null;
|
|
16
16
|
<E extends Element = Element>(selectors: string): E | null;
|
|
@@ -13,5 +13,5 @@ export declare const getElement: (this: WebdriverIO.Browser | WebdriverIO.Elemen
|
|
|
13
13
|
* @param {Object} res findElements response
|
|
14
14
|
* @return {Array} array of WDIO elements
|
|
15
15
|
*/
|
|
16
|
-
export declare const getElements: (this: WebdriverIO.Browser | WebdriverIO.Element, selector: Selector | ElementReference[] | WebdriverIO.Element[], elemResponse: ElementReference[], isReactElement?: boolean) => ElementArray;
|
|
16
|
+
export declare const getElements: (this: WebdriverIO.Browser | WebdriverIO.Element, selector: Selector | ElementReference[] | WebdriverIO.Element[], elemResponse: (ElementReference | Error)[], isReactElement?: boolean) => ElementArray;
|
|
17
17
|
//# sourceMappingURL=getElementObject.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getElementObject.d.ts","sourceRoot":"","sources":["../../src/utils/getElementObject.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAMvD,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAEzD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,SACb,YAAY,OAAO,GAAG,mBAAmB,aACpC,QAAQ,QACb,gBAAgB,GAAG,KAAK,+BAE/B,mBAuDF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,SACd,YAAY,OAAO,GAAG,mBAAmB,YACrC,QAAQ,GAAG,gBAAgB,EAAE,GAAG,mBAAmB,EAAE,gBACjD,gBAAgB,EAAE,+
|
|
1
|
+
{"version":3,"file":"getElementObject.d.ts","sourceRoot":"","sources":["../../src/utils/getElementObject.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAMvD,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAEzD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,SACb,YAAY,OAAO,GAAG,mBAAmB,aACpC,QAAQ,QACb,gBAAgB,GAAG,KAAK,+BAE/B,mBAuDF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,SACd,YAAY,OAAO,GAAG,mBAAmB,YACrC,QAAQ,GAAG,gBAAgB,EAAE,GAAG,mBAAmB,EAAE,gBACjD,CAAC,gBAAgB,GAAG,KAAK,CAAC,EAAE,+BAE3C,YAiEF,CAAA"}
|
package/build/utils/index.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export declare const getPrototype: (scope: 'browser' | 'element') => Record<stri
|
|
|
15
15
|
* @param {?Object|undefined} res body object from response or null
|
|
16
16
|
* @return {?string} element id or null if element couldn't be found
|
|
17
17
|
*/
|
|
18
|
-
export declare const getElementFromResponse: (res: ElementReference) =>
|
|
18
|
+
export declare const getElementFromResponse: (res: ElementReference) => string | null;
|
|
19
19
|
/**
|
|
20
20
|
* traverse up the scope chain until browser element was reached
|
|
21
21
|
*/
|
|
@@ -33,6 +33,7 @@ export declare function parseCSS(cssPropertyValue: string, cssProperty?: string)
|
|
|
33
33
|
* @return {Array} set of characters or unicode symbols
|
|
34
34
|
*/
|
|
35
35
|
export declare function checkUnicode(value: string, isDevTools?: boolean): string[];
|
|
36
|
+
export declare function isElement(o: Selector): boolean | "";
|
|
36
37
|
/**
|
|
37
38
|
* logic to find an element
|
|
38
39
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAA;AAOxD,OAAO,KAAK,EAAE,YAAY,EAAmB,QAAQ,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAOpH,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QAAG,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;KAAE;CACnE;AAiBD;;GAEG;AACH,eAAO,MAAM,YAAY,UAAW,SAAS,GAAG,SAAS,uCAexD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAS,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAA;AAOxD,OAAO,KAAK,EAAE,YAAY,EAAmB,QAAQ,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAOpH,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QAAG,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;KAAE;CACnE;AAiBD;;GAEG;AACH,eAAO,MAAM,YAAY,UAAW,SAAS,GAAG,SAAS,uCAexD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAS,gBAAgB,kBAuB3D,CAAA;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAE,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAGtG;AAWD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,kBAkDvE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAE,KAAK,EAAE,MAAM,EAAE,UAAU,UAAQ,YAc9D;AAmBD,wBAAgB,SAAS,CAAE,CAAC,EAAE,QAAQ,gBAMrC;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC7B,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,EAC/C,QAAQ,EAAE,QAAQ,qCAsErB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAC9B,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,EAC/C,QAAQ,EAAE,QAAQ,+BAkDrB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,GAAG,OAkBpD;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,iDAuC9D;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,UAInD;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,iBAK3D;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAE,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAcnE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAE,KAAK,EAAE,WAAW,CAAC,OAAO;;;GAK5D;AAED,wBAAsB,YAAY,CAAE,OAAO,EAAE,WAAW,CAAC,OAAO,oBAkB/D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,kBAAkB,UACnF,MAAM,mBAAmB,MAAM,SAAS,WAAW,KAAK,wBAAwB,UAOjG;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,aACnB,YAAY,UACd,YAAY,OAAO,GAAG,mBAAmB,YACvC,QAAQ,GAAG,gBAAgB,EAAE,GAAG,mBAAmB,EAAE,8BAExD,GAAG,EAAE,iBAcf,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,MAAM,wBAAyB,MAAM,YAAgD,CAAA;AAElG,eAAO,MAAM,qBAAqB,WAAkB,mBAAmB,GAAG,QAAQ,UAAU,wCAmE3F,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,WACnB,mBAAmB,GAAG,QAAQ,UAAU,uBAC3B,QAAQ,kBAAkB,SAKlD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,SACvB,OAAO,MAAM,EAAE,MAAM,CAAC,SACrB,OAAO,MAAM,EAAE,MAAM,CAAC,YAShC,CAAA"}
|
package/build/utils/index.js
CHANGED
|
@@ -168,7 +168,7 @@ function fetchElementByJSFunction(selector, scope, referenceId) {
|
|
|
168
168
|
}).toString().replace('selector', `(${selector.toString()})`);
|
|
169
169
|
return getBrowserObject(scope).execute(`return (${script}).apply(null, arguments)`, scope, referenceId);
|
|
170
170
|
}
|
|
171
|
-
function isElement(o) {
|
|
171
|
+
export function isElement(o) {
|
|
172
172
|
return (typeof HTMLElement === 'object'
|
|
173
173
|
? o instanceof HTMLElement
|
|
174
174
|
: o && typeof o === 'object' && o !== null && o.nodeType === 1 && typeof o.nodeName === 'string');
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "webdriverio",
|
|
3
3
|
"description": "Next-gen browser and mobile automation test framework for Node.js",
|
|
4
|
-
"version": "8.2.
|
|
4
|
+
"version": "8.2.6",
|
|
5
5
|
"homepage": "https://webdriver.io",
|
|
6
6
|
"author": "Christian Bromann <mail@bromann.dev>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -92,5 +92,5 @@
|
|
|
92
92
|
"serialize-error": "^8.0.0",
|
|
93
93
|
"webdriver": "8.2.3"
|
|
94
94
|
},
|
|
95
|
-
"gitHead": "
|
|
95
|
+
"gitHead": "82c01b9fcf03c477505fd3afed777ce7b227567b"
|
|
96
96
|
}
|