@axe-core/watcher 0.0.1-next.91ab0307 → 0.0.1-next.9c19014c
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/README.md +5 -0
- package/dist/Controller.d.ts +9 -0
- package/dist/Controller.js +137 -0
- package/dist/Controller.js.map +1 -0
- package/dist/cypress.d.ts +8 -0
- package/dist/cypress.js +60 -0
- package/dist/cypress.js.map +1 -0
- package/dist/cypressCommands.d.ts +15 -0
- package/dist/cypressCommands.js +43 -0
- package/dist/cypressCommands.js.map +1 -0
- package/dist/git.d.ts +19 -0
- package/dist/git.js +104 -0
- package/dist/git.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/playwright.d.ts +2 -1
- package/dist/playwright.js +6 -2
- package/dist/playwright.js.map +1 -1
- package/dist/puppeteer.d.ts +2 -1
- package/dist/puppeteer.js +6 -2
- package/dist/puppeteer.js.map +1 -1
- package/dist/util.d.ts +9 -7
- package/dist/util.js +72 -129
- package/dist/util.js.map +1 -1
- package/dist/wdio.d.ts +2 -1
- package/dist/wdio.js +40 -4
- package/dist/wdio.js.map +1 -1
- package/dist/webdriver.d.ts +2 -1
- package/dist/webdriver.js +6 -2
- package/dist/webdriver.js.map +1 -1
- package/extension/content.js +1 -1
- package/extension/content.js.LICENSE.txt +1 -1
- package/extension/worker.js +1 -1
- package/extension/worker.js.LICENSE.txt +1 -1
- package/package.json +18 -37
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +0 -134
- package/dist/cli.js.map +0 -1
package/dist/util.js
CHANGED
|
@@ -1,48 +1,51 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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 };
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
36
22
|
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
37
39
|
};
|
|
38
40
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
41
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
42
|
};
|
|
41
43
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
exports.
|
|
44
|
+
exports.writeManifest = exports.writeVariables = exports.HeadlessNotSupportedError = exports.extensionArgs = exports.PATH_TO_EXTENSION_VARIABLES = exports.PATH_TO_SESSION_FILE = exports.DEFAULT_SERVER_URL = exports.PATH_TO_EXTENSION = void 0;
|
|
43
45
|
var fs_1 = __importDefault(require("fs"));
|
|
44
46
|
var path_1 = __importDefault(require("path"));
|
|
45
47
|
var os_1 = __importDefault(require("os"));
|
|
48
|
+
var git = __importStar(require("./git"));
|
|
46
49
|
exports.PATH_TO_EXTENSION = path_1.default.join(__dirname, '..', 'extension');
|
|
47
50
|
exports.DEFAULT_SERVER_URL = 'https://axe.deque.com/';
|
|
48
51
|
exports.PATH_TO_SESSION_FILE = path_1.default.join(os_1.default.tmpdir(), 'axe-watcher-session.json');
|
|
@@ -51,6 +54,16 @@ exports.extensionArgs = [
|
|
|
51
54
|
"--disable-extensions-except=".concat(exports.PATH_TO_EXTENSION),
|
|
52
55
|
"--load-extension=".concat(exports.PATH_TO_EXTENSION)
|
|
53
56
|
];
|
|
57
|
+
var HeadlessNotSupportedError = /** @class */ (function (_super) {
|
|
58
|
+
__extends(HeadlessNotSupportedError, _super);
|
|
59
|
+
function HeadlessNotSupportedError() {
|
|
60
|
+
var _this = _super.call(this, 'Cannot use extension while headless.') || this;
|
|
61
|
+
_this.name = 'HeadlessNotSupportedError';
|
|
62
|
+
return _this;
|
|
63
|
+
}
|
|
64
|
+
return HeadlessNotSupportedError;
|
|
65
|
+
}(Error));
|
|
66
|
+
exports.HeadlessNotSupportedError = HeadlessNotSupportedError;
|
|
54
67
|
/** Write the user's settings to the disk, so the extension can load them. */
|
|
55
68
|
function writeVariables(_a) {
|
|
56
69
|
var apiKey = _a.apiKey, serverURL = _a.serverURL, sessionId = _a.sessionId, autoAnalyze = _a.autoAnalyze;
|
|
@@ -78,105 +91,35 @@ function writeVariables(_a) {
|
|
|
78
91
|
throw new Error("Unable to read session configuration: ".concat(error));
|
|
79
92
|
}
|
|
80
93
|
}
|
|
81
|
-
|
|
94
|
+
var variables = {
|
|
82
95
|
api_key: apiKey,
|
|
83
96
|
server_url: urlString,
|
|
84
97
|
session_id: sessionId,
|
|
85
98
|
auto_analyze: !!autoAnalyze
|
|
86
|
-
}
|
|
99
|
+
};
|
|
100
|
+
// If the repository is a git repository, add git info to the variables.
|
|
101
|
+
if (git.isRepository()) {
|
|
102
|
+
variables.git_branch = git.getBranchName();
|
|
103
|
+
variables.git_default_branch = git.getDefaultBranchName();
|
|
104
|
+
var info = git.getCommitInfo();
|
|
105
|
+
variables.git_commit_sha = info === null || info === void 0 ? void 0 : info.hash;
|
|
106
|
+
variables.git_commit_author = info === null || info === void 0 ? void 0 : info.author;
|
|
107
|
+
variables.git_commit_email = info === null || info === void 0 ? void 0 : info.email;
|
|
108
|
+
variables.git_commit_message = info === null || info === void 0 ? void 0 : info.message;
|
|
109
|
+
variables.git_url = git.getRemoteURL();
|
|
110
|
+
variables.git_is_dirty = git.isDirty();
|
|
111
|
+
}
|
|
112
|
+
fs_1.default.writeFileSync(exports.PATH_TO_EXTENSION_VARIABLES, JSON.stringify(variables));
|
|
87
113
|
}
|
|
88
114
|
exports.writeVariables = writeVariables;
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
var
|
|
92
|
-
|
|
93
|
-
fs_1.default.
|
|
115
|
+
/** Update the extension manifest file. */
|
|
116
|
+
function writeManifest(_a) {
|
|
117
|
+
var all_frames = _a.all_frames, exclude_globs = _a.exclude_globs;
|
|
118
|
+
var manifestPath = path_1.default.join(exports.PATH_TO_EXTENSION, 'manifest.json');
|
|
119
|
+
var manifest = JSON.parse(fs_1.default.readFileSync(manifestPath, 'utf-8'));
|
|
120
|
+
manifest.content_scripts[0].all_frames = all_frames;
|
|
121
|
+
manifest.content_scripts[0].exclude_globs = exclude_globs;
|
|
122
|
+
fs_1.default.writeFileSync(manifestPath, JSON.stringify(manifest, null, 2));
|
|
94
123
|
}
|
|
95
|
-
|
|
96
|
-
function Controller() {
|
|
97
|
-
}
|
|
98
|
-
Controller.prototype.start = function () {
|
|
99
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
100
|
-
return __generator(this, function (_a) {
|
|
101
|
-
switch (_a.label) {
|
|
102
|
-
case 0:
|
|
103
|
-
updateAutoAnalyze(true);
|
|
104
|
-
return [4 /*yield*/, this.executeScript(function () {
|
|
105
|
-
var event = new CustomEvent('axe:start-auto-mode');
|
|
106
|
-
window.dispatchEvent(event);
|
|
107
|
-
return Promise.resolve();
|
|
108
|
-
})];
|
|
109
|
-
case 1:
|
|
110
|
-
_a.sent();
|
|
111
|
-
return [2 /*return*/];
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
});
|
|
115
|
-
};
|
|
116
|
-
Controller.prototype.stop = function () {
|
|
117
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
118
|
-
return __generator(this, function (_a) {
|
|
119
|
-
switch (_a.label) {
|
|
120
|
-
case 0:
|
|
121
|
-
updateAutoAnalyze(false);
|
|
122
|
-
return [4 /*yield*/, this.executeScript(function () {
|
|
123
|
-
var event = new CustomEvent('axe:stop-auto-mode');
|
|
124
|
-
window.dispatchEvent(event);
|
|
125
|
-
return Promise.resolve();
|
|
126
|
-
})];
|
|
127
|
-
case 1:
|
|
128
|
-
_a.sent();
|
|
129
|
-
return [2 /*return*/];
|
|
130
|
-
}
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
};
|
|
134
|
-
Controller.prototype.analyze = function () {
|
|
135
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
136
|
-
return __generator(this, function (_a) {
|
|
137
|
-
switch (_a.label) {
|
|
138
|
-
case 0: return [4 /*yield*/, this.executeScript(function () {
|
|
139
|
-
return new Promise(function (resolve) {
|
|
140
|
-
var event = new CustomEvent('axe:manual-mode-analyze');
|
|
141
|
-
var fn = function () {
|
|
142
|
-
window.removeEventListener('axe:manual-mode-analyze-done', fn);
|
|
143
|
-
resolve();
|
|
144
|
-
};
|
|
145
|
-
window.addEventListener('axe:manual-mode-analyze-done', fn);
|
|
146
|
-
window.dispatchEvent(event);
|
|
147
|
-
});
|
|
148
|
-
})];
|
|
149
|
-
case 1:
|
|
150
|
-
_a.sent();
|
|
151
|
-
return [2 /*return*/];
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
});
|
|
155
|
-
};
|
|
156
|
-
/** Flush all axe-core results by sending them to the server. */
|
|
157
|
-
Controller.prototype.flush = function () {
|
|
158
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
159
|
-
return __generator(this, function (_a) {
|
|
160
|
-
switch (_a.label) {
|
|
161
|
-
case 0: return [4 /*yield*/, this.executeScript(function () {
|
|
162
|
-
return new Promise(function (resolve) {
|
|
163
|
-
var fn = function () {
|
|
164
|
-
window.removeEventListener('axe:flush-end', fn);
|
|
165
|
-
resolve();
|
|
166
|
-
};
|
|
167
|
-
window.addEventListener('axe:flush-end', fn);
|
|
168
|
-
var event = new CustomEvent('axe:flush-start');
|
|
169
|
-
window.dispatchEvent(event);
|
|
170
|
-
});
|
|
171
|
-
})];
|
|
172
|
-
case 1:
|
|
173
|
-
_a.sent();
|
|
174
|
-
return [2 /*return*/];
|
|
175
|
-
}
|
|
176
|
-
});
|
|
177
|
-
});
|
|
178
|
-
};
|
|
179
|
-
return Controller;
|
|
180
|
-
}());
|
|
181
|
-
exports.Controller = Controller;
|
|
124
|
+
exports.writeManifest = writeManifest;
|
|
182
125
|
//# sourceMappingURL=util.js.map
|
package/dist/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
package/dist/wdio.d.ts
CHANGED
package/dist/wdio.js
CHANGED
|
@@ -61,9 +61,18 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
61
61
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
65
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
66
|
+
};
|
|
64
67
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
65
68
|
exports.WdioController = exports.wdioTestRunner = exports.wdioConfig = void 0;
|
|
69
|
+
var uuid_1 = require("uuid");
|
|
70
|
+
var fs_1 = __importDefault(require("fs"));
|
|
66
71
|
var util_1 = require("./util");
|
|
72
|
+
var Controller_1 = __importDefault(require("./Controller"));
|
|
73
|
+
var noop = function () {
|
|
74
|
+
// Nothing.
|
|
75
|
+
};
|
|
67
76
|
/**
|
|
68
77
|
* Creates a WebDriverIO config that uses axe extension
|
|
69
78
|
*
|
|
@@ -77,7 +86,7 @@ function wdioConfig(arg) {
|
|
|
77
86
|
var chromeOpts = ((_b = (_a = arg.options) === null || _a === void 0 ? void 0 : _a.capabilities) === null || _b === void 0 ? void 0 : _b['goog:chromeOptions']) || {};
|
|
78
87
|
var args = chromeOpts.args || [];
|
|
79
88
|
if (args.includes('--headless')) {
|
|
80
|
-
throw new
|
|
89
|
+
throw new util_1.HeadlessNotSupportedError();
|
|
81
90
|
}
|
|
82
91
|
return __assign(__assign({}, arg.options), { capabilities: __assign(__assign({}, (_c = arg.options) === null || _c === void 0 ? void 0 : _c.capabilities), { browserName: 'chrome', 'goog:chromeOptions': {
|
|
83
92
|
args: util_1.extensionArgs.concat(args)
|
|
@@ -102,10 +111,37 @@ function wdioTestRunner(axe, config) {
|
|
|
102
111
|
chromeOpts.args = chromeOpts.args || [];
|
|
103
112
|
var args = chromeOpts.args;
|
|
104
113
|
if (args.includes('--headless')) {
|
|
105
|
-
throw new
|
|
114
|
+
throw new util_1.HeadlessNotSupportedError();
|
|
106
115
|
}
|
|
107
116
|
chromeOpts.args = util_1.extensionArgs.concat(args);
|
|
108
|
-
|
|
117
|
+
var _a = config.onPrepare, onPrepare = _a === void 0 ? noop : _a, _b = config.onComplete, onComplete = _b === void 0 ? noop : _b;
|
|
118
|
+
return __assign(__assign({}, config), { capabilities: capabilities,
|
|
119
|
+
// Write a static/persistent session to disk so that each worker uses the same session ID.
|
|
120
|
+
onPrepare: function () {
|
|
121
|
+
var params = [];
|
|
122
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
123
|
+
params[_i] = arguments[_i];
|
|
124
|
+
}
|
|
125
|
+
var sessionId = axe.sessionId || (0, uuid_1.v4)();
|
|
126
|
+
fs_1.default.writeFileSync(util_1.PATH_TO_SESSION_FILE, JSON.stringify({ id: sessionId }));
|
|
127
|
+
// @ts-expect-error TS is angry about calling this ¯\_(ツ)_/¯
|
|
128
|
+
return onPrepare.apply(void 0, params);
|
|
129
|
+
},
|
|
130
|
+
// Remove the file, preventing other sessions from reusing its ID.
|
|
131
|
+
onComplete: function () {
|
|
132
|
+
var params = [];
|
|
133
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
134
|
+
params[_i] = arguments[_i];
|
|
135
|
+
}
|
|
136
|
+
try {
|
|
137
|
+
fs_1.default.unlinkSync(util_1.PATH_TO_SESSION_FILE);
|
|
138
|
+
}
|
|
139
|
+
catch (_a) {
|
|
140
|
+
// Oh well.
|
|
141
|
+
}
|
|
142
|
+
// @ts-expect-error TS is angry about calling this ¯\_(ツ)_/¯
|
|
143
|
+
return onComplete.apply(void 0, params);
|
|
144
|
+
} });
|
|
109
145
|
}
|
|
110
146
|
exports.wdioTestRunner = wdioTestRunner;
|
|
111
147
|
var WdioController = /** @class */ (function (_super) {
|
|
@@ -131,6 +167,6 @@ var WdioController = /** @class */ (function (_super) {
|
|
|
131
167
|
});
|
|
132
168
|
};
|
|
133
169
|
return WdioController;
|
|
134
|
-
}(
|
|
170
|
+
}(Controller_1.default));
|
|
135
171
|
exports.WdioController = WdioController;
|
|
136
172
|
//# 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
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { Configuration, Controller } from './util';
|
|
2
1
|
import type { WebDriver } from 'selenium-webdriver';
|
|
3
2
|
import type { Options } from 'selenium-webdriver/chrome';
|
|
3
|
+
import { Configuration } from './util';
|
|
4
|
+
import Controller from './Controller';
|
|
4
5
|
interface WebDriverArgs extends Configuration {
|
|
5
6
|
options?: Options;
|
|
6
7
|
}
|
package/dist/webdriver.js
CHANGED
|
@@ -50,9 +50,13 @@ 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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
54
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
55
|
+
};
|
|
53
56
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
57
|
exports.WebdriverController = exports.webdriverConfig = void 0;
|
|
55
58
|
var util_1 = require("./util");
|
|
59
|
+
var Controller_1 = __importDefault(require("./Controller"));
|
|
56
60
|
/**
|
|
57
61
|
* Creates a Selenium config that uses axe extension
|
|
58
62
|
*
|
|
@@ -70,7 +74,7 @@ function webdriverConfig(arg) {
|
|
|
70
74
|
// Note: fragile, but selenium does not give us a real way to check this
|
|
71
75
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
72
76
|
if ((_b = (_a = opts === null || opts === void 0 ? void 0 : opts.options_) === null || _a === void 0 ? void 0 : _a.args) === null || _b === void 0 ? void 0 : _b.includes('headless')) {
|
|
73
|
-
throw new
|
|
77
|
+
throw new util_1.HeadlessNotSupportedError();
|
|
74
78
|
}
|
|
75
79
|
return opts;
|
|
76
80
|
}
|
|
@@ -98,6 +102,6 @@ var WebdriverController = /** @class */ (function (_super) {
|
|
|
98
102
|
});
|
|
99
103
|
};
|
|
100
104
|
return WebdriverController;
|
|
101
|
-
}(
|
|
105
|
+
}(Controller_1.default));
|
|
102
106
|
exports.WebdriverController = WebdriverController;
|
|
103
107
|
//# sourceMappingURL=webdriver.js.map
|
package/dist/webdriver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../src/webdriver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"webdriver.js","sourceRoot":"","sources":["../src/webdriver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAKe;AACf,4DAAqC;AAMrC;;;;GAIG;AAEH,SAAgB,eAAe,CAAC,GAAkB;;IAChD,gHAAgH;IAChH,8DAA8D;IAC9D,IAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAA;IAE3C,IAAA,GAAG,GAAc,GAAG,IAAjB,EAAE,OAAO,GAAK,GAAG,QAAR,CAAQ;IAC5B,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAA;IAEnB,IAAM,IAAI,GAAY,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAA;IAC9D,IAAI,CAAC,YAAY,OAAjB,IAAI,EAAiB,oBAAa,EAAC;IAEnC,wEAAwE;IACxE,8DAA8D;IAC9D,IAAI,MAAA,MAAC,IAAY,aAAZ,IAAI,uBAAJ,IAAI,CAAU,QAAQ,0CAAE,IAAI,0CAAE,QAAQ,CAAC,UAAU,CAAC,EAAE;QACvD,MAAM,IAAI,gCAAyB,EAAE,CAAA;KACtC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAlBD,0CAkBC;AAED;IAAyC,uCAAU;IAGjD,6BAAY,MAAiB;QAA7B,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAA;;IACtB,CAAC;IAEe,2CAAa,GAA7B,UACE,EAAkC;;;;;;wBAE5B,MAAM,GAAG,4GAGH,EAAE,sCAEb,CAAA;wBACD,qBAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAA;;wBAA5C,SAA4C,CAAA;;;;;KAC7C;IACH,0BAAC;AAAD,CAAC,AAnBD,CAAyC,oBAAU,GAmBlD;AAnBY,kDAAmB"}
|