@applitools/core 1.2.17 → 1.3.1

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 (69) hide show
  1. package/dist/automation/get-viewport-size.js +3 -3
  2. package/dist/automation/locate.js +5 -5
  3. package/dist/automation/set-viewport-size.js +3 -3
  4. package/dist/check-and-close.js +11 -6
  5. package/dist/check.js +28 -17
  6. package/dist/classic/check-and-close.js +12 -8
  7. package/dist/classic/check.js +15 -11
  8. package/dist/classic/extract-text.js +5 -9
  9. package/dist/classic/get-base-eyes.js +4 -4
  10. package/dist/classic/locate-text.js +5 -5
  11. package/dist/classic/open-eyes.js +7 -7
  12. package/dist/close.js +2 -1
  13. package/dist/extract-text.js +2 -1
  14. package/dist/get-typed-eyes.js +27 -0
  15. package/dist/index.js +3 -1
  16. package/dist/locate-text.js +2 -1
  17. package/dist/make-manager.js +9 -2
  18. package/dist/open-eyes.js +37 -39
  19. package/dist/types.js +1 -0
  20. package/dist/ufg/abort.js +1 -1
  21. package/dist/ufg/check-and-close.js +220 -2
  22. package/dist/ufg/check.js +14 -9
  23. package/dist/ufg/core.js +2 -0
  24. package/dist/ufg/get-base-eyes.js +1 -17
  25. package/dist/ufg/open-eyes.js +5 -11
  26. package/dist/ufg/utils/take-dom-snapshots.js +11 -3
  27. package/dist/utils/wait-for-lazy-load.js +10 -8
  28. package/package.json +18 -16
  29. package/types/automation/get-viewport-size.d.ts +6 -3
  30. package/types/automation/locate.d.ts +7 -4
  31. package/types/automation/set-viewport-size.d.ts +8 -3
  32. package/types/automation/types.d.ts +18 -69
  33. package/types/automation/utils/take-screenshot.d.ts +1 -1
  34. package/types/check-and-close.d.ts +13 -13
  35. package/types/check.d.ts +9 -11
  36. package/types/classic/check-and-close.d.ts +9 -5
  37. package/types/classic/check.d.ts +9 -5
  38. package/types/classic/core.d.ts +1 -1
  39. package/types/classic/extract-text.d.ts +10 -5
  40. package/types/classic/get-base-eyes.d.ts +3 -3
  41. package/types/classic/locate-text.d.ts +9 -5
  42. package/types/classic/open-eyes.d.ts +9 -4
  43. package/types/classic/types.d.ts +8 -35
  44. package/types/classic/utils/take-dom-capture.d.ts +1 -1
  45. package/types/close-batch.d.ts +1 -1
  46. package/types/close-manager.d.ts +1 -1
  47. package/types/close.d.ts +4 -6
  48. package/types/core.d.ts +1 -1
  49. package/types/delete-test.d.ts +1 -1
  50. package/types/extract-text.d.ts +7 -9
  51. package/types/get-typed-eyes.d.ts +21 -0
  52. package/types/index.d.ts +1 -0
  53. package/types/locate-text.d.ts +7 -9
  54. package/types/locate.d.ts +3 -4
  55. package/types/make-manager.d.ts +2 -1
  56. package/types/open-eyes.d.ts +13 -9
  57. package/types/types.d.ts +38 -23
  58. package/types/ufg/abort.d.ts +5 -3
  59. package/types/ufg/check-and-close.d.ts +11 -5
  60. package/types/ufg/check.d.ts +9 -5
  61. package/types/ufg/close.d.ts +6 -3
  62. package/types/ufg/core.d.ts +1 -1
  63. package/types/ufg/get-base-eyes.d.ts +3 -3
  64. package/types/ufg/open-eyes.d.ts +6 -7
  65. package/types/ufg/types.d.ts +12 -37
  66. package/types/ufg/utils/take-dom-snapshot.d.ts +1 -1
  67. package/types/ufg/utils/take-dom-snapshots.d.ts +2 -2
  68. package/types/ufg/utils/take-vhses.d.ts +1 -1
  69. package/types/utils/wait-for-lazy-load.d.ts +4 -4
@@ -1,19 +1,23 @@
1
- import type { Core } 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';
1
+ import type { TypedCore, Eyes, Config, OpenSettings } from './types';
2
+ import type { Core as BaseCore, Batch } from '@applitools/core-base';
5
3
  import { type Logger } from '@applitools/logger';
