@wdio/config 9.27.2 → 9.29.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigParser.d.ts","sourceRoot":"","sources":["../../src/node/ConfigParser.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAa,QAAQ,EAAE,MAAM,aAAa,CAAA;AAO7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAM9C,KAAK,IAAI,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;AAK7B,UAAU,+BAAgC,SAAQ,OAAO,CAAC,UAAU;IAChE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,YAAY,CAAC,sBAAsB,CAAA;IAClD,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,UAAU,WAAY,SAAQ,IAAI,CAAC,OAAO,CAAC,+BAA+B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7F,KAAK,CAAC,EAAE,IAAI,EAAE,CAAA;IACd,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,CAAC,OAAO,OAAO,YAAY;;IAQzB;;;OAGG;IACH,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,YAAY;IAVxB,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,aAAa,CAAC,CAA0C;gBAG5D,cAAc,EAAE,MAAM;IACtB;;;OAGG;IACK,cAAc,GAAE,OAAO,CAAC,+BAA+B,CAAM,EAC7D,YAAY,GAAE,WAAyC;IAmBnE;;OAEG;IACG,UAAU,CAAC,MAAM,GAAE,WAAgB;
|
|
1
|
+
{"version":3,"file":"ConfigParser.d.ts","sourceRoot":"","sources":["../../src/node/ConfigParser.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAa,QAAQ,EAAE,MAAM,aAAa,CAAA;AAO7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAM9C,KAAK,IAAI,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;AAK7B,UAAU,+BAAgC,SAAQ,OAAO,CAAC,UAAU;IAChE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,YAAY,CAAC,sBAAsB,CAAA;IAClD,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,UAAU,WAAY,SAAQ,IAAI,CAAC,OAAO,CAAC,+BAA+B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7F,KAAK,CAAC,EAAE,IAAI,EAAE,CAAA;IACd,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,CAAC,OAAO,OAAO,YAAY;;IAQzB;;;OAGG;IACH,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,YAAY;IAVxB,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,aAAa,CAAC,CAA0C;gBAG5D,cAAc,EAAE,MAAM;IACtB;;;OAGG;IACK,cAAc,GAAE,OAAO,CAAC,+BAA+B,CAAM,EAC7D,YAAY,GAAE,WAAyC;IAmBnE;;OAEG;IACG,UAAU,CAAC,MAAM,GAAE,WAAgB;IA8CzC;;;OAGG;YACW,aAAa;IA6D3B;;;;OAIG;IACH,OAAO,CAAC,KAAK;IA4Eb;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK;IAkClC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE;IAgF/C;;;;;;;;OAQG;IACH,0BAA0B,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO;IAgDnF;;OAEG;IACH,SAAS,IAIkB,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;IAGvD;;OAEG;IACH,eAAe,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC,sBAAsB,GAAG,YAAY,CAAC,+BAA+B;IAY/G;;;;;;;;OAQG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,GAAE,WAAyC,EAAE,cAAc,CAAC,EAAE,MAAM;IAkDtI;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;IA2BhD,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE;CAWtB"}
|
package/build/node/index.js
CHANGED
|
@@ -208,6 +208,43 @@ var NO_NAMED_CONFIG_EXPORT = 'No named export object called "config" found. Make
|
|
|
208
208
|
|
|
209
209
|
// src/utils.ts
|
|
210
210
|
var validObjectOrArray = (object) => Array.isArray(object) && object.length > 0 || typeof object === "object" && Object.keys(object).length > 0;
|
|
211
|
+
function applyHeadlessFlag(caps, headless) {
|
|
212
|
+
const target = caps.alwaysMatch || caps;
|
|
213
|
+
const browser = (target.browserName || "").toLowerCase();
|
|
214
|
+
if (!browser && !("alwaysMatch" in caps)) {
|
|
215
|
+
for (const key of Object.keys(caps)) {
|
|
216
|
+
const val = caps[key];
|
|
217
|
+
if (val && typeof val === "object" && val.browserName) {
|
|
218
|
+
applyHeadlessFlag(val, headless);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
return caps;
|
|
222
|
+
}
|
|
223
|
+
if (browser === "chrome" || browser === "chromium") {
|
|
224
|
+
const opts = target["goog:chromeOptions"] || {};
|
|
225
|
+
const args = opts.args || [];
|
|
226
|
+
const alreadyHasHeadless = args.some((a) => a === "--headless" || a === "headless" || a.startsWith("--headless="));
|
|
227
|
+
target["goog:chromeOptions"] = {
|
|
228
|
+
...opts,
|
|
229
|
+
args: headless ? Array.from(/* @__PURE__ */ new Set([...args, ...alreadyHasHeadless ? [] : ["--headless"], "--disable-gpu"])) : args.filter((a) => a !== "--headless" && a !== "headless" && !a.startsWith("--headless="))
|
|
230
|
+
};
|
|
231
|
+
} else if (browser === "firefox") {
|
|
232
|
+
const opts = target["moz:firefoxOptions"] || {};
|
|
233
|
+
const args = opts.args || [];
|
|
234
|
+
target["moz:firefoxOptions"] = {
|
|
235
|
+
...opts,
|
|
236
|
+
args: headless ? Array.from(/* @__PURE__ */ new Set([...args, "-headless"])) : args.filter((a) => a !== "-headless" && a !== "--headless")
|
|
237
|
+
};
|
|
238
|
+
} else if (browser === "microsoftedge" || browser === "msedge" || browser === "edge") {
|
|
239
|
+
const opts = target["ms:edgeOptions"] || {};
|
|
240
|
+
const args = opts.args || [];
|
|
241
|
+
target["ms:edgeOptions"] = {
|
|
242
|
+
...opts,
|
|
243
|
+
args: headless ? Array.from(/* @__PURE__ */ new Set([...args, "--headless"])) : args.filter((a) => a !== "--headless" && a !== "headless" && !a.startsWith("--headless="))
|
|
244
|
+
};
|
|
245
|
+
}
|
|
246
|
+
return caps;
|
|
247
|
+
}
|
|
211
248
|
function removeLineNumbers(filePath) {
|
|
212
249
|
const matcher = filePath.match(/:\d+(:\d+$|$)/);
|
|
213
250
|
if (matcher) {
|
|
@@ -237,6 +274,8 @@ var ConfigParser = class _ConfigParser {
|
|
|
237
274
|
}
|
|
238
275
|
this.merge(_initialConfig, false);
|
|
239
276
|
}
|
|
277
|
+
_initialConfig;
|
|
278
|
+
_pathService;
|
|
240
279
|
#isInitialised = false;
|
|
241
280
|
#configFilePath;
|
|
242
281
|
_config;
|
|
@@ -262,6 +301,16 @@ var ConfigParser = class _ConfigParser {
|
|
|
262
301
|
};
|
|
263
302
|
}
|
|
264
303
|
}
|
|
304
|
+
if (typeof this._initialConfig.headless === "boolean") {
|
|
305
|
+
const headless = this._initialConfig.headless;
|
|
306
|
+
if (Array.isArray(this._capabilities)) {
|
|
307
|
+
for (const cap of this._capabilities) {
|
|
308
|
+
applyHeadlessFlag(cap, headless);
|
|
309
|
+
}
|
|
310
|
+
} else if (this._capabilities && typeof this._capabilities === "object") {
|
|
311
|
+
applyHeadlessFlag(this._capabilities, headless);
|
|
312
|
+
}
|
|
313
|
+
}
|
|
265
314
|
this.#isInitialised = true;
|
|
266
315
|
}
|
|
267
316
|
/**
|
package/build/utils.d.ts
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import type { Options } from '@wdio/types';
|
|
2
2
|
export declare const validObjectOrArray: (object: object) => object is object | Array<unknown>;
|
|
3
|
+
/**
|
|
4
|
+
* Inject or strip headless CLI args from a single capability object.
|
|
5
|
+
* Handles Chrome/Chromium, Firefox, and Edge.
|
|
6
|
+
*/
|
|
7
|
+
export declare function applyHeadlessFlag(caps: WebdriverIO.Capabilities, headless: boolean): WebdriverIO.Capabilities;
|
|
3
8
|
/**
|
|
4
9
|
* remove line numbers from file path, ex:
|
|
5
10
|
* `/foo:9` or `c:\bar:14:5`
|
package/build/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAG1C,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,KAAG,MAAM,IAAI,MAAM,GAAG,KAAK,CAAC,OAAO,CAClB,CAAA;AAElE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,UAMjD;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,WAGtE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,YAAY,WAE/D;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,UAAU,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,KAAG,WAAW,CAAC,MAGpG,CAAA;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,GAAS,CAAC,MAAM,CAAC,CAAC,EAAE,KA+C5G"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAG1C,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,KAAG,MAAM,IAAI,MAAM,GAAG,KAAK,CAAC,OAAO,CAClB,CAAA;AAElE;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,GAAG,WAAW,CAAC,YAAY,CA8C7G;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,UAMjD;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,WAGtE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,YAAY,WAE/D;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,UAAU,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,KAAG,WAAW,CAAC,MAGpG,CAAA;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,GAAS,CAAC,MAAM,CAAC,CAAC,EAAE,KA+C5G"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wdio/config",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.29.0",
|
|
4
4
|
"description": "A helper utility to parse and validate WebdriverIO options",
|
|
5
5
|
"author": "Christian Bromann <mail@bromann.dev>",
|
|
6
6
|
"homepage": "https://github.com/webdriverio/webdriverio/tree/main/packages/wdio-config",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@wdio/logger": "9.18.0",
|
|
40
|
-
"@wdio/types": "9.
|
|
41
|
-
"@wdio/utils": "9.
|
|
40
|
+
"@wdio/types": "9.29.0",
|
|
41
|
+
"@wdio/utils": "9.29.0",
|
|
42
42
|
"deepmerge-ts": "^7.0.3",
|
|
43
43
|
"glob": "^10.2.2",
|
|
44
44
|
"import-meta-resolve": "^4.0.0",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"minimatch": "^9.0.0"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "c7808c59ca3ab6a677230cebd688454426cba0f2"
|
|
54
54
|
}
|