webdriverio 9.1.2 → 9.1.4
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/execute.d.ts.map +1 -1
- package/build/commands/browser/executeAsync.d.ts.map +1 -1
- package/build/commands/browser/getPuppeteer.d.ts.map +1 -1
- package/build/commands/browser/url.d.ts +45 -45
- package/build/commands/browser/url.d.ts.map +1 -1
- package/build/index.js +134 -107
- package/build/polyfill.d.ts +1 -0
- package/build/polyfill.d.ts.map +1 -1
- package/build/shadowRoot.d.ts.map +1 -1
- package/build/utils/actions/pointer.d.ts.map +1 -1
- package/build/utils/interception/index.d.ts.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/execute.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/execute.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,OAAO,CAAC,WAAW,EAAE,cAAc,SAAS,GAAG,EAAE,EACnE,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,kBAAkB,EAC1D,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS,EAAE,cAAc,KAAK,WAAW,CAAC,EAChE,GAAG,IAAI,EAAE,cAAc,GACxB,OAAO,CAAC,WAAW,CAAC,CAwCtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeAsync.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/executeAsync.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"executeAsync.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/executeAsync.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,wBAAsB,YAAY,CAAC,WAAW,EAAE,cAAc,SAAS,GAAG,EAAE,EACxE,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,kBAAkB,EAC1D,MAAM,EACF,MAAM,GACN,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,EACjG,GAAG,IAAI,EAAE,cAAc,GACxB,OAAO,CAAC,WAAW,CAAC,CAgDtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPuppeteer.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/getPuppeteer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAa,OAAO,IAAI,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"getPuppeteer.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/getPuppeteer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAa,OAAO,IAAI,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAO5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,YAAY,CAAE,IAAI,EAAE,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqHxF"}
|
|
@@ -1,49 +1,4 @@
|
|
|
1
1
|
type WaitState = 'none' | 'interactive' | 'networkIdle' | 'complete';
|
|
2
|
-
interface UrlCommandOptions {
|
|
3
|
-
/**
|
|
4
|
-
* The desired state the requested resource should be in before finishing the command.
|
|
5
|
-
* It supports the following states:
|
|
6
|
-
*
|
|
7
|
-
* - `none`: no wait after the page request is made and the response is received
|
|
8
|
-
* - `interactive`: wait until the page is interactive
|
|
9
|
-
* - `complete`: wait until the DOM tree of the page is fully loaded
|
|
10
|
-
* - `networkIdle`: wait until there are no pending network requests
|
|
11
|
-
*
|
|
12
|
-
* @default 'complete'
|
|
13
|
-
*/
|
|
14
|
-
wait?: WaitState;
|
|
15
|
-
/**
|
|
16
|
-
* Headers to be sent with the request.
|
|
17
|
-
* @default {}
|
|
18
|
-
*/
|
|
19
|
-
headers?: Record<string, string>;
|
|
20
|
-
/**
|
|
21
|
-
* Basic authentication credentials
|
|
22
|
-
* Note: this will overwrite the existing `Authorization` header if provided in the `headers` option
|
|
23
|
-
*/
|
|
24
|
-
auth?: {
|
|
25
|
-
user: string;
|
|
26
|
-
pass: string;
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* If set to a number, the command will wait for the specified amount of milliseconds for the page to load
|
|
30
|
-
* all responses before returning.
|
|
31
|
-
*
|
|
32
|
-
* Note: for this to have an impact, it requires the `wait` option to be set to `networkIdle`
|
|
33
|
-
*
|
|
34
|
-
* @default 5000
|
|
35
|
-
*/
|
|
36
|
-
timeout?: number;
|
|
37
|
-
/**
|
|
38
|
-
* A function that is being called before your page has loaded all of its resources. It allows you to easily
|
|
39
|
-
* mock the environment, e.g. overwrite Web APIs that your application uses.
|
|
40
|
-
*
|
|
41
|
-
* Note: the provided function is being serialized and executed in the browser context. You can not pass in variables
|
|
42
|
-
* from the Node.js context. Furthermore changes to the environment only apply for this specific page load.
|
|
43
|
-
* Checkout `browser.addPreloadScript` for a more versatile way to mock the environment.
|
|
44
|
-
*/
|
|
45
|
-
onBeforeLoad?: () => any;
|
|
46
|
-
}
|
|
47
2
|
/**
|
|
48
3
|
*
|
|
49
4
|
* The `url` command loads an URL in the browser. If a baseUrl is specified in the config,
|
|
@@ -145,5 +100,50 @@ interface UrlCommandOptions {
|
|
|
145
100
|
*
|
|
146
101
|
*/
|
|
147
102
|
export declare function url(this: WebdriverIO.Browser, path: string, options?: UrlCommandOptions): Promise<WebdriverIO.Request | void>;
|
|
103
|
+
interface UrlCommandOptions {
|
|
104
|
+
/**
|
|
105
|
+
* The desired state the requested resource should be in before finishing the command.
|
|
106
|
+
* It supports the following states:
|
|
107
|
+
*
|
|
108
|
+
* - `none`: no wait after the page request is made and the response is received
|
|
109
|
+
* - `interactive`: wait until the page is interactive
|
|
110
|
+
* - `complete`: wait until the DOM tree of the page is fully loaded
|
|
111
|
+
* - `networkIdle`: wait until there are no pending network requests
|
|
112
|
+
*
|
|
113
|
+
* @default 'complete'
|
|
114
|
+
*/
|
|
115
|
+
wait?: WaitState;
|
|
116
|
+
/**
|
|
117
|
+
* Headers to be sent with the request.
|
|
118
|
+
* @default {}
|
|
119
|
+
*/
|
|
120
|
+
headers?: Record<string, string>;
|
|
121
|
+
/**
|
|
122
|
+
* Basic authentication credentials
|
|
123
|
+
* Note: this will overwrite the existing `Authorization` header if provided in the `headers` option
|
|
124
|
+
*/
|
|
125
|
+
auth?: {
|
|
126
|
+
user: string;
|
|
127
|
+
pass: string;
|
|
128
|
+
};
|
|
129
|
+
/**
|
|
130
|
+
* If set to a number, the command will wait for the specified amount of milliseconds for the page to load
|
|
131
|
+
* all responses before returning.
|
|
132
|
+
*
|
|
133
|
+
* Note: for this to have an impact, it requires the `wait` option to be set to `networkIdle`
|
|
134
|
+
*
|
|
135
|
+
* @default 5000
|
|
136
|
+
*/
|
|
137
|
+
timeout?: number;
|
|
138
|
+
/**
|
|
139
|
+
* A function that is being called before your page has loaded all of its resources. It allows you to easily
|
|
140
|
+
* mock the environment, e.g. overwrite Web APIs that your application uses.
|
|
141
|
+
*
|
|
142
|
+
* Note: the provided function is being serialized and executed in the browser context. You can not pass in variables
|
|
143
|
+
* from the Node.js context. Furthermore changes to the environment only apply for this specific page load.
|
|
144
|
+
* Checkout `browser.addPreloadScript` for a more versatile way to mock the environment.
|
|
145
|
+
*/
|
|
146
|
+
onBeforeLoad?: () => any;
|
|
147
|
+
}
|
|
148
148
|
export {};
|
|
149
149
|
//# sourceMappingURL=url.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/url.ts"],"names":[],"mappings":"AAKA,KAAK,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,aAAa,GAAG,UAAU,CAAA;AAKpE,UAAU,iBAAiB;IACvB;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC;;;OAGG;IACH,IAAI,CAAC,EAAE;QACH,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;KACf,CAAA;IACD;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,CAAA;CAC3B
|
|
1
|
+
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/url.ts"],"names":[],"mappings":"AAKA,KAAK,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,aAAa,GAAG,UAAU,CAAA;AAKpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmGG;AACH,wBAAsB,GAAG,CACrB,IAAI,EAAE,WAAW,CAAC,OAAO,EACzB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,iBAAsB,GAChC,OAAO,CAAC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,CA8FrC;AAED,UAAU,iBAAiB;IACvB;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC;;;OAGG;IACH,IAAI,CAAC,EAAE;QACH,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;KACf,CAAA;IACD;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,CAAA;CAC3B"}
|
package/build/index.js
CHANGED
|
@@ -78,7 +78,7 @@ import { URL as URL2 } from "node:url";
|
|
|
78
78
|
import cssValue from "css-value";
|
|
79
79
|
import rgb2hex from "rgb2hex";
|
|
80
80
|
import GraphemeSplitter from "grapheme-splitter";
|
|
81
|
-
import
|
|
81
|
+
import logger20 from "@wdio/logger";
|
|
82
82
|
import isPlainObject from "is-plain-obj";
|
|
83
83
|
import { ELEMENT_KEY as ELEMENT_KEY17 } from "webdriver";
|
|
84
84
|
import { UNICODE_CHARACTERS as UNICODE_CHARACTERS2, asyncIterators, getBrowserObject as getBrowserObject30 } from "@wdio/utils";
|
|
@@ -555,6 +555,13 @@ var MOVE_PARAM_DEFAULTS = {
|
|
|
555
555
|
duration: 100,
|
|
556
556
|
origin: ORIGIN_DEFAULT
|
|
557
557
|
};
|
|
558
|
+
function removeDefaultParams(seq) {
|
|
559
|
+
for (const [key, value] of Object.entries(seq)) {
|
|
560
|
+
if (value === 0 && !["x", "y", "button", "duration"].includes(key)) {
|
|
561
|
+
delete seq[key];
|
|
562
|
+
}
|
|
563
|
+
}
|
|
564
|
+
}
|
|
558
565
|
function mapButton(params) {
|
|
559
566
|
const buttons = {
|
|
560
567
|
left: 0,
|
|
@@ -592,6 +599,7 @@ var PointerAction = class extends BaseAction {
|
|
|
592
599
|
} else if (params) {
|
|
593
600
|
Object.assign(seq, params);
|
|
594
601
|
}
|
|
602
|
+
removeDefaultParams(seq);
|
|
595
603
|
this.sequence.push(seq);
|
|
596
604
|
return this;
|
|
597
605
|
}
|
|
@@ -603,11 +611,13 @@ var PointerAction = class extends BaseAction {
|
|
|
603
611
|
return this;
|
|
604
612
|
}
|
|
605
613
|
down(params = {}) {
|
|
606
|
-
|
|
614
|
+
const seq = {
|
|
607
615
|
type: "pointerDown",
|
|
608
616
|
...PARAM_DEFAULTS,
|
|
609
617
|
...mapButton(params)
|
|
610
|
-
}
|
|
618
|
+
};
|
|
619
|
+
removeDefaultParams(seq);
|
|
620
|
+
this.sequence.push(seq);
|
|
611
621
|
return this;
|
|
612
622
|
}
|
|
613
623
|
/**
|
|
@@ -3020,6 +3030,44 @@ var ContextManager = class {
|
|
|
3020
3030
|
}
|
|
3021
3031
|
};
|
|
3022
3032
|
|
|
3033
|
+
// src/polyfill.ts
|
|
3034
|
+
import logger5 from "@wdio/logger";
|
|
3035
|
+
var polyfillManager = /* @__PURE__ */ new Map();
|
|
3036
|
+
var log5 = logger5("webdriverio:PolyfillManager");
|
|
3037
|
+
var NAME_POLYFILL = "var __defProp = Object.defineProperty;var __name = function (target, value) { return __defProp(target, 'name', { value: value, configurable: true }); };var __globalThis = (typeof globalThis === 'object' && globalThis) || (typeof window === 'object' && window);__globalThis.__name = __name;";
|
|
3038
|
+
function getPolyfillManager(browser) {
|
|
3039
|
+
const existingPolyfillManager = polyfillManager.get(browser);
|
|
3040
|
+
if (existingPolyfillManager) {
|
|
3041
|
+
return existingPolyfillManager;
|
|
3042
|
+
}
|
|
3043
|
+
const newContext = new PolyfillManager(browser);
|
|
3044
|
+
polyfillManager.set(browser, newContext);
|
|
3045
|
+
return newContext;
|
|
3046
|
+
}
|
|
3047
|
+
var PolyfillManager = class {
|
|
3048
|
+
#initialize;
|
|
3049
|
+
constructor(browser) {
|
|
3050
|
+
if (!browser.isBidi || process.env.VITEST_WORKER_ID || browser.options?.automationProtocol !== "webdriver") {
|
|
3051
|
+
this.#initialize = Promise.resolve(true);
|
|
3052
|
+
return;
|
|
3053
|
+
}
|
|
3054
|
+
const polyfill = (polyfill2) => {
|
|
3055
|
+
const closure = new Function(polyfill2);
|
|
3056
|
+
return closure();
|
|
3057
|
+
};
|
|
3058
|
+
this.#initialize = Promise.all([
|
|
3059
|
+
browser.addInitScript(polyfill, NAME_POLYFILL),
|
|
3060
|
+
browser.execute(polyfill, NAME_POLYFILL)
|
|
3061
|
+
]).then(() => {
|
|
3062
|
+
log5.info("polyfill script added");
|
|
3063
|
+
return true;
|
|
3064
|
+
}, () => false);
|
|
3065
|
+
}
|
|
3066
|
+
async initialize() {
|
|
3067
|
+
return this.#initialize;
|
|
3068
|
+
}
|
|
3069
|
+
};
|
|
3070
|
+
|
|
3023
3071
|
// src/commands/browser/execute.ts
|
|
3024
3072
|
async function execute(script, ...args) {
|
|
3025
3073
|
if (typeof script !== "string" && typeof script !== "function") {
|
|
@@ -3045,7 +3093,10 @@ async function execute(script, ...args) {
|
|
|
3045
3093
|
return parseScriptResult(params, result);
|
|
3046
3094
|
}
|
|
3047
3095
|
if (typeof script === "function") {
|
|
3048
|
-
script = `
|
|
3096
|
+
script = `
|
|
3097
|
+
${NAME_POLYFILL}
|
|
3098
|
+
return (${script}).apply(null, arguments)
|
|
3099
|
+
`;
|
|
3049
3100
|
}
|
|
3050
3101
|
return this.executeScript(script, verifyArgsAndStripIfElement(args));
|
|
3051
3102
|
}
|
|
@@ -3084,14 +3135,17 @@ async function executeAsync(script, ...args) {
|
|
|
3084
3135
|
return parseScriptResult(params, result);
|
|
3085
3136
|
}
|
|
3086
3137
|
if (typeof script === "function") {
|
|
3087
|
-
script = `
|
|
3138
|
+
script = `
|
|
3139
|
+
${NAME_POLYFILL}
|
|
3140
|
+
return (${script}).apply(null, arguments)
|
|
3141
|
+
`;
|
|
3088
3142
|
}
|
|
3089
3143
|
return this.executeAsyncScript(script, verifyArgsAndStripIfElement(args));
|
|
3090
3144
|
}
|
|
3091
3145
|
|
|
3092
3146
|
// src/commands/browser/getCookies.ts
|
|
3093
|
-
import
|
|
3094
|
-
var
|
|
3147
|
+
import logger6 from "@wdio/logger";
|
|
3148
|
+
var log6 = logger6("webdriverio");
|
|
3095
3149
|
async function getCookies(filter) {
|
|
3096
3150
|
const usesMultipleFilter = Array.isArray(filter) && filter.length > 1;
|
|
3097
3151
|
if (!this.isBidi || usesMultipleFilter) {
|
|
@@ -3110,7 +3164,7 @@ async function getCookiesClassic(names) {
|
|
|
3110
3164
|
}
|
|
3111
3165
|
const usesMultipleFilter = Array.isArray(names) && names.length > 1;
|
|
3112
3166
|
if (usesMultipleFilter) {
|
|
3113
|
-
|
|
3167
|
+
log6.warn(
|
|
3114
3168
|
"Passing a string array as filter for `getCookies` is deprecated and its support will be removed in an upcoming version of WebdriverIO!"
|
|
3115
3169
|
);
|
|
3116
3170
|
const allCookies2 = await this.getAllCookies();
|
|
@@ -3129,7 +3183,7 @@ function getCookieFilter(names) {
|
|
|
3129
3183
|
}
|
|
3130
3184
|
return (Array.isArray(names) ? names : [names]).map((filter) => {
|
|
3131
3185
|
if (typeof filter === "string") {
|
|
3132
|
-
|
|
3186
|
+
log6.warn("Passing string values into `getCookie` is deprecated and its support will be removed in an upcoming version of WebdriverIO!");
|
|
3133
3187
|
return { name: filter };
|
|
3134
3188
|
}
|
|
3135
3189
|
return filter;
|
|
@@ -3137,9 +3191,10 @@ function getCookieFilter(names) {
|
|
|
3137
3191
|
}
|
|
3138
3192
|
|
|
3139
3193
|
// src/commands/browser/getPuppeteer.ts
|
|
3140
|
-
import
|
|
3194
|
+
import logger7 from "@wdio/logger";
|
|
3141
3195
|
import { userImport } from "@wdio/utils";
|
|
3142
|
-
var
|
|
3196
|
+
var log7 = logger7("webdriverio");
|
|
3197
|
+
var DEBUG_PIPE_FLAG = "remote-debugging-pipe";
|
|
3143
3198
|
async function getPuppeteer() {
|
|
3144
3199
|
const puppeteer = await userImport("puppeteer-core");
|
|
3145
3200
|
if (!puppeteer) {
|
|
@@ -3148,7 +3203,7 @@ async function getPuppeteer() {
|
|
|
3148
3203
|
);
|
|
3149
3204
|
}
|
|
3150
3205
|
if (this.puppeteer?.connected) {
|
|
3151
|
-
|
|
3206
|
+
log7.debug("Reusing existing puppeteer session");
|
|
3152
3207
|
return this.puppeteer;
|
|
3153
3208
|
}
|
|
3154
3209
|
const { headers } = this.options;
|
|
@@ -3179,6 +3234,15 @@ async function getPuppeteer() {
|
|
|
3179
3234
|
defaultViewport: null
|
|
3180
3235
|
});
|
|
3181
3236
|
return this.puppeteer;
|
|
3237
|
+
} else if (
|
|
3238
|
+
/**
|
|
3239
|
+
* if --remote-debugging-pipe is set as Chrome flag, we can't attach to the session
|
|
3240
|
+
* as there won't be a `debuggerAddress` available in the capabilities. Provide this
|
|
3241
|
+
* better error message to the user.
|
|
3242
|
+
*/
|
|
3243
|
+
chromiumOptions && (chromiumOptions.args?.includes(DEBUG_PIPE_FLAG) || chromiumOptions.args?.includes(`--${DEBUG_PIPE_FLAG}`))
|
|
3244
|
+
) {
|
|
3245
|
+
throw new Error(`Cannot attach to Chrome Devtools session if --${DEBUG_PIPE_FLAG} is set as Chrome flag.`);
|
|
3182
3246
|
}
|
|
3183
3247
|
if (this.capabilities.browserName?.toLowerCase() === "firefox") {
|
|
3184
3248
|
if (!this.capabilities.browserVersion) {
|
|
@@ -3250,7 +3314,7 @@ import { getBrowserObject as getBrowserObject5 } from "@wdio/utils";
|
|
|
3250
3314
|
|
|
3251
3315
|
// src/utils/interception/index.ts
|
|
3252
3316
|
import EventEmitter2 from "node:events";
|
|
3253
|
-
import
|
|
3317
|
+
import logger8 from "@wdio/logger";
|
|
3254
3318
|
import { URLPattern } from "urlpattern-polyfill";
|
|
3255
3319
|
|
|
3256
3320
|
// src/utils/Timer.ts
|
|
@@ -3416,7 +3480,7 @@ function getPatternParam(pattern, key) {
|
|
|
3416
3480
|
}
|
|
3417
3481
|
|
|
3418
3482
|
// src/utils/interception/index.ts
|
|
3419
|
-
var
|
|
3483
|
+
var log8 = logger8("WebDriverInterception");
|
|
3420
3484
|
var hasSubscribedToEvents = false;
|
|
3421
3485
|
var WebDriverInterception = class _WebDriverInterception {
|
|
3422
3486
|
#pattern;
|
|
@@ -3445,7 +3509,7 @@ var WebDriverInterception = class _WebDriverInterception {
|
|
|
3445
3509
|
"network.responseStarted"
|
|
3446
3510
|
]
|
|
3447
3511
|
});
|
|
3448
|
-
|
|
3512
|
+
log8.info("subscribed to network events");
|
|
3449
3513
|
hasSubscribedToEvents = true;
|
|
3450
3514
|
}
|
|
3451
3515
|
const interception = await browser.networkAddIntercept({
|
|
@@ -3493,14 +3557,14 @@ var WebDriverInterception = class _WebDriverInterception {
|
|
|
3493
3557
|
if (!this.#isRequestMatching(request)) {
|
|
3494
3558
|
return;
|
|
3495
3559
|
}
|
|
3496
|
-
|
|
3497
|
-
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
|
|
3501
|
-
|
|
3502
|
-
);
|
|
3503
|
-
if (
|
|
3560
|
+
if (!this.#matchesFilterOptions(request)) {
|
|
3561
|
+
this.#emitter.emit("continue", request.request.request);
|
|
3562
|
+
return this.#browser.networkProvideResponse({
|
|
3563
|
+
request: request.request.request
|
|
3564
|
+
}).catch(this.#handleNetworkProvideResponseError);
|
|
3565
|
+
}
|
|
3566
|
+
this.#calls.push(request);
|
|
3567
|
+
if (this.#respondOverwrites.length === 0 || !this.#respondOverwrites[0].overwrite) {
|
|
3504
3568
|
this.#emitter.emit("continue", request.request.request);
|
|
3505
3569
|
return this.#browser.networkProvideResponse({
|
|
3506
3570
|
request: request.request.request
|
|
@@ -3607,7 +3671,7 @@ var WebDriverInterception = class _WebDriverInterception {
|
|
|
3607
3671
|
this.#respondOverwrites = [];
|
|
3608
3672
|
this.#restored = true;
|
|
3609
3673
|
const handle = await this.#browser.getWindowHandle();
|
|
3610
|
-
|
|
3674
|
+
log8.trace(`Restoring mock for ${handle}`);
|
|
3611
3675
|
SESSION_MOCKS[handle].delete(this);
|
|
3612
3676
|
if (this.#mockId) {
|
|
3613
3677
|
await this.#browser.networkRemoveIntercept({ intercept: this.#mockId });
|
|
@@ -3747,11 +3811,11 @@ async function mock(url6, filterOptions) {
|
|
|
3747
3811
|
}
|
|
3748
3812
|
|
|
3749
3813
|
// src/commands/browser/mockClearAll.ts
|
|
3750
|
-
import
|
|
3751
|
-
var
|
|
3814
|
+
import logger9 from "@wdio/logger";
|
|
3815
|
+
var log9 = logger9("webdriverio:mockClearAll");
|
|
3752
3816
|
async function mockClearAll() {
|
|
3753
3817
|
for (const [handle, mocks] of Object.entries(SESSION_MOCKS)) {
|
|
3754
|
-
|
|
3818
|
+
log9.trace(`Clearing mocks for ${handle}`);
|
|
3755
3819
|
for (const mock2 of mocks) {
|
|
3756
3820
|
mock2.clear();
|
|
3757
3821
|
}
|
|
@@ -3759,11 +3823,11 @@ async function mockClearAll() {
|
|
|
3759
3823
|
}
|
|
3760
3824
|
|
|
3761
3825
|
// src/commands/browser/mockRestoreAll.ts
|
|
3762
|
-
import
|
|
3763
|
-
var
|
|
3826
|
+
import logger10 from "@wdio/logger";
|
|
3827
|
+
var log10 = logger10("webdriverio:mockRestoreAll");
|
|
3764
3828
|
async function mockRestoreAll() {
|
|
3765
3829
|
for (const [handle, mocks] of Object.entries(SESSION_MOCKS)) {
|
|
3766
|
-
|
|
3830
|
+
log10.trace(`Clearing mocks for ${handle}`);
|
|
3767
3831
|
for (const mock2 of mocks) {
|
|
3768
3832
|
await mock2.restore();
|
|
3769
3833
|
}
|
|
@@ -3858,19 +3922,19 @@ async function react$(selector, { props = {}, state = {} } = {}) {
|
|
|
3858
3922
|
}
|
|
3859
3923
|
|
|
3860
3924
|
// src/commands/browser/reloadSession.ts
|
|
3861
|
-
import
|
|
3862
|
-
var
|
|
3925
|
+
import logger11 from "@wdio/logger";
|
|
3926
|
+
var log11 = logger11("webdriverio");
|
|
3863
3927
|
async function reloadSession(newCapabilities) {
|
|
3864
3928
|
const oldSessionId = this.sessionId;
|
|
3865
3929
|
const shutdownDriver = Boolean(newCapabilities?.browserName);
|
|
3866
3930
|
try {
|
|
3867
3931
|
await this.deleteSession({ shutdownDriver });
|
|
3868
3932
|
} catch (err) {
|
|
3869
|
-
|
|
3933
|
+
log11.warn(`Suppressing error closing the session: ${err.stack}`);
|
|
3870
3934
|
}
|
|
3871
3935
|
if (this.puppeteer?.connected) {
|
|
3872
3936
|
this.puppeteer.disconnect();
|
|
3873
|
-
|
|
3937
|
+
log11.debug("Disconnected puppeteer session");
|
|
3874
3938
|
}
|
|
3875
3939
|
const ProtocolDriver = (await import(
|
|
3876
3940
|
/* @vite-ignore */
|
|
@@ -3964,11 +4028,11 @@ async function saveScreenshot(filepath) {
|
|
|
3964
4028
|
}
|
|
3965
4029
|
|
|
3966
4030
|
// src/commands/browser/scroll.ts
|
|
3967
|
-
import
|
|
3968
|
-
var
|
|
4031
|
+
import logger12 from "@wdio/logger";
|
|
4032
|
+
var log12 = logger12("webdriverio");
|
|
3969
4033
|
function scroll(x = 0, y = 0) {
|
|
3970
4034
|
if (!x && !y) {
|
|
3971
|
-
return
|
|
4035
|
+
return log12.warn('"scroll" command was called with no parameters, skipping execution');
|
|
3972
4036
|
}
|
|
3973
4037
|
if (this.isMobile) {
|
|
3974
4038
|
return this.execute((x2, y2) => window.scrollBy(x2, y2), x, y);
|
|
@@ -4101,11 +4165,11 @@ async function switchWindow(matcher) {
|
|
|
4101
4165
|
}
|
|
4102
4166
|
|
|
4103
4167
|
// src/commands/browser/throttle.ts
|
|
4104
|
-
import
|
|
4168
|
+
import logger13 from "@wdio/logger";
|
|
4105
4169
|
import { getBrowserObject as getBrowserObject8 } from "@wdio/utils";
|
|
4106
|
-
var
|
|
4170
|
+
var log13 = logger13("webdriverio:throttle");
|
|
4107
4171
|
async function throttle(params) {
|
|
4108
|
-
|
|
4172
|
+
log13.warn('Command "throttle" is deprecated and will be removed with the next major version release! Use `throttleNetwork` instead.');
|
|
4109
4173
|
const browser = getBrowserObject8(this);
|
|
4110
4174
|
await browser.throttleNetwork(params);
|
|
4111
4175
|
}
|
|
@@ -4454,7 +4518,8 @@ async function url3(path4, options = {}) {
|
|
|
4454
4518
|
mock2 = await this.mock(path4);
|
|
4455
4519
|
mock2.requestOnce({ headers: options.headers });
|
|
4456
4520
|
}
|
|
4457
|
-
const
|
|
4521
|
+
const classicPageLoadStrategy = this.capabilities.pageLoadStrategy === "none" ? "none" : this.capabilities.pageLoadStrategy === "normal" ? "complete" : this.capabilities.pageLoadStrategy === "eager" ? "interactive" : void 0;
|
|
4522
|
+
const wait = options.wait === "networkIdle" ? "complete" : options.wait || classicPageLoadStrategy || DEFAULT_WAIT_STATE;
|
|
4458
4523
|
await this.browsingContextNavigate({
|
|
4459
4524
|
context,
|
|
4460
4525
|
url: path4,
|
|
@@ -4593,9 +4658,9 @@ function clearValue() {
|
|
|
4593
4658
|
}
|
|
4594
4659
|
|
|
4595
4660
|
// src/commands/element/click.ts
|
|
4596
|
-
import
|
|
4661
|
+
import logger14 from "@wdio/logger";
|
|
4597
4662
|
import { getBrowserObject as getBrowserObject10 } from "@wdio/utils";
|
|
4598
|
-
var
|
|
4663
|
+
var log14 = logger14("webdriver");
|
|
4599
4664
|
function click(options) {
|
|
4600
4665
|
if (typeof options !== "undefined") {
|
|
4601
4666
|
if (typeof options !== "object" || Array.isArray(options)) {
|
|
@@ -4641,10 +4706,10 @@ async function actionClick(element, options) {
|
|
|
4641
4706
|
if (x || y) {
|
|
4642
4707
|
const { width, height } = await browser.getElementRect(element.elementId);
|
|
4643
4708
|
if (x && x < -Math.floor(width / 2) || x && x > Math.floor(width / 2)) {
|
|
4644
|
-
|
|
4709
|
+
log14.warn("x would cause a out of bounds error as it goes outside of element");
|
|
4645
4710
|
}
|
|
4646
4711
|
if (y && y < -Math.floor(height / 2) || y && y > Math.floor(height / 2)) {
|
|
4647
|
-
|
|
4712
|
+
log14.warn("y would cause a out of bounds error as it goes outside of element");
|
|
4648
4713
|
}
|
|
4649
4714
|
}
|
|
4650
4715
|
const clickNested = async () => {
|
|
@@ -4861,10 +4926,10 @@ import { prettify as prettifyFn } from "htmlfy";
|
|
|
4861
4926
|
import { getBrowserObject as getBrowserObject18 } from "@wdio/utils";
|
|
4862
4927
|
|
|
4863
4928
|
// src/shadowRoot.ts
|
|
4864
|
-
import
|
|
4929
|
+
import logger15 from "@wdio/logger";
|
|
4865
4930
|
import customElementWrapper from "./scripts/customElement.js";
|
|
4866
4931
|
var shadowRootManager = /* @__PURE__ */ new Map();
|
|
4867
|
-
var
|
|
4932
|
+
var log15 = logger15("webdriverio:ShadowRootManager");
|
|
4868
4933
|
function getShadowRootManager(browser) {
|
|
4869
4934
|
const existingShadowRootManager = shadowRootManager.get(browser);
|
|
4870
4935
|
if (existingShadowRootManager) {
|
|
@@ -4968,9 +5033,9 @@ var ShadowRootManager = class {
|
|
|
4968
5033
|
!shadowElem.value?.shadowRoot?.sharedId || // we expect the shadow root to have a proper type
|
|
4969
5034
|
shadowElem.value.shadowRoot.value?.nodeType !== 11
|
|
4970
5035
|
) {
|
|
4971
|
-
return
|
|
5036
|
+
return log15.warn(`Expected element with shadow root but found <${shadowElem.value?.localName} />`);
|
|
4972
5037
|
}
|
|
4973
|
-
|
|
5038
|
+
log15.info(`Registered new shadow root for element <${shadowElem.value.localName} /> with id ${shadowElem.value.shadowRoot.sharedId}`);
|
|
4974
5039
|
const newTree = new ShadowRootTree(
|
|
4975
5040
|
shadowElem.sharedId,
|
|
4976
5041
|
shadowElem.value.shadowRoot.sharedId,
|
|
@@ -4999,7 +5064,8 @@ var ShadowRootManager = class {
|
|
|
4999
5064
|
tree = subTree;
|
|
5000
5065
|
}
|
|
5001
5066
|
}
|
|
5002
|
-
|
|
5067
|
+
const elements = tree.getAllLookupScopes();
|
|
5068
|
+
return [...new Set(elements).values()];
|
|
5003
5069
|
}
|
|
5004
5070
|
getShadowElementPairsByContextId(contextId, scope) {
|
|
5005
5071
|
let tree = this.#shadowRoots.get(contextId);
|
|
@@ -5388,18 +5454,18 @@ async function isStable() {
|
|
|
5388
5454
|
}
|
|
5389
5455
|
|
|
5390
5456
|
// src/commands/element/moveTo.ts
|
|
5391
|
-
import
|
|
5457
|
+
import logger16 from "@wdio/logger";
|
|
5392
5458
|
import { getBrowserObject as getBrowserObject24 } from "@wdio/utils";
|
|
5393
|
-
var
|
|
5459
|
+
var log16 = logger16("webdriver");
|
|
5394
5460
|
async function moveTo({ xOffset, yOffset } = {}) {
|
|
5395
5461
|
const browser = getBrowserObject24(this);
|
|
5396
5462
|
if (xOffset || yOffset) {
|
|
5397
5463
|
const { width, height } = await browser.getElementRect(this.elementId);
|
|
5398
5464
|
if (xOffset && xOffset < -Math.floor(width / 2) || xOffset && xOffset > Math.floor(width / 2)) {
|
|
5399
|
-
|
|
5465
|
+
log16.warn("xOffset would cause a out of bounds error as it goes outside of element");
|
|
5400
5466
|
}
|
|
5401
5467
|
if (yOffset && yOffset < -Math.floor(height / 2) || yOffset && yOffset > Math.floor(height / 2)) {
|
|
5402
|
-
|
|
5468
|
+
log16.warn("yOffset would cause a out of bounds error as it goes outside of element");
|
|
5403
5469
|
}
|
|
5404
5470
|
}
|
|
5405
5471
|
const moveToNested = async () => {
|
|
@@ -5509,10 +5575,10 @@ async function saveScreenshot2(filepath) {
|
|
|
5509
5575
|
}
|
|
5510
5576
|
|
|
5511
5577
|
// src/commands/element/scrollIntoView.ts
|
|
5512
|
-
import
|
|
5578
|
+
import logger17 from "@wdio/logger";
|
|
5513
5579
|
import { ELEMENT_KEY as ELEMENT_KEY16 } from "webdriver";
|
|
5514
5580
|
import { getBrowserObject as getBrowserObject27 } from "@wdio/utils";
|
|
5515
|
-
var
|
|
5581
|
+
var log17 = logger17("webdriverio");
|
|
5516
5582
|
function scrollIntoViewWeb(options = { block: "start", inline: "nearest" }) {
|
|
5517
5583
|
const browser = getBrowserObject27(this);
|
|
5518
5584
|
return browser.execute(
|
|
@@ -5571,7 +5637,7 @@ async function scrollIntoView(options = { block: "start", inline: "nearest" }) {
|
|
|
5571
5637
|
deltaY = Math.round(deltaY - scrollY);
|
|
5572
5638
|
await browser.action("wheel").scroll({ duration: 0, x: deltaX, y: deltaY, origin: this }).perform();
|
|
5573
5639
|
} catch (err) {
|
|
5574
|
-
|
|
5640
|
+
log17.warn(
|
|
5575
5641
|
`Failed to execute "scrollIntoView" using WebDriver Actions API: ${err.message}!
|
|
5576
5642
|
Re-attempting using \`Element.scrollIntoView\` via Web API.`
|
|
5577
5643
|
);
|
|
@@ -5636,7 +5702,7 @@ async function setValue(value) {
|
|
|
5636
5702
|
}
|
|
5637
5703
|
|
|
5638
5704
|
// src/commands/element/shadow$$.ts
|
|
5639
|
-
import
|
|
5705
|
+
import logger18 from "@wdio/logger";
|
|
5640
5706
|
import { getBrowserObject as getBrowserObject28 } from "@wdio/utils";
|
|
5641
5707
|
import { SHADOW_ELEMENT_KEY } from "webdriver";
|
|
5642
5708
|
import { shadowFnFactory } from "./scripts/shadowFnFactory.js";
|
|
@@ -5964,7 +6030,7 @@ var createRoleBaseXpathSelector = (role) => {
|
|
|
5964
6030
|
};
|
|
5965
6031
|
|
|
5966
6032
|
// src/commands/element/shadow$$.ts
|
|
5967
|
-
var
|
|
6033
|
+
var log18 = logger18("webdriverio");
|
|
5968
6034
|
async function shadow$$(selector) {
|
|
5969
6035
|
const browser = getBrowserObject28(this);
|
|
5970
6036
|
try {
|
|
@@ -5974,7 +6040,7 @@ async function shadow$$(selector) {
|
|
|
5974
6040
|
const elements = await getElements.call(this, selector, res, { isShadowElement: true });
|
|
5975
6041
|
return enhanceElementsArray(elements, this, selector);
|
|
5976
6042
|
} catch (err) {
|
|
5977
|
-
|
|
6043
|
+
log18.warn(
|
|
5978
6044
|
`Failed to fetch element within shadow DOM using WebDriver command: ${err.message}!
|
|
5979
6045
|
Falling back to JavaScript shim.`
|
|
5980
6046
|
);
|
|
@@ -5983,11 +6049,11 @@ Falling back to JavaScript shim.`
|
|
|
5983
6049
|
}
|
|
5984
6050
|
|
|
5985
6051
|
// src/commands/element/shadow$.ts
|
|
5986
|
-
import
|
|
6052
|
+
import logger19 from "@wdio/logger";
|
|
5987
6053
|
import { SHADOW_ELEMENT_KEY as SHADOW_ELEMENT_KEY2 } from "webdriver";
|
|
5988
6054
|
import { shadowFnFactory as shadowFnFactory2 } from "./scripts/shadowFnFactory.js";
|
|
5989
6055
|
import { getBrowserObject as getBrowserObject29 } from "@wdio/utils";
|
|
5990
|
-
var
|
|
6056
|
+
var log19 = logger19("webdriverio");
|
|
5991
6057
|
async function shadow$(selector) {
|
|
5992
6058
|
const browser = getBrowserObject29(this);
|
|
5993
6059
|
try {
|
|
@@ -5996,7 +6062,7 @@ async function shadow$(selector) {
|
|
|
5996
6062
|
const res = await browser.findElementFromShadowRoot(shadowRoot[SHADOW_ELEMENT_KEY2], using, value);
|
|
5997
6063
|
return getElement.call(this, selector, res, { isShadowElement: true });
|
|
5998
6064
|
} catch (err) {
|
|
5999
|
-
|
|
6065
|
+
log19.warn(
|
|
6000
6066
|
`Failed to fetch element within shadow DOM using WebDriver command: ${err.message}!
|
|
6001
6067
|
Falling back to JavaScript shim.`
|
|
6002
6068
|
);
|
|
@@ -6295,7 +6361,7 @@ function querySelectorAllDeep(findMany, s, r) {
|
|
|
6295
6361
|
}
|
|
6296
6362
|
|
|
6297
6363
|
// src/utils/index.ts
|
|
6298
|
-
var
|
|
6364
|
+
var log20 = logger20("webdriverio");
|
|
6299
6365
|
var INVALID_SELECTOR_ERROR = "selector needs to be typeof `string` or `function`";
|
|
6300
6366
|
var IGNORED_COMMAND_FILE_EXPORTS = ["SESSION_MOCKS", "CDP_SESSIONS"];
|
|
6301
6367
|
var scopes = {
|
|
@@ -6405,7 +6471,7 @@ function isStaleElementError(err) {
|
|
|
6405
6471
|
);
|
|
6406
6472
|
}
|
|
6407
6473
|
function transformClassicToBidiSelector(using, value) {
|
|
6408
|
-
if (using === "css selector") {
|
|
6474
|
+
if (using === "css selector" || using === "tag name") {
|
|
6409
6475
|
return { type: "css", value };
|
|
6410
6476
|
}
|
|
6411
6477
|
if (using === "xpath") {
|
|
@@ -6449,7 +6515,7 @@ async function findDeepElement(selector) {
|
|
|
6449
6515
|
})).then((elems) => elems.filter(([isIn]) => isIn).map(([, elem]) => elem));
|
|
6450
6516
|
return scopedNodes[0];
|
|
6451
6517
|
}, (err) => {
|
|
6452
|
-
|
|
6518
|
+
log20.warn(`Failed to execute browser.browsingContextLocateNodes({ ... }) due to ${err}, falling back to regular WebDriver Classic command`);
|
|
6453
6519
|
return browser.findElement(using, value);
|
|
6454
6520
|
});
|
|
6455
6521
|
if (!deepElementResult) {
|
|
@@ -6487,7 +6553,7 @@ async function findDeepElements(selector) {
|
|
|
6487
6553
|
})).then((elems) => elems.filter(([isIn]) => isIn).map(([, elem]) => elem));
|
|
6488
6554
|
return scopedNodes;
|
|
6489
6555
|
}, (err) => {
|
|
6490
|
-
|
|
6556
|
+
log20.warn(`Failed to execute browser.browsingContextLocateNodes({ ... }) due to ${err}, falling back to regular WebDriver Classic command`);
|
|
6491
6557
|
return browser.findElements(using, value);
|
|
6492
6558
|
});
|
|
6493
6559
|
return deepElementResult;
|
|
@@ -6615,7 +6681,7 @@ async function getElementRect(scope) {
|
|
|
6615
6681
|
if (rectJs && typeof rectJs[key] === "number") {
|
|
6616
6682
|
rect[key] = Math.floor(rectJs[key]);
|
|
6617
6683
|
} else {
|
|
6618
|
-
|
|
6684
|
+
log20.error("getElementRect", { rect, rectJs, key });
|
|
6619
6685
|
throw new Error("Failed to receive element rects via execute command");
|
|
6620
6686
|
}
|
|
6621
6687
|
});
|
|
@@ -7142,45 +7208,6 @@ var Dialog = class {
|
|
|
7142
7208
|
}
|
|
7143
7209
|
};
|
|
7144
7210
|
|
|
7145
|
-
// src/polyfill.ts
|
|
7146
|
-
import logger20 from "@wdio/logger";
|
|
7147
|
-
var polyfillManager = /* @__PURE__ */ new Map();
|
|
7148
|
-
var log20 = logger20("webdriverio:PolyfillManager");
|
|
7149
|
-
function getPolyfillManager(browser) {
|
|
7150
|
-
const existingPolyfillManager = polyfillManager.get(browser);
|
|
7151
|
-
if (existingPolyfillManager) {
|
|
7152
|
-
return existingPolyfillManager;
|
|
7153
|
-
}
|
|
7154
|
-
const newContext = new PolyfillManager(browser);
|
|
7155
|
-
polyfillManager.set(browser, newContext);
|
|
7156
|
-
return newContext;
|
|
7157
|
-
}
|
|
7158
|
-
var PolyfillManager = class {
|
|
7159
|
-
#initialize;
|
|
7160
|
-
constructor(browser) {
|
|
7161
|
-
if (!browser.isBidi || process.env.VITEST_WORKER_ID || browser.options?.automationProtocol !== "webdriver") {
|
|
7162
|
-
this.#initialize = Promise.resolve(true);
|
|
7163
|
-
return;
|
|
7164
|
-
}
|
|
7165
|
-
const polyfill = () => {
|
|
7166
|
-
const closure = new Function(
|
|
7167
|
-
"var __defProp = Object.defineProperty;var __name = (target, value) => __defProp(target, 'name', { value, configurable: true });globalThis.__name = __name;"
|
|
7168
|
-
);
|
|
7169
|
-
return closure();
|
|
7170
|
-
};
|
|
7171
|
-
this.#initialize = Promise.all([
|
|
7172
|
-
browser.addInitScript(polyfill),
|
|
7173
|
-
browser.execute(polyfill)
|
|
7174
|
-
]).then(() => {
|
|
7175
|
-
log20.info("polyfill script added");
|
|
7176
|
-
return true;
|
|
7177
|
-
}, () => false);
|
|
7178
|
-
}
|
|
7179
|
-
async initialize() {
|
|
7180
|
-
return this.#initialize;
|
|
7181
|
-
}
|
|
7182
|
-
};
|
|
7183
|
-
|
|
7184
7211
|
// src/index.ts
|
|
7185
7212
|
var Key2 = Key;
|
|
7186
7213
|
var SevereServiceError2 = SevereServiceError;
|
package/build/polyfill.d.ts
CHANGED
package/build/polyfill.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polyfill.d.ts","sourceRoot":"","sources":["../src/polyfill.ts"],"names":[],"mappings":"AAKA,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,mBAS9D;AAED;;GAEG;AACH,qBAAa,eAAe;;gBAGZ,OAAO,EAAE,WAAW,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"polyfill.d.ts","sourceRoot":"","sources":["../src/polyfill.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,aAAa,QAKzB,CAAA;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,mBAS9D;AAED;;GAEG;AACH,qBAAa,eAAe;;gBAGZ,OAAO,EAAE,WAAW,CAAC,OAAO;IAkClC,UAAU;CAGnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadowRoot.d.ts","sourceRoot":"","sources":["../src/shadowRoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAA;AAQtC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,qBAShE;AAED;;;;GAIG;AACH,qBAAa,iBAAiB;;gBAMd,OAAO,EAAE,WAAW,CAAC,OAAO;IAyBlC,UAAU;IAuBhB;;;OAGG;IACH,aAAa;IAIb;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ;IA2FvC,4BAA4B,CAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"shadowRoot.d.ts","sourceRoot":"","sources":["../src/shadowRoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAA;AAQtC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,qBAShE;AAED;;;;GAIG;AACH,qBAAa,iBAAiB;;gBAMd,OAAO,EAAE,WAAW,CAAC,OAAO;IAyBlC,UAAU;IAuBhB;;;OAGG;IACH,aAAa;IAIb;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ;IA2FvC,4BAA4B,CAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAwB1E,gCAAgC,CAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE;IAgBpG,qBAAqB,CAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IActF,gBAAgB,CAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAOvD;AAED,qBAAa,cAAc;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,QAAQ,sBAA4B;gBAEvB,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc;IAMxE;;OAEG;IACH,gBAAgB,CAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAC7C;;;;;OAKG;IACH,gBAAgB,CAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IA6B5D,IAAI,CAAE,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAelD,cAAc,CAAE,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAe/D,kBAAkB,IAAK,MAAM,EAAE;IAO/B,IAAI,IAAK,cAAc,EAAE;IAIzB,MAAM,CAAE,OAAO,EAAE,MAAM,GAAG,OAAO;CAcpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pointer.d.ts","sourceRoot":"","sources":["../../../src/utils/actions/pointer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,WAAW,CAAA;AAChE,OAAO,UAAU,MAAM,WAAW,CAAA;AAClC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAI7D,eAAO,MAAM,WAAW,+CAA8C,CAAA;AACtE,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;AACrD,MAAM,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAC9B,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,UAAU,CAAA;AAM3C,UAAU,qBAAqB;IAC3B;;;OAGG;IACH,MAAM,EAAE,MAAM,GAAG,WAAW,CAAA;CAC/B;AAKD,QAAA,MAAM,cAAc;;;;;;;;;;IAVhB;;;OAGG;YACK,MAAM,GAAG,WAAW;CAiB/B,CAAA;AACD,QAAA,MAAM,mBAAmB;;;;YAIK,CAAC,MAAM,GAAG,gBAAgB,GAAG,uBAAuB,GAAG,WAAW,CAAC,OAAO,CAAC;CACxG,CAAA;AAED,KAAK,mBAAmB,GAAG,OAAO,CAAC,OAAO,cAAc,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;AAC1F,KAAK,uBAAuB,GAAG,OAAO,CAAC,OAAO,mBAAmB,CAAC,GAAG,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"pointer.d.ts","sourceRoot":"","sources":["../../../src/utils/actions/pointer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,WAAW,CAAA;AAChE,OAAO,UAAU,MAAM,WAAW,CAAA;AAClC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAI7D,eAAO,MAAM,WAAW,+CAA8C,CAAA;AACtE,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;AACrD,MAAM,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAC9B,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,UAAU,CAAA;AAM3C,UAAU,qBAAqB;IAC3B;;;OAGG;IACH,MAAM,EAAE,MAAM,GAAG,WAAW,CAAA;CAC/B;AAKD,QAAA,MAAM,cAAc;;;;;;;;;;IAVhB;;;OAGG;YACK,MAAM,GAAG,WAAW;CAiB/B,CAAA;AACD,QAAA,MAAM,mBAAmB;;;;YAIK,CAAC,MAAM,GAAG,gBAAgB,GAAG,uBAAuB,GAAG,WAAW,CAAC,OAAO,CAAC;CACxG,CAAA;AAED,KAAK,mBAAmB,GAAG,OAAO,CAAC,OAAO,cAAc,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;AAC1F,KAAK,uBAAuB,GAAG,OAAO,CAAC,OAAO,mBAAmB,CAAC,GAAG,mBAAmB,CAAA;AA4BxF,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,UAAU;gBACpC,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,GAAE,gBAAqB;IAQzE;;;;;OAKG;IACH,IAAI,CAAE,MAAM,EAAE,uBAAuB,GAAG,aAAa;IACrD,IAAI,CAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,aAAa;IAqB1C;;;OAGG;IACH,EAAE,CAAE,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa;IACnC,EAAE,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,aAAa;IACxC,EAAE,CAAE,MAAM,CAAC,EAAE,qBAAqB,GAAG,aAAa;IASlD;;;OAGG;IACH,IAAI,CAAE,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa;IACrC,IAAI,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,aAAa;IAC1C,IAAI,CAAE,MAAM,CAAC,EAAE,mBAAmB,GAAG,aAAa;IAclD;;OAEG;IACH,MAAM;CAIT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/interception/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAKhD,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAMpD,KAAK,WAAW,GAAG,MAAM,GAAG,cAAc,GAAG,MAAM,CAAA;AAOnD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAqB;;gBAalC,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,iBAAiB,EAChC,OAAO,EAAE,WAAW,CAAC,OAAO;WAcnB,QAAQ,CACjB,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,iBAAiB,EAChC,OAAO,EAAE,WAAW,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/interception/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAKhD,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC3F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAMpD,KAAK,WAAW,GAAG,MAAM,GAAG,cAAc,GAAG,MAAM,CAAA;AAOnD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAqB;;gBAalC,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,iBAAiB,EAChC,OAAO,EAAE,WAAW,CAAC,OAAO;WAcnB,QAAQ,CACjB,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,iBAAiB,EAChC,OAAO,EAAE,WAAW,CAAC,OAAO;IA2NhC;;OAEG;IACH,IAAI,KAAK,IAAI,KAAK,CAAC,kCAAkC,EAAE,CAEtD;IAED;;OAEG;IACH,KAAK;IAKL;;;OAGG;IACH,KAAK;IAOL;;;;OAIG;IACG,OAAO;IAgBb;;;;;OAKG;IACH,OAAO,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,OAAO;IAMrD;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,kBAAkB;IAIvC;;;;;;OAMG;IACH,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAY3F;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,GAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAM;IAI/E;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO;IAMpB;;OAEG;IACH,SAAS;IAIT;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAO5C;;OAEG;IACH,YAAY,CAAC,WAAW,EAAE,MAAM;IAIhC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,kCAAkC,KAAK,IAAI,GAAG,qBAAqB;IAClH,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,kCAAkC,KAAK,IAAI,GAAG,qBAAqB;IAC9G,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,qBAAqB;IACnF,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,qBAAqB;IAC/E,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,kCAAkC,KAAK,IAAI,GAAG,qBAAqB;IAYrH,eAAe,CAAE,EACb,OAA8C,EAC9C,QAAgD,EAChD,UAAU,GACb,GAAE,cAAmB;CA2BzB;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,cAqBvD"}
|
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": "9.1.
|
|
4
|
+
"version": "9.1.4",
|
|
5
5
|
"homepage": "https://webdriver.io",
|
|
6
6
|
"author": "Christian Bromann <mail@bromann.dev>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -76,19 +76,19 @@
|
|
|
76
76
|
"dependencies": {
|
|
77
77
|
"@types/node": "^20.11.30",
|
|
78
78
|
"@types/sinonjs__fake-timers": "^8.1.5",
|
|
79
|
-
"@wdio/config": "9.1.
|
|
80
|
-
"@wdio/logger": "9.1.
|
|
79
|
+
"@wdio/config": "9.1.3",
|
|
80
|
+
"@wdio/logger": "9.1.3",
|
|
81
81
|
"@wdio/protocols": "9.0.8",
|
|
82
82
|
"@wdio/repl": "9.0.8",
|
|
83
|
-
"@wdio/types": "9.1.
|
|
84
|
-
"@wdio/utils": "9.1.
|
|
83
|
+
"@wdio/types": "9.1.3",
|
|
84
|
+
"@wdio/utils": "9.1.3",
|
|
85
85
|
"archiver": "^7.0.1",
|
|
86
86
|
"aria-query": "^5.3.0",
|
|
87
87
|
"cheerio": "^1.0.0-rc.12",
|
|
88
88
|
"css-shorthand-properties": "^1.1.1",
|
|
89
89
|
"css-value": "^0.0.1",
|
|
90
90
|
"grapheme-splitter": "^1.0.4",
|
|
91
|
-
"htmlfy": "^0.
|
|
91
|
+
"htmlfy": "^0.3.0",
|
|
92
92
|
"import-meta-resolve": "^4.0.0",
|
|
93
93
|
"is-plain-obj": "^4.1.0",
|
|
94
94
|
"jszip": "^3.10.1",
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
"rgb2hex": "0.2.5",
|
|
101
101
|
"serialize-error": "^11.0.3",
|
|
102
102
|
"urlpattern-polyfill": "^10.0.0",
|
|
103
|
-
"webdriver": "9.1.
|
|
103
|
+
"webdriver": "9.1.3"
|
|
104
104
|
},
|
|
105
105
|
"peerDependencies": {
|
|
106
106
|
"puppeteer-core": "^22.3.0"
|
|
@@ -110,5 +110,5 @@
|
|
|
110
110
|
"optional": true
|
|
111
111
|
}
|
|
112
112
|
},
|
|
113
|
-
"gitHead": "
|
|
113
|
+
"gitHead": "39fb68e6fa78c99c0def775c2b976f36e0be3af0"
|
|
114
114
|
}
|