@applitools/core 1.1.4 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/automation/get-viewport-size.js +1 -1
  2. package/dist/automation/set-viewport-size.js +1 -1
  3. package/dist/automation/types.js +17 -0
  4. package/dist/check-and-close.js +5 -1
  5. package/dist/check.js +1 -1
  6. package/dist/classic/types.js +17 -0
  7. package/dist/index.js +1 -0
  8. package/dist/troubleshoot/check-network.js +1 -0
  9. package/dist/types.js +17 -0
  10. package/dist/ufg/check.js +18 -16
  11. package/dist/ufg/types.js +17 -0
  12. package/package.json +18 -15
  13. package/types/automation/get-viewport-size.d.ts +2 -2
  14. package/types/automation/locate.d.ts +4 -4
  15. package/types/automation/set-viewport-size.d.ts +2 -1
  16. package/types/automation/types.d.ts +84 -0
  17. package/types/automation/utils/take-screenshot.d.ts +2 -2
  18. package/types/check-and-close.d.ts +3 -3
  19. package/types/check.d.ts +4 -4
  20. package/types/classic/check-and-close.d.ts +3 -3
  21. package/types/classic/check.d.ts +3 -3
  22. package/types/classic/core.d.ts +3 -3
  23. package/types/classic/extract-text.d.ts +4 -3
  24. package/types/classic/locate-text.d.ts +4 -4
  25. package/types/classic/open-eyes.d.ts +3 -3
  26. package/types/classic/types.d.ts +31 -0
  27. package/types/classic/utils/transform-check-settings.d.ts +2 -2
  28. package/types/close-batch.d.ts +3 -2
  29. package/types/close-manager.d.ts +2 -2
  30. package/types/close.d.ts +3 -3
  31. package/types/core.d.ts +3 -3
  32. package/types/delete-test.d.ts +3 -2
  33. package/types/errors/test-error.d.ts +1 -1
  34. package/types/extract-text.d.ts +4 -3
  35. package/types/index.d.ts +2 -0
  36. package/types/locate-text.d.ts +4 -4
  37. package/types/locate.d.ts +5 -3
  38. package/types/make-manager.d.ts +3 -2
  39. package/types/open-eyes.d.ts +6 -5
  40. package/types/troubleshoot/check-network.d.ts +1 -0
  41. package/types/types.d.ts +126 -0
  42. package/types/ufg/abort.d.ts +3 -3
  43. package/types/ufg/check-and-close.d.ts +3 -3
  44. package/types/ufg/check.d.ts +3 -3
  45. package/types/ufg/close.d.ts +3 -3
  46. package/types/ufg/core.d.ts +3 -3
  47. package/types/ufg/open-eyes.d.ts +3 -3
  48. package/types/ufg/types.d.ts +58 -0
  49. package/types/ufg/utils/generate-safe-selectors.d.ts +1 -2
  50. package/types/ufg/utils/take-dom-snapshot.d.ts +1 -1
  51. package/types/ufg/utils/take-dom-snapshots.d.ts +2 -2
  52. package/types/ufg/utils/take-snapshots.d.ts +3 -3
  53. package/types/ufg/utils/take-vhses.d.ts +3 -3
  54. package/types/utils/format-results.d.ts +1 -1
  55. package/types/utils/to-base-check-settings.d.ts +5 -4
@@ -5,7 +5,7 @@ const driver_1 = require("@applitools/driver");
5
5
  function makeGetViewportSize({ spec, logger: defaultLogger, }) {
6
6
  return async function getViewportSize({ target, logger = defaultLogger }) {
7
7
  logger.log('Command "getViewportSize" is called');
8
- const driver = await new driver_1.Driver({ spec, driver: target, logger }).init();
8
+ const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
9
9
  return driver.getViewportSize();
10
10
  };
11
11
  }
@@ -5,7 +5,7 @@ const driver_1 = require("@applitools/driver");
5
5
  function makeSetViewportSize({ spec, logger: defaultLogger, }) {
6
6
  return async function setViewportSize({ target, size, logger = defaultLogger }) {
7
7
  logger.log('Command "setViewportSize" is called with size', size);
8
- const driver = await new driver_1.Driver({ spec, driver: target, logger }).init();
8
+ const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
9
9
  return driver.setViewportSize(size);
10
10
  };
11
11
  }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("@applitools/core-base/types"), exports);
@@ -4,7 +4,11 @@ exports.makeCheckAndClose = void 0;
4
4
  function makeCheckAndClose({ eyes, logger: defaultLogger, }) {
5
5
  return async function checkAndClose({ target, settings = {}, config, logger = defaultLogger, } = {}) {
6
6
  settings = { ...config === null || config === void 0 ? void 0 : config.screenshot, ...config === null || config === void 0 ? void 0 : config.check, ...config === null || config === void 0 ? void 0 : config.close, ...settings };
7
- const results = await eyes.checkAndClose({ target: target, settings, logger });
7
+ const results = await eyes.checkAndClose({
8
+ target: target,
9
+ settings,
10
+ logger,
11
+ });
8
12
  return results;
9
13
  };
10
14
  }