6
4
  import { type SpecDriver } from '@applitools/driver';
7
- declare type Options<TDriver, TContext, TElement, TSelector> = {
8
- type?: 'classic' | 'ufg';
5
+ type Options<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
6
+ type?: TType;
9
7
  concurrency?: number;
10
8
  core: BaseCore;
11
9
  cores?: {
12
- classic: ClassicCore<TDriver, TContext, TElement, TSelector>;
13
- ufg: UFGCore<TDriver, TContext, TElement, TSelector>;
10
+ [TKey in 'classic' | 'ufg']: TypedCore<TDriver, TContext, TElement, TSelector, TKey>;
14
11
  };
15
12
  spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
16
13
  logger?: Logger;
14
+ batch?: Batch;
17
15
  };
18
- export declare function makeOpenEyes<TDriver, TContext, TElement, TSelector>({ type: defaultType, concurrency, core, cores, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): Core<TDriver, TContext, TElement, TSelector>['openEyes'];
16
+ export declare function makeOpenEyes<TDriver, TContext, TElement, TSelector, TDefaultType extends 'classic' | 'ufg' = 'classic'>({ type: defaultType, concurrency, core, cores, spec, logger: defaultLogger, batch, }: Options<TDriver, TContext, TElement, TSelector, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, settings, config, target, logger, }: {
17
+ type?: TType;
18
+ settings?: Partial<OpenSettings<TDefaultType> & OpenSettings<TType>>;
19
+ config?: Config<TElement, TSelector, TDefaultType> & Config<TElement, TSelector, TType>;
20
+ target?: TDriver;
21
+ logger?: Logger;
22
+ }) => Promise<Eyes<TDriver, TContext, TElement, TSelector, TType, import("./types").Target<TDriver, TContext, TElement, TSelector, TType>>>;
19
23
  export {};
package/types/types.d.ts CHANGED
@@ -5,7 +5,10 @@ import type * as UFGCore from './ufg/types';
5
5
  import { type Logger } from '@applitools/logger';
6
6
  import { type Renderer } from '@applitools/ufg-client';
7
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>;
8
+ export * from './automation/types';
9
+ export type TypedCore<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.Core<TDriver, TContext, TElement, TSelector> : ClassicCore.Core<TDriver, TContext, TElement, TSelector>;
10
+ export type TypedEyes<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg', TTarget = Target<TDriver, TContext, TElement, TSelector, TType>> = TType extends 'ufg' ? UFGCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> : ClassicCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget>;
11
+ export type Target<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.UFGTarget<TDriver, TContext, TElement, TSelector> : ClassicCore.ClassicTarget<TDriver, TContext, TElement, TSelector>;
9
12
  export interface Core<TDriver, TContext, TElement, TSelector> extends AutomationCore.Core<TDriver, TContext, TElement, TSelector> {
10
13
  makeManager<TType extends 'classic' | 'ufg' = 'classic'>(options?: {
11
14
  type: TType;
@@ -15,13 +18,13 @@ export interface Core<TDriver, TContext, TElement, TSelector> extends Automation
15
18
  }): Promise<EyesManager<TDriver, TContext, TElement, TSelector, TType>>;
16
19
  openEyes<TType extends 'classic' | 'ufg' = 'classic'>(options: {
17
20
  type?: TType;
18
- target?: TDriver;
21
+ target?: AutomationCore.DriverTarget<TDriver, TContext, TElement, TSelector>;
19
22
  settings?: Partial<OpenSettings<TType>>;
20
23
  config?: Config<TElement, TSelector, TType>;
21
24
  logger?: Logger;
22
25
  }): Promise<Eyes<TDriver, TContext, TElement, TSelector, TType>>;
23
26
  locate<TLocator extends string>(options: {
24
- target?: TDriver | AutomationCore.Screenshot;
27
+ target?: AutomationCore.DriverTarget<TDriver, TContext, TElement, TSelector> | AutomationCore.ImageTarget;
25
28
  settings?: Partial<LocateSettings<TLocator, TElement, TSelector>>;
26
29
  config?: Config<TElement, TSelector, 'classic'>;
27
30
  logger?: Logger;
@@ -41,19 +44,23 @@ export interface EyesManager<TDriver, TContext, TElement, TSelector, TType exten
41
44
  logger?: Logger;
42
45
  }) => Promise<TestResultSummary<TType>>;
43
46
  }
