@applitools/core 2.3.1 → 2.3.3

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 (73) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/universal/core-server.js +6 -0
  3. package/dist/universal/history.js +86 -0
  4. package/package.json +14 -14
  5. package/types/automation/extract-text.d.ts +16 -0
  6. package/types/automation/get-viewport-size.d.ts +12 -0
  7. package/types/automation/locate-text.d.ts +15 -0
  8. package/types/automation/locate.d.ts +15 -0
  9. package/types/automation/set-viewport-size.d.ts +14 -0
  10. package/types/automation/types.d.ts +84 -0
  11. package/types/automation/utils/take-screenshot.d.ts +19 -0
  12. package/types/automation/utils/to-base-check-settings.d.ts +17 -0
  13. package/types/automation/utils/wait-for-lazy-load.d.ts +14 -0
  14. package/types/check-and-close.d.ts +18 -0
  15. package/types/check.d.ts +18 -0
  16. package/types/classic/abort.d.ts +16 -0
  17. package/types/classic/check-and-close.d.ts +19 -0
  18. package/types/classic/check.d.ts +15 -0
  19. package/types/classic/close.d.ts +16 -0
  20. package/types/classic/core.d.ts +13 -0
  21. package/types/classic/get-base-eyes.d.ts +17 -0
  22. package/types/classic/open-eyes.d.ts +16 -0
  23. package/types/classic/types.d.ts +34 -0
  24. package/types/classic/utils/take-dom-capture.d.ts +14 -0
  25. package/types/cli/cli.d.ts +2 -0
  26. package/types/close-batch.d.ts +13 -0
  27. package/types/close.d.ts +13 -0
  28. package/types/core.d.ts +14 -0
  29. package/types/delete-test.d.ts +13 -0
  30. package/types/errors/abort-error.d.ts +4 -0
  31. package/types/errors/internal-error.d.ts +6 -0
  32. package/types/errors/test-error.d.ts +5 -0
  33. package/types/extract-text.d.ts +17 -0
  34. package/types/get-eyes-results.d.ts +12 -0
  35. package/types/get-manager-results.d.ts +14 -0
  36. package/types/get-typed-eyes.d.ts +22 -0
  37. package/types/index.d.ts +8 -0
  38. package/types/locate-text.d.ts +16 -0
  39. package/types/locate.d.ts +17 -0
  40. package/types/make-ec-client.d.ts +16 -0
  41. package/types/make-manager.d.ts +22 -0
  42. package/types/open-eyes.d.ts +23 -0
  43. package/types/troubleshoot/check-network.d.ts +21 -0
  44. package/types/troubleshoot/eyes.d.ts +11 -0
  45. package/types/troubleshoot/ufg.d.ts +10 -0
  46. package/types/troubleshoot/utils.d.ts +2 -0
  47. package/types/types.d.ts +130 -0
  48. package/types/ufg/abort.d.ts +21 -0
  49. package/types/ufg/check-and-close.d.ts +33 -0
  50. package/types/ufg/check.d.ts +19 -0
  51. package/types/ufg/close.d.ts +19 -0
  52. package/types/ufg/core.d.ts +16 -0
  53. package/types/ufg/get-base-eyes.d.ts +23 -0
  54. package/types/ufg/get-results.d.ts +16 -0
  55. package/types/ufg/open-eyes.d.ts +18 -0
  56. package/types/ufg/types.d.ts +71 -0
  57. package/types/ufg/utils/extract-broker-url.d.ts +6 -0
  58. package/types/ufg/utils/generate-safe-selectors.d.ts +16 -0
  59. package/types/ufg/utils/take-dom-snapshot.d.ts +49 -0
  60. package/types/ufg/utils/take-dom-snapshots.d.ts +24 -0
  61. package/types/ufg/utils/take-snapshots.d.ts +21 -0
  62. package/types/ufg/utils/take-vhses.d.ts +17 -0
  63. package/types/ufg/utils/uniquify-renderers.d.ts +2 -0
  64. package/types/universal/core-server-process.d.ts +9 -0
  65. package/types/universal/core-server.d.ts +12 -0
  66. package/types/universal/core.d.ts +21 -0
  67. package/types/universal/history.d.ts +2 -0
  68. package/types/universal/refer.d.ts +8 -0
  69. package/types/universal/spec-driver.d.ts +11 -0
  70. package/types/universal/types.d.ts +191 -0
  71. package/types/universal/ws-server.d.ts +14 -0
  72. package/types/utils/extract-ci-provider.d.ts +1 -0
  73. package/types/utils/format-results.d.ts +16 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 2.3.3 - 2023/2/16
