@axe-core/watcher 3.13.0-rc.9828b46d → 3.13.1-next.114d3084

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.
Files changed (38) hide show
  1. package/dist/cypress.d.ts +1 -0
  2. package/dist/cypress.js +31 -9
  3. package/dist/cypress.js.map +1 -1
  4. package/dist/cypressCommands.js +7 -2
  5. package/dist/cypressCommands.js.map +1 -1
  6. package/dist/puppeteerWrapping.js +0 -1
  7. package/dist/puppeteerWrapping.js.map +1 -1
  8. package/dist/sendResultsToServer.d.ts +2 -0
  9. package/dist/sendResultsToServer.js +18 -15
  10. package/dist/sendResultsToServer.js.map +1 -1
  11. package/dist/utils/constants.js +25 -2
  12. package/dist/utils/constants.js.map +1 -1
  13. package/dist/utils/initializeSession.d.ts +11 -0
  14. package/dist/utils/initializeSession.js +64 -0
  15. package/dist/utils/initializeSession.js.map +1 -0
  16. package/dist/utils/initializeSession.test.js +183 -0
  17. package/dist/utils/initializeSession.test.js.map +1 -0
  18. package/dist/utils/writeVariables.d.ts +15 -4
  19. package/dist/utils/writeVariables.js +33 -18
  20. package/dist/utils/writeVariables.js.map +1 -1
  21. package/dist/utils/writeVariables.test.js +2 -21
  22. package/dist/utils/writeVariables.test.js.map +1 -1
  23. package/dist/wdio.d.ts +5 -3
  24. package/dist/wdio.js +6 -1
  25. package/dist/wdio.js.map +1 -1
  26. package/extension/axe.js +2 -0
  27. package/extension/axe.js.LICENSE.txt +11 -0
  28. package/extension/background.js +1 -1
  29. package/extension/content.js +1 -1
  30. package/extension/content.js.LICENSE.txt +0 -12
  31. package/extension/manifest.json +1 -1
  32. package/package.json +4 -4
  33. package/dist/utils/validateApiKey.d.ts +0 -7
  34. package/dist/utils/validateApiKey.js +0 -34
  35. package/dist/utils/validateApiKey.js.map +0 -1
  36. package/dist/utils/validateApiKey.test.js +0 -66
  37. package/dist/utils/validateApiKey.test.js.map +0 -1
  38. /package/dist/utils/{validateApiKey.test.d.ts → initializeSession.test.d.ts} +0 -0