44
- export interface ClassicEyes<TDriver, TContext, TElement, TSelector, TTarget = Target<TDriver, 'classic'>> extends ClassicCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> {
47
+ export interface ClassicEyes<TDriver, TContext, TElement, TSelector, TTarget = Target<TDriver, TContext, TElement, TSelector, 'classic'>> extends ClassicCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> {
48
+ getTypedEyes<TType extends 'classic' | 'ufg' = 'classic'>(options?: {
49
+ type?: TType;
50
+ logger?: Logger;
51
+ }): Promise<TypedEyes<TDriver, TContext, TElement, TSelector, TType>>;
45
52
  check<TType extends 'classic' | 'ufg' = 'classic'>(options?: {
46
53
  type?: TType;
47
54
  target?: TTarget;
48
- settings?: Partial<CheckSettings<TElement, TSelector, TType>>;
49
- config?: Config<TElement, TSelector, TType>;
55
+ settings?: Partial<CheckSettings<TElement, TSelector, 'classic'> & CheckSettings<TElement, TSelector, TType>>;
56
+ config?: Config<TElement, TSelector, 'classic'> & Config<TElement, TSelector, TType>;
50
57
  logger?: Logger;
51
58
  }): Promise<CheckResult<TType>[]>;
52
59
  checkAndClose<TType extends 'classic' | 'ufg' = 'classic'>(options?: {
53
60
  type?: TType;
54
61
  target?: TTarget;
55
- settings?: Partial<CheckSettings<TElement, TSelector, TType> & CloseSettings<TType>>;
56
- config?: Config<TElement, TSelector, TType>;
62
+ settings?: Partial<CheckSettings<TElement, TSelector, 'classic'> & CloseSettings<'classic'> & CheckSettings<TElement, TSelector, TType> & CloseSettings<TType>>;
63
+ config?: Config<TElement, TSelector, 'classic'> & Config<TElement, TSelector, TType>;
57
64
  logger?: Logger;
58
65
  }): Promise<TestResult<TType>[]>;
59
66
  locateText<TPattern extends string>(options: {
@@ -74,19 +81,27 @@ export interface ClassicEyes<TDriver, TContext, TElement, TSelector, TTarget = T
74
81
  logger?: Logger;
75
82
  }): Promise<TestResult<'classic'>[]>;
76
83
  }
77
- export interface UFGEyes<TDriver, TContext, TElement, TSelector, TTarget = Target<TDriver, 'ufg'>> extends UFGCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> {
84
+ export interface UFGEyes<TDriver, TContext, TElement, TSelector, TTarget = Target<TDriver, TContext, TElement, TSelector, 'ufg'>> extends UFGCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> {
85
+ getTypedEyes<TType extends 'classic' | 'ufg' = 'classic'>(options?: {
86
+ type?: TType;
87
+ settings?: {
88
+ type: 'web' | 'native';
89
+ renderers: Renderer[];
90
+ };
91
+ logger?: Logger;
92
+ }): Promise<TypedEyes<TDriver, TContext, TElement, TSelector, TType>>;
78
93
  check<TType extends 'classic' | 'ufg' = 'ufg'>(options?: {
79
94
  type?: TType;
80
95
  target?: TTarget;
81
- settings?: Partial<CheckSettings<TElement, TSelector, TType>>;
82
- config?: Config<TElement, TSelector, TType>;
96
+ settings?: Partial<CheckSettings<TElement, TSelector, 'ufg'> & CheckSettings<TElement, TSelector, TType>>;
97
+ config?: Config<TElement, TSelector, 'ufg'> & Config<TElement, TSelector, TType>;
83
98
  logger?: Logger;
84
99
  }): Promise<CheckResult<TType>[]>;
85
100
  checkAndClose<TType extends 'classic' | 'ufg' = 'ufg'>(options?: {
86
101
  type?: TType;
87
102
  target?: TTarget;
88
- settings?: Partial<CheckSettings<TElement, TSelector, TType> & CloseSettings<TType>>;
89
- config?: Config<TElement, TSelector, TType>;
103
+ settings?: Partial<CheckSettings<TElement, TSelector, 'ufg'> & CloseSettings<'ufg'> & CheckSettings<TElement, TSelector, TType> & CloseSettings<TType>>;
104
+ config?: Config<TElement, TSelector, 'ufg'> & Config<TElement, TSelector, TType>;
90
105
  logger?: Logger;
91
106
  }): Promise<TestResult<TType>[]>;
92
107
  close(options?: {
@@ -95,23 +110,23 @@ export interface UFGEyes<TDriver, TContext, TElement, TSelector, TTarget = Targe
95
110
  logger?: Logger;
96
111
  }): Promise<TestResult<'ufg'>[]>;
97
112
  }
98
- export declare type Eyes<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg', TTarget = Target<TDriver, TType>> = TType extends 'ufg' ? UFGEyes<TDriver, TContext, TElement, TSelector, TTarget> : ClassicEyes<TDriver, TContext, TElement, TSelector, TTarget>;
99
- export declare type Config<TElement, TSelector, TType extends 'classic' | 'ufg'> = {
113
+ export type Eyes<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg', TTarget = Target<TDriver, TContext, TElement, TSelector, TType>> = TType extends 'ufg' ? UFGEyes<TDriver, TContext, TElement, TSelector, TTarget> : ClassicEyes<TDriver, TContext, TElement, TSelector, TTarget>;
114
+ export type Config<TElement, TSelector, TType extends 'classic' | 'ufg'> = {
100
115
  open: Partial<OpenSettings<TType>>;
101
116
  screenshot: Partial<ClassicCore.ScreenshotSettings<TElement, TSelector>>;
102
117
  check: Partial<Omit<CheckSettings<TElement, TSelector, TType>, keyof ClassicCore.ScreenshotSettings<TElement, TSelector>>>;
103
118
  close: Partial<CloseSettings<TType>>;
104
119
  };
105
- export declare type LocateSettings<TLocator extends string, TElement, TSelector> = AutomationCore.LocateSettings<TLocator, TElement, TSelector>;
106
- export declare type OpenSettings<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.OpenSettings : ClassicCore.OpenSettings;
107
- export declare type CheckSettings<TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.CheckSettings<TElement, TSelector> : ClassicCore.CheckSettings<TElement, TSelector>;
108
- 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>;
109
- export declare type ExtractTextSettings<TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.ExtractTextSettings<TElement, TSelector> : ClassicCore.ExtractTextSettings<TElement, TSelector>;
110
- export declare type CloseSettings<TType extends 'classic' | 'ufg'> = (TType extends 'ufg' ? UFGCore.CloseSettings : ClassicCore.CloseSettings) & {
120
+ export type LocateSettings<TLocator extends string, TElement, TSelector> = AutomationCore.LocateSettings<TLocator, TElement, TSelector>;
121
+ export type OpenSettings<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.OpenSettings : ClassicCore.OpenSettings;
122
+ export type CheckSettings<TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.CheckSettings<TElement, TSelector> : ClassicCore.CheckSettings<TElement, TSelector>;
123
+ export type LocateTextSettings<TPattern extends string, TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.LocateTextSettings<TPattern, TElement, TSelector> : ClassicCore.LocateTextSettings<TPattern, TElement, TSelector>;
124
+ export type ExtractTextSettings<TElement, TSelector, TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.ExtractTextSettings<TElement, TSelector> : ClassicCore.ExtractTextSettings<TElement, TSelector>;
125
+ export type CloseSettings<TType extends 'classic' | 'ufg'> = (TType extends 'ufg' ? UFGCore.CloseSettings : ClassicCore.CloseSettings) & {
111
126
  throwErr?: boolean;
112
127
  };
113
- export declare type CheckResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.CheckResult : ClassicCore.CheckResult;
114
- export declare type TestResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.TestResult : ClassicCore.TestResult;
128
+ export type CheckResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.CheckResult : ClassicCore.CheckResult;
129
+ export type TestResult<TType extends 'classic' | 'ufg'> = TType extends 'ufg' ? UFGCore.TestResult : ClassicCore.TestResult;
115
130
  export interface TestResultContainer<TType extends 'classic' | 'ufg'> {
116
131
  readonly error?: Error;
117
132
  readonly result?: TestResult<TType>;
@@ -1,9 +1,9 @@
1
- import type { Eyes } from './types';
1
+ import type { TestResult } from './types';
2
2
  import type { Eyes as BaseEyes } from '@applitools/core-base';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import { type Renderer } from '@applitools/ufg-client';
5
5
  import { type AbortController } from 'abort-controller';
6
- declare type Options = {
6
+ type Options = {
7
7
  storage: {
8
8
  renderer: Renderer;
9
9
  promise: Promise<{
@@ -14,5 +14,7 @@ declare type Options = {
14
14
  controller: AbortController;
15
15
  logger: Logger;
16
16
  };
17
- export declare function makeAbort({ storage, controller, logger: defaultLogger, }: Options): Eyes<unknown, unknown, unknown, unknown>['close'];
17
+ export declare function makeAbort({ storage, controller, logger: defaultLogger }: Options): ({ logger, }?: {
18
+ logger?: Logger;
19
+ }) => Promise<TestResult[]>;
18
20
  export {};
@@ -1,15 +1,21 @@
1
- import type { Eyes } from './types';
1
+ import type { DriverTarget, UFGTarget, Eyes, CheckSettings, TestResult, CloseSettings } from './types';
2
+ import { type DomSnapshot, type AndroidSnapshot, type IOSSnapshot } from '@applitools/ufg-client';
2
3
  import { type AbortSignal } from 'abort-controller';
3
4
  import { type Logger } from '@applitools/logger';
4
- import { type Driver, type SpecDriver } from '@applitools/driver';
5
5
  import { type UFGClient } from '@applitools/ufg-client';
6
- declare type Options<TDriver, TContext, TElement, TSelector> = {
6
+ import { type SpecDriver } from '@applitools/driver';
7
+ type Options<TDriver, TContext, TElement, TSelector> = {
7
8
  eyes: Eyes<TDriver, TContext, TElement, TSelector>;
8
9
  client: UFGClient;
9
- driver?: Driver<TDriver, TContext, TElement, TSelector>;
10
+ target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
10
11
  spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
11
12
  signal?: AbortSignal;
12
13
  logger?: Logger;
13
14
  };
14
- export declare function makeCheckAndClose<TDriver, TContext, TElement, TSelector>(_options: Options<TDriver, TContext, TElement, TSelector>): Eyes<TDriver, TContext, TElement, TSelector>['checkAndClose'];
15
+ export declare function makeCheckAndClose<TDriver, TContext, TElement, TSelector>({ spec, eyes, client, signal, target: defaultTarget, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, settings, logger, snapshots, }: {
16
+ target?: UFGTarget<TDriver, TContext, TElement, TSelector>;
17
+ settings?: CheckSettings<TElement, TSelector> & CloseSettings;
18
+ logger?: Logger;
19
+ snapshots?: DomSnapshot[] | AndroidSnapshot[] | IOSSnapshot[];
20
+ }) => Promise<TestResult[]>;
15
21
  export {};
@@ -1,15 +1,19 @@
1
- import type { Eyes } from './types';
1
+ import type { DriverTarget, UFGTarget, Eyes, CheckSettings, CheckResult } from './types';
2
2
  import { type AbortSignal } from 'abort-controller';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import { type UFGClient } from '@applitools/ufg-client';
5
- import { type Driver, type SpecDriver } from '@applitools/driver';
6
- declare type Options<TDriver, TContext, TElement, TSelector> = {
5
+ import { type SpecDriver } from '@applitools/driver';
6
+ type Options<TDriver, TContext, TElement, TSelector> = {
7
7
  eyes: Eyes<TDriver, TContext, TElement, TSelector>;
8
8
  client: UFGClient;
9
- driver?: Driver<TDriver, TContext, TElement, TSelector>;
9
+ target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
10
10
  spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
11
11
  signal?: AbortSignal;
12
12
  logger?: Logger;
13
13
  };
14
- export declare function makeCheck<TDriver, TContext, TElement, TSelector>({ eyes, client, driver: defaultDriver, spec, signal, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): Eyes<TDriver, TContext, TElement, TSelector>['check'];
14
+ export declare function makeCheck<TDriver, TContext, TElement, TSelector>({ eyes, client, target: defaultTarget, spec, signal, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, settings, logger, }: {
15
+ settings?: CheckSettings<TElement, TSelector>;
16
+ target?: UFGTarget<TDriver, TContext, TElement, TSelector>;
17
+ logger?: Logger;
18
+ }) => Promise<CheckResult[]>;
15
19
  export {};
@@ -1,8 +1,8 @@
1
- import type { Eyes } from './types';
1
+ import type { CloseSettings, TestResult } from './types';
2
2
  import type { Eyes as BaseEyes } from '@applitools/core-base';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import { type Renderer } from '@applitools/ufg-client';
5
- declare type Options = {
5
+ type Options = {
6
6
  storage: {
7
7
  renderer: Renderer;
8
8
  promise: Promise<{
@@ -12,5 +12,8 @@ declare type Options = {
12
12
  }[];
13
13
  logger: Logger;
14
14
  };
15
- export declare function makeClose({ storage, logger: defaultLogger }: Options): Eyes<unknown, unknown, unknown, unknown>['close'];
15
+ export declare function makeClose({ storage, logger: defaultLogger }: Options): ({ settings, logger, }?: {
16
+ settings?: CloseSettings;
17
+ logger?: Logger;
18
+ }) => Promise<TestResult[]>;
16
19
  export {};
@@ -3,7 +3,7 @@ import type { Core as BaseCore } from '@applitools/core-base';
3
3
  import { type UFGClient } from '@applitools/ufg-client';
4
4
  import { type SpecDriver } from '@applitools/driver';
5
5
  import { type Logger } from '@applitools/logger';
6
- declare type Options<TDriver, TContext, TElement, TSelector> = {
6
+ type Options<TDriver, TContext, TElement, TSelector> = {
7
7
  concurrency: number;
8
8
  spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
9
9
  client?: UFGClient;
@@ -2,7 +2,7 @@ import type { OpenSettings } from './types';
2
2
  import type { Core as CoreBase, Eyes as EyesBase } from '@applitools/core-base';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import { type UFGClient, type Renderer } from '@applitools/ufg-client';
5
- declare type Options = {
5
+ type Options = {
6
6
  settings?: OpenSettings;
7
7
  eyes?: EyesBase[];
8
8
  core?: CoreBase;
@@ -16,8 +16,8 @@ export declare function makeGetBaseEyes({ settings: defaultSettings, core, clien
16
16
  };
17
17
  logger?: Logger;
18
18
  }) => Promise<EyesBase[]>) & {
19
- getCachedValues(): Promise<EyesBase<import("@applitools/core-base").Target>[]>[];
20
- setCachedValue(key: any, value: Promise<EyesBase<import("@applitools/core-base").Target>[]>): void;
19
+ getCachedValues(): Promise<EyesBase<import("@applitools/core-base").ImageTarget>[]>[];
20
+ setCachedValue(key: any, value: Promise<EyesBase<import("@applitools/core-base").ImageTarget>[]>): void;
21
21
  clearCache(): void;
22
22
  };
23
23
  export {};
@@ -1,19 +1,18 @@
1
- import type { Eyes, Target, OpenSettings } from './types';
1
+ import type { DriverTarget, Eyes, OpenSettings } from './types';
2
2
  import type { Core as BaseCore, Eyes as BaseEyes } from '@applitools/core-base';
3
3
  import { type Logger } from '@applitools/logger';
4
- import { type Driver, type SpecDriver } from '@applitools/driver';
4
+ import { type SpecDriver } from '@applitools/driver';
5
5
  import { type UFGClient } from '@applitools/ufg-client';
6
- declare type Options<TDriver, TContext, TElement, TSelector> = {
6
+ type Options<TDriver, TContext, TElement, TSelector> = {
7
7
  core: BaseCore;
8
8
  client?: UFGClient;
9
9
  spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
10
10
  logger?: Logger;
11
11
  };
12
- export declare function makeOpenEyes<TDriver, TContext, TElement, TSelector>({ core, client, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ settings, eyes, driver, target, logger, }: {
13
- settings?: OpenSettings;
12
+ export declare function makeOpenEyes<TDriver, TContext, TElement, TSelector>({ core, client, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, settings, eyes, logger, }: {
13
+ target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
14
+ settings: OpenSettings;
14
15
  eyes?: BaseEyes[];
15
- driver?: Driver<TDriver, TContext, TElement, TSelector>;
16
- target?: Target<TDriver>;
17
16
  logger?: Logger;
18
17
  }) => Promise<Eyes<TDriver, TContext, TElement, TSelector>>;
19
18
  export {};
@@ -2,37 +2,21 @@ import type { MaybeArray } from '@applitools/utils';
2
2
  import type * as BaseCore from '@applitools/core-base/types';
3
3
  import type * as AutomationCore from '../automation/types';
4
4
  import { type Logger } from '@applitools/logger';
5
- import { type Driver } from '@applitools/driver';
6
5
  import { type Proxy } from '@applitools/req';
7
6
  import { type Renderer, type DomSnapshot, type AndroidSnapshot, type IOSSnapshot } from '@applitools/ufg-client';
8
7
  export * from '../automation/types';
9
- export declare type Target<TDriver> = AutomationCore.Target<TDriver> | MaybeArray<DomSnapshot> | MaybeArray<AndroidSnapshot> | MaybeArray<IOSSnapshot>;
10
- export interface Core<TDriver, TContext, TElement, TSelector> extends AutomationCore.Core<TDriver, TContext, TElement, TSelector, Eyes<TDriver, TContext, TElement, TSelector>> {
8
+ export type SnapshotTarget = MaybeArray<DomSnapshot> | MaybeArray<AndroidSnapshot> | MaybeArray<IOSSnapshot>;
9
+ export type UFGTarget<TDriver, TContext, TElement, TSelector> = AutomationCore.DriverTarget<TDriver, TContext, TElement, TSelector> | SnapshotTarget;
10
+ export interface Core<TDriver, TContext, TElement, TSelector, TEyes = Eyes<TDriver, TContext, TElement, TSelector>> extends AutomationCore.Core<TDriver, TContext, TElement, TSelector, TEyes> {
11
11
  readonly type: 'ufg';
12
12
  openEyes(options: {
13
- driver?: Driver<TDriver, TContext, TElement, TSelector>;
13
+ target?: AutomationCore.DriverTarget<TDriver, TContext, TElement, TSelector>;
14
14
  settings: OpenSettings;
15
+ eyes?: BaseCore.Eyes[];
15
16
  logger?: Logger;
16
- }): Promise<Eyes<TDriver, TContext, TElement, TSelector>>;
17
- openEyes(options: {
18
- target?: TDriver;
19
- settings: OpenSettings;
20
- logger?: Logger;
21
- }): Promise<Eyes<TDriver, TContext, TElement, TSelector>>;
22
- /** @internal */
23
- openEyes(options: {
24
- driver?: Driver<TDriver, TContext, TElement, TSelector>;
25
- eyes: BaseCore.Eyes[];
26
- logger?: Logger;
27
- }): Promise<Eyes<TDriver, TContext, TElement, TSelector>>;
28
- /** @internal */
29
- openEyes(options: {
30
- target?: TDriver;
31
- eyes: BaseCore.Eyes[];
32
- logger?: Logger;
33
- }): Promise<Eyes<TDriver, TContext, TElement, TSelector>>;
17
+ }): Promise<TEyes>;
34
18
  }
35
- export interface Eyes<TDriver, TContext, TElement, TSelector, TTarget = Target<TDriver>> extends AutomationCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> {
19
+ export interface Eyes<TDriver, TContext, TElement, TSelector, TTarget = UFGTarget<TDriver, TContext, TElement, TSelector>> extends AutomationCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> {
36
20
  readonly type: 'ufg';
37
21
  getBaseEyes(options?: {
38
22
  settings?: {
@@ -41,21 +25,11 @@ export interface Eyes<TDriver, TContext, TElement, TSelector, TTarget = Target<T
41
25
  };
42
26
  logger?: Logger;
43
27
  }): Promise<BaseCore.Eyes[]>;
44
- check(options?: {
45
- driver?: Driver<TDriver, TContext, TElement, TSelector>;
46
- settings?: CheckSettings<TElement, TSelector>;
47
- logger?: Logger;
48
- }): Promise<CheckResult[]>;
49
28
  check(options?: {
50
29
  target?: TTarget;
51
30
  settings?: CheckSettings<TElement, TSelector>;
52
31
  logger?: Logger;
53
32
  }): Promise<CheckResult[]>;
54
- checkAndClose(options?: {
55
- driver?: Driver<TDriver, TContext, TElement, TSelector>;
56
- settings?: CheckSettings<TElement, TSelector> & AutomationCore.CloseSettings;
57
- logger?: Logger;
58
- }): Promise<TestResult[]>;
59
33
  checkAndClose(options?: {
60
34
  target?: TTarget;
61
35
  settings?: CheckSettings<TElement, TSelector> & AutomationCore.CloseSettings;
@@ -71,10 +45,10 @@ export interface Eyes<TDriver, TContext, TElement, TSelector, TTarget = Target<T
71
45
  logger?: Logger;
72
46
  }): Promise<TestResult[]>;
73
47
  }
74
- export declare type OpenSettings = AutomationCore.OpenSettings & {
48
+ export type OpenSettings = AutomationCore.OpenSettings & {
75
49
  renderConcurrency?: number;
76
50
  };
77
- export declare type CheckSettings<TElement, TSelector> = AutomationCore.CheckSettings<TElement, TSelector> & {
51
+ export type CheckSettings<TElement, TSelector> = AutomationCore.CheckSettings<TElement, TSelector> & {
78
52
  renderers?: Renderer[];
79
53
  hooks?: {
80
54
  beforeCaptureScreenshot: string;
@@ -82,17 +56,18 @@ export declare type CheckSettings<TElement, TSelector> = AutomationCore.CheckSet
82
56
  disableBrowserFetching?: boolean;
83
57
  layoutBreakpoints?: boolean | number[];
84
58
  ufgOptions?: Record<string, any>;
59
+ nmgOptions?: Record<string, any>;
85
60
  autProxy?: Proxy & {
86
61
  mode?: 'Allow' | 'Block';
87
62
  domains?: string[];
88
63
  };
89
64
  };
90
- export declare type CheckResult = AutomationCore.CheckResult & {
65
+ export type CheckResult = AutomationCore.CheckResult & {
91
66
  readonly renderer?: Renderer;
92
67
  readonly promise?: Promise<Omit<CheckResult, 'promise'> & {
93
68
  eyes: BaseCore.Eyes;
94
69
  }>;
95
70
  };
96
- export declare type TestResult = AutomationCore.TestResult & {
71
+ export type TestResult = AutomationCore.TestResult & {
97
72
  readonly renderer?: Renderer;
98
73
  };
@@ -1,7 +1,7 @@
1
1
  import { type Logger } from '@applitools/logger';
2
2
  import { type Context } from '@applitools/driver';
3
3
  import { type DomSnapshot } from '@applitools/ufg-client';
4
- export declare type DomSnapshotSettings = {
4
+ export type DomSnapshotSettings = {
5
5
  disableBrowserFetching?: boolean;
6
6
  skipResources?: string[];
7
7
  chunkByteLength?: number;
@@ -4,9 +4,9 @@ import { type Driver } from '@applitools/driver';
4
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
- export declare type DomSnapshotsSettings = DomSnapshotSettings & {
7
+ export type DomSnapshotsSettings = DomSnapshotSettings & {
8
8
  renderers: Renderer[];
9
- waitBeforeCapture?: number;
9
+ waitBeforeCapture?: number | (() => void);
10
10
  layoutBreakpoints?: number[] | boolean;
11
11
  };
12
12
  export declare function takeDomSnapshots<TDriver extends Driver<unknown, unknown, unknown, unknown>>({ driver, settings, hooks, provides, logger, }: {
@@ -2,7 +2,7 @@ import type { ServerSettings } from '../types';
2
2
  import { type Logger } from '@applitools/logger';
3
3
  import { type Driver } from '@applitools/driver';
4
4
  import { type Renderer, type AndroidSnapshot, type IOSSnapshot } from '@applitools/ufg-client';
5
- export declare type VHSesSettings = ServerSettings & {
5
+ export type VHSesSettings = ServerSettings & {
6
6
  renderers: Renderer[];
7
7
  waitBeforeCapture?: number;
8
8
  };
@@ -1,14 +1,14 @@
1
1
  import { type Logger } from '@applitools/logger';
2
- import { type Driver } from '@applitools/driver';
3
- export declare type LazyLoadSettings = {
2
+ import { type Context } from '@applitools/driver';
3
+ export type LazyLoadSettings = {
4
4
  scrollLength?: number;
5
5
  waitingTime?: number;
6
6
  maxAmountToScroll?: number;
7
7
  executionTimeout?: number;
8
8
  pollTimeout?: number;
9
9
  };
10
- export declare function waitForLazyLoad<TDriver extends Driver<unknown, unknown, unknown, unknown>>({ driver, settings, logger, }: {
11
- driver: TDriver;
10
+ export declare function waitForLazyLoad<TContext extends Context<unknown, unknown, unknown, unknown>>({ context, settings, logger, }: {
11
+ context: TContext;
12
12
  settings: LazyLoadSettings;
13
13
  logger: Logger;
14
14
  }): Promise<void>;