@applitools/eyes-browser 1.6.17 → 1.6.19
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 +194 -0
- package/dist/index.js +459 -76
- package/package.json +3 -3
- package/types/output/TestResults.d.ts +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,199 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.6.19](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.6.18...js/eyes-browser@1.6.19) (2026-06-04)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Dependencies
|
|
7
|
+
|
|
8
|
+
* @applitools/nml-client bumped to 1.11.29
|
|
9
|
+
|
|
10
|
+
* @applitools/core-base bumped to 1.35.0
|
|
11
|
+
#### Features
|
|
12
|
+
|
|
13
|
+
* auto-accept UFG diffs from infra updates | AD-9583 ([#3797](https://github.com/Applitools-Dev/sdk/issues/3797)) ([fde553c](https://github.com/Applitools-Dev/sdk/commit/fde553c947aa3c040660ef5d07855fa4a1412399))
|
|
14
|
+
* @applitools/core bumped to 4.64.0
|
|
15
|
+
#### Features
|
|
16
|
+
|
|
17
|
+
* auto-accept UFG diffs from infra updates | AD-9583 ([#3797](https://github.com/Applitools-Dev/sdk/issues/3797)) ([fde553c](https://github.com/Applitools-Dev/sdk/commit/fde553c947aa3c040660ef5d07855fa4a1412399))
|
|
18
|
+
* support default match level from renderinfo | AD-13499 ([#3799](https://github.com/Applitools-Dev/sdk/issues/3799)) ([c7e8aeb](https://github.com/Applitools-Dev/sdk/commit/c7e8aeb3f231d9b4e6e368d7ae5f87115c5cad09))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
#### Bug Fixes
|
|
22
|
+
|
|
23
|
+
* source hideCaret from settings.hideCaret in NML classic capture | AD-14053 ([#3878](https://github.com/Applitools-Dev/sdk/issues/3878)) ([f07b4f5](https://github.com/Applitools-Dev/sdk/commit/f07b4f5c90bb9b7de0300cef93f23dc833268a7c))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
* @applitools/ec-client bumped to 1.12.31
|
|
28
|
+
|
|
29
|
+
* @applitools/eyes bumped to 1.43.0
|
|
30
|
+
#### Features
|
|
31
|
+
|
|
32
|
+
* auto-accept UFG diffs from infra updates | AD-9583 ([#3797](https://github.com/Applitools-Dev/sdk/issues/3797)) ([fde553c](https://github.com/Applitools-Dev/sdk/commit/fde553c947aa3c040660ef5d07855fa4a1412399))
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
## [1.6.18](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.6.17...js/eyes-browser@1.6.18) (2026-05-26)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Dependencies
|
|
41
|
+
|
|
42
|
+
* @applitools/utils bumped to 1.14.5
|
|
43
|
+
#### Bug Fixes
|
|
44
|
+
|
|
45
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
46
|
+
* @applitools/logger bumped to 2.2.12
|
|
47
|
+
#### Bug Fixes
|
|
48
|
+
|
|
49
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
* @applitools/dom-shared bumped to 1.2.1
|
|
54
|
+
#### Bug Fixes
|
|
55
|
+
|
|
56
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
57
|
+
* @applitools/dom-snapshot bumped to 4.17.2
|
|
58
|
+
#### Bug Fixes
|
|
59
|
+
|
|
60
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
* @applitools/socket bumped to 1.3.13
|
|
65
|
+
#### Bug Fixes
|
|
66
|
+
|
|
67
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
* @applitools/req bumped to 1.10.2
|
|
72
|
+
#### Bug Fixes
|
|
73
|
+
|
|
74
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
* @applitools/image bumped to 1.2.11
|
|
79
|
+
#### Bug Fixes
|
|
80
|
+
|
|
81
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
* @applitools/snippets bumped to 2.9.2
|
|
86
|
+
#### Bug Fixes
|
|
87
|
+
|
|
88
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
* @applitools/dom-capture bumped to 11.8.1
|
|
93
|
+
#### Bug Fixes
|
|
94
|
+
|
|
95
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
* @applitools/driver bumped to 1.26.2
|
|
100
|
+
#### Bug Fixes
|
|
101
|
+
|
|
102
|
+
* redact cookie values from logs to prevent sensitive data exposure | AD-12834 ([#3835](https://github.com/Applitools-Dev/sdk/issues/3835)) ([d883647](https://github.com/Applitools-Dev/sdk/commit/d883647d8e007467bd2770ddb79f89be057067b9))
|
|
103
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
* @applitools/spec-driver-webdriver bumped to 1.6.2
|
|
108
|
+
#### Bug Fixes
|
|
109
|
+
|
|
110
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
* @applitools/spec-driver-selenium bumped to 1.8.2
|
|
115
|
+
#### Bug Fixes
|
|
116
|
+
|
|
117
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
* @applitools/spec-driver-playwright bumped to 1.9.2
|
|
122
|
+
#### Bug Fixes
|
|
123
|
+
|
|
124
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
* @applitools/spec-driver-puppeteer bumped to 1.8.2
|
|
129
|
+
#### Bug Fixes
|
|
130
|
+
|
|
131
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
* @applitools/screenshoter bumped to 3.12.21
|
|
136
|
+
#### Bug Fixes
|
|
137
|
+
|
|
138
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
* @applitools/nml-client bumped to 1.11.28
|
|
143
|
+
#### Bug Fixes
|
|
144
|
+
|
|
145
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
* @applitools/tunnel-client bumped to 1.11.14
|
|
150
|
+
#### Bug Fixes
|
|
151
|
+
|
|
152
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
* @applitools/ufg-client bumped to 1.22.2
|
|
157
|
+
#### Bug Fixes
|
|
158
|
+
|
|
159
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
160
|
+
* strip extra fields from checkResources log output ([#3836](https://github.com/Applitools-Dev/sdk/issues/3836)) ([6d75209](https://github.com/Applitools-Dev/sdk/commit/6d752094abb6fcc0e998cf95e1f266964dbfd6f3))
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
* @applitools/core-base bumped to 1.34.1
|
|
165
|
+
#### Bug Fixes
|
|
166
|
+
|
|
167
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
* @applitools/ec-client bumped to 1.12.30
|
|
172
|
+
#### Bug Fixes
|
|
173
|
+
|
|
174
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
* @applitools/core bumped to 4.63.1
|
|
179
|
+
#### Bug Fixes
|
|
180
|
+
|
|
181
|
+
* prevent BrightCove/video.js player corruption during layoutBreakpoints snapshots ([#3828](https://github.com/Applitools-Dev/sdk/issues/3828)) ([380fbae](https://github.com/Applitools-Dev/sdk/commit/380fbaeb1c6a964c640975f1a109417db51f691c))
|
|
182
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
183
|
+
* truly disable NML broker URL cache between checks | FLD-4283 ([#3837](https://github.com/Applitools-Dev/sdk/issues/3837)) ([da76dd3](https://github.com/Applitools-Dev/sdk/commit/da76dd3227c3297320be0d19558a7437b5733999))
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
* @applitools/eyes bumped to 1.42.1
|
|
188
|
+
#### Bug Fixes
|
|
189
|
+
|
|
190
|
+
* strip .d.ts extension from import() type specifiers | FLD-4429 ([#3830](https://github.com/Applitools-Dev/sdk/issues/3830)) ([37aac45](https://github.com/Applitools-Dev/sdk/commit/37aac45958b713702bea87c144623dd3e65fce79))
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
* @applitools/test-server bumped to 1.4.4
|
|
195
|
+
|
|
196
|
+
|
|
3
197
|
## [1.6.17](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.6.16...js/eyes-browser@1.6.17) (2026-05-19)
|
|
4
198
|
|
|
5
199
|
|
package/dist/index.js
CHANGED
|
@@ -12918,6 +12918,12 @@ var require_TestResults = __commonJS({
|
|
|
12918
12918
|
get keepIfDuplicate() {
|
|
12919
12919
|
return this._result.keepIfDuplicate;
|
|
12920
12920
|
}
|
|
12921
|
+
get isAutoAcceptedInfraUpdate() {
|
|
12922
|
+
return Boolean(this._result.isAutoAcceptedInfraUpdate);
|
|
12923
|
+
}
|
|
12924
|
+
getIsAutoAcceptedInfraUpdate() {
|
|
12925
|
+
return this.isAutoAcceptedInfraUpdate;
|
|
12926
|
+
}
|
|
12921
12927
|
isPassed() {
|
|
12922
12928
|
return this._result.status === TestResultsStatus_1.TestResultsStatusEnum.Passed;
|
|
12923
12929
|
}
|
|
@@ -29060,7 +29066,8 @@ var require_requests = __commonJS({
|
|
|
29060
29066
|
stitchingServiceUrl: account.stitchingServiceUrl,
|
|
29061
29067
|
account,
|
|
29062
29068
|
environment: settings.environment,
|
|
29063
|
-
trimmedBatchProps: result.trimmedBatchProps
|
|
29069
|
+
trimmedBatchProps: result.trimmedBatchProps,
|
|
29070
|
+
shouldRetryWithOldInfra: result.shouldRetryWithOldInfra
|
|
29064
29071
|
};
|
|
29065
29072
|
});
|
|
29066
29073
|
logger.log('Request "openEyes" finished successfully with body', test);
|
|
@@ -30084,7 +30091,8 @@ var require_requests = __commonJS({
|
|
|
30084
30091
|
ignoreMatch: settings.ignoreMatch,
|
|
30085
30092
|
forceMismatch: settings.forceMismatch,
|
|
30086
30093
|
forceMatch: settings.forceMatch,
|
|
30087
|
-
replaceLast: settings.replaceLast
|
|
30094
|
+
replaceLast: settings.replaceLast,
|
|
30095
|
+
oldInfraRetry: settings.oldInfraRetry
|
|
30088
30096
|
}
|
|
30089
30097
|
};
|
|
30090
30098
|
}
|
|
@@ -80468,7 +80476,7 @@ var require_driver = __commonJS({
|
|
|
80468
80476
|
return [];
|
|
80469
80477
|
try {
|
|
80470
80478
|
const cookies = await ((_b = (_a = this._spec).getCookies) === null || _b === void 0 ? void 0 : _b.call(_a, this.target));
|
|
80471
|
-
this._logger.log("Extracted driver cookies", cookies);
|
|
80479
|
+
this._logger.log("Extracted driver cookies, number of cookies:", cookies === null || cookies === void 0 ? void 0 : cookies.length);
|
|
80472
80480
|
return cookies !== null && cookies !== void 0 ? cookies : [];
|
|
80473
80481
|
} catch (error) {
|
|
80474
80482
|
this._logger.error("Error while extracting driver cookies", error);
|
|
@@ -82690,7 +82698,7 @@ ${l2}`}`, { bundledCss: u2, unfetchedResources: a2 };
|
|
|
82690
82698
|
return m3 && (k2.shadowRoot = m3), k2;
|
|
82691
82699
|
}
|
|
82692
82700
|
}(t3);
|
|
82693
|
-
f2(l2.doCaptureDoc), d2(l2.waitForImages), await Promise.all(m2), f2(l2.waitForImages), T2.version = "1.4.0", T2.scriptVersion = "11.8.
|
|
82701
|
+
f2(l2.doCaptureDoc), d2(l2.waitForImages), await Promise.all(m2), f2(l2.waitForImages), T2.version = "1.4.0", T2.scriptVersion = "11.8.1";
|
|
82694
82702
|
const N2 = p2.length ? `${p2.join("\n")}
|
|
82695
82703
|
` : "", P2 = h2.size ? `${Array.from(h2).join("\n")}
|
|
82696
82704
|
` : "", A2 = JSON.stringify({ separator: w2, cssStartToken: y2, cssEndToken: y2, iframeStartToken: `"${g2}`, iframeEndToken: `${g2}"` });
|
|
@@ -89676,7 +89684,7 @@ var require_captureDomPollForIE = __commonJS({
|
|
|
89676
89684
|
case 24:
|
|
89677
89685
|
return L2 = e4.sent, A2(E2.prefetchCss), j2 = U0({ parseCss: D0, CSSImportRule, getCssFromCache: L2, absolutizeUrl: j0, unfetchedToken: _2 }), k2 = z0({ getCssFromCache: L2, absolutizeUrl: j0 }), C2 = V0({ extractCssFromNode: k2, getBundledCssFromCssText: j2, unfetchedToken: _2 }), S2(E2.doCaptureDoc), M2 = H2(i3), A2(E2.doCaptureDoc), S2(E2.waitForImages), e4.next = 35, Promise.all(O2);
|
|
89678
89686
|
case 35:
|
|
89679
|
-
return A2(E2.waitForImages), M2.version = "1.4.0", M2.scriptVersion = "11.8.
|
|
89687
|
+
return A2(E2.waitForImages), M2.version = "1.4.0", M2.scriptVersion = "11.8.1", N2 = T2.length ? T2.join("\n") + "\n" : "", U2 = x2.size ? Array.from(x2).join("\n") + "\n" : "", D2 = JSON.stringify({ separator: P2, cssStartToken: _2, cssEndToken: _2, iframeStartToken: '"' + R2, iframeEndToken: R2 + '"' }), A2(E2.total), B2 = JSON.stringify(M2), z2 = D2 + "\n" + U2 + P2 + "\n" + N2 + P2 + "\n" + ("string" == typeof B2 ? B2 : H0(M2)) + F2(), console.log("[captureFrame]", JSON.stringify(E2)), e4.abrupt("return", z2);
|
|
89680
89688
|
case 46:
|
|
89681
89689
|
case "end":
|
|
89682
89690
|
return e4.stop();
|
|
@@ -96716,14 +96724,16 @@ var require_get_nml_client = __commonJS({
|
|
|
96716
96724
|
var nml_client_1 = require_dist5();
|
|
96717
96725
|
var utils_1 = require_browser3();
|
|
96718
96726
|
var clients = /* @__PURE__ */ new Map();
|
|
96727
|
+
var cacheDisabled = /* @__PURE__ */ new Set();
|
|
96719
96728
|
function clearNMLClients() {
|
|
96720
96729
|
clients.clear();
|
|
96730
|
+
cacheDisabled.clear();
|
|
96721
96731
|
}
|
|
96722
96732
|
exports.clearNMLClients = clearNMLClients;
|
|
96723
96733
|
function makeGetNMLClient({ client, logger: mainLogger }) {
|
|
96724
96734
|
return {
|
|
96725
96735
|
getNMLClient,
|
|
96726
|
-
|
|
96736
|
+
disableNMLClientCache
|
|
96727
96737
|
};
|
|
96728
96738
|
async function getNMLClient({ driver, settings, logger }) {
|
|
96729
96739
|
if (client)
|
|
@@ -96731,25 +96741,29 @@ var require_get_nml_client = __commonJS({
|
|
|
96731
96741
|
logger = logger.extend(mainLogger);
|
|
96732
96742
|
const { sessionId } = await driver.getDriverInfo();
|
|
96733
96743
|
const cacheKey = sessionId !== null && sessionId !== void 0 ? sessionId : driver.guid;
|
|
96734
|
-
|
|
96735
|
-
|
|
96736
|
-
return clientFromCache;
|
|
96744
|
+
if (cacheDisabled.has(cacheKey)) {
|
|
96745
|
+
logger.log("NML broker url cache is disabled for this session \u2014 re-extracting broker url");
|
|
96737
96746
|
} else {
|
|
96738
|
-
const
|
|
96739
|
-
if (
|
|
96740
|
-
|
|
96741
|
-
|
|
96742
|
-
|
|
96743
|
-
|
|
96744
|
-
|
|
96745
|
-
|
|
96747
|
+
const clientFromCache = clients.get(cacheKey);
|
|
96748
|
+
if (clientFromCache)
|
|
96749
|
+
return clientFromCache;
|
|
96750
|
+
}
|
|
96751
|
+
const brokerUrl = await driver.extractBrokerUrl();
|
|
96752
|
+
if (!brokerUrl)
|
|
96753
|
+
throw new Error("Unable to extract broker url from the device");
|
|
96754
|
+
if (utils_1.types.has(brokerUrl, "error")) {
|
|
96755
|
+
logger.error("Broker url extraction has failed with error", brokerUrl.error);
|
|
96756
|
+
throw new Error(brokerUrl.error);
|
|
96757
|
+
}
|
|
96758
|
+
const nmlClient = (0, nml_client_1.makeNMLClient)({ settings: { brokerUrl, ...settings }, logger });
|
|
96759
|
+
if (!cacheDisabled.has(cacheKey))
|
|
96746
96760
|
clients.set(cacheKey, nmlClient);
|
|
96747
|
-
|
|
96748
|
-
}
|
|
96761
|
+
return nmlClient;
|
|
96749
96762
|
}
|
|
96750
|
-
async function
|
|
96763
|
+
async function disableNMLClientCache(driver) {
|
|
96751
96764
|
const { sessionId } = await driver.getDriverInfo();
|
|
96752
96765
|
const cacheKey = sessionId !== null && sessionId !== void 0 ? sessionId : driver.guid;
|
|
96766
|
+
cacheDisabled.add(cacheKey);
|
|
96753
96767
|
clients.delete(cacheKey);
|
|
96754
96768
|
}
|
|
96755
96769
|
}
|
|
@@ -97617,7 +97631,7 @@ var require_check2 = __commonJS({
|
|
|
97617
97631
|
fully: settings.fully,
|
|
97618
97632
|
stitchMode: settings.stitchMode,
|
|
97619
97633
|
hideScrollbars: settings.hideScrollbars,
|
|
97620
|
-
hideCaret: settings.
|
|
97634
|
+
hideCaret: settings.hideCaret,
|
|
97621
97635
|
overlap: settings.overlap,
|
|
97622
97636
|
waitBeforeCapture: settings.waitBeforeCapture,
|
|
97623
97637
|
waitBetweenStitches: settings.waitBetweenStitches,
|
|
@@ -97807,7 +97821,7 @@ var require_check_and_close2 = __commonJS({
|
|
|
97807
97821
|
fully: settings.fully,
|
|
97808
97822
|
stitchMode: settings.stitchMode,
|
|
97809
97823
|
hideScrollbars: settings.hideScrollbars,
|
|
97810
|
-
hideCaret: settings.
|
|
97824
|
+
hideCaret: settings.hideCaret,
|
|
97811
97825
|
overlap: settings.overlap,
|
|
97812
97826
|
waitBeforeCapture: settings.waitBeforeCapture,
|
|
97813
97827
|
waitBetweenStitches: settings.waitBetweenStitches,
|
|
@@ -104651,7 +104665,7 @@ creating temp style for access.`), r2 = Qh(e3);
|
|
|
104651
104665
|
function M2(e3) {
|
|
104652
104666
|
return r3.defaultView && r3.defaultView.frameElement && r3.defaultView.frameElement.getAttribute(e3);
|
|
104653
104667
|
}
|
|
104654
|
-
}(n3).then((e3) => (m2.log("processPage end"), e3.scriptVersion = "4.17.
|
|
104668
|
+
}(n3).then((e3) => (m2.log("processPage end"), e3.scriptVersion = "4.17.2", e3));
|
|
104655
104669
|
}, n2[S], "domSnapshotResult");
|
|
104656
104670
|
return function(e3) {
|
|
104657
104671
|
try {
|
|
@@ -105283,6 +105297,305 @@ var require_calculate_required_sizes = __commonJS({
|
|
|
105283
105297
|
}
|
|
105284
105298
|
});
|
|
105285
105299
|
|
|
105300
|
+
// ../core/dist/ufg/utils/media-playback-guard.js
|
|
105301
|
+
var require_media_playback_guard = __commonJS({
|
|
105302
|
+
"../core/dist/ufg/utils/media-playback-guard.js"(exports) {
|
|
105303
|
+
"use strict";
|
|
105304
|
+
init_global();
|
|
105305
|
+
init_process();
|
|
105306
|
+
init_setImmediate();
|
|
105307
|
+
init_buffer();
|
|
105308
|
+
init_setInterval();
|
|
105309
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105310
|
+
exports.pagePayload = exports.makeMediaPlaybackGuard = void 0;
|
|
105311
|
+
function makeMediaPlaybackGuard({ context, logger }) {
|
|
105312
|
+
const ns = "__applitools_mpg_" + Math.random().toString(36).slice(2) + "__";
|
|
105313
|
+
return {
|
|
105314
|
+
setup: () => runPhase("setup"),
|
|
105315
|
+
beforeResize: () => runPhase("beforeResize"),
|
|
105316
|
+
beforeSnapshot: () => runPhase("beforeSnapshot"),
|
|
105317
|
+
afterSnapshot: () => runPhase("afterSnapshot"),
|
|
105318
|
+
teardown: () => runPhase("teardown")
|
|
105319
|
+
};
|
|
105320
|
+
function runPhase(phase) {
|
|
105321
|
+
return context.execute(pagePayload, { ns, phase }).catch((err) => logger.warn(`media guard: ${phase} failed`, err));
|
|
105322
|
+
}
|
|
105323
|
+
}
|
|
105324
|
+
exports.makeMediaPlaybackGuard = makeMediaPlaybackGuard;
|
|
105325
|
+
function pagePayload(arg) {
|
|
105326
|
+
const w = window;
|
|
105327
|
+
const ns = arg.ns;
|
|
105328
|
+
if (!w[ns])
|
|
105329
|
+
install();
|
|
105330
|
+
const state = w[ns];
|
|
105331
|
+
if (state && typeof state[arg.phase] === "function")
|
|
105332
|
+
state[arg.phase]();
|
|
105333
|
+
function install() {
|
|
105334
|
+
const videoUndos = /* @__PURE__ */ new WeakMap();
|
|
105335
|
+
const captionUndos = /* @__PURE__ */ new WeakMap();
|
|
105336
|
+
const playerSnapshots = [];
|
|
105337
|
+
const originalProtoPlay = HTMLMediaElement.prototype.play;
|
|
105338
|
+
const originalCreateElement = document.createElement.bind(document);
|
|
105339
|
+
const originalCreateElementNS = document.createElementNS.bind(document);
|
|
105340
|
+
let observer = null;
|
|
105341
|
+
function walkAll(root, fn) {
|
|
105342
|
+
const els = root.querySelectorAll("*");
|
|
105343
|
+
for (let i = 0; i < els.length; i++) {
|
|
105344
|
+
const el = els[i];
|
|
105345
|
+
fn(el);
|
|
105346
|
+
const sr = el.shadowRoot;
|
|
105347
|
+
if (sr)
|
|
105348
|
+
walkAll(sr, fn);
|
|
105349
|
+
}
|
|
105350
|
+
}
|
|
105351
|
+
function walkVideos(root, fn) {
|
|
105352
|
+
walkAll(root, (el) => {
|
|
105353
|
+
if (el.tagName === "VIDEO")
|
|
105354
|
+
fn(el);
|
|
105355
|
+
});
|
|
105356
|
+
}
|
|
105357
|
+
function walkCaptions(root, fn) {
|
|
105358
|
+
walkAll(root, (el) => {
|
|
105359
|
+
const cl = el.classList;
|
|
105360
|
+
if (cl && cl.contains("vjs-text-track-display"))
|
|
105361
|
+
fn(el);
|
|
105362
|
+
});
|
|
105363
|
+
}
|
|
105364
|
+
function overrideOwn(obj, key, replacement) {
|
|
105365
|
+
const wasOwn = Object.prototype.hasOwnProperty.call(obj, key);
|
|
105366
|
+
const original = wasOwn ? obj[key] : void 0;
|
|
105367
|
+
obj[key] = replacement;
|
|
105368
|
+
return function restore() {
|
|
105369
|
+
if (wasOwn)
|
|
105370
|
+
obj[key] = original;
|
|
105371
|
+
else
|
|
105372
|
+
delete obj[key];
|
|
105373
|
+
};
|
|
105374
|
+
}
|
|
105375
|
+
function runUndos(undos) {
|
|
105376
|
+
for (let i = undos.length - 1; i >= 0; i--) {
|
|
105377
|
+
try {
|
|
105378
|
+
undos[i]();
|
|
105379
|
+
} catch (_) {
|
|
105380
|
+
}
|
|
105381
|
+
}
|
|
105382
|
+
}
|
|
105383
|
+
function lockVideo(video) {
|
|
105384
|
+
if (videoUndos.has(video))
|
|
105385
|
+
return;
|
|
105386
|
+
const undos = [];
|
|
105387
|
+
const hadAutoplay = video.hasAttribute("autoplay");
|
|
105388
|
+
if (hadAutoplay)
|
|
105389
|
+
video.removeAttribute("autoplay");
|
|
105390
|
+
try {
|
|
105391
|
+
Object.defineProperty(video, "autoplay", {
|
|
105392
|
+
configurable: true,
|
|
105393
|
+
get: () => false,
|
|
105394
|
+
set: () => {
|
|
105395
|
+
}
|
|
105396
|
+
});
|
|
105397
|
+
} catch (_) {
|
|
105398
|
+
}
|
|
105399
|
+
undos.push(() => {
|
|
105400
|
+
try {
|
|
105401
|
+
delete video.autoplay;
|
|
105402
|
+
} catch (_) {
|
|
105403
|
+
}
|
|
105404
|
+
if (hadAutoplay)
|
|
105405
|
+
video.setAttribute("autoplay", "");
|
|
105406
|
+
});
|
|
105407
|
+
undos.push(overrideOwn(video, "setAttribute", function(name, value) {
|
|
105408
|
+
if (name === "autoplay")
|
|
105409
|
+
return;
|
|
105410
|
+
return Element.prototype.setAttribute.call(this, name, value);
|
|
105411
|
+
}));
|
|
105412
|
+
if (video.captureStream) {
|
|
105413
|
+
undos.push(overrideOwn(video, "captureStream", function() {
|
|
105414
|
+
return { getVideoTracks: () => [] };
|
|
105415
|
+
}));
|
|
105416
|
+
}
|
|
105417
|
+
const tracks = video.textTracks;
|
|
105418
|
+
const savedModes = [];
|
|
105419
|
+
for (let i = 0; i < tracks.length; i++) {
|
|
105420
|
+
savedModes.push(tracks[i].mode);
|
|
105421
|
+
tracks[i].mode = "disabled";
|
|
105422
|
+
}
|
|
105423
|
+
undos.push(() => {
|
|
105424
|
+
const t = video.textTracks;
|
|
105425
|
+
for (let i = 0; i < t.length && i < savedModes.length; i++)
|
|
105426
|
+
t[i].mode = savedModes[i];
|
|
105427
|
+
});
|
|
105428
|
+
videoUndos.set(video, undos);
|
|
105429
|
+
}
|
|
105430
|
+
function unlockVideo(video) {
|
|
105431
|
+
const undos = videoUndos.get(video);
|
|
105432
|
+
if (!undos)
|
|
105433
|
+
return;
|
|
105434
|
+
videoUndos.delete(video);
|
|
105435
|
+
runUndos(undos);
|
|
105436
|
+
}
|
|
105437
|
+
function lockCaption(c) {
|
|
105438
|
+
if (captionUndos.has(c))
|
|
105439
|
+
return;
|
|
105440
|
+
const undos = [];
|
|
105441
|
+
while (c.firstChild)
|
|
105442
|
+
c.removeChild(c.firstChild);
|
|
105443
|
+
undos.push(overrideOwn(c, "appendChild", (n) => n));
|
|
105444
|
+
undos.push(overrideOwn(c, "insertBefore", (n) => n));
|
|
105445
|
+
undos.push(overrideOwn(c, "insertAdjacentHTML", () => {
|
|
105446
|
+
}));
|
|
105447
|
+
undos.push(overrideOwn(c, "insertAdjacentElement", (_pos, n) => n));
|
|
105448
|
+
try {
|
|
105449
|
+
Object.defineProperty(c, "innerHTML", {
|
|
105450
|
+
configurable: true,
|
|
105451
|
+
get: () => "",
|
|
105452
|
+
set: () => {
|
|
105453
|
+
}
|
|
105454
|
+
});
|
|
105455
|
+
undos.push(() => {
|
|
105456
|
+
try {
|
|
105457
|
+
delete c.innerHTML;
|
|
105458
|
+
} catch (_) {
|
|
105459
|
+
}
|
|
105460
|
+
});
|
|
105461
|
+
} catch (_) {
|
|
105462
|
+
}
|
|
105463
|
+
captionUndos.set(c, undos);
|
|
105464
|
+
}
|
|
105465
|
+
function unlockCaption(c) {
|
|
105466
|
+
const undos = captionUndos.get(c);
|
|
105467
|
+
if (!undos)
|
|
105468
|
+
return;
|
|
105469
|
+
captionUndos.delete(c);
|
|
105470
|
+
runUndos(undos);
|
|
105471
|
+
}
|
|
105472
|
+
function snapshotPlayers() {
|
|
105473
|
+
walkVideos(document, (video) => {
|
|
105474
|
+
const playerEl = video.closest("video-js, [data-vjs-player], .video-js");
|
|
105475
|
+
playerSnapshots.push({
|
|
105476
|
+
video,
|
|
105477
|
+
paused: video.paused,
|
|
105478
|
+
currentTime: video.currentTime,
|
|
105479
|
+
playerEl,
|
|
105480
|
+
playerClasses: playerEl ? Array.from(playerEl.classList) : []
|
|
105481
|
+
});
|
|
105482
|
+
});
|
|
105483
|
+
}
|
|
105484
|
+
function restorePlayers() {
|
|
105485
|
+
for (let i = 0; i < playerSnapshots.length; i++) {
|
|
105486
|
+
const s = playerSnapshots[i];
|
|
105487
|
+
if (s.paused && !s.video.paused) {
|
|
105488
|
+
s.video.pause();
|
|
105489
|
+
try {
|
|
105490
|
+
s.video.currentTime = s.currentTime;
|
|
105491
|
+
} catch (_) {
|
|
105492
|
+
}
|
|
105493
|
+
}
|
|
105494
|
+
if (s.playerEl) {
|
|
105495
|
+
const current = Array.from(s.playerEl.classList);
|
|
105496
|
+
for (let j = 0; j < current.length; j++) {
|
|
105497
|
+
if (s.playerClasses.indexOf(current[j]) === -1)
|
|
105498
|
+
s.playerEl.classList.remove(current[j]);
|
|
105499
|
+
}
|
|
105500
|
+
for (let j = 0; j < s.playerClasses.length; j++)
|
|
105501
|
+
s.playerEl.classList.add(s.playerClasses[j]);
|
|
105502
|
+
}
|
|
105503
|
+
}
|
|
105504
|
+
}
|
|
105505
|
+
function patchGlobals() {
|
|
105506
|
+
;
|
|
105507
|
+
HTMLMediaElement.prototype.play = function() {
|
|
105508
|
+
return Promise.resolve();
|
|
105509
|
+
};
|
|
105510
|
+
document.createElement = function(tag) {
|
|
105511
|
+
const el = originalCreateElement(tag);
|
|
105512
|
+
if (typeof tag === "string" && tag.toLowerCase() === "video") {
|
|
105513
|
+
lockVideo(el);
|
|
105514
|
+
}
|
|
105515
|
+
return el;
|
|
105516
|
+
};
|
|
105517
|
+
document.createElementNS = function(nsArg, tag) {
|
|
105518
|
+
const el = originalCreateElementNS(nsArg, tag);
|
|
105519
|
+
if (typeof tag === "string" && tag.toLowerCase() === "video") {
|
|
105520
|
+
lockVideo(el);
|
|
105521
|
+
}
|
|
105522
|
+
return el;
|
|
105523
|
+
};
|
|
105524
|
+
}
|
|
105525
|
+
function unpatchGlobals() {
|
|
105526
|
+
;
|
|
105527
|
+
HTMLMediaElement.prototype.play = originalProtoPlay;
|
|
105528
|
+
document.createElement = originalCreateElement;
|
|
105529
|
+
document.createElementNS = originalCreateElementNS;
|
|
105530
|
+
}
|
|
105531
|
+
function startObserver() {
|
|
105532
|
+
observer = new MutationObserver((mutations) => {
|
|
105533
|
+
for (let i = 0; i < mutations.length; i++) {
|
|
105534
|
+
const added = mutations[i].addedNodes;
|
|
105535
|
+
for (let j = 0; j < added.length; j++) {
|
|
105536
|
+
const node = added[j];
|
|
105537
|
+
if (!(node instanceof Element))
|
|
105538
|
+
continue;
|
|
105539
|
+
if (node.tagName === "VIDEO")
|
|
105540
|
+
lockVideo(node);
|
|
105541
|
+
else if (node.classList && node.classList.contains("vjs-text-track-display"))
|
|
105542
|
+
lockCaption(node);
|
|
105543
|
+
walkVideos(node, lockVideo);
|
|
105544
|
+
walkCaptions(node, lockCaption);
|
|
105545
|
+
}
|
|
105546
|
+
}
|
|
105547
|
+
});
|
|
105548
|
+
observer.observe(document, { childList: true, subtree: true });
|
|
105549
|
+
}
|
|
105550
|
+
function stopObserver() {
|
|
105551
|
+
if (observer) {
|
|
105552
|
+
observer.disconnect();
|
|
105553
|
+
observer = null;
|
|
105554
|
+
}
|
|
105555
|
+
}
|
|
105556
|
+
patchGlobals();
|
|
105557
|
+
walkCaptions(document, lockCaption);
|
|
105558
|
+
startObserver();
|
|
105559
|
+
w[ns] = {
|
|
105560
|
+
// `setup` is already complete by the time we get here; the no-op handler keeps the dispatch shape uniform.
|
|
105561
|
+
setup() {
|
|
105562
|
+
},
|
|
105563
|
+
beforeResize() {
|
|
105564
|
+
walkVideos(document, lockVideo);
|
|
105565
|
+
walkCaptions(document, lockCaption);
|
|
105566
|
+
},
|
|
105567
|
+
beforeSnapshot() {
|
|
105568
|
+
walkVideos(document, (video) => {
|
|
105569
|
+
if (!video.paused)
|
|
105570
|
+
video.pause();
|
|
105571
|
+
const t = video.textTracks;
|
|
105572
|
+
for (let i = 0; i < t.length; i++)
|
|
105573
|
+
t[i].mode = "disabled";
|
|
105574
|
+
});
|
|
105575
|
+
playerSnapshots.length = 0;
|
|
105576
|
+
snapshotPlayers();
|
|
105577
|
+
walkCaptions(document, lockCaption);
|
|
105578
|
+
},
|
|
105579
|
+
afterSnapshot() {
|
|
105580
|
+
walkVideos(document, unlockVideo);
|
|
105581
|
+
restorePlayers();
|
|
105582
|
+
playerSnapshots.length = 0;
|
|
105583
|
+
},
|
|
105584
|
+
teardown() {
|
|
105585
|
+
restorePlayers();
|
|
105586
|
+
stopObserver();
|
|
105587
|
+
unpatchGlobals();
|
|
105588
|
+
walkVideos(document, unlockVideo);
|
|
105589
|
+
walkCaptions(document, unlockCaption);
|
|
105590
|
+
delete w[ns];
|
|
105591
|
+
}
|
|
105592
|
+
};
|
|
105593
|
+
}
|
|
105594
|
+
}
|
|
105595
|
+
exports.pagePayload = pagePayload;
|
|
105596
|
+
}
|
|
105597
|
+
});
|
|
105598
|
+
|
|
105286
105599
|
// ../core/dist/ufg/utils/take-dom-snapshots.js
|
|
105287
105600
|
var require_take_dom_snapshots = __commonJS({
|
|
105288
105601
|
"../core/dist/ufg/utils/take-dom-snapshots.js"(exports) {
|
|
@@ -105338,6 +105651,7 @@ var require_take_dom_snapshots = __commonJS({
|
|
|
105338
105651
|
var generate_safe_selectors_1 = require_generate_safe_selectors();
|
|
105339
105652
|
var wait_for_lazy_load_1 = require_wait_for_lazy_load();
|
|
105340
105653
|
var calculate_required_sizes_1 = require_calculate_required_sizes();
|
|
105654
|
+
var media_playback_guard_1 = require_media_playback_guard();
|
|
105341
105655
|
var chalk_1 = __importDefault(require_source());
|
|
105342
105656
|
var utils2 = __importStar(require_browser3());
|
|
105343
105657
|
var lang = __importStar(require_lang());
|
|
@@ -105387,9 +105701,12 @@ var require_take_dom_snapshots = __commonJS({
|
|
|
105387
105701
|
context: currentContext,
|
|
105388
105702
|
elementReferences: settings.elementReferences
|
|
105389
105703
|
});
|
|
105704
|
+
const mediaGuard = (0, media_playback_guard_1.makeMediaPlaybackGuard)({ context: currentContext, logger });
|
|
105705
|
+
await mediaGuard.setup();
|
|
105390
105706
|
const snapshots = Array(settings.environments.length);
|
|
105391
105707
|
for (const [index, { viewportSize, browsers }] of entries.entries()) {
|
|
105392
105708
|
logger.log(`Taking dom snapshot for viewport size ${viewportSize}`);
|
|
105709
|
+
await mediaGuard.beforeResize();
|
|
105393
105710
|
if (viewportSize) {
|
|
105394
105711
|
try {
|
|
105395
105712
|
await driver.setViewportSize(viewportSize);
|
|
@@ -105421,10 +105738,13 @@ var require_take_dom_snapshots = __commonJS({
|
|
|
105421
105738
|
await (0, wait_for_lazy_load_1.waitForLazyLoad)({ context: currentContext, settings: settings.lazyLoad, logger });
|
|
105422
105739
|
}
|
|
105423
105740
|
await beforeEachSnapshot();
|
|
105741
|
+
await mediaGuard.beforeSnapshot();
|
|
105424
105742
|
const snapshot = await (0, take_dom_snapshot_1.takeDomSnapshot)({ context: currentContext, settings, logger });
|
|
105425
105743
|
browsers.forEach(({ index: index2 }) => snapshots[index2] = snapshot);
|
|
105744
|
+
await mediaGuard.afterSnapshot();
|
|
105426
105745
|
}
|
|
105427
105746
|
await driver.setViewportSize(initialViewportSize);
|
|
105747
|
+
await mediaGuard.teardown();
|
|
105428
105748
|
if (settings.layoutBreakpoints.reload) {
|
|
105429
105749
|
await driver.reloadPage();
|
|
105430
105750
|
await beforeEachSnapshot();
|
|
@@ -106314,11 +106634,11 @@ var require_requests3 = __commonJS({
|
|
|
106314
106634
|
return pathSelector;
|
|
106315
106635
|
}
|
|
106316
106636
|
function trimValueForResource(resource) {
|
|
106637
|
+
const { logger: _logger, ...rest } = resource;
|
|
106317
106638
|
if ("value" in resource) {
|
|
106318
|
-
return { ...
|
|
106319
|
-
} else {
|
|
106320
|
-
return resource;
|
|
106639
|
+
return { ...rest, value: resource.value.subarray(0, 100), byteLength: resource.value.byteLength };
|
|
106321
106640
|
}
|
|
106641
|
+
return rest;
|
|
106322
106642
|
}
|
|
106323
106643
|
}
|
|
106324
106644
|
});
|
|
@@ -127422,6 +127742,47 @@ var require_create_render_target_from_snapshot = __commonJS({
|
|
|
127422
127742
|
}
|
|
127423
127743
|
});
|
|
127424
127744
|
|
|
127745
|
+
// ../core/dist/ufg/to-old-infra-environment.js
|
|
127746
|
+
var require_to_old_infra_environment = __commonJS({
|
|
127747
|
+
"../core/dist/ufg/to-old-infra-environment.js"(exports) {
|
|
127748
|
+
"use strict";
|
|
127749
|
+
init_global();
|
|
127750
|
+
init_process();
|
|
127751
|
+
init_setImmediate();
|
|
127752
|
+
init_buffer();
|
|
127753
|
+
init_setInterval();
|
|
127754
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
127755
|
+
exports.toOldInfraEnvironment = void 0;
|
|
127756
|
+
var latestToOneBack = {
|
|
127757
|
+
chrome: "chrome-one-version-back",
|
|
127758
|
+
firefox: "firefox-one-version-back",
|
|
127759
|
+
safari: "safari-one-version-back",
|
|
127760
|
+
edgechromium: "edgechromium-one-version-back"
|
|
127761
|
+
};
|
|
127762
|
+
function toOldInfraEnvironment(env) {
|
|
127763
|
+
if (!isLatest(env))
|
|
127764
|
+
return null;
|
|
127765
|
+
if ("iosDeviceInfo" in env)
|
|
127766
|
+
return { ...env, iosDeviceInfo: { ...env.iosDeviceInfo, version: "latest-1" } };
|
|
127767
|
+
if ("androidDeviceInfo" in env)
|
|
127768
|
+
return { ...env, androidDeviceInfo: { ...env.androidDeviceInfo, version: "latest-1" } };
|
|
127769
|
+
if ("chromeEmulationInfo" in env)
|
|
127770
|
+
return { ...env, name: "chrome-one-version-back" };
|
|
127771
|
+
return { ...env, name: latestToOneBack[env.name] };
|
|
127772
|
+
}
|
|
127773
|
+
exports.toOldInfraEnvironment = toOldInfraEnvironment;
|
|
127774
|
+
function isLatest(env) {
|
|
127775
|
+
if ("iosDeviceInfo" in env)
|
|
127776
|
+
return env.iosDeviceInfo.version !== "latest-1";
|
|
127777
|
+
if ("androidDeviceInfo" in env)
|
|
127778
|
+
return env.androidDeviceInfo.version !== "latest-1";
|
|
127779
|
+
if ("chromeEmulationInfo" in env)
|
|
127780
|
+
return !env.name || env.name === "chrome";
|
|
127781
|
+
return !!env.name && env.name in latestToOneBack;
|
|
127782
|
+
}
|
|
127783
|
+
}
|
|
127784
|
+
});
|
|
127785
|
+
|
|
127425
127786
|
// ../core/dist/ufg/check.js
|
|
127426
127787
|
var require_check3 = __commonJS({
|
|
127427
127788
|
"../core/dist/ufg/check.js"(exports) {
|
|
@@ -127478,6 +127839,7 @@ var require_check3 = __commonJS({
|
|
|
127478
127839
|
var take_snapshots_1 = require_take_snapshots2();
|
|
127479
127840
|
var create_render_target_from_snapshot_1 = require_create_render_target_from_snapshot();
|
|
127480
127841
|
var to_base_check_settings_1 = require_to_base_check_settings();
|
|
127842
|
+
var to_old_infra_environment_1 = require_to_old_infra_environment();
|
|
127481
127843
|
function makeCheck({ eyes: eyes2, target: defaultTarget, environments: defaultEnvironments = [], spec: spec2, signal, logger: mainLogger }) {
|
|
127482
127844
|
return async function check({ target = defaultTarget, settings = {}, logger = mainLogger } = {}) {
|
|
127483
127845
|
var _a;
|
|
@@ -127512,7 +127874,7 @@ var require_check3 = __commonJS({
|
|
|
127512
127874
|
snapshots = !utils2.types.isArray(target) ? Array(uniqueEnvironments.length).fill(target) : target;
|
|
127513
127875
|
}
|
|
127514
127876
|
const promises = snapshots.map(async (snapshot, i) => {
|
|
127515
|
-
var _a2, _b, _c, _d, _e, _f, _g, _h
|
|
127877
|
+
var _a2, _b, _c, _d, _e, _f, _g, _h;
|
|
127516
127878
|
const environmentLogger = logger.extend({ tags: [`environment-${utils2.general.shortid()}`] });
|
|
127517
127879
|
const { target: target2 } = snapshot;
|
|
127518
127880
|
const environment = uniqueEnvironments[i];
|
|
@@ -127553,38 +127915,43 @@ var require_check3 = __commonJS({
|
|
|
127553
127915
|
const { elementReferences: selectors, getBaseCheckSettings } = (0, to_base_check_settings_1.toBaseCheckSettings)({
|
|
127554
127916
|
settings: snapshot.settings
|
|
127555
127917
|
});
|
|
127556
|
-
const
|
|
127557
|
-
|
|
127558
|
-
|
|
127559
|
-
|
|
127560
|
-
|
|
127561
|
-
|
|
127562
|
-
|
|
127563
|
-
|
|
127564
|
-
|
|
127565
|
-
|
|
127566
|
-
|
|
127567
|
-
|
|
127568
|
-
|
|
127569
|
-
|
|
127570
|
-
|
|
127571
|
-
|
|
127572
|
-
|
|
127573
|
-
|
|
127574
|
-
|
|
127575
|
-
|
|
127576
|
-
|
|
127577
|
-
|
|
127578
|
-
|
|
127579
|
-
|
|
127580
|
-
|
|
127581
|
-
|
|
127918
|
+
const renderForCheck = async (env) => {
|
|
127919
|
+
var _a3;
|
|
127920
|
+
const { renderId, selectorRegions, ...target3 } = await ufgClient.render({
|
|
127921
|
+
target: renderTarget,
|
|
127922
|
+
settings: {
|
|
127923
|
+
...snapshot.settings,
|
|
127924
|
+
region: (_a3 = selectors.target) !== null && _a3 !== void 0 ? _a3 : snapshot.settings.region,
|
|
127925
|
+
scrollRootElement: selectors.scrolling,
|
|
127926
|
+
selectorsToCalculate: selectors.calculate,
|
|
127927
|
+
includeFullPageSize: Boolean(snapshot.settings.pageId),
|
|
127928
|
+
environment: { ...env, environmentId: baseEyes.test.environment.environmentId },
|
|
127929
|
+
uploadUrl: baseEyes.test.uploadUrl,
|
|
127930
|
+
stitchingServiceUrl: baseEyes.test.stitchingServiceUrl
|
|
127931
|
+
},
|
|
127932
|
+
signal,
|
|
127933
|
+
logger: environmentLogger
|
|
127934
|
+
});
|
|
127935
|
+
const checkSettings = getBaseCheckSettings({
|
|
127936
|
+
calculatedRegions: selectors.calculate.map((_, index) => {
|
|
127937
|
+
var _a4;
|
|
127938
|
+
return {
|
|
127939
|
+
regions: (_a4 = selectorRegions === null || selectorRegions === void 0 ? void 0 : selectorRegions[index]) !== null && _a4 !== void 0 ? _a4 : []
|
|
127940
|
+
};
|
|
127941
|
+
})
|
|
127942
|
+
});
|
|
127943
|
+
checkSettings.renderId = renderId;
|
|
127944
|
+
target3.source = snapshot.url;
|
|
127945
|
+
target3.name = snapshot.title;
|
|
127946
|
+
return { target: target3, settings: checkSettings };
|
|
127947
|
+
};
|
|
127948
|
+
const { target: baseTarget, settings: baseSettings } = await renderForCheck(environment);
|
|
127582
127949
|
if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
|
|
127583
127950
|
environmentLogger.warn('Command "check" was aborted after rendering');
|
|
127584
127951
|
throw new abort_error_1.AbortError('Command "check" was aborted after rendering');
|
|
127585
127952
|
} else if (!baseEyes.running) {
|
|
127586
|
-
environmentLogger.warn(`Render on environment with id "${(
|
|
127587
|
-
throw new abort_error_1.AbortError(`Render on environment with id "${(
|
|
127953
|
+
environmentLogger.warn(`Render on environment with id "${(_e = baseEyes.test.environment) === null || _e === void 0 ? void 0 : _e.environmentId}" was aborted during one of the previous steps`);
|
|
127954
|
+
throw new abort_error_1.AbortError(`Render on environment with id "${(_f = baseEyes.test.environment) === null || _f === void 0 ? void 0 : _f.environmentId}" was aborted during one of the previous steps`);
|
|
127588
127955
|
}
|
|
127589
127956
|
if (settings.assumesMutability) {
|
|
127590
127957
|
void eyes2.core.logEvent({
|
|
@@ -127602,7 +127969,7 @@ var require_check3 = __commonJS({
|
|
|
127602
127969
|
userTestId: baseEyes.test.userTestId,
|
|
127603
127970
|
appId: baseEyes.test.appId,
|
|
127604
127971
|
baselineId: baseEyes.test.baselineId,
|
|
127605
|
-
environmentId: (
|
|
127972
|
+
environmentId: (_g = baseEyes.test.environment) === null || _g === void 0 ? void 0 : _g.environmentId
|
|
127606
127973
|
},
|
|
127607
127974
|
isNew: baseEyes.test.isNew,
|
|
127608
127975
|
resultsUrl: baseEyes.test.resultsUrl
|
|
@@ -127617,13 +127984,29 @@ var require_check3 = __commonJS({
|
|
|
127617
127984
|
} catch (err) {
|
|
127618
127985
|
logger.log("Failed to log invalid check settings", err);
|
|
127619
127986
|
}
|
|
127620
|
-
await baseEyes.check({
|
|
127987
|
+
const checkResult = await baseEyes.check({
|
|
127621
127988
|
target: { ...baseTarget, isTransformed: true },
|
|
127622
127989
|
settings: baseSettings,
|
|
127623
127990
|
logger: environmentLogger
|
|
127624
127991
|
});
|
|
127992
|
+
if (!checkResult.asExpected && baseEyes.test.shouldRetryWithOldInfra) {
|
|
127993
|
+
const oldInfraEnvironment = (0, to_old_infra_environment_1.toOldInfraEnvironment)(environment);
|
|
127994
|
+
if (oldInfraEnvironment) {
|
|
127995
|
+
try {
|
|
127996
|
+
const { target: target3, settings: settings2 } = await renderForCheck(oldInfraEnvironment);
|
|
127997
|
+
settings2.oldInfraRetry = true;
|
|
127998
|
+
await baseEyes.check({
|
|
127999
|
+
target: { ...target3, isTransformed: true },
|
|
128000
|
+
settings: settings2,
|
|
128001
|
+
logger: environmentLogger
|
|
128002
|
+
});
|
|
128003
|
+
} catch (error) {
|
|
128004
|
+
environmentLogger.warn("Old-infra retry failed; keeping the primary check result", error);
|
|
128005
|
+
}
|
|
128006
|
+
}
|
|
128007
|
+
}
|
|
127625
128008
|
} catch (error) {
|
|
127626
|
-
environmentLogger.error(`Render on environment with id "${(
|
|
128009
|
+
environmentLogger.error(`Render on environment with id "${(_h = baseEyes.test.environment) === null || _h === void 0 ? void 0 : _h.environmentId}" failed due to an error`, error);
|
|
127627
128010
|
if (baseEyes.running && !(signal === null || signal === void 0 ? void 0 : signal.aborted))
|
|
127628
128011
|
await baseEyes.abort({ logger: environmentLogger, settings: { reason: error } });
|
|
127629
128012
|
}
|
|
@@ -128758,8 +129141,8 @@ var require_check4 = __commonJS({
|
|
|
128758
129141
|
function makeCheck({ type: defaultType = "classic", eyes: eyes2, target: defaultTarget, spec: spec2, logger: mainLogger }) {
|
|
128759
129142
|
let stepIndex = 0;
|
|
128760
129143
|
return async function check({ type = defaultType, target = defaultTarget, settings, config, logger = mainLogger } = {}) {
|
|
128761
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
128762
|
-
var
|
|
129144
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
129145
|
+
var _t, _u, _v, _w, _x;
|
|
128763
129146
|
logger = logger.extend(mainLogger, { tags: [`check-${type}-${utils2.general.shortid()}`] });
|
|
128764
129147
|
settings = { ...config === null || config === void 0 ? void 0 : config.screenshot, ...config === null || config === void 0 ? void 0 : config.check, ...settings };
|
|
128765
129148
|
(_a = settings.fully) !== null && _a !== void 0 ? _a : settings.fully = !settings.region && (!settings.frames || settings.frames.length === 0);
|
|
@@ -128767,27 +129150,27 @@ var require_check4 = __commonJS({
|
|
|
128767
129150
|
(_c = settings.hideScrollbars) !== null && _c !== void 0 ? _c : settings.hideScrollbars = true;
|
|
128768
129151
|
(_d = settings.hideCaret) !== null && _d !== void 0 ? _d : settings.hideCaret = true;
|
|
128769
129152
|
settings.overlap = { top: 10, bottom: 50, ...settings === null || settings === void 0 ? void 0 : settings.overlap };
|
|
128770
|
-
(_e = settings.matchLevel) !== null && _e !== void 0 ? _e : settings.matchLevel = "Strict";
|
|
128771
|
-
(
|
|
128772
|
-
(
|
|
128773
|
-
(
|
|
128774
|
-
(
|
|
128775
|
-
(
|
|
129153
|
+
(_e = settings.matchLevel) !== null && _e !== void 0 ? _e : settings.matchLevel = (_f = eyes2.test.account.defaultMatchLevel) !== null && _f !== void 0 ? _f : "Strict";
|
|
129154
|
+
(_g = settings.ignoreCaret) !== null && _g !== void 0 ? _g : settings.ignoreCaret = true;
|
|
129155
|
+
(_h = settings.sendDom) !== null && _h !== void 0 ? _h : settings.sendDom = eyes2.test.account.rcaEnabled || settings.matchLevel === "Layout" || settings.matchLevel === "Dynamic" || settings.enablePatterns || settings.useDom || !utils2.types.isEmpty(settings.dynamicRegions) || !utils2.types.isEmpty(settings.layoutRegions) || !utils2.types.isEmpty(settings.accessibilitySettings);
|
|
129156
|
+
(_j = settings.autProxy) !== null && _j !== void 0 ? _j : settings.autProxy = eyes2.test.eyesServer.proxy;
|
|
129157
|
+
(_k = settings.useDom) !== null && _k !== void 0 ? _k : settings.useDom = settings.sendDom;
|
|
129158
|
+
(_l = (_t = settings).matchTimeout) !== null && _l !== void 0 ? _l : _t.matchTimeout = 0;
|
|
128776
129159
|
settings.lazyLoad = settings.lazyLoad === true ? {} : settings.lazyLoad;
|
|
128777
129160
|
if (settings.lazyLoad) {
|
|
128778
|
-
(
|
|
128779
|
-
(
|
|
128780
|
-
(
|
|
129161
|
+
(_m = (_u = settings.lazyLoad).scrollLength) !== null && _m !== void 0 ? _m : _u.scrollLength = defaults_1.DEFAULT_LAZY_LOAD.scrollLength;
|
|
129162
|
+
(_o = (_v = settings.lazyLoad).waitingTime) !== null && _o !== void 0 ? _o : _v.waitingTime = defaults_1.DEFAULT_LAZY_LOAD.waitingTime;
|
|
129163
|
+
(_p = (_w = settings.lazyLoad).maxAmountToScroll) !== null && _p !== void 0 ? _p : _w.maxAmountToScroll = defaults_1.DEFAULT_LAZY_LOAD.maxAmountToScroll;
|
|
128781
129164
|
}
|
|
128782
129165
|
settings.stepIndex = stepIndex++;
|
|
128783
|
-
(
|
|
129166
|
+
(_q = settings.waitBetweenStitches) !== null && _q !== void 0 ? _q : settings.waitBetweenStitches = utils2.types.isObject(settings.lazyLoad) ? settings.lazyLoad.waitingTime : defaults_1.DEFAULT_WAIT_BEFORE_CAPTURE;
|
|
128784
129167
|
if (settings.mobileOptions) {
|
|
128785
|
-
(
|
|
129168
|
+
(_r = (_x = settings.mobileOptions).keepNavigationBar) !== null && _r !== void 0 ? _r : _x.keepNavigationBar = false;
|
|
128786
129169
|
}
|
|
128787
129170
|
if (settings.matchLevel === "Content") {
|
|
128788
129171
|
logger.console.log(chalk_1.default.yellow(lang.matchLevelContentDeprecatedWarning));
|
|
128789
129172
|
}
|
|
128790
|
-
if ((
|
|
129173
|
+
if ((_s = settings.usedDeprecations) === null || _s === void 0 ? void 0 : _s.length) {
|
|
128791
129174
|
void eyes2.core.logEvent({
|
|
128792
129175
|
settings: {
|
|
128793
129176
|
...eyes2.test.eyesServer,
|
|
@@ -129811,7 +130194,7 @@ var require_open_eyes4 = __commonJS({
|
|
|
129811
130194
|
logger
|
|
129812
130195
|
});
|
|
129813
130196
|
if (settings.disableBrokerUrlCache && driver) {
|
|
129814
|
-
await core.
|
|
130197
|
+
await core.disableNMLClientCache(driver);
|
|
129815
130198
|
}
|
|
129816
130199
|
const getTypedEyes = (0, get_typed_eyes_1.makeGetTypedEyes)({
|
|
129817
130200
|
type,
|
|
@@ -130496,7 +130879,7 @@ var require_package3 = __commonJS({
|
|
|
130496
130879
|
"../core/package.json"(exports, module) {
|
|
130497
130880
|
module.exports = {
|
|
130498
130881
|
name: "@applitools/core",
|
|
130499
|
-
version: "4.
|
|
130882
|
+
version: "4.64.0",
|
|
130500
130883
|
homepage: "https://applitools.com",
|
|
130501
130884
|
bugs: {
|
|
130502
130885
|
url: "https://github.com/applitools/eyes.sdk.javascript1/issues"
|
|
@@ -132047,7 +132430,7 @@ var require_package4 = __commonJS({
|
|
|
132047
132430
|
"../eyes/package.json"(exports, module) {
|
|
132048
132431
|
module.exports = {
|
|
132049
132432
|
name: "@applitools/eyes",
|
|
132050
|
-
version: "1.
|
|
132433
|
+
version: "1.43.0",
|
|
132051
132434
|
keywords: [
|
|
132052
132435
|
"applitools",
|
|
132053
132436
|
"eyes",
|
|
@@ -133663,7 +134046,7 @@ var require_package5 = __commonJS({
|
|
|
133663
134046
|
"package.json"(exports, module) {
|
|
133664
134047
|
module.exports = {
|
|
133665
134048
|
name: "@applitools/eyes-browser",
|
|
133666
|
-
version: "1.6.
|
|
134049
|
+
version: "1.6.19",
|
|
133667
134050
|
type: "module",
|
|
133668
134051
|
keywords: [
|
|
133669
134052
|
"applitools",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/eyes-browser",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.19",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"applitools",
|
|
@@ -51,10 +51,10 @@
|
|
|
51
51
|
"test": "run playwright test"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@applitools/eyes": "1.
|
|
54
|
+
"@applitools/eyes": "1.43.0"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@applitools/test-server": "1.4.
|
|
57
|
+
"@applitools/test-server": "1.4.4",
|
|
58
58
|
"@playwright/test": "1.55.1",
|
|
59
59
|
"@types/node": "^12.20.55",
|
|
60
60
|
"@types/path-browserify": "^1.0.1",
|
|
@@ -42,6 +42,7 @@ export type TestResults = {
|
|
|
42
42
|
proxy?: ProxySettings;
|
|
43
43
|
};
|
|
44
44
|
readonly keepIfDuplicate?: boolean;
|
|
45
|
+
readonly isAutoAcceptedInfraUpdate?: boolean;
|
|
45
46
|
};
|
|
46
47
|
export declare class TestResultsData implements Required<TestResults> {
|
|
47
48
|
private _core?;
|
|
@@ -173,6 +174,8 @@ export declare class TestResultsData implements Required<TestResults> {
|
|
|
173
174
|
setUrl(_url: string): void;
|
|
174
175
|
get server(): Core.EyesServerSettings;
|
|
175
176
|
get keepIfDuplicate(): boolean;
|
|
177
|
+
get isAutoAcceptedInfraUpdate(): boolean;
|
|
178
|
+
getIsAutoAcceptedInfraUpdate(): boolean;
|
|
176
179
|
isPassed(): boolean;
|
|
177
180
|
delete(): Promise<void>;
|
|
178
181
|
/** @deprecated */
|