6
+
7
+ ### Features
8
+ ### Bug fixes
9
+ - Fixed debug mode
10
+ - Fixed logs
11
+
12
+ ## 2.3.2 - 2023/2/16
13
+
14
+ ### Features
15
+ - Added arm64 binary
16
+ ### Bug fixes
17
+
5
18
  ## 2.3.1 - 2023/2/15
6
19
 
7
20
  ### Features
@@ -11,6 +11,7 @@ const ws_server_1 = require("./ws-server");
11
11
  const logger_1 = require("@applitools/logger");
12
12
  const core_1 = require("../core");
13
13
  const refer_1 = require("./refer");
14
+ const history_1 = require("./history");
14
15
  const os_1 = __importDefault(require("os"));
15
16
  const path_1 = __importDefault(require("path"));
16
17
  async function makeCoreServer({ debug = false, shutdownMode = 'lazy', idleTimeout = 900000, // 15min
@@ -57,6 +58,7 @@ printStdout = false, ...handlerOptions } = {}) {
57
58
  transport: 'ws',
58
59
  logger: baseLogger,
59
60
  });
61
+ const getHistory = debug ? (0, history_1.withHistory)(socket) : () => null;
60
62
  if (shutdownMode === 'lazy' && idleTimeout) {
61
63
  clearTimeout(idle);
62
64
  socket.on('close', () => {
@@ -79,6 +81,7 @@ printStdout = false, ...handlerOptions } = {}) {
79
81
  agentId: `eyes-universal/${require('../../package.json').version}/${agentId}`,
80
82
  spec: spec === 'webdriver' ? spec_driver_webdriver_1.default : (0, spec_driver_1.makeSpec)({ socket, spec }),
81
83
  cwd,
84
+ logger,
82
85
  });
83
86
  });
84
87
  socket.command('Core.getAccountInfo', async (options) => {
@@ -144,6 +147,9 @@ printStdout = false, ...handlerOptions } = {}) {
144
147
  refer.destroy(eyes);
145
148
  return results;
146
149
  });
150
+ socket.command('Debug.getHistory', async () => {
151
+ return getHistory();
152
+ });
147
153
  });
148
154
  return { port, close: () => server.close() };
149
155
  }
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.withHistory = void 0;
4
+ //TODO Design a better history tracker
5
+ function withHistory(socket) {
6
+ const history = {
7
+ managers: new Map(),
8
+ eyes: new Map(),
9
+ startedAt: new Date().toISOString(),
10
+ };
11
+ const originalCommand = socket.command;
12
+ socket.command = function command(name, fn) {
13
+ return originalCommand(name, async (payload) => {
14
+ let result, error;
15
+ try {
16
+ result = await fn(payload);
17
+ return result;
18
+ }
19
+ catch (err) {
20
+ error = err;
21
+ throw error;
22
+ }
23
+ finally {
24
+ if (name === 'Core.makeManager') {
25
+ const managerRef = result;
26
+ history.managers.set(extractRefId(managerRef), { ...payload, manager: result, eyes: [] });
27
+ }
28
+ else if (name.startsWith('EyesManager.')) {
29
+ const managerRef = payload.manager;
30
+ const managerHistory = history.managers.get(extractRefId(managerRef));
31
+ if (managerHistory) {
32
+ if (name === 'EyesManager.openEyes') {
33
+ if (error) {
34
+ managerHistory.eyes.push({ ...payload, error });
35
+ }
36
+ else {
37
+ const eyesRef = result;
38
+ managerHistory.eyes.push(eyesRef);
39
+ history.eyes.set(extractRefId(eyesRef), { ...payload, eyes: eyesRef, commands: [] });
40
+ }
41
+ }
42
+ }
43
+ }
44
+ else if (name.startsWith('Eyes.')) {
45
+ const eyesRef = payload.eyes;
46
+ const eyesHistory = history.eyes.get(extractRefId(eyesRef));
47
+ if (eyesHistory) {
48
+ if (name === 'Eyes.check') {
49
+ const command = { name, ...payload };
50
+ if (error)
51
+ command.error = error;
52
+ else
53
+ command.result = result;
54
+ eyesHistory.commands.push(command);
55
+ }
56
+ else if (name === 'Eyes.close') {
57
+ eyesHistory.closed = true;
58
+ }
59
+ else if (name === 'Eyes.abort') {
60
+ eyesHistory.aborted = true;
61
+ }
62
+ else if (name === 'Eyes.getResults') {
63
+ eyesHistory.result = error !== null && error !== void 0 ? error : result;
64
+ }
65
+ }
66
+ }
67
+ }
68
+ });
69
+ };
70
+ return function getHistory() {
71
+ return {
72
+ managers: Array.from(history.managers.values(), managerMeta => ({
73
+ ...managerMeta,
74
+ eyes: managerMeta.eyes.map(eyesRefOrError => {
75
+ return eyesRefOrError instanceof Error ? eyesRefOrError : history.eyes.get(extractRefId(eyesRefOrError));
76
+ }),
77
+ })),
78
+ startedAt: history.startedAt,
79
+ requestedAt: new Date().toISOString(),
80
+ };
81
+ };
82
+ function extractRefId(ref) {
83
+ return ref['applitools-ref-id'];
84
+ }
85
+ }
86
+ exports.withHistory = withHistory;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/core",
3
- "version": "2.3.1",
3
+ "version": "2.3.3",
4
4
  "homepage": "https://applitools.com",
