@applitools/eyes-playwright 1.47.1 → 1.47.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +185 -0
- package/dist/fixture/reporter.js +52 -1
- package/fixture.js +1 -1
- package/package.json +7 -4
- package/types/index.d.ts +5 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,190 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.47.3](https://github.com/Applitools-Dev/sdk/compare/js/eyes-playwright@1.47.2...js/eyes-playwright@1.47.3) (2026-05-19)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* preserve trace UI under playwright --ui mode | FLD-4250 ([#3845](https://github.com/Applitools-Dev/sdk/issues/3845)) ([c1f8ded](https://github.com/Applitools-Dev/sdk/commit/c1f8ded20236c4f02e185a1bc16e51b941611f55))
|
|
9
|
+
* support Playwright 1.60+ | AD-13590 AD-13207 ([#3834](https://github.com/Applitools-Dev/sdk/issues/3834)) ([b78d16d](https://github.com/Applitools-Dev/sdk/commit/b78d16d74f93d402337bdcb323774665740b3235))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Dependencies
|
|
13
|
+
|
|
14
|
+
* @applitools/snippets bumped to 2.9.1
|
|
15
|
+
#### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* declare @babel/preset-typescript dep for sandbox build ([#3815](https://github.com/Applitools-Dev/sdk/issues/3815)) ([10c44c6](https://github.com/Applitools-Dev/sdk/commit/10c44c66635f1ed4e0361f22ecebf2221c2cc912))
|
|
18
|
+
* @applitools/dom-snapshot bumped to 4.17.1
|
|
19
|
+
|
|
20
|
+
* @applitools/req bumped to 1.10.1
|
|
21
|
+
#### Bug Fixes
|
|
22
|
+
|
|
23
|
+
* http2 support via settings AD 13119 ([#3804](https://github.com/Applitools-Dev/sdk/issues/3804)) ([759d451](https://github.com/Applitools-Dev/sdk/commit/759d4518254828140aa50e2c5de14e80af0b997c))
|
|
24
|
+
* @applitools/driver bumped to 1.26.1
|
|
25
|
+
#### Bug Fixes
|
|
26
|
+
|
|
27
|
+
* address CI regressions from executeBrowserCommands and Chromium 140+ service worker ([#3848](https://github.com/Applitools-Dev/sdk/issues/3848)) ([099ada5](https://github.com/Applitools-Dev/sdk/commit/099ada5e52d4153157b98c2203df428579527e49))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
* @applitools/spec-driver-playwright bumped to 1.9.1
|
|
32
|
+
#### Bug Fixes
|
|
33
|
+
|
|
34
|
+
* address CI regressions from executeBrowserCommands and Chromium 140+ service worker ([#3848](https://github.com/Applitools-Dev/sdk/issues/3848)) ([099ada5](https://github.com/Applitools-Dev/sdk/commit/099ada5e52d4153157b98c2203df428579527e49))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
* @applitools/ufg-client bumped to 1.22.1
|
|
39
|
+
#### Bug Fixes
|
|
40
|
+
|
|
41
|
+
* http2 support via settings AD 13119 ([#3804](https://github.com/Applitools-Dev/sdk/issues/3804)) ([759d451](https://github.com/Applitools-Dev/sdk/commit/759d4518254828140aa50e2c5de14e80af0b997c))
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
* @applitools/core bumped to 4.63.0
|
|
46
|
+
#### Features
|
|
47
|
+
|
|
48
|
+
* soft-deprecate CheckSettings.timeout() with telemetry [[#3705](https://github.com/Applitools-Dev/sdk/issues/3705)] ([#3805](https://github.com/Applitools-Dev/sdk/issues/3805)) ([a5d6390](https://github.com/Applitools-Dev/sdk/commit/a5d6390f17fc0380736b88cbe05dd147e66a86cf))
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
#### Bug Fixes
|
|
52
|
+
|
|
53
|
+
* avoid double-scaling environment viewport in classic mode | FLD-4359 ([#3793](https://github.com/Applitools-Dev/sdk/issues/3793)) ([246050b](https://github.com/Applitools-Dev/sdk/commit/246050b8a7984b869c068262162a69191c834947))
|
|
54
|
+
* http2 support via settings AD 13119 ([#3804](https://github.com/Applitools-Dev/sdk/issues/3804)) ([759d451](https://github.com/Applitools-Dev/sdk/commit/759d4518254828140aa50e2c5de14e80af0b997c))
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
* @applitools/screenshoter bumped to 3.12.20
|
|
59
|
+
|
|
60
|
+
* @applitools/tunnel-client bumped to 1.11.13
|
|
61
|
+
|
|
62
|
+
* @applitools/core-base bumped to 1.34.0
|
|
63
|
+
#### Features
|
|
64
|
+
|
|
65
|
+
* soft-deprecate CheckSettings.timeout() with telemetry [[#3705](https://github.com/Applitools-Dev/sdk/issues/3705)] ([#3805](https://github.com/Applitools-Dev/sdk/issues/3805)) ([a5d6390](https://github.com/Applitools-Dev/sdk/commit/a5d6390f17fc0380736b88cbe05dd147e66a86cf))
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
#### Bug Fixes
|
|
69
|
+
|
|
70
|
+
* http2 support via settings AD 13119 ([#3804](https://github.com/Applitools-Dev/sdk/issues/3804)) ([759d451](https://github.com/Applitools-Dev/sdk/commit/759d4518254828140aa50e2c5de14e80af0b997c))
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
* @applitools/spec-driver-webdriver bumped to 1.6.1
|
|
75
|
+
|
|
76
|
+
* @applitools/spec-driver-selenium bumped to 1.8.1
|
|
77
|
+
|
|
78
|
+
* @applitools/spec-driver-puppeteer bumped to 1.8.1
|
|
79
|
+
|
|
80
|
+
* @applitools/nml-client bumped to 1.11.27
|
|
81
|
+
|
|
82
|
+
* @applitools/ec-client bumped to 1.12.29
|
|
83
|
+
|
|
84
|
+
* @applitools/eyes bumped to 1.42.0
|
|
85
|
+
#### Features
|
|
86
|
+
|
|
87
|
+
* soft-deprecate CheckSettings.timeout() with telemetry [[#3705](https://github.com/Applitools-Dev/sdk/issues/3705)] ([#3805](https://github.com/Applitools-Dev/sdk/issues/3805)) ([a5d6390](https://github.com/Applitools-Dev/sdk/commit/a5d6390f17fc0380736b88cbe05dd147e66a86cf))
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
#### Bug Fixes
|
|
91
|
+
|
|
92
|
+
* http2 support via settings AD 13119 ([#3804](https://github.com/Applitools-Dev/sdk/issues/3804)) ([759d451](https://github.com/Applitools-Dev/sdk/commit/759d4518254828140aa50e2c5de14e80af0b997c))
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
## [1.47.2](https://github.com/Applitools-Dev/sdk/compare/js/eyes-playwright@1.47.1...js/eyes-playwright@1.47.2) (2026-05-05)
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
### Dependencies
|
|
101
|
+
|
|
102
|
+
* @applitools/dom-shared bumped to 1.2.0
|
|
103
|
+
#### Features
|
|
104
|
+
|
|
105
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
106
|
+
* @applitools/dom-snapshot bumped to 4.17.0
|
|
107
|
+
#### Features
|
|
108
|
+
|
|
109
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
#### Bug Fixes
|
|
113
|
+
|
|
114
|
+
* re-trigger release for dom-snapshot (FLD-4452) and mcp (AD-13206) ([#3800](https://github.com/Applitools-Dev/sdk/issues/3800)) ([105dd42](https://github.com/Applitools-Dev/sdk/commit/105dd42010a56c454752eaca69380aaba085073e))
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
* @applitools/snippets bumped to 2.9.0
|
|
119
|
+
#### Features
|
|
120
|
+
|
|
121
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
* @applitools/dom-capture bumped to 11.8.0
|
|
126
|
+
#### Features
|
|
127
|
+
|
|
128
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
* @applitools/driver bumped to 1.26.0
|
|
133
|
+
#### Features
|
|
134
|
+
|
|
135
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
* @applitools/spec-driver-webdriver bumped to 1.6.0
|
|
140
|
+
#### Features
|
|
141
|
+
|
|
142
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
* @applitools/spec-driver-selenium bumped to 1.8.0
|
|
147
|
+
#### Features
|
|
148
|
+
|
|
149
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
* @applitools/spec-driver-playwright bumped to 1.9.0
|
|
154
|
+
#### Features
|
|
155
|
+
|
|
156
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
* @applitools/spec-driver-puppeteer bumped to 1.8.0
|
|
161
|
+
#### Features
|
|
162
|
+
|
|
163
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
* @applitools/core bumped to 4.62.0
|
|
168
|
+
#### Features
|
|
169
|
+
|
|
170
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
* @applitools/screenshoter bumped to 3.12.19
|
|
175
|
+
|
|
176
|
+
* @applitools/nml-client bumped to 1.11.26
|
|
177
|
+
|
|
178
|
+
* @applitools/ec-client bumped to 1.12.28
|
|
179
|
+
|
|
180
|
+
* @applitools/eyes bumped to 1.41.0
|
|
181
|
+
#### Features
|
|
182
|
+
|
|
183
|
+
* add bypassCSP support for UFG snapshot capture ([#3783](https://github.com/Applitools-Dev/sdk/issues/3783)) ([9e98933](https://github.com/Applitools-Dev/sdk/commit/9e98933b8ffba2ad1928aa2b2110e9a25209a599))
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
3
188
|
## [1.47.1](https://github.com/Applitools-Dev/sdk/compare/js/eyes-playwright@1.47.0...js/eyes-playwright@1.47.1) (2026-05-04)
|
|
4
189
|
|
|
5
190
|
|
package/dist/fixture/reporter.js
CHANGED
|
@@ -30,7 +30,19 @@ const req_1 = require("@applitools/req");
|
|
|
30
30
|
const utils = __importStar(require("@applitools/utils"));
|
|
31
31
|
const logger_1 = require("@applitools/logger");
|
|
32
32
|
const playwrightPath = require.resolve('playwright');
|
|
33
|
-
|
|
33
|
+
// Playwright moved the HtmlReporter from `lib/reporters/html.js` (≤1.59) into the bundled
|
|
34
|
+
// `lib/runner/index.js` (1.60+, exposed as `.html.default`). Both paths are private — not in
|
|
35
|
+
// `package.json#exports` — so resolve via absolute path (which bypasses exports gating). Try
|
|
36
|
+
// the 1.60+ location first, fall back to the pre-1.60 file. AD-13590.
|
|
37
|
+
const HtmlReporter = (() => {
|
|
38
|
+
const pwRoot = path.dirname(playwrightPath);
|
|
39
|
+
try {
|
|
40
|
+
return require(path.join(pwRoot, 'lib/runner/index.js')).html.default;
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
return require(path.join(pwRoot, 'lib/reporters/html')).default;
|
|
44
|
+
}
|
|
45
|
+
})();
|
|
34
46
|
const pluginsFile = require.resolve('../../dist/fixture/reportRenderer.js');
|
|
35
47
|
const styleFile = require.resolve('./reporterStyle.css');
|
|
36
48
|
const createInjectedScript = (testResultsMap) => `
|
|
@@ -49,9 +61,48 @@ class EyesReporter extends HtmlReporter {
|
|
|
49
61
|
constructor(options) {
|
|
50
62
|
super(options);
|
|
51
63
|
this.applitoolsIdentifiers = [];
|
|
64
|
+
// Detect Playwright UI mode so `onTestEnd` can avoid mutating the result: under
|
|
65
|
+
// `--ui`, the test server has already serialized the result and pushed it to the
|
|
66
|
+
// live UI client, so any splice into `attachments` / `_endPayload.attachments` /
|
|
67
|
+
// `steps[*].attachments` desyncs the trace viewer (Actions list / Source tab /
|
|
68
|
+
// Canvas disappear). Two signals are OR'd because no single one covers every
|
|
69
|
+
// supported Playwright version:
|
|
70
|
+
// 1. `options._isTestServer` — the official, propagated flag on Playwright
|
|
71
|
+
// 1.55–1.56. Upstream deleted it in 1.57 when the test runner and runner
|
|
72
|
+
// were merged, and did not replace it with any other propagated property.
|
|
73
|
+
// 2. A scan of `process.argv` for the CLI tokens that put Playwright into UI
|
|
74
|
+
// mode (`--ui`, `--ui-host`, `--ui-port`, and their `=value` forms). The
|
|
75
|
+
// reporter is constructed in the same Node process that parsed the CLI,
|
|
76
|
+
// and commander does not mutate `process.argv`, so the original token
|
|
77
|
+
// survives to this point on every version. This is a heuristic: the only
|
|
78
|
+
// known false-negative is a script that calls `runUIMode(...)` directly
|
|
79
|
+
// without going through `playwright test --ui`, which is not a documented
|
|
80
|
+
// entry point.
|
|
81
|
+
this._isUnderTestServer = Boolean(options === null || options === void 0 ? void 0 : options._isTestServer) || EyesReporter._argvIndicatesUiMode();
|
|
82
|
+
}
|
|
83
|
+
static _argvIndicatesUiMode() {
|
|
84
|
+
return process.argv.some(arg => arg === '--ui' ||
|
|
85
|
+
arg === '--ui-host' ||
|
|
86
|
+
arg === '--ui-port' ||
|
|
87
|
+
arg.startsWith('--ui=') ||
|
|
88
|
+
arg.startsWith('--ui-host=') ||
|
|
89
|
+
arg.startsWith('--ui-port='));
|
|
52
90
|
}
|
|
53
91
|
onTestEnd(test, result) {
|
|
54
92
|
var _a;
|
|
93
|
+
// Under Playwright UI mode (`--ui`), the test server has already serialized `result`
|
|
94
|
+
// (including `_endPayload.attachments`) and pushed it to the live UI client. Any
|
|
95
|
+
// mutation of attachments / steps after that point corrupts the trace viewer's
|
|
96
|
+
// model — Actions list, Source tab, and Canvas disappear after the test completes.
|
|
97
|
+
// Collect the Eyes identifier without mutating the result, and skip the upstream
|
|
98
|
+
// onTestEnd as well.
|
|
99
|
+
if (this._isUnderTestServer) {
|
|
100
|
+
const index = result.attachments.findIndex(a => a.name === 'applitoolsIdentifier');
|
|
101
|
+
if (index > -1) {
|
|
102
|
+
this.applitoolsIdentifiers.push(result.attachments[index].body.toString());
|
|
103
|
+
}
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
55
106
|
(_a = super.onTestEnd) === null || _a === void 0 ? void 0 : _a.call(this, test, result);
|
|
56
107
|
const index = result.attachments.findIndex(a => a.name === 'applitoolsIdentifier');
|
|
57
108
|
if (index > -1) {
|
package/fixture.js
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
* Modern module resolution uses the "exports" field in package.json.
|
|
4
4
|
* This file ensures the fixture can be imported by users with older TypeScript configs.
|
|
5
5
|
*/
|
|
6
|
-
module.exports = require('./dist/fixture/index.js')
|
|
6
|
+
module.exports = require('./dist/fixture/index.js')
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/eyes-playwright",
|
|
3
|
-
"version": "1.47.
|
|
3
|
+
"version": "1.47.3",
|
|
4
4
|
"description": "Applitools Eyes SDK for Playwright",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eyes-playwright",
|
|
@@ -63,9 +63,10 @@
|
|
|
63
63
|
"up:framework": "echo \"$(jq '.devDependencies.playwright = $ENV.APPLITOOLS_FRAMEWORK_VERSION' ./package.json)\" > ./package.json"
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
|
-
"@applitools/eyes": "1.
|
|
67
|
-
"@applitools/
|
|
68
|
-
"@applitools/
|
|
66
|
+
"@applitools/eyes": "1.42.0",
|
|
67
|
+
"@applitools/logger": "2.2.11",
|
|
68
|
+
"@applitools/req": "1.10.1",
|
|
69
|
+
"@applitools/spec-driver-playwright": "1.9.1",
|
|
69
70
|
"@applitools/utils": "1.14.4",
|
|
70
71
|
"@inquirer/prompts": "7.0.1",
|
|
71
72
|
"chalk": "4.1.2",
|
|
@@ -83,8 +84,10 @@
|
|
|
83
84
|
"@rollup/plugin-typescript": "^12.1.0",
|
|
84
85
|
"@types/node": "^12.20.55",
|
|
85
86
|
"jszip": "^3.10.1",
|
|
87
|
+
"mocha": "^11.7.5",
|
|
86
88
|
"nock": "^13.3.2",
|
|
87
89
|
"playwright": "1.55.1",
|
|
90
|
+
"playwright-core": "1.55.1",
|
|
88
91
|
"rollup": "^4.1.4"
|
|
89
92
|
},
|
|
90
93
|
"peerDependencies": {
|
package/types/index.d.ts
CHANGED
|
@@ -595,6 +595,7 @@ export type ConfigurationPlain = {
|
|
|
595
595
|
debugScreenshots?: undefined | { save: boolean; path?: undefined | string; prefix?: undefined | string; };
|
|
596
596
|
defaultMatchSettings?: undefined | ImageMatchSettingsPlain;
|
|
597
597
|
deviceInfo?: undefined | string;
|
|
598
|
+
bypassCSP?: undefined | boolean;
|
|
598
599
|
disableBrowserFetching?: undefined | boolean;
|
|
599
600
|
disableNMLUrlCache?: undefined | boolean;
|
|
600
601
|
displayName?: undefined | string;
|
|
@@ -725,6 +726,10 @@ export class Configuration implements Required<ConfigurationPlain> {
|
|
|
725
726
|
set deviceInfo(deviceInfo: string);
|
|
726
727
|
getDeviceInfo(): string;
|
|
727
728
|
setDeviceInfo(deviceInfo: string): Configuration;
|
|
729
|
+
get bypassCSP(): boolean;
|
|
730
|
+
set bypassCSP(bypassCSP: boolean);
|
|
731
|
+
getBypassCSP(): boolean;
|
|
732
|
+
setBypassCSP(bypassCSP: boolean): Configuration;
|
|
728
733
|
get disableBrowserFetching(): boolean;
|
|
729
734
|
set disableBrowserFetching(disableBrowserFetching: boolean);
|
|
730
735
|
getDisableBrowserFetching(): boolean;
|