@@ -0,0 +1,183 @@
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
+ require("mocha");
7
+ const chai_1 = require("chai");
8
+ const sinon_1 = __importDefault(require("sinon"));
9
+ const proxyquire_1 = __importDefault(require("proxyquire"));
10
+ const initializeSession_1 = __importDefault(require("./initializeSession"));
11
+ describe('initializeSession', () => {
12
+ afterEach(sinon_1.default.restore);
13
+ const defaultParams = {
14
+ apiKey: 'abc',
15
+ serverURL: 'http://localhost:3000',
16
+ watcherVersion: '1.0.0',
17
+ sessionID: null,
18
+ buildID: null,
19
+ gitCommitSha: null
20
+ };
21
+ describe('validating input', () => {
22
+ describe('when the API key is missing', () => {
23
+ it('throws an error', () => {
24
+ chai_1.assert.throws(() => {
25
+ //@ts-expect-error - expected missing apiKey
26
+ (0, initializeSession_1.default)({});
27
+ }, 'API key is required');
28
+ });
29
+ });
30
+ describe('when the server URL is missing', () => {
31
+ it('throws an error', () => {
32
+ chai_1.assert.throws(() => {
33
+ //@ts-expect-error - expected missing serverURL
34
+ (0, initializeSession_1.default)({ apiKey: 'abc' });
35
+ }, 'Server URL is required');
36
+ });
37
+ });
38
+ describe('when the watcher version is missing', () => {
39
+ it('throws an error', () => {
40
+ chai_1.assert.throws(() => {
41
+ //@ts-expect-error - expected missing watcherVersion
42
+ (0, initializeSession_1.default)({
43
+ apiKey: 'abc',
44
+ serverURL: 'http://localhost:3000'
45
+ });
46
+ }, 'Watcher version is required');
47
+ });
48
+ });
49
+ describe('when the session ID is not a string', () => {
50
+ it('throws an error', () => {
51
+ chai_1.assert.throws(() => {
52
+ (0, initializeSession_1.default)({
53
+ ...defaultParams,
54
+ //@ts-expect-error - expected sessionID to be a string
55
+ sessionID: 123
56
+ });
57
+ }, 'Session ID must be a string');
58
+ });
59
+ });
60
+ describe('when the build ID is not a string', () => {
61
+ it('throws an error', () => {
62
+ chai_1.assert.throws(() => {
63
+ (0, initializeSession_1.default)({
64
+ ...defaultParams,
65
+ //@ts-expect-error - expected buildID to be a string
66
+ buildID: 123
67
+ });
68
+ }, 'Build ID must be a string');
69
+ });
70
+ });
71
+ describe('when both session ID and build ID are provided', () => {
72
+ it('throws an error', () => {
73
+ chai_1.assert.throws(() => {
74
+ (0, initializeSession_1.default)({
75
+ ...defaultParams,
76
+ sessionID: 'abc',
77
+ buildID: '123'
78
+ });
79
+ }, 'Session ID and Build ID are mutually exclusive. `sessionId` is deprecated, please use `buildID` instead');
80
+ });
81
+ });
82
+ describe('when the git commit SHA is not a string', () => {
83
+ it('throws an error', () => {
84
+ chai_1.assert.throws(() => {
85
+ (0, initializeSession_1.default)({
86
+ ...defaultParams,
87
+ //@ts-expect-error - expected gitCommitSha to be a string
88
+ gitCommitSha: 123
89
+ });
90
+ }, 'Git commit SHA must be a string');
91
+ });
92
+ });
93
+ });
94
+ describe('when the server returns a non-200 response', () => {
95
+ afterEach(sinon_1.default.restore);
96
+ it('throws an error', () => {
97
+ const requestStub = sinon_1.default
98
+ .stub()
99
+ .returns({ statusCode: 500, getBody: () => '{"errors":["boom"]}' });
100
+ const fn = (0, proxyquire_1.default)('./initializeSession', {
101
+ 'sync-request': requestStub
102
+ }).default;
103
+ chai_1.assert.throws(() => {
104
+ fn(defaultParams);
105
+ }, 'boom');
106
+ });
107
+ });
108
+ describe('when the server returns a 200 response', () => {
109
+ it('does not throw an error', () => {
110
+ const expectedBody = {
111
+ errors: [],
112
+ warnings: [],
113
+ session_id: 'abc'
114
+ };
115
+ const requestStub = sinon_1.default.stub().returns({
116
+ statusCode: 200,
117
+ getBody: () => JSON.stringify(expectedBody)
118
+ });
119
+ const fn = (0, proxyquire_1.default)('./initializeSession', {
120
+ 'sync-request': requestStub
121
+ }).default;
122
+ const invoke = fn(defaultParams);
123
+ chai_1.assert.doesNotThrow(() => invoke);
124
+ chai_1.assert.deepEqual(invoke, expectedBody.session_id);
125
+ });
126
+ describe('and no session_id is returned', () => {
127
+ const expectedBody = {
128
+ errors: [],
129
+ warnings: []
130
+ };
131
+ const sessionID = 'xyz';
132
+ describe('and a sessionID is provided', () => {
133
+ it('uses the sessionID', () => {
134
+ const requestStub = sinon_1.default.stub().returns({
135
+ statusCode: 200,
136
+ getBody: () => JSON.stringify(expectedBody)
137
+ });
138
+ const fn = (0, proxyquire_1.default)('./initializeSession', {
139
+ 'sync-request': requestStub
140
+ }).default;
141
+ const invoke = fn({
142
+ ...defaultParams,
143
+ ...{ sessionID }
144
+ });
145
+ chai_1.assert.deepEqual(invoke, sessionID);
146
+ });
147
+ });
148
+ describe('and a buildID is provided', () => {
149
+ it('throws', () => {
150
+ const requestStub = sinon_1.default.stub().returns({
151
+ statusCode: 200,
152
+ getBody: () => JSON.stringify(expectedBody)
153
+ });
154
+ const fn = (0, proxyquire_1.default)('./initializeSession', {
155
+ 'sync-request': requestStub
156
+ }).default;
157
+ const buildID = 'def';
158
+ chai_1.assert.throws(() => fn({
159
+ ...defaultParams,
160
+ ...{ buildID }
161
+ }), 'Failed to initialize session based on build_id. Try again later.');
162
+ });
163
+ });
164
+ describe('and neither a sessionID nor a buildID are provided', () => {
165
+ it('uses a generated UUID', () => {
166
+ const requestStub = sinon_1.default.stub().returns({
167
+ statusCode: 200,
168
+ getBody: () => JSON.stringify(expectedBody)
169
+ });
170
+ const generatedID = 'ghi';
171
+ const uuidStub = sinon_1.default.stub().returns(generatedID);
172
+ const fn = (0, proxyquire_1.default)('./initializeSession', {
173
+ 'sync-request': requestStub,
174
+ uuid: { v4: uuidStub }
175
+ }).default;
176
+ const invoke = fn(defaultParams);
177
+ chai_1.assert.deepEqual(invoke, generatedID);
178
+ });
179
+ });
180
+ });
181
+ });
182
+ });
183
+ //# sourceMappingURL=initializeSession.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initializeSession.test.js","sourceRoot":"","sources":["../../src/utils/initializeSession.test.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ interface AxeConfiguration {
16
16
  apiKey: string;