5
5
  "bugs": {
6
6
  "url": "https://github.com/applitools/eyes.sdk.javascript1/issues"
@@ -73,19 +73,19 @@
73
73
  ]
74
74
  },
75
75
  "dependencies": {
76
- "@applitools/core-base": "1.1.37",
76
+ "@applitools/core-base": "1.1.38",
77
77
  "@applitools/dom-capture": "11.2.1",
78
78
  "@applitools/dom-snapshot": "4.7.3",
79
- "@applitools/driver": "1.11.30",
80
- "@applitools/ec-client": "1.2.8",
81
- "@applitools/logger": "1.1.45",
82
- "@applitools/nml-client": "1.3.34",
79
+ "@applitools/driver": "1.11.31",
80
+ "@applitools/ec-client": "1.2.9",
81
+ "@applitools/logger": "1.1.46",
82
+ "@applitools/nml-client": "1.3.35",
83
83
  "@applitools/req": "1.1.30",
84
- "@applitools/screenshoter": "3.7.26",
84
+ "@applitools/screenshoter": "3.7.27",
85
85
  "@applitools/snippets": "2.4.15",
86
- "@applitools/socket": "1.0.6",
87
- "@applitools/spec-driver-webdriver": "1.0.8",
88
- "@applitools/ufg-client": "1.1.25",
86
+ "@applitools/socket": "1.0.7",
87
+ "@applitools/spec-driver-webdriver": "1.0.10",
88
+ "@applitools/ufg-client": "1.1.26",
89
89
  "@applitools/utils": "1.3.30",
90
90
  "abort-controller": "3.0.0",
91
91
  "chalk": "4.1.2",
@@ -97,10 +97,10 @@
97
97
  },
