@applitools/core 1.4.6 → 1.4.8

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 (111) hide show
  1. package/dist/{classic → automation}/extract-text.js +14 -11
  2. package/dist/automation/get-viewport-size.js +2 -2
  3. package/dist/{classic → automation}/locate-text.js +5 -6
  4. package/dist/automation/locate.js +2 -2
  5. package/dist/automation/set-viewport-size.js +2 -2
  6. package/dist/automation/utils/take-screenshot.js +2 -2
  7. package/dist/{utils → automation/utils}/to-base-check-settings.js +3 -2
  8. package/dist/{utils → automation/utils}/wait-for-lazy-load.js +2 -2
  9. package/dist/check-and-close.js +7 -5
  10. package/dist/check.js +4 -5
  11. package/dist/classic/abort.js +15 -6
  12. package/dist/classic/check-and-close.js +9 -5
  13. package/dist/classic/check.js +12 -8
  14. package/dist/classic/close.js +14 -5
  15. package/dist/classic/core.js +9 -5
  16. package/dist/classic/open-eyes.js +17 -19
  17. package/dist/classic/utils/take-dom-capture.js +35 -54
  18. package/dist/close.js +1 -25
  19. package/dist/core.js +9 -5
  20. package/dist/errors/abort-error.js +5 -1
  21. package/dist/extract-text.js +13 -17
  22. package/dist/get-eyes-results.js +18 -0
  23. package/dist/{close-manager.js → get-manager-results.js} +11 -12
  24. package/dist/get-typed-eyes.js +5 -6
  25. package/dist/index.js +3 -3
  26. package/dist/locate-text.js +33 -7
  27. package/dist/locate.js +1 -1
  28. package/dist/make-ec-client.js +1 -9
  29. package/dist/make-manager.js +8 -33
  30. package/dist/open-eyes.js +3 -5
  31. package/dist/troubleshoot/check-network.js +41 -34
  32. package/dist/troubleshoot/eyes.js +2 -2
  33. package/dist/troubleshoot/ufg.js +3 -2
  34. package/dist/troubleshoot/utils.js +1 -25
  35. package/dist/types.js +0 -1
  36. package/dist/ufg/abort.js +19 -24
  37. package/dist/ufg/check-and-close.js +55 -55
  38. package/dist/ufg/check.js +33 -24
  39. package/dist/ufg/close.js +25 -18
  40. package/dist/ufg/core.js +9 -5
  41. package/dist/ufg/get-base-eyes.js +2 -0
  42. package/dist/ufg/get-results.js +27 -0
  43. package/dist/ufg/open-eyes.js +30 -25
  44. package/dist/ufg/utils/extract-broker-url.js +52 -0
  45. package/dist/ufg/utils/generate-safe-selectors.js +10 -5
  46. package/dist/ufg/utils/take-dom-snapshot.js +37 -36
  47. package/dist/ufg/utils/take-dom-snapshots.js +13 -17
  48. package/dist/ufg/utils/take-snapshots.js +3 -3
  49. package/dist/ufg/utils/take-vhses.js +60 -166
  50. package/dist/utils/format-results.js +37 -37
  51. package/package.json +19 -36
  52. package/types/automation/extract-text.d.ts +16 -0
  53. package/types/automation/get-viewport-size.d.ts +7 -7
  54. package/types/automation/locate-text.d.ts +15 -0
  55. package/types/automation/locate.d.ts +8 -8
  56. package/types/automation/set-viewport-size.d.ts +7 -7
  57. package/types/automation/types.d.ts +38 -42
  58. package/types/automation/utils/take-screenshot.d.ts +9 -9
  59. package/types/automation/utils/to-base-check-settings.d.ts +17 -0
  60. package/types/{utils → automation/utils}/wait-for-lazy-load.d.ts +3 -3
  61. package/types/check-and-close.d.ts +11 -13
  62. package/types/check.d.ts +12 -12
  63. package/types/classic/abort.d.ts +10 -10
  64. package/types/classic/check-and-close.d.ts +15 -11
  65. package/types/classic/check.d.ts +11 -11
  66. package/types/classic/close.d.ts +10 -10
  67. package/types/classic/core.d.ts +4 -4
  68. package/types/classic/get-base-eyes.d.ts +4 -4
  69. package/types/classic/open-eyes.d.ts +9 -9
  70. package/types/classic/types.d.ts +7 -7
  71. package/types/classic/utils/take-dom-capture.d.ts +4 -4
  72. package/types/close-batch.d.ts +1 -1
  73. package/types/close.d.ts +9 -8
  74. package/types/core.d.ts +4 -4
  75. package/types/delete-test.d.ts +1 -1
  76. package/types/errors/abort-error.d.ts +3 -2
  77. package/types/extract-text.d.ts +11 -9
  78. package/types/get-eyes-results.d.ts +12 -0
  79. package/types/get-manager-results.d.ts +14 -0
  80. package/types/get-typed-eyes.d.ts +9 -8
  81. package/types/index.d.ts +3 -3
  82. package/types/locate-text.d.ts +11 -9
  83. package/types/locate.d.ts +9 -9
  84. package/types/make-ec-client.d.ts +3 -3
  85. package/types/make-manager.d.ts +12 -12
  86. package/types/open-eyes.d.ts +13 -13
  87. package/types/troubleshoot/check-network.d.ts +3 -3
  88. package/types/troubleshoot/utils.d.ts +0 -2
  89. package/types/types.d.ts +65 -85
  90. package/types/ufg/abort.d.ts +14 -18
  91. package/types/ufg/check-and-close.d.ts +25 -13
  92. package/types/ufg/check.d.ts +11 -11
  93. package/types/ufg/close.d.ts +14 -18
  94. package/types/ufg/core.d.ts +4 -4
  95. package/types/ufg/get-base-eyes.d.ts +6 -6
  96. package/types/ufg/get-results.d.ts +16 -0
  97. package/types/ufg/open-eyes.d.ts +9 -9
  98. package/types/ufg/types.d.ts +15 -17
  99. package/types/ufg/utils/extract-broker-url.d.ts +6 -0
  100. package/types/ufg/utils/generate-safe-selectors.d.ts +14 -10
  101. package/types/ufg/utils/take-dom-snapshot.d.ts +34 -9
  102. package/types/ufg/utils/take-dom-snapshots.d.ts +3 -3
  103. package/types/ufg/utils/take-snapshots.d.ts +4 -4
  104. package/types/ufg/utils/take-vhses.d.ts +4 -4
  105. package/types/utils/format-results.d.ts +1 -1
  106. package/dist/utils/extract-broker-url.js +0 -24
  107. package/types/classic/extract-text.d.ts +0 -16
  108. package/types/classic/locate-text.d.ts +0 -15
  109. package/types/close-manager.d.ts +0 -18
  110. package/types/utils/extract-broker-url.d.ts +0 -2
  111. package/types/utils/to-base-check-settings.d.ts +0 -18