17
17
  /** Custom axe server URL. */
18
18
  serverURL?: string;
19
- /** Your session ID. */
19
+ /** @deprecated Please use `buildID` instead */
20
20
  sessionId?: string;
21
21
  /**
22
22
  * Whether or not to automatically run axe on the page when loaded and
@@ -39,8 +39,6 @@ interface AxeConfiguration {
39
39
  * @see https://www.deque.com/axe/core-documentation/api-documentation/#options-parameter
40
40
  */
41
41
  runOptions?: RunOptions;
42
- /** Whether to take and send screenshots to the perf endpoint */
43
- /** Run experimental advanced rules */
44
42
  /**
45
43
  * Exclude URLs from being scanned by axe-core/watcher by providing an array of minimatch patterns.
46
44
  *
@@ -51,6 +49,19 @@ interface AxeConfiguration {
51
49
  * ```
52
50
  */
53
51
  excludeUrlPatterns?: string[];
52
+ /**
53
+ * A unique identifier for the build or test run. This is useful for:
54
+ *
55
+ * - Grouping `@axe-core/watcher` runs across multiple workers running in parallel
56
+ * - Grouping `@axe-core/watcher` runs across multiple axe Developer Hub projects
57
+ *
58
+ * @example
59
+ * ```js
60
+ * buildID: ${ process.env.GITHUB.RUN_ID }
61
+ * buildID: ${ process.env.CIRCLE_PIPELINE_ID }
62
+ *```
63
+ */
64
+ buildID?: string;
54
65
  }