98
98
  "devDependencies": {
99
99
  "@applitools/bongo": "^2.2.5",
100
- "@applitools/spec-driver-puppeteer": "^1.1.40",
101
- "@applitools/spec-driver-selenium": "^1.5.27",
102
- "@applitools/spec-driver-webdriverio": "^1.4.25",
103
- "@applitools/test-server": "^1.1.25",
100
+ "@applitools/spec-driver-puppeteer": "^1.1.43",
101
+ "@applitools/spec-driver-selenium": "^1.5.28",
102
+ "@applitools/spec-driver-webdriverio": "^1.4.26",
103
+ "@applitools/test-server": "^1.1.26",
104
104
  "@applitools/test-utils": "^1.5.12",
105
105
  "@types/mocha": "^9.1.1",
106
106
  "@types/node": "12",
@@ -0,0 +1,16 @@
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type { DriverTarget, ImageTarget, ExtractTextSettings } from '../classic/types';
3
+ import type { Core as BaseCore } from '@applitools/core-base';
4
+ import { type Logger } from '@applitools/logger';
5
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
6
+ type Options<TSpec extends SpecType> = {
7
+ core: BaseCore;
8
+ spec?: SpecDriver<TSpec>;
9
+ logger: Logger;
10
+ };
11
+ export declare function makeExtractText<TSpec extends SpecType>({ core, spec, logger: defaultLogger }: Options<TSpec>): ({ target, settings, logger, }: {
12
+ target: DriverTarget<TSpec> | ImageTarget;
13
+ settings: MaybeArray<ExtractTextSettings<TSpec>>;
14
+ logger?: Logger | undefined;
15
+ }) => Promise<string[]>;
16
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { DriverTarget } from './types';
2
+ import { type Logger } from '@applitools/logger';
3
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
4
+ type Options<TSpec extends SpecType> = {
5
+ spec: SpecDriver<TSpec>;
6
+ logger: Logger;
7
+ };
8
+ export declare function makeGetViewportSize<TSpec extends SpecType>({ spec, logger: defaultLogger }: Options<TSpec>): ({ target, logger, }: {
9
+ target: DriverTarget<TSpec>;
10
+ logger?: Logger | undefined;
11
+ }) => Promise<import("@applitools/utils").Size>;
12
+ export {};
@@ -0,0 +1,15 @@
1
+ import type { DriverTarget, ImageTarget, LocateTextSettings, LocateTextResult } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
5
+ type Options<TSpec extends SpecType> = {
6
+ core: BaseCore;
7
+ spec?: SpecDriver<TSpec>;
8
+ logger: Logger;
9
+ };
10
+ export declare function makeLocateText<TSpec extends SpecType>({ core, spec, logger: defaultLogger }: Options<TSpec>): <TPattern extends string>({ target, settings, logger, }: {
11
+ target: DriverTarget<TSpec> | ImageTarget;
12
+ settings: LocateTextSettings<TPattern, TSpec>;
13
+ logger?: Logger | undefined;
14
+ }) => Promise<LocateTextResult<TPattern>>;
15
+ export {};
@@ -0,0 +1,15 @@
1
+ import type { DriverTarget, ImageTarget, LocateSettings, LocateResult } from './types';
2
+ import type { Core as BaseCore } from '@applitools/core-base';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
5
+ type Options<TSpec extends SpecType> = {
6
+ core: BaseCore;
7
+ spec?: SpecDriver<TSpec>;
8
+ logger: Logger;
9
+ };
10
+ export declare function makeLocate<TSpec extends SpecType>({ spec, core, logger: defaultLogger }: Options<TSpec>): <TLocator extends string>({ settings, target, logger, }: {
11
+ target: DriverTarget<TSpec> | ImageTarget;
12
+ settings: LocateSettings<TLocator, TSpec>;
13
+ logger?: Logger | undefined;
14
+ }) => Promise<LocateResult<TLocator>>;
15
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { Size } from '@applitools/utils';
2
+ import type { DriverTarget } from './types';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
5
+ type Options<TSpec extends SpecType> = {
6
+ spec: SpecDriver<TSpec>;
7
+ logger: Logger;
8
+ };
9
+ export declare function makeSetViewportSize<TSpec extends SpecType>({ spec, logger: defaultLogger }: Options<TSpec>): ({ target, size, logger, }: {
10
+ target: DriverTarget<TSpec>;
11
+ size: Size;
12
+ logger?: Logger | undefined;
13
+ }) => Promise<void>;
14
+ export {};
@@ -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 SpecType, type Driver, type ElementReference, type ContextReference } from '@applitools/driver';
4
+ import { type Logger } from '@applitools/logger';
5
+ export * from '@applitools/core-base/types';
6
+ export type DriverTarget<TSpec extends SpecType> = TSpec['driver'] | Driver<TSpec>;
7
+ export type Target<TSpec extends SpecType> = DriverTarget<TSpec> | BaseCore.Target;
8
+ export interface Core<TSpec extends SpecType, TTarget = Target<TSpec>, TEyes extends Eyes<TSpec, TTarget> = Eyes<TSpec, TTarget>> extends BaseCore.Core<TTarget, TEyes> {
9
+ isDriver?(driver: any): driver is TSpec['driver'];
10
+ isElement?(element: any): element is TSpec['element'];
11
+ isSelector?(selector: any): selector is TSpec['selector'];
12
+ getViewportSize?(options: {
13
+ target: DriverTarget<TSpec>;
14
+ logger?: Logger;
15
+ }): Promise<Size>;
16
+ setViewportSize?(options: {
17
+ target: DriverTarget<TSpec>;
18
+ size: Size;
19
+ logger?: Logger;
20
+ }): Promise<void>;
21
+ openEyes(options: {
22
+ target?: DriverTarget<TSpec>;
23
+ settings: BaseCore.OpenSettings;
24
+ eyes?: BaseCore.Eyes[];
25
+ logger?: Logger;
26
+ }): Promise<TEyes>;
27
+ locate<TLocator extends string>(options: {
28
+ target: TTarget;
29
+ settings: LocateSettings<TLocator, TSpec>;
30
+ logger?: Logger;
31
+ }): Promise<BaseCore.LocateResult<TLocator>>;
32
+ locateText<TPattern extends string>(options: {
33
+ target: TTarget;
34
+ settings: LocateTextSettings<TPattern, TSpec>;
35
+ logger?: Logger;
36
+ }): Promise<BaseCore.LocateTextResult<TPattern>>;
37
+ extractText(options: {
38
+ target: TTarget;
39
+ settings: MaybeArray<ExtractTextSettings<TSpec>>;
40
+ logger?: Logger;
41
+ }): Promise<string[]>;
42
+ }
43
+ export interface Eyes<TSpec extends SpecType, TTarget = Target<TSpec>> extends BaseCore.Eyes<TTarget> {
44
+ getBaseEyes(options?: {
45
+ logger?: Logger;
46
+ }): Promise<BaseCore.Eyes[]>;
47
+ check(options?: {
48
+ target?: TTarget;
49
+ settings?: CheckSettings<TSpec>;
50
+ logger?: Logger;
51
+ }): Promise<BaseCore.CheckResult[]>;
52
+ checkAndClose(options?: {
53
+ target?: TTarget;
54
+ settings?: CheckSettings<TSpec> & BaseCore.CloseSettings;
55
+ logger?: Logger;
56
+ }): Promise<BaseCore.TestResult[]>;
57
+ }
58
+ export interface ScreenshotSettings<TSpec extends SpecType> extends BaseCore.ImageSettings<Region | ElementReference<TSpec>> {
59
+ frames?: (ContextReference<TSpec> | {
60
+ frame: ContextReference<TSpec>;
61
+ scrollRootElement?: ElementReference<TSpec>;
62
+ })[];
63
+ fully?: boolean;
64
+ scrollRootElement?: ElementReference<TSpec>;
65
+ stitchMode?: 'Scroll' | 'CSS';
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 type LocateSettings<TLocator extends string, TSpec extends SpecType> = BaseCore.LocateSettings<TLocator, Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec>;
82
+ export type LocateTextSettings<TPattern extends string, TSpec extends SpecType> = BaseCore.LocateTextSettings<TPattern, Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec>;
83
+ export type ExtractTextSettings<TSpec extends SpecType> = BaseCore.ExtractTextSettings<Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec>;
84
+ export type CheckSettings<TSpec extends SpecType> = BaseCore.CheckSettings<Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec>;
@@ -0,0 +1,19 @@
1
+ import type { Region } from '@applitools/utils';
2
+ import type { ScreenshotSettings } from '../../classic/types';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type Driver, type Element, type ElementReference, type SpecType } from '@applitools/driver';
5
+ export type Screenshot<TSpec extends SpecType> = {
6
+ image: any;
7
+ region: Region;
8
+ element: Element<TSpec>;
9
+ scrollingElement: Element<TSpec>;
10
+ restoreState(): Promise<void>;
11
+ calculatedRegions: [];
12
+ };
13
+ export declare function takeScreenshot<TSpec extends SpecType>({ driver, settings, logger, }: {
14
+ driver: Driver<TSpec>;
15
+ settings: ScreenshotSettings<TSpec> & {
16
+ regionsToCalculate?: ElementReference<TSpec>[];
17
+ };
18
+ logger: Logger;
19
+ }): Promise<Screenshot<TSpec>>;
@@ -0,0 +1,17 @@
1
+ import type { Region } from '@applitools/utils';
2
+ import type { CheckSettings } from '../types';
3
+ import type { CheckSettings as BaseCheckSettings } from '@applitools/core-base';
4
+ import { type SpecType, type ElementReference, type Selector } from '@applitools/driver';
5
+ export declare function toBaseCheckSettings<TSpec extends SpecType>({ settings }: {
6
+ settings: CheckSettings<TSpec>;
7
+ }): {
8
+ elementReferencesToCalculate: ElementReference<TSpec>[];
9
+ elementReferenceToTarget: ElementReference<TSpec> | undefined;
10
+ getBaseCheckSettings: ({ calculatedRegions, preserveTransformation, }: {
11
+ calculatedRegions: {
12
+ selector?: Selector;
13
+ regions: Region[];
14
+ }[];
15
+ preserveTransformation?: boolean | undefined;
16
+ }) => BaseCheckSettings;
17
+ };
@@ -0,0 +1,14 @@
1
+ import { type Logger } from '@applitools/logger';
2
+ import { type SpecType, type Context } from '@applitools/driver';
3
+ export type LazyLoadSettings = {
4
+ scrollLength?: number;
5
+ waitingTime?: number;
6
+ maxAmountToScroll?: number;
7
+ executionTimeout?: number;
8
+ pollTimeout?: number;
9
+ };
10
+ export declare function waitForLazyLoad<TSpec extends SpecType>({ context, settings, logger, }: {
11
+ context: Context<TSpec>;
12
+ settings: LazyLoadSettings;
13
+ logger: Logger;
14
+ }): Promise<void>;
@@ -0,0 +1,18 @@
1
+ import type { Target, DriverTarget, Eyes, Config, CheckSettings, CloseSettings, TestResult } from './types';
2
+ import { type Logger } from '@applitools/logger';
3
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
4
+ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
5
+ type?: TType;
6
+ eyes: Eyes<TSpec, TType>;
7
+ target?: DriverTarget<TSpec>;
8
+ spec?: SpecDriver<TSpec>;
9
+ logger: Logger;
10
+ };
11
+ export declare function makeCheckAndClose<TSpec extends SpecType, TDefaultType extends 'classic' | 'ufg'>({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TSpec, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, target, settings, config, logger, }?: {
12
+ type?: TType | undefined;
13
+ target?: Target<TSpec, TType> | undefined;
14
+ settings?: (CheckSettings<TSpec, TDefaultType> & CloseSettings<TDefaultType> & CheckSettings<TSpec, TType> & CloseSettings<TType>) | undefined;
15
+ config?: (Config<TSpec, TDefaultType> & Config<TSpec, TType>) | undefined;
16
+ logger?: Logger | undefined;
17
+ }) => Promise<TestResult<TType>[]>;
18
+ export {};
@@ -0,0 +1,18 @@
1
+ import type { Target, DriverTarget, Eyes, Config, CheckSettings, CheckResult } from './types';
2
+ import { type Logger } from '@applitools/logger';
3
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
4
+ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
5
+ type?: TType;
6
+ eyes: Eyes<TSpec, TType>;
7
+ target?: DriverTarget<TSpec>;
8
+ spec?: SpecDriver<TSpec>;
9
+ logger: Logger;
10
+ };
11
+ export declare function makeCheck<TSpec extends SpecType, TDefaultType extends 'classic' | 'ufg'>({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TSpec, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, target, settings, config, logger, }?: {
12
+ type?: TType | undefined;
13
+ target?: Target<TSpec, TType> | undefined;
14
+ settings?: CheckSettings<TSpec, TType> | undefined;
15
+ config?: Config<TSpec, TType> | undefined;
16
+ logger?: Logger | undefined;
17
+ }) => Promise<CheckResult<TType>[]>;
18
+ export {};
@@ -0,0 +1,16 @@
1
+ import type { AbortSettings } from './types';
2
+ import type { Eyes } from './types';
3
+ import { type Logger } from '@applitools/logger';
4
+ import type { DriverTarget } from './types';
5
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
6
+ type Options<TSpec extends SpecType> = {
7
+ eyes: Eyes<TSpec>;
8
+ target?: DriverTarget<TSpec>;
9
+ spec?: SpecDriver<TSpec>;
10
+ logger: Logger;
11
+ };
12
+ export declare function makeAbort<TSpec extends SpecType>({ eyes, target, spec, logger: defaultLogger }: Options<TSpec>): ({ settings, logger, }?: {
13
+ settings?: AbortSettings | undefined;
14
+ logger?: Logger | undefined;
15
+ }) => Promise<void>;
16
+ export {};
@@ -0,0 +1,19 @@
1
+ import type { Target, DriverTarget, Eyes, CheckSettings, CloseSettings, TestResult } from './types';
2
+ import type { CheckSettings as BaseCheckSettings } from '@applitools/core-base';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
5
+ import * as utils from '@applitools/utils';
6
+ type Options<TSpec extends SpecType> = {
7
+ eyes: Eyes<TSpec>;
8
+ target?: DriverTarget<TSpec>;
9
+ spec?: SpecDriver<TSpec>;
10
+ logger: Logger;
11
+ };
12
+ export declare function makeCheckAndClose<TSpec extends SpecType>({ eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
13
+ target?: Target<TSpec> | undefined;
14
+ settings?: (BaseCheckSettings<utils.Region | import("@applitools/driver").ElementReference<TSpec>> & import("./types").ScreenshotSettings<TSpec> & {
15
+ retryTimeout?: number | undefined;
16
+ } & CloseSettings) | undefined;
17
+ logger?: Logger | undefined;
18
+ }) => Promise<TestResult[]>;
19
+ export {};
@@ -0,0 +1,15 @@
1
+ import type { Target, DriverTarget, Eyes, CheckSettings, CheckResult } from './types';
2
+ import { type Logger } from '@applitools/logger';
3
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
4
+ type Options<TSpec extends SpecType> = {
5
+ eyes: Eyes<TSpec>;
6
+ target?: DriverTarget<TSpec>;
7
+ spec?: SpecDriver<TSpec>;
8
+ logger: Logger;
9
+ };
10
+ export declare function makeCheck<TSpec extends SpecType>({ eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
11
+ target?: Target<TSpec> | undefined;
12
+ settings?: CheckSettings<TSpec> | undefined;
13
+ logger?: Logger | undefined;
14
+ }) => Promise<CheckResult[]>;
15
+ export {};
@@ -0,0 +1,16 @@
1
+ import type { CloseSettings } from './types';
2
+ import type { Eyes } from './types';
3
+ import { type Logger } from '@applitools/logger';
4
+ import type { DriverTarget } from './types';
5
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
6
+ type Options<TSpec extends SpecType> = {
7
+ eyes: Eyes<TSpec>;
8
+ target?: DriverTarget<TSpec>;
9
+ spec?: SpecDriver<TSpec>;
10
+ logger: Logger;
11
+ };
12
+ export declare function makeClose<TSpec extends SpecType>({ eyes, target, spec, logger: defaultLogger }: Options<TSpec>): ({ settings, logger, }?: {
13
+ settings?: CloseSettings | undefined;
14
+ logger?: Logger | undefined;
15
+ }) => Promise<void>;
16
+ export {};
@@ -0,0 +1,13 @@
1
+ import type { Core } from './types';
2
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type Core as BaseCore } from '@applitools/core-base';
5
+ type Options<TSpec extends SpecType> = {
6
+ spec?: SpecDriver<TSpec>;
7
+ core?: BaseCore;
8
+ agentId?: string;
9
+ cwd?: string;
10
+ logger?: Logger;
11
+ };
12
+ export declare function makeCore<TSpec extends SpecType>({ spec, core, agentId, cwd, logger: defaultLogger, }: Options<TSpec>): Core<TSpec>;
13
+ export {};
@@ -0,0 +1,17 @@
1
+ import type { OpenSettings } from './types';
2
+ import type { Core as BaseCore, Eyes as BaseEyes } from '@applitools/core-base';
3
+ import { type Logger } from '@applitools/logger';
4
+ type Options = {
5
+ settings: OpenSettings;
6
+ core: BaseCore;
7
+ eyes?: BaseEyes[];
8
+ logger: Logger;
9
+ };
10
+ export declare function makeGetBaseEyes({ settings, core, eyes, logger: defaultLogger }: Options): (({ logger }?: {
11
+ logger?: Logger | undefined;
12
+ }) => Promise<BaseEyes[]>) & {
13
+ getCachedValues(): Promise<BaseEyes<import("@applitools/core-base").ImageTarget>[]>[];
14
+ setCachedValue(key: any, value: Promise<BaseEyes<import("@applitools/core-base").ImageTarget>[]>): void;
15
+ clearCache(): void;
16
+ };
17
+ export {};
@@ -0,0 +1,16 @@
1
+ import type { DriverTarget, Eyes, OpenSettings } from './types';
2
+ import type { Core as BaseCore, Eyes as BaseEyes } from '@applitools/core-base';
3
+ import { type Logger } from '@applitools/logger';
4
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
5
+ type Options<TSpec extends SpecType> = {
6
+ core: BaseCore;
7
+ spec?: SpecDriver<TSpec>;
8
+ logger: Logger;
9
+ };
10
+ export declare function makeOpenEyes<TSpec extends SpecType>({ core, spec, logger: defaultLogger }: Options<TSpec>): ({ target, settings, eyes, logger, }: {
11
+ target?: DriverTarget<TSpec> | undefined;
12
+ settings: OpenSettings;
13
+ eyes?: BaseEyes<import("@applitools/core-base").ImageTarget>[] | undefined;
14
+ logger?: Logger | undefined;
15
+ }) => Promise<Eyes<TSpec>>;
16
+ export {};
@@ -0,0 +1,34 @@
1
+ import type * as BaseCore from '@applitools/core-base/types';
2
+ import type * as AutomationCore from '../automation/types';
3
+ import { type SpecType } from '@applitools/driver';
4
+ import { type Logger } from '@applitools/logger';
5
+ export * from '../automation/types';
6
+ export interface Core<TSpec extends SpecType, TTarget = AutomationCore.Target<TSpec>, TEyes extends Eyes<TSpec, TTarget> = Eyes<TSpec, TTarget>> extends AutomationCore.Core<TSpec, TTarget, TEyes> {
7
+ readonly type: 'classic';
8
+ openEyes(options: {
9
+ target?: AutomationCore.DriverTarget<TSpec>;
10
+ settings: OpenSettings;
11
+ eyes?: BaseCore.Eyes[];
12
+ logger?: Logger;
13
+ }): Promise<TEyes>;
14
+ }
15
+ export interface Eyes<TSpec extends SpecType, TTarget = AutomationCore.Target<TSpec>> extends AutomationCore.Eyes<TSpec, TTarget> {
16
+ readonly type: 'classic';
17
+ check(options?: {
18
+ target?: TTarget;
19
+ settings?: CheckSettings<TSpec>;
20
+ logger?: Logger;
21
+ }): Promise<AutomationCore.CheckResult[]>;
22
+ checkAndClose(options?: {
23
+ target?: TTarget;
24
+ settings?: CheckSettings<TSpec> & AutomationCore.CloseSettings;
25
+ logger?: Logger;
26
+ }): Promise<AutomationCore.TestResult[]>;
27
+ }
28
+ export type OpenSettings = AutomationCore.OpenSettings & {
29
+ keepPlatformNameAsIs?: boolean;
30
+ useCeilForViewportSize?: boolean;
31
+ };
32
+ export type CheckSettings<TSpec extends SpecType> = AutomationCore.CheckSettings<TSpec> & {
33
+ retryTimeout?: number;
34
+ };
@@ -0,0 +1,14 @@
1
+ import { type SpecType, type Driver } from '@applitools/driver';
2
+ import { type Logger } from '@applitools/logger';
3
+ import { type Fetch } from '@applitools/req';
4
+ export type DomCaptureSettings = {
5
+ fetch?: Fetch;
6
+ executionTimeout?: number;
7
+ pollTimeout?: number;
8
+ chunkByteLength?: number;
9
+ };
10
+ export declare function takeDomCapture<TSpec extends SpecType>({ driver, settings, logger, }: {
11
+ driver: Driver<TSpec>;
12
+ settings?: DomCaptureSettings;
13
+ logger: Logger;
14
+ }): Promise<string>;
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,13 @@
1
+ import type { MaybeArray } from '@applitools/utils';
2
+ import type { CloseBatchSettings } from './types';
3
+ import type { Core as BaseCore } from '@applitools/core-base';
4
+ import { type Logger } from '@applitools/logger';
5
+ type Options = {
6
+ core: BaseCore;
7
+ logger: Logger;
8
+ };
9
+ export declare function makeCloseBatch({ core, logger: defaultLogger }: Options): ({ settings, logger, }: {
10
+ settings: MaybeArray<CloseBatchSettings>;
11
+ logger?: Logger | undefined;
12
+ }) => Promise<void>;
13
+ export {};