@applitools/eyes-browser 1.6.10 → 1.6.12

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/dist/index.js CHANGED
@@ -15112,6 +15112,24 @@ var require_Configuration = __commonJS({
15112
15112
  this[key] = value;
15113
15113
  }
15114
15114
  }
15115
+ /** @internal */
15116
+ get skipRootHtmlResource() {
15117
+ return this._config.skipRootHtmlResource;
15118
+ }
15119
+ /** @internal */
15120
+ set skipRootHtmlResource(skipRootHtmlResource) {
15121
+ utils2.guard.isBoolean(skipRootHtmlResource, { name: "skipRootHtmlResource" });
15122
+ this._config.skipRootHtmlResource = skipRootHtmlResource;
15123
+ }
15124
+ /** @internal */
15125
+ getSkipRootHtmlResource() {
15126
+ return this.skipRootHtmlResource;
15127
+ }
15128
+ /** @internal */
15129
+ setSkipRootHtmlResource(skipRootHtmlResource) {
15130
+ this.skipRootHtmlResource = skipRootHtmlResource;
15131
+ return this;
15132
+ }
15115
15133
  get accessibilityValidation() {
15116
15134
  return this.defaultMatchSettings.accessibilitySettings;
15117
15135
  }
@@ -16262,7 +16280,8 @@ var require_Configuration = __commonJS({
16262
16280
  layoutRegions: (_o = this.defaultMatchSettings) === null || _o === void 0 ? void 0 : _o.layoutRegions,
16263
16281
  strictRegions: (_p = this.defaultMatchSettings) === null || _p === void 0 ? void 0 : _p.strictRegions,
16264
16282
  floatingRegions: (_q = this.defaultMatchSettings) === null || _q === void 0 ? void 0 : _q.floatingRegions,
16265
- accessibilityRegions: (_r = this.defaultMatchSettings) === null || _r === void 0 ? void 0 : _r.accessibilityRegions
16283
+ accessibilityRegions: (_r = this.defaultMatchSettings) === null || _r === void 0 ? void 0 : _r.accessibilityRegions,
16284
+ skipRootHtmlResource: this.skipRootHtmlResource
16266
16285
  }),