55
66
  export interface Configuration {
56
67
  axe: AxeConfiguration;
@@ -73,5 +84,5 @@ export interface Variables {
73
84
  exclude_url_patterns: string[] | null;
74
85
  }
75
86
  /** Write the user's settings to the disk, so the extension can load them. */
76
- declare function writeVariables({ apiKey, autoAnalyze, cypress, serverURL, sessionId, runContext, runOptions, takeScreenshots, experimentalAdvancedRules, excludeUrlPatterns }: WriteVariablesParams): void;
87
+ declare function writeVariables({ apiKey, autoAnalyze, cypress, serverURL, sessionId, runContext, runOptions, takeScreenshots, experimentalAdvancedRules, excludeUrlPatterns, buildID }: WriteVariablesParams): void;
77
88
  export default writeVariables;
@@ -28,20 +28,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const git = __importStar(require("../git"));
30
30
  const fs_1 = __importDefault(require("fs"));
31
- const uuid_1 = require("uuid");
32
31
  const constants_1 = require("./constants");
33
32
  const validateAxeRunOptions_1 = require("./validateAxeRunOptions");
34
33
  const createDebugger_1 = __importDefault(require("../createDebugger"));
35
- const validateApiKey_1 = __importDefault(require("./validateApiKey"));
34
+ const initializeSession_1 = __importDefault(require("./initializeSession"));
36
35
  const validateAxeRunContext_1 = require("./validateAxeRunContext");
37
36
  const isValidExcludePattern_1 = __importDefault(require("./isValidExcludePattern"));
38
37
  const debugLogger = (0, createDebugger_1.default)('config:writeVariables');
38
+ // Read the version from package.json, but do not include the file in the build.
39
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
40
+ const { version } = require('../../package.json');
39
41
  /** Write the user's settings to the disk, so the extension can load them. */
40
42
  function writeVariables({ apiKey, autoAnalyze, cypress, serverURL, sessionId, runContext, runOptions,
41
43
  // @ts-expect-error Feature flag, not part of public type
42
44
  takeScreenshots,
43
45
  // @ts-expect-error Feature flag, not part of public type
44
- experimentalAdvancedRules, excludeUrlPatterns }) {
46
+ experimentalAdvancedRules, excludeUrlPatterns, buildID }) {
45
47
  // only log the properties if they are not undefined
46
48
  debugLogger('Received configuration:', {
47
49
  apiKey: '<redacted>',
@@ -49,7 +51,9 @@ experimentalAdvancedRules, excludeUrlPatterns }) {
49
51
  ...(serverURL !== undefined && { serverURL }),
50
52
  ...(sessionId !== undefined && { sessionId }),
51
53
  ...(runContext !== undefined && { runContext }),
52
- ...(runOptions !== undefined && { runOptions })
54
+ ...(runOptions !== undefined && { runOptions }),
55
+ ...(excludeUrlPatterns !== undefined && { excludeUrlPatterns }),
56
+ ...(buildID !== undefined && { buildID })
53
57
  });
54
58
  if (!serverURL) {
55
59
  serverURL = constants_1.DEFAULT_SERVER_URL;
@@ -84,31 +88,42 @@ experimentalAdvancedRules, excludeUrlPatterns }) {
84
88
  gitData.git_commit_email = info === null || info === void 0 ? void 0 : info.email;
85
89
  gitData.git_commit_message = info === null || info === void 0 ? void 0 : info.message;
86
90
  }
87
- debugLogger('Validating API key');
88
- (0, validateApiKey_1.default)({ apiKey, serverURL: urlString });
91
+ debugLogger('Initializing axe Watcher session');
92
+ const session_id = (0, initializeSession_1.default)({
93
+ apiKey,
94
+ serverURL: urlString,
95
+ watcherVersion: version,
96
+ sessionID: sessionId || null,
97
+ buildID: buildID || null,
98
+ gitCommitSha: gitData.git_commit_sha || null
99
+ });
89
100
  if (typeof autoAnalyze === 'undefined') {
90
101
  autoAnalyze = true;
91
102
  }
92
103
  if (excludeUrlPatterns === null || excludeUrlPatterns === void 0 ? void 0 : excludeUrlPatterns.length) {
93
104
  (0, isValidExcludePattern_1.default)(excludeUrlPatterns);
94
105
  }
