webdriver 9.0.0-alpha.78 → 9.0.0
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/README.md +3 -3
- package/build/bidi/core.d.ts +6 -1
- package/build/bidi/core.d.ts.map +1 -1
- package/build/bidi/handler.d.ts +49 -0
- package/build/bidi/handler.d.ts.map +1 -1
- package/build/bidi/localTypes.d.ts +134 -47
- package/build/bidi/localTypes.d.ts.map +1 -1
- package/build/bidi/remoteTypes.d.ts +135 -28
- package/build/bidi/remoteTypes.d.ts.map +1 -1
- package/build/command.d.ts.map +1 -1
- package/build/constants.d.ts +2 -1
- package/build/constants.d.ts.map +1 -1
- package/build/index.cjs +233 -0
- package/build/index.d.cts +2 -0
- package/build/index.d.cts.map +1 -0
- package/build/index.d.ts +2 -2
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1615 -141
- package/build/request/index.d.ts +1 -2
- package/build/request/index.d.ts.map +1 -1
- package/build/request/request.d.ts +0 -1
- package/build/request/request.d.ts.map +1 -1
- package/build/types.d.ts +9 -7
- package/build/types.d.ts.map +1 -1
- package/build/utils.d.ts +4 -6
- package/build/utils.d.ts.map +1 -1
- package/package.json +15 -18
- package/build/bidi/core.js +0 -73
- package/build/bidi/handler.js +0 -446
- package/build/bidi/localTypes.js +0 -15
- package/build/bidi/remoteTypes.js +0 -15
- package/build/bidi/socket.js +0 -49
- package/build/cjs/index.d.ts +0 -2
- package/build/cjs/index.d.ts.map +0 -1
- package/build/cjs/index.js +0 -40
- package/build/cjs/package.json +0 -5
- package/build/command.js +0 -140
- package/build/constants.js +0 -146
- package/build/request/index.js +0 -215
- package/build/request/request.js +0 -38
- package/build/types.js +0 -1
- package/build/utils.js +0 -384
- /package/{LICENSE-MIT → LICENSE} +0 -0
package/build/request/index.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
3
1
|
import { EventEmitter } from 'node:events';
|
|
4
2
|
import { URL } from 'node:url';
|
|
5
3
|
import type { Options } from '@wdio/types';
|
|
@@ -27,6 +25,7 @@ export interface WebDriverResponse {
|
|
|
27
25
|
}
|
|
28
26
|
export declare const COMMANDS_WITHOUT_RETRY: string[];
|
|
29
27
|
export default abstract class WebDriverRequest extends EventEmitter {
|
|
28
|
+
#private;
|
|
30
29
|
body?: Record<string, unknown>;
|
|
31
30
|
method: string;
|
|
32
31
|
endpoint: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/request/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/request/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAI9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAM1C,KAAK,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAA;AACpD,KAAK,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;AAO7D,qBAAa,eAAgB,SAAQ,KAAK;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,GAAG,CAAA;IACV;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,eAAO,MAAM,sBAAsB,UAElC,CAAA;AAWD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,gBAAiB,SAAQ,YAAY;;IAG/D,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,OAAO,CAAA;IACrB,iBAAiB,EAAE,OAAO,CAAA;gBAEb,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAE,OAAe;IAStG,WAAW,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM;cAc9C,cAAc,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,GAAE,OAAe,GAAG,OAAO,CAAC;QAAC,GAAG,EAAE,GAAG,CAAC;QAAC,cAAc,EAAE,WAAW,CAAC;KAAC,CAAC;cA0D3I,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIxF,SAAS,CAAC,kBAAkB,IAAI,MAAM;YAIxB,QAAQ;CAgIzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/request/request.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/request/request.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAGnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE1C,OAAO,gBAAqC,MAAM,YAAY,CAAA;AAQ9D,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,gBAAgB;gBACzC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAE,OAAe;cAI5F,WAAW,CAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC;IAwB9F,SAAS,CAAC,kBAAkB,IAAI,MAAM;CAGzC"}
|
package/build/types.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
1
|
import type { EventEmitter } from 'node:events';
|
|
3
2
|
import type { Options, Capabilities, ThenArg } from '@wdio/types';
|
|
4
3
|
import type { WebDriverBidiProtocol, ProtocolCommands } from '@wdio/protocols';
|
|
@@ -28,14 +27,17 @@ type ObtainMethods<T> = {
|
|
|
28
27
|
type WebDriverBidiCommands = typeof WebDriverBidiProtocol;
|
|
29
28
|
export type BidiCommands = WebDriverBidiCommands[keyof WebDriverBidiCommands]['socket']['command'];
|
|
30
29
|
export type BidiResponses = ValueOf<ObtainMethods<Pick<BidiHandler, BidiCommands>>>;
|
|
30
|
+
export type RemoteConfig = Options.WebDriver & Capabilities.WithRequestedCapabilities;
|
|
31
31
|
type BidiInterface = ObtainMethods<Pick<BidiHandler, BidiCommands>>;
|
|
32
32
|
type WebDriverClassicEvents = {
|
|
33
33
|
command: {
|
|
34
|
+
command: string;
|
|
34
35
|
method: string;
|
|
35
36
|
endpoint: string;
|
|
36
37
|
body: any;
|
|
37
38
|
};
|
|
38
39
|
result: {
|
|
40
|
+
command: string;
|
|
39
41
|
method: string;
|
|
40
42
|
endpoint: string;
|
|
41
43
|
body: any;
|
|
@@ -58,25 +60,25 @@ type GetParam<T extends {
|
|
|
58
60
|
}, U extends string> = T extends {
|
|
59
61
|
method: U;
|
|
60
62
|
} ? T['params'] : never;
|
|
61
|
-
type EventMap = {
|
|
63
|
+
export type EventMap = {
|
|
62
64
|
[Event in EventData['method']]: GetParam<EventData, Event>;
|
|
63
65
|
} & WebDriverClassicEvents;
|
|
64
|
-
|
|
66
|
+
interface BidiEventHandler {
|
|
65
67
|
on<K extends keyof EventMap>(event: K, listener: (this: Client, param: EventMap[K]) => void): this;
|
|
66
68
|
once<K extends keyof EventMap>(event: K, listener: (this: Client, param: EventMap[K]) => void): this;
|
|
67
69
|
}
|
|
68
70
|
export interface BaseClient extends EventEmitter, SessionFlags {
|
|
69
71
|
sessionId: string;
|
|
70
|
-
capabilities:
|
|
71
|
-
requestedCapabilities: Capabilities.
|
|
72
|
+
capabilities: WebdriverIO.Capabilities;
|
|
73
|
+
requestedCapabilities: Capabilities.WithRequestedCapabilities['capabilities'];
|
|
72
74
|
options: Options.WebDriver;
|
|
73
75
|
}
|
|
74
76
|
export interface Client extends Omit<BaseClient, keyof BidiEventHandler>, ProtocolCommands, BidiHandler, BidiEventHandler {
|
|
75
77
|
}
|
|
76
78
|
export interface AttachOptions extends Partial<SessionFlags>, Partial<Options.WebDriver> {
|
|
77
79
|
sessionId: string;
|
|
78
|
-
capabilities?:
|
|
79
|
-
|
|
80
|
+
capabilities?: WebdriverIO.Capabilities;
|
|
81
|
+
requestedCapabilities?: Capabilities.WithRequestedCapabilities['capabilities'];
|
|
80
82
|
}
|
|
81
83
|
export {};
|
|
82
84
|
//# sourceMappingURL=types.d.ts.map
|
package/build/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/build/utils.d.ts
CHANGED
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
3
1
|
import type { EventEmitter } from 'node:events';
|
|
4
|
-
import type { Options
|
|
2
|
+
import type { Options } from '@wdio/types';
|
|
5
3
|
import type { WebDriverResponse } from './request/index.js';
|
|
6
|
-
import type { Client, JSONWPCommandError, SessionFlags } from './types.js';
|
|
4
|
+
import type { Client, JSONWPCommandError, SessionFlags, RemoteConfig } from './types.js';
|
|
7
5
|
/**
|
|
8
6
|
* start browser session with WebDriver protocol
|
|
9
7
|
*/
|
|
10
|
-
export declare function startWebDriverSession(params:
|
|
8
|
+
export declare function startWebDriverSession(params: RemoteConfig): Promise<{
|
|
11
9
|
sessionId: string;
|
|
12
|
-
capabilities: Capabilities
|
|
10
|
+
capabilities: WebdriverIO.Capabilities;
|
|
13
11
|
}>;
|
|
14
12
|
/**
|
|
15
13
|
* check if WebDriver requests was successful
|
package/build/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAW/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAO1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAYxF;;GAEG;AACH,wBAAsB,qBAAqB,CAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,WAAW,CAAC,YAAY,CAAA;CAAE,CAAC,CA6EzI;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAE,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,iBAAiB,WA4DlF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAE,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,EAAE,EAAE,OAAO,CAAC,YAAY,CAAC,sCA8C7H;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAE,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,SAcvE;AAGD,qBAAa,kBAAmB,SAAQ,KAAK;gBAC5B,IAAI,EAAE,iBAAiB,EAAE,cAAc,EAAE,GAAG;CA8C5D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,qBAAqB,CAYpL;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,QAgBhD;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAS,kBAAkB,WAAU,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,WAmD1F,CAAA;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,KAAK,CAS1F;AA+BD;;;;GAIG;AACH,wBAAgB,YAAY,CAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAE,OAAc,GAAG,qBAAqB,CAejG;AAED,wBAAgB,gBAAgB,CAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,QAWjE"}
|
package/package.json
CHANGED
|
@@ -1,23 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "webdriver",
|
|
3
|
-
"version": "9.0.0
|
|
3
|
+
"version": "9.0.0",
|
|
4
4
|
"description": "A Node.js bindings implementation for the W3C WebDriver and Mobile JSONWire Protocol",
|
|
5
5
|
"author": "Christian Bromann <mail@bromann.dev>",
|
|
6
6
|
"homepage": "https://github.com/webdriverio/webdriverio/tree/main/packages/webdriver",
|
|
7
7
|
"license": "MIT",
|
|
8
|
-
"main": "./build/
|
|
8
|
+
"main": "./build/index.cjs",
|
|
9
9
|
"type": "module",
|
|
10
10
|
"module": "./build/index.js",
|
|
11
11
|
"exports": {
|
|
12
|
-
".":
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"./build/cjs/index.js"
|
|
19
|
-
],
|
|
20
|
-
"./package.json": "./package.json"
|
|
12
|
+
".": {
|
|
13
|
+
"types": "./build/index.d.ts",
|
|
14
|
+
"import": "./build/index.js",
|
|
15
|
+
"requireSource": "./src/index.cts",
|
|
16
|
+
"require": "./build/index.cjs"
|
|
17
|
+
}
|
|
21
18
|
},
|
|
22
19
|
"types": "./build/index.d.ts",
|
|
23
20
|
"typeScriptVersion": "3.8.3",
|
|
@@ -38,13 +35,13 @@
|
|
|
38
35
|
"dependencies": {
|
|
39
36
|
"@types/node": "^20.1.0",
|
|
40
37
|
"@types/ws": "^8.5.3",
|
|
41
|
-
"@wdio/config": "9.0.0
|
|
42
|
-
"@wdio/logger": "9.0.0
|
|
43
|
-
"@wdio/protocols": "9.0.0
|
|
44
|
-
"@wdio/types": "9.0.0
|
|
45
|
-
"@wdio/utils": "9.0.0
|
|
46
|
-
"deepmerge-ts": "^
|
|
38
|
+
"@wdio/config": "9.0.0",
|
|
39
|
+
"@wdio/logger": "9.0.0",
|
|
40
|
+
"@wdio/protocols": "9.0.0",
|
|
41
|
+
"@wdio/types": "9.0.0",
|
|
42
|
+
"@wdio/utils": "9.0.0",
|
|
43
|
+
"deepmerge-ts": "^7.0.3",
|
|
47
44
|
"ws": "^8.8.0"
|
|
48
45
|
},
|
|
49
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "957693463371a4cb329395dcdbce8fb0c930ab93"
|
|
50
47
|
}
|
package/build/bidi/core.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import logger from '@wdio/logger';
|
|
2
|
-
import Socket from './socket.js';
|
|
3
|
-
const log = logger('webdriver');
|
|
4
|
-
const RESPONSE_TIMEOUT = 1000 * 60;
|
|
5
|
-
export class BidiCore {
|
|
6
|
-
_webSocketUrl;
|
|
7
|
-
#id = 0;
|
|
8
|
-
#ws;
|
|
9
|
-
#isConnected = false;
|
|
10
|
-
constructor(_webSocketUrl, opts) {
|
|
11
|
-
this._webSocketUrl = _webSocketUrl;
|
|
12
|
-
log.info(`Connect to webSocketUrl ${this._webSocketUrl}`);
|
|
13
|
-
this.#ws = new Socket(this._webSocketUrl, opts);
|
|
14
|
-
}
|
|
15
|
-
async connect() {
|
|
16
|
-
/**
|
|
17
|
-
* don't connect and stale unit tests when the websocket url is set to a dummy value
|
|
18
|
-
* Note: the value is defined in __mocks__/fetch.ts
|
|
19
|
-
*/
|
|
20
|
-
if (process.env.VITEST_WORKER_ID && this._webSocketUrl === 'ws://webdriver.io') {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
return new Promise((resolve) => this.#ws.on('open', () => {
|
|
24
|
-
log.info('Connected session to Bidi protocol');
|
|
25
|
-
this.#isConnected = true;
|
|
26
|
-
resolve();
|
|
27
|
-
}));
|
|
28
|
-
}
|
|
29
|
-
get socket() {
|
|
30
|
-
return this.#ws;
|
|
31
|
-
}
|
|
32
|
-
get isConnected() {
|
|
33
|
-
return this.#isConnected;
|
|
34
|
-
}
|
|
35
|
-
send(params) {
|
|
36
|
-
const id = this.sendAsync(params);
|
|
37
|
-
const failError = new Error(`WebDriver Bidi command "${params.method}" failed`);
|
|
38
|
-
return new Promise((resolve, reject) => {
|
|
39
|
-
const t = setTimeout(() => {
|
|
40
|
-
reject(new Error(`Request with id ${id} timed out`));
|
|
41
|
-
h.off('message', listener);
|
|
42
|
-
}, RESPONSE_TIMEOUT);
|
|
43
|
-
const listener = (data) => {
|
|
44
|
-
try {
|
|
45
|
-
const payload = JSON.parse(data.toString());
|
|
46
|
-
if (payload.id === id) {
|
|
47
|
-
clearTimeout(t);
|
|
48
|
-
h.off('message', listener);
|
|
49
|
-
log.info('BIDI RESULT', JSON.stringify(payload));
|
|
50
|
-
if (payload.error) {
|
|
51
|
-
failError.message += ` with error: ${payload.error}`;
|
|
52
|
-
return reject(failError);
|
|
53
|
-
}
|
|
54
|
-
resolve(payload);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
catch (err) {
|
|
58
|
-
log.error(`Failed parse message: ${err.message}`);
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
const h = this.#ws.on('message', listener);
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
sendAsync(params) {
|
|
65
|
-
if (!this.#isConnected) {
|
|
66
|
-
throw new Error('No connection to WebDriver Bidi was established');
|
|
67
|
-
}
|
|
68
|
-
log.info('BIDI COMMAND', params.method, JSON.stringify(params.params));
|
|
69
|
-
const id = ++this.#id;
|
|
70
|
-
this.#ws.send(JSON.stringify({ id, ...params }));
|
|
71
|
-
return id;
|
|
72
|
-
}
|
|
73
|
-
}
|