@applitools/core 3.5.1 → 3.6.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.
- package/CHANGELOG.md +106 -0
- package/dist/ufg/check-and-close.js +6 -3
- package/dist/ufg/check.js +6 -3
- package/dist/ufg/get-base-eyes.js +6 -1
- package/dist/ufg/utils/take-dom-snapshot.js +9 -11
- package/package.json +14 -13
- package/types/ufg/check-and-close.d.ts +3 -1
- package/types/ufg/get-base-eyes.d.ts +2 -3
- package/types/ufg/types.d.ts +8 -6
- package/types/ufg/utils/take-dom-snapshot.d.ts +5 -7
- package/types/ufg/utils/uniquify-renderers.d.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,112 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## [3.6.1](https://github.com/applitools/eyes.sdk.javascript1/compare/js/core@3.6.0...js/core@3.6.1) (2023-07-13)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* replaced NML prefixed appium env vars with APPLITOOLS prefixed ([8905b90](https://github.com/applitools/eyes.sdk.javascript1/commit/8905b90e7c4ec6e310f6e52c03bbcc7acf1ff2ab))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Dependencies
|
|
14
|
+
|
|
15
|
+
* @applitools/driver bumped from 1.13.0 to 1.13.1
|
|
16
|
+
#### Bug Fixes
|
|
17
|
+
|
|
18
|
+
* replaced NML prefixed appium env vars with APPLITOOLS prefixed ([8905b90](https://github.com/applitools/eyes.sdk.javascript1/commit/8905b90e7c4ec6e310f6e52c03bbcc7acf1ff2ab))
|
|
19
|
+
* @applitools/ec-client bumped from 1.6.2 to 1.7.0
|
|
20
|
+
#### Features
|
|
21
|
+
|
|
22
|
+
* added internal function to prepare environment before running tunnels ([3d19ec3](https://github.com/applitools/eyes.sdk.javascript1/commit/3d19ec3b274702ffdf26b766b7351ec1f4b66a6d))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
* @applitools/tunnel-client bumped from 1.0.2 to 1.1.0
|
|
27
|
+
#### Features
|
|
28
|
+
|
|
29
|
+
* added internal function to prepare environment before running tunnels ([3d19ec3](https://github.com/applitools/eyes.sdk.javascript1/commit/3d19ec3b274702ffdf26b766b7351ec1f4b66a6d))
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
#### Bug Fixes
|
|
33
|
+
|
|
34
|
+
* prevent tunnel binaries from overriding itself ([5609a36](https://github.com/applitools/eyes.sdk.javascript1/commit/5609a36c93622c9b8eeb4b4ab25f95907df8baa4))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
* @applitools/nml-client bumped from 1.5.1 to 1.5.2
|
|
39
|
+
#### Bug Fixes
|
|
40
|
+
|
|
41
|
+
* replaced NML prefixed appium env vars with APPLITOOLS prefixed ([8905b90](https://github.com/applitools/eyes.sdk.javascript1/commit/8905b90e7c4ec6e310f6e52c03bbcc7acf1ff2ab))
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
* @applitools/ufg-client bumped from 1.4.0 to 1.4.1
|
|
46
|
+
#### Bug Fixes
|
|
47
|
+
|
|
48
|
+
* fixed an issue when an inability to freeze a gif image caused sdk crush ([dca9ead](https://github.com/applitools/eyes.sdk.javascript1/commit/dca9eadd2bab39d1fc20b99d997879075691f0ee))
|
|
49
|
+
* fixed issue when sdk crushed due to invalid resource url in ufg mode ([8b44958](https://github.com/applitools/eyes.sdk.javascript1/commit/8b449580a930753dd2735befdcdb4c46e184b2a9))
|
|
50
|
+
* @applitools/spec-driver-webdriver bumped from 1.0.37 to 1.0.38
|
|
51
|
+
|
|
52
|
+
* @applitools/execution-grid-tunnel bumped to 2.1.8
|
|
53
|
+
|
|
54
|
+
* @applitools/screenshoter bumped from 3.8.3 to 3.8.4
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
## [3.6.0](https://github.com/applitools/eyes.sdk.javascript1/compare/js/core@3.5.1...js/core@3.6.0) (2023-07-10)
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
### Features
|
|
61
|
+
|
|
62
|
+
* ability to skip deserialize dom snapshot ([#1703](https://github.com/applitools/eyes.sdk.javascript1/issues/1703)) ([a461af4](https://github.com/applitools/eyes.sdk.javascript1/commit/a461af4fb72b7cba1ae15a5d20376fd02e7d9003))
|
|
63
|
+
* prevent animated gif images from playing in ufg ([#1721](https://github.com/applitools/eyes.sdk.javascript1/issues/1721)) ([30f39cc](https://github.com/applitools/eyes.sdk.javascript1/commit/30f39cc8ef2cdfa1d85bd7a0037b818db1b52e1b))
|
|
64
|
+
* support custom property per renderer ([#1715](https://github.com/applitools/eyes.sdk.javascript1/issues/1715)) ([8cf6b1f](https://github.com/applitools/eyes.sdk.javascript1/commit/8cf6b1fb0563b2485ca18eebc2efd236c2287db8))
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
### Dependencies
|
|
68
|
+
|
|
69
|
+
* @applitools/core-base bumped from 1.3.0 to 1.4.0
|
|
70
|
+
#### Features
|
|
71
|
+
|
|
72
|
+
* support custom property per renderer ([#1715](https://github.com/applitools/eyes.sdk.javascript1/issues/1715)) ([8cf6b1f](https://github.com/applitools/eyes.sdk.javascript1/commit/8cf6b1fb0563b2485ca18eebc2efd236c2287db8))
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
* @applitools/image bumped from 1.0.36 to 1.1.0
|
|
77
|
+
#### Features
|
|
78
|
+
|
|
79
|
+
* prevent animated gif images from playing in ufg ([#1721](https://github.com/applitools/eyes.sdk.javascript1/issues/1721)) ([30f39cc](https://github.com/applitools/eyes.sdk.javascript1/commit/30f39cc8ef2cdfa1d85bd7a0037b818db1b52e1b))
|
|
80
|
+
* @applitools/ec-client bumped from 1.6.1 to 1.6.2
|
|
81
|
+
#### Bug Fixes
|
|
82
|
+
|
|
83
|
+
* fixed issue that caused creation of unnecessary tunnels ([b38fe37](https://github.com/applitools/eyes.sdk.javascript1/commit/b38fe3754f97c5f312ceffd74406255654466ab7))
|
|
84
|
+
* start tunnels with proper regional server ([2a34ed8](https://github.com/applitools/eyes.sdk.javascript1/commit/2a34ed8cd72dc9ac54957348cbe8ba9e67032340))
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
* @applitools/tunnel-client bumped from 1.0.1 to 1.0.2
|
|
89
|
+
#### Bug Fixes
|
|
90
|
+
|
|
91
|
+
* start tunnels with proper regional server ([2a34ed8](https://github.com/applitools/eyes.sdk.javascript1/commit/2a34ed8cd72dc9ac54957348cbe8ba9e67032340))
|
|
92
|
+
* @applitools/ufg-client bumped from 1.3.0 to 1.4.0
|
|
93
|
+
#### Features
|
|
94
|
+
|
|
95
|
+
* ability to skip deserialize dom snapshot ([#1703](https://github.com/applitools/eyes.sdk.javascript1/issues/1703)) ([a461af4](https://github.com/applitools/eyes.sdk.javascript1/commit/a461af4fb72b7cba1ae15a5d20376fd02e7d9003))
|
|
96
|
+
* add support for resource fetching through eg tunnel ([3daa4da](https://github.com/applitools/eyes.sdk.javascript1/commit/3daa4da975cbe23ffb33bb3e9f5f76732ead1075))
|
|
97
|
+
* added new chrome emulation devices - `Galaxy S21`, `Galaxy S21 Ultra`, and `Galaxy S22 Ultra` ([0dac7f7](https://github.com/applitools/eyes.sdk.javascript1/commit/0dac7f7941558a4e9416f70a104b96d125d38fc7))
|
|
98
|
+
* prevent animated gif images from playing in ufg ([#1721](https://github.com/applitools/eyes.sdk.javascript1/issues/1721)) ([30f39cc](https://github.com/applitools/eyes.sdk.javascript1/commit/30f39cc8ef2cdfa1d85bd7a0037b818db1b52e1b))
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
#### Bug Fixes
|
|
102
|
+
|
|
103
|
+
* add support for resource fetching through eg tunnel ([a0b98e3](https://github.com/applitools/eyes.sdk.javascript1/commit/a0b98e364cf95bf6bed84c1afe3376384d781717))
|
|
104
|
+
* add support for resource fetching through eg tunnel ([3daa4da](https://github.com/applitools/eyes.sdk.javascript1/commit/3daa4da975cbe23ffb33bb3e9f5f76732ead1075))
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
* @applitools/screenshoter bumped from 3.8.2 to 3.8.3
|
|
109
|
+
|
|
110
|
+
|
|
5
111
|
## [3.5.1](https://github.com/applitools/eyes.sdk.javascript1/compare/js/core@3.5.0...js/core@3.5.1) (2023-07-05)
|
|
6
112
|
|
|
7
113
|
|
|
@@ -50,7 +50,7 @@ function makeCheckAndClose({ eyes, target: defaultTarget, spec, signal, logger:
|
|
|
50
50
|
});
|
|
51
51
|
const uniqueRenderers = (0, uniquify_renderers_1.uniquifyRenderers)((_a = settings.renderers) !== null && _a !== void 0 ? _a : []);
|
|
52
52
|
const ufgClient = await eyes.core.getUFGClient({
|
|
53
|
-
config: { ...eyes.test.ufgServer },
|
|
53
|
+
config: { ...eyes.test.ufgServer, eyesServerUrl: eyes.test.server.serverUrl, eyesApiKey: eyes.test.server.apiKey },
|
|
54
54
|
concurrency: uniqueRenderers.length || 5,
|
|
55
55
|
logger,
|
|
56
56
|
});
|
|
@@ -152,7 +152,7 @@ function makeCheckAndClose({ eyes, target: defaultTarget, spec, signal, logger:
|
|
|
152
152
|
originalSelector: selector,
|
|
153
153
|
safeSelector: selector,
|
|
154
154
|
})));
|
|
155
|
-
const promises = uniqueRenderers.map(async (renderer, index) => {
|
|
155
|
+
const promises = uniqueRenderers.map(async ({ properties, ...renderer }, index) => {
|
|
156
156
|
const rendererLogger = logger.extend({ tags: [`renderer-${utils.general.shortid()}`] });
|
|
157
157
|
if (utils.types.has(renderer, 'name') && renderer.name === 'edge') {
|
|
158
158
|
const message = chalk_1.default.yellow(`The 'edge' option that is being used in your browsers' configuration will soon be deprecated. Please change it to either 'edgelegacy' for the legacy version or to 'edgechromium' for the new Chromium-based version. Please note, when using the built-in BrowserType enum, then the values are BrowserType.EDGE_LEGACY and BrowserType.EDGE_CHROMIUM, respectively.`);
|
|
@@ -177,7 +177,10 @@ function makeCheckAndClose({ eyes, target: defaultTarget, spec, signal, logger:
|
|
|
177
177
|
},
|
|
178
178
|
logger: rendererLogger,
|
|
179
179
|
});
|
|
180
|
-
const [baseEyes] = await eyes.getBaseEyes({
|
|
180
|
+
const [baseEyes] = await eyes.getBaseEyes({
|
|
181
|
+
settings: { renderer, type: snapshotType, properties },
|
|
182
|
+
logger,
|
|
183
|
+
});
|
|
181
184
|
try {
|
|
182
185
|
if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
|
|
183
186
|
rendererLogger.warn('Command "check" was aborted before rendering');
|
package/dist/ufg/check.js
CHANGED
|
@@ -50,7 +50,7 @@ function makeCheck({ eyes, target: defaultTarget, spec, signal, logger: mainLogg
|
|
|
50
50
|
});
|
|
51
51
|
const uniqueRenderers = (0, uniquify_renderers_1.uniquifyRenderers)((_a = settings.renderers) !== null && _a !== void 0 ? _a : []);
|
|
52
52
|
const ufgClient = await eyes.core.getUFGClient({
|
|
53
|
-
config: { ...eyes.test.ufgServer },
|
|
53
|
+
config: { ...eyes.test.ufgServer, eyesServerUrl: eyes.test.server.serverUrl, eyesApiKey: eyes.test.server.apiKey },
|
|
54
54
|
concurrency: uniqueRenderers.length || 5,
|
|
55
55
|
logger,
|
|
56
56
|
});
|
|
@@ -153,7 +153,7 @@ function makeCheck({ eyes, target: defaultTarget, spec, signal, logger: mainLogg
|
|
|
153
153
|
originalSelector: selector,
|
|
154
154
|
safeSelector: selector,
|
|
155
155
|
})));
|
|
156
|
-
const promises = uniqueRenderers.map(async (renderer, index) => {
|
|
156
|
+
const promises = uniqueRenderers.map(async ({ properties, ...renderer }, index) => {
|
|
157
157
|
const rendererLogger = logger.extend({ tags: [`renderer-${utils.general.shortid()}`] });
|
|
158
158
|
if (utils.types.has(renderer, 'name') && renderer.name === 'edge') {
|
|
159
159
|
const message = chalk_1.default.yellow(`The 'edge' option that is being used in your browsers' configuration will soon be deprecated. Please change it to either 'edgelegacy' for the legacy version or to 'edgechromium' for the new Chromium-based version. Please note, when using the built-in BrowserType enum, then the values are BrowserType.EDGE_LEGACY and BrowserType.EDGE_CHROMIUM, respectively.`);
|
|
@@ -178,7 +178,10 @@ function makeCheck({ eyes, target: defaultTarget, spec, signal, logger: mainLogg
|
|
|
178
178
|
},
|
|
179
179
|
logger: rendererLogger,
|
|
180
180
|
});
|
|
181
|
-
const [baseEyes] = await eyes.getBaseEyes({
|
|
181
|
+
const [baseEyes] = await eyes.getBaseEyes({
|
|
182
|
+
settings: { renderer, type: snapshotType, properties },
|
|
183
|
+
logger: rendererLogger,
|
|
184
|
+
});
|
|
182
185
|
try {
|
|
183
186
|
if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
|
|
184
187
|
rendererLogger.warn('Command "check" was aborted before rendering');
|
|
@@ -32,6 +32,7 @@ function makeGetBaseEyes({ settings: defaultSettings, eyes, base, logger: mainLo
|
|
|
32
32
|
}
|
|
33
33
|
return getBaseEyesWithCache;
|
|
34
34
|
async function getBaseEyes({ settings, logger = mainLogger, } = {}) {
|
|
35
|
+
var _a, _b;
|
|
35
36
|
logger = logger.extend(mainLogger);
|
|
36
37
|
logger.log(`Command "getBaseEyes" is called with settings`, settings);
|
|
37
38
|
if (!settings)
|
|
@@ -41,8 +42,12 @@ function makeGetBaseEyes({ settings: defaultSettings, eyes, base, logger: mainLo
|
|
|
41
42
|
logger,
|
|
42
43
|
});
|
|
43
44
|
const environment = await ufgClient.bookRenderer({ settings, logger });
|
|
45
|
+
let properties;
|
|
46
|
+
if (defaultSettings.properties || settings.properties) {
|
|
47
|
+
properties = ((_a = defaultSettings.properties) !== null && _a !== void 0 ? _a : []).concat((_b = settings.properties) !== null && _b !== void 0 ? _b : []);
|
|
48
|
+
}
|
|
44
49
|
const baseEyes = await eyes.core.base.openEyes({
|
|
45
|
-
settings: { ...defaultSettings, environment: { ...defaultSettings.environment, ...environment } },
|
|
50
|
+
settings: { ...defaultSettings, environment: { ...defaultSettings.environment, ...environment }, properties },
|
|
46
51
|
logger,
|
|
47
52
|
});
|
|
48
53
|
return [baseEyes];
|
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.extractCrossFrames = exports.
|
|
26
|
+
exports.extractCrossFrames = exports.takeDomSnapshot = void 0;
|
|
27
27
|
const utils = __importStar(require("@applitools/utils"));
|
|
28
28
|
const { getProcessPagePoll, getPollResult, getProcessPagePollForIE, getPollResultForIE, } = require('@applitools/dom-snapshot');
|
|
29
29
|
async function takeDomSnapshot({ context, settings, logger, }) {
|
|
@@ -31,7 +31,7 @@ async function takeDomSnapshot({ context, settings, logger, }) {
|
|
|
31
31
|
const environment = await driver.getEnvironment();
|
|
32
32
|
const features = await driver.getFeatures();
|
|
33
33
|
const cookies = features.allCookies ? await driver.getCookies().catch(() => []) : [];
|
|
34
|
-
const snapshot =
|
|
34
|
+
const snapshot = transformRawDomSnapshot(await takeContextDomSnapshot({ context }));
|
|
35
35
|
snapshot.cookies = cookies;
|
|
36
36
|
return snapshot;
|
|
37
37
|
async function takeContextDomSnapshot({ context }) {
|
|
@@ -95,21 +95,19 @@ async function takeDomSnapshot({ context, settings, logger, }) {
|
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
exports.takeDomSnapshot = takeDomSnapshot;
|
|
98
|
-
function
|
|
98
|
+
function transformRawDomSnapshot(snapshot) {
|
|
99
99
|
const { blobs, selector: _, crossFrames: __, ...rest } = snapshot;
|
|
100
|
-
|
|
100
|
+
return {
|
|
101
101
|
...rest,
|
|
102
102
|
resourceContents: blobs.reduce((resourceContents, blob) => {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
103
|
+
return {
|
|
104
|
+
...resourceContents,
|
|
105
|
+
[blob.url]: blob,
|
|
106
|
+
};
|
|
107
107
|
}, {}),
|
|
108
|
-
frames: snapshot.frames.map(frameSnapshot =>
|
|
108
|
+
frames: snapshot.frames.map(frameSnapshot => transformRawDomSnapshot(frameSnapshot)),
|
|
109
109
|
};
|
|
110
|
-
return deserializedSnapshot;
|
|
111
110
|
}
|
|
112
|
-
exports.deserializeDomSnapshot = deserializeDomSnapshot;
|
|
113
111
|
function extractCrossFrames({ snapshot, parent = null, logger, }) {
|
|
114
112
|
var _a;
|
|
115
113
|
const crossFrames = [snapshot, ...((_a = snapshot.frames) !== null && _a !== void 0 ? _a : [])].flatMap((snapshot, index) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.6.1",
|
|
4
4
|
"homepage": "https://applitools.com",
|
|
5
5
|
"bugs": {
|
|
6
6
|
"url": "https://github.com/applitools/eyes.sdk.javascript1/issues"
|
|
@@ -68,19 +68,19 @@
|
|
|
68
68
|
]
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"@applitools/core-base": "1.
|
|
71
|
+
"@applitools/core-base": "1.4.0",
|
|
72
72
|
"@applitools/dom-capture": "11.2.2",
|
|
73
73
|
"@applitools/dom-snapshot": "4.7.9",
|
|
74
|
-
"@applitools/driver": "1.13.
|
|
75
|
-
"@applitools/ec-client": "1.
|
|
74
|
+
"@applitools/driver": "1.13.1",
|
|
75
|
+
"@applitools/ec-client": "1.7.0",
|
|
76
76
|
"@applitools/logger": "2.0.5",
|
|
77
|
-
"@applitools/nml-client": "1.5.
|
|
77
|
+
"@applitools/nml-client": "1.5.2",
|
|
78
78
|
"@applitools/req": "1.4.0",
|
|
79
|
-
"@applitools/screenshoter": "3.8.
|
|
79
|
+
"@applitools/screenshoter": "3.8.4",
|
|
80
80
|
"@applitools/snippets": "2.4.21",
|
|
81
81
|
"@applitools/socket": "1.1.5",
|
|
82
|
-
"@applitools/spec-driver-webdriver": "1.0.
|
|
83
|
-
"@applitools/ufg-client": "1.
|
|
82
|
+
"@applitools/spec-driver-webdriver": "1.0.38",
|
|
83
|
+
"@applitools/ufg-client": "1.4.1",
|
|
84
84
|
"@applitools/utils": "1.5.0",
|
|
85
85
|
"@types/ws": "8.5.5",
|
|
86
86
|
"abort-controller": "3.0.0",
|
|
@@ -91,13 +91,14 @@
|
|
|
91
91
|
"yargs": "^17.7.2"
|
|
92
92
|
},
|
|
93
93
|
"devDependencies": {
|
|
94
|
-
"@applitools/bongo": "^
|
|
95
|
-
"@applitools/sdk-coverage-tests": "^3.0
|
|
96
|
-
"@applitools/spec-driver-puppeteer": "^1.1.
|
|
97
|
-
"@applitools/spec-driver-selenium": "^1.5.
|
|
98
|
-
"@applitools/spec-driver-webdriverio": "^1.5.
|
|
94
|
+
"@applitools/bongo": "^5.0.4",
|
|
95
|
+
"@applitools/sdk-coverage-tests": "^3.1.0",
|
|
96
|
+
"@applitools/spec-driver-puppeteer": "^1.1.69",
|
|
97
|
+
"@applitools/spec-driver-selenium": "^1.5.52",
|
|
98
|
+
"@applitools/spec-driver-webdriverio": "^1.5.7",
|
|
99
99
|
"@applitools/test-server": "^1.2.2",
|
|
100
100
|
"@applitools/test-utils": "^1.5.17",
|
|
101
|
+
"@applitools/tunnel-client": "^1.1.0",
|
|
101
102
|
"@types/node": "^12.20.55",
|
|
102
103
|
"@types/selenium-webdriver": "^4.1.2",
|
|
103
104
|
"@types/yargs": "^17.0.22",
|
|
@@ -13,7 +13,9 @@ type Options<TSpec extends SpecType> = {
|
|
|
13
13
|
export declare function makeCheckAndClose<TSpec extends SpecType>({ eyes, target: defaultTarget, spec, signal, logger: mainLogger, }: Options<TSpec>): ({ target, settings, logger, }: {
|
|
14
14
|
target?: Target<TSpec> | undefined;
|
|
15
15
|
settings?: (import("@applitools/core-base").CheckSettings<Region | import("@applitools/driver").ElementReference<TSpec>> & import("./types").ScreenshotSettings<TSpec> & {
|
|
16
|
-
renderers?: import("@applitools/ufg-client").Renderer
|
|
16
|
+
renderers?: (import("@applitools/ufg-client").Renderer & {
|
|
17
|
+
properties?: import("@applitools/core-base/types").CustomProperty[] | undefined;
|
|
18
|
+
})[] | undefined;
|
|
17
19
|
hooks?: {
|
|
18
20
|
beforeCaptureScreenshot: string;
|
|
19
21
|
} | undefined;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type { Eyes, OpenSettings } from './types';
|
|
1
|
+
import type { Eyes, GetBaseEyesSettings, OpenSettings } from './types';
|
|
2
2
|
import type { Eyes as BaseEyes } from '@applitools/core-base';
|
|
3
3
|
import { type SpecType } from '@applitools/driver';
|
|
4
4
|
import { type Logger } from '@applitools/logger';
|
|
5
|
-
import { type RendererSettings } from '@applitools/ufg-client';
|
|
6
5
|
type Options<TSpec extends SpecType> = {
|
|
7
6
|
settings: OpenSettings;
|
|
8
7
|
eyes: Eyes<TSpec>;
|
|
@@ -10,7 +9,7 @@ type Options<TSpec extends SpecType> = {
|
|
|
10
9
|
logger: Logger;
|
|
11
10
|
};
|
|
12
11
|
export declare function makeGetBaseEyes<TSpec extends SpecType>({ settings: defaultSettings, eyes, base, logger: mainLogger, }: Options<TSpec>): (({ settings, logger, }?: {
|
|
13
|
-
settings?:
|
|
12
|
+
settings?: GetBaseEyesSettings | undefined;
|
|
14
13
|
logger?: Logger | undefined;
|
|
15
14
|
}) => Promise<BaseEyes[]>) & {
|
|
16
15
|
getCachedValues(): Promise<BaseEyes[]>[];
|
package/types/ufg/types.d.ts
CHANGED
|
@@ -4,10 +4,13 @@ import type * as AutomationCore from '../automation/types';
|
|
|
4
4
|
import { type SpecType } from '@applitools/driver';
|
|
5
5
|
import { type Logger } from '@applitools/logger';
|
|
6
6
|
import { type Proxy } from '@applitools/req';
|
|
7
|
-
import { type UFGClient, type UFGRequestsConfig, type Renderer, type DomSnapshot, type AndroidSnapshot, type IOSSnapshot } from '@applitools/ufg-client';
|
|
7
|
+
import { type UFGClient, type UFGRequestsConfig, type Renderer, type DomSnapshot, type AndroidSnapshot, type IOSSnapshot, RendererSettings } from '@applitools/ufg-client';
|
|
8
8
|
export * from '../automation/types';
|
|
9
9
|
export type SnapshotTarget = MaybeArray<DomSnapshot> | MaybeArray<AndroidSnapshot> | MaybeArray<IOSSnapshot>;
|
|
10
10
|
export type Target<TSpec extends SpecType> = SnapshotTarget | AutomationCore.Target<TSpec>;
|
|
11
|
+
export type GetBaseEyesSettings = RendererSettings & {
|
|
12
|
+
properties?: BaseCore.CustomProperty[];
|
|
13
|
+
};
|
|
11
14
|
export interface Core<TSpec extends SpecType> extends AutomationCore.Core<TSpec> {
|
|
12
15
|
readonly type: 'ufg';
|
|
13
16
|
getUFGClient(options?: {
|
|
@@ -26,10 +29,7 @@ export interface Eyes<TSpec extends SpecType> extends AutomationCore.Eyes<TSpec>
|
|
|
26
29
|
readonly type: 'ufg';
|
|
27
30
|
readonly core: Core<TSpec>;
|
|
28
31
|
getBaseEyes(options?: {
|
|
29
|
-
settings?:
|
|
30
|
-
type: 'web' | 'native';
|
|
31
|
-
renderer: Renderer;
|
|
32
|
-
};
|
|
32
|
+
settings?: GetBaseEyesSettings;
|
|
33
33
|
logger?: Logger;
|
|
34
34
|
}): Promise<BaseCore.Eyes[]>;
|
|
35
35
|
check(options?: {
|
|
@@ -48,7 +48,9 @@ export interface Eyes<TSpec extends SpecType> extends AutomationCore.Eyes<TSpec>
|
|
|
48
48
|
}): Promise<TestResult[]>;
|
|
49
49
|
}
|
|
50
50
|
export type CheckSettings<TSpec extends SpecType> = AutomationCore.CheckSettings<TSpec> & {
|
|
51
|
-
renderers?: Renderer
|
|
51
|
+
renderers?: (Renderer & {
|
|
52
|
+
properties?: BaseCore.CustomProperty[];
|
|
53
|
+
})[];
|
|
52
54
|
hooks?: {
|
|
53
55
|
beforeCaptureScreenshot: string;
|
|
54
56
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type Logger } from '@applitools/logger';
|
|
2
2
|
import { type SpecType, type Context } from '@applitools/driver';
|
|
3
3
|
import { type DomSnapshot } from '@applitools/ufg-client';
|
|
4
|
-
type RawDomSnapshot = {
|
|
4
|
+
export type RawDomSnapshot = {
|
|
5
5
|
url: string;
|
|
6
6
|
selector: string;
|
|
7
7
|
cdt: {
|
|
@@ -10,7 +10,7 @@ type RawDomSnapshot = {
|
|
|
10
10
|
value: string;
|
|
11
11
|
}[];
|
|
12
12
|
}[];
|
|
13
|
-
crossFrames
|
|
13
|
+
crossFrames?: {
|
|
14
14
|
selector: string;
|
|
15
15
|
index: number;
|
|
16
16
|
}[];
|
|
@@ -18,8 +18,10 @@ type RawDomSnapshot = {
|
|
|
18
18
|
resourceUrls: string[];
|
|
19
19
|
blobs: {
|
|
20
20
|
url: string;
|
|
21
|
-
value
|
|
21
|
+
value?: string;
|
|
22
22
|
}[];
|
|
23
|
+
srcAttr: string | null;
|
|
24
|
+
scriptVersion: string;
|
|
23
25
|
};
|
|
24
26
|
export type DomSnapshotSettings = {
|
|
25
27
|
disableBrowserFetching?: boolean;
|
|
@@ -34,9 +36,6 @@ export declare function takeDomSnapshot<TSpec extends SpecType>({ context, setti
|
|
|
34
36
|
settings?: DomSnapshotSettings;
|
|
35
37
|
logger: Logger;
|
|
36
38
|
}): Promise<DomSnapshot>;
|
|
37
|
-
export declare function deserializeDomSnapshot({ snapshot }: {
|
|
38
|
-
snapshot: RawDomSnapshot;
|
|
39
|
-
}): DomSnapshot;
|
|
40
39
|
export declare function extractCrossFrames({ snapshot, parent, logger, }: {
|
|
41
40
|
snapshot: RawDomSnapshot;
|
|
42
41
|
parent?: any;
|
|
@@ -46,4 +45,3 @@ export declare function extractCrossFrames({ snapshot, parent, logger, }: {
|
|
|
46
45
|
reference: any;
|
|
47
46
|
parentSnapshot: RawDomSnapshot;
|
|
48
47
|
}[];
|
|
49
|
-
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type Renderer } from '@applitools/ufg-client';
|
|
2
|
-
export declare function uniquifyRenderers(renderers:
|
|
2
|
+
export declare function uniquifyRenderers<TRenderer extends Renderer>(renderers: TRenderer[]): TRenderer[];
|