95
- // When a custom session ID is not provided, attempt to read it from the filesystem.
96
- // This enables multi-process/multi-browser test suites to all use the same session ID.
97
- if (!sessionId && fs_1.default.existsSync(constants_1.PATH_TO_SESSION_FILE)) {
98
- debugLogger('Reading session ID from file for WDIO Test Runner');
99
- try {
100
- const data = JSON.parse(fs_1.default.readFileSync(constants_1.PATH_TO_SESSION_FILE, 'utf8'));
101
- sessionId = data.id;
102
- }
103
- catch (error) {
104
- throw new Error(`Unable to read session configuration: ${error}`);
106
+ // Note: If a build ID is provided the session ID will be consistent
107
+ // so there is no need to write to the file.
108
+ // between workers/machines (parallel runners)
109
+ if (!buildID) {
110
+ // When a custom session ID is not provided, attempt to read it from the filesystem.
111
+ // This enables multi-process/multi-browser test suites to all use the same session ID.
112
+ if (!sessionId && fs_1.default.existsSync(constants_1.PATH_TO_SESSION_FILE)) {
113
+ debugLogger('Reading session ID from file for WDIO Test Runner');
114
+ try {
115
+ const data = JSON.parse(fs_1.default.readFileSync(constants_1.PATH_TO_SESSION_FILE, 'utf8'));
116
+ sessionId = data.id;
117
+ }
118
+ catch (error) {
119
+ throw new Error(`Unable to read session configuration: ${error}`);
120
+ }
105
121
  }
106
122
  }
107
123
  const variables = {
108
124
  api_key: apiKey,
109
125
  server_url: urlString,
110
- /* Ensure only one session ID is created per test run if `sessionId` is not provided */
111
- session_id: sessionId || (0, uuid_1.v4)(),
126
+ session_id: session_id || sessionId,
112
127
  take_screenshots: !!takeScreenshots,
113
128
  auto_analyze: !!autoAnalyze,
114
129
  cypress: !!cypress,
@@ -1 +1 @@
1
- {"version":3,"file":"writeVariables.js","sourceRoot":"","sources":["../../src/utils/writeVariables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeVariables.js","sourceRoot":"","sources":["../../src/utils/writeVariables.ts"],"names":[],"mappings":"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"}
@@ -31,34 +31,15 @@ const chai_1 = require("chai");
31
31
  const sinon_1 = __importDefault(require("sinon"));
32
32
  const fs_1 = __importDefault(require("fs"));
33
33
  const git = __importStar(require("../git"));
34
- const validateApiKeyImp = __importStar(require("./validateApiKey"));
34
+ const initializeSessionImp = __importStar(require("./initializeSession"));
35
35
  const writeVariables_1 = __importDefault(require("./writeVariables"));
36
36
  describe('writeVariables', () => {
37
- let validateApiKey;
38
37
  beforeEach(() => {
39
- validateApiKey = sinon_1.default.stub(validateApiKeyImp, 'default').returns();
38
+ sinon_1.default.stub(initializeSessionImp, 'default').returns('123');
40
39
  });
41
40
  afterEach(() => {
42
41
  sinon_1.default.restore();
43
42
  });
44
- describe('when validateApiKey=true', () => {
45
- describe('when given an invalid API key', () => {
46
- beforeEach(() => {
47
- ;
48
- validateApiKey.throws(new Error('Invalid API key'));
49
- });
50
- it('should throw', () => {
51
- chai_1.assert.throws(() => {
52
- (0, writeVariables_1.default)({
53
- apiKey: 'abc',
54
- serverURL: 'http://localhost:3000',
55
- // @ts-expect-error // Feature flag, not part of public type
56
- takeScreenshots: true
57
- });
58
- });
59
- });
60
- });
61
- });
62
43
  describe('given `sessionId` variable', () => {
63
44
  describe('when provided', () => {
64
45
  it('should write to variables.json', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"writeVariables.test.js","sourceRoot":"","sources":["../../src/utils/writeVariables.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeVariables.test.js","sourceRoot":"","sources":["../../src/utils/writeVariables.test.ts"],"names":[],"mappings":"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"}
package/dist/wdio.d.ts CHANGED
@@ -1,8 +1,10 @@
1
1
  import type { Options } from '@wdio/types';
2
- import type { Browser, BrowserCommandsType, ElementCommandsType, RemoteOptions } from 'webdriverio';
2
+ import type { Browser as WDIOBrowser, BrowserCommandsType, ElementCommandsType, remote } from 'webdriverio';
3
3
  import Controller from './Controller';
4
4
  import { type Configuration } from './utils/writeVariables';
5
+ type RemoteOptions = Parameters<typeof remote>[0];
5
6
  type Options = RemoteOptions & Configuration;
7
+ type Browser = WebdriverIO.Browser | WDIOBrowser;
6
8
  /**
7
9
  * Creates a WebDriverIO config that uses axe extension
8
10
  *
@@ -10,9 +12,9 @@ type Options = RemoteOptions & Configuration;
10
12
  */
11
13
  export declare function wdioConfig({ axe, ...options }: Options): RemoteOptions;
12
14
  /** @deprecated This method of configuring the TestRunner is no longer supported. */
13
- export declare function wdioTestRunner(axe: Configuration['axe'], config: Options.Testrunner): Options.Testrunner;
15
+ export declare function wdioTestRunner(axe: Configuration['axe'], config: WebdriverIO.Config): WebdriverIO.Config;
14
16
  /** Configure WDIO TestRunner with axe Watcher. */
15
- export declare function wdioTestRunner({ axe, ...config }: Options.Testrunner & Configuration): Options.Testrunner;
17
+ export declare function wdioTestRunner({ axe, ...config }: WebdriverIO.Config & Configuration): WebdriverIO.Config;
16
18
  export declare class WdioController extends Controller {
17
19
  private driver;
18
20
  constructor(driver: Browser);
package/dist/wdio.js CHANGED
@@ -75,7 +75,12 @@ function wdioTestRunner(...params) {
75
75
  capabilities,
76
76
  onPrepare(...prepareParams) {
77
77
  const sessionId = axe.sessionId;
78
- fs_1.default.writeFileSync(constants_1.PATH_TO_SESSION_FILE, JSON.stringify({ id: sessionId }));
78
+ const buildID = axe.buildID;
79
+ // Note: we only want to write a file if a build ID is not provided.
80
+ // as the build ID will ensure the session ID is consistent between workers/machines.
81
+ if (!buildID) {
82
+ fs_1.default.writeFileSync(constants_1.PATH_TO_SESSION_FILE, JSON.stringify({ id: sessionId }));
83
+ }
79
84
  // @ts-expect-error TS is angry about calling this ¯\_(ツ)_/¯
80
85
  return onPrepare(...prepareParams);
81
86
  },
package/dist/wdio.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"wdio.js","sourceRoot":"","sources":["../src/wdio.ts"],"names":[],"mappings":";;;;;;AA0BA,gCA0BC;AAgBD,wCAqDC;AAlHD,4CAAmB;AACnB,8DAAqC;AACrC,4EAA2E;AAC3E,iDAAwD;AACxD,iFAA6E;AAC7E,8EAAqD;AAErD,MAAM,IAAI,GAAG,GAAS,EAAE;IACtB,WAAW;AACb,CAAC,CAAA;AAID;;;;GAIG;AAEH,SAAgB,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,OAAO,EAAW;;IACrD,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,iFAAiF;IACjF,uDAAuD;IACvD,MAAM,UAAU,GAAG,CAAA,MAAC,OAAO,CAAC,YAAoB,0CAAG,oBAAoB,CAAC,KAAI,EAAE,CAAA;IAC9E,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,EAAE,CAAA;IAElC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,qDAAyB,CACjC,4FAA4F,cAAc,qCAAqC,CAChJ,CAAA;IACH,CAAC;IAED,OAAO;QACL,GAAG,OAAO;QACV,YAAY,EAAE;YACZ,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY;YACxB,WAAW,EAAE,QAAQ;YACrB,oBAAoB,EAAE;gBACpB,0EAA0E;gBAC1E,6DAA6D;gBAC7D,IAAI,EAAE,IAAA,yBAAe,EAAC,IAAI,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;aAC9D;SACF;KACF,CAAA;AACH,CAAC;AAED,MAAM,cAAc,GAAG,oBAAoB,CAAA;AAc3C,SAAgB,cAAc,CAAC,GAAG,MAAiB;IACjD,IAAI,GAAyB,CAAA;IAC7B,IAAI,MAA0B,CAAA;IAE9B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,CAAC;QAAA,CAAC,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAuC,CAAC,CAAA;IACzE,CAAC;SAAM,CAAC;QACN,CAAC;QAAA,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,MAAoD,CAAA;IACvE,CAAC;IAED,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAA;IACnB,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI;QAC1C,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;KACnC,CAAA;IAED,6CAA6C;IAC7C,MAAM,eAAe,GAAI,YAAoB,CAAC,CAAC,CAAC,CAAA;IAChD,eAAe,CAAC,cAAc,CAAC,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;IAEvE,MAAM,UAAU,GAAG,eAAe,CAAC,cAAc,CAAC,CAAA;IAClD,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,EAAE,CAAA;IACvC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAA;IAE5B,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,qDAAyB,CACjC,4FAA4F,cAAc,qCAAqC,CAChJ,CAAA;IACH,CAAC;IAED,UAAU,CAAC,IAAI,GAAG,IAAA,yBAAe,EAAC,IAAI,EAAE,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAA;IAE1E,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,MAAM,CAAA;IAEtD,OAAO;QACL,GAAG,MAAM;QACT,YAAY;QACZ,SAAS,CAAC,GAAG,aAAa;YACxB,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAA;YAC/B,YAAE,CAAC,aAAa,CAAC,gCAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;YACzE,4DAA4D;YAC5D,OAAO,SAAS,CAAC,GAAG,aAAa,CAAC,CAAA;QACpC,CAAC;QACD,kEAAkE;QAClE,UAAU,CAAC,GAAG,cAAc;YAC1B,IAAI,CAAC;gBACH,YAAE,CAAC,UAAU,CAAC,gCAAoB,CAAC,CAAA;YACrC,CAAC;YAAC,WAAM,CAAC;gBACP,WAAW;YACb,CAAC;YACD,4DAA4D;YAC5D,OAAO,UAAU,CAAC,GAAG,cAAc,CAAC,CAAA;QACtC,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAa,cAAe,SAAQ,oBAAU;IAG5C,YAAY,MAAe;QACzB,KAAK,CAAC,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC,CAAA;QAC5C,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;QAED,MAAM,MAAM,GAAG,MAAO,IAAI,CAAC,MAA8B,CAAC,YAAY,CACpE,MAAM,EACN,GAAG,IAAI,CACR,CAAA;QACD,OAAO,MAAW,CAAA;IACpB,CAAC;CACF;AAzBD,wCAyBC;AAED,mCAAmC;AACtB,QAAA,uBAAuB,GAClC;IACE,eAAe;IACf,eAAe;IACf,cAAc;IACd,aAAa;IACb,WAAW;IACX,OAAO;IACP,KAAK;IACL,WAAW;CACZ,CAAA;AAEH,iCAAiC;AACpB,QAAA,uBAAuB,GAClC;IACE,UAAU;IACV,YAAY;IACZ,OAAO;IACP,aAAa;IACb,aAAa;IACb,QAAQ;IACR,gBAAgB;IAChB,UAAU;IACV,aAAa;IACb,kBAAkB;IAClB,kBAAkB;IAClB,gBAAgB;IAChB,cAAc;IACd,WAAW;CACZ,CAAA;AAEH,kGAAkG;AAC3F,MAAM,QAAQ,GAAG,CACtB,OAAgB,EAChB,UAA0B,EACjB,EAAE;IACX,MAAM,OAAO,GAAG,KAAK,EACnB,EAA4C,EAC5C,GAAG,IAAe,EACA,EAAE;QACpB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QAC7B,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAA;QAC3D,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;IAED,KAAK,MAAM,MAAM,IAAI,+BAAuB,EAAE,CAAC;QAC7C,OAAO,CAAC,gBAAgB,CAAC,MAAa,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,+BAAuB,EAAE,CAAC;QAC7C,OAAO,CAAC,gBAAgB,CAAC,MAAa,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAtBY,QAAA,QAAQ,YAsBpB"}
1
+ {"version":3,"file":"wdio.js","sourceRoot":"","sources":["../src/wdio.ts"],"names":[],"mappings":"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"}