@applitools/eyes-browser 1.5.4 → 1.5.5
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 +58 -0
- package/dist/index.js +34 -102
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,63 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.5.5](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.5.4...js/eyes-browser@1.5.5) (2025-09-09)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Dependencies
|
|
7
|
+
|
|
8
|
+
* @applitools/utils bumped to 1.12.0
|
|
9
|
+
#### Features
|
|
10
|
+
|
|
11
|
+
* enable canvas with webgl for autonomous | FLD 3515 ([#3197](https://github.com/Applitools-Dev/sdk/issues/3197)) ([23f22e5](https://github.com/Applitools-Dev/sdk/commit/23f22e517d52dc70f24093dfb21e072b9aa9fb60))
|
|
12
|
+
* @applitools/core bumped to 4.46.0
|
|
13
|
+
#### Features
|
|
14
|
+
|
|
15
|
+
* enable canvas with webgl for autonomous | FLD 3515 ([#3197](https://github.com/Applitools-Dev/sdk/issues/3197)) ([23f22e5](https://github.com/Applitools-Dev/sdk/commit/23f22e517d52dc70f24093dfb21e072b9aa9fb60))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
#### Bug Fixes
|
|
19
|
+
|
|
20
|
+
* update offline test fixtures to use Google Fonts v12 ([#3215](https://github.com/Applitools-Dev/sdk/issues/3215)) ([ba8ef0c](https://github.com/Applitools-Dev/sdk/commit/ba8ef0c3b11a7f5e9e59a58f29fd5d60760a68ee))
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
* @applitools/logger bumped to 2.2.3
|
|
25
|
+
|
|
26
|
+
* @applitools/dom-snapshot bumped to 4.13.6
|
|
27
|
+
|
|
28
|
+
* @applitools/socket bumped to 1.3.4
|
|
29
|
+
|
|
30
|
+
* @applitools/req bumped to 1.8.3
|
|
31
|
+
|
|
32
|
+
* @applitools/image bumped to 1.2.3
|
|
33
|
+
|
|
34
|
+
* @applitools/dom-capture bumped to 11.6.4
|
|
35
|
+
|
|
36
|
+
* @applitools/driver bumped to 1.23.4
|
|
37
|
+
|
|
38
|
+
* @applitools/spec-driver-webdriver bumped to 1.4.4
|
|
39
|
+
|
|
40
|
+
* @applitools/spec-driver-selenium bumped to 1.7.4
|
|
41
|
+
|
|
42
|
+
* @applitools/spec-driver-puppeteer bumped to 1.6.4
|
|
43
|
+
|
|
44
|
+
* @applitools/screenshoter bumped to 3.12.4
|
|
45
|
+
|
|
46
|
+
* @applitools/nml-client bumped to 1.11.4
|
|
47
|
+
|
|
48
|
+
* @applitools/tunnel-client bumped to 1.11.1
|
|
49
|
+
|
|
50
|
+
* @applitools/ufg-client bumped to 1.17.3
|
|
51
|
+
|
|
52
|
+
* @applitools/core-base bumped to 1.27.3
|
|
53
|
+
|
|
54
|
+
* @applitools/ec-client bumped to 1.12.6
|
|
55
|
+
|
|
56
|
+
* @applitools/eyes bumped to 1.36.5
|
|
57
|
+
|
|
58
|
+
* @applitools/test-server bumped to 1.3.2
|
|
59
|
+
|
|
60
|
+
|
|
3
61
|
## [1.5.4](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.5.3...js/eyes-browser@1.5.4) (2025-09-04)
|
|
4
62
|
|
|
5
63
|
|
package/dist/index.js
CHANGED
|
@@ -46482,10 +46482,10 @@ var require_lib2 = __commonJS({
|
|
|
46482
46482
|
EFilterType2[EFilterType2["Paeth"] = 4] = "Paeth";
|
|
46483
46483
|
})(EFilterType = exports.EFilterType || (exports.EFilterType = {}));
|
|
46484
46484
|
function createImage(option) {
|
|
46485
|
-
return new
|
|
46485
|
+
return new Image2(option);
|
|
46486
46486
|
}
|
|
46487
46487
|
exports.createImage = createImage;
|
|
46488
|
-
var
|
|
46488
|
+
var Image2 = class extends stream.Duplex {
|
|
46489
46489
|
constructor(option = {}) {
|
|
46490
46490
|
super();
|
|
46491
46491
|
this.width = option.width || 0;
|
|
@@ -46574,7 +46574,7 @@ var require_lib2 = __commonJS({
|
|
|
46574
46574
|
}
|
|
46575
46575
|
}
|
|
46576
46576
|
};
|
|
46577
|
-
exports.Image =
|
|
46577
|
+
exports.Image = Image2;
|
|
46578
46578
|
}
|
|
46579
46579
|
});
|
|
46580
46580
|
|
|
@@ -58921,7 +58921,7 @@ ${l2}`}`, { bundledCss: i2, unfetchedResources: u2 };
|
|
|
58921
58921
|
return d4 && (N3.shadowRoot = d4), N3;
|
|
58922
58922
|
}
|
|
58923
58923
|
}(t4);
|
|
58924
|
-
d2(i2.doCaptureDoc), l2(i2.waitForImages), await Promise.all(f2), d2(i2.waitForImages), N2.version = "1.3.0", N2.scriptVersion = "11.6.
|
|
58924
|
+
d2(i2.doCaptureDoc), l2(i2.waitForImages), await Promise.all(f2), d2(i2.waitForImages), N2.version = "1.3.0", N2.scriptVersion = "11.6.4";
|
|
58925
58925
|
const S2 = h2.length ? `${h2.join("\n")}
|
|
58926
58926
|
` : "", A2 = m2.size ? `${Array.from(m2).join("\n")}
|
|
58927
58927
|
` : "", _2 = JSON.stringify({ separator: y2, cssStartToken: g2, cssEndToken: g2, iframeStartToken: `"${p2}`, iframeEndToken: `${p2}"` });
|
|
@@ -68109,7 +68109,7 @@ creating temp style for access.`), r2 = Of(e4);
|
|
|
68109
68109
|
function R2(e5) {
|
|
68110
68110
|
return t5.defaultView && t5.defaultView.frameElement && t5.defaultView.frameElement.getAttribute(e5);
|
|
68111
68111
|
}
|
|
68112
|
-
}(t4).then((e4) => (h2("processPage end"), e4.scriptVersion = "4.13.
|
|
68112
|
+
}(t4).then((e4) => (h2("processPage end"), e4.scriptVersion = "4.13.6", e4));
|
|
68113
68113
|
};
|
|
68114
68114
|
window[bg] = window[bg] || {};
|
|
68115
68115
|
const wg = gg(kg, window[bg], yg);
|
|
@@ -90682,96 +90682,6 @@ If you continue to experience issues, ensure that your SDK is updated to the lat
|
|
|
90682
90682
|
}
|
|
90683
90683
|
});
|
|
90684
90684
|
|
|
90685
|
-
// ../core/dist/utils/capture-canvas-image-always.js
|
|
90686
|
-
var require_capture_canvas_image_always = __commonJS({
|
|
90687
|
-
"../core/dist/utils/capture-canvas-image-always.js"(exports) {
|
|
90688
|
-
"use strict";
|
|
90689
|
-
init_process();
|
|
90690
|
-
init_setImmediate();
|
|
90691
|
-
init_buffer();
|
|
90692
|
-
init_setInterval();
|
|
90693
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
90694
|
-
exports.captureImagesFunc = void 0;
|
|
90695
|
-
function captureImagesFunc() {
|
|
90696
|
-
async function isNonBlackImage(dataUrl) {
|
|
90697
|
-
const img = new Image();
|
|
90698
|
-
img.src = dataUrl;
|
|
90699
|
-
await new Promise((resolve, reject) => {
|
|
90700
|
-
img.onload = () => resolve();
|
|
90701
|
-
img.onerror = () => reject();
|
|
90702
|
-
});
|
|
90703
|
-
const canvas = document.createElement("canvas");
|
|
90704
|
-
canvas.width = img.width;
|
|
90705
|
-
canvas.height = img.height;
|
|
90706
|
-
const ctx = canvas.getContext("2d");
|
|
90707
|
-
if (!ctx)
|
|
90708
|
-
return false;
|
|
90709
|
-
ctx.drawImage(img, 0, 0);
|
|
90710
|
-
const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height).data;
|
|
90711
|
-
for (let i = 0; i < imageData.length; i += 4) {
|
|
90712
|
-
if (imageData[i] !== 0 || imageData[i + 1] !== 0 || imageData[i + 2] !== 0) {
|
|
90713
|
-
return true;
|
|
90714
|
-
}
|
|
90715
|
-
}
|
|
90716
|
-
return false;
|
|
90717
|
-
}
|
|
90718
|
-
function processWebGLCanvases(win) {
|
|
90719
|
-
Array.from(win.document.getElementsByTagName("canvas")).forEach((canvas) => {
|
|
90720
|
-
const gl = canvas.getContext("webgl") || canvas.getContext("webgl2");
|
|
90721
|
-
if (!gl)
|
|
90722
|
-
return;
|
|
90723
|
-
const attrs = gl.getContextAttributes();
|
|
90724
|
-
if (!attrs)
|
|
90725
|
-
return;
|
|
90726
|
-
const { preserveDrawingBuffer } = attrs;
|
|
90727
|
-
if (!preserveDrawingBuffer && canvas.width > 0 && canvas.height > 0) {
|
|
90728
|
-
const dataUrl = canvas.toDataURL("image/png");
|
|
90729
|
-
if ((canvas.dataset.dataUrl || "") === dataUrl)
|
|
90730
|
-
return;
|
|
90731
|
-
isNonBlackImage(dataUrl).then((result) => {
|
|
90732
|
-
if (result) {
|
|
90733
|
-
canvas.dataset.dataUrl = dataUrl;
|
|
90734
|
-
}
|
|
90735
|
-
});
|
|
90736
|
-
}
|
|
90737
|
-
});
|
|
90738
|
-
}
|
|
90739
|
-
function patchRequestAnimationFrame(win) {
|
|
90740
|
-
var _a;
|
|
90741
|
-
if (win.__rafPatched) {
|
|
90742
|
-
return;
|
|
90743
|
-
}
|
|
90744
|
-
const HTMLCanvasElementCtor = win.HTMLCanvasElement || win.constructor && win.constructor.HTMLCanvasElement || win.document && ((_a = win.document.defaultView) === null || _a === void 0 ? void 0 : _a.HTMLCanvasElement);
|
|
90745
|
-
const origGetContext = HTMLCanvasElementCtor && HTMLCanvasElementCtor.prototype.getContext;
|
|
90746
|
-
if (!origGetContext) {
|
|
90747
|
-
return;
|
|
90748
|
-
}
|
|
90749
|
-
const originalRAF = win.requestAnimationFrame;
|
|
90750
|
-
win.requestAnimationFrame = function(callback) {
|
|
90751
|
-
const rafId = originalRAF.call(this, (time) => {
|
|
90752
|
-
callback.call(win, time);
|
|
90753
|
-
processWebGLCanvases(win);
|
|
90754
|
-
});
|
|
90755
|
-
return rafId;
|
|
90756
|
-
};
|
|
90757
|
-
win.__rafPatched = true;
|
|
90758
|
-
}
|
|
90759
|
-
function takeCanvasScreenshots(win = window) {
|
|
90760
|
-
if (win.__rafPatched) {
|
|
90761
|
-
return;
|
|
90762
|
-
}
|
|
90763
|
-
try {
|
|
90764
|
-
patchRequestAnimationFrame(win);
|
|
90765
|
-
} catch (e) {
|
|
90766
|
-
}
|
|
90767
|
-
}
|
|
90768
|
-
Object.assign(window, { takeCanvasScreenshots });
|
|
90769
|
-
takeCanvasScreenshots();
|
|
90770
|
-
}
|
|
90771
|
-
exports.captureImagesFunc = captureImagesFunc;
|
|
90772
|
-
}
|
|
90773
|
-
});
|
|
90774
|
-
|
|
90775
90685
|
// ../core/dist/ufg/utils/register-default-scripts.js
|
|
90776
90686
|
var require_register_default_scripts = __commonJS({
|
|
90777
90687
|
"../core/dist/ufg/utils/register-default-scripts.js"(exports) {
|
|
@@ -90781,24 +90691,44 @@ var require_register_default_scripts = __commonJS({
|
|
|
90781
90691
|
init_buffer();
|
|
90782
90692
|
init_setInterval();
|
|
90783
90693
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
90784
|
-
exports.registerDefaultScripts = void 0;
|
|
90785
|
-
var
|
|
90694
|
+
exports.registerDefaultScripts = exports.makeRegisterOnNewDocumentScripts = void 0;
|
|
90695
|
+
var driver_1 = require_dist4();
|
|
90786
90696
|
var utils_1 = require_browser3();
|
|
90787
90697
|
function wrapFunctionAsIIFE(fn) {
|
|
90788
90698
|
return `(()=>{ ${fn.toString()} return ${fn.name}.call()})()`;
|
|
90789
90699
|
}
|
|
90790
|
-
|
|
90700
|
+
function makeRegisterOnNewDocumentScripts({ spec, logger }) {
|
|
90701
|
+
return async function registerOnNewDocumentScripts({ target, enableScripts }) {
|
|
90702
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
90703
|
+
return registerDefaultScripts({ driver, logger, enableScripts });
|
|
90704
|
+
};
|
|
90705
|
+
}
|
|
90706
|
+
exports.makeRegisterOnNewDocumentScripts = makeRegisterOnNewDocumentScripts;
|
|
90707
|
+
async function registerDefaultScripts({ driver, enableScripts, logger }) {
|
|
90791
90708
|
if (!driver)
|
|
90792
90709
|
return [];
|
|
90793
90710
|
try {
|
|
90794
|
-
const captureImagesScript = wrapFunctionAsIIFE(
|
|
90711
|
+
const captureImagesScript = wrapFunctionAsIIFE(utils_1.snippets.captureImagesFunc);
|
|
90795
90712
|
const scripts = [];
|
|
90796
|
-
if (utils_1.general.getEnvValue("CAPTURE_CANVAS_WITH_WEBGL", "boolean") === true) {
|
|
90713
|
+
if (utils_1.general.getEnvValue("CAPTURE_CANVAS_WITH_WEBGL", "boolean") === true || (enableScripts === null || enableScripts === void 0 ? void 0 : enableScripts.captureImagesScript) === true) {
|
|
90797
90714
|
scripts.push({ name: "captureImagesScript", code: captureImagesScript });
|
|
90798
90715
|
}
|
|
90716
|
+
if (utils_1.general.getEnvValue("CAPTURE_CANVAS_WITH_PRESERVE_DRAWING_BUFFER", "boolean") === true || (enableScripts === null || enableScripts === void 0 ? void 0 : enableScripts.enableCanvasPreserveDrawingBufferScript) === true) {
|
|
90717
|
+
scripts.push({
|
|
90718
|
+
name: "enableCanvasPreserveDrawingBufferScript",
|
|
90719
|
+
code: wrapFunctionAsIIFE(utils_1.snippets.enableCanvasPreserveDrawingBuffer)
|
|
90720
|
+
});
|
|
90721
|
+
}
|
|
90722
|
+
if (utils_1.general.getEnvValue("CAPTURE_CANVAS_WITH_PRESERVE_DRAWING_BUFFER", "boolean") === false || (enableScripts === null || enableScripts === void 0 ? void 0 : enableScripts.disableCanvasPreserveDrawingBufferScript) === true) {
|
|
90723
|
+
scripts.push({
|
|
90724
|
+
name: "disableCanvasPreserveDrawingBufferScript",
|
|
90725
|
+
code: wrapFunctionAsIIFE(utils_1.snippets.disableCanvasPreserveDrawingBuffer)
|
|
90726
|
+
});
|
|
90727
|
+
}
|
|
90799
90728
|
await Promise.all(scripts.map(async (script) => {
|
|
90800
90729
|
logger.info("running user script", script.name);
|
|
90801
90730
|
await driver.addScriptToEvaluateOnNewDocument(script.code);
|
|
90731
|
+
logger.info("user script registered successfully", script.name);
|
|
90802
90732
|
}));
|
|
90803
90733
|
return scripts;
|
|
90804
90734
|
} catch (error) {
|
|
@@ -92668,7 +92598,7 @@ var require_package2 = __commonJS({
|
|
|
92668
92598
|
"../core/package.json"(exports, module) {
|
|
92669
92599
|
module.exports = {
|
|
92670
92600
|
name: "@applitools/core",
|
|
92671
|
-
version: "4.
|
|
92601
|
+
version: "4.46.0",
|
|
92672
92602
|
homepage: "https://applitools.com",
|
|
92673
92603
|
bugs: {
|
|
92674
92604
|
url: "https://github.com/applitools/eyes.sdk.javascript1/issues"
|
|
@@ -96446,12 +96376,14 @@ var require_core5 = __commonJS({
|
|
|
96446
96376
|
var create_render_results_1 = require_create_render_results();
|
|
96447
96377
|
var open_eyes_1 = require_open_eyes5();
|
|
96448
96378
|
var open_check_and_close_1 = require_open_check_and_close2();
|
|
96379
|
+
var register_default_scripts_1 = require_register_default_scripts();
|
|
96449
96380
|
function makeAutonomousCore({ spec, clients, base: defaultBase, asyncCache, agentId = "core-autonomous", logger: defaultLogger } = {}) {
|
|
96450
96381
|
const logger = (0, logger_1.makeLogger)({ logger: defaultLogger, format: { label: "core-autonomous" } });
|
|
96451
96382
|
const core = (0, core_1.makeCore)({ spec, clients, base: defaultBase, asyncCache, agentId, logger });
|
|
96452
96383
|
return {
|
|
96453
96384
|
type: "autonomous",
|
|
96454
96385
|
takeSnapshots: spec && (0, take_snapshots_1.makeTakeSnapshots)({ core, spec, logger }),
|
|
96386
|
+
startSDKHook: spec && (0, register_default_scripts_1.makeRegisterOnNewDocumentScripts)({ spec, logger }),
|
|
96455
96387
|
createRenderTarget: (0, create_render_target_1.makeCreateRenderTarget)({ core, logger }),
|
|
96456
96388
|
startRenders: (0, start_renders_1.makeStartRenders)({ core, logger }),
|
|
96457
96389
|
getRenderResults: (0, get_render_results_1.makeGetRenderResults)({ core, logger }),
|
|
@@ -97028,7 +96960,7 @@ var require_package3 = __commonJS({
|
|
|
97028
96960
|
"../eyes/package.json"(exports, module) {
|
|
97029
96961
|
module.exports = {
|
|
97030
96962
|
name: "@applitools/eyes",
|
|
97031
|
-
version: "1.36.
|
|
96963
|
+
version: "1.36.5",
|
|
97032
96964
|
keywords: [
|
|
97033
96965
|
"applitools",
|
|
97034
96966
|
"eyes",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/eyes-browser",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.5",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"applitools",
|
|
6
6
|
"browser",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"test": "run --top-level mocha './test/**/*.spec.ts'"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@applitools/eyes": "1.36.
|
|
51
|
+
"@applitools/eyes": "1.36.5"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@types/node": "^12.20.55",
|