@axe-core/watcher 2.0.0 → 2.1.1-next.52952a4c
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.js +71 -131
- package/dist/Controller.js.map +1 -1
- package/dist/cypress.d.ts +1 -1
- package/dist/cypress.js +8 -37
- package/dist/cypress.js.map +1 -1
- package/dist/cypressCommands.js +55 -66
- package/dist/cypressCommands.js.map +1 -1
- package/dist/git.d.ts +2 -0
- package/dist/git.js +31 -22
- package/dist/git.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/dist/playwright.d.ts +5 -3
- package/dist/playwright.js +15 -82
- package/dist/playwright.js.map +1 -1
- package/dist/playwrightTest.d.ts +16 -0
- package/dist/playwrightTest.js +74 -0
- package/dist/playwrightTest.js.map +1 -0
- package/dist/playwrightWrapping.d.ts +2 -8
- package/dist/playwrightWrapping.js +212 -491
- package/dist/playwrightWrapping.js.map +1 -1
- package/dist/puppeteer.d.ts +2 -2
- package/dist/puppeteer.js +17 -92
- package/dist/puppeteer.js.map +1 -1
- package/dist/puppeteerWrapping.d.ts +14 -0
- package/dist/puppeteerWrapping.js +426 -0
- package/dist/puppeteerWrapping.js.map +1 -0
- package/dist/util.d.ts +11 -0
- package/dist/util.js +62 -45
- package/dist/util.js.map +1 -1
- package/dist/validateApiKey.js +6 -7
- package/dist/validateApiKey.js.map +1 -1
- package/dist/wdio.d.ts +1 -1
- package/dist/wdio.js +44 -138
- package/dist/wdio.js.map +1 -1
- package/dist/webdriver.d.ts +2 -2
- package/dist/webdriver.js +24 -85
- package/dist/webdriver.js.map +1 -1
- package/dist/webdriverWrapping.d.ts +7 -0
- package/dist/webdriverWrapping.js +131 -0
- package/dist/webdriverWrapping.js.map +1 -0
- package/extension/background.js +1 -1
- package/extension/content.js +1 -1
- package/extension/manifest.json +2 -3
- package/package.json +4 -6
package/dist/Controller.js
CHANGED
|
@@ -8,153 +8,93 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
13
|
};
|
|
41
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
15
|
+
const fs_1 = __importDefault(require("fs"));
|
|
16
|
+
const util_1 = require("./util");
|
|
17
|
+
const updateAutoAnalyze = (val) => {
|
|
18
|
+
const fileContents = fs_1.default.readFileSync(util_1.PATH_TO_EXTENSION_VARIABLES, 'utf-8');
|
|
19
|
+
const jsonValue = JSON.parse(fileContents);
|
|
47
20
|
jsonValue.auto_analyze = val;
|
|
48
21
|
fs_1.default.writeFileSync(util_1.PATH_TO_EXTENSION_VARIABLES, JSON.stringify(jsonValue));
|
|
49
22
|
};
|
|
50
|
-
|
|
51
|
-
|
|
23
|
+
class Controller {
|
|
24
|
+
constructor() {
|
|
52
25
|
this.isStopped = false;
|
|
53
26
|
}
|
|
54
|
-
|
|
55
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
window.addEventListener('axe:start-auto-mode-done', fn);
|
|
69
|
-
window.dispatchEvent(event);
|
|
70
|
-
});
|
|
71
|
-
})];
|
|
72
|
-
case 1:
|
|
73
|
-
_a.sent();
|
|
74
|
-
return [2 /*return*/];
|
|
75
|
-
}
|
|
27
|
+
start() {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
updateAutoAnalyze(true);
|
|
30
|
+
this.isStopped = false;
|
|
31
|
+
yield this.executeScript(() => {
|
|
32
|
+
return new Promise(resolve => {
|
|
33
|
+
const event = new CustomEvent('axe:start-auto-mode');
|
|
34
|
+
const fn = () => {
|
|
35
|
+
window.removeEventListener('axe:start-auto-mode-done', fn);
|
|
36
|
+
resolve();
|
|
37
|
+
};
|
|
38
|
+
window.addEventListener('axe:start-auto-mode-done', fn);
|
|
39
|
+
window.dispatchEvent(event);
|
|
40
|
+
});
|
|
76
41
|
});
|
|
77
42
|
});
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
window.addEventListener('axe:stop-auto-mode-done', fn);
|
|
94
|
-
window.dispatchEvent(event);
|
|
95
|
-
});
|
|
96
|
-
})];
|
|
97
|
-
case 1:
|
|
98
|
-
_a.sent();
|
|
99
|
-
return [2 /*return*/];
|
|
100
|
-
}
|
|
43
|
+
}
|
|
44
|
+
stop() {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
updateAutoAnalyze(false);
|
|
47
|
+
this.isStopped = true;
|
|
48
|
+
yield this.executeScript(() => {
|
|
49
|
+
return new Promise(resolve => {
|
|
50
|
+
const event = new CustomEvent('axe:stop-auto-mode');
|
|
51
|
+
const fn = () => {
|
|
52
|
+
window.removeEventListener('axe:stop-auto-mode-done', fn);
|
|
53
|
+
resolve();
|
|
54
|
+
};
|
|
55
|
+
window.addEventListener('axe:stop-auto-mode-done', fn);
|
|
56
|
+
window.dispatchEvent(event);
|
|
57
|
+
});
|
|
101
58
|
});
|
|
102
59
|
});
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
window.addEventListener('axe:manual-mode-analyze-done', fn);
|
|
124
|
-
window.dispatchEvent(event);
|
|
125
|
-
});
|
|
126
|
-
}, __UserRequestedAnalyze)];
|
|
127
|
-
case 1:
|
|
128
|
-
_d.sent();
|
|
129
|
-
return [2 /*return*/];
|
|
130
|
-
}
|
|
131
|
-
});
|
|
60
|
+
}
|
|
61
|
+
analyze({ __UserRequestedAnalyze = true } = {}) {
|
|
62
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
// If the user didn't request an analyze, and we're in manual mode, don't do anything.
|
|
64
|
+
if (this.isStopped && !__UserRequestedAnalyze) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
yield this.executeScript(userRequestedAnalyze => {
|
|
68
|
+
return new Promise(resolve => {
|
|
69
|
+
const event = new CustomEvent('axe:manual-mode-analyze', {
|
|
70
|
+
detail: { userRequestedAnalyze }
|
|
71
|
+
});
|
|
72
|
+
const fn = () => {
|
|
73
|
+
window.removeEventListener('axe:manual-mode-analyze-done', fn);
|
|
74
|
+
resolve();
|
|
75
|
+
};
|
|
76
|
+
window.addEventListener('axe:manual-mode-analyze-done', fn);
|
|
77
|
+
window.dispatchEvent(event);
|
|
78
|
+
});
|
|
79
|
+
}, __UserRequestedAnalyze);
|
|
132
80
|
});
|
|
133
|
-
}
|
|
81
|
+
}
|
|
134
82
|
/** Flush all axe-core results by sending them to the server. */
|
|
135
|
-
|
|
136
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
window.dispatchEvent(event);
|
|
148
|
-
});
|
|
149
|
-
})];
|
|
150
|
-
case 1:
|
|
151
|
-
_a.sent();
|
|
152
|
-
return [2 /*return*/];
|
|
153
|
-
}
|
|
83
|
+
flush() {
|
|
84
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
+
yield this.executeScript(() => {
|
|
86
|
+
return new Promise(resolve => {
|
|
87
|
+
const fn = () => {
|
|
88
|
+
window.removeEventListener('axe:flush-end', fn);
|
|
89
|
+
resolve();
|
|
90
|
+
};
|
|
91
|
+
window.addEventListener('axe:flush-end', fn);
|
|
92
|
+
const event = new CustomEvent('axe:flush-start');
|
|
93
|
+
window.dispatchEvent(event);
|
|
94
|
+
});
|
|
154
95
|
});
|
|
155
96
|
});
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
}());
|
|
97
|
+
}
|
|
98
|
+
}
|
|
159
99
|
exports.default = Controller;
|
|
160
100
|
//# sourceMappingURL=Controller.js.map
|
package/dist/Controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Controller.js","sourceRoot":"","sources":["../src/Controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4CAAmB;AACnB,iCAAoD;AAEpD,MAAM,iBAAiB,GAAG,CAAC,GAAY,EAAQ,EAAE;IAC/C,MAAM,YAAY,GAAG,YAAE,CAAC,YAAY,CAAC,kCAA2B,EAAE,OAAO,CAAC,CAAA;IAC1E,MAAM,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;AAMD,MAAe,UAAU;IAAzB;QAKY,cAAS,GAAG,KAAK,CAAA;IAuE7B,CAAC;IArEc,KAAK;;YAChB,iBAAiB,CAAC,IAAI,CAAC,CAAA;YACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;YACtB,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;gBAC5B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC3B,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,qBAAqB,CAAC,CAAA;oBACpD,MAAM,EAAE,GAAG,GAAS,EAAE;wBACpB,MAAM,CAAC,mBAAmB,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAA;wBAC1D,OAAO,EAAE,CAAA;oBACX,CAAC,CAAA;oBACD,MAAM,CAAC,gBAAgB,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAA;oBACvD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gBAC7B,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;KAAA;IAEY,IAAI;;YACf,iBAAiB,CAAC,KAAK,CAAC,CAAA;YACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;YACrB,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;gBAC5B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC3B,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,oBAAoB,CAAC,CAAA;oBACnD,MAAM,EAAE,GAAG,GAAS,EAAE;wBACpB,MAAM,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;wBACzD,OAAO,EAAE,CAAA;oBACX,CAAC,CAAA;oBACD,MAAM,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;oBACtD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gBAC7B,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;KAAA;IAEY,OAAO,CAAC,EACnB,sBAAsB,GAAG,IAAI,KACZ,EAAE;;YACnB,sFAAsF;YACtF,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,sBAAsB,EAAE;gBAC7C,OAAM;aACP;YAED,MAAM,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE;gBAC9C,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC3B,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,yBAAyB,EAAE;wBACvD,MAAM,EAAE,EAAE,oBAAoB,EAAE;qBACjC,CAAC,CAAA;oBACF,MAAM,EAAE,GAAG,GAAS,EAAE;wBACpB,MAAM,CAAC,mBAAmB,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAA;wBAC9D,OAAO,EAAE,CAAA;oBACX,CAAC,CAAA;oBACD,MAAM,CAAC,gBAAgB,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAA;oBAC3D,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gBAC7B,CAAC,CAAC,CAAA;YACJ,CAAC,EAAE,sBAAsB,CAAC,CAAA;QAC5B,CAAC;KAAA;IAED,gEAAgE;IACnD,KAAK;;YAChB,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;gBAC5B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC3B,MAAM,EAAE,GAAG,GAAS,EAAE;wBACpB,MAAM,CAAC,mBAAmB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;wBAC/C,OAAO,EAAE,CAAA;oBACX,CAAC,CAAA;oBACD,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;oBAC5C,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,iBAAiB,CAAC,CAAA;oBAChD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gBAC7B,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;KAAA;CACF;AAED,kBAAe,UAAU,CAAA"}
|
package/dist/cypress.d.ts
CHANGED
package/dist/cypress.js
CHANGED
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
3
|
var t = {};
|
|
15
4
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -21,30 +10,17 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
21
10
|
}
|
|
22
11
|
return t;
|
|
23
12
|
};
|
|
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
|
-
};
|
|
33
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
14
|
exports.cypressConfig = void 0;
|
|
35
|
-
|
|
36
|
-
var util_1 = require("./util");
|
|
15
|
+
const util_1 = require("./util");
|
|
37
16
|
/**
|
|
38
17
|
* Create a Cypress config that uses the axe Watcher extension.
|
|
39
18
|
*
|
|
40
19
|
* @param config Cypress config to extend
|
|
41
20
|
*/
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
(0, util_1.writeVariables)(
|
|
45
|
-
// Ensure the session ID persists between tabs.
|
|
46
|
-
// We cannot allow the extension to generate an ID, as each tab would get its own.
|
|
47
|
-
sessionId: axe.sessionId || (0, uuid_1.v4)(),
|
|
21
|
+
const cypressConfig = (config) => {
|
|
22
|
+
const { axe } = config, userConfig = __rest(config, ["axe"]);
|
|
23
|
+
(0, util_1.writeVariables)(Object.assign(Object.assign({}, axe), {
|
|
48
24
|
// Let the extension know to check for Cypress frames.
|
|
49
25
|
cypress: true }));
|
|
50
26
|
(0, util_1.writeManifest)({
|
|
@@ -56,22 +32,17 @@ var cypressConfig = function (config) {
|
|
|
56
32
|
'*/__cypress/iframes/*'
|
|
57
33
|
]
|
|
58
34
|
});
|
|
59
|
-
return
|
|
35
|
+
return Object.assign(Object.assign({}, userConfig), { e2e: Object.assign(Object.assign({}, userConfig.e2e), { setupNodeEvents(on, ...args) {
|
|
60
36
|
var _a, _b;
|
|
61
|
-
|
|
62
|
-
|
|
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));
|
|
66
|
-
on('before:browser:launch', function (browser, launchOptions) {
|
|
67
|
-
var _a;
|
|
37
|
+
(_b = (_a = userConfig.e2e) === null || _a === void 0 ? void 0 : _a.setupNodeEvents) === null || _b === void 0 ? void 0 : _b.call(_a, on, ...args);
|
|
38
|
+
on('before:browser:launch', (browser, launchOptions) => {
|
|
68
39
|
// We only support Chrome.
|
|
69
40
|
if (browser.name === 'chrome') {
|
|
70
41
|
if (browser.isHeadless) {
|
|
71
42
|
throw new util_1.HeadlessNotSupportedError();
|
|
72
43
|
}
|
|
73
44
|
// Load the extension.
|
|
74
|
-
|
|
45
|
+
launchOptions.args.push(...util_1.extensionArgs);
|
|
75
46
|
}
|
|
76
47
|
return launchOptions;
|
|
77
48
|
});
|
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,iCAMe;AAEf;;;;GAIG;AAEI,MAAM,aAAa,GAAG,CAC3B,MAA6C,EACtB,EAAE;IACzB,MAAM,EAAE,GAAG,KAAoB,MAAM,EAArB,UAAU,UAAK,MAAM,EAA/B,OAAsB,CAAS,CAAA;IAErC,IAAA,qBAAc,kCACT,GAAG;QACN,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,uCACK,UAAU,KACb,GAAG,kCACE,UAAU,CAAC,GAAG,KACjB,eAAe,CAAC,EAAE,EAAE,GAAG,IAAI;;gBACzB,MAAA,MAAA,UAAU,CAAC,GAAG,0CAAE,eAAe,mDAAG,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;gBAE9C,EAAE,CAAC,uBAAuB,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE;oBACrD,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,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAa,CAAC,CAAA;qBAC1C;oBAED,OAAO,aAAa,CAAA;gBACtB,CAAC,CAAC,CAAA;YACJ,CAAC,OAEJ;AACH,CAAC,CAAA;AA3CY,QAAA,aAAa,iBA2CzB"}
|
package/dist/cypressCommands.js
CHANGED
|
@@ -10,41 +10,40 @@ exports.WRAPPED_COMMANDS = void 0;
|
|
|
10
10
|
* As result, we need this top-level state for managing
|
|
11
11
|
* analyze calls created by "wrapped" methods.
|
|
12
12
|
*/
|
|
13
|
-
|
|
14
|
-
Cypress.Commands.add('axeFlush',
|
|
15
|
-
cy.window().then(
|
|
13
|
+
let isStopped = false;
|
|
14
|
+
Cypress.Commands.add('axeFlush', () => {
|
|
15
|
+
cy.window().then(win => {
|
|
16
16
|
// @ts-expect-error `__AXE_WATCHER_HAS_VISITED` is a global set on the window by axe Watcher.
|
|
17
17
|
// This determines if axe Watcher has ever visited the page. If it hasn't, we don't want to
|
|
18
18
|
// flush results
|
|
19
19
|
if (!win.__AXE_WATCHER_HAS_VISITED) {
|
|
20
20
|
return;
|
|
21
21
|
}
|
|
22
|
-
return new Promise(
|
|
23
|
-
|
|
22
|
+
return new Promise(resolve => {
|
|
23
|
+
const fn = () => {
|
|
24
24
|
win.removeEventListener('axe:flush-end', fn);
|
|
25
25
|
// @ts-expect-error reset `__AXE_WATCHER_HAS_VISITED` to false
|
|
26
26
|
win.__AXE_WATCHER_HAS_VISITED = false;
|
|
27
27
|
resolve();
|
|
28
28
|
};
|
|
29
29
|
win.addEventListener('axe:flush-end', fn);
|
|
30
|
-
|
|
30
|
+
const event = new CustomEvent('axe:flush-start');
|
|
31
31
|
win.dispatchEvent(event);
|
|
32
32
|
});
|
|
33
33
|
});
|
|
34
34
|
});
|
|
35
35
|
Cypress.Commands.add('axeAnalyze',
|
|
36
36
|
// __UserRequestedAnalyze allows us to differentiate between user-initiated and automatic analysis.
|
|
37
|
-
|
|
38
|
-
var _b = _a === void 0 ? {} : _a, _c = _b.__UserRequestedAnalyze, __UserRequestedAnalyze = _c === void 0 ? true : _c;
|
|
37
|
+
({ __UserRequestedAnalyze = true } = {}) => {
|
|
39
38
|
if (!__UserRequestedAnalyze && isStopped) {
|
|
40
39
|
return;
|
|
41
40
|
}
|
|
42
|
-
cy.window().then(
|
|
43
|
-
return new Promise(
|
|
44
|
-
|
|
41
|
+
cy.window().then(win => {
|
|
42
|
+
return new Promise(resolve => {
|
|
43
|
+
const event = new CustomEvent('axe:manual-mode-analyze', {
|
|
45
44
|
detail: { userRequestedAnalyze: __UserRequestedAnalyze }
|
|
46
45
|
});
|
|
47
|
-
|
|
46
|
+
const fn = () => {
|
|
48
47
|
win.removeEventListener('axe:manual-mode-analyze-done', fn);
|
|
49
48
|
resolve();
|
|
50
49
|
};
|
|
@@ -53,11 +52,11 @@ function (_a) {
|
|
|
53
52
|
});
|
|
54
53
|
});
|
|
55
54
|
});
|
|
56
|
-
Cypress.Commands.add('axeStart',
|
|
57
|
-
cy.window().then(
|
|
58
|
-
return new Promise(
|
|
59
|
-
|
|
60
|
-
|
|
55
|
+
Cypress.Commands.add('axeStart', () => {
|
|
56
|
+
cy.window().then(win => {
|
|
57
|
+
return new Promise(resolve => {
|
|
58
|
+
const event = new CustomEvent('axe:start-auto-mode');
|
|
59
|
+
const fn = () => {
|
|
61
60
|
isStopped = false;
|
|
62
61
|
win.removeEventListener('axe:start-auto-mode-done', fn);
|
|
63
62
|
resolve();
|
|
@@ -67,11 +66,11 @@ Cypress.Commands.add('axeStart', function () {
|
|
|
67
66
|
});
|
|
68
67
|
});
|
|
69
68
|
});
|
|
70
|
-
Cypress.Commands.add('axeStop',
|
|
71
|
-
cy.window().then(
|
|
72
|
-
return new Promise(
|
|
73
|
-
|
|
74
|
-
|
|
69
|
+
Cypress.Commands.add('axeStop', () => {
|
|
70
|
+
cy.window().then(win => {
|
|
71
|
+
return new Promise(resolve => {
|
|
72
|
+
const event = new CustomEvent('axe:stop-auto-mode');
|
|
73
|
+
const fn = () => {
|
|
75
74
|
isStopped = true;
|
|
76
75
|
win.removeEventListener('axe:stop-auto-mode-done', fn);
|
|
77
76
|
resolve();
|
|
@@ -108,39 +107,33 @@ exports.WRAPPED_COMMANDS = [
|
|
|
108
107
|
* We rely on future commands to detect any new page state created by the current command.
|
|
109
108
|
* The last command that runs relies on the flush to catch the last page state.
|
|
110
109
|
*/
|
|
111
|
-
exports.WRAPPED_COMMANDS.forEach(
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
110
|
+
exports.WRAPPED_COMMANDS.forEach(method => Cypress.Commands.overwrite(method, (originalFn, ...args) => {
|
|
111
|
+
var _a, _b, _c;
|
|
112
|
+
const currentCommand = (_b = (_a = cy.state('current')) === null || _a === void 0 ? void 0 : _a.attributes) === null || _b === void 0 ? void 0 : _b.name;
|
|
113
|
+
// Some commands, like "type" call other commands internally, like "click".
|
|
114
|
+
// We don't want to enqueue a run in these scenarios because it can cause
|
|
115
|
+
// promises to be returned from commands, which Cypress does not allow.
|
|
116
|
+
// See: https://github.com/cypress-io/cypress/issues/19086
|
|
117
|
+
if (currentCommand && currentCommand !== method) {
|
|
118
|
+
return originalFn(...args);
|
|
119
|
+
}
|
|
120
|
+
// Get the previous subject from the chain so we can pass it along to child commands.
|
|
121
|
+
const subject = (_c = cy.subject) === null || _c === void 0 ? void 0 : _c.call(cy);
|
|
122
|
+
cy.window()
|
|
123
|
+
.then((win) => {
|
|
124
|
+
if (win && !win.__AXE_WATCHER_HAS_VISITED) {
|
|
125
|
+
/**
|
|
126
|
+
* Set a flag on the Window to indicate that a wrapped method has been called.
|
|
127
|
+
* This is used to determine whether we should call `axeFlush` after the test.
|
|
128
|
+
*/
|
|
129
|
+
win.__AXE_WATCHER_HAS_VISITED = true;
|
|
125
130
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
* Set a flag on the Window to indicate that a wrapped method has been called.
|
|
133
|
-
* This is used to determine whether we should call `axeFlush` after the test.
|
|
134
|
-
*/
|
|
135
|
-
win.__AXE_WATCHER_HAS_VISITED = true;
|
|
136
|
-
}
|
|
137
|
-
})
|
|
138
|
-
.axeAnalyze({ __UserRequestedAnalyze: false })
|
|
139
|
-
// Set the subject back to the previous subject
|
|
140
|
-
.then(function () { return subject; })
|
|
141
|
-
.then(function () { return originalFn.apply(void 0, args); });
|
|
142
|
-
});
|
|
143
|
-
});
|
|
131
|
+
})
|
|
132
|
+
.axeAnalyze({ __UserRequestedAnalyze: false })
|
|
133
|
+
// Set the subject back to the previous subject
|
|
134
|
+
.then(() => subject)
|
|
135
|
+
.then(() => originalFn(...args));
|
|
136
|
+
}));
|
|
144
137
|
/**
|
|
145
138
|
* The `visit` command is wrapped differently than the other commands. This is because
|
|
146
139
|
* we need to actually visit and load the page before we can run axe.
|
|
@@ -148,19 +141,15 @@ exports.WRAPPED_COMMANDS.forEach(function (method) {
|
|
|
148
141
|
* We run the original visit command, wait for the extension to be initialized, and then
|
|
149
142
|
* queue an axe run.
|
|
150
143
|
*/
|
|
151
|
-
Cypress.Commands.overwrite('visit',
|
|
152
|
-
var args = [];
|
|
153
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
|
154
|
-
args[_i - 1] = arguments[_i];
|
|
155
|
-
}
|
|
144
|
+
Cypress.Commands.overwrite('visit', (originalFn, ...args) => {
|
|
156
145
|
// We use `cy.wrap(null)` here just to get into the Cypress command queue.
|
|
157
146
|
cy.wrap(null)
|
|
158
|
-
.then(
|
|
159
|
-
return originalFn
|
|
147
|
+
.then(() => {
|
|
148
|
+
return originalFn(...args);
|
|
160
149
|
})
|
|
161
|
-
.then(
|
|
150
|
+
.then(visitResult => {
|
|
162
151
|
cy.window()
|
|
163
|
-
.then(
|
|
152
|
+
.then((win) => {
|
|
164
153
|
if (win && !win.__AXE_WATCHER_HAS_VISITED) {
|
|
165
154
|
/**
|
|
166
155
|
* Set a flag on the Window to indicate that a wrapped method has been called.
|
|
@@ -169,8 +158,8 @@ Cypress.Commands.overwrite('visit', function (originalFn) {
|
|
|
169
158
|
win.__AXE_WATCHER_HAS_VISITED = true;
|
|
170
159
|
}
|
|
171
160
|
// Wait for watcher to initialize before continuing.
|
|
172
|
-
return new Promise(
|
|
173
|
-
|
|
161
|
+
return new Promise(resolve => {
|
|
162
|
+
const fn = () => {
|
|
174
163
|
win.removeEventListener('axe:initialized', fn);
|
|
175
164
|
resolve();
|
|
176
165
|
};
|
|
@@ -178,7 +167,7 @@ Cypress.Commands.overwrite('visit', function (originalFn) {
|
|
|
178
167
|
});
|
|
179
168
|
})
|
|
180
169
|
.axeAnalyze({ __UserRequestedAnalyze: false })
|
|
181
|
-
.then(
|
|
170
|
+
.then(() => visitResult);
|
|
182
171
|
});
|
|
183
172
|
});
|
|
184
173
|
//# sourceMappingURL=cypressCommands.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cypressCommands.js","sourceRoot":"","sources":["../src/cypressCommands.ts"],"names":[],"mappings":";AAAA,kJAAkJ;;;AAmClJ;;;;;;;GAOG;AAEH,IAAI,SAAS,GAAG,KAAK,CAAA;AAErB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE;
|
|
1
|
+
{"version":3,"file":"cypressCommands.js","sourceRoot":"","sources":["../src/cypressCommands.ts"],"names":[],"mappings":"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"}
|
package/dist/git.d.ts
CHANGED
|
@@ -21,4 +21,6 @@ interface CommitInfo {
|
|
|
21
21
|
export declare const getCommitInfo: (dir?: string) => CommitInfo | null;
|
|
22
22
|
/** Check if the repository contains unstaged changes. */
|
|
23
23
|
export declare const isDirty: (dir?: string) => boolean;
|
|
24
|
+
/** Get the tag name. */
|
|
25
|
+
export declare const getTag: (dir?: string) => string | null;
|
|
24
26
|
export {};
|