@@ -1,72 +1,68 @@
1
1
  import type { MaybeArray, Size, Region } from '@applitools/utils';
2
2
  import type * as BaseCore from '@applitools/core-base/types';
3
- import { type Driver, type Selector } from '@applitools/driver';
3
+ import { type SpecType, type Driver, type ElementReference, type ContextReference } from '@applitools/driver';
4
4
  import { type Logger } from '@applitools/logger';
5
5
  export * from '@applitools/core-base/types';
6
- export type DriverTarget<TDriver, TContext, TElement, TSelector> = TDriver | Driver<TDriver, TContext, TElement, TSelector>;
7
- export interface Core<TDriver, TContext, TElement, TSelector, TEyes = Eyes<TDriver, TContext, TElement, TSelector>> extends BaseCore.Core<TEyes> {
8
- isDriver(driver: any): driver is TDriver;
9
- isElement(element: any): element is TElement;
10
- isSelector(selector: any): selector is TSelector;
11
- getViewportSize(options: {
12
- target: DriverTarget<TDriver, TContext, TElement, TSelector>;
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>;
13
14
  logger?: Logger;
14
15
  }): Promise<Size>;
15
- setViewportSize(options: {
16
- target: DriverTarget<TDriver, TContext, TElement, TSelector>;
16
+ setViewportSize?(options: {
17
+ target: DriverTarget<TSpec>;
17
18
  size: Size;
18
19
  logger?: Logger;
19
20
  }): Promise<void>;
20
21
  openEyes(options: {
21
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
22
+ target?: DriverTarget<TSpec>;
22
23
  settings: BaseCore.OpenSettings;
23
24
  eyes?: BaseCore.Eyes[];
24
25
  logger?: Logger;
25
26
  }): Promise<TEyes>;
26
27
  locate<TLocator extends string>(options: {
27
- target: DriverTarget<TDriver, TContext, TElement, TSelector> | BaseCore.ImageTarget;
28
- settings: LocateSettings<TLocator, TElement, TSelector>;
28
+ target: TTarget;
29
+ settings: LocateSettings<TLocator, TSpec>;
29
30
  logger?: Logger;
30
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[]>;
31
42
  }
32
- export interface Eyes<TDriver, TContext, TElement, TSelector, TTarget = DriverTarget<TDriver, TContext, TElement, TSelector>> extends BaseCore.Eyes<TTarget> {
43
+ export interface Eyes<TSpec extends SpecType, TTarget = Target<TSpec>> extends BaseCore.Eyes<TTarget> {
33
44
  getBaseEyes(options?: {
34
45
  logger?: Logger;
35
46
  }): Promise<BaseCore.Eyes[]>;
36
47
  check(options?: {
37
48
  target?: TTarget;
38
- settings?: CheckSettings<TElement, TSelector>;
49
+ settings?: CheckSettings<TSpec>;
39
50
  logger?: Logger;
40
51
  }): Promise<BaseCore.CheckResult[]>;
41
52
  checkAndClose(options?: {
42
53
  target?: TTarget;
43
- settings?: CheckSettings<TElement, TSelector> & BaseCore.CloseSettings;
54
+ settings?: CheckSettings<TSpec> & BaseCore.CloseSettings;
44
55
  logger?: Logger;
45
56
  }): Promise<BaseCore.TestResult[]>;
46
- locateText?<TPattern extends string>(options: {
47
- target?: TTarget;
48
- settings: LocateTextSettings<TPattern, TElement, TSelector>;
49
- logger?: Logger;
50
- }): Promise<BaseCore.LocateTextResult<TPattern>>;
51
- extractText?(options: {
52
- target?: TTarget;
53
- settings: MaybeArray<ExtractTextSettings<TElement, TSelector>>;
54
- logger?: Logger;
55
- }): Promise<string[]>;
56
57
  }
57
- type RegionReference<TElement, TSelector> = Region | ElementReference<TElement, TSelector>;
58
- type ElementReference<TElement, TSelector> = TElement | Selector<TSelector>;
59
- type FrameReference<TElement, TSelector> = ElementReference<TElement, TSelector> | string | number;
60
- type ContextReference<TElement, TSelector> = {
61
- frame: FrameReference<TElement, TSelector>;
62
- scrollRootElement?: ElementReference<TElement, TSelector>;
63
- };
64
- type StitchMode = 'Scroll' | 'CSS';
65
- export interface ScreenshotSettings<TElement, TSelector> extends BaseCore.ImageSettings<RegionReference<TElement, TSelector>> {
66
- frames?: (ContextReference<TElement, TSelector> | FrameReference<TElement, TSelector>)[];
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
+ })[];
67
63
  fully?: boolean;
68
- scrollRootElement?: ElementReference<TElement, TSelector>;
69
- stitchMode?: StitchMode;
64
+ scrollRootElement?: ElementReference<TSpec>;
65
+ stitchMode?: 'Scroll' | 'CSS';
70
66
  hideScrollbars?: boolean;
71
67
  hideCaret?: boolean;
72
68
  overlap?: {
@@ -82,7 +78,7 @@ export interface ScreenshotSettings<TElement, TSelector> extends BaseCore.ImageS
82
78
  };
83
79
  webview?: boolean | string;
84
80
  }
85
- export type LocateSettings<TLocator extends string, TElement, TSelector> = BaseCore.LocateSettings<TLocator, RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
86
- export type CheckSettings<TElement, TSelector> = BaseCore.CheckSettings<RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
87
- export type LocateTextSettings<TPattern extends string, TElement, TSelector> = BaseCore.LocateTextSettings<TPattern, RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
88
- export type ExtractTextSettings<TElement, TSelector> = BaseCore.ExtractTextSettings<RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
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>;
@@ -1,19 +1,19 @@
1
1
  import type { Region } from '@applitools/utils';
2
2
  import type { ScreenshotSettings } from '../../classic/types';
3
3
  import { type Logger } from '@applitools/logger';
4
- import { type Driver, type Element } from '@applitools/driver';
5
- export type Screenshot = {
4
+ import { type Driver, type Element, type ElementReference, type SpecType } from '@applitools/driver';
5
+ export type Screenshot<TSpec extends SpecType> = {
6
6
  image: any;
7
7
  region: Region;
8
- element: Element<unknown, unknown, unknown, unknown>;
9
- scrollingElement: Element<unknown, unknown, unknown, unknown>;
8
+ element: Element<TSpec>;
9
+ scrollingElement: Element<TSpec>;
10
10
  restoreState(): Promise<void>;
11
11
  calculatedRegions: [];
12
12
  };
13
- export declare function takeScreenshot<TDriver, TContext, TElement, TSelector>({ driver, settings, logger, }: {
14
- driver: Driver<TDriver, TContext, TElement, TSelector>;
15
- settings: ScreenshotSettings<TElement, TSelector> & {
16
- regionsToCalculate?: any[];
13
+ export declare function takeScreenshot<TSpec extends SpecType>({ driver, settings, logger, }: {
14
+ driver: Driver<TSpec>;
15
+ settings: ScreenshotSettings<TSpec> & {
16
+ regionsToCalculate?: ElementReference<TSpec>[];
17
17
  };
18
18
  logger: Logger;
19
- }): Promise<Screenshot>;
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
+ };
@@ -1,5 +1,5 @@
1
1
  import { type Logger } from '@applitools/logger';
2
- import { type Context } from '@applitools/driver';
2
+ import { type SpecType, type Context } from '@applitools/driver';
3
3
  export type LazyLoadSettings = {
4
4
  scrollLength?: number;
5
5
  waitingTime?: number;
@@ -7,8 +7,8 @@ export type LazyLoadSettings = {
7
7
  executionTimeout?: number;
8
8
  pollTimeout?: number;
9
9
  };
10
- export declare function waitForLazyLoad<TContext extends Context<unknown, unknown, unknown, unknown>>({ context, settings, logger, }: {
11
- context: TContext;
10
+ export declare function waitForLazyLoad<TSpec extends SpecType>({ context, settings, logger, }: {
11
+ context: Context<TSpec>;
12
12
  settings: LazyLoadSettings;
13
13
  logger: Logger;
14
14
  }): Promise<void>;
@@ -1,20 +1,18 @@
1
1
  import type { Target, DriverTarget, Eyes, Config, CheckSettings, CloseSettings, TestResult } from './types';
2
2
  import { type Logger } from '@applitools/logger';
3
- import { type SpecDriver } from '@applitools/driver';
4
- type Options<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
3
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
4
+ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
5
5
  type?: TType;
6
- eyes: Eyes<TDriver, TContext, TElement, TSelector, TType>;
7
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
8
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
6
+ eyes: Eyes<TSpec, TType>;
7
+ target?: DriverTarget<TSpec>;
8
+ spec?: SpecDriver<TSpec>;
9
9
  logger: Logger;
10
10
  };
11
- export declare function makeCheckAndClose<TDriver, TContext, TElement, TSelector, TDefaultType extends 'classic' | 'ufg' = 'classic'>({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, target, settings, config, logger, }?: {
12
- type?: TType;
13
- target?: Target<TDriver, TContext, TElement, TSelector, TType>;
14
- settings?: CheckSettings<TElement, TSelector, TDefaultType> & (TDefaultType extends "ufg" ? import("@applitools/core-base").CloseSettings : import("@applitools/core-base").CloseSettings) & {
15
- throwErr?: boolean;
16
- } & CheckSettings<TElement, TSelector, TType> & (TType extends "ufg" ? import("@applitools/core-base").CloseSettings : import("@applitools/core-base").CloseSettings);
17
- config?: Config<TElement, TSelector, TDefaultType> & Config<TElement, TSelector, TType>;
18
- logger?: Logger;
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;
19
17
  }) => Promise<TestResult<TType>[]>;
20
18
  export {};
package/types/check.d.ts CHANGED
@@ -1,18 +1,18 @@
1
1
  import type { Target, DriverTarget, Eyes, Config, CheckSettings, CheckResult } from './types';
2
2
  import { type Logger } from '@applitools/logger';
3
- import { type SpecDriver } from '@applitools/driver';
4
- type Options<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
3
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
4
+ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
5
5
  type?: TType;
6
- eyes: Eyes<TDriver, TContext, TElement, TSelector, TType>;
7
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
8
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
9
- logger?: Logger;
6
+ eyes: Eyes<TSpec, TType>;
7
+ target?: DriverTarget<TSpec>;
8
+ spec?: SpecDriver<TSpec>;
9
+ logger: Logger;
10
10
  };
11
- export declare function makeCheck<TDriver, TContext, TElement, TSelector, TDefaultType extends 'classic' | 'ufg' = 'classic'>({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, target, settings, config, logger, }?: {
12
- type?: TType;
13
- target?: Target<TDriver, TContext, TElement, TSelector, TType>;
14
- settings?: CheckSettings<TElement, TSelector, TType>;
15
- config?: Config<TElement, TSelector, TType>;
16
- logger?: Logger;
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
17
  }) => Promise<CheckResult<TType>[]>;
18
18
  export {};
@@ -1,16 +1,16 @@
1
- import type { AbortSettings, TestResult } from './types';
1
+ import type { AbortSettings } from './types';
2
2
  import type { Eyes } from './types';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import type { DriverTarget } from './types';
5
- import { type SpecDriver } from '@applitools/driver';
6
- type Options<TDriver, TContext, TElement, TSelector> = {
7
- eyes: Eyes<TDriver, TContext, TElement, TSelector>;
8
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
9
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
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
10
  logger: Logger;
11
11
  };
12
- export declare function makeAbort<TDriver, TContext, TElement, TSelector>({ eyes, target, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ settings, logger, }?: {
13
- settings?: AbortSettings;
14
- logger?: Logger;
15
- }) => Promise<TestResult[]>;
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
16
  export {};
@@ -1,15 +1,19 @@
1
- import type { ClassicTarget, DriverTarget, Eyes, CheckSettings, CloseSettings, TestResult } from './types';
1
+ import type { Target, DriverTarget, Eyes, CheckSettings, CloseSettings, TestResult } from './types';
2
+ import type { CheckSettings as BaseCheckSettings } from '@applitools/core-base';
2
3
  import { type Logger } from '@applitools/logger';
3
- import { type SpecDriver } from '@applitools/driver';
4
- type Options<TDriver, TContext, TElement, TSelector> = {
5
- eyes: Eyes<TDriver, TContext, TElement, TSelector>;
6
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
7
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
8
- logger?: 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;
9
11
  };
10
- export declare function makeCheckAndClose<TDriver, TContext, TElement, TSelector>({ eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, settings, logger, }?: {
11
- target?: ClassicTarget<TDriver, TContext, TElement, TSelector>;
12
- settings?: CheckSettings<TElement, TSelector> & CloseSettings;
13
- logger?: Logger;
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;
14
18
  }) => Promise<TestResult[]>;
15
19
  export {};
@@ -1,15 +1,15 @@
1
- import type { ClassicTarget, DriverTarget, Eyes, CheckSettings, CheckResult } from './types';
1
+ import type { Target, DriverTarget, Eyes, CheckSettings, CheckResult } from './types';
2
2
  import { type Logger } from '@applitools/logger';
3
- import { type SpecDriver } from '@applitools/driver';
4
- type Options<TDriver, TContext, TElement, TSelector> = {
5
- eyes: Eyes<TDriver, TContext, TElement, TSelector>;
6
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
7
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
8
- logger?: 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
9
  };
10
- export declare function makeCheck<TDriver, TContext, TElement, TSelector>({ eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, settings, logger, }?: {
11
- target?: ClassicTarget<TDriver, TContext, TElement, TSelector>;
12
- settings?: CheckSettings<TElement, TSelector>;
13
- logger?: Logger;
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
14
  }) => Promise<CheckResult[]>;
15
15
  export {};
@@ -1,16 +1,16 @@
1
- import type { CloseSettings, TestResult } from './types';
1
+ import type { CloseSettings } from './types';
2
2
  import type { Eyes } from './types';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import type { DriverTarget } from './types';
5
- import { type SpecDriver } from '@applitools/driver';
6
- type Options<TDriver, TContext, TElement, TSelector> = {
7
- eyes: Eyes<TDriver, TContext, TElement, TSelector>;
8
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
9
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
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
10
  logger: Logger;
11
11
  };
12
- export declare function makeClose<TDriver, TContext, TElement, TSelector>({ eyes, target, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ settings, logger, }?: {
13
- settings?: CloseSettings;
14
- logger?: Logger;
15
- }) => Promise<TestResult[]>;
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
16
  export {};
@@ -1,13 +1,13 @@
1
1
  import type { Core } from './types';
2
- import { type SpecDriver } from '@applitools/driver';
2
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
3
3
  import { type Logger } from '@applitools/logger';
4
4
  import { type Core as BaseCore } from '@applitools/core-base';
5
- type Options<TDriver, TContext, TElement, TSelector> = {
6
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
5
+ type Options<TSpec extends SpecType> = {
6
+ spec?: SpecDriver<TSpec>;
7
7
  core?: BaseCore;
8
8
  agentId?: string;
9
9
  cwd?: string;
10
10
  logger?: Logger;
11
11
  };
12
- export declare function makeCore<TDriver, TContext, TElement, TSelector>({ spec, core, agentId, cwd, logger, }: Options<TDriver, TContext, TElement, TSelector>): Core<TDriver, TContext, TElement, TSelector>;
12
+ export declare function makeCore<TSpec extends SpecType>({ spec, core, agentId, cwd, logger: defaultLogger, }: Options<TSpec>): Core<TSpec>;
13
13
  export {};
@@ -2,13 +2,13 @@ import type { 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
4
  type Options = {
5
- settings?: OpenSettings;
5
+ settings: OpenSettings;
6
+ core: BaseCore;
6
7
  eyes?: BaseEyes[];
7
- core?: BaseCore;
8
- logger?: Logger;
8
+ logger: Logger;
9
9
  };
10
10
  export declare function makeGetBaseEyes({ settings, core, eyes, logger: defaultLogger }: Options): (({ logger }?: {
11
- logger?: Logger;
11
+ logger?: Logger | undefined;
12
12
  }) => Promise<BaseEyes[]>) & {
13
13
  getCachedValues(): Promise<BaseEyes<import("@applitools/core-base").ImageTarget>[]>[];
14
14
  setCachedValue(key: any, value: Promise<BaseEyes<import("@applitools/core-base").ImageTarget>[]>): void;
@@ -1,16 +1,16 @@
1
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 SpecDriver } from '@applitools/driver';
5
- type Options<TDriver, TContext, TElement, TSelector> = {
4
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
5
+ type Options<TSpec extends SpecType> = {
6
6
  core: BaseCore;
7
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
8
- logger?: Logger;
7
+ spec?: SpecDriver<TSpec>;
8
+ logger: Logger;
9
9
  };
10
- export declare function makeOpenEyes<TDriver, TContext, TElement, TSelector>({ core, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, settings, eyes, logger, }: {
11
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
10
+ export declare function makeOpenEyes<TSpec extends SpecType>({ core, spec, logger: defaultLogger }: Options<TSpec>): ({ target, settings, eyes, logger, }: {
11
+ target?: DriverTarget<TSpec> | undefined;
12
12
  settings: OpenSettings;
13
- eyes?: BaseEyes[];
14
- logger?: Logger;
15
- }) => Promise<Eyes<TDriver, TContext, TElement, TSelector>>;
13
+ eyes?: BaseEyes<import("@applitools/core-base").ImageTarget>[] | undefined;
14
+ logger?: Logger | undefined;
15
+ }) => Promise<Eyes<TSpec>>;
16
16
  export {};
@@ -1,27 +1,27 @@
1
1
  import type * as BaseCore from '@applitools/core-base/types';
2
2
  import type * as AutomationCore from '../automation/types';
3
+ import { type SpecType } from '@applitools/driver';
3
4
  import { type Logger } from '@applitools/logger';
4
5
  export * from '../automation/types';
5
- export type ClassicTarget<TDriver, TContext, TElement, TSelector> = AutomationCore.DriverTarget<TDriver, TContext, TElement, TSelector> | AutomationCore.ImageTarget;
6
- export interface Core<TDriver, TContext, TElement, TSelector, TEyes = Eyes<TDriver, TContext, TElement, TSelector>> extends AutomationCore.Core<TDriver, TContext, TElement, TSelector, TEyes> {
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
7
  readonly type: 'classic';
8
8
  openEyes(options: {
9
- target?: AutomationCore.DriverTarget<TDriver, TContext, TElement, TSelector>;
9
+ target?: AutomationCore.DriverTarget<TSpec>;
10
10
  settings: OpenSettings;
11
11
  eyes?: BaseCore.Eyes[];
12
12
  logger?: Logger;
13
13
  }): Promise<TEyes>;
14
14
  }
15
- export interface Eyes<TDriver, TContext, TElement, TSelector, TTarget = ClassicTarget<TDriver, TContext, TElement, TSelector>> extends AutomationCore.Eyes<TDriver, TContext, TElement, TSelector, TTarget> {
15
+ export interface Eyes<TSpec extends SpecType, TTarget = AutomationCore.Target<TSpec>> extends AutomationCore.Eyes<TSpec, TTarget> {
16
16
  readonly type: 'classic';
17
17
  check(options?: {
18
18
  target?: TTarget;
19
- settings?: CheckSettings<TElement, TSelector>;
19
+ settings?: CheckSettings<TSpec>;
20
20
  logger?: Logger;
21
21
  }): Promise<AutomationCore.CheckResult[]>;
22
22
  checkAndClose(options?: {
23
23
  target?: TTarget;
24
- settings?: CheckSettings<TElement, TSelector> & AutomationCore.CloseSettings;
24
+ settings?: CheckSettings<TSpec> & AutomationCore.CloseSettings;
25
25
  logger?: Logger;
26
26
  }): Promise<AutomationCore.TestResult[]>;
27
27
  }
@@ -29,6 +29,6 @@ export type OpenSettings = AutomationCore.OpenSettings & {
29
29
  keepPlatformNameAsIs?: boolean;
30
30
  useCeilForViewportSize?: boolean;
31
31
  };
32
- export type CheckSettings<TElement, TSelector> = AutomationCore.CheckSettings<TElement, TSelector> & {
32
+ export type CheckSettings<TSpec extends SpecType> = AutomationCore.CheckSettings<TSpec> & {
33
33
  retryTimeout?: number;
34
34
  };
@@ -1,4 +1,4 @@
1
- import { type Driver } from '@applitools/driver';
1
+ import { type SpecType, type Driver } from '@applitools/driver';
2
2
  import { type Logger } from '@applitools/logger';
3
3
  import { type Fetch } from '@applitools/req';
4
4
  export type DomCaptureSettings = {
@@ -7,8 +7,8 @@ export type DomCaptureSettings = {
7
7
  pollTimeout?: number;
8
8
  chunkByteLength?: number;
9
9
  };
10
- export declare function takeDomCapture<TDriver extends Driver<unknown, unknown, unknown, unknown>>({ driver, settings, logger, }: {
11
- driver: TDriver;
10
+ export declare function takeDomCapture<TSpec extends SpecType>({ driver, settings, logger, }: {
11
+ driver: Driver<TSpec>;
12
12
  settings?: DomCaptureSettings;
13
13
  logger: Logger;
14
- }): Promise<any>;
14
+ }): Promise<string>;
@@ -8,6 +8,6 @@ type Options = {
8
8
  };
9
9
  export declare function makeCloseBatch({ core, logger: defaultLogger }: Options): ({ settings, logger, }: {
10
10
  settings: MaybeArray<CloseBatchSettings>;
11
- logger?: Logger;
11
+ logger?: Logger | undefined;
12
12
  }) => Promise<void>;
13
13
  export {};
package/types/close.d.ts CHANGED
@@ -1,12 +1,13 @@
1
- import type { Eyes, Config, CloseSettings, TestResult } from './types';
1
+ import type { Eyes, Config, CloseSettings } from './types';
2
+ import { type SpecType } from '@applitools/driver';
2
3
  import { type Logger } from '@applitools/logger';
3
- type Options<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
4
- eyes: Eyes<TDriver, TContext, TElement, TSelector, TType>;
4
+ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
5
+ eyes: Eyes<TSpec, TType>;
5
6
  logger: Logger;
6
7
  };
7
- export declare function makeClose<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'>({ eyes, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector, TType>): ({ settings, config, logger, }?: {
8
- settings?: CloseSettings<TType>;
9
- config?: Config<TElement, TSelector, TType>;
10
- logger?: Logger;
11
- }) => Promise<TestResult<TType>[]>;
8
+ export declare function makeClose<TSpec extends SpecType, TType extends 'classic' | 'ufg'>({ eyes, logger: defaultLogger, }: Options<TSpec, TType>): ({ settings, config, logger, }?: {
9
+ settings?: CloseSettings<TType> | undefined;
10
+ config?: Config<TSpec, TType> | undefined;
11
+ logger?: Logger | undefined;
12
+ }) => Promise<void>;
12
13
  export {};
package/types/core.d.ts CHANGED
@@ -1,14 +1,14 @@
1
1
  import type { Core } from './types';
2
2
  import type { Core as BaseCore } from '@applitools/core-base';
3
- import { type SpecDriver } from '@applitools/driver';
3
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
4
4
  import { type Logger } from '@applitools/logger';
5
- type Options<TDriver, TContext, TElement, TSelector> = {
6
- spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
5
+ type Options<TSpec extends SpecType> = {
6
+ spec?: SpecDriver<TSpec>;
7
7
  concurrency?: number;
8
8
  core?: BaseCore;
9
9
  agentId?: string;
10
10
  cwd?: string;
11
11
  logger?: Logger;
12
12
  };
13
- export declare function makeCore<TDriver, TContext, TElement, TSelector>({ spec, concurrency, core, agentId, cwd, logger, }?: Options<TDriver, TContext, TElement, TSelector>): Core<TDriver, TContext, TElement, TSelector>;
13
+ export declare function makeCore<TSpec extends SpecType>({ spec, concurrency, core, agentId, cwd, logger, }?: Options<TSpec>): Core<TSpec, 'classic' | 'ufg'>;
14
14
  export {};
@@ -8,6 +8,6 @@ type Options = {
8
8
  };
9
9
  export declare function makeDeleteTest({ core, logger: defaultLogger }: Options): ({ settings, logger, }: {
10
10
  settings: MaybeArray<DeleteTestSettings>;
11
- logger?: Logger;
11
+ logger?: Logger | undefined;
12
12
  }) => Promise<void>;
13
13
  export {};
@@ -1,3 +1,4 @@
1
- export declare class AbortError extends Error {
2
- info: Record<string, any>;
1
+ import { CoreError } from '@applitools/core-base';
2
+ export declare class AbortError extends CoreError {
3
+ constructor(message: string, info?: Record<string, any>);
3
4
  }
@@ -1,15 +1,17 @@
1
1
  import type { MaybeArray } from '@applitools/utils';
2
- import type { Target, DriverTarget, Eyes, Config, ExtractTextSettings } from './types';
2
+ import type { Target, Config, ExtractTextSettings } from './types';
3
+ import type { Core as BaseCore } from '@applitools/core-base';
3
4
  import { type Logger } from '@applitools/logger';
4
- type Options<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
5
- eyes: Eyes<TDriver, TContext, TElement, TSelector, TType>;
6
- target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
5
+ import { type SpecType, type SpecDriver } from '@applitools/driver';
6
+ type Options<TSpec extends SpecType> = {
7
+ spec?: SpecDriver<TSpec>;
8
+ core: BaseCore;
7
9
  logger: Logger;
8
10
  };
9
- export declare function makeExtractText<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg' = 'classic'>({ eyes, target: defaultTarget, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector, TType>): ({ target, settings, config, logger, }: {
10
- target?: Target<TDriver, TContext, TElement, TSelector, 'classic'>;
11
- settings: MaybeArray<ExtractTextSettings<TElement, TSelector, 'classic'>>;
12
- config?: Config<TElement, TSelector, 'classic'>;
13
- logger?: Logger;
11
+ export declare function makeExtractText<TSpec extends SpecType>({ spec, core, logger: defaultLogger }: Options<TSpec>): ({ target, settings, config, logger, }: {
12
+ target: Target<TSpec, 'classic'>;
13
+ settings: MaybeArray<ExtractTextSettings<TSpec>>;
14
+ config?: Config<TSpec, "classic"> | undefined;
15
+ logger?: Logger | undefined;
14
16
  }) => Promise<string[]>;
15
17
  export {};
@@ -0,0 +1,12 @@
1
+ import type { Eyes, GetResultsSettings, TestResult } from './types';
2
+ import { type SpecType } from '@applitools/driver';
3
+ import { type Logger } from '@applitools/logger';
4
+ type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
5
+ eyes: Eyes<TSpec, TType>;
6
+ logger: Logger;
7
+ };
8
+ export declare function makeGetEyesResults<TSpec extends SpecType, TType extends 'classic' | 'ufg'>({ eyes, logger: defaultLogger, }: Options<TSpec, TType>): ({ settings, logger, }?: {
9
+ settings?: GetResultsSettings<TType> | undefined;
10
+ logger?: Logger | undefined;
11
+ }) => Promise<TestResult<TType>[]>;
12
+ export {};