@axe-core/watcher 4.2.0 → 4.3.0-next.003cbd72
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/EXTENSION-LICENSES-3RD-PARTY.md +4 -426
- package/dist/Controller.d.ts +23 -0
- package/dist/Controller.js +98 -10
- package/dist/Controller.js.map +1 -1
- package/dist/cypress/cypress.d.ts +2 -1
- package/dist/cypress/cypress.js +77 -4
- package/dist/cypress/cypress.js.map +1 -1
- package/dist/cypressCommands.js +80 -6
- package/dist/cypressCommands.js.map +1 -1
- package/dist/playwright/playwright.d.ts +1 -0
- package/dist/playwright/playwright.js +4 -0
- package/dist/playwright/playwright.js.map +1 -1
- package/dist/playwright-test/playwrightTest.js +15 -2
- package/dist/playwright-test/playwrightTest.js.map +1 -1
- package/dist/puppeteer/puppeteer.d.ts +1 -0
- package/dist/puppeteer/puppeteer.js +3 -0
- package/dist/puppeteer/puppeteer.js.map +1 -1
- package/dist/sendResultsToServer.d.ts +3 -0
- package/dist/sendResultsToServer.js +11 -50
- package/dist/sendResultsToServer.js.map +1 -1
- package/dist/utils/constants.d.ts +1 -0
- package/dist/utils/constants.js +2 -1
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/saveScreenshotsLocally.d.ts +2 -0
- package/dist/utils/saveScreenshotsLocally.js +42 -0
- package/dist/utils/saveScreenshotsLocally.js.map +1 -0
- package/dist/utils/screenshotFilename.d.ts +8 -0
- package/dist/utils/screenshotFilename.js +18 -0
- package/dist/utils/screenshotFilename.js.map +1 -0
- package/dist/utils/sync-fetch-worker.mjs +66 -2
- package/dist/utils/sync-fetch.d.ts +32 -0
- package/dist/utils/sync-fetch.js +29 -11
- package/dist/utils/sync-fetch.js.map +1 -1
- package/dist/utils/testContext.d.ts +37 -0
- package/dist/utils/testContext.js +57 -0
- package/dist/utils/testContext.js.map +1 -0
- package/dist/utils/writeVariables.d.ts +4 -3
- package/dist/utils/writeVariables.js +7 -3
- package/dist/utils/writeVariables.js.map +1 -1
- package/dist/wdio/wdio.d.ts +4 -1
- package/dist/wdio/wdio.js +48 -3
- package/dist/wdio/wdio.js.map +1 -1
- package/dist/webdriver/webdriver.d.ts +1 -0
- package/dist/webdriver/webdriver.js +3 -0
- package/dist/webdriver/webdriver.js.map +1 -1
- package/extension/axe-versions/axe-core@4.11.4/axe.min.js +12 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/README.md +9 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/_template.json +1142 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/da.json +799 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/de.json +1127 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/el.json +1069 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/es.json +790 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/eu.json +789 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/fr.json +994 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/he.json +1017 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/it.json +1108 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/ja.json +1127 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/ko.json +1003 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/nl.json +48 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/no_NB.json +799 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/pl.json +1109 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/pt_BR.json +970 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/pt_PT.json +1123 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/ru.json +1127 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/zh_CN.json +1116 -0
- package/extension/axe-versions/axe-core@4.11.4/locales/zh_TW.json +1108 -0
- package/extension/axe-versions-mapper.js +2 -1
- package/extension/axe.js +1 -1
- package/extension/axe.js.LICENSE.txt +1 -1
- package/extension/background.js +1 -1
- package/extension/content.js +1 -1
- package/extension/manifest.json +5 -4
- package/package.json +79 -22
- package/dist/utils/createAbortController.d.ts +0 -11
- package/dist/utils/createAbortController.js +0 -14
- package/dist/utils/createAbortController.js.map +0 -1
package/dist/utils/sync-fetch.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SIGNAL_DIED = exports.SIGNAL_POSTMESSAGE = exports.SIGNAL_WAITING = void 0;
|
|
3
4
|
exports.syncFetch = syncFetch;
|
|
5
|
+
exports.buildTimeoutError = buildTimeoutError;
|
|
4
6
|
const node_worker_threads_1 = require("node:worker_threads");
|
|
5
7
|
const node_path_1 = require("node:path");
|
|
6
8
|
function syncFetch(url, options = {}, customOptions = {
|
|
@@ -10,28 +12,34 @@ function syncFetch(url, options = {}, customOptions = {
|
|
|
10
12
|
const processingBuffer = 3000;
|
|
11
13
|
const mainThreadTimeout = timeout + processingBuffer;
|
|
12
14
|
const { port1, port2 } = new node_worker_threads_1.MessageChannel();
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
15
|
+
const signalBuffer = new SharedArrayBuffer(8);
|
|
16
|
+
const signalArray = new Int32Array(signalBuffer);
|
|
17
|
+
const workerPath = customOptions._workerPath ?? (0, node_path_1.join)(__dirname, 'sync-fetch-worker.mjs');
|
|
18
|
+
const worker = new node_worker_threads_1.Worker(workerPath, {
|
|
16
19
|
name: 'sync-fetch',
|
|
17
20
|
eval: false,
|
|
18
21
|
workerData: {
|
|
19
22
|
url,
|
|
20
23
|
options,
|
|
21
24
|
timeout,
|
|
22
|
-
port: port2
|
|
25
|
+
port: port2,
|
|
26
|
+
signalBuffer
|
|
23
27
|
},
|
|
24
28
|
transferList: [port2]
|
|
25
29
|
});
|
|
26
|
-
|
|
30
|
+
worker.on('error', () => {
|
|
31
|
+
});
|
|
32
|
+
performance.mark('axe-watcher:sync-fetch:start');
|
|
27
33
|
let message;
|
|
28
34
|
try {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
+
Atomics.wait(signalArray, 0, 0, mainThreadTimeout);
|
|
36
|
+
message = (0, node_worker_threads_1.receiveMessageOnPort)(port1);
|
|
37
|
+
if (message === undefined) {
|
|
38
|
+
throw buildTimeoutError({
|
|
39
|
+
mainThreadTimeout,
|
|
40
|
+
wakeReason: Atomics.load(signalArray, 0),
|
|
41
|
+
exitCode: Atomics.load(signalArray, 1)
|
|
42
|
+
});
|
|
35
43
|
}
|
|
36
44
|
const { data, error } = message.message;
|
|
37
45
|
if (error) {
|
|
@@ -63,6 +71,16 @@ function syncFetch(url, options = {}, customOptions = {
|
|
|
63
71
|
});
|
|
64
72
|
}
|
|
65
73
|
}
|
|
74
|
+
exports.SIGNAL_WAITING = 0;
|
|
75
|
+
exports.SIGNAL_POSTMESSAGE = 1;
|
|
76
|
+
exports.SIGNAL_DIED = 2;
|
|
77
|
+
function buildTimeoutError(args) {
|
|
78
|
+
const { mainThreadTimeout, wakeReason, exitCode } = args;
|
|
79
|
+
const reason = wakeReason === exports.SIGNAL_DIED
|
|
80
|
+
? `worker exited with code ${exitCode} before responding`
|
|
81
|
+
: `worker thread did not respond within ${mainThreadTimeout}ms`;
|
|
82
|
+
return new Error(`Request timed out - ${reason}`);
|
|
83
|
+
}
|
|
66
84
|
function sanitizeHeaders(headers) {
|
|
67
85
|
if (!headers) {
|
|
68
86
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-fetch.js","sourceRoot":"","sources":["../../src/utils/sync-fetch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sync-fetch.js","sourceRoot":"","sources":["../../src/utils/sync-fetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Identifies which test produced a given scan. Attached to each emitted
|
|
3
|
+
* result and forwarded to the server.
|
|
4
|
+
*
|
|
5
|
+
* Populated by `Controller.setTestContext()` (Playwright Test, WDIO
|
|
6
|
+
* runner) or by `setGlobalTestContext()` (vanilla-Playwright and
|
|
7
|
+
* vanilla-WDIO fallback). Cypress dispatches scan events directly from
|
|
8
|
+
* the browser context and bypasses both.
|
|
9
|
+
*
|
|
10
|
+
* Canonical definition; `extension/src/types.d.ts` holds a structural
|
|
11
|
+
* copy since the extension bundle can't import this file. Drift is
|
|
12
|
+
* guarded by an assignability test in `testContext.test.ts`.
|
|
13
|
+
*/
|
|
14
|
+
export interface TestContext {
|
|
15
|
+
test_file_path: string | null;
|
|
16
|
+
test_location: string[] | null;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Strip the user's home directory from a test-file path so usernames
|
|
20
|
+
* don't leak. Backslashes are normalized to `/` so a Windows path still
|
|
21
|
+
* works when processed on a POSIX runner.
|
|
22
|
+
*/
|
|
23
|
+
export declare function toRelativeTestFile(testFile: string | null | undefined): string | null;
|
|
24
|
+
/** A valid location is a non-empty array of strings; anything else → `null`. */
|
|
25
|
+
export declare function isValidTestLocation(loc: unknown): loc is string[];
|
|
26
|
+
/**
|
|
27
|
+
* Single gate for turning raw caller input into a storage-safe `TestContext`.
|
|
28
|
+
*/
|
|
29
|
+
export declare function normalizeTestContext(ctx: TestContext | null | undefined): TestContext | null;
|
|
30
|
+
/**
|
|
31
|
+
* Called by the vanilla-driver setup files at each test's start/end.
|
|
32
|
+
* Framework-aware adapters (Playwright Test, WDIO runner) bypass this
|
|
33
|
+
* and call `Controller.setTestContext()` directly.
|
|
34
|
+
*/
|
|
35
|
+
export declare function setGlobalTestContext(ctx: TestContext | null): void;
|
|
36
|
+
/** Fallback read by `Controller` when no per-instance context was set. */
|
|
37
|
+
export declare function getGlobalTestContext(): TestContext | null;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.toRelativeTestFile = toRelativeTestFile;
|
|
7
|
+
exports.isValidTestLocation = isValidTestLocation;
|
|
8
|
+
exports.normalizeTestContext = normalizeTestContext;
|
|
9
|
+
exports.setGlobalTestContext = setGlobalTestContext;
|
|
10
|
+
exports.getGlobalTestContext = getGlobalTestContext;
|
|
11
|
+
const os_1 = __importDefault(require("os"));
|
|
12
|
+
const createDebugger_1 = __importDefault(require("../createDebugger"));
|
|
13
|
+
const debugLogger = (0, createDebugger_1.default)('testContext');
|
|
14
|
+
function toRelativeTestFile(testFile) {
|
|
15
|
+
if (!testFile || typeof testFile !== 'string') {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
const home = os_1.default.homedir().replaceAll('\\', '/');
|
|
19
|
+
const normalized = testFile.replaceAll('\\', '/');
|
|
20
|
+
if (normalized.startsWith(home + '/')) {
|
|
21
|
+
return normalized.slice(home.length + 1);
|
|
22
|
+
}
|
|
23
|
+
return normalized;
|
|
24
|
+
}
|
|
25
|
+
function isValidTestLocation(loc) {
|
|
26
|
+
return (Array.isArray(loc) &&
|
|
27
|
+
loc.length > 0 &&
|
|
28
|
+
loc.every(segment => typeof segment === 'string'));
|
|
29
|
+
}
|
|
30
|
+
function normalizeTestContext(ctx) {
|
|
31
|
+
if (!ctx || typeof ctx !== 'object') {
|
|
32
|
+
if (ctx) {
|
|
33
|
+
debugLogger('dropped ctx: expected a plain TestContext object');
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
if (ctx.test_file_path && toRelativeTestFile(ctx.test_file_path) === null) {
|
|
38
|
+
debugLogger('dropped test_file_path: expected a non-empty string');
|
|
39
|
+
}
|
|
40
|
+
if (ctx.test_location && !isValidTestLocation(ctx.test_location)) {
|
|
41
|
+
debugLogger('dropped test_location: expected a non-empty array of strings');
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
test_file_path: toRelativeTestFile(ctx.test_file_path),
|
|
45
|
+
test_location: isValidTestLocation(ctx.test_location)
|
|
46
|
+
? [...ctx.test_location]
|
|
47
|
+
: null
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
let globalTestContext = null;
|
|
51
|
+
function setGlobalTestContext(ctx) {
|
|
52
|
+
globalTestContext = normalizeTestContext(ctx);
|
|
53
|
+
}
|
|
54
|
+
function getGlobalTestContext() {
|
|
55
|
+
return globalTestContext;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=testContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testContext.js","sourceRoot":"","sources":["../../src/utils/testContext.ts"],"names":[],"mappings":";;;;;AA8BA,gDAcC;AAGD,kDAMC;AAKD,oDAuBC;AAgBD,oDAEC;AAGD,oDAEC;AAxGD,4CAAmB;AACnB,uEAA8C;AAE9C,MAAM,WAAW,GAAG,IAAA,wBAAc,EAAC,aAAa,CAAC,CAAA;AA2BjD,SAAgB,kBAAkB,CAChC,QAAmC;IAEnC,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,IAAI,GAAG,YAAE,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC/C,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAGjD,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC1C,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAGD,SAAgB,mBAAmB,CAAC,GAAY;IAC9C,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAClB,GAAG,CAAC,MAAM,GAAG,CAAC;QACd,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAClD,CAAA;AACH,CAAC;AAKD,SAAgB,oBAAoB,CAClC,GAAmC;IAEnC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACpC,IAAI,GAAG,EAAE,CAAC;YACR,WAAW,CAAC,kDAAkD,CAAC,CAAA;QACjE,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,GAAG,CAAC,cAAc,IAAI,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC;QAC1E,WAAW,CAAC,qDAAqD,CAAC,CAAA;IACpE,CAAC;IACD,IAAI,GAAG,CAAC,aAAa,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QACjE,WAAW,CAAC,8DAA8D,CAAC,CAAA;IAC7E,CAAC;IACD,OAAO;QACL,cAAc,EAAE,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAAC;QAGtD,aAAa,EAAE,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC;YACnD,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,aAAa,CAAC;YACxB,CAAC,CAAC,IAAI;KACT,CAAA;AACH,CAAC;AASD,IAAI,iBAAiB,GAAuB,IAAI,CAAA;AAOhD,SAAgB,oBAAoB,CAAC,GAAuB;IAC1D,iBAAiB,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;AAC/C,CAAC;AAGD,SAAgB,oBAAoB;IAClC,OAAO,iBAAiB,CAAA;AAC1B,CAAC"}
|
|
@@ -98,7 +98,8 @@ interface AxeConfiguration {
|
|
|
98
98
|
*```
|
|
99
99
|
*/
|
|
100
100
|
buildID?: string;
|
|
101
|
-
|
|
101
|
+
takeScreenshots?: boolean;
|
|
102
|
+
screenshotDir?: string;
|
|
102
103
|
/** Run experimental advanced rules */
|
|
103
104
|
/**
|
|
104
105
|
* Duration in milliseconds after which the appropriate `controller.method' will throw a timeout error if it hasn't completed
|
|
@@ -172,7 +173,6 @@ interface WriteVariablesParams extends AxeConfiguration {
|
|
|
172
173
|
cypress?: boolean;
|
|
173
174
|
isPlaywrightTest?: boolean;
|
|
174
175
|
isWdioTestrunner?: boolean;
|
|
175
|
-
takeScreenshots?: boolean;
|
|
176
176
|
experimentalAdvancedRules?: boolean;
|
|
177
177
|
}
|
|
178
178
|
/** variables.json shape. */
|
|
@@ -187,11 +187,12 @@ export interface Variables {
|
|
|
187
187
|
run_options: RunOptions | null;
|
|
188
188
|
git_data?: GitData;
|
|
189
189
|
take_screenshots?: boolean;
|
|
190
|
+
screenshot_dir?: string;
|
|
190
191
|
experimental_advanced_rules?: boolean;
|
|
191
192
|
exclude_url_patterns: string[] | null;
|
|
192
193
|
axe_core_settings?: AxeCoreSettings | null;
|
|
193
194
|
timeout: Required<Timeouts>;
|
|
194
195
|
}
|
|
195
196
|
/** Write the user's settings to the disk, so the extension can load them. */
|
|
196
|
-
declare function writeVariables({ apiKey, autoAnalyze, configurationOverrides, cypress, isPlaywrightTest, isWdioTestrunner, serverURL, sessionId, runContext, runOptions, excludeUrlPatterns, buildID, timeout, takeScreenshots, experimentalAdvancedRules, projectId, git: gitConfig }: WriteVariablesParams): void;
|
|
197
|
+
declare function writeVariables({ apiKey, autoAnalyze, configurationOverrides, cypress, isPlaywrightTest, isWdioTestrunner, serverURL, sessionId, runContext, runOptions, excludeUrlPatterns, buildID, timeout, takeScreenshots, screenshotDir, experimentalAdvancedRules, projectId, git: gitConfig }: WriteVariablesParams): void;
|
|
197
198
|
export default writeVariables;
|
|
@@ -71,7 +71,8 @@ const DEFAULT_TIMEOUT = {
|
|
|
71
71
|
analyze: 5000,
|
|
72
72
|
flush: 5000
|
|
73
73
|
};
|
|
74
|
-
function writeVariables({ apiKey, autoAnalyze, configurationOverrides, cypress, isPlaywrightTest, isWdioTestrunner, serverURL, sessionId, runContext, runOptions, excludeUrlPatterns, buildID, timeout = {}, takeScreenshots, experimentalAdvancedRules, projectId, git: gitConfig }) {
|
|
74
|
+
function writeVariables({ apiKey, autoAnalyze, configurationOverrides, cypress, isPlaywrightTest, isWdioTestrunner, serverURL, sessionId, runContext, runOptions, excludeUrlPatterns, buildID, timeout = {}, takeScreenshots, screenshotDir, experimentalAdvancedRules, projectId, git: gitConfig }) {
|
|
75
|
+
const screenshotsEnabled = !!takeScreenshots;
|
|
75
76
|
debugLogger('Received configuration:', {
|
|
76
77
|
apiKey: '<redacted>',
|
|
77
78
|
...(autoAnalyze !== undefined && { autoAnalyze }),
|
|
@@ -83,7 +84,9 @@ function writeVariables({ apiKey, autoAnalyze, configurationOverrides, cypress,
|
|
|
83
84
|
...(excludeUrlPatterns !== undefined && { excludeUrlPatterns }),
|
|
84
85
|
...(buildID !== undefined && { buildID }),
|
|
85
86
|
...(projectId !== undefined && { projectId }),
|
|
86
|
-
...(gitConfig !== undefined && { git: gitConfig })
|
|
87
|
+
...(gitConfig !== undefined && { git: gitConfig }),
|
|
88
|
+
...(takeScreenshots !== undefined && { takeScreenshots }),
|
|
89
|
+
...(screenshotDir !== undefined && { screenshotDir })
|
|
87
90
|
});
|
|
88
91
|
if (configurationOverrides && runOptions?.runOnly) {
|
|
89
92
|
throw new Error('You cannot use `configurationOverrides` and `runOptions.runOnly` together. These configuration options are mutually exclusive.');
|
|
@@ -193,7 +196,8 @@ function writeVariables({ apiKey, autoAnalyze, configurationOverrides, cypress,
|
|
|
193
196
|
project_id: projectIdValue,
|
|
194
197
|
server_url: urlString,
|
|
195
198
|
session_id: session_id || sessionId,
|
|
196
|
-
take_screenshots:
|
|
199
|
+
take_screenshots: screenshotsEnabled,
|
|
200
|
+
screenshot_dir: screenshotsEnabled ? screenshotDir : undefined,
|
|
197
201
|
auto_analyze: !!autoAnalyze,
|
|
198
202
|
cypress: !!cypress,
|
|
199
203
|
experimental_advanced_rules: !!experimentalAdvancedRules,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeVariables.js","sourceRoot":"","sources":["../../src/utils/writeVariables.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4CAA6B;AAC7B,4CAAmB;AACnB,2CAAgD;AAChD,mDAGwB;AACxB,2EAAuE;AACvE,mEAAgF;AAChF,uEAA8C;AAC9C,4EAA6E;AAC7E,mEAA+D;AAC/D,oFAA2D;AAC3D,sFAAoD;AACpD,iCAA6B;AAE7B,MAAM,WAAW,GAAG,IAAA,wBAAc,EAAC,uBAAuB,CAAC,CAAA;AAI3D,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AAmDjD,MAAM,6BAA6B,GAA4B;IAC7D,KAAK;IACL,cAAc;IACd,aAAa;IACb,YAAY;IACZ,cAAc;IACd,aAAa;IACb,YAAY;IACZ,cAAc;IACd,aAAa;IACb,YAAY;IACZ,mBAAmB;IACnB,YAAY;IACZ,QAAQ;CACT,CAAA;
|
|
1
|
+
{"version":3,"file":"writeVariables.js","sourceRoot":"","sources":["../../src/utils/writeVariables.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4CAA6B;AAC7B,4CAAmB;AACnB,2CAAgD;AAChD,mDAGwB;AACxB,2EAAuE;AACvE,mEAAgF;AAChF,uEAA8C;AAC9C,4EAA6E;AAC7E,mEAA+D;AAC/D,oFAA2D;AAC3D,sFAAoD;AACpD,iCAA6B;AAE7B,MAAM,WAAW,GAAG,IAAA,wBAAc,EAAC,uBAAuB,CAAC,CAAA;AAI3D,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;AAmDjD,MAAM,6BAA6B,GAA4B;IAC7D,KAAK;IACL,cAAc;IACd,aAAa;IACb,YAAY;IACZ,cAAc;IACd,aAAa;IACb,YAAY;IACZ,cAAc;IACd,aAAa;IACb,YAAY;IACZ,mBAAmB;IACnB,YAAY;IACZ,QAAQ;CACT,CAAA;AAqLD,MAAM,eAAe,GAAuB;IAC1C,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;CACZ,CAAA;AAGD,SAAS,cAAc,CAAC,EACtB,MAAM,EACN,WAAW,EACX,sBAAsB,EACtB,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,SAAS,EACT,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,OAAO,GAAG,EAAE,EACZ,eAAe,EACf,aAAa,EACb,yBAAyB,EACzB,SAAS,EACT,GAAG,EAAE,SAAS,EACO;IACrB,MAAM,kBAAkB,GAAG,CAAC,CAAC,eAAe,CAAA;IAG5C,WAAW,CAAC,yBAAyB,EAAE;QACrC,MAAM,EAAE,YAAY;QACpB,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC;QACjD,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,CAAC;QAC/C,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,CAAC;QAC/C,GAAG,CAAC,sBAAsB,KAAK,SAAS,IAAI,EAAE,sBAAsB,EAAE,CAAC;QACvE,GAAG,CAAC,kBAAkB,KAAK,SAAS,IAAI,EAAE,kBAAkB,EAAE,CAAC;QAC/D,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC;QACzC,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;QAClD,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;QACzD,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,EAAE,aAAa,EAAE,CAAC;KACtD,CAAC,CAAA;IAEF,IAAI,sBAAsB,IAAI,UAAU,EAAE,OAAO,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,gIAAgI,CACjI,CAAA;IACH,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,8BAAkB,CAAA;IAChC,CAAC;IAED,IAAI,SAAS,CAAA;IACb,IAAI,CAAC;QACH,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC3C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,4EAA4E,GAAG,EAAE,CAClF,CAAA;IACH,CAAC;IAED,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE,CAAC;QACtC,IAAA,6CAAqB,EAAC,UAAU,CAAC,CAAA;QACjC,WAAW,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAA;IAClD,CAAC;IAED,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE,CAAC;QACtC,IAAA,6CAAqB,EAAC,UAAU,CAAC,CAAA;QACjC,WAAW,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAA;IAClD,CAAC;IAED,IAAI,sBAAsB,EAAE,CAAC;QAC3B,WAAW,CAAC,yBAAyB,EAAE,sBAAsB,CAAC,CAAA;QAC9D,MAAM,+BAA+B,GACnC,sBAAsB,CAAC,qBAAqB;YAC5C,CAAC,6BAA6B,CAAC,QAAQ,CACrC,sBAAsB,CAAC,qBAAqB,CAC7C,CAAA;QAEH,IAAI,+BAA+B,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CACb,mCAAmC,sBAAsB,CAAC,qBAAqB,sBAAsB,6BAA6B,CAAC,IAAI,CACrI,IAAI,CACL,EAAE,CACJ,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAY,EAAE,CAAA;IAC3B,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QAExD,WAAW,CACT,2CAA2C,EAC3C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CACvB,CAAA;QACD,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,IAAI,IAAI,CAAA;QAC7C,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,IAAI,IAAI,CAAA;QACvC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,aAAa,IAAI,IAAI,CAAA;QAC5D,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,IAAI,IAAI,CAAA;QACvC,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,OAAO,IAAI,KAAK,CAAA;QACjD,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,SAAS,IAAI,IAAI,CAAA;QACpD,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,YAAY,IAAI,IAAI,CAAA;QAC1D,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,WAAW,IAAI,IAAI,CAAA;QACxD,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,aAAa,IAAI,IAAI,CAAA;IAC9D,CAAC;SAAM,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,EAAE,CAAA;QACpC,IAAI,SAAS,EAAE,CAAC;YACd,WAAW,CAAC,wBAAwB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;YACpD,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,aAAa,EAAE,CAAA;YACxC,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;YAC9B,OAAO,CAAC,kBAAkB,GAAG,GAAG,CAAC,oBAAoB,EAAE,CAAA;YACvD,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,YAAY,EAAE,CAAA;YACpC,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,EAAE,CAAA;YAEpC,MAAM,IAAI,GAAG,GAAG,CAAC,aAAa,EAAE,CAAA;YAChC,OAAO,CAAC,cAAc,GAAG,IAAI,EAAE,IAAI,CAAA;YACnC,OAAO,CAAC,iBAAiB,GAAG,IAAI,EAAE,MAAM,CAAA;YACxC,OAAO,CAAC,gBAAgB,GAAG,IAAI,EAAE,KAAK,CAAA;YACtC,OAAO,CAAC,kBAAkB,GAAG,IAAI,EAAE,OAAO,CAAA;QAC5C,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,EAAE,CAAC;QAMvD,IAAI,CAAC,SAAS,IAAI,YAAE,CAAC,UAAU,CAAC,oCAAoB,CAAC,EAAE,CAAC;YACtD,WAAW,CAAC,8BAA8B,CAAC,CAAA;YAC3C,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,oCAAoB,EAAE,MAAM,CAAC,CAAC,CAAA;gBACtE,SAAS,GAAG,IAAI,CAAC,EAAY,CAAA;YAC/B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAA;YACnE,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QAEf,OAAO,CAAC,IAAI,CACV,6JAA6J,CAC9J,CAAA;IACH,CAAC;IAED,WAAW,CAAC,kCAAkC,CAAC,CAAA;IAG/C,MAAM,cAAc,GAAG,SAAS,IAAI,IAAI,CAAA;IAExC,MAAM,sBAAsB,GAAa,IAAA,qDAAyB,GAAE,CAAA;IAEpE,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,IAAA,2BAAiB,EAAC;QAC1D,MAAM;QACN,SAAS,EAAE,cAAc;QACzB,SAAS,EAAE,SAAS;QACpB,cAAc,EAAE,OAAO;QACvB,SAAS,EAAE,SAAS,IAAI,IAAI;QAC5B,OAAO,EAAE,OAAO,IAAI,IAAI;QACxB,YAAY,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;QAC5C,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;QAC/B,SAAS,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;QACrC,eAAe,EAAE,OAAO,CAAC,iBAAiB,IAAI,IAAI;QAClD,UAAU,EAAE,OAAO,CAAC,YAAY,IAAI,KAAK;QACzC,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,IAAI,IAAI;QACpD,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,IAAI,IAAI;QACpD,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;QAC/B,cAAc,EAAE,OAAO,CAAC,gBAAgB,IAAI,IAAI;QAChD,eAAe,EAAE,sBAAsB,IAAI,IAAI;QAC/C,UAAU,EAAE,UAAU,IAAI,IAAI;QAC9B,iBAAiB,EAAE,IAAA,WAAI,GAAE;QACzB,sBAAsB;KACvB,CAAC,CAAA;IAEF,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE,CAAC;QACvC,WAAW,GAAG,IAAI,CAAA;IACpB,CAAC;IAED,IAAI,kBAAkB,EAAE,MAAM,EAAE,CAAC;QAC/B,IAAA,+BAAqB,EAAC,kBAAkB,CAAC,CAAA;IAC3C,CAAC;IAED,MAAM,SAAS,GAAc;QAC3B,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,cAAc;QAC1B,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,UAAU,IAAI,SAAS;QACnC,gBAAgB,EAAE,kBAAkB;QACpC,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;QAC9D,YAAY,EAAE,CAAC,CAAC,WAAW;QAC3B,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,2BAA2B,EAAE,CAAC,CAAC,yBAAyB;QACxD,WAAW,EAAE,UAAU,IAAI,IAAI;QAC/B,WAAW,EAAE,UAAU,IAAI,IAAI;QAC/B,QAAQ,EAAE,OAAO;QACjB,oBAAoB,EAAE,kBAAkB,IAAI,IAAI;QAChD,iBAAiB,EAAE,iBAAiB,IAAI,IAAI;QAC5C,OAAO,EAAE;YACP,GAAG,eAAe;YAClB,GAAG,OAAO;SACX;KACF,CAAA;IAED,YAAE,CAAC,aAAa,CAAC,2CAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;IAExE,IAAI,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;QAIxC,IAAA,gCAAa,EAAC;YACZ,EAAE,EAAE;gBACF,yBAAyB,iBAAiB,EAAE,gBAAgB,aAAa;gBACzE,YAAY;aACb;SACF,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,kBAAe,cAAc,CAAA"}
|
package/dist/wdio/wdio.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Options } from '@wdio/types';
|
|
2
1
|
import type { Browser as WDIOBrowser, BrowserCommandsType, ElementCommandsType, remote } from 'webdriverio';
|
|
3
2
|
import Controller from '../Controller';
|
|
4
3
|
import { type Configuration } from '../utils/writeVariables';
|
|
@@ -18,7 +17,11 @@ export declare function wdioTestRunner({ axe, ...config }: WebdriverIO.Config &
|
|
|
18
17
|
export declare class WdioController extends Controller {
|
|
19
18
|
private driver;
|
|
20
19
|
constructor(driver: Browser);
|
|
20
|
+
analyze(...args: Parameters<Controller['analyze']>): Promise<void>;
|
|
21
|
+
flush(...args: Parameters<Controller['flush']>): Promise<void>;
|
|
22
|
+
stop(...args: Parameters<Controller['stop']>): Promise<void>;
|
|
21
23
|
protected executeScript<T>(fn: string | (() => Promise<T>), ...args: unknown[]): Promise<T>;
|
|
24
|
+
captureScreenshot(): Promise<string>;
|
|
22
25
|
}
|
|
23
26
|
/** Webdriver `browser` methods. */
|
|
24
27
|
export declare const WRAPPED_BROWSER_METHODS: ReadonlyArray<keyof BrowserCommandsType>;
|
package/dist/wdio/wdio.js
CHANGED
|
@@ -16,6 +16,9 @@ const checkUserArgs_1 = require("../utils/checkUserArgs");
|
|
|
16
16
|
const writeSessionFile_1 = __importDefault(require("../utils/writeSessionFile"));
|
|
17
17
|
const noop = () => {
|
|
18
18
|
};
|
|
19
|
+
let currentWdioTestContext = null;
|
|
20
|
+
const suiteStack = [];
|
|
21
|
+
const suitePushed = [];
|
|
19
22
|
function wdioConfig({ axe, ...options }) {
|
|
20
23
|
(0, writeVariables_1.default)(axe);
|
|
21
24
|
const chromeOpts = options.capabilities?.['goog:chromeOptions'] || {};
|
|
@@ -69,12 +72,12 @@ function wdioTestRunner(...params) {
|
|
|
69
72
|
disableOtherExtensions: false,
|
|
70
73
|
disableLoadExtensionCommandFeature: true
|
|
71
74
|
});
|
|
72
|
-
const { onPrepare = noop, onComplete = noop } = config;
|
|
75
|
+
const { onPrepare = noop, onComplete = noop, beforeSuite, afterSuite, beforeTest, afterTest } = config;
|
|
73
76
|
return {
|
|
74
77
|
...config,
|
|
75
78
|
capabilities,
|
|
76
79
|
onPrepare(...prepareParams) {
|
|
77
|
-
return onPrepare(
|
|
80
|
+
return onPrepare.apply(this, prepareParams);
|
|
78
81
|
},
|
|
79
82
|
onComplete(...completeParams) {
|
|
80
83
|
try {
|
|
@@ -82,7 +85,34 @@ function wdioTestRunner(...params) {
|
|
|
82
85
|
}
|
|
83
86
|
catch {
|
|
84
87
|
}
|
|
85
|
-
return onComplete(
|
|
88
|
+
return onComplete.apply(this, completeParams);
|
|
89
|
+
},
|
|
90
|
+
beforeSuite(suite) {
|
|
91
|
+
const pushed = !!suite?.title;
|
|
92
|
+
if (pushed) {
|
|
93
|
+
suiteStack.push(suite.title);
|
|
94
|
+
}
|
|
95
|
+
suitePushed.push(pushed);
|
|
96
|
+
return beforeSuite?.call(this, suite);
|
|
97
|
+
},
|
|
98
|
+
afterSuite(suite) {
|
|
99
|
+
if (suitePushed.pop()) {
|
|
100
|
+
suiteStack.pop();
|
|
101
|
+
}
|
|
102
|
+
return afterSuite?.call(this, suite);
|
|
103
|
+
},
|
|
104
|
+
beforeTest(test, context) {
|
|
105
|
+
if (test) {
|
|
106
|
+
currentWdioTestContext = {
|
|
107
|
+
test_file_path: test.file ?? null,
|
|
108
|
+
test_location: [...suiteStack, ...(test.title ? [test.title] : [])]
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
return beforeTest?.call(this, test, context);
|
|
112
|
+
},
|
|
113
|
+
afterTest(test, context, result) {
|
|
114
|
+
currentWdioTestContext = null;
|
|
115
|
+
return afterTest?.call(this, test, context, result);
|
|
86
116
|
}
|
|
87
117
|
};
|
|
88
118
|
}
|
|
@@ -95,6 +125,18 @@ class WdioController extends Controller_1.default {
|
|
|
95
125
|
});
|
|
96
126
|
this.driver = driver;
|
|
97
127
|
}
|
|
128
|
+
analyze(...args) {
|
|
129
|
+
this.setTestContext(currentWdioTestContext);
|
|
130
|
+
return super.analyze(...args);
|
|
131
|
+
}
|
|
132
|
+
flush(...args) {
|
|
133
|
+
this.setTestContext(currentWdioTestContext);
|
|
134
|
+
return super.flush(...args);
|
|
135
|
+
}
|
|
136
|
+
stop(...args) {
|
|
137
|
+
this.setTestContext(currentWdioTestContext);
|
|
138
|
+
return super.stop(...args);
|
|
139
|
+
}
|
|
98
140
|
async executeScript(fn, ...args) {
|
|
99
141
|
const script = `
|
|
100
142
|
const callback = arguments[arguments.length - 1];
|
|
@@ -105,6 +147,9 @@ class WdioController extends Controller_1.default {
|
|
|
105
147
|
const result = await this.driver.executeAsync(script, ...args);
|
|
106
148
|
return result;
|
|
107
149
|
}
|
|
150
|
+
captureScreenshot() {
|
|
151
|
+
return this.driver.takeScreenshot();
|
|
152
|
+
}
|
|
108
153
|
}
|
|
109
154
|
exports.WdioController = WdioController;
|
|
110
155
|
exports.WRAPPED_BROWSER_METHODS = [
|
package/dist/wdio/wdio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wdio.js","sourceRoot":"","sources":["../../src/wdio/wdio.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"wdio.js","sourceRoot":"","sources":["../../src/wdio/wdio.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,9 @@ class WebdriverController extends Controller_1.default {
|
|
|
47
47
|
const result = await this.driver.executeAsyncScript(script, ...args);
|
|
48
48
|
return result;
|
|
49
49
|
}
|
|
50
|
+
captureScreenshot() {
|
|
51
|
+
throw new Error('captureScreenshot is not yet implemented');
|
|
52
|
+
}
|
|
50
53
|
}
|
|
51
54
|
exports.WebdriverController = WebdriverController;
|
|
52
55
|
//# sourceMappingURL=webdriver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../../src/webdriver/webdriver.ts"],"names":[],"mappings":";;;;;;AAmBA,0CA+BC;AAhDD,+DAAsC;AACtC,6EAA4E;AAC5E,kFAA8E;AAC9E,+EAAsD;AACtD,0DAAsD;AACtD,yDAAiE;AAAxD,kHAAA,UAAU,OAAiB;AAYpC,SAAgB,eAAe,CAAC,GAAkB;IAGhD,MAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAEnD,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;IAC5B,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,MAAM,IAAI,GAAY,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAA;IAE9D,MAAM,YAAY,GAAG,CAAE,IAAY,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAa,CAAA;IACtE,IAAA,6BAAa,EAAC,YAAY,CAAC,CAE1B;IAAC,IAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAA,yBAAe,EAAC,YAAY,EAAE;QAC3D,sBAAsB,EAAE,KAAK;QAC7B,kCAAkC,EAAE,IAAI;KACzC,CAAC,CAAA;IAGF,IACE,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAEpC,IAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAC9C,EACD,CAAC;QACD,MAAM,IAAI,qDAAyB,CACjC,wIAAwI,CACzI,CAAA;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAa,mBAAoB,SAAQ,oBAAU;IAGjD,YAAY,MAAiB;QAC3B,KAAK,CAAC;YACJ,eAAe,EAAE,qBAAqB;YACtC,eAAe,EAAE,WAAW;YAC5B,qBAAqB,EAAE,mBAAmB;SAC3C,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,EAA+B,EAC/B,GAAG,IAAe;QAElB,MAAM,MAAM,GAAG;;;gBAGH,EAAE;;KAEb,CAAA;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA;QACpE,OAAO,MAAW,CAAA;IACpB,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../../src/webdriver/webdriver.ts"],"names":[],"mappings":";;;;;;AAmBA,0CA+BC;AAhDD,+DAAsC;AACtC,6EAA4E;AAC5E,kFAA8E;AAC9E,+EAAsD;AACtD,0DAAsD;AACtD,yDAAiE;AAAxD,kHAAA,UAAU,OAAiB;AAYpC,SAAgB,eAAe,CAAC,GAAkB;IAGhD,MAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAEnD,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;IAC5B,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,MAAM,IAAI,GAAY,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAA;IAE9D,MAAM,YAAY,GAAG,CAAE,IAAY,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAa,CAAA;IACtE,IAAA,6BAAa,EAAC,YAAY,CAAC,CAE1B;IAAC,IAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAA,yBAAe,EAAC,YAAY,EAAE;QAC3D,sBAAsB,EAAE,KAAK;QAC7B,kCAAkC,EAAE,IAAI;KACzC,CAAC,CAAA;IAGF,IACE,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAEpC,IAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAC9C,EACD,CAAC;QACD,MAAM,IAAI,qDAAyB,CACjC,wIAAwI,CACzI,CAAA;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAa,mBAAoB,SAAQ,oBAAU;IAGjD,YAAY,MAAiB;QAC3B,KAAK,CAAC;YACJ,eAAe,EAAE,qBAAqB;YACtC,eAAe,EAAE,WAAW;YAC5B,qBAAqB,EAAE,mBAAmB;SAC3C,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,EAA+B,EAC/B,GAAG,IAAe;QAElB,MAAM,MAAM,GAAG;;;gBAGH,EAAE;;KAEb,CAAA;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA;QACpE,OAAO,MAAW,CAAA;IACpB,CAAC;IAEM,iBAAiB;QACtB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAC7D,CAAC;CACF;AA9BD,kDA8BC"}
|