@axe-core/watcher 1.2.0 → 1.3.0-next.55e94af6
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/dist/Controller.d.ts +6 -2
- package/dist/Controller.js +26 -15
- package/dist/Controller.js.map +1 -1
- package/dist/cypress.d.ts +4 -0
- package/dist/cypress.js +62 -1
- package/dist/cypress.js.map +1 -1
- package/dist/cypressCommands.d.ts +6 -2
- package/dist/cypressCommands.js +22 -2
- package/dist/cypressCommands.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/playwright.d.ts +1 -1
- package/dist/playwright.js +5 -1
- package/dist/playwright.js.map +1 -1
- package/dist/puppeteer.d.ts +1 -1
- package/dist/puppeteer.js +18 -4
- package/dist/puppeteer.js.map +1 -1
- package/dist/validateApiKey.js +2 -0
- package/dist/validateApiKey.js.map +1 -1
- package/dist/wdio.d.ts +10 -5
- package/dist/wdio.js +68 -3
- package/dist/wdio.js.map +1 -1
- package/dist/webdriver.d.ts +1 -1
- package/dist/webdriver.js +19 -5
- package/dist/webdriver.js.map +1 -1
- package/extension/content.js +1 -1
- package/extension/content.js.LICENSE.txt +1 -1
- package/extension/manifest.json +1 -1
- package/package.json +2 -2
package/dist/Controller.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
interface AnalyzeParams {
|
|
2
|
+
__UserRequestedAnalyze?: boolean;
|
|
3
|
+
}
|
|
1
4
|
declare abstract class Controller {
|
|
2
|
-
protected abstract executeScript(fn: string | (() => Promise<void>)): Promise<void>;
|
|
5
|
+
protected abstract executeScript(fn: string | ((...args: unknown[]) => Promise<void>), ...args: unknown[]): Promise<void>;
|
|
6
|
+
protected isStopped: boolean;
|
|
3
7
|
start(): Promise<void>;
|
|
4
8
|
stop(): Promise<void>;
|
|
5
|
-
analyze(): Promise<void>;
|
|
9
|
+
analyze({ __UserRequestedAnalyze }?: AnalyzeParams): Promise<void>;
|
|
6
10
|
/** Flush all axe-core results by sending them to the server. */
|
|
7
11
|
flush(): Promise<void>;
|
|
8
12
|
}
|
package/dist/Controller.js
CHANGED
|
@@ -49,6 +49,7 @@ var updateAutoAnalyze = function (val) {
|
|
|
49
49
|
};
|
|
50
50
|
var Controller = /** @class */ (function () {
|
|
51
51
|
function Controller() {
|
|
52
|
+
this.isStopped = false;
|
|
52
53
|
}
|
|
53
54
|
Controller.prototype.start = function () {
|
|
54
55
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -56,6 +57,7 @@ var Controller = /** @class */ (function () {
|
|
|
56
57
|
switch (_a.label) {
|
|
57
58
|
case 0:
|
|
58
59
|
updateAutoAnalyze(true);
|
|
60
|
+
this.isStopped = false;
|
|
59
61
|
return [4 /*yield*/, this.executeScript(function () {
|
|
60
62
|
return new Promise(function (resolve) {
|
|
61
63
|
var event = new CustomEvent('axe:start-auto-mode');
|
|
@@ -80,6 +82,7 @@ var Controller = /** @class */ (function () {
|
|
|
80
82
|
switch (_a.label) {
|
|
81
83
|
case 0:
|
|
82
84
|
updateAutoAnalyze(false);
|
|
85
|
+
this.isStopped = true;
|
|
83
86
|
return [4 /*yield*/, this.executeScript(function () {
|
|
84
87
|
return new Promise(function (resolve) {
|
|
85
88
|
var event = new CustomEvent('axe:stop-auto-mode');
|
|
@@ -98,23 +101,31 @@ var Controller = /** @class */ (function () {
|
|
|
98
101
|
});
|
|
99
102
|
});
|
|
100
103
|
};
|
|
101
|
-
Controller.prototype.analyze = function () {
|
|
104
|
+
Controller.prototype.analyze = function (_a) {
|
|
105
|
+
var _b = _a === void 0 ? {} : _a, _c = _b.__UserRequestedAnalyze, __UserRequestedAnalyze = _c === void 0 ? true : _c;
|
|
102
106
|
return __awaiter(this, void 0, void 0, function () {
|
|
103
|
-
return __generator(this, function (
|
|
104
|
-
switch (
|
|
105
|
-
case 0:
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
107
|
+
return __generator(this, function (_d) {
|
|
108
|
+
switch (_d.label) {
|
|
109
|
+
case 0:
|
|
110
|
+
// If the user didn't request an analyze, and we're in manual mode, don't do anything.
|
|
111
|
+
if (this.isStopped && !__UserRequestedAnalyze) {
|
|
112
|
+
return [2 /*return*/];
|
|
113
|
+
}
|
|
114
|
+
return [4 /*yield*/, this.executeScript(function (userRequestedAnalyze) {
|
|
115
|
+
return new Promise(function (resolve) {
|
|
116
|
+
var event = new CustomEvent('axe:manual-mode-analyze', {
|
|
117
|
+
detail: { userRequestedAnalyze: userRequestedAnalyze }
|
|
118
|
+
});
|
|
119
|
+
var fn = function () {
|
|
120
|
+
window.removeEventListener('axe:manual-mode-analyze-done', fn);
|
|
121
|
+
resolve();
|
|
122
|
+
};
|
|
123
|
+
window.addEventListener('axe:manual-mode-analyze-done', fn);
|
|
124
|
+
window.dispatchEvent(event);
|
|
125
|
+
});
|
|
126
|
+
}, __UserRequestedAnalyze)];
|
|
116
127
|
case 1:
|
|
117
|
-
|
|
128
|
+
_d.sent();
|
|
118
129
|
return [2 /*return*/];
|
|
119
130
|
}
|
|
120
131
|
});
|
package/dist/Controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAmB;AACnB,+BAAoD;AAEpD,IAAM,iBAAiB,GAAG,UAAC,GAAY;IACrC,IAAM,YAAY,GAAG,YAAE,CAAC,YAAY,CAAC,kCAA2B,EAAE,OAAO,CAAC,CAAA;IAC1E,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC1C,SAAS,CAAC,YAAY,GAAG,GAAG,CAAA;IAC5B,YAAE,CAAC,aAAa,CAAC,kCAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;AAC1E,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":"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"}
|
package/dist/cypress.d.ts
CHANGED
|
@@ -6,3 +6,7 @@ import { Configuration } from './util';
|
|
|
6
6
|
* @param config Cypress config to extend
|
|
7
7
|
*/
|
|
8
8
|
export declare const cypressConfig: (config: Cypress.ConfigOptions & Configuration) => Cypress.ConfigOptions;
|
|
9
|
+
/** Methods we wrap on the provided `cy` instance. */
|
|
10
|
+
export declare const WRAPPED_METHODS: ReadonlyArray<keyof Cypress.cy>;
|
|
11
|
+
/** Wrap the given Cypress `cy` object, ensuring axe-core analysis is run after each command. */
|
|
12
|
+
export declare const wrapCy: (cy: Cypress.cy) => Cypress.cy;
|
package/dist/cypress.js
CHANGED
|
@@ -21,8 +21,17 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
21
21
|
}
|
|
22
22
|
return t;
|
|
23
23
|
};
|
|
24
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
25
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
26
|
+
if (ar || !(i in from)) {
|
|
27
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
28
|
+
ar[i] = from[i];
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
32
|
+
};
|
|
24
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.cypressConfig = void 0;
|
|
34
|
+
exports.wrapCy = exports.WRAPPED_METHODS = exports.cypressConfig = void 0;
|
|
26
35
|
var uuid_1 = require("uuid");
|
|
27
36
|
var util_1 = require("./util");
|
|
28
37
|
/**
|
|
@@ -48,6 +57,12 @@ var cypressConfig = function (config) {
|
|
|
48
57
|
]
|
|
49
58
|
});
|
|
50
59
|
return __assign(__assign({}, userConfig), { e2e: __assign(__assign({}, userConfig.e2e), { setupNodeEvents: function (on) {
|
|
60
|
+
var _a, _b;
|
|
61
|
+
var args = [];
|
|
62
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
63
|
+
args[_i - 1] = arguments[_i];
|
|
64
|
+
}
|
|
65
|
+
(_b = (_a = userConfig.e2e) === null || _a === void 0 ? void 0 : _a.setupNodeEvents) === null || _b === void 0 ? void 0 : _b.call.apply(_b, __spreadArray([_a, on], args, false));
|
|
51
66
|
on('before:browser:launch', function (browser, launchOptions) {
|
|
52
67
|
var _a;
|
|
53
68
|
// We only support Chrome.
|
|
@@ -63,4 +78,50 @@ var cypressConfig = function (config) {
|
|
|
63
78
|
} }) });
|
|
64
79
|
};
|
|
65
80
|
exports.cypressConfig = cypressConfig;
|
|
81
|
+
/** Methods we wrap on the provided `cy` instance. */
|
|
82
|
+
exports.WRAPPED_METHODS = [
|
|
83
|
+
'blur',
|
|
84
|
+
'check',
|
|
85
|
+
'clear',
|
|
86
|
+
'click',
|
|
87
|
+
'dblclick',
|
|
88
|
+
'focus',
|
|
89
|
+
'go',
|
|
90
|
+
'invoke',
|
|
91
|
+
'reload',
|
|
92
|
+
'scrollIntoView',
|
|
93
|
+
'scrollTo',
|
|
94
|
+
'select',
|
|
95
|
+
'submit',
|
|
96
|
+
'trigger',
|
|
97
|
+
'type',
|
|
98
|
+
'uncheck',
|
|
99
|
+
'visit',
|
|
100
|
+
'wait'
|
|
101
|
+
];
|
|
102
|
+
/** Wrap the given Cypress `cy` object, ensuring axe-core analysis is run after each command. */
|
|
103
|
+
var wrapCy = function (cy) {
|
|
104
|
+
// We cannot wrap the `cy` instance itself, but instead, wrap its prototype.
|
|
105
|
+
// We don't have access to the $Chainer prototype, so use the returned value from `cy.wrap('')`.
|
|
106
|
+
var proto = Object.getPrototypeOf(cy.wrap(''));
|
|
107
|
+
var _loop_1 = function (method) {
|
|
108
|
+
var old = proto[method];
|
|
109
|
+
proto[method] = function () {
|
|
110
|
+
var _this = this;
|
|
111
|
+
var params = [];
|
|
112
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
113
|
+
params[_i] = arguments[_i];
|
|
114
|
+
}
|
|
115
|
+
return old.apply(this, params).then(function ($element) {
|
|
116
|
+
return _this.axeAnalyze({ __UserRequestedAnalyze: false }).then(function () { return $element; });
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
for (var _i = 0, WRAPPED_METHODS_1 = exports.WRAPPED_METHODS; _i < WRAPPED_METHODS_1.length; _i++) {
|
|
121
|
+
var method = WRAPPED_METHODS_1[_i];
|
|
122
|
+
_loop_1(method);
|
|
123
|
+
}
|
|
124
|
+
return cy;
|
|
125
|
+
};
|
|
126
|
+
exports.wrapCy = wrapCy;
|
|
66
127
|
//# sourceMappingURL=cypress.js.map
|
package/dist/cypress.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cypress.js","sourceRoot":"","sources":["../src/cypress.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cypress.js","sourceRoot":"","sources":["../src/cypress.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6BAAiC;AACjC,+BAMe;AAEf;;;;GAIG;AAEI,IAAM,aAAa,GAAG,UAC3B,MAA6C;IAErC,IAAA,GAAG,GAAoB,MAAM,IAA1B,EAAK,UAAU,UAAK,MAAM,EAA/B,OAAsB,CAAF,CAAW;IAErC,IAAA,qBAAc,wBACT,GAAG;QACN,+CAA+C;QAC/C,kFAAkF;QAClF,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAA,SAAI,GAAE;QAClC,sDAAsD;QACtD,OAAO,EAAE,IAAI,IACb,CAAA;IACF,IAAA,oBAAa,EAAC;QACZ,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACb,0BAA0B;YAC1B,4BAA4B;YAC5B,4BAA4B;YAC5B,uBAAuB;SACxB;KACF,CAAC,CAAA;IAEF,6BACK,UAAU,KACb,GAAG,wBACE,UAAU,CAAC,GAAG,KACjB,eAAe,YAAC,EAAE;;gBAAE,cAAO;qBAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;oBAAP,6BAAO;;gBACzB,MAAA,MAAA,UAAU,CAAC,GAAG,0CAAE,eAAe,4EAAG,EAAE,GAAK,IAAI,SAAC,CAAA;gBAE9C,EAAE,CAAC,uBAAuB,EAAE,UAAC,OAAO,EAAE,aAAa;;oBACjD,0BAA0B;oBAC1B,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE;wBAC7B,IAAI,OAAO,CAAC,UAAU,EAAE;4BACtB,MAAM,IAAI,gCAAyB,EAAE,CAAA;yBACtC;wBAED,sBAAsB;wBACtB,CAAA,KAAA,aAAa,CAAC,IAAI,CAAA,CAAC,IAAI,WAAI,oBAAa,EAAC;qBAC1C;oBAED,OAAO,aAAa,CAAA;gBACtB,CAAC,CAAC,CAAA;YACJ,CAAC,OAEJ;AACH,CAAC,CAAA;AA9CY,QAAA,aAAa,iBA8CzB;AAED,qDAAqD;AACxC,QAAA,eAAe,GAAoC;IAC9D,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,gBAAgB;IAChB,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;CACP,CAAA;AAED,gGAAgG;AACzF,IAAM,MAAM,GAAG,UAAC,EAAc;IACnC,4EAA4E;IAC5E,gGAAgG;IAChG,IAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;4BAErC,MAAM;QACf,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;QACzB,KAAK,CAAC,MAAM,CAAC,GAAG;YAAA,iBAMf;YANyB,gBAAoB;iBAApB,UAAoB,EAApB,qBAAoB,EAApB,IAAoB;gBAApB,2BAAoB;;YAC5C,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,UAAC,QAAiB;gBACpD,OAAO,KAAI,CAAC,UAAU,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAC5D,cAAM,OAAA,QAAQ,EAAR,CAAQ,CACf,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;;IARH,KAAqB,UAAe,EAAf,oBAAA,uBAAe,EAAf,6BAAe,EAAf,IAAe;QAA/B,IAAM,MAAM,wBAAA;gBAAN,MAAM;KAShB;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAjBY,QAAA,MAAM,UAiBlB"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
export {};
|
|
2
|
+
interface AxeAnalyzeParams {
|
|
3
|
+
/** Was this analyze call created internally or by the end-user. */
|
|
4
|
+
__UserRequestedAnalyze?: boolean;
|
|
5
|
+
}
|
|
2
6
|
declare global {
|
|
3
7
|
namespace Cypress {
|
|
4
8
|
interface Chainable {
|
|
5
9
|
/** Flush the axe-core result queue by sending results to the server. */
|
|
6
10
|
axeFlush(): Chainable<void>;
|
|
7
|
-
/** Perform
|
|
8
|
-
axeAnalyze(): Chainable<void>;
|
|
11
|
+
/** Perform an axe-core analysis. */
|
|
12
|
+
axeAnalyze(params?: AxeAnalyzeParams): Chainable<void>;
|
|
9
13
|
/** Start automatic analysis mode. */
|
|
10
14
|
axeStart(): Chainable<void>;
|
|
11
15
|
/** Stop automatic analysis mode. */
|
package/dist/cypressCommands.js
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* istanbul ignore file: This file is basically untestable due to how Cypress works. Instead, it's covered by our E2E suite and manual testing. */
|
|
2
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/**
|
|
5
|
+
* Has the user stopped automatic mode.
|
|
6
|
+
*
|
|
7
|
+
* This code runs in the Cypress browser, so we're unable to
|
|
8
|
+
* read `variables.json` like we do with other integrations.
|
|
9
|
+
* As result, we need this top-level state for managing
|
|
10
|
+
* analyze calls created by "wrapped" methods.
|
|
11
|
+
*/
|
|
12
|
+
var isStopped = false;
|
|
3
13
|
Cypress.Commands.add('axeFlush', function () {
|
|
4
14
|
cy.window().then(function (win) {
|
|
5
15
|
return new Promise(function (resolve) {
|
|
@@ -13,10 +23,18 @@ Cypress.Commands.add('axeFlush', function () {
|
|
|
13
23
|
});
|
|
14
24
|
});
|
|
15
25
|
});
|
|
16
|
-
Cypress.Commands.add('axeAnalyze',
|
|
26
|
+
Cypress.Commands.add('axeAnalyze',
|
|
27
|
+
// __UserRequestedAnalyze allows us to differentiate between user-initiated and automatic analysis.
|
|
28
|
+
function (_a) {
|
|
29
|
+
var _b = _a === void 0 ? {} : _a, _c = _b.__UserRequestedAnalyze, __UserRequestedAnalyze = _c === void 0 ? true : _c;
|
|
30
|
+
if (!__UserRequestedAnalyze && isStopped) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
17
33
|
cy.window().then(function (win) {
|
|
18
34
|
return new Promise(function (resolve) {
|
|
19
|
-
var event = new CustomEvent('axe:manual-mode-analyze'
|
|
35
|
+
var event = new CustomEvent('axe:manual-mode-analyze', {
|
|
36
|
+
detail: { userRequestedAnalyze: __UserRequestedAnalyze }
|
|
37
|
+
});
|
|
20
38
|
var fn = function () {
|
|
21
39
|
win.removeEventListener('axe:manual-mode-analyze-done', fn);
|
|
22
40
|
resolve();
|
|
@@ -31,6 +49,7 @@ Cypress.Commands.add('axeStart', function () {
|
|
|
31
49
|
return new Promise(function (resolve) {
|
|
32
50
|
var event = new CustomEvent('axe:start-auto-mode');
|
|
33
51
|
var fn = function () {
|
|
52
|
+
isStopped = false;
|
|
34
53
|
win.removeEventListener('axe:start-auto-mode-done', fn);
|
|
35
54
|
resolve();
|
|
36
55
|
};
|
|
@@ -44,6 +63,7 @@ Cypress.Commands.add('axeStop', function () {
|
|
|
44
63
|
return new Promise(function (resolve) {
|
|
45
64
|
var event = new CustomEvent('axe:stop-auto-mode');
|
|
46
65
|
var fn = function () {
|
|
66
|
+
isStopped = true;
|
|
47
67
|
win.removeEventListener('axe:stop-auto-mode-done', fn);
|
|
48
68
|
resolve();
|
|
49
69
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cypressCommands.js","sourceRoot":"","sources":["../src/cypressCommands.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"cypressCommands.js","sourceRoot":"","sources":["../src/cypressCommands.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*! Copyright Deque 2021-2022 All Rights Reserved */
|
|
2
2
|
export { puppeteerConfig, PuppeteerController } from './puppeteer';
|
|
3
|
-
export { wdioConfig, wdioTestRunner, WdioController } from './wdio';
|
|
3
|
+
export { wdioConfig, wdioTestRunner, WdioController, wrapWdio } from './wdio';
|
|
4
4
|
export { webdriverConfig, WebdriverController } from './webdriver';
|
|
5
5
|
export { playwrightConfig, PlaywrightController } from './playwright';
|
|
6
|
-
export { cypressConfig } from './cypress';
|
|
6
|
+
export { cypressConfig, wrapCy } from './cypress';
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*! Copyright Deque 2021-2022 All Rights Reserved */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.cypressConfig = exports.PlaywrightController = exports.playwrightConfig = exports.WebdriverController = exports.webdriverConfig = exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = exports.PuppeteerController = exports.puppeteerConfig = void 0;
|
|
4
|
+
exports.wrapCy = exports.cypressConfig = exports.PlaywrightController = exports.playwrightConfig = exports.WebdriverController = exports.webdriverConfig = exports.wrapWdio = exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = exports.PuppeteerController = exports.puppeteerConfig = void 0;
|
|
5
5
|
var puppeteer_1 = require("./puppeteer");
|
|
6
6
|
Object.defineProperty(exports, "puppeteerConfig", { enumerable: true, get: function () { return puppeteer_1.puppeteerConfig; } });
|
|
7
7
|
Object.defineProperty(exports, "PuppeteerController", { enumerable: true, get: function () { return puppeteer_1.PuppeteerController; } });
|
|
@@ -9,6 +9,7 @@ var wdio_1 = require("./wdio");
|
|
|
9
9
|
Object.defineProperty(exports, "wdioConfig", { enumerable: true, get: function () { return wdio_1.wdioConfig; } });
|
|
10
10
|
Object.defineProperty(exports, "wdioTestRunner", { enumerable: true, get: function () { return wdio_1.wdioTestRunner; } });
|
|
11
11
|
Object.defineProperty(exports, "WdioController", { enumerable: true, get: function () { return wdio_1.WdioController; } });
|
|
12
|
+
Object.defineProperty(exports, "wrapWdio", { enumerable: true, get: function () { return wdio_1.wrapWdio; } });
|
|
12
13
|
var webdriver_1 = require("./webdriver");
|
|
13
14
|
Object.defineProperty(exports, "webdriverConfig", { enumerable: true, get: function () { return webdriver_1.webdriverConfig; } });
|
|
14
15
|
Object.defineProperty(exports, "WebdriverController", { enumerable: true, get: function () { return webdriver_1.WebdriverController; } });
|
|
@@ -17,4 +18,5 @@ Object.defineProperty(exports, "playwrightConfig", { enumerable: true, get: func
|
|
|
17
18
|
Object.defineProperty(exports, "PlaywrightController", { enumerable: true, get: function () { return playwright_1.PlaywrightController; } });
|
|
18
19
|
var cypress_1 = require("./cypress");
|
|
19
20
|
Object.defineProperty(exports, "cypressConfig", { enumerable: true, get: function () { return cypress_1.cypressConfig; } });
|
|
21
|
+
Object.defineProperty(exports, "wrapCy", { enumerable: true, get: function () { return cypress_1.wrapCy; } });
|
|
20
22
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAC7C,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAC7C,+BAA6E;AAApE,kGAAA,UAAU,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAC7D,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAC7C,2CAAqE;AAA5D,8GAAA,gBAAgB,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AAC/C,qCAAiD;AAAxC,wGAAA,aAAa,OAAA;AAAE,iGAAA,MAAM,OAAA"}
|
package/dist/playwright.d.ts
CHANGED
|
@@ -10,5 +10,5 @@ export declare function playwrightConfig(opts: Configuration & LaunchOptions): L
|
|
|
10
10
|
export declare class PlaywrightController extends Controller {
|
|
11
11
|
private driver;
|
|
12
12
|
constructor(driver: Page);
|
|
13
|
-
protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
|
|
13
|
+
protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
|
|
14
14
|
}
|
package/dist/playwright.js
CHANGED
|
@@ -103,10 +103,14 @@ var PlaywrightController = /** @class */ (function (_super) {
|
|
|
103
103
|
return _this;
|
|
104
104
|
}
|
|
105
105
|
PlaywrightController.prototype.executeScript = function (fn) {
|
|
106
|
+
var args = [];
|
|
107
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
108
|
+
args[_i - 1] = arguments[_i];
|
|
109
|
+
}
|
|
106
110
|
return __awaiter(this, void 0, void 0, function () {
|
|
107
111
|
return __generator(this, function (_a) {
|
|
108
112
|
switch (_a.label) {
|
|
109
|
-
case 0: return [4 /*yield*/, this.driver.evaluate(fn)];
|
|
113
|
+
case 0: return [4 /*yield*/, this.driver.evaluate(fn, args)];
|
|
110
114
|
case 1:
|
|
111
115
|
_a.sent();
|
|
112
116
|
return [2 /*return*/];
|
package/dist/playwright.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAKe;AACf,4DAAqC;AAErC;;;;GAIG;AAEH,SAAgB,gBAAgB,CAC9B,IAAmC;IAE3B,IAAA,GAAG,GAAgB,IAAI,IAApB,EAAK,MAAM,UAAK,IAAI,EAAzB,OAAkB,CAAF,CAAS;IACzB,IAAA,KAAc,MAAM,KAAX,EAAT,IAAI,mBAAG,EAAE,KAAA,CAAW;IAC1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAa,CAAC,CAAA;IAEjC,6BACK,MAAM,KACT,QAAQ,EAAE,KAAK,EACf,IAAI,MAAA,IACL;AACH,CAAC;AAlBD,4CAkBC;AAED;IAA0C,wCAAU;IAGlD,8BAAY,MAAY;QAAxB,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,4CAAa,GAA7B,UACE,EAAkC
|
|
1
|
+
{"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAKe;AACf,4DAAqC;AAErC;;;;GAIG;AAEH,SAAgB,gBAAgB,CAC9B,IAAmC;IAE3B,IAAA,GAAG,GAAgB,IAAI,IAApB,EAAK,MAAM,UAAK,IAAI,EAAzB,OAAkB,CAAF,CAAS;IACzB,IAAA,KAAc,MAAM,KAAX,EAAT,IAAI,mBAAG,EAAE,KAAA,CAAW;IAC1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAa,CAAC,CAAA;IAEjC,6BACK,MAAM,KACT,QAAQ,EAAE,KAAK,EACf,IAAI,MAAA,IACL;AACH,CAAC;AAlBD,4CAkBC;AAED;IAA0C,wCAAU;IAGlD,8BAAY,MAAY;QAAxB,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,4CAAa,GAA7B,UACE,EAAkC;QAClC,cAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,6BAAkB;;;;;4BAElB,qBAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,EAAA;;wBAApC,SAAoC,CAAA;;;;;KACrC;IACH,2BAAC;AAAD,CAAC,AAdD,CAA0C,oBAAU,GAcnD;AAdY,oDAAoB"}
|
package/dist/puppeteer.d.ts
CHANGED
|
@@ -11,6 +11,6 @@ export declare function puppeteerConfig(opts: Configuration & Options): Options;
|
|
|
11
11
|
export declare class PuppeteerController extends Controller {
|
|
12
12
|
private driver;
|
|
13
13
|
constructor(driver: Page);
|
|
14
|
-
protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
|
|
14
|
+
protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
|
|
15
15
|
}
|
|
16
16
|
export {};
|
package/dist/puppeteer.js
CHANGED
|
@@ -72,6 +72,15 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
72
72
|
}
|
|
73
73
|
return t;
|
|
74
74
|
};
|
|
75
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
76
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
77
|
+
if (ar || !(i in from)) {
|
|
78
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
79
|
+
ar[i] = from[i];
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
83
|
+
};
|
|
75
84
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
76
85
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
77
86
|
};
|
|
@@ -103,12 +112,17 @@ var PuppeteerController = /** @class */ (function (_super) {
|
|
|
103
112
|
return _this;
|
|
104
113
|
}
|
|
105
114
|
PuppeteerController.prototype.executeScript = function (fn) {
|
|
115
|
+
var args = [];
|
|
116
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
117
|
+
args[_i - 1] = arguments[_i];
|
|
118
|
+
}
|
|
106
119
|
return __awaiter(this, void 0, void 0, function () {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
120
|
+
var _a;
|
|
121
|
+
return __generator(this, function (_b) {
|
|
122
|
+
switch (_b.label) {
|
|
123
|
+
case 0: return [4 /*yield*/, (_a = this.driver).evaluate.apply(_a, __spreadArray([fn], args, false))];
|
|
110
124
|
case 1:
|
|
111
|
-
|
|
125
|
+
_b.sent();
|
|
112
126
|
return [2 /*return*/];
|
|
113
127
|
}
|
|
114
128
|
});
|
package/dist/puppeteer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,+BAKe;AACf,4DAAqC;AAMrC;;;;GAIG;AAEH,SAAgB,eAAe,CAAC,IAA6B;IACnD,IAAA,GAAG,GAAgB,IAAI,IAApB,EAAK,MAAM,UAAK,IAAI,EAAzB,OAAkB,CAAF,CAAS;IACzB,IAAA,KAAc,MAAM,KAAX,EAAT,IAAI,mBAAG,EAAE,KAAA,CAAW;IAC1B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAa,CAAC,CAAA;IAEjC,6BACK,MAAM,KACT,QAAQ,EAAE,KAAK,EACf,IAAI,MAAA,IACL;AACH,CAAC;AAhBD,0CAgBC;AAED;IAAyC,uCAAU;IAGjD,6BAAY,MAAY;QAAxB,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,2CAAa,GAA7B,UACE,EAAkC;QAClC,cAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,6BAAkB;;;;;;4BAElB,qBAAM,CAAA,KAAA,IAAI,CAAC,MAAM,CAAA,CAAC,QAAQ,0BAAC,EAAE,GAAK,IAAI,WAAC;;wBAAvC,SAAuC,CAAA;;;;;KACxC;IACH,0BAAC;AAAD,CAAC,AAdD,CAAyC,oBAAU,GAclD;AAdY,kDAAmB"}
|
package/dist/validateApiKey.js
CHANGED
|
@@ -4,9 +4,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
var sync_request_1 = __importDefault(require("sync-request"));
|
|
7
|
+
var assert_1 = __importDefault(require("assert"));
|
|
7
8
|
/** Validate the given `apiKey`. This method is blocking and should not be called unnecessarily. */
|
|
8
9
|
var validateApiKey = function (_a) {
|
|
9
10
|
var apiKey = _a.apiKey, serverURL = _a.serverURL;
|
|
11
|
+
(0, assert_1.default)(apiKey, 'API key is required');
|
|
10
12
|
var url = new URL("/api/api-keys/".concat(apiKey, "/validate/axe-devtools-watcher"), serverURL);
|
|
11
13
|
var res = (0, sync_request_1.default)('GET', url.toString(), {
|
|
12
14
|
maxRedirects: 2,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateApiKey.js","sourceRoot":"","sources":["../src/validateApiKey.ts"],"names":[],"mappings":";;;;;AAAA,8DAAkC;
|
|
1
|
+
{"version":3,"file":"validateApiKey.js","sourceRoot":"","sources":["../src/validateApiKey.ts"],"names":[],"mappings":";;;;;AAAA,8DAAkC;AAClC,kDAA2B;AAO3B,mGAAmG;AACnG,IAAM,cAAc,GAAG,UAAC,EAA6B;QAA3B,MAAM,YAAA,EAAE,SAAS,eAAA;IACzC,IAAA,gBAAM,EAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;IACrC,IAAM,GAAG,GAAG,IAAI,GAAG,CACjB,wBAAiB,MAAM,mCAAgC,EACvD,SAAS,CACV,CAAA;IACD,IAAM,GAAG,GAAG,IAAA,sBAAO,EAAC,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE;QACzC,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,IAAI;QACrB,UAAU,EAAE,CAAC;QACb,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,GAAG;KAChB,CAAC,CAAA;IACF,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IAC5C,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;KAC5B;AACH,CAAC,CAAA;AAED,kBAAe,cAAc,CAAA"}
|
package/dist/wdio.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { Options } from '@wdio/types';
|
|
2
|
+
import { Browser, BrowserCommandsType, ElementCommandsType } from 'webdriverio';
|
|
2
3
|
import { Configuration } from './util';
|
|
3
4
|
import Controller from './Controller';
|
|
4
|
-
|
|
5
|
-
executeAsyncScript(script: string, args: object[]): void;
|
|
6
|
-
}
|
|
5
|
+
declare type WdioBrowser = Browser<'async'> | Browser<'sync'>;
|
|
7
6
|
interface WdioArg extends Configuration {
|
|
8
7
|
options?: Options.WebDriver;
|
|
9
8
|
}
|
|
@@ -16,7 +15,13 @@ export declare function wdioConfig(arg: WdioArg): Options.WebDriver;
|
|
|
16
15
|
export declare function wdioTestRunner(axe: Configuration['axe'], config: Options.Testrunner): Options.Testrunner;
|
|
17
16
|
export declare class WdioController extends Controller {
|
|
18
17
|
private driver;
|
|
19
|
-
constructor(driver:
|
|
20
|
-
protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
|
|
18
|
+
constructor(driver: WdioBrowser);
|
|
19
|
+
protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
|
|
21
20
|
}
|
|
21
|
+
/** Webdriver `browser` methods. */
|
|
22
|
+
export declare const WRAPPED_BROWSER_METHODS: ReadonlyArray<keyof BrowserCommandsType>;
|
|
23
|
+
/** Wrapped `element` methods. */
|
|
24
|
+
export declare const WRAPPED_ELEMENT_METHODS: ReadonlyArray<keyof ElementCommandsType>;
|
|
25
|
+
/** Wrap the given WDIO `browser` object, ensuring axe-core analysis is run after each command. */
|
|
26
|
+
export declare const wrapWdio: (browser: WdioBrowser, controller: WdioController) => WdioBrowser;
|
|
22
27
|
export {};
|
package/dist/wdio.js
CHANGED
|
@@ -65,7 +65,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
65
65
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
66
66
|
};
|
|
67
67
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
68
|
-
exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = void 0;
|
|
68
|
+
exports.wrapWdio = exports.WRAPPED_ELEMENT_METHODS = exports.WRAPPED_BROWSER_METHODS = exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = void 0;
|
|
69
69
|
var uuid_1 = require("uuid");
|
|
70
70
|
var fs_1 = __importDefault(require("fs"));
|
|
71
71
|
var util_1 = require("./util");
|
|
@@ -152,13 +152,17 @@ var WdioController = /** @class */ (function (_super) {
|
|
|
152
152
|
return _this;
|
|
153
153
|
}
|
|
154
154
|
WdioController.prototype.executeScript = function (fn) {
|
|
155
|
+
var args = [];
|
|
156
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
157
|
+
args[_i - 1] = arguments[_i];
|
|
158
|
+
}
|
|
155
159
|
return __awaiter(this, void 0, void 0, function () {
|
|
156
160
|
var script;
|
|
157
161
|
return __generator(this, function (_a) {
|
|
158
162
|
switch (_a.label) {
|
|
159
163
|
case 0:
|
|
160
|
-
script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve()\n .then(".concat(fn, ")\n .then(callback);\n ");
|
|
161
|
-
return [4 /*yield*/, this.driver.
|
|
164
|
+
script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve(...arguments)\n .then(".concat(fn, ")\n .then(callback);\n ");
|
|
165
|
+
return [4 /*yield*/, this.driver.executeAsync(script, args)];
|
|
162
166
|
case 1:
|
|
163
167
|
_a.sent();
|
|
164
168
|
return [2 /*return*/];
|
|
@@ -169,4 +173,65 @@ var WdioController = /** @class */ (function (_super) {
|
|
|
169
173
|
return WdioController;
|
|
170
174
|
}(Controller_1.default));
|
|
171
175
|
exports.WdioController = WdioController;
|
|
176
|
+
/** Webdriver `browser` methods. */
|
|
177
|
+
exports.WRAPPED_BROWSER_METHODS = [
|
|
178
|
+
'reloadSession',
|
|
179
|
+
'setWindowSize',
|
|
180
|
+
'switchWindow',
|
|
181
|
+
'touchAction',
|
|
182
|
+
'newWindow',
|
|
183
|
+
'pause',
|
|
184
|
+
'url',
|
|
185
|
+
'waitUntil'
|
|
186
|
+
];
|
|
187
|
+
/** Wrapped `element` methods. */
|
|
188
|
+
exports.WRAPPED_ELEMENT_METHODS = [
|
|
189
|
+
'addValue',
|
|
190
|
+
'clearValue',
|
|
191
|
+
'click',
|
|
192
|
+
'doubleClick',
|
|
193
|
+
'dragAndDrop',
|
|
194
|
+
'moveTo',
|
|
195
|
+
'scrollIntoView',
|
|
196
|
+
'setValue',
|
|
197
|
+
'touchAction',
|
|
198
|
+
'waitForClickable',
|
|
199
|
+
'waitForDisplayed',
|
|
200
|
+
'waitForEnabled',
|
|
201
|
+
'waitForExist',
|
|
202
|
+
'waitUntil'
|
|
203
|
+
];
|
|
204
|
+
/** Wrap the given WDIO `browser` object, ensuring axe-core analysis is run after each command. */
|
|
205
|
+
var wrapWdio = function (browser, controller) {
|
|
206
|
+
var wrapper = function (fn) {
|
|
207
|
+
var args = [];
|
|
208
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
209
|
+
args[_i - 1] = arguments[_i];
|
|
210
|
+
}
|
|
211
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
212
|
+
var res;
|
|
213
|
+
return __generator(this, function (_a) {
|
|
214
|
+
switch (_a.label) {
|
|
215
|
+
case 0: return [4 /*yield*/, fn.apply(void 0, args)];
|
|
216
|
+
case 1:
|
|
217
|
+
res = _a.sent();
|
|
218
|
+
return [4 /*yield*/, controller.analyze({ __UserRequestedAnalyze: false })];
|
|
219
|
+
case 2:
|
|
220
|
+
_a.sent();
|
|
221
|
+
return [2 /*return*/, res];
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
});
|
|
225
|
+
};
|
|
226
|
+
for (var _i = 0, WRAPPED_BROWSER_METHODS_1 = exports.WRAPPED_BROWSER_METHODS; _i < WRAPPED_BROWSER_METHODS_1.length; _i++) {
|
|
227
|
+
var method = WRAPPED_BROWSER_METHODS_1[_i];
|
|
228
|
+
browser.overwriteCommand(method, wrapper);
|
|
229
|
+
}
|
|
230
|
+
for (var _a = 0, WRAPPED_ELEMENT_METHODS_1 = exports.WRAPPED_ELEMENT_METHODS; _a < WRAPPED_ELEMENT_METHODS_1.length; _a++) {
|
|
231
|
+
var method = WRAPPED_ELEMENT_METHODS_1[_a];
|
|
232
|
+
browser.overwriteCommand(method, wrapper, true);
|
|
233
|
+
}
|
|
234
|
+
return browser;
|
|
235
|
+
};
|
|
236
|
+
exports.wrapWdio = wrapWdio;
|
|
172
237
|
//# sourceMappingURL=wdio.js.map
|
package/dist/wdio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wdio.js","sourceRoot":"","sources":["../src/wdio.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"wdio.js","sourceRoot":"","sources":["../src/wdio.ts"],"names":[],"mappings":"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"}
|
package/dist/webdriver.d.ts
CHANGED
|
@@ -14,6 +14,6 @@ export declare function webdriverConfig(arg: WebDriverArgs): Options;
|
|
|
14
14
|
export declare class WebdriverController extends Controller {
|
|
15
15
|
private driver;
|
|
16
16
|
constructor(driver: WebDriver);
|
|
17
|
-
protected executeScript(fn: string | (() => Promise<void>)): Promise<void>;
|
|
17
|
+
protected executeScript(fn: string | (() => Promise<void>), ...args: unknown[]): Promise<void>;
|
|
18
18
|
}
|
|
19
19
|
export {};
|
package/dist/webdriver.js
CHANGED
|
@@ -50,6 +50,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
50
50
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
54
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
55
|
+
if (ar || !(i in from)) {
|
|
56
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
57
|
+
ar[i] = from[i];
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
61
|
+
};
|
|
53
62
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
54
63
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
55
64
|
};
|
|
@@ -87,15 +96,20 @@ var WebdriverController = /** @class */ (function (_super) {
|
|
|
87
96
|
return _this;
|
|
88
97
|
}
|
|
89
98
|
WebdriverController.prototype.executeScript = function (fn) {
|
|
99
|
+
var args = [];
|
|
100
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
101
|
+
args[_i - 1] = arguments[_i];
|
|
102
|
+
}
|
|
90
103
|
return __awaiter(this, void 0, void 0, function () {
|
|
91
104
|
var script;
|
|
92
|
-
|
|
93
|
-
|
|
105
|
+
var _a;
|
|
106
|
+
return __generator(this, function (_b) {
|
|
107
|
+
switch (_b.label) {
|
|
94
108
|
case 0:
|
|
95
|
-
script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve()\n .then(".concat(fn, ")\n .then(callback);\n ");
|
|
96
|
-
return [4 /*yield*/, this.driver.executeAsyncScript(script)];
|
|
109
|
+
script = "\n const callback = arguments[arguments.length - 1];\n Promise.resolve(...arguments)\n .then(".concat(fn, ")\n .then(callback);\n ");
|
|
110
|
+
return [4 /*yield*/, (_a = this.driver).executeAsyncScript.apply(_a, __spreadArray([script], args, false))];
|
|
97
111
|
case 1:
|
|
98
|
-
|
|
112
|
+
_b.sent();
|
|
99
113
|
return [2 /*return*/];
|
|
100
114
|
}
|
|
101
115
|
});
|