16267
16286
  close: utils2.general.removeUndefinedProps({
16268
16287
  updateBaselineIfDifferent: this.saveFailedTests,
@@ -74535,393 +74554,312 @@ var require_dist3 = __commonJS({
74535
74554
  init_setImmediate();
74536
74555
  init_buffer();
74537
74556
  init_setInterval();
74538
- exports.addElementIds = function(arg) {
74557
+ exports.translateTo = function(arg) {
74539
74558
  var s = function() {
74540
74559
  "use strict";
74541
- function e(e2) {
74542
- return e2 && e2.__esModule && Object.prototype.hasOwnProperty.call(e2, "default") ? e2.default : e2;
74543
- }
74544
- var t = function(e2) {
74545
- var t2 = e2 && e2[0] || null;
74546
- return !t2 || ("isConnected" in window.Node.prototype ? !t2.isConnected : document.documentElement.contains ? !document.documentElement.contains(t2) : !t2.ownerDocument.documentElement.contains(t2));
74547
- }, r = t;
74548
- var n = function(e2) {
74549
- if (!e2.hasAttribute("data-applitools-fallback-selector")) {
74550
- if (r([e2]))
74551
- throw new Error("The element is not connected to the DOM: " + function(e3) {
74552
- var t2 = e3.attributes, r2 = e3.tagName, n2 = e3.children.length, o2 = [].slice.call(t2).map(function(e4) {
74553
- return e4.name + '="' + e4.value + '"';
74554
- }).join(" ");
74555
- return "<" + r2 + " " + o2 + (n2 ? ">" : "/>");
74556
- }(e2));
74557
- e2.setAttribute("data-applitools-fallback-selector", function(e3) {
74558
- var t2 = [];
74559
- for (; e3 && e3.nodeType === Node.ELEMENT_NODE; )
74560
- try {
74561
- var r2, n2 = e3.tagName.toLowerCase(), o2 = [].slice.call((null == (r2 = e3.parentNode) ? void 0 : r2.children) || []).indexOf(e3);
74562
- o2 > -1 && (n2 += ":nth-child(" + (o2 + 1) + ")"), t2.unshift(n2), e3 = e3.parentNode;
74563
- } catch (e4) {
74564
- break;
74565
- }
74566
- return t2.length ? t2.join(" > ") : "html";
74567
- }(e2));
74568
- }
74569
- }, o = t;
74570
- function a(e2, t2) {
74571
- if (o([e2])) {
74572
- var r2 = function(e3) {
74573
- if (null == e3 || !e3.getAttribute)
74574
- return { error: "invalid element: " + JSON.stringify(e3) };
74575
- var t3 = e3.getAttribute("data-applitools-fallback-selector");
74576
- return t3;
74577
- }(e2);
74578
- if (!r2)
74579
- return { error: "Failed to recover from stale element" };
74580
- if (r2.error)
74581
- return r2;
74582
- var l = document.querySelectorAll(r2);
74583
- if (!l || 1 !== l.length)
74584
- return { error: "Failed to recover from stale element - selector found: " + r2 };
74585
- var i = l[0];
74586
- return i.setAttribute("data-applitools-selector", t2), i.setAttribute("data-applitools-recovered", true), a(i, t2);
74587
- }
74588
- n(e2);
74589
- var u = e2.getAttribute("data-applitools-selector"), c = u ? u + " " + t2 : t2;
74590
- return e2.setAttribute("data-applitools-selector", c), '[data-applitools-selector~="' + t2 + '"]';
74560
+ function t(t2) {
74561
+ return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74591
74562
  }
74592
- return e(function(e2) {
74593
- return e2.map(function(e3) {
74594
- var t2 = e3[0], r2 = e3[1];
74595
- return t2.map(function(e4) {
74596
- var t3 = function(e5) {
74597
- var t4 = [{ element: e5, kind: "root" }], r3 = /* @__PURE__ */ new Set([e5]), n2 = e5;
74598
- for (; n2; ) {
74599
- var o2, a2 = n2.getRootNode && n2.getRootNode();
74600
- if (!a2)
74601
- break;
74602
- if (a2.constructor && "ShadowRoot" === a2.constructor.name ? (n2 = a2.host, o2 = "shadow") : (n2 = a2.defaultView ? a2.defaultView.frameElement : null, o2 = "frame"), n2) {
74603
- if (r3.has(n2))
74604
- break;
74605
- r3.add(n2), t4.push({ element: n2, kind: o2 });
74606
- }
74607
- }
74608
- return t4;
74609
- }(e4);
74610
- return t3.map(function(e5) {
74611
- return { selector: a(e5.element, r2), kind: e5.kind };
74612
- });
74613
- });
74614
- });
74563
+ var r = function(t2) {
74564
+ var r2 = void 0 === t2 ? [] : t2, e = r2[0], n = r2[1], o = Object.keys(n).sort(), a = o.reduce(function(t3, r3) {
74565
+ return t3[r3] = { value: e.style.getPropertyValue(r3), important: Boolean(e.style.getPropertyPriority(r3)) }, t3;
74566
+ }, {});
74567
+ return o.forEach(function(t3) {
74568
+ e.style.setProperty(t3, "string" != typeof n[t3] && n[t3] ? n[t3].value : n[t3], n[t3] && n[t3].important ? "important" : "");
74569
+ }), a;
74570
+ };
74571
+ return t(function(t2) {
74572
+ var e = void 0 === t2 ? [] : t2, n = e[0], o = e[1];
74573
+ n = n || document.documentElement;
74574
+ var a = { value: "translate(" + -o.x + "px, " + -o.y + "px)", important: true };
74575
+ return r([n, { transform: a, "-webkit-transform": a }]), o;
74615
74576
  });
74616
74577
  }();
74617
74578
  return s(arg);
74618
74579
  };
74619
- exports.addFallbackSelectorIfNeeded = function(arg) {
74580
+ exports.setElementStyleProperties = function(arg) {
74620
74581
  var s = function() {
74621
74582
  "use strict";
74622
74583
  function t(t2) {
74623
74584
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74624
74585
  }
74625
- var e = function(t2) {
74626
- var e2 = t2 && t2[0] || null;
74627
- return !e2 || ("isConnected" in window.Node.prototype ? !e2.isConnected : document.documentElement.contains ? !document.documentElement.contains(e2) : !e2.ownerDocument.documentElement.contains(e2));
74628
- };
74629
74586
  return t(function(t2) {
74630
- if (!t2.hasAttribute("data-applitools-fallback-selector")) {
74631
- if (e([t2]))
74632
- throw new Error("The element is not connected to the DOM: " + function(t3) {
74633
- var e2 = t3.attributes, n = t3.tagName, o = t3.children.length, r = [].slice.call(e2).map(function(t4) {
74634
- return t4.name + '="' + t4.value + '"';
74635
- }).join(" ");
74636
- return "<" + n + " " + r + (o ? ">" : "/>");
74637
- }(t2));
74638
- t2.setAttribute("data-applitools-fallback-selector", function(t3) {
74639
- var e2 = [];
74640
- for (; t3 && t3.nodeType === Node.ELEMENT_NODE; )
74641
- try {
74642
- var n, o = t3.tagName.toLowerCase(), r = [].slice.call((null == (n = t3.parentNode) ? void 0 : n.children) || []).indexOf(t3);
74643
- r > -1 && (o += ":nth-child(" + (r + 1) + ")"), e2.unshift(o), t3 = t3.parentNode;
74644
- } catch (t4) {
74645
- break;
74646
- }
74647
- return e2.length ? e2.join(" > ") : "html";
74648
- }(t2));
74649
- }
74587
+ var e = void 0 === t2 ? [] : t2, r = e[0], o = e[1], n = Object.keys(o).sort(), u = n.reduce(function(t3, e2) {
74588
+ return t3[e2] = { value: r.style.getPropertyValue(e2), important: Boolean(r.style.getPropertyPriority(e2)) }, t3;
74589
+ }, {});
74590
+ return n.forEach(function(t3) {
74591
+ r.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
74592
+ }), u;
74650
74593
  });
74651
74594
  }();
74652
74595
  return s(arg);
74653
74596
  };
74654
- exports.addPageMarker = function(arg) {
74597
+ exports.setElementAttributes = function(arg) {
74655
74598
  var s = function() {
74656
74599
  "use strict";
74657
74600
  function t(t2) {
74658
74601
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74659
74602
  }
74660
- var e = function(t2) {
74661
- var e2 = void 0 === t2 ? [] : t2, r = e2[0], o = e2[1], n = Object.keys(o).sort(), a = n.reduce(function(t3, e3) {
74662
- return t3[e3] = { value: r.style.getPropertyValue(e3), important: Boolean(r.style.getPropertyPriority(e3)) }, t3;
74663
- }, {});
74664
- return n.forEach(function(t3) {
74665
- r.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
74666
- }), a;
74667
- };
74668
74603
  return t(function(t2) {
74669
- var r = t2[0], o = r.mask, n = r.size, a = void 0 === n ? 1 : n, i = { 1: "rgb(0, 0, 0)", 0: "rgb(255, 255, 255)" }, s2 = a, p = document.createElement("div");
74670
- p.setAttribute("data-applitools-marker", ""), p.style.setProperty("position", "fixed", "important"), p.style.setProperty("top", "0", "important"), p.style.setProperty("left", "0", "important"), p.style.setProperty("box-sizing", "content-box", "important"), p.style.setProperty("padding", s2 + "px", "important"), p.style.setProperty("background", "rgb(128, 128, 128)", "important"), p.style.setProperty("z-index", "2147483647", "important");
74671
- for (var l, y = 0; y < o.length; y += l) {
74672
- for (l = 1; o[y] === o[y + l]; )
74673
- ++l;
74674
- var m = o[y], d = document.createElement("div");
74675
- d.style.setProperty("display", "block", "important"), d.style.setProperty("float", "left", "important"), d.style.setProperty("width", l * a + "px", "important"), d.style.setProperty("height", a + "px", "important"), d.style.setProperty("background", i[m], "important"), p.appendChild(d);
74676
- }
74677
- var u = { value: "none", important: true }, c = e([document.documentElement, { transform: u, "-webkit-transform": u }]), f = e([document.body, { transform: u, "-webkit-transform": u }]);
74678
- return document.documentElement.setAttribute("data-applitools-original-transforms", JSON.stringify(c)), document.body.setAttribute("data-applitools-original-transforms", JSON.stringify(f)), document.body.appendChild(p), { mask: o, size: a, offset: s2 };
74604
+ var e = void 0 === t2 ? [] : t2, r = e[0], u = e[1];
74605
+ return Object.keys(u).reduce(function(t3, e2) {
74606
+ return t3[e2] = r.getAttribute(e2), r.setAttribute(e2, u[e2]), t3;
74607
+ }, {});
74679
74608
  });
74680
74609
  }();
74681
74610
  return s(arg);
74682
74611
  };
74683
- exports.blurElement = function(arg) {
74612
+ exports.scrollTo = function(arg) {
74684
74613
  var s = function() {
74685
74614
  "use strict";
74686
74615
  function t(t2) {
74687
74616
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74688
74617
  }
74618
+ var r = function(t2) {
74619
+ var r2 = void 0 === t2 ? [] : t2, o = r2[0], e = r2[1], l = Object.keys(e).sort(), n = l.reduce(function(t3, r3) {
74620
+ return t3[r3] = { value: o.style.getPropertyValue(r3), important: Boolean(o.style.getPropertyPriority(r3)) }, t3;
74621
+ }, {});
74622
+ return l.forEach(function(t3) {
74623
+ o.style.setProperty(t3, "string" != typeof e[t3] && e[t3] ? e[t3].value : e[t3], e[t3] && e[t3].important ? "important" : "");
74624
+ }), n;
74625
+ };
74689
74626
  return t(function(t2) {
74690
- var e = (void 0 === t2 ? [] : t2)[0] || document.activeElement;
74691
- return e && e.blur(), e;
74627
+ var o = void 0 === t2 ? [] : t2, e = o[0], l = o[1];
74628
+ e = e || document.documentElement;
74629
+ var n = r([e, { "scroll-behavior": { value: "auto", important: true } }]);
74630
+ return e.scrollTo ? e.scrollTo(l.x, l.y) : (e.scrollLeft = l.x, e.scrollTop = l.y), r([e, n]), { x: e.scrollLeft, y: e.scrollTop };
74692
74631
  });
74693
74632
  }();
74694
74633
  return s(arg);
74695
74634
  };
74696
- exports.cleanupElementIds = function(arg) {
74635
+ exports.reloadPage = function(arg) {
74697
74636
  var s = function() {
74698
74637
  "use strict";
74699
74638
  function t(t2) {
74700
74639
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74701
74640
  }
74702
- return t(function(t2) {
74703
- (t2 = t2 && t2[0]) && "function" == typeof t2.forEach && t2.forEach(function(t3) {
74704
- t3.removeAttribute("data-applitools-selector");
74705
- var o = t3;
74706
- if (o.getRootNode)
74707
- try {
74708
- for (; o; ) {
74709
- var e = o.getRootNode();
74710
- if (!e)
74711
- break;
74712
- (o = e.constructor && "ShadowRoot" === e.constructor.name ? e.host : e.defaultView ? e.defaultView.frameElement : null) && o.removeAttribute("data-applitools-selector");
74713
- }
74714
- } catch (t4) {
74715
- }
74716
- });
74641
+ return t(function() {
74642
+ window.location.reload();
74717
74643
  });
74718
74644
  }();
74719
74645
  return s(arg);
74720
74646
  };
74721
- exports.cleanupPageMarker = function(arg) {
74647
+ exports.lazyLoad = function(arg) {
74722
74648
  var s = function() {
74723
74649
  "use strict";
74724
74650
  function t(t2) {
74725
74651
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74726
74652
  }
74727
- var e = function(t2) {
74728
- var e2 = void 0 === t2 ? [] : t2, r = e2[0], o = e2[1], n = Object.keys(o).sort(), a = n.reduce(function(t3, e3) {
74729
- return t3[e3] = { value: r.style.getPropertyValue(e3), important: Boolean(r.style.getPropertyPriority(e3)) }, t3;
74653
+ var o = function(t2) {
74654
+ var o2 = (void 0 === t2 ? [] : t2)[0];
74655
+ return o2 ? { x: o2.scrollLeft, y: o2.scrollTop } : { x: window.scrollX || window.pageXOffset, y: window.scrollY || window.pageYOffset };
74656
+ };
74657
+ var r = function(t2) {
74658
+ var o2 = void 0 === t2 ? [] : t2, r2 = o2[0], n2 = o2[1], e2 = Object.keys(n2).sort(), i2 = e2.reduce(function(t3, o3) {
74659
+ return t3[o3] = { value: r2.style.getPropertyValue(o3), important: Boolean(r2.style.getPropertyPriority(o3)) }, t3;
74730
74660
  }, {});
74731
- return n.forEach(function(t3) {
74732
- r.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
74733
- }), a;
74661
+ return e2.forEach(function(t3) {
74662
+ r2.style.setProperty(t3, "string" != typeof n2[t3] && n2[t3] ? n2[t3].value : n2[t3], n2[t3] && n2[t3].important ? "important" : "");
74663
+ }), i2;
74734
74664
  };
74735
- return t(function() {
74736
- var t2 = document.querySelector("[data-applitools-marker]");
74737
- t2 && document.body.removeChild(t2);
74738
- var r = document.documentElement.getAttribute("data-applitools-original-transforms"), o = document.body.getAttribute("data-applitools-original-transforms");
74739
- r && e([document.documentElement, JSON.parse(r)]), o && e([document.body, JSON.parse(o)]);
74665
+ var n = function(t2) {
74666
+ var o2 = void 0 === t2 ? [] : t2, n2 = o2[0], e2 = o2[1];
74667
+ n2 = n2 || document.documentElement;
74668
+ var i2 = r([n2, { "scroll-behavior": { value: "auto", important: true } }]);
74669
+ return n2.scrollTo ? n2.scrollTo(e2.x, e2.y) : (n2.scrollLeft = e2.x, n2.scrollTop = e2.y), r([n2, i2]), { x: n2.scrollLeft, y: n2.scrollTop };
74670
+ }, e = "__EYES__APPLITOOLS__", i = "lazyLoadResult";
74671
+ window[e] = window[e] || {};
74672
+ var l = o, a = n;
74673
+ return t(function(t2) {
74674
+ var o2 = void 0 === t2 ? [] : t2, r2 = o2[0], n2 = o2[1], s2 = void 0 === n2 ? {} : n2, u = s2.scrollLength, c = s2.waitingTime, w = s2.maxAmountToScroll;
74675
+ try {
74676
+ if (window[e][i]) {
74677
+ var d = window[e][i];
74678
+ return "WIP" !== d.status && delete window[e][i], JSON.stringify(d);
74679
+ }
74680
+ window[e][i] = { status: "WIP" };
74681
+ var v = l(), y = [];
74682
+ y.push({ maxAmountToScroll: w, scrollLength: u, waitingTime: c, startingScrollPositionX: v.x, startingScrollPositionY: v.y });
74683
+ var f = Date.now();
74684
+ return function t3(o3) {
74685
+ var n3 = void 0 === o3 ? {} : o3, l2 = n3.doneScrolling, s3 = n3.previousScrollResult, d2 = void 0 === s3 ? {} : s3;
74686
+ setTimeout(function() {
74687
+ try {
74688
+ if (l2) {
74689
+ var o4 = a([r2, v]), n4 = o4.x, s4 = o4.y;
74690
+ return y.push({ x: n4, y: s4, msSinceStart: Date.now() - f }), void (window[e][i] = { status: "SUCCESS", value: y });
74691
+ }
74692
+ var c2 = a([r2, { x: v.x, y: d2.y + u }]), p = c2.x, S = c2.y;
74693
+ y.push({ x: p, y: S, msSinceStart: Date.now() - f }), t3({ doneScrolling: S === d2.y || S === w, previousScrollResult: { x: p, y: S } });
74694
+ } catch (t4) {
74695
+ window[e][i] = { status: "ERROR", error: t4 };
74696
+ }
74697
+ }, c);
74698
+ }(), JSON.stringify(window[e][i]);
74699
+ } catch (t3) {
74700
+ return window[e][i] = { status: "ERROR", error: t3 }, JSON.stringify(window[e][i]);
74701
+ }
74740
74702
  });
74741
74703
  }();
74742
74704
  return s(arg);
74743
74705
  };
74744
- exports.focusElement = function(arg) {
74706
+ exports.isStaleElement = function(arg) {
74745
74707
  var s = function() {
74746
74708
  "use strict";
74747
- function t(t2) {
74748
- return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74709
+ function n(n2) {
74710
+ return n2 && n2.__esModule && Object.prototype.hasOwnProperty.call(n2, "default") ? n2.default : n2;
74749
74711
  }
74750
- return t(function(t2) {
74751
- var e = (void 0 === t2 ? [] : t2)[0];
74752
- e && e.focus();
74712
+ return n(function(n2) {
74713
+ var e = n2 && n2[0] || null;
74714
+ return !e || ("isConnected" in window.Node.prototype ? !e.isConnected : document.documentElement.contains ? !document.documentElement.contains(e) : !e.ownerDocument.documentElement.contains(e));
74753
74715
  });
74754
74716
  }();
74755
74717
  return s(arg);
74756
74718
  };
74757
- exports.getChildFramesInfo = function(arg) {
74719
+ exports.isEqualElements = function(arg) {
74758
74720
  var s = function() {
74759
74721
  "use strict";
74760
74722
  function t(t2) {
74761
74723
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74762
74724
  }
74763
- return t(function() {
74764
- return function t2(r) {
74765
- r = r || document;
74766
- var e = [];
74767
- r.querySelectorAll("frame, iframe").forEach(function(t3) {
74768
- return e.push([t3, !t3.contentDocument, t3.src]);
74769
- });
74770
- var n = Array.prototype.filter.call(r.querySelectorAll("*"), function(t3) {
74771
- return t3.shadowRoot;
74772
- }).map(function(r2) {
74773
- return t2(r2.shadowRoot);
74774
- });
74775
- return e.concat.apply(e, n);
74776
- }();
74725
+ return t(function(t2) {
74726
+ var r = void 0 === t2 ? [] : t2;
74727
+ return r[0] === r[1];
74777
74728
  });
74778
74729
  }();
74779
74730
  return s(arg);
74780
74731
  };
74781
- exports.getContextInfo = function(arg) {
74732
+ exports.isElementScrollable = function(arg) {
74782
74733
  var s = function() {
74783
74734
  "use strict";
74784
74735
  function t(t2) {
74785
74736
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74786
74737
  }
74787
74738
  var e = function(t2) {
74788
- var e2 = (void 0 === t2 ? [] : t2)[0], n = "", r = e2.ownerDocument;
74789
- if (!r)
74790
- return n;
74791
- for (var o = e2; o !== r; ) {
74792
- var a = Array.prototype.filter.call(o.parentNode.childNodes, function(t3) {
74793
- return t3.tagName === o.tagName;
74794
- }).indexOf(o);
74795
- n = "/" + o.tagName + "[" + (a + 1) + "]" + n, o = o.parentNode;
74796
- }
74797
- return n;
74739
+ var e2 = void 0 === t2 ? [] : t2, o = e2[0], r = e2[1], n = void 0 === r ? [] : r, l = window.getComputedStyle(o);
74740
+ return l ? n.map(function(t3) {
74741
+ return l.getPropertyValue(t3);
74742
+ }) : [];
74798
74743
  };
74799
- return t(function() {
74800
- var t2, n, r;
74801
- try {
74802
- t2 = window.top.document === window.document || "root-context" === window.parent.document["applitools-marker"];
74803
- } catch (e2) {
74804
- t2 = false;
74805
- }
74806
- try {
74807
- n = !window.parent.document === window.document;
74808
- } catch (t3) {
74809
- n = true;
74810
- }
74811
- if (!n)
74812
- try {
74813
- r = e([window.frameElement]);
74814
- } catch (t3) {
74815
- r = null;
74816
- }
74817
- return [document.documentElement, r, t2, n];
74744
+ return t(function(t2) {
74745
+ var o = (void 0 === t2 ? [] : t2)[0], r = e([o, ["overflow-x", "overflow-y", "overflow"]]);
74746
+ return ("scroll" === r[0] || "auto" === r[0] || "hidden" === r[2]) && o.scrollWidth > o.clientWidth || ("scroll" === r[1] || "auto" === r[1] || "hidden" === r[2]) && o.scrollHeight > o.clientHeight;
74818
74747
  });
74819
74748
  }();
74820
74749
  return s(arg);
74821
74750
  };
74822
- exports.getDocumentScrollingElement = function(arg) {
74751
+ exports.getViewport = function(arg) {
74823
74752
  var s = function() {
74824
74753
  "use strict";
74825
- function t(t2) {
74826
- return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74754
+ function e(e2) {
74755
+ return e2 && e2.__esModule && Object.prototype.hasOwnProperty.call(e2, "default") ? e2.default : e2;
74827
74756
  }
74828
- return t(function() {
74829
- var t2 = "HTML", e = document.scrollingElement;
74830
- return e && (t2 = e.tagName), t2.toLowerCase();
74757
+ return e(function() {
74758
+ var e2, n = 0, t = 0;
74759
+ return window.innerHeight ? t = window.innerHeight : document.documentElement && document.documentElement.clientHeight ? t = document.documentElement.clientHeight : document.body && document.body.clientHeight && (t = document.body.clientHeight), window.innerWidth ? n = window.innerWidth : document.documentElement && document.documentElement.clientWidth ? n = document.documentElement.clientWidth : document.body && document.body.clientWidth && (n = document.body.clientWidth), window.screen && window.screen.orientation ? e2 = window.screen.orientation.type.replace(/-primary$/, "") : null != window.orientation && (0 === window.orientation ? e2 = "portrait" : 180 === window.orientation ? e2 = "portrait-secondary" : 90 === window.orientation ? e2 = "landscape" : -90 === window.orientation && (e2 = "landscape-secondary")), { viewportSize: { width: n, height: t }, pixelRatio: window.devicePixelRatio, viewportScale: window.visualViewport && window.visualViewport.scale, orientation: e2 };
74831
74760
  });
74832
74761
  }();
74833
74762
  return s(arg);
74834
74763
  };
74835
- exports.getDocumentSize = function(arg) {
74764
+ exports.getUserAgent = function(arg) {
74836
74765
  var s = function() {
74837
74766
  "use strict";
74838
- function t(t2) {
74839
- return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74767
+ function n(n2) {
74768
+ return n2 && n2.__esModule && Object.prototype.hasOwnProperty.call(n2, "default") ? n2.default : n2;
74840
74769
  }
74841
- return t(function() {
74842
- var t2 = document.documentElement.scrollWidth, e = document.documentElement.scrollHeight, n = document.documentElement.clientHeight, o = document.body.scrollWidth, c = document.body.scrollHeight, u = document.body.clientHeight;
74843
- return { width: Math.max(t2, o), height: Math.max(n, e, u, c) };
74770
+ function t() {
74771
+ return t = Object.assign ? Object.assign.bind() : function(n2) {
74772
+ for (var t2 = 1; t2 < arguments.length; t2++) {
74773
+ var r2 = arguments[t2];
74774
+ for (var e2 in r2)
74775
+ ({}).hasOwnProperty.call(r2, e2) && (n2[e2] = r2[e2]);
74776
+ }
74777
+ return n2;
74778
+ }, t.apply(null, arguments);
74779
+ }
74780
+ var r = "__EYES__APPLITOOLS__", e = "userAgent";
74781
+ return window[r] = window[r] || {}, n(function() {
74782
+ try {
74783
+ if (window[r][e]) {
74784
+ var n2 = window[r][e];
74785
+ return "WIP" !== n2.status && delete window[r][e], JSON.stringify(n2);
74786
+ }
74787
+ return window.navigator.userAgentData ? (window[r][e] = { status: "WIP" }, window.navigator.userAgentData.getHighEntropyValues(["brands", "platform", "platformVersion", "model"]).then(function(n3) {
74788
+ window[r][e] = { status: "SUCCESS", value: t({ legacy: window.navigator.userAgent }, n3) };
74789
+ }).catch(function(n3) {
74790
+ window[r][e] = { status: "ERROR", error: n3.message };
74791
+ })) : window[r][e] = { status: "SUCCESS", value: window.navigator.userAgent }, JSON.stringify(window[r][e]);
74792
+ } catch (n3) {
74793
+ return window[r][e] = { status: "ERROR", error: n3.message }, JSON.stringify(window[r][e]);
74794
+ }
74844
74795
  });
74845
74796
  }();
74846
74797
  return s(arg);
74847
74798
  };
74848
- exports.getElementComputedStyleProperties = function(arg) {
74799
+ exports.getText = function(arg) {
74849
74800
  var s = function() {
74850
74801
  "use strict";
74851
74802
  function t(t2) {
74852
74803
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74853
74804
  }
74854
74805
  return t(function(t2) {
74855
- var e = void 0 === t2 ? [] : t2, r = e[0], n = e[1], u = void 0 === n ? [] : n, o = window.getComputedStyle(r);
74856
- return o ? u.map(function(t3) {
74857
- return o.getPropertyValue(t3);
74858
- }) : [];
74806
+ return t2[0].innerText;
74859
74807
  });
74860
74808
  }();
74861
74809
  return s(arg);
74862
74810
  };
74863
- exports.getElementContentSize = function(arg) {
74811
+ exports.getShadowRoot = function(arg) {
74864
74812
  var s = function() {
74865
74813
  "use strict";
74866
74814
  function t(t2) {
74867
74815
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74868
74816
  }
74869
- var e = function(t2) {
74870
- var e2 = void 0 === t2 ? [] : t2, r2 = e2[0], o = e2[1], n = Object.keys(o).sort(), a = n.reduce(function(t3, e3) {
74871
- return t3[e3] = { value: r2.style.getPropertyValue(e3), important: Boolean(r2.style.getPropertyPriority(e3)) }, t3;
74872
- }, {});
74873
- return n.forEach(function(t3) {
74874
- r2.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
74875
- }), a;
74876
- }, r = function() {
74877
- var t2 = "HTML", e2 = document.scrollingElement;
74878
- return e2 && (t2 = e2.tagName), t2.toLowerCase();
74879
- };
74880
74817
  return t(function(t2) {
74881
- var o, n = (void 0 === t2 ? [] : t2)[0];
74882
- n !== document.documentElement && n.tagName.toLowerCase() !== r() || (o = e([n, { transform: "none" }]));
74883
- var a = { width: n.scrollWidth, height: n.scrollHeight };
74884
- return o && e([n, o]), a;
74818
+ return (void 0 === t2 ? [] : t2)[0].shadowRoot;
74885
74819
  });
74886
74820
  }();
74887
74821
  return s(arg);
74888
74822
  };
74889
- exports.getElementFixedAncestor = function(arg) {
74823
+ exports.getElementXpath = function(arg) {
74890
74824
  var s = function() {
74891
74825
  "use strict";
74892
- function t(t2) {
74893
- return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74826
+ function e(e2) {
74827
+ return e2 && e2.__esModule && Object.prototype.hasOwnProperty.call(e2, "default") ? e2.default : e2;
74894
74828
  }
74895
- return t(function(t2) {
74896
- for (var e = (void 0 === t2 ? [] : t2)[0]; e.offsetParent && e.offsetParent !== document.body && e.offsetParent !== document.documentElement; )
74897
- e = e.offsetParent;
74898
- return "fixed" === window.getComputedStyle(e).getPropertyValue("position") ? e : null;
74829
+ return e(function(e2) {
74830
+ var r = (void 0 === e2 ? [] : e2)[0], t = "", n = r.ownerDocument;
74831
+ if (!n)
74832
+ return t;
74833
+ for (var a = r; a !== n; ) {
74834
+ var o = Array.prototype.filter.call(a.parentNode.childNodes, function(e3) {
74835
+ return e3.tagName === a.tagName;
74836
+ }).indexOf(a);
74837
+ t = "/" + a.tagName + "[" + (o + 1) + "]" + t, a = a.parentNode;
74838
+ }
74839
+ return t;
74899
74840
  });
74900
74841
  }();
74901
74842
  return s(arg);
74902
74843
  };
74903
- exports.getElementInnerOffset = function(arg) {
74844
+ exports.getElementTranslateOffset = function(arg) {
74904
74845
  var s = function() {
74905
74846
  "use strict";
74906
74847
  function r(r2) {
74907
74848
  return r2 && r2.__esModule && Object.prototype.hasOwnProperty.call(r2, "default") ? r2.default : r2;
74908
74849
  }
74909
74850
  var t = function(r2) {
74910
- var t2 = void 0 === r2 ? [] : r2, e2 = t2[0], o2 = t2[1];
74911
- return (void 0 === o2 ? [] : o2).reduce(function(r3, t3) {
74912
- return r3[t3] = { value: e2.style.getPropertyValue(t3), important: Boolean(e2.style.getPropertyPriority(t3)) }, r3;
74851
+ var t2 = void 0 === r2 ? [] : r2, e = t2[0], n = t2[1];
74852
+ return (void 0 === n ? [] : n).reduce(function(r3, t3) {
74853
+ return r3[t3] = { value: e.style.getPropertyValue(t3), important: Boolean(e.style.getPropertyPriority(t3)) }, r3;
74913
74854
  }, {});
74914
74855
  };
74915
- var e = function(r2) {
74916
- var t2 = (void 0 === r2 ? [] : r2)[0];
74917
- return t2 ? { x: t2.scrollLeft, y: t2.scrollTop } : { x: window.scrollX || window.pageXOffset, y: window.scrollY || window.pageYOffset };
74918
- }, o = function(r2) {
74919
- var e2 = (void 0 === r2 ? [] : r2)[0], o2 = void 0 === e2 ? document.documentElement : e2, n = t([o2, ["transform", "-webkit-transform"]]), u = Object.keys(n).reduce(function(r3, t2) {
74920
- var e3 = n[t2].value;
74921
- if (e3) {
74922
- var o3 = e3.match(/^translate\s*\(\s*(\-?[\d, \.]+)px\s*(,\s*(-?[\d, \.]+)px)?\s*\)/);
74923
- if (o3) {
74924
- var u2 = o3[1], a = void 0 !== o3[3] ? o3[3] : 0;
74856
+ return r(function(r2) {
74857
+ var e = (void 0 === r2 ? [] : r2)[0], n = void 0 === e ? document.documentElement : e, o = t([n, ["transform", "-webkit-transform"]]), u = Object.keys(o).reduce(function(r3, t2) {
74858
+ var e2 = o[t2].value;
74859
+ if (e2) {
74860
+ var n2 = e2.match(/^translate\s*\(\s*(\-?[\d, \.]+)px\s*(,\s*(-?[\d, \.]+)px)?\s*\)/);
74861
+ if (n2) {
74862
+ var u2 = n2[1], a = void 0 !== n2[3] ? n2[3] : 0;
74925
74863
  r3.push({ x: Math.round(-parseFloat(u2)), y: Math.round(-parseFloat(a)) });
74926
74864
  } else
74927
74865
  r3.push({ x: 0, y: 0 });
@@ -74933,29 +74871,38 @@ var require_dist3 = __commonJS({
74933
74871
  }))
74934
74872
  throw new Error("Got different css positions!");
74935
74873
  return u[0] || { x: 0, y: 0 };
74936
- };
74937
- return r(function(r2) {
74938
- var t2 = (void 0 === r2 ? [] : r2)[0], n = e([t2]), u = o([t2]);
74939
- return { x: n.x + u.x, y: n.y + u.y };
74940
74874
  });
74941
74875
  }();
74942
74876
  return s(arg);
74943
74877
  };
74944
- exports.getElementProperties = function(arg) {
74878
+ exports.getElementStyleProperties = function(arg) {
74945
74879
  var s = function() {
74946
74880
  "use strict";
74947
74881
  function t(t2) {
74948
74882
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
74949
74883
  }
74950
74884
  return t(function(t2) {
74951
- var r = void 0 === t2 ? [] : t2, e = r[0], n = r[1];
74952
- return (void 0 === n ? [] : n).reduce(function(t3, r2) {
74953
- return t3[r2] = e[r2], t3;
74885
+ var e = void 0 === t2 ? [] : t2, r = e[0], o = e[1];
74886
+ return (void 0 === o ? [] : o).reduce(function(t3, e2) {
74887
+ return t3[e2] = { value: r.style.getPropertyValue(e2), important: Boolean(r.style.getPropertyPriority(e2)) }, t3;
74954
74888
  }, {});
74955
74889
  });
74956
74890
  }();
74957
74891
  return s(arg);
74958
74892
  };
74893
+ exports.getElementScrollOffset = function(arg) {
74894
+ var s = function() {
74895
+ "use strict";
74896
+ function o(o2) {
74897
+ return o2 && o2.__esModule && Object.prototype.hasOwnProperty.call(o2, "default") ? o2.default : o2;
74898
+ }
74899
+ return o(function(o2) {
74900
+ var t = (void 0 === o2 ? [] : o2)[0];
74901
+ return t ? { x: t.scrollLeft, y: t.scrollTop } : { x: window.scrollX || window.pageXOffset, y: window.scrollY || window.pageYOffset };
74902
+ });
74903
+ }();
74904
+ return s(arg);
74905
+ };
74959
74906
  exports.getElementRect = function(arg) {
74960
74907
  var s = function() {
74961
74908
  "use strict";
@@ -75025,53 +74972,43 @@ var require_dist3 = __commonJS({
75025
74972
  }();
75026
74973
  return s(arg);
75027
74974
  };
75028
- exports.getElementScrollOffset = function(arg) {
75029
- var s = function() {
75030
- "use strict";
75031
- function o(o2) {
75032
- return o2 && o2.__esModule && Object.prototype.hasOwnProperty.call(o2, "default") ? o2.default : o2;
75033
- }
75034
- return o(function(o2) {
75035
- var t = (void 0 === o2 ? [] : o2)[0];
75036
- return t ? { x: t.scrollLeft, y: t.scrollTop } : { x: window.scrollX || window.pageXOffset, y: window.scrollY || window.pageYOffset };
75037
- });
75038
- }();
75039
- return s(arg);
75040
- };
75041
- exports.getElementStyleProperties = function(arg) {
74975
+ exports.getElementProperties = function(arg) {
75042
74976
  var s = function() {
75043
74977
  "use strict";
75044
74978
  function t(t2) {
75045
74979
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75046
74980
  }
75047
74981
  return t(function(t2) {
75048
- var e = void 0 === t2 ? [] : t2, r = e[0], o = e[1];
75049
- return (void 0 === o ? [] : o).reduce(function(t3, e2) {
75050
- return t3[e2] = { value: r.style.getPropertyValue(e2), important: Boolean(r.style.getPropertyPriority(e2)) }, t3;
74982
+ var r = void 0 === t2 ? [] : t2, e = r[0], n = r[1];
74983
+ return (void 0 === n ? [] : n).reduce(function(t3, r2) {
74984
+ return t3[r2] = e[r2], t3;
75051
74985
  }, {});
75052
74986
  });
75053
74987
  }();
75054
74988
  return s(arg);
75055
74989
  };
75056
- exports.getElementTranslateOffset = function(arg) {
74990
+ exports.getElementInnerOffset = function(arg) {
75057
74991
  var s = function() {
75058
74992
  "use strict";
75059
74993
  function r(r2) {
75060
74994
  return r2 && r2.__esModule && Object.prototype.hasOwnProperty.call(r2, "default") ? r2.default : r2;
75061
74995
  }
75062
74996
  var t = function(r2) {
75063
- var t2 = void 0 === r2 ? [] : r2, e = t2[0], n = t2[1];
75064
- return (void 0 === n ? [] : n).reduce(function(r3, t3) {
75065
- return r3[t3] = { value: e.style.getPropertyValue(t3), important: Boolean(e.style.getPropertyPriority(t3)) }, r3;
74997
+ var t2 = void 0 === r2 ? [] : r2, e2 = t2[0], o2 = t2[1];
74998
+ return (void 0 === o2 ? [] : o2).reduce(function(r3, t3) {
74999
+ return r3[t3] = { value: e2.style.getPropertyValue(t3), important: Boolean(e2.style.getPropertyPriority(t3)) }, r3;
75066
75000
  }, {});
75067
75001
  };
75068
- return r(function(r2) {
75069
- var e = (void 0 === r2 ? [] : r2)[0], n = void 0 === e ? document.documentElement : e, o = t([n, ["transform", "-webkit-transform"]]), u = Object.keys(o).reduce(function(r3, t2) {
75070
- var e2 = o[t2].value;
75071
- if (e2) {
75072
- var n2 = e2.match(/^translate\s*\(\s*(\-?[\d, \.]+)px\s*(,\s*(-?[\d, \.]+)px)?\s*\)/);
75073
- if (n2) {
75074
- var u2 = n2[1], a = void 0 !== n2[3] ? n2[3] : 0;
75002
+ var e = function(r2) {
75003
+ var t2 = (void 0 === r2 ? [] : r2)[0];
75004
+ return t2 ? { x: t2.scrollLeft, y: t2.scrollTop } : { x: window.scrollX || window.pageXOffset, y: window.scrollY || window.pageYOffset };
75005
+ }, o = function(r2) {
75006
+ var e2 = (void 0 === r2 ? [] : r2)[0], o2 = void 0 === e2 ? document.documentElement : e2, n = t([o2, ["transform", "-webkit-transform"]]), u = Object.keys(n).reduce(function(r3, t2) {
75007
+ var e3 = n[t2].value;
75008
+ if (e3) {
75009
+ var o3 = e3.match(/^translate\s*\(\s*(\-?[\d, \.]+)px\s*(,\s*(-?[\d, \.]+)px)?\s*\)/);
75010
+ if (o3) {
75011
+ var u2 = o3[1], a = void 0 !== o3[3] ? o3[3] : 0;
75075
75012
  r3.push({ x: Math.round(-parseFloat(u2)), y: Math.round(-parseFloat(a)) });
75076
75013
  } else
75077
75014
  r3.push({ x: 0, y: 0 });
@@ -75083,293 +75020,375 @@ var require_dist3 = __commonJS({
75083
75020
  }))
75084
75021
  throw new Error("Got different css positions!");
75085
75022
  return u[0] || { x: 0, y: 0 };
75023
+ };
75024
+ return r(function(r2) {
75025
+ var t2 = (void 0 === r2 ? [] : r2)[0], n = e([t2]), u = o([t2]);
75026
+ return { x: n.x + u.x, y: n.y + u.y };
75086
75027
  });
75087
75028
  }();
75088
75029
  return s(arg);
75089
75030
  };
75090
- exports.getElementXpath = function(arg) {
75031
+ exports.getElementFixedAncestor = function(arg) {
75091
75032
  var s = function() {
75092
75033
  "use strict";
75093
- function e(e2) {
75094
- return e2 && e2.__esModule && Object.prototype.hasOwnProperty.call(e2, "default") ? e2.default : e2;
75034
+ function t(t2) {
75035
+ return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75095
75036
  }
75096
- return e(function(e2) {
75097
- var r = (void 0 === e2 ? [] : e2)[0], t = "", n = r.ownerDocument;
75098
- if (!n)
75099
- return t;
75100
- for (var a = r; a !== n; ) {
75101
- var o = Array.prototype.filter.call(a.parentNode.childNodes, function(e3) {
75102
- return e3.tagName === a.tagName;
75103
- }).indexOf(a);
75104
- t = "/" + a.tagName + "[" + (o + 1) + "]" + t, a = a.parentNode;
75105
- }
75106
- return t;
75037
+ return t(function(t2) {
75038
+ for (var e = (void 0 === t2 ? [] : t2)[0]; e.offsetParent && e.offsetParent !== document.body && e.offsetParent !== document.documentElement; )
75039
+ e = e.offsetParent;
75040
+ return "fixed" === window.getComputedStyle(e).getPropertyValue("position") ? e : null;
75107
75041
  });
75108
75042
  }();
75109
75043
  return s(arg);
75110
75044
  };
75111
- exports.getShadowRoot = function(arg) {
75045
+ exports.getElementContentSize = function(arg) {
75112
75046
  var s = function() {
75113
75047
  "use strict";
75114
75048
  function t(t2) {
75115
75049
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75116
75050
  }
75051
+ var e = function(t2) {
75052
+ var e2 = void 0 === t2 ? [] : t2, r2 = e2[0], o = e2[1], n = Object.keys(o).sort(), a = n.reduce(function(t3, e3) {
75053
+ return t3[e3] = { value: r2.style.getPropertyValue(e3), important: Boolean(r2.style.getPropertyPriority(e3)) }, t3;
75054
+ }, {});
75055
+ return n.forEach(function(t3) {
75056
+ r2.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
75057
+ }), a;
75058
+ }, r = function() {
75059
+ var t2 = "HTML", e2 = document.scrollingElement;
75060
+ return e2 && (t2 = e2.tagName), t2.toLowerCase();
75061
+ };
75117
75062
  return t(function(t2) {
75118
- return (void 0 === t2 ? [] : t2)[0].shadowRoot;
75063
+ var o, n = (void 0 === t2 ? [] : t2)[0];
75064
+ n !== document.documentElement && n.tagName.toLowerCase() !== r() || (o = e([n, { transform: "none" }]));
75065
+ var a = { width: n.scrollWidth, height: n.scrollHeight };
75066
+ return o && e([n, o]), a;
75119
75067
  });
75120
75068
  }();
75121
75069
  return s(arg);
75122
75070
  };
75123
- exports.getText = function(arg) {
75071
+ exports.getElementComputedStyleProperties = function(arg) {
75124
75072
  var s = function() {
75125
75073
  "use strict";
75126
75074
  function t(t2) {
75127
75075
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75128
75076
  }
75129
75077
  return t(function(t2) {
75130
- return t2[0].innerText;
75078
+ var e = void 0 === t2 ? [] : t2, r = e[0], n = e[1], u = void 0 === n ? [] : n, o = window.getComputedStyle(r);
75079
+ return o ? u.map(function(t3) {
75080
+ return o.getPropertyValue(t3);
75081
+ }) : [];
75131
75082
  });
75132
75083
  }();
75133
75084
  return s(arg);
75134
75085
  };
75135
- exports.getUserAgent = function(arg) {
75086
+ exports.getDocumentSize = function(arg) {
75136
75087
  var s = function() {
75137
75088
  "use strict";
75138
- function n(n2) {
75139
- return n2 && n2.__esModule && Object.prototype.hasOwnProperty.call(n2, "default") ? n2.default : n2;
75140
- }
75141
- function t() {
75142
- return t = Object.assign ? Object.assign.bind() : function(n2) {
75143
- for (var t2 = 1; t2 < arguments.length; t2++) {
75144
- var r2 = arguments[t2];
75145
- for (var e2 in r2)
75146
- ({}).hasOwnProperty.call(r2, e2) && (n2[e2] = r2[e2]);
75147
- }
75148
- return n2;
75149
- }, t.apply(null, arguments);
75089
+ function t(t2) {
75090
+ return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75150
75091
  }
75151
- var r = "__EYES__APPLITOOLS__", e = "userAgent";
75152
- return window[r] = window[r] || {}, n(function() {
75153
- try {
75154
- if (window[r][e]) {
75155
- var n2 = window[r][e];
75156
- return "WIP" !== n2.status && delete window[r][e], JSON.stringify(n2);
75157
- }
75158
- return window.navigator.userAgentData ? (window[r][e] = { status: "WIP" }, window.navigator.userAgentData.getHighEntropyValues(["brands", "platform", "platformVersion", "model"]).then(function(n3) {
75159
- window[r][e] = { status: "SUCCESS", value: t({ legacy: window.navigator.userAgent }, n3) };
75160
- }).catch(function(n3) {
75161
- window[r][e] = { status: "ERROR", error: n3.message };
75162
- })) : window[r][e] = { status: "SUCCESS", value: window.navigator.userAgent }, JSON.stringify(window[r][e]);
75163
- } catch (n3) {
75164
- return window[r][e] = { status: "ERROR", error: n3.message }, JSON.stringify(window[r][e]);
75165
- }
75092
+ return t(function() {
75093
+ var t2 = document.documentElement.scrollWidth, e = document.documentElement.scrollHeight, n = document.documentElement.clientHeight, o = document.body.scrollWidth, c = document.body.scrollHeight, u = document.body.clientHeight;
75094
+ return { width: Math.max(t2, o), height: Math.max(n, e, u, c) };
75166
75095
  });
75167
75096
  }();
75168
75097
  return s(arg);
75169
75098
  };
75170
- exports.getViewport = function(arg) {
75099
+ exports.getDocumentScrollingElement = function(arg) {
75171
75100
  var s = function() {
75172
75101
  "use strict";
75173
- function e(e2) {
75174
- return e2 && e2.__esModule && Object.prototype.hasOwnProperty.call(e2, "default") ? e2.default : e2;
75102
+ function t(t2) {
75103
+ return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75175
75104
  }
75176
- return e(function() {
75177
- var e2, n = 0, t = 0;
75178
- return window.innerHeight ? t = window.innerHeight : document.documentElement && document.documentElement.clientHeight ? t = document.documentElement.clientHeight : document.body && document.body.clientHeight && (t = document.body.clientHeight), window.innerWidth ? n = window.innerWidth : document.documentElement && document.documentElement.clientWidth ? n = document.documentElement.clientWidth : document.body && document.body.clientWidth && (n = document.body.clientWidth), window.screen && window.screen.orientation ? e2 = window.screen.orientation.type.replace(/-primary$/, "") : null != window.orientation && (0 === window.orientation ? e2 = "portrait" : 180 === window.orientation ? e2 = "portrait-secondary" : 90 === window.orientation ? e2 = "landscape" : -90 === window.orientation && (e2 = "landscape-secondary")), { viewportSize: { width: n, height: t }, pixelRatio: window.devicePixelRatio, viewportScale: window.visualViewport && window.visualViewport.scale, orientation: e2 };
75105
+ return t(function() {
75106
+ var t2 = "HTML", e = document.scrollingElement;
75107
+ return e && (t2 = e.tagName), t2.toLowerCase();
75179
75108
  });
75180
75109
  }();
75181
75110
  return s(arg);
75182
75111
  };
75183
- exports.isElementScrollable = function(arg) {
75112
+ exports.getContextInfo = function(arg) {
75184
75113
  var s = function() {
75185
75114
  "use strict";
75186
75115
  function t(t2) {
75187
75116
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75188
75117
  }
75189
75118
  var e = function(t2) {
75190
- var e2 = void 0 === t2 ? [] : t2, o = e2[0], r = e2[1], n = void 0 === r ? [] : r, l = window.getComputedStyle(o);
75191
- return l ? n.map(function(t3) {
75192
- return l.getPropertyValue(t3);
75193
- }) : [];
75119
+ var e2 = (void 0 === t2 ? [] : t2)[0], n = "", r = e2.ownerDocument;
75120
+ if (!r)
75121
+ return n;
75122
+ for (var o = e2; o !== r; ) {
75123
+ var a = Array.prototype.filter.call(o.parentNode.childNodes, function(t3) {
75124
+ return t3.tagName === o.tagName;
75125
+ }).indexOf(o);
75126
+ n = "/" + o.tagName + "[" + (a + 1) + "]" + n, o = o.parentNode;
75127
+ }
75128
+ return n;
75194
75129
  };
75195
- return t(function(t2) {
75196
- var o = (void 0 === t2 ? [] : t2)[0], r = e([o, ["overflow-x", "overflow-y", "overflow"]]);
75197
- return ("scroll" === r[0] || "auto" === r[0] || "hidden" === r[2]) && o.scrollWidth > o.clientWidth || ("scroll" === r[1] || "auto" === r[1] || "hidden" === r[2]) && o.scrollHeight > o.clientHeight;
75130
+ return t(function() {
75131
+ var t2, n, r;
75132
+ try {
75133
+ t2 = window.top.document === window.document || "root-context" === window.parent.document["applitools-marker"];
75134
+ } catch (e2) {
75135
+ t2 = false;
75136
+ }
75137
+ try {
75138
+ n = !window.parent.document === window.document;
75139
+ } catch (t3) {
75140
+ n = true;
75141
+ }
75142
+ if (!n)
75143
+ try {
75144
+ r = e([window.frameElement]);
75145
+ } catch (t3) {
75146
+ r = null;
75147
+ }
75148
+ return [document.documentElement, r, t2, n];
75198
75149
  });
75199
75150
  }();
75200
75151
  return s(arg);
75201
75152
  };
75202
- exports.isEqualElements = function(arg) {
75153
+ exports.getChildFramesInfo = function(arg) {
75203
75154
  var s = function() {
75204
75155
  "use strict";
75205
75156
  function t(t2) {
75206
75157
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75207
75158
  }
75208
- return t(function(t2) {
75209
- var r = void 0 === t2 ? [] : t2;
75210
- return r[0] === r[1];
75159
+ return t(function() {
75160
+ return function t2(r) {
75161
+ r = r || document;
75162
+ var e = [];
75163
+ r.querySelectorAll("frame, iframe").forEach(function(t3) {
75164
+ return e.push([t3, !t3.contentDocument, t3.src]);
75165
+ });
75166
+ var n = Array.prototype.filter.call(r.querySelectorAll("*"), function(t3) {
75167
+ return t3.shadowRoot;
75168
+ }).map(function(r2) {
75169
+ return t2(r2.shadowRoot);
75170
+ });
75171
+ return e.concat.apply(e, n);
75172
+ }();
75211
75173
  });
75212
75174
  }();
75213
75175
  return s(arg);
75214
75176
  };
75215
- exports.isStaleElement = function(arg) {
75177
+ exports.focusElement = function(arg) {
75216
75178
  var s = function() {
75217
75179
  "use strict";
75218
- function n(n2) {
75219
- return n2 && n2.__esModule && Object.prototype.hasOwnProperty.call(n2, "default") ? n2.default : n2;
75180
+ function t(t2) {
75181
+ return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75220
75182
  }
75221
- return n(function(n2) {
75222
- var e = n2 && n2[0] || null;
75223
- return !e || ("isConnected" in window.Node.prototype ? !e.isConnected : document.documentElement.contains ? !document.documentElement.contains(e) : !e.ownerDocument.documentElement.contains(e));
75183
+ return t(function(t2) {
75184
+ var e = (void 0 === t2 ? [] : t2)[0];
75185
+ e && e.focus();
75224
75186
  });
75225
75187
  }();
75226
75188
  return s(arg);
75227
75189
  };
75228
- exports.lazyLoad = function(arg) {
75190
+ exports.cleanupPageMarker = function(arg) {
75229
75191
  var s = function() {
75230
75192
  "use strict";
75231
75193
  function t(t2) {
75232
75194
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75233
75195
  }
75234
- var o = function(t2) {
75235
- var o2 = (void 0 === t2 ? [] : t2)[0];
75236
- return o2 ? { x: o2.scrollLeft, y: o2.scrollTop } : { x: window.scrollX || window.pageXOffset, y: window.scrollY || window.pageYOffset };
75237
- };
75238
- var r = function(t2) {
75239
- var o2 = void 0 === t2 ? [] : t2, r2 = o2[0], n2 = o2[1], e2 = Object.keys(n2).sort(), i2 = e2.reduce(function(t3, o3) {
75240
- return t3[o3] = { value: r2.style.getPropertyValue(o3), important: Boolean(r2.style.getPropertyPriority(o3)) }, t3;
75196
+ var e = function(t2) {
75197
+ var e2 = void 0 === t2 ? [] : t2, r = e2[0], o = e2[1], n = Object.keys(o).sort(), a = n.reduce(function(t3, e3) {
75198
+ return t3[e3] = { value: r.style.getPropertyValue(e3), important: Boolean(r.style.getPropertyPriority(e3)) }, t3;
75241
75199
  }, {});
75242
- return e2.forEach(function(t3) {
75243
- r2.style.setProperty(t3, "string" != typeof n2[t3] && n2[t3] ? n2[t3].value : n2[t3], n2[t3] && n2[t3].important ? "important" : "");
75244
- }), i2;
75200
+ return n.forEach(function(t3) {
75201
+ r.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
75202
+ }), a;
75245
75203
  };
75246
- var n = function(t2) {
75247
- var o2 = void 0 === t2 ? [] : t2, n2 = o2[0], e2 = o2[1];
75248
- n2 = n2 || document.documentElement;
75249
- var i2 = r([n2, { "scroll-behavior": { value: "auto", important: true } }]);
75250
- return n2.scrollTo ? n2.scrollTo(e2.x, e2.y) : (n2.scrollLeft = e2.x, n2.scrollTop = e2.y), r([n2, i2]), { x: n2.scrollLeft, y: n2.scrollTop };
75251
- }, e = "__EYES__APPLITOOLS__", i = "lazyLoadResult";
75252
- window[e] = window[e] || {};
75253
- var l = o, a = n;
75254
- return t(function(t2) {
75255
- var o2 = void 0 === t2 ? [] : t2, r2 = o2[0], n2 = o2[1], s2 = void 0 === n2 ? {} : n2, u = s2.scrollLength, c = s2.waitingTime, w = s2.maxAmountToScroll;
75256
- try {
75257
- if (window[e][i]) {
75258
- var d = window[e][i];
75259
- return "WIP" !== d.status && delete window[e][i], JSON.stringify(d);
75260
- }
75261
- window[e][i] = { status: "WIP" };
75262
- var v = l(), y = [];
75263
- y.push({ maxAmountToScroll: w, scrollLength: u, waitingTime: c, startingScrollPositionX: v.x, startingScrollPositionY: v.y });
75264
- var f = Date.now();
75265
- return function t3(o3) {
75266
- var n3 = void 0 === o3 ? {} : o3, l2 = n3.doneScrolling, s3 = n3.previousScrollResult, d2 = void 0 === s3 ? {} : s3;
75267
- setTimeout(function() {
75268
- try {
75269
- if (l2) {
75270
- var o4 = a([r2, v]), n4 = o4.x, s4 = o4.y;
75271
- return y.push({ x: n4, y: s4, msSinceStart: Date.now() - f }), void (window[e][i] = { status: "SUCCESS", value: y });
75272
- }
75273
- var c2 = a([r2, { x: v.x, y: d2.y + u }]), p = c2.x, S = c2.y;
75274
- y.push({ x: p, y: S, msSinceStart: Date.now() - f }), t3({ doneScrolling: S === d2.y || S === w, previousScrollResult: { x: p, y: S } });
75275
- } catch (t4) {
75276
- window[e][i] = { status: "ERROR", error: t4 };
75277
- }
75278
- }, c);
75279
- }(), JSON.stringify(window[e][i]);
75280
- } catch (t3) {
75281
- return window[e][i] = { status: "ERROR", error: t3 }, JSON.stringify(window[e][i]);
75282
- }
75204
+ return t(function() {
75205
+ var t2 = document.querySelector("[data-applitools-marker]");
75206
+ t2 && document.body.removeChild(t2);
75207
+ var r = document.documentElement.getAttribute("data-applitools-original-transforms"), o = document.body.getAttribute("data-applitools-original-transforms");
75208
+ r && e([document.documentElement, JSON.parse(r)]), o && e([document.body, JSON.parse(o)]);
75283
75209
  });
75284
75210
  }();
75285
75211
  return s(arg);
75286
75212
  };
75287
- exports.reloadPage = function(arg) {
75213
+ exports.cleanupElementIds = function(arg) {
75288
75214
  var s = function() {
75289
75215
  "use strict";
75290
75216
  function t(t2) {
75291
75217
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75292
75218
  }
75293
- return t(function() {
75294
- window.location.reload();
75219
+ return t(function(t2) {
75220
+ (t2 = t2 && t2[0]) && "function" == typeof t2.forEach && t2.forEach(function(t3) {
75221
+ t3.removeAttribute("data-applitools-selector");
75222
+ var o = t3;
75223
+ if (o.getRootNode)
75224
+ try {
75225
+ for (; o; ) {
75226
+ var e = o.getRootNode();
75227
+ if (!e)
75228
+ break;
75229
+ (o = e.constructor && "ShadowRoot" === e.constructor.name ? e.host : e.defaultView ? e.defaultView.frameElement : null) && o.removeAttribute("data-applitools-selector");
75230
+ }
75231
+ } catch (t4) {
75232
+ }
75233
+ });
75295
75234
  });
75296
75235
  }();
75297
75236
  return s(arg);
75298
75237
  };
75299
- exports.scrollTo = function(arg) {
75238
+ exports.blurElement = function(arg) {
75300
75239
  var s = function() {
75301
75240
  "use strict";
75302
75241
  function t(t2) {
75303
75242
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75304
75243
  }
75305
- var r = function(t2) {
75306
- var r2 = void 0 === t2 ? [] : t2, o = r2[0], e = r2[1], l = Object.keys(e).sort(), n = l.reduce(function(t3, r3) {
75307
- return t3[r3] = { value: o.style.getPropertyValue(r3), important: Boolean(o.style.getPropertyPriority(r3)) }, t3;
75308
- }, {});
75309
- return l.forEach(function(t3) {
75310
- o.style.setProperty(t3, "string" != typeof e[t3] && e[t3] ? e[t3].value : e[t3], e[t3] && e[t3].important ? "important" : "");
75311
- }), n;
75312
- };
75313
75244
  return t(function(t2) {
75314
- var o = void 0 === t2 ? [] : t2, e = o[0], l = o[1];
75315
- e = e || document.documentElement;
75316
- var n = r([e, { "scroll-behavior": { value: "auto", important: true } }]);
75317
- return e.scrollTo ? e.scrollTo(l.x, l.y) : (e.scrollLeft = l.x, e.scrollTop = l.y), r([e, n]), { x: e.scrollLeft, y: e.scrollTop };
75245
+ var e = (void 0 === t2 ? [] : t2)[0] || document.activeElement;
75246
+ return e && e.blur(), e;
75318
75247
  });
75319
75248
  }();
75320
75249
  return s(arg);
75321
75250
  };
75322
- exports.setElementAttributes = function(arg) {
75251
+ exports.addPageMarker = function(arg) {
75323
75252
  var s = function() {
75324
75253
  "use strict";
75325
75254
  function t(t2) {
75326
75255
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75327
75256
  }
75328
- return t(function(t2) {
75329
- var e = void 0 === t2 ? [] : t2, r = e[0], u = e[1];
75330
- return Object.keys(u).reduce(function(t3, e2) {
75331
- return t3[e2] = r.getAttribute(e2), r.setAttribute(e2, u[e2]), t3;
75257
+ var e = function(t2) {
75258
+ var e2 = void 0 === t2 ? [] : t2, r = e2[0], o = e2[1], n = Object.keys(o).sort(), a = n.reduce(function(t3, e3) {
75259
+ return t3[e3] = { value: r.style.getPropertyValue(e3), important: Boolean(r.style.getPropertyPriority(e3)) }, t3;
75332
75260
  }, {});
75261
+ return n.forEach(function(t3) {
75262
+ r.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
75263
+ }), a;
75264
+ };
75265
+ return t(function(t2) {
75266
+ var r = t2[0], o = r.mask, n = r.size, a = void 0 === n ? 1 : n, i = { 1: "rgb(0, 0, 0)", 0: "rgb(255, 255, 255)" }, s2 = a, p = document.createElement("div");
75267
+ p.setAttribute("data-applitools-marker", ""), p.style.setProperty("position", "fixed", "important"), p.style.setProperty("top", "0", "important"), p.style.setProperty("left", "0", "important"), p.style.setProperty("box-sizing", "content-box", "important"), p.style.setProperty("padding", s2 + "px", "important"), p.style.setProperty("background", "rgb(128, 128, 128)", "important"), p.style.setProperty("z-index", "2147483647", "important");
75268
+ for (var l, y = 0; y < o.length; y += l) {
75269
+ for (l = 1; o[y] === o[y + l]; )
75270
+ ++l;
75271
+ var m = o[y], d = document.createElement("div");
75272
+ d.style.setProperty("display", "block", "important"), d.style.setProperty("float", "left", "important"), d.style.setProperty("width", l * a + "px", "important"), d.style.setProperty("height", a + "px", "important"), d.style.setProperty("background", i[m], "important"), p.appendChild(d);
75273
+ }
75274
+ var u = { value: "none", important: true }, c = e([document.documentElement, { transform: u, "-webkit-transform": u }]), f = e([document.body, { transform: u, "-webkit-transform": u }]);
75275
+ return document.documentElement.setAttribute("data-applitools-original-transforms", JSON.stringify(c)), document.body.setAttribute("data-applitools-original-transforms", JSON.stringify(f)), document.body.appendChild(p), { mask: o, size: a, offset: s2 };
75333
75276
  });
75334
75277
  }();
75335
75278
  return s(arg);
75336
75279
  };
75337
- exports.setElementStyleProperties = function(arg) {
75280
+ exports.addFallbackSelectorIfNeeded = function(arg) {
75338
75281
  var s = function() {
75339
75282
  "use strict";
75340
75283
  function t(t2) {
75341
75284
  return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75342
75285
  }
75286
+ var e = function(t2) {
75287
+ var e2 = t2 && t2[0] || null;
75288
+ return !e2 || ("isConnected" in window.Node.prototype ? !e2.isConnected : document.documentElement.contains ? !document.documentElement.contains(e2) : !e2.ownerDocument.documentElement.contains(e2));
75289
+ };
75343
75290
  return t(function(t2) {
75344
- var e = void 0 === t2 ? [] : t2, r = e[0], o = e[1], n = Object.keys(o).sort(), u = n.reduce(function(t3, e2) {
75345
- return t3[e2] = { value: r.style.getPropertyValue(e2), important: Boolean(r.style.getPropertyPriority(e2)) }, t3;
75346
- }, {});
75347
- return n.forEach(function(t3) {
75348
- r.style.setProperty(t3, "string" != typeof o[t3] && o[t3] ? o[t3].value : o[t3], o[t3] && o[t3].important ? "important" : "");
75349
- }), u;
75291
+ if (!t2.hasAttribute("data-applitools-fallback-selector")) {
75292
+ if (e([t2]))
75293
+ throw new Error("The element is not connected to the DOM: " + function(t3) {
75294
+ var e2 = t3.attributes, n = t3.tagName, o = t3.children.length, r = [].slice.call(e2).map(function(t4) {
75295
+ return t4.name + '="' + t4.value + '"';
75296
+ }).join(" ");
75297
+ return "<" + n + " " + r + (o ? ">" : "/>");
75298
+ }(t2));
75299
+ t2.setAttribute("data-applitools-fallback-selector", function(t3) {
75300
+ var e2 = [];
75301
+ for (; t3 && t3.nodeType === Node.ELEMENT_NODE; )
75302
+ try {
75303
+ var n, o = t3.tagName.toLowerCase(), r = [].slice.call((null == (n = t3.parentNode) ? void 0 : n.children) || []).indexOf(t3);
75304
+ r > -1 && (o += ":nth-child(" + (r + 1) + ")"), e2.unshift(o), t3 = t3.parentNode;
75305
+ } catch (t4) {
75306
+ break;
75307
+ }
75308
+ return e2.length ? e2.join(" > ") : "html";
75309
+ }(t2));
75310
+ }
75350
75311
  });
75351
75312
  }();
75352
75313
  return s(arg);
75353
75314
  };
75354
- exports.translateTo = function(arg) {
75315
+ exports.addElementIds = function(arg) {
75355
75316
  var s = function() {
75356
75317
  "use strict";
75357
- function t(t2) {
75358
- return t2 && t2.__esModule && Object.prototype.hasOwnProperty.call(t2, "default") ? t2.default : t2;
75318
+ function e(e2) {
75319
+ return e2 && e2.__esModule && Object.prototype.hasOwnProperty.call(e2, "default") ? e2.default : e2;
75359
75320
  }
75360
- var r = function(t2) {
75361
- var r2 = void 0 === t2 ? [] : t2, e = r2[0], n = r2[1], o = Object.keys(n).sort(), a = o.reduce(function(t3, r3) {
75362
- return t3[r3] = { value: e.style.getPropertyValue(r3), important: Boolean(e.style.getPropertyPriority(r3)) }, t3;
75363
- }, {});
75364
- return o.forEach(function(t3) {
75365
- e.style.setProperty(t3, "string" != typeof n[t3] && n[t3] ? n[t3].value : n[t3], n[t3] && n[t3].important ? "important" : "");
75366
- }), a;
75367
- };
75368
- return t(function(t2) {
75369
- var e = void 0 === t2 ? [] : t2, n = e[0], o = e[1];
75370
- n = n || document.documentElement;
75371
- var a = { value: "translate(" + -o.x + "px, " + -o.y + "px)", important: true };
75372
- return r([n, { transform: a, "-webkit-transform": a }]), o;
75321
+ var t = function(e2) {
75322
+ var t2 = e2 && e2[0] || null;
75323
+ return !t2 || ("isConnected" in window.Node.prototype ? !t2.isConnected : document.documentElement.contains ? !document.documentElement.contains(t2) : !t2.ownerDocument.documentElement.contains(t2));
75324
+ }, r = t;
75325
+ var n = function(e2) {
75326
+ if (!e2.hasAttribute("data-applitools-fallback-selector")) {
75327
+ if (r([e2]))
75328
+ throw new Error("The element is not connected to the DOM: " + function(e3) {
75329
+ var t2 = e3.attributes, r2 = e3.tagName, n2 = e3.children.length, o2 = [].slice.call(t2).map(function(e4) {
75330
+ return e4.name + '="' + e4.value + '"';
75331
+ }).join(" ");
75332
+ return "<" + r2 + " " + o2 + (n2 ? ">" : "/>");
75333
+ }(e2));
75334
+ e2.setAttribute("data-applitools-fallback-selector", function(e3) {
75335
+ var t2 = [];
75336
+ for (; e3 && e3.nodeType === Node.ELEMENT_NODE; )
75337
+ try {
75338
+ var r2, n2 = e3.tagName.toLowerCase(), o2 = [].slice.call((null == (r2 = e3.parentNode) ? void 0 : r2.children) || []).indexOf(e3);
75339
+ o2 > -1 && (n2 += ":nth-child(" + (o2 + 1) + ")"), t2.unshift(n2), e3 = e3.parentNode;
75340
+ } catch (e4) {
75341
+ break;
75342
+ }
75343
+ return t2.length ? t2.join(" > ") : "html";
75344
+ }(e2));
75345
+ }
75346
+ }, o = t;
75347
+ function a(e2, t2) {
75348
+ if (o([e2])) {
75349
+ var r2 = function(e3) {
75350
+ if (null == e3 || !e3.getAttribute)
75351
+ return { error: "invalid element: " + JSON.stringify(e3) };
75352
+ var t3 = e3.getAttribute("data-applitools-fallback-selector");
75353
+ return t3;
75354
+ }(e2);
75355
+ if (!r2)
75356
+ return { error: "Failed to recover from stale element" };
75357
+ if (r2.error)
75358
+ return r2;
75359
+ var l = document.querySelectorAll(r2);
75360
+ if (!l || 1 !== l.length)
75361
+ return { error: "Failed to recover from stale element - selector found: " + r2 };
75362
+ var i = l[0];
75363
+ return i.setAttribute("data-applitools-selector", t2), i.setAttribute("data-applitools-recovered", true), a(i, t2);
75364
+ }
75365
+ n(e2);
75366
+ var u = e2.getAttribute("data-applitools-selector"), c = u ? u + " " + t2 : t2;
75367
+ return e2.setAttribute("data-applitools-selector", c), '[data-applitools-selector~="' + t2 + '"]';
75368
+ }
75369
+ return e(function(e2) {
75370
+ return e2.map(function(e3) {
75371
+ var t2 = e3[0], r2 = e3[1];
75372
+ return t2.map(function(e4) {
75373
+ var t3 = function(e5) {
75374
+ var t4 = [{ element: e5, kind: "root" }], r3 = /* @__PURE__ */ new Set([e5]), n2 = e5;
75375
+ for (; n2; ) {
75376
+ var o2, a2 = n2.getRootNode && n2.getRootNode();
75377
+ if (!a2)
75378
+ break;
75379
+ if (a2.constructor && "ShadowRoot" === a2.constructor.name ? (n2 = a2.host, o2 = "shadow") : (n2 = a2.defaultView ? a2.defaultView.frameElement : null, o2 = "frame"), n2) {
75380
+ if (r3.has(n2))
75381
+ break;
75382
+ r3.add(n2), t4.push({ element: n2, kind: o2 });
75383
+ }
75384
+ }
75385
+ return t4;
75386
+ }(e4);
75387
+ return t3.map(function(e5) {
75388
+ return { selector: a(e5.element, r2), kind: e5.kind };
75389
+ });
75390
+ });
75391
+ });
75373
75392
  });
75374
75393
  }();
75375
75394
  return s(arg);
@@ -80784,7 +80803,7 @@ ${l2}`}`, { bundledCss: u2, unfetchedResources: i2 };
80784
80803
  return m3 && (k2.shadowRoot = m3), k2;
80785
80804
  }
80786
80805
  }(t4);
80787
- f2(l2.doCaptureDoc), d2(l2.waitForImages), await Promise.all(m2), f2(l2.waitForImages), N2.version = "1.4.0", N2.scriptVersion = "11.7.0";
80806
+ f2(l2.doCaptureDoc), d2(l2.waitForImages), await Promise.all(m2), f2(l2.waitForImages), N2.version = "1.4.0", N2.scriptVersion = "11.7.1";
80788
80807
  const A2 = p2.length ? `${p2.join("\n")}
80789
80808
  ` : "", P2 = h2.size ? `${Array.from(h2).join("\n")}
80790
80809
  ` : "", v2 = JSON.stringify({ separator: w2, cssStartToken: y2, cssEndToken: y2, iframeStartToken: `"${g2}`, iframeEndToken: `${g2}"` });
@@ -87731,7 +87750,7 @@ var require_captureDomPollForIE = __commonJS({
87731
87750
  case 24:
87732
87751
  return L2 = e5.sent, A2(E2.prefetchCss), j2 = N0({ parseCss: U0, CSSImportRule, getCssFromCache: L2, absolutizeUrl: L0, unfetchedToken: P2 }), k2 = B0({ getCssFromCache: L2, absolutizeUrl: L0 }), C2 = z0({ extractCssFromNode: k2, getBundledCssFromCssText: j2, unfetchedToken: P2 }), S2(E2.doCaptureDoc), M2 = H2(i3), A2(E2.doCaptureDoc), S2(E2.waitForImages), e5.next = 35, Promise.all(O2);
87733
87752
  case 35:
87734
- return A2(E2.waitForImages), M2.version = "1.4.0", M2.scriptVersion = "11.7.0", N2 = T2.length ? T2.join("\n") + "\n" : "", U2 = x2.size ? Array.from(x2).join("\n") + "\n" : "", D2 = JSON.stringify({ separator: _2, cssStartToken: P2, cssEndToken: P2, iframeStartToken: '"' + R2, iframeEndToken: R2 + '"' }), A2(E2.total), B2 = JSON.stringify(M2), z2 = D2 + "\n" + U2 + _2 + "\n" + N2 + _2 + "\n" + ("string" == typeof B2 ? B2 : G0(M2)) + F2(), console.log("[captureFrame]", JSON.stringify(E2)), e5.abrupt("return", z2);
87753
+ return A2(E2.waitForImages), M2.version = "1.4.0", M2.scriptVersion = "11.7.1", N2 = T2.length ? T2.join("\n") + "\n" : "", U2 = x2.size ? Array.from(x2).join("\n") + "\n" : "", D2 = JSON.stringify({ separator: _2, cssStartToken: P2, cssEndToken: P2, iframeStartToken: '"' + R2, iframeEndToken: R2 + '"' }), A2(E2.total), B2 = JSON.stringify(M2), z2 = D2 + "\n" + U2 + _2 + "\n" + N2 + _2 + "\n" + ("string" == typeof B2 ? B2 : G0(M2)) + F2(), console.log("[captureFrame]", JSON.stringify(E2)), e5.abrupt("return", z2);
87735
87754
  case 46:
87736
87755
  case "end":
87737
87756
  return e5.stop();
@@ -94454,6 +94473,7 @@ var require_requests2 = __commonJS({
94454
94473
  logger
94455
94474
  });
94456
94475
  const result = await response.json();
94476
+ logger.log('Received response for "takeScreenshots" with body', result);
94457
94477
  brokerUrl = result.nextPath;
94458
94478
  let screenshots;
94459
94479
  if (Number(result.protocolVersion) >= 2) {
@@ -102160,26 +102180,41 @@ var require_processPagePollCjs = __commonJS({
102160
102180
  function Kh(e3) {
102161
102181
  return e3.reduce((e4, t3) => e4.concat(t3), []);
102162
102182
  }
102163
- function Hh(t3) {
102183
+ let Hh;
102184
+ function Gh() {
102185
+ if (Hh)
102186
+ return Hh;
102187
+ if (void 0 === e2 || window.top === window)
102188
+ return window.fetch;
102189
+ try {
102190
+ const t3 = e2.createElement("iframe");
102191
+ t3.setAttribute("data-applitools-skip", "true"), t3.style.display = "none", e2.head.appendChild(t3);
102192
+ const n3 = t3.contentWindow, r3 = n3.fetch;
102193
+ "function" == typeof r3 && (Hh = r3.bind(n3));
102194
+ } catch (e3) {
102195
+ }
102196
+ return Hh || window.fetch;
102197
+ }
102198
+ function Yh(t3) {
102164
102199
  const n3 = new TextDecoder("utf-8").decode(t3), r3 = e2.head || e2.querySelectorAll("head")[0], o3 = e2.createElement("style");
102165
102200
  return o3.type = "text/css", o3.setAttribute("data-desc", "Applitools tmp variable created by DOM SNAPSHOT"), r3.appendChild(o3), o3.styleSheet ? o3.styleSheet.cssText = n3 : o3.appendChild(e2.createTextNode(n3)), o3.sheet;
102166
102201
  }
102167
- function Gh(e3, t3, n3 = Zh) {
102202
+ function Xh(e3, t3, n3 = Zh) {
102168
102203
  let r3;
102169
102204
  if (t3)
102170
102205
  try {
102171
102206
  t3.cssRules, r3 = t3;
102172
102207
  } catch (o3) {
102173
102208
  n3(`[dom-snapshot] could not access cssRules for ${t3.href} ${o3}
102174
- creating temp style for access.`), r3 = Hh(e3);
102209
+ creating temp style for access.`), r3 = Yh(e3);
102175
102210
  }
102176
102211
  else
102177
- r3 = Hh(e3);
102212
+ r3 = Yh(e3);
102178
102213
  return { corsFreeStyleSheet: r3, cleanStyleSheet: function() {
102179
102214
  r3 !== t3 && r3.ownerNode.parentNode.removeChild(r3.ownerNode);
102180
102215
  } };
102181
102216
  }
102182
- function Yh(e3, { log: t3, compress: n3, serialize: r3 }) {
102217
+ function Qh(e3, { log: t3, compress: n3, serialize: r3 }) {
102183
102218
  return e3.reduce(async (e4, { url: o3, element: i3, cdtNode: a3 }) => {
102184
102219
  const s3 = new Promise(async (e5) => {
102185
102220
  try {
@@ -102205,18 +102240,18 @@ creating temp style for access.`), r3 = Hh(e3);
102205
102240
  }));
102206
102241
  }, Promise.resolve([]));
102207
102242
  }
102208
- const Xh = "__process_resource";
102209
- function Qh(e3) {
102243
+ const Jh = "__process_resource";
102244
+ function ed(e3) {
102210
102245
  return e3 && $h(e3);
102211
102246
  }
102212
102247
  window[x] = window[x] || {};
102213
- const Jh = f(function({ doc: t3 = e2, showLogs: n3, useSessionCache: r3, dontFetchResources: o3, fetchTimeout: i3, fetchConcurrency: a3, skipResources: s3, compressResources: l2, serializeResources: c2, removeReverseProxyURLPrefixes: u2, elements: h2 } = {}) {
102248
+ const td = f(function({ doc: t3 = e2, showLogs: n3, useSessionCache: r3, dontFetchResources: o3, fetchTimeout: i3, fetchConcurrency: a3, skipResources: s3, skipRootHtmlResource: l2, compressResources: c2, serializeResources: u2, removeReverseProxyURLPrefixes: h2, elements: d2 } = {}) {
102214
102249
  if (arguments[0] instanceof Document) {
102215
102250
  t3 = arguments[0];
102216
102251
  const e3 = arguments[1];
102217
- n3 = e3.showLogs, r3 = e3.useSessionCache, o3 = e3.dontFetchResources, i3 = e3.fetchTimeout, a3 = e3.fetchConcurrency, s3 = e3.skipResources, l2 = e3.compressResources, c2 = e3.serializeResources, u2 = e3.removeReverseProxyURLPrefixes;
102252
+ n3 = e3.showLogs, r3 = e3.useSessionCache, o3 = e3.dontFetchResources, i3 = e3.fetchTimeout, a3 = e3.fetchConcurrency, s3 = e3.skipResources, c2 = e3.compressResources, u2 = e3.serializeResources, h2 = e3.removeReverseProxyURLPrefixes;
102218
102253
  }
102219
- const d2 = function(e3, t4 = Date.now()) {
102254
+ const p2 = function(e3, t4 = Date.now()) {
102220
102255
  const n4 = [], r4 = [], o4 = e3 ? (...e4) => console.warn("[dom-snapshot]", `[+${Date.now() - t4}ms]`, ...e4) : () => {
102221
102256
  }, i4 = e3 ? (...e4) => console.error("[dom-snapshot]", `[+${Date.now() - t4}ms]`, ...e4) : () => {
102222
102257
  };
@@ -102235,13 +102270,13 @@ creating temp style for access.`), r3 = Hh(e3);
102235
102270
  i4(e4, ...t5);
102236
102271
  }, getWarnings: () => n4, getErrors: () => r4 };
102237
102272
  }(!!n3, Date.now());
102238
- d2.log("processPage start"), d2.log(`skipResources length: ${s3 && s3.length}`);
102239
- const p2 = r3 && function({ log: e3, sessionStorage: t4 }) {
102273
+ p2.log("processPage start"), p2.log(`skipResources length: ${s3 && s3.length}`);
102274
+ const m2 = r3 && function({ log: e3, sessionStorage: t4 }) {
102240
102275
  let n4;
102241
102276
  try {
102242
102277
  const e4 = t4 || ("undefined" != typeof window ? window.sessionStorage : void 0);
102243
102278
  if (e4) {
102244
- const t5 = e4.getItem(Xh);
102279
+ const t5 = e4.getItem(Jh);
102245
102280
  n4 = t5 ? JSON.parse(t5) : {};
102246
102281
  }
102247
102282
  } catch (t5) {
@@ -102257,10 +102292,10 @@ creating temp style for access.`), r3 = Hh(e3);
102257
102292
  }, persist: function() {
102258
102293
  if (n4) {
102259
102294
  const e4 = t4 || ("undefined" != typeof window ? window.sessionStorage : void 0);
102260
- e4 && e4.setItem(Xh, JSON.stringify(n4));
102295
+ e4 && e4.setItem(Jh, JSON.stringify(n4));
102261
102296
  }
102262
102297
  } };
102263
- }({ log: d2.log }), m2 = {}, f2 = function({ styleSheetCache: e3, CSSRule: t4 = window.CSSRule, removeReverseProxyURLPrefixes: n4 }) {
102298
+ }({ log: p2.log }), f2 = {}, g2 = function({ styleSheetCache: e3, CSSRule: t4 = window.CSSRule, removeReverseProxyURLPrefixes: n4 }) {
102264
102299
  return function r4(o4) {
102265
102300
  return Jl(Array.from(o4.cssRules || []).reduce((o5, i4) => {
102266
102301
  const a4 = { [t4.IMPORT_RULE]: () => {
@@ -102270,7 +102305,7 @@ creating temp style for access.`), r3 = Hh(e3);
102270
102305
  return (null == i4 ? void 0 : i4.cssRules) && s4.push(...r4(i4)), o5.concat(s4);
102271
102306
  }, [])).filter((e4) => "#" !== e4[0]);
102272
102307
  };
102273
- }({ styleSheetCache: m2, removeReverseProxyURLPrefixes: Boolean(null == u2 ? void 0 : u2.length) }), g2 = function({ styleSheetCache: e3 }) {
102308
+ }({ styleSheetCache: f2, removeReverseProxyURLPrefixes: Boolean(null == h2 ? void 0 : h2.length) }), b2 = function({ styleSheetCache: e3 }) {
102274
102309
  return function(t4, n4) {
102275
102310
  const r4 = Kh(n4.map((e4) => {
102276
102311
  try {
@@ -102287,18 +102322,18 @@ creating temp style for access.`), r3 = Hh(e3);
102287
102322
  }(n5) === t4;
102288
102323
  });
102289
102324
  };
102290
- }({ styleSheetCache: m2 }), b2 = function(e3) {
102325
+ }({ styleSheetCache: f2 }), k2 = function(e3) {
102291
102326
  return function(t4, n4 = true) {
102292
102327
  return Jl(Array.from(t4.querySelectorAll("style")).reduce((r4, o4) => {
102293
102328
  const i4 = n4 ? Array.from(t4.styleSheets).find((e4) => e4.ownerNode === o4) : o4.sheet;
102294
102329
  return i4 ? r4.concat(e3(i4)) : r4;
102295
102330
  }, []));
102296
102331
  };
102297
- }(f2), k2 = function(e3) {
102332
+ }(g2), w2 = function(e3) {
102298
102333
  return function(t4) {
102299
102334
  return t4.adoptedStyleSheets ? Jl(t4.adoptedStyleSheets.reduce((t5, n4) => t5.concat(e3(n4)), [])) : [];
102300
102335
  };
102301
- }(f2), w2 = function({ parser: e3, decoder: t4, extractResourceUrlsFromStyleTags: n4 }) {
102336
+ }(g2), v2 = function({ parser: e3, decoder: t4, extractResourceUrlsFromStyleTags: n4 }) {
102302
102337
  return function(r4) {
102303
102338
  const o4 = (t4 || new TextDecoder("utf-8")).decode(r4), i4 = (e3 || new DOMParser()).parseFromString(o4, "image/svg+xml"), a4 = Array.from(i4.querySelectorAll("img[srcset]")).map((e4) => {
102304
102339
  const t5 = e4.getAttribute("srcset");
@@ -102308,7 +102343,7 @@ creating temp style for access.`), r3 = Hh(e3);
102308
102343
  }(i4);
102309
102344
  return a4.concat(s4).concat(l3).concat(c3).concat(u3).concat(h3).filter((e4) => "#" !== e4[0]);
102310
102345
  };
102311
- }({ extractResourceUrlsFromStyleTags: b2 }), v2 = function({ fetch: e3 = window.fetch, AbortController: t4 = window.AbortController, timeout: n4 = 1e4, mediaDownloadTimeout: r4 = 3e4 } = {}) {
102346
+ }({ extractResourceUrlsFromStyleTags: k2 }), x2 = function({ fetch: e3 = Gh(), AbortController: t4 = window.AbortController, timeout: n4 = 1e4, mediaDownloadTimeout: r4 = 3e4 } = {}) {
102312
102347
  return function(o4) {
102313
102348
  return new Promise((i4, a4) => {
102314
102349
  const s4 = new t4(), l3 = () => {
@@ -102324,7 +102359,7 @@ creating temp style for access.`), r3 = Hh(e3);
102324
102359
  }).then(i4).catch((e4) => a4(e4));
102325
102360
  });
102326
102361
  };
102327
- }({ timeout: i3 }), x2 = function({ fetchUrl: e3, findStyleSheetByUrl: t4, getCorsFreeStyleSheet: n4, extractResourcesFromStyleSheet: r4, extractResourcesFromSvg: o4, sessionCache: i4, cache: a4 = {}, compress: s4, serialize: l3, log: c3 = Zh }) {
102362
+ }({ timeout: i3 }), S2 = function({ fetchUrl: e3, findStyleSheetByUrl: t4, getCorsFreeStyleSheet: n4, extractResourcesFromStyleSheet: r4, extractResourcesFromSvg: o4, sessionCache: i4, cache: a4 = {}, compress: s4, serialize: l3, log: c3 = Zh }) {
102328
102363
  return function({ url: u3, documents: h3, getResourceUrlsAndBlobs: d3, forceCreateStyle: p3 = false, skipResources: m3 }) {
102329
102364
  if (!a4[u3])
102330
102365
  if (i4 && i4.getItem(u3)) {
@@ -102382,14 +102417,14 @@ creating temp style for access.`), r3 = Hh(e3);
102382
102417
  }), c3("cleared from sessionStorage:", u3);
102383
102418
  }
102384
102419
  };
102385
- }({ fetchUrl: v2, findStyleSheetByUrl: g2, getCorsFreeStyleSheet: Gh, extractResourcesFromStyleSheet: f2, extractResourcesFromSvg: w2, log: d2.log, sessionCache: p2, compress: l2, serialize: c2 }), S2 = function({ processResource: e3, aggregateResourceUrlsAndBlobs: t4, concurrency: n4 = 100 }) {
102420
+ }({ fetchUrl: x2, findStyleSheetByUrl: b2, getCorsFreeStyleSheet: Xh, extractResourcesFromStyleSheet: g2, extractResourcesFromSvg: v2, log: p2.log, sessionCache: m2, compress: c2, serialize: u2 }), C2 = function({ processResource: e3, aggregateResourceUrlsAndBlobs: t4, concurrency: n4 = 100 }) {
102386
102421
  if (!Number.isInteger(n4) || n4 < 1)
102387
102422
  throw new TypeError(`concurrency must be an integer >= 1, got ${n4}`);
102388
102423
  const r4 = nc(n4);
102389
102424
  return function n5({ documents: o4, urls: i4, forceCreateStyle: a4 = false, skipResources: s4 }) {
102390
102425
  return Promise.all(i4.map((t5) => r4(() => e3({ url: t5, documents: o4, getResourceUrlsAndBlobs: n5, forceCreateStyle: a4, skipResources: s4 })))).then((e4) => t4(e4));
102391
102426
  };
102392
- }({ processResource: x2, aggregateResourceUrlsAndBlobs: ec, concurrency: a3 });
102427
+ }({ processResource: S2, aggregateResourceUrlsAndBlobs: ec, concurrency: a3 });
102393
102428
  return function t4(n4, r4 = n4.location.href) {
102394
102429
  const i4 = function(e3) {
102395
102430
  const t5 = e3.querySelectorAll("base")[0] && e3.querySelectorAll("base")[0].href;
@@ -102444,8 +102479,8 @@ creating temp style for access.`), r3 = Hh(e3);
102444
102479
  return l3.setAttribute("data-applitools-selector", n8), l3.setAttribute("data-applitools-recovered", true), i5(l3, n8);
102445
102480
  }
102446
102481
  r6(t8);
102447
- var c3 = t8.getAttribute("data-applitools-selector"), u4 = c3 ? c3 + " " + n8 : n8;
102448
- return t8.setAttribute("data-applitools-selector", u4), '[data-applitools-selector~="' + n8 + '"]';
102482
+ var c3 = t8.getAttribute("data-applitools-selector"), u3 = c3 ? c3 + " " + n8 : n8;
102483
+ return t8.setAttribute("data-applitools-selector", u3), '[data-applitools-selector~="' + n8 + '"]';
102449
102484
  }
102450
102485
  return function(e3) {
102451
102486
  return e3 && e3.__esModule && Object.prototype.hasOwnProperty.call(e3, "default") ? e3.default : e3;
@@ -102489,12 +102524,12 @@ creating temp style for access.`), r3 = Hh(e3);
102489
102524
  }, void 0);
102490
102525
  return o4 += e3.length, t6;
102491
102526
  });
102492
- }(h2), { cdt: u3, docRoots: m3, canvasElements: f3, frames: g3, inlineFrames: w3, crossFrames: v3, linkUrls: x3, imageBlobs: C2, videoBlobs: z2 } = Gl(n4, i4, d2), A2 = Kh(m3.map((e3) => b2(e3))), T2 = Kh(m3.map((e3) => k2(e3))), O2 = (B2 = i4, function(e3) {
102527
+ }(d2), { cdt: h3, docRoots: f3, canvasElements: g3, frames: b3, inlineFrames: v3, crossFrames: x3, linkUrls: S3, imageBlobs: z2, videoBlobs: A2 } = Gl(n4, i4, p2), T2 = Kh(f3.map((e3) => k2(e3))), O2 = Kh(f3.map((e3) => w2(e3))), L2 = (P2 = i4, function(e3) {
102493
102528
  try {
102494
- return _(y(e3, B2));
102529
+ return _(y(e3, P2));
102495
102530
  } catch (e4) {
102496
102531
  }
102497
- }), L2 = Jl(Array.from(x3).concat(Array.from(A2)).concat(Array.from(T2))).map((e3) => e3.trim()).reduce((e3, t5) => {
102532
+ }), E2 = Jl(Array.from(S3).concat(Array.from(T2)).concat(Array.from(O2))).map((e3) => e3.trim()).reduce((e3, t5) => {
102498
102533
  e3.push(t5);
102499
102534
  const n5 = function(e4) {
102500
102535
  return e4 && e4.replace(/(\\[0-9a-fA-F]{1,6}\s?)/g, (e5) => {
@@ -102503,21 +102538,21 @@ creating temp style for access.`), r3 = Hh(e3);
102503
102538
  }) || e4;
102504
102539
  }(t5);
102505
102540
  return n5 !== t5 && e3.push(n5), e3;
102506
- }, []).map(O2).map(Vh).filter(Qh), E2 = o3 ? Promise.resolve({ resourceUrls: L2, blobsObj: {} }) : S2({ documents: m3, urls: L2, skipResources: s3 }).then((e3) => (p2 && p2.persist(), e3)), R2 = Yh(f3, { log: d2.log, compress: l2, serialize: c2 }), N2 = E2.then((e3) => function(e4, { doc: t5, fetchedBlobs: n5, log: r5, compress: o4, serialize: i5, sessionCache: a5 }) {
102541
+ }, []).map(L2).map(Vh).filter(ed).filter((e3) => !l2 || e3 !== Vh(r4)), R2 = o3 ? Promise.resolve({ resourceUrls: E2, blobsObj: {} }) : C2({ documents: f3, urls: E2, skipResources: s3 }).then((e3) => (m2 && m2.persist(), e3)), N2 = Qh(g3, { log: p2.log, compress: c2, serialize: u2 }), I2 = R2.then((e3) => function(e4, { doc: t5, fetchedBlobs: n5, log: r5, compress: o4, serialize: i5, sessionCache: a5 }) {
102507
102542
  if (!t5.body || 0 === e4.length)
102508
102543
  return Promise.resolve([]);
102509
102544
  const s4 = new Set(Object.keys(n5)), l3 = e4.filter(({ url: e5 }) => !(s4.has("blob:" + e5) || a5 && a5.getItem("blob:" + e5))), c3 = t5.createElement("canvas");
102510
102545
  c3.style.display = "none";
102511
- const u4 = Zl(t5.body);
102512
- return u4.appendChild(c3), Promise.all(l3.map(({ element: e5, url: t6, cdtNode: n6 }) => {
102546
+ const u3 = Zl(t5.body);
102547
+ return u3.appendChild(c3), Promise.all(l3.map(({ element: e5, url: t6, cdtNode: n6 }) => {
102513
102548
  try {
102514
- return c3.width = e5.naturalWidth, c3.height = e5.naturalHeight, c3.getContext("2d").drawImage(Zl.unwrap(e5), 0, 0), Yh([{ url: t6, element: c3, cdtNode: n6 }], { log: r5, compress: o4, serialize: i5 });
102549
+ return c3.width = e5.naturalWidth, c3.height = e5.naturalHeight, c3.getContext("2d").drawImage(Zl.unwrap(e5), 0, 0), Qh([{ url: t6, element: c3, cdtNode: n6 }], { log: r5, compress: o4, serialize: i5 });
102515
102550
  } catch (e6) {
102516
102551
  }
102517
102552
  })).then((e5) => Kh(e5)).catch().finally(() => {
102518
- u4.removeChild(c3);
102553
+ u3.removeChild(c3);
102519
102554
  });
102520
- }(C2, { fetchedBlobs: e3.blobsObj, doc: n4, log: d2.log, compress: l2, serialize: c2, sessionCache: p2 })), I2 = E2.then((e3) => function(e4, { doc: t5, fetchedBlobs: n5, compress: r5, serialize: o4, sessionCache: i5 }) {
102555
+ }(z2, { fetchedBlobs: e3.blobsObj, doc: n4, log: p2.log, compress: c2, serialize: u2, sessionCache: m2 })), j2 = R2.then((e3) => function(e4, { doc: t5, fetchedBlobs: n5, compress: r5, serialize: o4, sessionCache: i5 }) {
102521
102556
  if (!t5.body)
102522
102557
  return Promise.resolve([]);
102523
102558
  const a5 = new Set(Object.keys(n5)), s4 = e4.filter(({ url: e5 }) => !(a5.has("blob:" + e5) || i5 && i5.getItem("blob:" + e5)));
@@ -102533,18 +102568,18 @@ creating temp style for access.`), r3 = Hh(e3);
102533
102568
  }, { once: true }), e5.play(), a6.start(), setTimeout(() => a6.requestData(), 1e3);
102534
102569
  });
102535
102570
  })).then((e5) => Kh(e5));
102536
- }(z2, { fetchedBlobs: e3.blobsObj, doc: n4, log: d2.log, compress: l2, serialize: c2, sessionCache: p2 })), j2 = g3.map(({ element: e3, url: n5 }) => t4(e3.contentDocument, n5)), D2 = w3.map(({ element: e3, url: n5 }) => t4(e3.contentDocument, n5));
102537
- var B2;
102538
- return Promise.all([E2, R2, N2, I2, ...j2, ...D2]).then(function(e3) {
102539
- const { resourceUrls: t5, blobsObj: n5 } = e3[0], o4 = e3[1], s4 = e3[2], l3 = e3[3], c3 = e3.slice(4), p3 = P2("src"), m4 = P2("data-applitools-selector"), f4 = m4 ? `[data-applitools-selector="${m4}"]` : void 0, g4 = function(e4) {
102571
+ }(A2, { fetchedBlobs: e3.blobsObj, doc: n4, log: p2.log, compress: c2, serialize: u2, sessionCache: m2 })), D2 = b3.map(({ element: e3, url: n5 }) => t4(e3.contentDocument, n5)), B2 = v3.map(({ element: e3, url: n5 }) => t4(e3.contentDocument, n5));
102572
+ var P2;
102573
+ return Promise.all([R2, N2, I2, j2, ...D2, ...B2]).then(function(e3) {
102574
+ const { resourceUrls: t5, blobsObj: n5 } = e3[0], o4 = e3[1], s4 = e3[2], l3 = e3[3], c3 = e3.slice(4), u3 = F2("src"), m3 = F2("data-applitools-selector"), f4 = m3 ? `[data-applitools-selector="${m3}"]` : void 0, g4 = function(e4) {
102540
102575
  return Object.keys(e4).map((t6) => Object.assign({ url: t6.replace(/^blob:/, "") }, e4[t6]));
102541
- }(n5).concat(o4).concat(s4).concat(l3), b3 = [...d2.getWarnings()], y2 = [];
102576
+ }(n5).concat(o4).concat(s4).concat(l3), b4 = [...p2.getWarnings()], y2 = [];
102542
102577
  for (const e4 of g4)
102543
- 599 === e4.errorStatusCode || 504 === e4.errorStatusCode ? (t5.push(e4.url), b3.push(`${e4.errorStatusCode}:${e4.url}`)) : y2.push(e4);
102544
- const k3 = { cdt: u3, url: r4, srcAttr: p3, resourceUrls: t5.map((e4) => e4.replace(/^blob:/, "")), blobs: y2, frames: c3, crossFrames: v3 };
102578
+ 599 === e4.errorStatusCode || 504 === e4.errorStatusCode ? (t5.push(e4.url), b4.push(`${e4.errorStatusCode}:${e4.url}`)) : y2.push(e4);
102579
+ const k3 = { cdt: h3, url: r4, srcAttr: u3, resourceUrls: t5.map((e4) => e4.replace(/^blob:/, "")), blobs: y2, frames: c3, crossFrames: x3 };
102545
102580
  void 0 !== a4 && (k3.safeSelectors = a4), void 0 !== f4 && (k3.selector = f4), i4 !== r4 && (k3.baseUri = i4);
102546
102581
  try {
102547
- h2 && (w4 = h2, ((x4 = function(e4) {
102582
+ d2 && (w3 = d2, ((v4 = function(e4) {
102548
102583
  (e4 = e4 && e4[0]) && "function" == typeof e4.forEach && e4.forEach(function(e5) {
102549
102584
  e5.removeAttribute("data-applitools-selector");
102550
102585
  var t6 = e5;
@@ -102559,23 +102594,23 @@ creating temp style for access.`), r3 = Hh(e3);
102559
102594
  } catch (e6) {
102560
102595
  }
102561
102596
  });
102562
- }) && x4.__esModule && Object.prototype.hasOwnProperty.call(x4, "default") ? x4.default : x4)(w4));
102597
+ }) && v4.__esModule && Object.prototype.hasOwnProperty.call(v4, "default") ? v4.default : v4)(w3));
102563
102598
  } catch (e4) {
102564
- b3.push(e4.message);
102599
+ b4.push(e4.message);
102565
102600
  }
102566
- var w4, x4;
102567
- b3.length > 0 && (k3.warnings = b3);
102568
- const _2 = d2.getErrors();
102601
+ var w3, v4;
102602
+ b4.length > 0 && (k3.warnings = b4);
102603
+ const _2 = p2.getErrors();
102569
102604
  return _2.length > 0 && (k3.errors = _2), k3;
102570
102605
  });
102571
- function P2(e3) {
102606
+ function F2(e3) {
102572
102607
  return n4.defaultView && n4.defaultView.frameElement && n4.defaultView.frameElement.getAttribute(e3);
102573
102608
  }
102574
- }(t3).then((e3) => (d2.log("processPage end"), e3.scriptVersion = "4.16.2", e3));
102609
+ }(t3).then((e3) => (p2.log("processPage end"), e3.scriptVersion = "4.16.4", e3));
102575
102610
  }, window[x], "domSnapshotResult");
102576
102611
  return function(e3) {
102577
102612
  try {
102578
- return JSON.stringify(Jh(e3)(e3));
102613
+ return JSON.stringify(td(e3)(e3));
102579
102614
  } catch (e4) {
102580
102615
  return JSON.stringify({ status: "ERROR", error: e4.message });
102581
102616
  }
@@ -102825,6 +102860,7 @@ var require_take_dom_snapshot = __commonJS({
102825
102860
  const arg = {
102826
102861
  dontFetchResources: settings === null || settings === void 0 ? void 0 : settings.disableBrowserFetching,
102827
102862
  skipResources: settings === null || settings === void 0 ? void 0 : settings.skipResources,
102863
+ skipRootHtmlResource: settings === null || settings === void 0 ? void 0 : settings.skipRootHtmlResource,
102828
102864
  fetchConcurrency: settings === null || settings === void 0 ? void 0 : settings.fetchConcurrency,
102829
102865
  removeReverseProxyURLPrefixes: Boolean(process.env.APPLITOOLS_SCRIPT_REMOVE_REVERSE_PROXY_URL_PREFIXES),
102830
102866
  chunkByteLength: (_a2 = settings === null || settings === void 0 ? void 0 : settings.chunkByteLength) !== null && _a2 !== void 0 ? _a2 : Number(process.env.APPLITOOLS_SCRIPT_RESULT_MAX_BYTE_LENGTH) || (environment.isIOS ? 1e5 : 250 * 1024 * 1024),
@@ -103415,7 +103451,7 @@ var require_to_generated_selectors = __commonJS({
103415
103451
  init_setInterval();
103416
103452
  Object.defineProperty(exports, "__esModule", { value: true });
103417
103453
  exports.toGeneratedSelectors = void 0;
103418
- function toGeneratedSelectors({ elementReferences, logger }) {
103454
+ function toGeneratedSelectors({ elementReferences, logger, logDeprecations }) {
103419
103455
  var _a, _b, _c;
103420
103456
  const elementReferencesToMark = [
103421
103457
  (_a = elementReferences.target) !== null && _a !== void 0 ? _a : [],
@@ -103462,6 +103498,9 @@ var require_to_generated_selectors = __commonJS({
103462
103498
  safeSelector: isError ? null : safeSelector
103463
103499
  };
103464
103500
  });
103501
+ } else if (target || scrolling || calculate.length) {
103502
+ logDeprecations("toGeneratedSelectors: `transformElementReference` was unexpectedly called.");
103503
+ throw new Error("toGeneratedSelectors: `transformElementReference` was unexpectedly called.");
103465
103504
  }
103466
103505
  return { target, scrolling, calculate };
103467
103506
  }
@@ -103552,7 +103591,8 @@ var require_take_snapshots2 = __commonJS({
103552
103591
  const { elementReferences, getSafeCheckSettings } = (0, to_safe_check_settings_1.toSafeCheckSettings)({ settings });
103553
103592
  const { elementReferencesToMark, getGeneratedSelectors } = (0, to_generated_selectors_1.toGeneratedSelectors)({
103554
103593
  elementReferences,
103555
- logger
103594
+ logger,
103595
+ logDeprecations
103556
103596
  });
103557
103597
  let snapshots;
103558
103598
  if (environment.isWeb) {
@@ -103573,6 +103613,7 @@ var require_take_snapshots2 = __commonJS({
103573
103613
  layoutBreakpoints: settings.layoutBreakpoints,
103574
103614
  environments: uniqueEnvironments,
103575
103615
  skipResources: ufgClient.getCachedResourceUrls(),
103616
+ skipRootHtmlResource: settings.skipRootHtmlResource,
103576
103617
  lazyLoad: settings.lazyLoad,
103577
103618
  elementReferences: elementReferencesToMark
103578
103619
  },
@@ -103599,6 +103640,7 @@ var require_take_snapshots2 = __commonJS({
103599
103640
  }
103600
103641
  }
103601
103642
  } else {
103643
+ logDeprecations("takeSnapshots: taking native snapshots is no longer supported. How did you reach this message? (dead code)");
103602
103644
  throw new Error("Taking native (non-web) snapshots via VisualGridRunner is no longer supported. Please use ClassicRunner for native apps.");
103603
103645
  }
103604
103646
  await currentContext.focus();
@@ -103634,6 +103676,19 @@ var require_take_snapshots2 = __commonJS({
103634
103676
  title,
103635
103677
  userAgent
103636
103678
  }));
103679
+ function logDeprecations(...args) {
103680
+ core.logEvent({
103681
+ settings: {
103682
+ level: "Error",
103683
+ event: {
103684
+ type: "SDK.unreachableCodeReached",
103685
+ message: args.join(" ")
103686
+ },
103687
+ ...account.eyesServer
103688
+ },
103689
+ logger
103690
+ });
103691
+ }
103637
103692
  };
103638
103693
  }
103639
103694
  exports.makeTakeSnapshots = makeTakeSnapshots;
@@ -104435,7 +104490,7 @@ var require_create_render_target = __commonJS({
104435
104490
  const [snapshotResources, ...frameResources] = await Promise.all([
104436
104491
  processResources({
104437
104492
  resources: Object.fromEntries([
104438
- ...((_a = snapshot.resourceUrls) !== null && _a !== void 0 ? _a : []).map((url) => {
104493
+ ...((_a = snapshot.resourceUrls) !== null && _a !== void 0 ? _a : []).filter((url) => (settings === null || settings === void 0 ? void 0 : settings.skipRootHtmlResource) ? url !== snapshot.url : true).map((url) => {
104439
104494
  return [url, (0, resource_1.makeResource)({ url, environment: settings === null || settings === void 0 ? void 0 : settings.environment })];
104440
104495
  }),
104441
104496
  ...Object.entries((_b = snapshot.resourceContents) !== null && _b !== void 0 ? _b : {}).map(([url, resource]) => {
@@ -118086,6 +118141,8 @@ var require_dom = __commonJS({
118086
118141
  }
118087
118142
  do {
118088
118143
  newFirst.parentNode = parent;
118144
+ var targetDoc = parent.ownerDocument || parent;
118145
+ _updateOwnerDocument(newFirst, targetDoc);
118089
118146
  } while (newFirst !== newLast && (newFirst = newFirst.nextSibling));
118090
118147
  _onUpdateChild(parent.ownerDocument || parent, parent);
118091
118148
  if (node.nodeType == DOCUMENT_FRAGMENT_NODE) {
@@ -118093,6 +118150,25 @@ var require_dom = __commonJS({
118093
118150
  }
118094
118151
  return node;
118095
118152
  }
118153
+ function _updateOwnerDocument(node, newOwnerDocument) {
118154
+ if (node.ownerDocument === newOwnerDocument) {
118155
+ return;
118156
+ }
118157
+ node.ownerDocument = newOwnerDocument;
118158
+ if (node.nodeType === ELEMENT_NODE && node.attributes) {
118159
+ for (var i = 0; i < node.attributes.length; i++) {
118160
+ var attr = node.attributes.item(i);
118161
+ if (attr) {
118162
+ attr.ownerDocument = newOwnerDocument;
118163
+ }
118164
+ }
118165
+ }
118166
+ var child = node.firstChild;
118167
+ while (child) {
118168
+ _updateOwnerDocument(child, newOwnerDocument);
118169
+ child = child.nextSibling;
118170
+ }
118171
+ }
118096
118172
  function _appendSingleChild(parentNode, newChild) {
118097
118173
  if (newChild.parentNode) {
118098
118174
  newChild.parentNode.removeChild(newChild);
@@ -118107,6 +118183,8 @@ var require_dom = __commonJS({
118107
118183
  }
118108
118184
  parentNode.lastChild = newChild;
118109
118185
  _onUpdateChild(parentNode.ownerDocument, parentNode, newChild);
118186
+ var targetDoc = parentNode.ownerDocument || parentNode;
118187
+ _updateOwnerDocument(newChild, targetDoc);
118110
118188
  return newChild;
118111
118189
  }
118112
118190
  Document2.prototype = {
@@ -118133,7 +118211,7 @@ var require_dom = __commonJS({
118133
118211
  return newChild;
118134
118212
  }
118135
118213
  _insertBefore(this, newChild, refChild);
118136
- newChild.ownerDocument = this;
118214
+ _updateOwnerDocument(newChild, this);
118137
118215
  if (this.documentElement === null && newChild.nodeType === ELEMENT_NODE) {
118138
118216
  this.documentElement = newChild;
118139
118217
  }
@@ -118147,7 +118225,7 @@ var require_dom = __commonJS({
118147
118225
  },
118148
118226
  replaceChild: function(newChild, oldChild) {
118149
118227
  _insertBefore(this, newChild, oldChild, assertPreReplacementValidityInDocument);
118150
- newChild.ownerDocument = this;
118228
+ _updateOwnerDocument(newChild, this);
118151
118229
  if (oldChild) {
118152
118230
  this.removeChild(oldChild);
118153
118231
  }
@@ -118243,7 +118321,22 @@ var require_dom = __commonJS({
118243
118321
  node.appendData(data);
118244
118322
  return node;
118245
118323
  },
118324
+ /**
118325
+ * Returns a new CDATASection node whose data is `data`.
118326
+ *
118327
+ * __This implementation differs from the specification:__
118328
+ * - calling this method on an HTML document does not throw `NotSupportedError`.
118329
+ *
118330
+ * @param {string} data
118331
+ * @returns {CDATASection}
118332
+ * @throws DOMException with code `INVALID_CHARACTER_ERR` if `data` contains `"]]>"`.
118333
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/createCDATASection
118334
+ * @see https://dom.spec.whatwg.org/#dom-document-createcdatasection
118335
+ */
118246
118336
  createCDATASection: function(data) {
118337
+ if (data.indexOf("]]>") !== -1) {
118338
+ throw new DOMException2(INVALID_CHARACTER_ERR, 'data contains "]]>"');
118339
+ }
118247
118340
  var node = new CDATASection();
118248
118341
  node.ownerDocument = this;
118249
118342
  node.appendData(data);
@@ -118646,7 +118739,7 @@ var require_dom = __commonJS({
118646
118739
  node.data.replace(/[<&>]/g, _xmlEncoder)
118647
118740
  );
118648
118741
  case CDATA_SECTION_NODE:
118649
- return buf.push("<![CDATA[", node.data, "]]>");
118742
+ return buf.push("<![CDATA[", node.data.replace(/]]>/g, "]]]]><![CDATA[>"), "]]>");
118650
118743
  case COMMENT_NODE:
118651
118744
  return buf.push("<!--", node.data, "-->");
118652
118745
  case DOCUMENT_TYPE_NODE:
@@ -121474,7 +121567,7 @@ var require_sax = __commonJS({
121474
121567
  function parseInstruction(source, start, domBuilder) {
121475
121568
  var end = source.indexOf("?>", start);
121476
121569
  if (end) {
121477
- var match = source.substring(start, end).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);
121570
+ var match = source.substring(start, end).match(/^<\?(\S*)\s*([\s\S]*?)$/);
121478
121571
  if (match) {
121479
121572
  var len = match[0].length;
121480
121573
  domBuilder.processingInstruction(match[1], match[2]);
@@ -125056,7 +125149,7 @@ var require_get_base_eyes2 = __commonJS({
125056
125149
  });
125057
125150
  return getBaseEyesWithCache;
125058
125151
  async function getBaseEyes({ settings, logger = mainLogger }) {
125059
- var _a;
125152
+ var _a, _b;
125060
125153
  logger = logger.extend(mainLogger);
125061
125154
  logger.log(`Command "getBaseEyes" is called with settings`, settings);
125062
125155
  const ufgClient = await eyes2.core.getUFGClient({
@@ -125074,7 +125167,7 @@ var require_get_base_eyes2 = __commonJS({
125074
125167
  const baseEyes = await eyes2.core.base.openEyes({
125075
125168
  settings: {
125076
125169
  ...defaultSettings,
125077
- fallbackBaselineId: (_a = settings.environment) === null || _a === void 0 ? void 0 : _a.fallbackBaselineId,
125170
+ fallbackBaselineId: (_b = (_a = settings.environment) === null || _a === void 0 ? void 0 : _a.fallbackBaselineId) !== null && _b !== void 0 ? _b : defaultSettings.fallbackBaselineId,
125078
125171
  environment: {
125079
125172
  ...defaultSettings.environment,
125080
125173
  ...environment,
@@ -125119,7 +125212,8 @@ var require_create_render_target_from_snapshot = __commonJS({
125119
125212
  ...snapshot.settings.headers
125120
125213
  },
125121
125214
  proxy: snapshot.account.eyesServer.proxy,
125122
- autProxy: snapshot.settings.autProxy
125215
+ autProxy: snapshot.settings.autProxy,
125216
+ skipRootHtmlResource: snapshot.settings.skipRootHtmlResource
125123
125217
  },
125124
125218
  logger
125125
125219
  });
@@ -128186,7 +128280,7 @@ var require_package3 = __commonJS({
128186
128280
  "../core/package.json"(exports, module) {
128187
128281
  module.exports = {
128188
128282
  name: "@applitools/core",
128189
- version: "4.59.1",
128283
+ version: "4.59.3",
128190
128284
  homepage: "https://applitools.com",
128191
128285
  bugs: {
128192
128286
  url: "https://github.com/applitools/eyes.sdk.javascript1/issues"
@@ -129728,7 +129822,7 @@ var require_package4 = __commonJS({
129728
129822
  "../eyes/package.json"(exports, module) {
129729
129823
  module.exports = {
129730
129824
  name: "@applitools/eyes",
129731
- version: "1.38.13",
129825
+ version: "1.38.15",
129732
129826
  keywords: [
129733
129827
  "applitools",
129734
129828
  "eyes",
@@ -131343,7 +131437,7 @@ var require_package5 = __commonJS({
131343
131437
  "package.json"(exports, module) {
131344
131438
  module.exports = {
131345
131439
  name: "@applitools/eyes-browser",
131346
- version: "1.6.10",
131440
+ version: "1.6.12",
131347
131441
  type: "module",
131348
131442
  keywords: [
131349
131443
  "applitools",