package/dist/check.js CHANGED
@@ -42,7 +42,7 @@ function makeCheck({ eyes, logger: defaultLogger, }) {
42
42
  (_f = settings.overlap) !== null && _f !== void 0 ? _f : (settings.overlap = { top: 10, bottom: 50 });
43
43
  (_g = settings.matchLevel) !== null && _g !== void 0 ? _g : (settings.matchLevel = 'Strict');
44
44
  (_h = settings.ignoreCaret) !== null && _h !== void 0 ? _h : (settings.ignoreCaret = true);
45
- (_j = settings.sendDom) !== null && _j !== void 0 ? _j : (settings.sendDom = true);
45
+ (_j = settings.sendDom) !== null && _j !== void 0 ? _j : (settings.sendDom = eyes.test.account.rcaEnabled || settings.matchLevel === 'Layout' || settings.enablePatterns || settings.useDom);
46
46
  (_k = settings.useDom) !== null && _k !== void 0 ? _k : (settings.useDom = false);
47
47
  (_l = (_r = settings).retryTimeout) !== null && _l !== void 0 ? _l : (_r.retryTimeout = 2000);
48
48
  settings.lazyLoad = settings.lazyLoad === true ? {} : settings.lazyLoad;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../automation/types"), exports);
package/dist/index.js CHANGED
@@ -27,6 +27,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.formatters = void 0;
30
+ __exportStar(require("./types"), exports);
30
31
  __exportStar(require("./core"), exports);
31
32
  exports.formatters = __importStar(require("./utils/format-results"));
32
33
  __exportStar(require("@applitools/driver/dist/debug"), exports);
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  "use strict";
2
3
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
4
  if (k2 === undefined) k2 = k;
package/dist/types.js ADDED
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("@applitools/core-base/types"), exports);
package/dist/ufg/check.js CHANGED
@@ -44,7 +44,7 @@ function makeCheck({ spec, getEyes, client, test, signal, target: defaultTarget,
44
44
  throw new abort_error_1.AbortError('Command "check" was called after test was already aborted');
45
45
  }
46
46
  const { elementReferencesToCalculate, elementReferenceToTarget, getBaseCheckSettings } = (0, to_base_check_settings_1.toBaseCheckSettings)({ settings });
47
- let snapshots, snapshotUrl, snapshotTitle, regionToTarget, selectorsToCalculate;
47
+ let snapshots, snapshotUrl, snapshotTitle, userAgent, regionToTarget, selectorsToCalculate;
48
48
  if (spec === null || spec === void 0 ? void 0 : spec.isDriver(target)) {
49
49
  // TODO driver custom config
50
50
  const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
@@ -54,6 +54,7 @@ function makeCheck({ spec, getEyes, client, test, signal, target: defaultTarget,
54
54
  }
55
55
  let cleanupGeneratedSelectors;
56
56
  if (driver.isWeb) {
57
+ userAgent = driver.userAgent;
57
58
  const generated = await (0, generate_safe_selectors_1.generateSafeSelectors)({
58
59
  context: driver.currentContext,
59
60
  elementReferences: [...(elementReferenceToTarget ? [elementReferenceToTarget] : []), ...elementReferencesToCalculate],
@@ -118,20 +119,17 @@ function makeCheck({ spec, getEyes, client, test, signal, target: defaultTarget,
118
119
  const { cookies, ...snapshot } = snapshots[index];
119
120
  const renderTargetPromise = client.createRenderTarget({
120
121
  snapshot,
121
- settings: { renderer, referer: snapshotUrl, cookies, proxy: test.server.proxy, autProxy: settings.autProxy },
122
+ settings: { renderer, referer: snapshotUrl, cookies, proxy: test.server.proxy, autProxy: settings.autProxy, userAgent },
122
123
  });
123
- const request = {
124
- target: null,
125
- settings: {
126
- ...settings,
127
- region: regionToTarget,
128
- type: utils.types.has(snapshot, 'cdt') ? 'web' : 'native',
129
- renderer,
130
- selectorsToCalculate: selectorsToCalculate.flatMap(({ safeSelector }) => safeSelector !== null && safeSelector !== void 0 ? safeSelector : []),
131
- includeFullPageSize: Boolean(settings.pageId),
132
- },
124
+ const renderSettings = {
125
+ ...settings,
126
+ region: regionToTarget,
127
+ type: utils.types.has(snapshot, 'cdt') ? 'web' : 'native',
128
+ renderer,
129
+ selectorsToCalculate: selectorsToCalculate.flatMap(({ safeSelector }) => safeSelector !== null && safeSelector !== void 0 ? safeSelector : []),
130
+ includeFullPageSize: Boolean(settings.pageId),
133
131
  };
134
- const { rendererId, rawEnvironment } = await client.bookRenderer({ settings: request.settings });
132
+ const { rendererId, rawEnvironment } = await client.bookRenderer({ settings: renderSettings });
135
133
  const eyes = await getEyes({ rawEnvironment });
136
134
  try {
137
135
  if (signal.aborted) {
@@ -142,8 +140,8 @@ function makeCheck({ spec, getEyes, client, test, signal, target: defaultTarget,
142
140
  logger.warn(`Renderer with id ${rendererId} was aborted during one of the previous steps`);
143
141
  throw new abort_error_1.AbortError(`Renderer with id "${rendererId}" was aborted during one of the previous steps`);
144
142
  }
145
- request.settings.rendererId = rendererId;
146
- request.target = await renderTargetPromise;
143
+ renderSettings.rendererId = rendererId;
144
+ const renderTarget = await renderTargetPromise;
147
145
  if (signal.aborted) {
148
146
  logger.warn('Command "check" was aborted before rendering');
149
147
  throw new abort_error_1.AbortError('Command "check" was aborted before rendering');
@@ -152,7 +150,11 @@ function makeCheck({ spec, getEyes, client, test, signal, target: defaultTarget,
152
150
  logger.warn(`Renderer with id ${rendererId} was aborted during one of the previous steps`);
153
151
  throw new abort_error_1.AbortError(`Renderer with id "${rendererId}" was aborted during one of the previous steps`);
154
152
  }
155
- const { renderId, selectorRegions, ...baseTarget } = await client.render({ request, signal });
153
+ const { renderId, selectorRegions, ...baseTarget } = await client.render({
154
+ target: renderTarget,
155
+ settings: renderSettings,
156
+ signal,
157
+ });
156
158
  let offset = 0;
157
159
  const baseSettings = getBaseCheckSettings({
158
160
  calculatedRegions: selectorsToCalculate.map(({ originalSelector, safeSelector }) => ({
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../automation/types"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/core",
3
- "version": "1.1.4",
3
+ "version": "1.1.6",
4
4
  "homepage": "https://applitools.com",
5
5
  "bugs": {
6
6
  "url": "https://github.com/applitools/eyes.sdk.javascript1/issues"
@@ -23,6 +23,10 @@
23
23
  "types": "./types/index.d.ts",
24
24
  "default": "./dist/index.js"
25
25
  },
26
+ "./types": {
27
+ "types": "./types/types.d.ts",
28
+ "default": "./dist/types.js"
29
+ },
26
30
  "./dist/*": "./dist/*.js",
27
31
  "./package.json": "./package.json"
28
32
  },
@@ -57,29 +61,28 @@
57
61
  }
58
62
  },
59
63
  "dependencies": {
60
- "@applitools/core-base": "1.0.8",
64
+ "@applitools/core-base": "1.1.2",
61
65
  "@applitools/dom-capture": "11.2.0",
62
66
  "@applitools/dom-snapshot": "4.7.0",
63
- "@applitools/driver": "1.10.5",
64
- "@applitools/logger": "1.1.26",
65
- "@applitools/nml-client": "1.3.2",
66
- "@applitools/req": "1.1.10",
67
- "@applitools/screenshoter": "3.6.3",
67
+ "@applitools/driver": "1.10.6",
68
+ "@applitools/logger": "1.1.27",
69
+ "@applitools/nml-client": "1.3.4",
70
+ "@applitools/req": "1.1.11",
71
+ "@applitools/screenshoter": "3.6.4",
68
72
  "@applitools/snippets": "2.4.5",
69
- "@applitools/types": "1.5.19",
70
- "@applitools/ufg-client": "1.0.8",
71
- "@applitools/utils": "1.3.12",
73
+ "@applitools/ufg-client": "1.0.10",
74
+ "@applitools/utils": "1.3.13",
72
75
  "abort-controller": "3.0.0",
73
76
  "throat": "6.0.1"
74
77
  },
75
78
  "devDependencies": {
76
79
  "@applitools/bongo": "^2.2.0",
77
80
  "@applitools/sdk-fake-eyes-server": "^2.1.3",
78
- "@applitools/spec-driver-puppeteer": "^1.1.15",
79
- "@applitools/spec-driver-selenium": "^1.4.5",
80
- "@applitools/spec-driver-webdriverio": "^1.3.1",
81
- "@applitools/test-server": "^1.1.5",
82
- "@applitools/test-utils": "^1.5.1",
81
+ "@applitools/spec-driver-puppeteer": "^1.1.17",
82
+ "@applitools/spec-driver-selenium": "^1.5.0",
83
+ "@applitools/spec-driver-webdriverio": "^1.4.1",
84
+ "@applitools/test-server": "^1.1.6",
85
+ "@applitools/test-utils": "^1.5.2",
83
86
  "@types/hoxy": "^3.3.1",
84
87
  "@types/mocha": "^9.1.1",
85
88
  "@types/node": "12",
@@ -1,5 +1,5 @@
1
- import type { SpecDriver } from '@applitools/types';
2
1
  import { type Logger } from '@applitools/logger';
2
+ import { type SpecDriver } from '@applitools/driver';
3
3
  declare type Options<TDriver, TContext, TElement, TSelector> = {
4
4
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
5
5
  logger?: Logger;
@@ -7,5 +7,5 @@ declare type Options<TDriver, TContext, TElement, TSelector> = {
7
7
  export declare function makeGetViewportSize<TDriver, TContext, TElement, TSelector>({ spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, logger }: {
8
8
  target: TDriver;
9
9
  logger?: Logger;
10
- }) => Promise<import("@applitools/driver").Size>;
10
+ }) => Promise<import("@applitools/utils").Size>;
11
11
  export {};
@@ -1,7 +1,7 @@
1
- import type { SpecDriver, Region } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
3
- import type { Target, LocateSettings } from '@applitools/types/classic';
1
+ import type { Target, LocateSettings, LocateResult } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
7
  core: BaseCore;
@@ -12,5 +12,5 @@ export declare function makeLocate<TDriver, TContext, TElement, TSelector>({ spe
12
12
  target?: Target<TDriver>;
13
13
  settings?: LocateSettings<TLocator, TElement, TSelector>;
14
14
  logger?: Logger;
15
- }) => Promise<Record<TLocator, Region[]>>;
15
+ }) => Promise<LocateResult<TLocator>>;
16
16
  export {};
@@ -1,5 +1,6 @@
1
- import type { SpecDriver, Size } from '@applitools/types';
1
+ import type { Size } from '@applitools/utils';
2
2
  import { type Logger } from '@applitools/logger';
3
+ import { type SpecDriver } from '@applitools/driver';
3
4
  declare type Options<TDriver, TContext, TElement, TSelector> = {
4
5
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
5
6
  logger?: Logger;
@@ -0,0 +1,84 @@
1
+ import type { MaybeArray, Size, Region } from '@applitools/utils';
2
+ import type * as BaseCore from '@applitools/core-base/types';
3
+ import { type Selector } from '@applitools/driver';
4
+ import { type Logger } from '@applitools/logger';
5
+ export * from '@applitools/core-base/types';
6
+ export declare type Screenshot = BaseCore.Target;
7
+ export declare type Target<TDriver> = TDriver;
8
+ export interface Core<TDriver, TElement, TSelector, TEyes = Eyes<TDriver, TElement, TSelector>> extends BaseCore.Core<TEyes> {
9
+ isDriver(driver: any): driver is TDriver;
10
+ isElement(element: any): element is TElement;
11
+ isSelector(selector: any): selector is TSelector;
12
+ getViewportSize(options: {
13
+ target: TDriver;
14
+ logger?: Logger;
15
+ }): Promise<Size>;
16
+ setViewportSize(options: {
17
+ target: TDriver;
18
+ size: Size;
19
+ logger?: Logger;
20
+ }): Promise<void>;
21
+ openEyes(options: {
22
+ target?: TDriver;
23
+ settings: BaseCore.OpenSettings;
24
+ logger?: Logger;
25
+ }): Promise<TEyes>;
26
+ locate<TLocator extends string>(options: {
27
+ target?: Target<TDriver> | Screenshot;
28
+ settings: LocateSettings<TLocator, TElement, TSelector>;
29
+ logger?: Logger;
30
+ }): Promise<BaseCore.LocateResult<TLocator>>;
31
+ }
32
+ export interface Eyes<TDriver, TElement, TSelector, TTarget = Target<TDriver>> extends BaseCore.Eyes<TTarget> {
33
+ check(options: {
34
+ target?: TTarget;
35
+ settings?: CheckSettings<TElement, TSelector>;
36
+ }): Promise<BaseCore.CheckResult[]>;
37
+ checkAndClose(options: {
38
+ target?: TTarget;
39
+ settings?: CheckSettings<TElement, TSelector> & BaseCore.CloseSettings;
40
+ logger?: Logger;
41
+ }): Promise<BaseCore.TestResult[]>;
42
+ locateText?<TPattern extends string>(options: {
43
+ target?: TTarget;
44
+ settings: LocateTextSettings<TPattern, TElement, TSelector>;
45
+ logger?: Logger;
46
+ }): Promise<BaseCore.LocateTextResult<TPattern>>;
47
+ extractText?(options: {
48
+ target?: TTarget;
49
+ settings: MaybeArray<ExtractTextSettings<TElement, TSelector>>;
50
+ logger?: Logger;
51
+ }): Promise<string[]>;
52
+ }
53
+ declare type RegionReference<TElement, TSelector> = Region | ElementReference<TElement, TSelector>;
54
+ declare type ElementReference<TElement, TSelector> = TElement | Selector<TSelector>;
55
+ declare type FrameReference<TElement, TSelector> = ElementReference<TElement, TSelector> | string | number;
56
+ declare type ContextReference<TElement, TSelector> = {
57
+ frame: FrameReference<TElement, TSelector>;
58
+ scrollRootElement?: ElementReference<TElement, TSelector>;
59
+ };
60
+ declare type StitchMode = 'Scroll' | 'CSS';
61
+ export interface ScreenshotSettings<TElement, TSelector> extends BaseCore.ImageSettings<RegionReference<TElement, TSelector>> {
62
+ frames?: (ContextReference<TElement, TSelector> | FrameReference<TElement, TSelector>)[];
63
+ fully?: boolean;
64
+ scrollRootElement?: ElementReference<TElement, TSelector>;
65
+ stitchMode?: StitchMode;
66
+ hideScrollbars?: boolean;
67
+ hideCaret?: boolean;
68
+ overlap?: {
69
+ top?: number;
70
+ bottom?: number;
71
+ };
72
+ waitBeforeCapture?: number;
73
+ waitBetweenStitches?: number;
74
+ lazyLoad?: boolean | {
75
+ scrollLength?: number;
76
+ waitingTime?: number;
77
+ maxAmountToScroll?: number;
78
+ };
79
+ webview?: boolean | string;
80
+ }
81
+ export declare type LocateSettings<TLocator extends string, TElement, TSelector> = BaseCore.LocateSettings<TLocator, RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
82
+ export declare type CheckSettings<TElement, TSelector> = BaseCore.CheckSettings<RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
83
+ export declare type LocateTextSettings<TPattern extends string, TElement, TSelector> = BaseCore.LocateTextSettings<TPattern, RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
84
+ export declare type ExtractTextSettings<TElement, TSelector> = BaseCore.ExtractTextSettings<RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
@@ -1,5 +1,5 @@
1
- import type { Region } from '@applitools/types';
2
- import { ScreenshotSettings } from '@applitools/types/classic';
1
+ import type { Region } from '@applitools/utils';
2
+ import type { ScreenshotSettings } from '../../classic/types';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import { type Driver, type Element } from '@applitools/driver';
5
5
  export declare type Screenshot = {
@@ -1,6 +1,6 @@
1
- import type { Target, Config, CheckSettings, CloseSettings, TestResult } from '@applitools/types';
2
- import type { Eyes as ClassicEyes } from '@applitools/types/classic';
3
- import type { Eyes as UFGEyes } from '@applitools/types/ufg';
1
+ import type { Target, Config, CheckSettings, CloseSettings, TestResult } from './types';
2
+ import type { Eyes as ClassicEyes } from './classic/types';
3
+ import type { Eyes as UFGEyes } from './ufg/types';
4
4
  import { type Logger } from '@applitools/logger';
5
5
  declare type Options<TDriver, TElement, TSelector> = {
6
6
  eyes: ClassicEyes<TDriver, TElement, TSelector> | UFGEyes<TDriver, TElement, TSelector>;
package/types/check.d.ts CHANGED
@@ -1,10 +1,10 @@
1
- import type { Target, Config, CheckSettings, CheckResult } from '@applitools/types';
2
- import type { Eyes as ClassicEyes } from '@applitools/types/classic';
3
- import type { Eyes as UFGEyes } from '@applitools/types/ufg';
1
+ import type { Target, Config, CheckSettings, CheckResult } from './types';
2
+ import type { Eyes as ClassicEyes } from './classic/types';
3
+ import type { Eyes as UFGEyes } from './ufg/types';
4
4
  import { type Logger } from '@applitools/logger';
5
5
  declare type Options<TDriver, TElement, TSelector> = {
6
6
  eyes: ClassicEyes<TDriver, TElement, TSelector> | UFGEyes<TDriver, TElement, TSelector>;
7
- logger: Logger;
7
+ logger?: Logger;
8
8
  };
9
9
  export declare function makeCheck<TDriver, TElement, TSelector, TType extends 'classic' | 'ufg'>({ eyes, logger: defaultLogger, }: Options<TDriver, TElement, TSelector>): ({ target, settings, config, logger, }?: {
10
10
  target?: Target<TDriver, TType>;
@@ -1,7 +1,7 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { Target, CheckSettings, CloseSettings, TestResult } from '@applitools/types/classic';
1
+ import type { Target, CheckSettings, CloseSettings, TestResult } from './types';
2
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
7
  eyes: BaseEyes;
@@ -1,7 +1,7 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { Target, CheckSettings, CheckResult } from '@applitools/types/classic';
1
+ import type { Target, CheckSettings, CheckResult } from './types';
2
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
7
  eyes: BaseEyes;
@@ -1,7 +1,7 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
3
- import type { Core } from '@applitools/types/classic';
1
+ import type { Core } from './types';
2
+ import { type SpecDriver } from '@applitools/driver';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type Core as BaseCore } from '@applitools/core-base';
5
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
7
  core?: BaseCore;
@@ -1,7 +1,8 @@
1
- import type { MaybeArray, SpecDriver } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { Target, ExtractTextSettings } from '@applitools/types/classic';
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type { Target, ExtractTextSettings } from './types';
3
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
4
  import { type Logger } from '@applitools/logger';
5
+ import { type SpecDriver } from '@applitools/driver';
5
6
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
7
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
8
  eyes: BaseEyes;
@@ -1,7 +1,7 @@
1
- import type { SpecDriver, TextRegion } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { Target, LocateTextSettings } from '@applitools/types/classic';
1
+ import type { Target, LocateTextSettings, LocateTextResult } from './types';
2
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
7
  eyes: BaseEyes;
@@ -12,5 +12,5 @@ export declare function makeLocateText<TDriver, TContext, TElement, TSelector>({
12
12
  target?: Target<TDriver>;
13
13
  settings?: LocateTextSettings<TPattern, TElement, TSelector>;
14
14
  logger?: Logger;
15
- }) => Promise<Record<TPattern, TextRegion[]>>;
15
+ }) => Promise<LocateTextResult<TPattern>>;
16
16
  export {};
@@ -1,7 +1,7 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
3
- import type { Eyes, Target, OpenSettings } from '@applitools/types/classic';
1
+ import type { Eyes, Target, OpenSettings } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
7
  core: BaseCore;
@@ -0,0 +1,31 @@
1
+ import type * as AutomationCore from '../automation/types';
2
+ import { type Logger } from '@applitools/logger';
3
+ export * from '../automation/types';
4
+ export declare type Target<TDriver> = AutomationCore.Target<TDriver> | AutomationCore.Screenshot;
5
+ export interface Core<TDriver, TElement, TSelector> extends AutomationCore.Core<TDriver, TElement, TSelector, Eyes<TDriver, TElement, TSelector>> {
6
+ readonly type: 'classic';
7
+ openEyes(options: {
8
+ target?: TDriver;
9
+ settings: OpenSettings;
10
+ logger?: Logger;
11
+ }): Promise<Eyes<TDriver, TElement, TSelector>>;
12
+ }
13
+ export interface Eyes<TDriver, TElement, TSelector, TTarget = Target<TDriver>> extends AutomationCore.Eyes<TDriver, TElement, TSelector, TTarget> {
14
+ check(options?: {
15
+ target?: TTarget;
16
+ settings?: CheckSettings<TElement, TSelector>;
17
+ logger?: Logger;
18
+ }): Promise<AutomationCore.CheckResult[]>;
19
+ checkAndClose(options: {
20
+ target?: TTarget;
21
+ settings?: CheckSettings<TElement, TSelector> & AutomationCore.CloseSettings;
22
+ logger?: Logger;
23
+ }): Promise<AutomationCore.TestResult[]>;
24
+ }
25
+ export declare type OpenSettings = AutomationCore.OpenSettings & {
26
+ keepPlatformNameAsIs?: boolean;
27
+ useCeilForViewportSize?: boolean;
28
+ };
29
+ export declare type CheckSettings<TElement, TSelector> = AutomationCore.CheckSettings<TElement, TSelector> & {
30
+ retryTimeout?: number;
31
+ };
@@ -1,5 +1,5 @@
1
- import type { CheckSettings as BaseCheckSettings } from '@applitools/types/base';
2
- import type { CheckSettings } from '@applitools/types/classic';
1
+ import type { CheckSettings } from '../types';
2
+ import type { CheckSettings as BaseCheckSettings } from '@applitools/core-base';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import { type Context } from '@applitools/driver';
5
5
  import { type Screenshot } from '../../automation/utils/take-screenshot';
@@ -1,5 +1,6 @@
1
- import type { MaybeArray, CloseBatchSettings } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type { CloseBatchSettings } from './types';
3
+ import type { Core as BaseCore } from '@applitools/core-base';
3
4
  import { type Logger } from '@applitools/logger';
4
5
  declare type Options = {
5
6
  core: BaseCore;
@@ -1,5 +1,5 @@
1
- import type { Eyes, TestResult, TestResultSummary } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
1
+ import type { Eyes, TestResult, TestResultSummary } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  declare type Options<TDriver, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
5
5
  core: BaseCore<unknown>;
package/types/close.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import type { Config, CloseSettings, TestResult } from '@applitools/types';
2
- import type { Eyes as ClassicEyes } from '@applitools/types/classic';
3
- import type { Eyes as UFGEyes } from '@applitools/types/ufg';
1
+ import type { Config, CloseSettings, TestResult } from './types';
2
+ import type { Eyes as ClassicEyes } from './classic/types';
3
+ import type { Eyes as UFGEyes } from './ufg/types';
4
4
  import { type Logger } from '@applitools/logger';
5
5
  declare type Options<TDriver, TElement, TSelector> = {
6
6
  eyes: ClassicEyes<TDriver, TElement, TSelector> | UFGEyes<TDriver, TElement, TSelector>;
package/types/core.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
3
- import type { Core } from '@applitools/types';
1
+ import type { Core } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
3
+ import { type SpecDriver } from '@applitools/driver';
4
4
  import { type Logger } from '@applitools/logger';
5
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
@@ -1,5 +1,6 @@
1
- import type { MaybeArray, DeleteTestSettings } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type { DeleteTestSettings } from './types';
3
+ import type { Core as BaseCore } from '@applitools/core-base';
3
4
  import { type Logger } from '@applitools/logger';
4
5
  declare type Options = {
5
6
  core: BaseCore;
@@ -1,4 +1,4 @@
1
- import type { TestResult } from '@applitools/types/base';
1
+ import type { TestResult } from '@applitools/core-base';
2
2
  import { CoreError } from '@applitools/core-base';
3
3
  export declare class TestError extends CoreError {
4
4
  constructor(result: TestResult);
@@ -1,6 +1,7 @@
1
- import type { MaybeArray, Target, Config, ExtractTextSettings } from '@applitools/types';
2
- import type { Eyes as ClassicEyes } from '@applitools/types/classic';
3
- import type { Eyes as UFGEyes } from '@applitools/types/ufg';
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type { Target, Config, ExtractTextSettings } from './types';
3
+ import type { Eyes as ClassicEyes } from './classic/types';
4
+ import type { Eyes as UFGEyes } from './ufg/types';
4
5
  import { type Logger } from '@applitools/logger';
5
6
  declare type Options<TDriver, TElement, TSelector> = {
6
7
  eyes: ClassicEyes<TDriver, TElement, TSelector> | UFGEyes<TDriver, TElement, TSelector>;
package/types/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ export * from './types';
2
+ export { type Selector } from '@applitools/driver';
1
3
  export * from './core';
2
4
  export * as formatters from './utils/format-results';
3
5
  export * from '@applitools/driver/dist/debug';
@@ -1,6 +1,6 @@
1
- import type { TextRegion, Target, Config, LocateTextSettings } from '@applitools/types';
2
- import type { Eyes as ClassicEyes } from '@applitools/types/classic';
3
- import type { Eyes as UFGEyes } from '@applitools/types/ufg';
1
+ import type { Target, Config, LocateTextSettings, LocateTextResult } from './types';
2
+ import type { Eyes as ClassicEyes } from './classic/types';
3
+ import type { Eyes as UFGEyes } from './ufg/types';
4
4
  import { type Logger } from '@applitools/logger';
5
5
  declare type Options<TDriver, TElement, TSelector> = {
6
6
  eyes: ClassicEyes<TDriver, TElement, TSelector> | UFGEyes<TDriver, TElement, TSelector>;
@@ -11,5 +11,5 @@ export declare function makeLocateText<TDriver, TElement, TSelector, TType exten
11
11
  settings: LocateTextSettings<TPattern, TElement, TSelector, TType>;
12
12
  config?: Config<TElement, TSelector, TType>;
13
13
  logger?: Logger;
14
- }) => Promise<Record<TPattern, TextRegion[]>>;
14
+ }) => Promise<LocateTextResult<TPattern>>;
15
15
  export {};
package/types/locate.d.ts CHANGED
@@ -1,7 +1,9 @@
1
- import type { Region, SpecDriver, Config, LocateSettings } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
3
- import type { Screenshot } from '@applitools/types/classic';
1
+ import type { Region } from '@applitools/utils';
2
+ import type { Config, LocateSettings } from './types';
3
+ import type { Core as BaseCore } from '@applitools/core-base';
4
+ import type { Screenshot } from './classic/types';
4
5
  import { type Logger } from '@applitools/logger';
6
+ import { type SpecDriver } from '@applitools/driver';
5
7
  declare type Options<TDriver, TContext, TElement, TSelector> = {
6
8
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
7
9
  core: BaseCore;
@@ -1,6 +1,7 @@
1
- import type { EyesManager, SpecDriver } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
1
+ import type { EyesManager } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
3
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
4
5
  declare type Options<TDriver, TContext, TElement, TSelector> = {
5
6
  spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
6
7
  core?: BaseCore;
@@ -1,8 +1,9 @@
1
- import type { Eyes, Config, OpenSettings, SpecDriver } from '@applitools/types';
2
- import type { Core as ClassicCore } from '@applitools/types/classic';
3
- import type { Core as UFGCore } from '@applitools/types/ufg';
4
- import type { Core as BaseCore } from '@applitools/types/base';
1
+ import type { Eyes, Config, OpenSettings } from './types';
2
+ import type { Core as ClassicCore } from './classic/types';
3
+ import type { Core as UFGCore } from './ufg/types';
4
+ import type { Core as BaseCore } from '@applitools/core-base';
5
5
  import { type Logger } from '@applitools/logger';
6
+ import { type SpecDriver } from '@applitools/driver';
6
7
  declare type Options<TDriver, TContext, TElement, TSelector> = {
7
8
  spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
8
9
  core?: BaseCore | ClassicCore<TDriver, TElement, TSelector> | UFGCore<TDriver, TElement, TSelector>;
@@ -15,5 +16,5 @@ export declare function makeOpenEyes<TDriver, TContext, TElement, TSelector>({ s
15
16
  settings?: Partial<OpenSettings<TType>>;
16
17
  config?: Config<TElement, TSelector, TType>;
17
18
  logger?: Logger;
18
- }) => Promise<Eyes<TDriver, TElement, TSelector, TType, import("@applitools/types").Target<TDriver, TType>>>;
19
+ }) => Promise<Eyes<TDriver, TElement, TSelector, TType, import("./types").Target<TDriver, TType>>>;
19
20
  export {};
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  /// <reference types="node" />
2
3
  export declare function checkNetwork({ stream, eyes, ufg }?: {
3
4
  stream?: NodeJS.WriteStream;
@@ -0,0 +1,126 @@
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type * as AutomationCore from './automation/types';
3
+ import type * as ClassicCore from './classic/types';
4
+ import type * as UFGCore from './ufg/types';
5
+ import { type Logger } from '@applitools/logger';
6
+ import { type Renderer } from '@applitools/ufg-client';
7
+ export * from '@applitools/core-base/types';
8
+ export declare type Target<TDriver, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.Target<TDriver> : ClassicCore.Target<TDriver>;
9
+ export interface Core<TDriver, TElement, TSelector> extends AutomationCore.Core<TDriver, TElement, TSelector> {
10
+ openEyes<TType extends 'classic' | 'ufg' = 'classic'>(options: {
11
+ type?: TType;
12
+ target?: TDriver;
13
+ settings?: Partial<OpenSettings<TType>>;
14
+ config?: Config<TElement, TSelector, TType>;
15
+ logger?: Logger;
16
+ }): Promise<Eyes<TDriver, TElement, TSelector, TType>>;
17
+ locate<TLocator extends string>(options: {
18
+ target?: TDriver | AutomationCore.Screenshot;
19
+ settings?: Partial<LocateSettings<TLocator, TElement, TSelector>>;
20
+ config?: Config<TElement, TSelector, 'classic'>;
21
+ logger?: Logger;
22
+ }): Promise<AutomationCore.LocateResult<TLocator>>;
23
+ makeManager<TType extends 'classic' | 'ufg' = 'classic'>(options?: {
24
+ type: TType;
25
+ concurrency: TType extends 'ufg' ? number : never;
26
+ agentId?: string;
27
+ logger?: Logger;
28
+ }): Promise<EyesManager<TDriver, TElement, TSelector, TType>>;
29
+ }
30
+ export interface EyesManager<TDriver, TElement, TSelector, TType extends 'classic' | 'ufg'> {
31
+ openEyes(options: {
32
+ target?: TDriver;
33
+ settings?: Partial<OpenSettings<TType>>;
34
+ config?: Config<TElement, TSelector, TType>;
35
+ logger?: Logger;
36
+ }): Promise<Eyes<TDriver, TElement, TSelector, TType>>;
37
+ closeManager: (options?: {
38
+ settings?: {
39
+ throwErr?: boolean;
40
+ };
41
+ logger?: Logger;
42
+ }) => Promise<TestResultSummary<TType>>;
43
+ }
44
+ export interface ClassicEyes<TDriver, TElement, TSelector, TTarget = Target<TDriver, 'classic'>> extends ClassicCore.Eyes<TDriver, TElement, TSelector, TTarget> {
45
+ check(options: {
46
+ target?: TTarget;
47
+ settings?: Partial<CheckSettings<TElement, TSelector, 'classic'>>;
48
+ config?: Config<TElement, TSelector, 'classic'>;
49
+ logger?: Logger;
50
+ }): Promise<CheckResult<'classic'>[]>;
51
+ checkAndClose(options: {
52
+ target?: TTarget;
53
+ settings?: Partial<CheckSettings<TElement, TSelector, 'classic'> & CloseSettings<'classic'>>;
54
+ config?: Config<TElement, TSelector, 'classic'>;
55
+ logger?: Logger;
56
+ }): Promise<TestResult<'classic'>[]>;
57
+ locateText<TPattern extends string>(options: {
58
+ target?: TTarget;
59
+ settings: Partial<LocateTextSettings<TPattern, TElement, TSelector, 'classic'>>;
60
+ config?: Config<TElement, TSelector, 'classic'>;
61
+ logger?: Logger;
62
+ }): Promise<AutomationCore.LocateTextResult<TPattern>>;
63
+ extractText(options: {
64
+ target?: TTarget;
65
+ settings: MaybeArray<Partial<ExtractTextSettings<TElement, TSelector, 'classic'>>>;
66
+ config?: Config<TElement, TSelector, 'classic'>;
67
+ logger?: Logger;
68
+ }): Promise<string[]>;
69
+ close(options?: {
70
+ settings?: Partial<CloseSettings<'classic'>>;
71
+ config?: Config<TElement, TSelector, 'classic'>;
72
+ logger?: Logger;
73
+ }): Promise<TestResult<'classic'>[]>;
74
+ }
75
+ export interface UFGEyes<TDriver, TElement, TSelector, TTarget = Target<TDriver, 'ufg'>> extends UFGCore.Eyes<TDriver, TElement, TSelector, TTarget> {
76
+ check(options: {
77
+ target?: TTarget;
78
+ settings?: Partial<CheckSettings<TElement, TSelector, 'ufg'>>;
79
+ config?: Config<TElement, TSelector, 'ufg'>;
80
+ logger?: Logger;
81
+ }): Promise<CheckResult<'ufg'>[]>;
82
+ checkAndClose(options: {
83
+ target?: TTarget;
84
+ settings?: Partial<CheckSettings<TElement, TSelector, 'ufg'> & CloseSettings<'ufg'>>;
85
+ config?: Config<TElement, TSelector, 'ufg'>;
86
+ logger?: Logger;
87
+ }): Promise<TestResult<'ufg'>[]>;
88
+ close(options?: {
89
+ settings?: Partial<CloseSettings<'ufg'>>;
90
+ config?: Config<TElement, TSelector, 'ufg'>;
91
+ logger?: Logger;
92
+ }): Promise<TestResult<'ufg'>[]>;
93
+ }
94
+ export declare type Eyes<TDriver, TElement, TSelector, TType extends 'classic' | 'ufg', TTarget = Target<TDriver, TType>> = TType extends 'ufg' ? UFGEyes<TDriver, TElement, TSelector, TTarget> : ClassicEyes<TDriver, TElement, TSelector, TTarget>;
95
+ export declare type Config<TElement, TSelector, TType extends 'classic' | 'ufg'> = {
96
+ open: Partial<OpenSettings<TType>>;
97
+ screenshot: Partial<ClassicCore.ScreenshotSettings<TElement, TSelector>>;
98
+ check: Partial<Omit<CheckSettings<TElement, TSelector, TType>, keyof ClassicCore.ScreenshotSettings<TElement, TSelector>>>;
99
+ close: Partial<CloseSettings<TType>>;
100
+ };
101
+ export declare type LocateSettings<TLocator extends string, TElement, TSelector> = AutomationCore.LocateSettings<TLocator, TElement, TSelector>;
102
+ export declare type OpenSettings<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.OpenSettings : ClassicCore.OpenSettings;
103
+ export declare type CheckSettings<TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.CheckSettings<TElement, TSelector> : ClassicCore.CheckSettings<TElement, TSelector>;
104
+ export declare type LocateTextSettings<TPattern extends string, TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.LocateTextSettings<TPattern, TElement, TSelector> : ClassicCore.LocateTextSettings<TPattern, TElement, TSelector>;
105
+ export declare type ExtractTextSettings<TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.ExtractTextSettings<TElement, TSelector> : ClassicCore.ExtractTextSettings<TElement, TSelector>;
106
+ export declare type CloseSettings<TType extends 'classic' | 'ufg'> = (TType extends 'ufg' ? UFGCore.CloseSettings : ClassicCore.CloseSettings) & {
107
+ throwErr?: boolean;
108
+ };
109
+ export declare type CheckResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.CheckResult : ClassicCore.CheckResult;
110
+ export declare type TestResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.TestResult : ClassicCore.TestResult;
111
+ export interface TestResultContainer<TType extends 'classic' | 'ufg'> {
112
+ readonly error?: Error;
113
+ readonly result?: TestResult<TType>;
114
+ readonly renderer?: TType extends 'ufg' ? Renderer : never;
115
+ readonly userTestId?: string;
116
+ }
117
+ export interface TestResultSummary<TType extends 'classic' | 'ufg'> {
118
+ readonly results: TestResultContainer<TType>[];
119
+ readonly passed: number;
120
+ readonly unresolved: number;
121
+ readonly failed: number;
122
+ readonly exceptions: number;
123
+ readonly mismatches: number;
124
+ readonly missing: number;
125
+ readonly matches: number;
126
+ }
@@ -1,7 +1,7 @@
1
- import type { Renderer } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { TestResult } from '@applitools/types/ufg';
1
+ import type { TestResult } from './types';
2
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type Renderer } from '@applitools/ufg-client';
5
5
  import { type AbortController } from 'abort-controller';
6
6
  declare type Options = {
7
7
  storage: {
@@ -1,7 +1,7 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { Target, TestInfo } from '@applitools/types/ufg';
1
+ import type { Target, TestInfo } from './types';
2
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  import { type UFGClient } from '@applitools/ufg-client';
6
6
  declare type Options<TDriver, TContext, TElement, TSelector> = {
7
7
  getEyes: (options: {
@@ -1,9 +1,9 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { Target, TestInfo, CheckSettings, CheckResult } from '@applitools/types/ufg';
1
+ import type { Target, TestInfo, CheckSettings, CheckResult } from './types';
2
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
3
  import { type AbortSignal } from 'abort-controller';
5
4
  import { type Logger } from '@applitools/logger';
6
5
  import { type UFGClient } from '@applitools/ufg-client';
6
+ import { type SpecDriver } from '@applitools/driver';
7
7
  declare type Options<TDriver, TContext, TElement, TSelector> = {
8
8
  getEyes: (options: {
9
9
  rawEnvironment: any;
@@ -1,7 +1,7 @@
1
- import type { Renderer } from '@applitools/types';
2
- import type { Eyes as BaseEyes } from '@applitools/types/base';
3
- import type { CloseSettings, TestResult } from '@applitools/types/ufg';
1
+ import type { CloseSettings, TestResult } from './types';
2
+ import type { Eyes as BaseEyes } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type Renderer } from '@applitools/ufg-client';
5
5
  declare type Options = {
6
6
  storage: {
7
7
  renderer: Renderer;
@@ -1,7 +1,7 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
3
- import type { Core } from '@applitools/types/ufg';
1
+ import type { Core } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
4
3
  import { type UFGClient } from '@applitools/ufg-client';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  import { type Logger } from '@applitools/logger';
6
6
  declare type Options<TDriver, TContext, TElement, TSelector> = {
7
7
  concurrency: number;
@@ -1,7 +1,7 @@
1
- import type { SpecDriver } from '@applitools/types';
2
- import type { Core as BaseCore } from '@applitools/types/base';
3
- import type { Eyes, Target, OpenSettings } from '@applitools/types/ufg';
1
+ import type { Eyes, Target, OpenSettings } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
4
3
  import { type Logger } from '@applitools/logger';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  import { type UFGClient } from '@applitools/ufg-client';
6
6
  declare type Options<TDriver, TContext, TElement, TSelector> = {
7
7
  core: BaseCore;
@@ -0,0 +1,58 @@
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type * as AutomationCore from '../automation/types';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type Proxy } from '@applitools/req';
5
+ import { type Renderer, type DomSnapshot, type AndroidSnapshot, type IOSSnapshot } from '@applitools/ufg-client';
6
+ export * from '../automation/types';
7
+ export declare type Target<TDriver> = AutomationCore.Target<TDriver> | MaybeArray<DomSnapshot> | MaybeArray<AndroidSnapshot> | MaybeArray<IOSSnapshot>;
8
+ export interface Core<TDriver, TElement, TSelector> extends AutomationCore.Core<TDriver, TElement, TSelector, Eyes<TDriver, TElement, TSelector>> {
9
+ readonly type: 'ufg';
10
+ openEyes(options: {
11
+ target?: TDriver;
12
+ settings: OpenSettings;
13
+ logger?: Logger;
14
+ }): Promise<Eyes<TDriver, TElement, TSelector>>;
15
+ }
16
+ export interface Eyes<TDriver, TElement, TSelector, TTarget = Target<TDriver>> extends AutomationCore.Eyes<TDriver, TElement, TSelector, TTarget> {
17
+ check(options?: {
18
+ target?: TTarget;
19
+ settings?: CheckSettings<TElement, TSelector>;
20
+ logger?: Logger;
21
+ }): Promise<CheckResult[]>;
22
+ checkAndClose(options?: {
23
+ target?: TTarget;
24
+ settings?: CheckSettings<TElement, TSelector> & AutomationCore.CloseSettings;
25
+ logger?: Logger;
26
+ }): Promise<TestResult[]>;
27
+ locateText?: never;
28
+ extractText?: never;
29
+ close(options?: {
30
+ settings?: AutomationCore.CloseSettings;
31
+ logger?: Logger;
32
+ }): Promise<TestResult[]>;
33
+ abort(options?: {
34
+ logger?: Logger;
35
+ }): Promise<TestResult[]>;
36
+ }
37
+ export declare type OpenSettings = AutomationCore.OpenSettings & {
38
+ renderConcurrency?: number;
39
+ };
40
+ export declare type CheckSettings<TElement, TSelector> = AutomationCore.CheckSettings<TElement, TSelector> & {
41
+ renderers?: Renderer[];
42
+ hooks?: {
43
+ beforeCaptureScreenshot: string;
44
+ };
45
+ disableBrowserFetching?: boolean;
46
+ layoutBreakpoints?: boolean | number[];
47
+ ufgOptions?: Record<string, any>;
48
+ autProxy?: Proxy & {
49
+ mode?: 'Allow' | 'Block';
50
+ domains?: string[];
51
+ };
52
+ };
53
+ export declare type CheckResult = AutomationCore.CheckResult & {
54
+ readonly renderer?: Renderer;
55
+ };
56
+ export declare type TestResult = AutomationCore.TestResult & {
57
+ readonly renderer?: Renderer;
58
+ };
@@ -1,5 +1,4 @@
1
- import type { Selector } from '@applitools/types';
2
- import { type Context } from '@applitools/driver';
1
+ import { type Context, type Selector } from '@applitools/driver';
3
2
  export declare function generateSafeSelectors<TElement, TSelector>({ context, elementReferences, }: {
4
3
  context: Context<unknown, unknown, TElement, TSelector>;
5
4
  elementReferences: (TElement | Selector<TSelector>)[];
@@ -1,6 +1,6 @@
1
- import type { DomSnapshot } from '@applitools/types/ufg';
2
1
  import { type Logger } from '@applitools/logger';
3
2
  import { type Context } from '@applitools/driver';
3
+ import { type DomSnapshot } from '@applitools/ufg-client';
4
4
  import { type PollScriptSettings } from '../../utils/execute-poll-script';
5
5
  export declare type DomSnapshotSettings = Partial<PollScriptSettings> & {
6
6
  disableBrowserFetching?: boolean;
@@ -1,7 +1,7 @@
1
- import type { Size, Renderer, ChromeEmulationDevice, IOSDevice, ScreenOrientation } from '@applitools/types';
2
- import type { DomSnapshot } from '@applitools/types/ufg';
1
+ import type { Size } from '@applitools/utils';
3
2
  import { type Logger } from '@applitools/logger';
4
3
  import { type Driver } from '@applitools/driver';
4
+ import { type DomSnapshot, type Renderer, type ChromeEmulationDevice, type IOSDevice, type ScreenOrientation } from '@applitools/ufg-client';
5
5
  import { type DomSnapshotSettings } from './take-dom-snapshot';
6
6
  export * from './take-dom-snapshot';
7
7
  export declare type DomSnapshotsSettings = DomSnapshotSettings & {
@@ -1,7 +1,7 @@
1
- import type { Size, ChromeEmulationDevice, IOSDevice, ScreenOrientation } from '@applitools/types';
2
- import type { DomSnapshot, AndroidVHS, IOSVHS } from '@applitools/types/ufg';
1
+ import type { Size } from '@applitools/utils';
3
2
  import { type Logger } from '@applitools/logger';
4
3
  import { type Driver } from '@applitools/driver';
4
+ import { type DomSnapshot, type AndroidSnapshot, type IOSSnapshot, type ChromeEmulationDevice, type IOSDevice, type ScreenOrientation } from '@applitools/ufg-client';
5
5
  import { type DomSnapshotsSettings } from './take-dom-snapshots';
6
6
  import { type VHSesSettings } from './take-vhses';
7
7
  export * from './take-dom-snapshots';
@@ -18,4 +18,4 @@ export declare function takeSnapshots<TDriver extends Driver<unknown, unknown, u
18
18
  getIOSDevices(): Promise<Record<IOSDevice, Record<ScreenOrientation, Size>>>;
19
19
  };
20
20
  logger?: Logger;
21
- }): Promise<DomSnapshot[] | AndroidVHS[] | IOSVHS[]>;
21
+ }): Promise<DomSnapshot[] | AndroidSnapshot[] | IOSSnapshot[]>;
@@ -1,7 +1,7 @@
1
- import type { Renderer } from '@applitools/types';
2
- import type { ServerSettings, AndroidVHS, IOSVHS } from '@applitools/types/ufg';
1
+ import type { ServerSettings } from '../types';
3
2
  import { type Logger } from '@applitools/logger';
4
3
  import { type Driver } from '@applitools/driver';
4
+ import { type Renderer, type AndroidSnapshot, type IOSSnapshot } from '@applitools/ufg-client';
5
5
  export declare type VHSesSettings = ServerSettings & {
6
6
  renderers: Renderer[];
7
7
  waitBeforeCapture?: number;
@@ -14,4 +14,4 @@ export declare function takeVHSes<TDriver extends Driver<unknown, unknown, unkno
14
14
  beforeEachSnapshot?(): void | Promise<void>;
15
15
  };
16
16
  logger: Logger;
17
- }): Promise<AndroidVHS[] | IOSVHS[]>;
17
+ }): Promise<AndroidSnapshot[] | IOSSnapshot[]>;
@@ -1,4 +1,4 @@
1
- import type { TestResult } from '@applitools/types/base';
1
+ import type { TestResult } from '@applitools/core-base';
2
2
  export declare function toFormatterString(results: TestResult[], { includeSubTests, markNewAsPassed }?: {
3
3
  includeSubTests?: boolean;
4
4
  markNewAsPassed?: boolean;
@@ -1,7 +1,8 @@
1
- import { Region, Selector } from '@applitools/types';
2
- import { CheckSettings as BaseCheckSettings } from '@applitools/types/base';
3
- import { CheckSettings as ClassicCheckSettings } from '@applitools/types/classic';
4
- import { CheckSettings as UFGCheckSettings } from '@applitools/types/ufg';
1
+ import type { Region } from '@applitools/utils';
2
+ import type { CheckSettings as BaseCheckSettings } from '@applitools/core-base';
3
+ import type { CheckSettings as UFGCheckSettings } from '../ufg/types';
4
+ import type { CheckSettings as ClassicCheckSettings } from '../ufg/types';
5
+ import { type Selector } from '@applitools/driver';
5
6
  export declare function toBaseCheckSettings<TElement, TSelector>({ settings, }: {
6
7
  settings: ClassicCheckSettings<TElement, TSelector> | UFGCheckSettings<TElement, TSelector>;
7
8
  }): {