@applitools/eyes-webdriverio 5.32.12 → 5.34.2
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/CHANGELOG.md +26 -2
- package/dist/api.js +2 -2
- package/dist/index.js +0 -9
- package/dist/legacy.js +1 -188
- package/dist/service.js +9 -8
- package/dist/spec-driver.js +3 -393
- package/package.json +69 -37
- package/types/index.d.ts +1377 -2024
- package/types/service.d.ts +31 -0
- package/types/v5-async.d.ts +1 -0
- package/types/v5-sync.d.ts +1 -0
- package/types/v6.d.ts +1 -0
- package/types/v7.d.ts +1 -0
- package/types/v5/async.d.ts +0 -22
- package/types/v5/index.d.ts +0 -1
- package/types/v5/sync.d.ts +0 -22
- package/types/v6/index.d.ts +0 -9
- package/types/v7/index.d.ts +0 -9
package/dist/spec-driver.js
CHANGED
|
@@ -6,398 +6,8 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
6
6
|
if (k2 === undefined) k2 = k;
|
|
7
7
|
o[k2] = m[k];
|
|
8
8
|
}));
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
9
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
11
|
};
|
|
21
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
|
|
23
|
-
const utils = __importStar(require("@applitools/utils"));
|
|
24
|
-
const legacy = __importStar(require("./legacy"));
|
|
25
|
-
const LEGACY_ELEMENT_ID = 'ELEMENT';
|
|
26
|
-
const ELEMENT_ID = 'element-6066-11e4-a52e-4f735466cecf';
|
|
27
|
-
function extractElementId(element) {
|
|
28
|
-
if (utils.types.has(element, 'elementId'))
|
|
29
|
-
return element.elementId;
|
|
30
|
-
else if (utils.types.has(element, ELEMENT_ID))
|
|
31
|
-
return element[ELEMENT_ID];
|
|
32
|
-
else if (utils.types.has(element, LEGACY_ELEMENT_ID))
|
|
33
|
-
return element[LEGACY_ELEMENT_ID];
|
|
34
|
-
}
|
|
35
|
-
function transformArgument(arg) {
|
|
36
|
-
if (!arg)
|
|
37
|
-
return [];
|
|
38
|
-
const elements = [];
|
|
39
|
-
const argWithElementMarkers = transform(arg);
|
|
40
|
-
return [argWithElementMarkers, ...elements];
|
|
41
|
-
function transform(arg) {
|
|
42
|
-
if (isElement(arg)) {
|
|
43
|
-
elements.push(arg);
|
|
44
|
-
return { isElement: true };
|
|
45
|
-
}
|
|
46
|
-
else if (utils.types.isArray(arg)) {
|
|
47
|
-
return arg.map(transform);
|
|
48
|
-
}
|
|
49
|
-
else if (utils.types.isObject(arg)) {
|
|
50
|
-
return Object.entries(arg).reduce((object, [key, value]) => {
|
|
51
|
-
return Object.assign(object, { [key]: transform(value) });
|
|
52
|
-
}, {});
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
return arg;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
function scriptRunner(script, arg, ...elements) {
|
|
60
|
-
const func = new Function(script.startsWith('function') ? `return (${script}).apply(null, arguments)` : script);
|
|
61
|
-
return func(transform(arg));
|
|
62
|
-
function transform(arg) {
|
|
63
|
-
if (!arg) {
|
|
64
|
-
return arg;
|
|
65
|
-
}
|
|
66
|
-
else if (arg.isElement) {
|
|
67
|
-
return elements.shift();
|
|
68
|
-
}
|
|
69
|
-
else if (Array.isArray(arg)) {
|
|
70
|
-
return arg.map(transform);
|
|
71
|
-
}
|
|
72
|
-
else if (typeof arg === 'object') {
|
|
73
|
-
return Object.entries(arg).reduce((object, [key, value]) => {
|
|
74
|
-
return Object.assign(object, { [key]: transform(value) });
|
|
75
|
-
}, {});
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
return arg;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
function isDriver(browser) {
|
|
83
|
-
if (!browser)
|
|
84
|
-
return false;
|
|
85
|
-
return browser.constructor.name === 'Browser';
|
|
86
|
-
}
|
|
87
|
-
exports.isDriver = isDriver;
|
|
88
|
-
function isElement(element) {
|
|
89
|
-
if (!element)
|
|
90
|
-
return false;
|
|
91
|
-
return Boolean(element.elementId || element[ELEMENT_ID] || element[LEGACY_ELEMENT_ID]);
|
|
92
|
-
}
|
|
93
|
-
exports.isElement = isElement;
|
|
94
|
-
function isSelector(selector) {
|
|
95
|
-
return utils.types.isString(selector) || utils.types.isFunction(selector) || selector instanceof legacy.By;
|
|
96
|
-
}
|
|
97
|
-
exports.isSelector = isSelector;
|
|
98
|
-
function transformElement(element) {
|
|
99
|
-
const elementId = extractElementId(element);
|
|
100
|
-
return { [ELEMENT_ID]: elementId, [LEGACY_ELEMENT_ID]: elementId };
|
|
101
|
-
}
|
|
102
|
-
exports.transformElement = transformElement;
|
|
103
|
-
function transformSelector(selector) {
|
|
104
|
-
if (utils.types.has(selector, 'selector')) {
|
|
105
|
-
if (!utils.types.has(selector, 'type'))
|
|
106
|
-
return selector.selector;
|
|
107
|
-
if (selector.type === 'css')
|
|
108
|
-
return `css selector:${selector.selector}`;
|
|
109
|
-
else
|
|
110
|
-
return `${selector.type}:${selector.selector}`;
|
|
111
|
-
}
|
|
112
|
-
return selector;
|
|
113
|
-
}
|
|
114
|
-
exports.transformSelector = transformSelector;
|
|
115
|
-
function extractSelector(element) {
|
|
116
|
-
return element.selector;
|
|
117
|
-
}
|
|
118
|
-
exports.extractSelector = extractSelector;
|
|
119
|
-
function isStaleElementError(error) {
|
|
120
|
-
if (!error)
|
|
121
|
-
return false;
|
|
122
|
-
const errOrResult = error.originalError || error;
|
|
123
|
-
return errOrResult instanceof Error && errOrResult.name === 'stale element reference';
|
|
124
|
-
}
|
|
125
|
-
exports.isStaleElementError = isStaleElementError;
|
|
126
|
-
async function isEqualElements(_browser, element1, element2) {
|
|
127
|
-
if (!element1 || !element2)
|
|
128
|
-
return false;
|
|
129
|
-
const elementId1 = extractElementId(element1);
|
|
130
|
-
const elementId2 = extractElementId(element2);
|
|
131
|
-
return elementId1 === elementId2;
|
|
132
|
-
}
|
|
133
|
-
exports.isEqualElements = isEqualElements;
|
|
134
|
-
async function executeScript(browser, script, arg) {
|
|
135
|
-
if (browser.isDevTools) {
|
|
136
|
-
script = utils.types.isString(script) ? script : script.toString();
|
|
137
|
-
return browser.execute(scriptRunner, script, ...transformArgument(arg));
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
return browser.execute(script, arg);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
exports.executeScript = executeScript;
|
|
144
|
-
async function mainContext(browser) {
|
|
145
|
-
await browser.switchToFrame(null);
|
|
146
|
-
return browser;
|
|
147
|
-
}
|
|
148
|
-
exports.mainContext = mainContext;
|
|
149
|
-
async function parentContext(browser) {
|
|
150
|
-
await browser.switchToParentFrame();
|
|
151
|
-
return browser;
|
|
152
|
-
}
|
|
153
|
-
exports.parentContext = parentContext;
|
|
154
|
-
async function childContext(browser, element) {
|
|
155
|
-
await browser.switchToFrame(element);
|
|
156
|
-
return browser;
|
|
157
|
-
}
|
|
158
|
-
exports.childContext = childContext;
|
|
159
|
-
async function findElement(browser, selector, parent) {
|
|
160
|
-
selector = selector instanceof legacy.By ? selector.toString() : selector;
|
|
161
|
-
const root = parent ? await browser.$(parent) : browser;
|
|
162
|
-
const element = await root.$(selector);
|
|
163
|
-
return !utils.types.has(element, 'error') ? element : null;
|
|
164
|
-
}
|
|
165
|
-
exports.findElement = findElement;
|
|
166
|
-
async function findElements(browser, selector, parent) {
|
|
167
|
-
selector = selector instanceof legacy.By ? selector.toString() : selector;
|
|
168
|
-
const root = parent ? await browser.$(parent) : browser;
|
|
169
|
-
const elements = await root.$$(selector);
|
|
170
|
-
return Array.from(elements);
|
|
171
|
-
}
|
|
172
|
-
exports.findElements = findElements;
|
|
173
|
-
async function getWindowSize(browser) {
|
|
174
|
-
if (utils.types.isFunction(browser.getWindowRect)) {
|
|
175
|
-
const rect = await browser.getWindowRect();
|
|
176
|
-
return { width: rect.width, height: rect.height };
|
|
177
|
-
}
|
|
178
|
-
else {
|
|
179
|
-
return browser.getWindowSize();
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
exports.getWindowSize = getWindowSize;
|
|
183
|
-
async function setWindowSize(browser, size) {
|
|
184
|
-
if (utils.types.isFunction(browser.setWindowRect)) {
|
|
185
|
-
await browser.setWindowRect(0, 0, size.width, size.height);
|
|
186
|
-
}
|
|
187
|
-
else {
|
|
188
|
-
await browser.setWindowPosition(0, 0);
|
|
189
|
-
await browser.setWindowSize(size.width, size.height);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
exports.setWindowSize = setWindowSize;
|
|
193
|
-
async function getDriverInfo(browser) {
|
|
194
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
195
|
-
const capabilities = browser.capabilities;
|
|
196
|
-
const info = {
|
|
197
|
-
sessionId: browser.sessionId,
|
|
198
|
-
isMobile: browser.isMobile,
|
|
199
|
-
isNative: browser.isMobile && !capabilities.browserName,
|
|
200
|
-
deviceName: (_b = (_a = capabilities.desired) === null || _a === void 0 ? void 0 : _a.deviceName) !== null && _b !== void 0 ? _b : capabilities.deviceName,
|
|
201
|
-
platformName: (_d = (_c = capabilities.platformName) !== null && _c !== void 0 ? _c : capabilities.platform) !== null && _d !== void 0 ? _d : (_e = capabilities.desired) === null || _e === void 0 ? void 0 : _e.platformName,
|
|
202
|
-
platformVersion: capabilities.platformVersion,
|
|
203
|
-
browserName: (_f = capabilities.browserName) !== null && _f !== void 0 ? _f : (_g = capabilities.desired) === null || _g === void 0 ? void 0 : _g.browserName,
|
|
204
|
-
browserVersion: (_h = capabilities.browserVersion) !== null && _h !== void 0 ? _h : capabilities.version,
|
|
205
|
-
pixelRatio: capabilities.pixelRatio,
|
|
206
|
-
};
|
|
207
|
-
if (info.isNative) {
|
|
208
|
-
const capabilities = utils.types.has(browser.capabilities, ['pixelRatio', 'viewportRect', 'statBarHeight'])
|
|
209
|
-
? browser.capabilities
|
|
210
|
-
: await browser.getSession();
|
|
211
|
-
info.pixelRatio = capabilities.pixelRatio;
|
|
212
|
-
try {
|
|
213
|
-
const { statusBar, navigationBar } = (await browser.getSystemBars());
|
|
214
|
-
info.statusBarHeight = statusBar.visible ? statusBar.height : 0;
|
|
215
|
-
info.navigationBarHeight = navigationBar.visible ? navigationBar.height : 0;
|
|
216
|
-
}
|
|
217
|
-
catch (err) {
|
|
218
|
-
info.statusBarHeight = (_l = (_j = capabilities.statBarHeight) !== null && _j !== void 0 ? _j : (_k = capabilities.viewportRect) === null || _k === void 0 ? void 0 : _k.top) !== null && _l !== void 0 ? _l : 0;
|
|
219
|
-
info.navigationBarHeight = 0;
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
return info;
|
|
223
|
-
}
|
|
224
|
-
exports.getDriverInfo = getDriverInfo;
|
|
225
|
-
async function getTitle(browser) {
|
|
226
|
-
return browser.getTitle();
|
|
227
|
-
}
|
|
228
|
-
exports.getTitle = getTitle;
|
|
229
|
-
async function getUrl(browser) {
|
|
230
|
-
return browser.getUrl();
|
|
231
|
-
}
|
|
232
|
-
exports.getUrl = getUrl;
|
|
233
|
-
async function visit(browser, url) {
|
|
234
|
-
await browser.url(url);
|
|
235
|
-
}
|
|
236
|
-
exports.visit = visit;
|
|
237
|
-
async function takeScreenshot(browser) {
|
|
238
|
-
if (browser.isDevTools) {
|
|
239
|
-
const puppeteer = await browser.getPuppeteer();
|
|
240
|
-
const [page] = await puppeteer.pages();
|
|
241
|
-
const scr = await page._client.send('Page.captureScreenshot');
|
|
242
|
-
return scr.data;
|
|
243
|
-
}
|
|
244
|
-
return browser.takeScreenshot();
|
|
245
|
-
}
|
|
246
|
-
exports.takeScreenshot = takeScreenshot;
|
|
247
|
-
async function click(browser, element) {
|
|
248
|
-
if (isSelector(element))
|
|
249
|
-
element = await findElement(browser, element);
|
|
250
|
-
const extendedElement = await browser.$(element);
|
|
251
|
-
await extendedElement.click();
|
|
252
|
-
}
|
|
253
|
-
exports.click = click;
|
|
254
|
-
async function type(browser, element, keys) {
|
|
255
|
-
if (isSelector(element))
|
|
256
|
-
element = await findElement(browser, element);
|
|
257
|
-
const extendedElement = await browser.$(element);
|
|
258
|
-
await extendedElement.setValue(keys);
|
|
259
|
-
}
|
|
260
|
-
exports.type = type;
|
|
261
|
-
async function hover(browser, element) {
|
|
262
|
-
if (isSelector(element))
|
|
263
|
-
element = await findElement(browser, element);
|
|
264
|
-
if (browser.isDevTools) {
|
|
265
|
-
const { x, y, width, height } = await browser.execute((element) => {
|
|
266
|
-
const rect = element.getBoundingClientRect();
|
|
267
|
-
return { x: rect.x, y: rect.y, width: rect.width, height: rect.height };
|
|
268
|
-
}, element);
|
|
269
|
-
const puppeteer = await browser.getPuppeteer();
|
|
270
|
-
const [page] = await puppeteer.pages();
|
|
271
|
-
await page.mouse.move(x + width / 2, y + height / 2);
|
|
272
|
-
}
|
|
273
|
-
else {
|
|
274
|
-
const extendedElement = await browser.$(element);
|
|
275
|
-
await extendedElement.moveTo();
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
exports.hover = hover;
|
|
279
|
-
async function scrollIntoView(browser, element, align = false) {
|
|
280
|
-
if (isSelector(element))
|
|
281
|
-
element = await findElement(browser, element);
|
|
282
|
-
const extendedElement = await browser.$(element);
|
|
283
|
-
await extendedElement.scrollIntoView(align);
|
|
284
|
-
}
|
|
285
|
-
exports.scrollIntoView = scrollIntoView;
|
|
286
|
-
async function waitUntilDisplayed(browser, selector, timeout) {
|
|
287
|
-
const element = await findElement(browser, selector);
|
|
288
|
-
if (process.env.APPLITOOLS_WEBDRIVERIO_MAJOR_VERSION === '5') {
|
|
289
|
-
await element.waitForDisplayed(timeout);
|
|
290
|
-
}
|
|
291
|
-
else {
|
|
292
|
-
await element.waitForDisplayed({ timeout });
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
exports.waitUntilDisplayed = waitUntilDisplayed;
|
|
296
|
-
async function getOrientation(browser) {
|
|
297
|
-
const orientation = await browser.getOrientation();
|
|
298
|
-
return orientation.toLowerCase();
|
|
299
|
-
}
|
|
300
|
-
exports.getOrientation = getOrientation;
|
|
301
|
-
async function getElementRegion(browser, element) {
|
|
302
|
-
const extendedElement = await browser.$(element);
|
|
303
|
-
if (utils.types.isFunction(extendedElement, 'getRect')) {
|
|
304
|
-
return extendedElement.getRect();
|
|
305
|
-
}
|
|
306
|
-
else {
|
|
307
|
-
const region = { x: 0, y: 0, width: 0, height: 0 };
|
|
308
|
-
if (utils.types.isFunction(extendedElement.getLocation)) {
|
|
309
|
-
const location = await extendedElement.getLocation();
|
|
310
|
-
region.x = location.x;
|
|
311
|
-
region.y = location.y;
|
|
312
|
-
}
|
|
313
|
-
if (utils.types.isFunction(extendedElement.getSize)) {
|
|
314
|
-
const size = await extendedElement.getSize();
|
|
315
|
-
region.width = size.width;
|
|
316
|
-
region.height = size.height;
|
|
317
|
-
}
|
|
318
|
-
return region;
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
exports.getElementRegion = getElementRegion;
|
|
322
|
-
async function getElementAttribute(browser, element, attr) {
|
|
323
|
-
return browser.getElementAttribute(extractElementId(element), attr);
|
|
324
|
-
}
|
|
325
|
-
exports.getElementAttribute = getElementAttribute;
|
|
326
|
-
async function getElementText(browser, element) {
|
|
327
|
-
const extendedElement = await browser.$(element);
|
|
328
|
-
return extendedElement.getText();
|
|
329
|
-
}
|
|
330
|
-
exports.getElementText = getElementText;
|
|
331
|
-
async function performAction(browser, steps) {
|
|
332
|
-
return browser.touchAction(steps);
|
|
333
|
-
}
|
|
334
|
-
exports.performAction = performAction;
|
|
335
|
-
const browserOptionsNames = {
|
|
336
|
-
chrome: 'goog:chromeOptions',
|
|
337
|
-
firefox: 'moz:firefoxOptions',
|
|
338
|
-
};
|
|
339
|
-
async function build(env) {
|
|
340
|
-
const webdriverio = require('webdriverio');
|
|
341
|
-
const chromedriver = require('chromedriver');
|
|
342
|
-
const parseEnv = require('@applitools/test-utils/src/parse-env');
|
|
343
|
-
const { protocol, browser = '', capabilities, url, attach, proxy, configurable = true, args = [], headless, logLevel = 'silent', } = parseEnv(env, process.env.APPLITOOLS_WEBDRIVERIO_PROTOCOL);
|
|
344
|
-
const options = {
|
|
345
|
-
capabilities: Object.assign({ browserName: browser }, capabilities),
|
|
346
|
-
logLevel,
|
|
347
|
-
};
|
|
348
|
-
if (browser === 'chrome' && protocol === 'cdp') {
|
|
349
|
-
options.automationProtocol = 'devtools';
|
|
350
|
-
options.capabilities[browserOptionsNames.chrome] = { args };
|
|
351
|
-
options.capabilities['wdio:devtoolsOptions'] = {
|
|
352
|
-
headless,
|
|
353
|
-
ignoreDefaultArgs: ['--hide-scrollbars'],
|
|
354
|
-
};
|
|
355
|
-
}
|
|
356
|
-
else if (protocol === 'wd') {
|
|
357
|
-
options.automationProtocol = 'webdriver';
|
|
358
|
-
options.protocol = url.protocol ? url.protocol.replace(/:$/, '') : undefined;
|
|
359
|
-
options.hostname = url.hostname;
|
|
360
|
-
if (url.port)
|
|
361
|
-
options.port = Number(url.port);
|
|
362
|
-
else if (options.protocol === 'http')
|
|
363
|
-
options.port = 80;
|
|
364
|
-
else if (options.protocol === 'https')
|
|
365
|
-
options.port = 443;
|
|
366
|
-
options.path = url.pathname;
|
|
367
|
-
if (configurable) {
|
|
368
|
-
if (browser === 'chrome' && attach) {
|
|
369
|
-
await chromedriver.start(['--port=9515'], true);
|
|
370
|
-
options.protocol = 'http';
|
|
371
|
-
options.hostname = 'localhost';
|
|
372
|
-
options.port = 9515;
|
|
373
|
-
options.path = '/';
|
|
374
|
-
}
|
|
375
|
-
const browserOptionsName = browserOptionsNames[browser || options.capabilities.browserName];
|
|
376
|
-
if (browserOptionsName) {
|
|
377
|
-
const browserOptions = options.capabilities[browserOptionsName] || {};
|
|
378
|
-
browserOptions.args = [...(browserOptions.args || []), ...args];
|
|
379
|
-
if (headless)
|
|
380
|
-
browserOptions.args.push('headless');
|
|
381
|
-
if (attach) {
|
|
382
|
-
browserOptions.debuggerAddress = attach === true ? 'localhost:9222' : attach;
|
|
383
|
-
if (browser !== 'firefox')
|
|
384
|
-
browserOptions.w3c = false;
|
|
385
|
-
}
|
|
386
|
-
options.capabilities[browserOptionsName] = browserOptions;
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
}
|
|
390
|
-
if (proxy) {
|
|
391
|
-
options.capabilities.proxy = {
|
|
392
|
-
proxyType: 'manual',
|
|
393
|
-
httpProxy: proxy.http || proxy.server,
|
|
394
|
-
sslProxy: proxy.https || proxy.server,
|
|
395
|
-
ftpProxy: proxy.ftp,
|
|
396
|
-
noProxy: proxy.bypass.join(','),
|
|
397
|
-
};
|
|
398
|
-
}
|
|
399
|
-
const driver = await webdriverio.remote(options);
|
|
400
|
-
return [driver, () => driver.deleteSession().then(() => chromedriver.stop())];
|
|
401
|
-
}
|
|
402
|
-
exports.build = build;
|
|
403
|
-
exports.wrapDriver = legacy.wrapDriver;
|
|
13
|
+
__exportStar(require("@applitools/spec-driver-webdriverio"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/eyes-webdriverio",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.34.2",
|
|
4
4
|
"description": "Applitools Eyes SDK for WebdriverIO",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eyes-webdriverio",
|
|
@@ -19,7 +19,8 @@
|
|
|
19
19
|
},
|
|
20
20
|
"repository": {
|
|
21
21
|
"type": "git",
|
|
22
|
-
"url": "git@github.com:applitools/eyes.sdk.javascript1.git"
|
|
22
|
+
"url": "git@github.com:applitools/eyes.sdk.javascript1.git",
|
|
23
|
+
"directory": "packages/eyes-webdriverio-5"
|
|
23
24
|
},
|
|
24
25
|
"license": "SEE LICENSE IN LICENSE",
|
|
25
26
|
"author": {
|
|
@@ -28,27 +29,63 @@
|
|
|
28
29
|
},
|
|
29
30
|
"main": "./dist/index.js",
|
|
30
31
|
"types": "./types/index.d.ts",
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
"exports": {
|
|
33
|
+
".": {
|
|
34
|
+
"default": "./dist/index.js",
|
|
35
|
+
"types": "./types/index.d.ts"
|
|
36
|
+
},
|
|
37
|
+
"./service": {
|
|
38
|
+
"default": "./dist/service.js",
|
|
39
|
+
"types": "./types/service.d.ts"
|
|
40
|
+
},
|
|
41
|
+
"./v7": {
|
|
42
|
+
"types": "./types/v7.d.ts"
|
|
43
|
+
},
|
|
44
|
+
"./v6": {
|
|
45
|
+
"types": "./types/v6.d.ts"
|
|
46
|
+
},
|
|
47
|
+
"./v5": {
|
|
48
|
+
"types": "./types/v5-async.d.ts"
|
|
49
|
+
},
|
|
50
|
+
"./v5/async": {
|
|
51
|
+
"types": "./types/v5-async.d.ts"
|
|
52
|
+
},
|
|
53
|
+
"./v5/sync": {
|
|
54
|
+
"types": "./types/v5-sync.d.ts"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"typesVersions": {
|
|
58
|
+
"*": {
|
|
59
|
+
"service": [
|
|
60
|
+
"./types/service.d.ts"
|
|
61
|
+
],
|
|
62
|
+
"v7": [
|
|
63
|
+
"./types/v7.d.ts"
|
|
64
|
+
],
|
|
65
|
+
"v6": [
|
|
66
|
+
"./types/v6.d.ts"
|
|
67
|
+
],
|
|
68
|
+
"v5": [
|
|
69
|
+
"./types/v5-async.d.ts"
|
|
70
|
+
],
|
|
71
|
+
"v5/async": [
|
|
72
|
+
"./types/v5-async.d.ts"
|
|
73
|
+
],
|
|
74
|
+
"v5/sync": [
|
|
75
|
+
"./types/v5-sync.d.ts"
|
|
76
|
+
]
|
|
77
|
+
}
|
|
35
78
|
},
|
|
36
79
|
"files": [
|
|
37
80
|
"dist",
|
|
38
81
|
"types"
|
|
39
82
|
],
|
|
40
83
|
"scripts": {
|
|
41
|
-
"lint": "eslint '**/*.
|
|
42
|
-
"build": "
|
|
43
|
-
"build:tsconfig": "tsconfig.js --once",
|
|
44
|
-
"build:tsconfig:6": "APPLITOOLS_WEBDRIVERIO_MAJOR_VERSION=6 tsconfig.js --once",
|
|
45
|
-
"build:tsconfig:5": "APPLITOOLS_WEBDRIVERIO_MAJOR_VERSION=5 tsconfig.js --once",
|
|
46
|
-
"build:dist": "tsc",
|
|
47
|
-
"build:types": "api-extractor ./src/index.ts --out ./types/index.d.ts --external-globals WebdriverIO Applitools",
|
|
84
|
+
"lint": "eslint '**/*.ts'",
|
|
85
|
+
"build": "ttsc --project tsconfig$([ ! -z $APPLITOOLS_WEBDRIVERIO_MAJOR_VERSION ] && echo .v$APPLITOOLS_WEBDRIVERIO_MAJOR_VERSION).json",
|
|
48
86
|
"generate:tests": "coverage-tests generate https://raw.githubusercontent.com/applitools/sdk.coverage.tests/master/js/config.js --name 'eyes.webdriverio.javascript5'",
|
|
49
|
-
"test": "yarn
|
|
50
|
-
"test:
|
|
51
|
-
"test:service": "mocha ./test/service/unit/*.spec.js && wdio \"test/service/wdio.conf.js\" && wdio \"test/service/no-config/wdio.no-config.conf.js\" && wdio \"test/service/vg/wdio.vg.conf.js\"",
|
|
87
|
+
"test": "yarn test:service && yarn test:coverage",
|
|
88
|
+
"test:service": "mocha ./test/service/unit/*.spec.js && wdio run ./test/service/wdio.conf.js && wdio run ./test/service/no-config/wdio.no-config.conf.js && wdio run ./test/service/vg/wdio.vg.conf.js",
|
|
52
89
|
"test:coverage": "yarn generate:tests && APPLITOOLS_BATCH_NAME='JS Coverage Tests: eyes-webdriverio-5' APPLITOOLS_BATCH_ID=$(uuidgen) XUNIT_FILE=coverage-test-report.xml mocha --config .mocharc.cvg.js",
|
|
53
90
|
"test:coverage:wd": "APPLITOOLS_WEBDRIVERIO_PROTOCOL=wd yarn test:coverage",
|
|
54
91
|
"test:coverage:cdp": "APPLITOOLS_WEBDRIVERIO_PROTOCOL=cdp yarn test:coverage",
|
|
@@ -57,7 +94,7 @@
|
|
|
57
94
|
"docker:setup": "node ../scripts/scripts/generate-docker-compose-config.js && docker-compose up -d",
|
|
58
95
|
"docker:teardown": "docker-compose down",
|
|
59
96
|
"deps": "bongo deps",
|
|
60
|
-
"gh:test": "gh workflow run test.yml --ref $(git rev-parse --abbrev-ref HEAD) -f packages='wdio wdio+cdp wdio@6 wdio@5' -f links='eyes-sdk-core eyes-api
|
|
97
|
+
"gh:test": "gh workflow run test.yml --ref $(git rev-parse --abbrev-ref HEAD) -f packages='wdio wdio+cdp wdio@6 wdio@5' -f links='types test-utils sdk-shared eyes-sdk-core visual-grid-client eyes-api spec-driver-webdriverio utils driver snippets screenshoter' -f linking-depth=3",
|
|
61
98
|
"gh:publish": "gh workflow run publish.yml --ref $(git rev-parse --abbrev-ref HEAD) -f packages='wdio'",
|
|
62
99
|
"preversion": "bongo preversion && yarn build",
|
|
63
100
|
"version": "bongo version",
|
|
@@ -69,30 +106,26 @@
|
|
|
69
106
|
}
|
|
70
107
|
},
|
|
71
108
|
"dependencies": {
|
|
72
|
-
"@applitools/
|
|
73
|
-
"@applitools/eyes-
|
|
74
|
-
"@applitools/
|
|
75
|
-
"@applitools/
|
|
76
|
-
"@applitools/visual-grid-client": "15.8.37"
|
|
109
|
+
"@applitools/eyes-api": "1.1.6",
|
|
110
|
+
"@applitools/eyes-sdk-core": "12.24.2",
|
|
111
|
+
"@applitools/spec-driver-webdriverio": "1.2.1",
|
|
112
|
+
"@applitools/visual-grid-client": "15.8.47"
|
|
77
113
|
},
|
|
78
114
|
"devDependencies": {
|
|
79
|
-
"@applitools/api-extractor": "1.
|
|
115
|
+
"@applitools/api-extractor": "1.2.3",
|
|
80
116
|
"@applitools/scripts": "1.0.1",
|
|
81
|
-
"@applitools/sdk-coverage-tests": "^2.3.
|
|
82
|
-
"@applitools/sdk-release-kit": "^0.13.
|
|
83
|
-
"@applitools/sdk-shared": "0.9.
|
|
117
|
+
"@applitools/sdk-coverage-tests": "^2.3.16",
|
|
118
|
+
"@applitools/sdk-release-kit": "^0.13.4",
|
|
119
|
+
"@applitools/sdk-shared": "0.9.9",
|
|
84
120
|
"@applitools/test-utils": "1.0.9",
|
|
85
121
|
"@types/mocha": "^9.0.0",
|
|
86
122
|
"@typescript-eslint/eslint-plugin": "^4.15.1",
|
|
87
123
|
"@typescript-eslint/parser": "^4.15.1",
|
|
88
|
-
"@wdio/cli": "
|
|
89
|
-
"@wdio/dot-reporter": "
|
|
90
|
-
"@wdio/local-runner": "
|
|
91
|
-
"@wdio/mocha-framework": "
|
|
92
|
-
"
|
|
93
|
-
"chai": "^4.2.0",
|
|
94
|
-
"chai-as-promised": "^7.1.1",
|
|
95
|
-
"chromedriver": "^92.0.1",
|
|
124
|
+
"@wdio/cli": "^7.16.5",
|
|
125
|
+
"@wdio/dot-reporter": "^7.16.4",
|
|
126
|
+
"@wdio/local-runner": "^7.16.5",
|
|
127
|
+
"@wdio/mocha-framework": "^7.16.4",
|
|
128
|
+
"chromedriver": "^95.0.0",
|
|
96
129
|
"eslint": "^7.9.0",
|
|
97
130
|
"eslint-config-prettier": "^7.2.0",
|
|
98
131
|
"eslint-plugin-mocha-no-only": "^1.1.1",
|
|
@@ -102,11 +135,10 @@
|
|
|
102
135
|
"husky": "^4.3.8",
|
|
103
136
|
"mocha": "^8.0.1",
|
|
104
137
|
"prettier": "^2.1.2",
|
|
105
|
-
"shared-examples-for": "^0.1.3",
|
|
106
138
|
"spec-xunit-file": "0.0.1-3",
|
|
107
139
|
"ts-node": "^10.2.1",
|
|
108
|
-
"
|
|
109
|
-
"typescript": "^4.1
|
|
140
|
+
"ttypescript": "^1.5.12",
|
|
141
|
+
"typescript": "^4.5.1-rc",
|
|
110
142
|
"webdriverio": "^7.5.2"
|
|
111
143
|
},
|
|
112
144
|
"peerDependencies": {
|