@applitools/eyes-browser 1.4.7 → 1.4.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,79 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.4.9](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.4.8...js/eyes-browser@1.4.9) (2024-08-12)
4
+
5
+
6
+ ### Dependencies
7
+
8
+ * @applitools/dom-capture bumped to 11.3.1
9
+ #### Performance Improvements
10
+
11
+ * link tag without href ([#2450](https://github.com/Applitools-Dev/sdk/issues/2450)) ([523c3cd](https://github.com/Applitools-Dev/sdk/commit/523c3cd1cb003e9144015885b522e1d82e616b7a))
12
+ * @applitools/core bumped to 4.18.1
13
+ #### Bug Fixes
14
+
15
+ * layoutbreakpoints stale dom ([#2456](https://github.com/Applitools-Dev/sdk/issues/2456)) ([a4329d6](https://github.com/Applitools-Dev/sdk/commit/a4329d6d280d27763e0c8ff6374bd26861183939))
16
+
17
+
18
+
19
+ * @applitools/eyes bumped to 1.22.1
20
+ #### Bug Fixes
21
+
22
+ * update ios devices enums ([9b4614f](https://github.com/Applitools-Dev/sdk/commit/9b4614f09bbbe42cf99824d76893f9067aab2cc4))
23
+
24
+
25
+
26
+
27
+ ## [1.4.8](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.4.7...js/eyes-browser@1.4.8) (2024-07-23)
28
+
29
+
30
+ ### Dependencies
31
+
32
+ * @applitools/driver bumped to 1.18.0
33
+ #### Features
34
+
35
+ * disable broker url cache ([#2428](https://github.com/Applitools-Dev/sdk/issues/2428)) ([cb8d5fe](https://github.com/Applitools-Dev/sdk/commit/cb8d5fefb13d3ab42984d2bd4d4ac3d4e10646b0))
36
+
37
+
38
+ #### Bug Fixes
39
+
40
+ * executing web script on mobile environment ([#2380](https://github.com/Applitools-Dev/sdk/issues/2380)) ([da2e551](https://github.com/Applitools-Dev/sdk/commit/da2e551e01082d3cc21b9da5b43e6680233c080d))
41
+ * @applitools/ufg-client bumped to 1.12.3
42
+ #### Bug Fixes
43
+
44
+ * update makeUploadResource to include apiKey in the cache key ([#2411](https://github.com/Applitools-Dev/sdk/issues/2411)) ([4114c58](https://github.com/Applitools-Dev/sdk/commit/4114c58ec16fa855374b23810cef1e36d4bb53a7))
45
+
46
+
47
+ #### Performance Improvements
48
+
49
+ * trim file content when logging it ([#2437](https://github.com/Applitools-Dev/sdk/issues/2437)) ([02ec1f7](https://github.com/Applitools-Dev/sdk/commit/02ec1f79a323af2e89a7428b75212707c761d1ca))
50
+ * @applitools/core bumped to 4.18.0
51
+ #### Features
52
+
53
+ * disable broker url cache ([#2428](https://github.com/Applitools-Dev/sdk/issues/2428)) ([cb8d5fe](https://github.com/Applitools-Dev/sdk/commit/cb8d5fefb13d3ab42984d2bd4d4ac3d4e10646b0))
54
+
55
+
56
+
57
+ * @applitools/spec-driver-webdriver bumped to 1.1.11
58
+
59
+ * @applitools/spec-driver-selenium bumped to 1.5.82
60
+
61
+ * @applitools/spec-driver-puppeteer bumped to 1.4.11
62
+
63
+ * @applitools/screenshoter bumped to 3.8.35
64
+
65
+ * @applitools/nml-client bumped to 1.8.9
66
+
67
+ * @applitools/ec-client bumped to 1.9.3
68
+
69
+ * @applitools/eyes bumped to 1.22.0
70
+ #### Features
71
+
72
+ * disable broker url cache ([#2428](https://github.com/Applitools-Dev/sdk/issues/2428)) ([cb8d5fe](https://github.com/Applitools-Dev/sdk/commit/cb8d5fefb13d3ab42984d2bd4d4ac3d4e10646b0))
73
+
74
+
75
+
76
+
3
77
  ## [1.4.7](https://github.com/Applitools-Dev/sdk/compare/js/eyes-browser@1.4.6...js/eyes-browser@1.4.7) (2024-06-26)
4
78
 
5
79
 
package/dist/index.js CHANGED
@@ -32450,7 +32450,7 @@ var require_driver = __commonJS({
32450
32450
  await (scrollingElement === null || scrollingElement === void 0 ? void 0 : scrollingElement.refresh());
32451
32451
  return refreshThis;
32452
32452
  }
32453
- async refresh({ reset } = {}) {
32453
+ async refresh({ reset, name } = {}) {
32454
32454
  if (reset) {
32455
32455
  if (utils34.general.getEnvValue("AVOID_DRIVER_STATE_REST", "boolean")) {
32456
32456
  this._logger.log(`Skipping reset of the driver state`);
@@ -32463,6 +32463,9 @@ var require_driver = __commonJS({
32463
32463
  this._state = {};
32464
32464
  }
32465
32465
  }
32466
+ if (name === "NATIVE_APP") {
32467
+ return reset ? resetReference(this) : this;
32468
+ }
32466
32469
  const spec = this._spec;
32467
32470
  let currentContext = this.currentContext.target;
32468
32471
  let contextInfo;
@@ -32867,7 +32870,7 @@ var require_driver = __commonJS({
32867
32870
  }
32868
32871
  try {
32869
32872
  await this._spec.switchWorld(this.target, name);
32870
- await this.refresh({ reset: true });
32873
+ await this.refresh({ reset: true, name });
32871
32874
  } catch (error) {
32872
32875
  this._logger.error("Unable to switch world due to the error", error);
32873
32876
  throw new Error(`Unable to switch world, the original error was: ${error.message}`);
@@ -35009,9 +35012,9 @@ ${l2}`}`, { bundledCss: i2, unfetchedResources: u2 };
35009
35012
  r2 = Array.from(n3.childNodes).map((e5) => e5.nodeValue).join(""), s2 = o2;
35010
35013
  else if (n3 && E(n3)) {
35011
35014
  const c2 = w(n3);
35012
- !function(e5) {
35015
+ c2 ? function(e5) {
35013
35016
  return e5 && e5.startsWith("data:");
35014
- }(c2) ? (s2 = t4(c2, o2), r2 = e4(s2)) : (s2 = o2, r2 = c2.match(/,(.+)/)[1]), a2 = void 0 === r2;
35017
+ }(c2) ? (s2 = o2, r2 = c2.match(/,(.+)/)[1]) : (s2 = t4(c2, o2), r2 = e4(s2)) : r2 = "", a2 = void 0 === r2;
35015
35018
  }
35016
35019
  return { cssText: r2, styleBaseUrl: s2, isUnfetched: a2 };
35017
35020
  };
@@ -35152,7 +35155,7 @@ ${l2}`}`, { bundledCss: i2, unfetchedResources: u2 };
35152
35155
  return i4 && (E3.shadowRoot = i4), E3;
35153
35156
  }
35154
35157
  }(t4);
35155
- i2(c2.doCaptureDoc), u2(c2.waitForImages), await Promise.all(l2), i2(c2.waitForImages), T2.version = "1.3.0", T2.scriptVersion = "11.3.0";
35158
+ i2(c2.doCaptureDoc), u2(c2.waitForImages), await Promise.all(l2), i2(c2.waitForImages), T2.version = "1.3.0", T2.scriptVersion = "11.3.1";
35156
35159
  const N2 = f2.length ? `${f2.join("\n")}
35157
35160
  ` : "", b2 = d2.size ? `${Array.from(d2).join("\n")}
35158
35161
  ` : "", S2 = JSON.stringify({ separator: p2, cssStartToken: h2, cssEndToken: h2, iframeStartToken: `"${m2}`, iframeEndToken: `${m2}"` });
@@ -36096,12 +36099,16 @@ var require_get_nml_client = __commonJS({
36096
36099
  var nml_client_1 = require_dist5();
36097
36100
  var clients = /* @__PURE__ */ new Map();
36098
36101
  function makeGetNMLClient({ client, logger: mainLogger }) {
36099
- return async function getNMLClient({ driver, settings, logger }) {
36102
+ return {
36103
+ getNMLClient,
36104
+ clearNMLClientCache
36105
+ };
36106
+ async function getNMLClient({ driver, settings, logger }) {
36100
36107
  if (client)
36101
36108
  return client;
36102
36109
  logger = logger.extend(mainLogger);
36103
36110
  const { sessionId } = await driver.getDriverInfo();
36104
- const cacheKey = sessionId ? JSON.stringify({ sessionId, settings }) : JSON.stringify({ guid: driver.guid, settings });
36111
+ const cacheKey = sessionId !== null && sessionId !== void 0 ? sessionId : driver.guid;
36105
36112
  const clientFromCache = clients.get(cacheKey);
36106
36113
  if (clientFromCache) {
36107
36114
  return clientFromCache;
@@ -36113,7 +36120,12 @@ var require_get_nml_client = __commonJS({
36113
36120
  clients.set(cacheKey, nmlClient);
36114
36121
  return nmlClient;
36115
36122
  }
36116
- };
36123
+ }
36124
+ async function clearNMLClientCache(driver) {
36125
+ const { sessionId } = await driver.getDriverInfo();
36126
+ const cacheKey = sessionId !== null && sessionId !== void 0 ? sessionId : driver.guid;
36127
+ clients.delete(cacheKey);
36128
+ }
36117
36129
  }
36118
36130
  exports.makeGetNMLClient = makeGetNMLClient;
36119
36131
  }
@@ -37623,7 +37635,7 @@ var require_core2 = __commonJS({
37623
37635
  locate: (0, locate_1.makeLocate)({ spec, core, logger }),
37624
37636
  locateText: (0, locate_text_1.makeLocateText)({ spec, core, logger }),
37625
37637
  extractText: (0, extract_text_1.makeExtractText)({ spec, core, logger }),
37626
- getNMLClient: (0, get_nml_client_1.makeGetNMLClient)({ client: clients === null || clients === void 0 ? void 0 : clients.nml, logger }),
37638
+ ...(0, get_nml_client_1.makeGetNMLClient)({ client: clients === null || clients === void 0 ? void 0 : clients.nml, logger }),
37627
37639
  openEyes: (0, open_eyes_1.makeOpenEyes)({ spec, core, logger })
37628
37640
  };
37629
37641
  });
@@ -44100,7 +44112,7 @@ var require_take_dom_snapshots = __commonJS({
44100
44112
  await (0, wait_for_lazy_load_1.waitForLazyLoad)({ context: currentContext, settings: settings.lazyLoad, logger });
44101
44113
  }
44102
44114
  await beforeEachSnapshot();
44103
- if (settings.elementReferences && (index === 0 || settings.layoutBreakpoints.reload)) {
44115
+ if (settings.elementReferences) {
44104
44116
  safeSelectorResult = await (0, generate_safe_selectors_1.generateSafeSelectors)({
44105
44117
  context: currentContext,
44106
44118
  elementReferences: settings.elementReferences
@@ -44472,6 +44484,7 @@ var require_req_ufg = __commonJS({
44472
44484
  exports.makeReqUFG = void 0;
44473
44485
  var req_1 = (init_dist(), __toCommonJS(dist_exports));
44474
44486
  var utils34 = __importStar(require_browser3());
44487
+ var buffer_1 = require_buffer();
44475
44488
  function makeReqUFG({ settings, logger }) {
44476
44489
  var _a;
44477
44490
  return (0, req_1.makeReq)({
@@ -44511,7 +44524,19 @@ var require_req_ufg = __commonJS({
44511
44524
  requestId = `${counter++}--${guid}`;
44512
44525
  request.headers.set("x-applitools-eyes-client-request-id", requestId);
44513
44526
  }
44514
- logger === null || logger === void 0 ? void 0 : logger.log(`Request "${options === null || options === void 0 ? void 0 : options.name}" [${requestId}] will be sent to the address "[${request.method}]${request.url}" with body`, options === null || options === void 0 ? void 0 : options.body);
44527
+ const { body, originalSize, isTrimmed } = trimBody();
44528
+ logger === null || logger === void 0 ? void 0 : logger.log(`Request "${options === null || options === void 0 ? void 0 : options.name}" [${requestId}] will be sent to the address "[${request.method}]${request.url}" with body${isTrimmed ? ` (trimmed from ${originalSize})` : ""}`, body);
44529
+ function trimBody() {
44530
+ if ((options === null || options === void 0 ? void 0 : options.body) instanceof buffer_1.Buffer || (options === null || options === void 0 ? void 0 : options.body) instanceof Uint8Array) {
44531
+ return {
44532
+ body: options.body.subarray(0, 10),
44533
+ originalSize: options.body.length,
44534
+ isTrimmed: options.body.length > 10
44535
+ };
44536
+ } else {
44537
+ return { body: options === null || options === void 0 ? void 0 : options.body };
44538
+ }
44539
+ }
44515
44540
  },
44516
44541
  beforeRetry({ request, attempt, error, response, options }) {
44517
44542
  var _a;
@@ -44737,7 +44762,7 @@ var require_requests3 = __commonJS({
44737
44762
  }
44738
44763
  async function checkResources({ resources, logger: logger2 = mainLogger }) {
44739
44764
  logger2 = logger2.extend(mainLogger, { tags: [`ufg-request-${utils34.general.shortid()}`] });
44740
- logger2.log('Request "checkResources" called for resources', resources);
44765
+ logger2.log('Request "checkResources" called for resources', resources.map(trimValueForResource));
44741
44766
  const response = await req2("./resources/query/resources-exist", {
44742
44767
  name: "checkResources",
44743
44768
  method: "POST",
@@ -44754,7 +44779,7 @@ var require_requests3 = __commonJS({
44754
44779
  }
44755
44780
  async function uploadResource({ resource, logger: logger2 = mainLogger }) {
44756
44781
  logger2 = logger2.extend(mainLogger, { tags: [`ufg-request-${utils34.general.shortid()}`] });
44757
- logger2.log('Request "uploadResource" called for resource', resource);
44782
+ logger2.log('Request "uploadResource" called for resource', trimValueForResource(resource));
44758
44783
  await req2(`./resources/sha256/${resource.hash.hash}`, {
44759
44784
  name: "uploadResource",
44760
44785
  method: "PUT",
@@ -44905,6 +44930,9 @@ var require_requests3 = __commonJS({
44905
44930
  }
44906
44931
  return pathSelector;
44907
44932
  }
44933
+ function trimValueForResource(resource) {
44934
+ return { ...resource, value: resource.value.subarray(0, 10) };
44935
+ }
44908
44936
  }
44909
44937
  });
44910
44938
 
@@ -84846,14 +84874,14 @@ var require_upload_resource = __commonJS({
84846
84874
  var logger_1 = require_browser6();
84847
84875
  var throat_1 = __importDefault(require_throat());
84848
84876
  var utils34 = __importStar(require_browser3());
84849
- function makeUploadResource({ requests, batchingTimeout = 300, concurrency = 100, logger: mainLogger }) {
84877
+ function makeUploadResource({ requests, batchingTimeout = 300, concurrency = 100, logger: mainLogger, apiKey }) {
84850
84878
  const uploadedResources = /* @__PURE__ */ new Set();
84851
84879
  const requestedResources = /* @__PURE__ */ new Map();
84852
84880
  const uploadResourceWithConcurrency = (0, throat_1.default)(concurrency, requests.uploadResource);
84853
84881
  const uploadResourceWithBatching = utils34.general.batchify(uploadResources, { timeout: batchingTimeout });
84854
84882
  return async function uploadResource({ resource, logger = mainLogger }) {
84855
84883
  logger = logger.extend(mainLogger, { tags: [`upload-resource-${utils34.general.shortid()}`] });
84856
- const hash = resource.hash.hash;
84884
+ const hash = resource.hash.hash + "_" + apiKey;
84857
84885
  if (uploadedResources.has(hash)) {
84858
84886
  return Promise.resolve();
84859
84887
  } else if (requestedResources.has(hash)) {
@@ -84884,6 +84912,9 @@ var require_upload_resource = __commonJS({
84884
84912
  uploadResourceWithConcurrency(options).then(resolve, reject);
84885
84913
  }
84886
84914
  });
84915
+ if (presentedResources.length !== batch.length) {
84916
+ throw new Error(`Unexpected number of presented resources - ${presentedResources.length} instead of ${batch.length}`);
84917
+ }
84887
84918
  } catch (err) {
84888
84919
  batch.forEach(([, { reject }]) => reject(err));
84889
84920
  }
@@ -84925,7 +84956,7 @@ var require_client2 = __commonJS({
84925
84956
  apiKey: settings.apiKey,
84926
84957
  logger
84927
84958
  });
84928
- const uploadResource = (0, upload_resource_1.makeUploadResource)({ requests, logger });
84959
+ const uploadResource = (0, upload_resource_1.makeUploadResource)({ requests, logger, apiKey: settings.apiKey });
84929
84960
  const processResources = (0, process_resources_1.makeProcessResources)({
84930
84961
  fetchResource,
84931
84962
  cache,
@@ -85900,7 +85931,7 @@ var require_core3 = __commonJS({
85900
85931
  locateText: (0, locate_text_1.makeLocateText)({ spec, core, logger }),
85901
85932
  extractText: (0, extract_text_1.makeExtractText)({ spec, core, logger }),
85902
85933
  getUFGClient: (0, get_ufg_client_1.makeGetUFGClient)({ client: clients === null || clients === void 0 ? void 0 : clients.ufg, fetchConcurrency, asyncCache, logger }),
85903
- getNMLClient: (0, get_nml_client_1.makeGetNMLClient)({ client: clients === null || clients === void 0 ? void 0 : clients.nml, logger }),
85934
+ ...(0, get_nml_client_1.makeGetNMLClient)({ client: clients === null || clients === void 0 ? void 0 : clients.nml, logger }),
85904
85935
  openEyes: (0, open_eyes_1.makeOpenEyes)({ spec, core, logger })
85905
85936
  };
85906
85937
  });
@@ -86767,6 +86798,9 @@ var require_open_eyes4 = __commonJS({
86767
86798
  },
86768
86799
  logger
86769
86800
  });
86801
+ if (settings.disableBrokerUrlCache && driver) {
86802
+ await core.clearNMLClientCache(driver);
86803
+ }
86770
86804
  const getTypedEyes = (0, get_typed_eyes_1.makeGetTypedEyes)({
86771
86805
  type,
86772
86806
  settings,
@@ -87283,7 +87317,7 @@ var require_package2 = __commonJS({
87283
87317
  "../core/package.json"(exports, module) {
87284
87318
  module.exports = {
87285
87319
  name: "@applitools/core",
87286
- version: "4.17.0",
87320
+ version: "4.18.1",
87287
87321
  homepage: "https://applitools.com",
87288
87322
  bugs: {
87289
87323
  url: "https://github.com/applitools/eyes.sdk.javascript1/issues"
@@ -87325,12 +87359,12 @@ var require_package2 = __commonJS({
87325
87359
  ],
87326
87360
  scripts: {
87327
87361
  lint: "run --top-level eslint '**/*.ts'",
87328
- build: "yarn build:dist",
87362
+ build: "yarn build:dist && yarn build:bin",
87363
+ "build:short": "yarn build:dist",
87329
87364
  "build:dist": "run --top-level tsc --project ./tsconfig.build.json",
87330
87365
  "build:bin": "sea",
87331
87366
  "build:bin:zip": "zip -j ./bin/core.zip $(find ./bin -type f -not -name '*.zip' -not -name '*.tar.gz' | xargs)",
87332
87367
  "build:bin:tgz": "tar -czf ./bin/core.tar.gz $(find ./bin -type f -not -name '*.zip' -not -name '*.tar.gz' | xargs)",
87333
- "build:full": "yarn build:dist && yarn build:bin",
87334
87368
  test: "run --top-level mocha './test/**/*.spec.ts' --exclude './test/bin/**' --parallel --jobs ${MOCHA_JOBS:-15} --exit",
87335
87369
  "test:local": "MOCHA_OMIT_TAGS=sauce run test",
87336
87370
  "test:sauce": "MOCHA_ONLY_TAGS=sauce run test",
@@ -87377,7 +87411,7 @@ var require_package2 = __commonJS({
87377
87411
  "node-fetch": "2.6.7",
87378
87412
  semver: "7.6.2",
87379
87413
  webdriver: "7.31.1",
87380
- ws: "8.13.0",
87414
+ ws: "8.17.1",
87381
87415
  yargs: "17.7.2"
87382
87416
  },
87383
87417
  devDependencies: {
@@ -87758,7 +87792,7 @@ var require_core4 = __commonJS({
87758
87792
  base,
87759
87793
  getViewportSize: spec && (0, get_viewport_size_1.makeGetViewportSize)({ spec, logger }),
87760
87794
  setViewportSize: spec && (0, set_viewport_size_1.makeSetViewportSize)({ spec, logger }),
87761
- getNMLClient: (0, get_nml_client_1.makeGetNMLClient)({ client: clients === null || clients === void 0 ? void 0 : clients.nml, logger }),
87795
+ ...(0, get_nml_client_1.makeGetNMLClient)({ client: clients === null || clients === void 0 ? void 0 : clients.nml, logger }),
87762
87796
  getECClient: (0, get_ec_client_1.makeGetECClient)({ logger }),
87763
87797
  getAccountInfo: (0, get_account_info_1.makeGetAccountInfo)({ core, logger }),
87764
87798
  // Note: `defaultBase` is passesd for `base`, and `cores` is not passed here on purpose, so that a manager will create its own base, which would apply the correct concurrency value that was passed to the manager.
@@ -91402,7 +91436,7 @@ var require_package3 = __commonJS({
91402
91436
  "../eyes/package.json"(exports, module) {
91403
91437
  module.exports = {
91404
91438
  name: "@applitools/eyes",
91405
- version: "1.21.0",
91439
+ version: "1.22.1",
91406
91440
  keywords: [
91407
91441
  "applitools",
91408
91442
  "eyes",
@@ -91610,44 +91644,19 @@ init_setImmediate();
91610
91644
  init_buffer();
91611
91645
  init_setInterval();
91612
91646
  var IosDeviceNameEnum = /* @__PURE__ */ ((IosDeviceNameEnum2) => {
91613
- IosDeviceNameEnum2["iPad_5"] = "iPad (5th generation)";
91614
- IosDeviceNameEnum2["iPad_6"] = "iPad (6th generation)";
91615
91647
  IosDeviceNameEnum2["iPad_7"] = "iPad (7th generation)";
91616
- IosDeviceNameEnum2["iPad_8"] = "iPad (8th generation)";
91617
91648
  IosDeviceNameEnum2["iPad_9"] = "iPad (9th generation)";
91618
- IosDeviceNameEnum2["iPad_10"] = "iPad (10th generation)";
91619
- IosDeviceNameEnum2["iPad_Air_2"] = "iPad Air 2";
91620
- IosDeviceNameEnum2["iPad_Air_3"] = "iPad Air (3rd generation)";
91621
91649
  IosDeviceNameEnum2["iPad_Air_4"] = "iPad Air (4th generation)";
91622
- IosDeviceNameEnum2["iPad_Air_5"] = "iPad Air (5th generation)";
91623
- IosDeviceNameEnum2["iPad_mini_4"] = "iPad mini 4";
91624
- IosDeviceNameEnum2["iPad_mini_5"] = "iPad mini (5th generation)";
91625
- IosDeviceNameEnum2["iPad_mini_6"] = "iPad mini (6th generation)";
91626
- IosDeviceNameEnum2["iPad_Pro_9_7_inch_1"] = "iPad Pro (9.7-inch)";
91627
- IosDeviceNameEnum2["iPad_Pro_10_5_inch_1"] = "iPad Pro (10.5-inch)";
91628
- IosDeviceNameEnum2["iPad_Pro_11_inch_1"] = "iPad Pro (11-inch) (1st generation)";
91629
- IosDeviceNameEnum2["iPad_Pro_12_9_inch_1"] = "iPad Pro (12.9-inch) (1st generation)";
91630
- IosDeviceNameEnum2["iPad_Pro_11_inch_2"] = "iPad Pro (11-inch) (2nd generation)";
91631
- IosDeviceNameEnum2["iPad_Pro_12_9_inch_2"] = "iPad Pro (12.9-inch) (2nd generation)";
91632
- IosDeviceNameEnum2["iPad_Pro_11_inch_3"] = "iPad Pro (11-inch) (3rd generation)";
91633
91650
  IosDeviceNameEnum2["iPad_Pro_3"] = "iPad Pro (12.9-inch) (3rd generation)";
91634
91651
  IosDeviceNameEnum2["iPad_Pro_12_9_inch_3"] = "iPad Pro (12.9-inch) (3rd generation)";
91635
91652
  IosDeviceNameEnum2["iPad_Pro_4"] = "iPad Pro (11-inch) (4th generation)";
91636
91653
  IosDeviceNameEnum2["iPad_Pro_11_inch_4"] = "iPad Pro (11-inch) (4th generation)";
91637
- IosDeviceNameEnum2["iPad_Pro_12_9_inch_4"] = "iPad Pro (12.9-inch) (4th generation)";
91638
- IosDeviceNameEnum2["iPad_Pro_12_9_inch_5"] = "iPad Pro (12.9-inch) (5th generation)";
91639
- IosDeviceNameEnum2["iPad_Pro_12_9_inch_6"] = "iPad Pro (12.9-inch) (6th generation)";
91640
- IosDeviceNameEnum2["iPhone_6s"] = "iPhone 6s";
91641
- IosDeviceNameEnum2["iPhone_6s_Plus"] = "iPhone 6s Plus";
91642
- IosDeviceNameEnum2["iPhone_7"] = "iPhone 7";
91643
- IosDeviceNameEnum2["iPhone_7_Plus"] = "iPhone 7 Plus";
91644
91654
  IosDeviceNameEnum2["iPhone_8"] = "iPhone 8";
91645
91655
  IosDeviceNameEnum2["iPhone_8_Plus"] = "iPhone 8 Plus";
91646
91656
  IosDeviceNameEnum2["iPhone_X"] = "iPhone X";
91647
91657
  IosDeviceNameEnum2["iPhone_XR"] = "iPhone XR";
91648
91658
  IosDeviceNameEnum2["iPhone_XS"] = "iPhone Xs";
91649
91659
  IosDeviceNameEnum2["iPhone_Xs"] = "iPhone Xs";
91650
- IosDeviceNameEnum2["iPhone_Xs_Max"] = "iPhone Xs Max";
91651
91660
  IosDeviceNameEnum2["iPhone_11"] = "iPhone 11";
91652
91661
  IosDeviceNameEnum2["iPhone_11_Pro_Max"] = "iPhone 11 Pro Max";
91653
91662
  IosDeviceNameEnum2["iPhone_11_Pro"] = "iPhone 11 Pro";
@@ -91656,22 +91665,12 @@ var IosDeviceNameEnum = /* @__PURE__ */ ((IosDeviceNameEnum2) => {
91656
91665
  IosDeviceNameEnum2["iPhone_12_Pro_Max"] = "iPhone 12 Pro Max";
91657
91666
  IosDeviceNameEnum2["iPhone_12_Pro"] = "iPhone 12 Pro";
91658
91667
  IosDeviceNameEnum2["iPhone_13"] = "iPhone 13";
91659
- IosDeviceNameEnum2["iPhone_13_mini"] = "iPhone 13 mini";
91660
91668
  IosDeviceNameEnum2["iPhone_13_Pro_Max"] = "iPhone 13 Pro Max";
91661
91669
  IosDeviceNameEnum2["iPhone_13_Pro"] = "iPhone 13 Pro";
91662
91670
  IosDeviceNameEnum2["iPhone_14"] = "iPhone 14";
91663
- IosDeviceNameEnum2["iPhone_14_Plus"] = "iPhone 14 Plus";
91664
- IosDeviceNameEnum2["iPhone_14_Pro"] = "iPhone 14 Pro";
91665
91671
  IosDeviceNameEnum2["iPhone_14_Pro_Max"] = "iPhone 14 Pro Max";
91666
91672
  IosDeviceNameEnum2["iPhone_15"] = "iPhone 15";
91667
- IosDeviceNameEnum2["iPhone_15_Plus"] = "iPhone 15 Plus";
91668
- IosDeviceNameEnum2["iPhone_15_Pro"] = "iPhone 15 Pro";
91669
91673
  IosDeviceNameEnum2["iPhone_15_Pro_Max"] = "iPhone 15 Pro Max";
91670
- IosDeviceNameEnum2["iPhone_SE"] = "iPhone SE (1st generation)";
91671
- IosDeviceNameEnum2["iPhone_SE_1"] = "iPhone SE (1st generation)";
91672
- IosDeviceNameEnum2["iPhone_SE_2"] = "iPhone SE (2nd generation)";
91673
- IosDeviceNameEnum2["iPhone_SE_3"] = "iPhone SE (3rd generation)";
91674
- IosDeviceNameEnum2["iPod_touch_7"] = "iPod touch (7th generation)";
91675
91674
  return IosDeviceNameEnum2;
91676
91675
  })(IosDeviceNameEnum || {});
91677
91676
 
@@ -95007,6 +95006,19 @@ var ConfigurationData = class {
95007
95006
  this.dontCloseBatches = dontCloseBatches;
95008
95007
  return this;
95009
95008
  }
95009
+ get disableNMLUrlCache() {
95010
+ return this._config.disableNMLUrlCache;
95011
+ }
95012
+ set disableNMLUrlCache(disableNMLUrlCache) {
95013
+ this._config.disableNMLUrlCache = disableNMLUrlCache;
95014
+ }
95015
+ getDisableNMLUrlCache() {
95016
+ return this.disableNMLUrlCache;
95017
+ }
95018
+ setDisableNMLUrlCache(disableNMLUrlCache) {
95019
+ this.disableNMLUrlCache = disableNMLUrlCache;
95020
+ return this;
95021
+ }
95010
95022
  /** @internal */
95011
95023
  toObject() {
95012
95024
  return this._config;
@@ -95046,7 +95058,8 @@ var ConfigurationData = class {
95046
95058
  gitBranchingTimestamp: this.gitMergeBaseTimestamp,
95047
95059
  ignoreGitBranching: this.ignoreGitMergeBase,
95048
95060
  saveDiffs: this.saveDiffs,
95049
- keepBatchOpen: this.dontCloseBatches
95061
+ keepBatchOpen: this.dontCloseBatches,
95062
+ disableBrokerUrlCache: this.disableNMLUrlCache
95050
95063
  }),
95051
95064
  screenshot: utils20.general.removeUndefinedProps({
95052
95065
  fully: this.forceFullPageScreenshot,
@@ -95066,7 +95079,7 @@ var ConfigurationData = class {
95066
95079
  }),
95067
95080
  check: utils20.general.removeUndefinedProps({
95068
95081
  environments: (_b = this.browsersInfo) == null ? void 0 : _b.map((browserInfo) => {
95069
- if (utils20.types.has(browserInfo, "iosDeviceInfo")) {
95082
+ if (utils20.types.has(browserInfo, "iosDeviceInfo") && utils20.types.has(browserInfo.iosDeviceInfo, "iosVersion")) {
95070
95083
  const { iosVersion, ...iosDeviceInfo } = browserInfo.iosDeviceInfo;
95071
95084
  return { iosDeviceInfo: { ...iosDeviceInfo, version: iosVersion } };
95072
95085
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/eyes-browser",
3
- "version": "1.4.7",
3
+ "version": "1.4.9",
4
4
  "keywords": [
5
5
  "applitools",
6
6
  "browser",
@@ -48,7 +48,7 @@
48
48
  "test": "run --top-level mocha './test/**/*.spec.ts'"
49
49
  },
50
50
  "dependencies": {
51
- "@applitools/eyes": "1.21.0"
51
+ "@applitools/eyes": "1.22.1"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@types/node": "^12.20.55",
@@ -1,37 +1,13 @@
1
1
  export declare enum IosDeviceNameEnum {
2
- iPad_5 = "iPad (5th generation)",
3
- iPad_6 = "iPad (6th generation)",
4
2
  iPad_7 = "iPad (7th generation)",
5
- iPad_8 = "iPad (8th generation)",
6
3
  iPad_9 = "iPad (9th generation)",
7
- iPad_10 = "iPad (10th generation)",
8
- iPad_Air_2 = "iPad Air 2",
9
- iPad_Air_3 = "iPad Air (3rd generation)",
10
4
  iPad_Air_4 = "iPad Air (4th generation)",
11
- iPad_Air_5 = "iPad Air (5th generation)",
12
- iPad_mini_4 = "iPad mini 4",
13
- iPad_mini_5 = "iPad mini (5th generation)",
14
- iPad_mini_6 = "iPad mini (6th generation)",
15
- iPad_Pro_9_7_inch_1 = "iPad Pro (9.7-inch)",
16
- iPad_Pro_10_5_inch_1 = "iPad Pro (10.5-inch)",
17
- iPad_Pro_11_inch_1 = "iPad Pro (11-inch) (1st generation)",
18
- iPad_Pro_12_9_inch_1 = "iPad Pro (12.9-inch) (1st generation)",
19
- iPad_Pro_11_inch_2 = "iPad Pro (11-inch) (2nd generation)",
20
- iPad_Pro_12_9_inch_2 = "iPad Pro (12.9-inch) (2nd generation)",
21
- iPad_Pro_11_inch_3 = "iPad Pro (11-inch) (3rd generation)",
22
5
  /** @deprecated use {@link iPad_Pro_12_9_inch_3 } instead */
23
6
  iPad_Pro_3 = "iPad Pro (12.9-inch) (3rd generation)",
24
7
  iPad_Pro_12_9_inch_3 = "iPad Pro (12.9-inch) (3rd generation)",
25
8
  /** @deprecated use {@link iPad_Pro_11_inch_4 } instead */
26
9
  iPad_Pro_4 = "iPad Pro (11-inch) (4th generation)",
27
10
  iPad_Pro_11_inch_4 = "iPad Pro (11-inch) (4th generation)",
28
- iPad_Pro_12_9_inch_4 = "iPad Pro (12.9-inch) (4th generation)",
29
- iPad_Pro_12_9_inch_5 = "iPad Pro (12.9-inch) (5th generation)",
30
- iPad_Pro_12_9_inch_6 = "iPad Pro (12.9-inch) (6th generation)",
31
- iPhone_6s = "iPhone 6s",
32
- iPhone_6s_Plus = "iPhone 6s Plus",
33
- iPhone_7 = "iPhone 7",
34
- iPhone_7_Plus = "iPhone 7 Plus",
35
11
  iPhone_8 = "iPhone 8",
36
12
  iPhone_8_Plus = "iPhone 8 Plus",
37
13
  iPhone_X = "iPhone X",
@@ -39,7 +15,6 @@ export declare enum IosDeviceNameEnum {
39
15
  /** @deprecated use {@link iPhone_Xs } instead */
40
16
  iPhone_XS = "iPhone Xs",
41
17
  iPhone_Xs = "iPhone Xs",
42
- iPhone_Xs_Max = "iPhone Xs Max",
43
18
  iPhone_11 = "iPhone 11",
44
19
  iPhone_11_Pro_Max = "iPhone 11 Pro Max",
45
20
  iPhone_11_Pro = "iPhone 11 Pro",
@@ -48,22 +23,11 @@ export declare enum IosDeviceNameEnum {
48
23
  iPhone_12_Pro_Max = "iPhone 12 Pro Max",
49
24
  iPhone_12_Pro = "iPhone 12 Pro",
50
25
  iPhone_13 = "iPhone 13",
51
- iPhone_13_mini = "iPhone 13 mini",
52
26
  iPhone_13_Pro_Max = "iPhone 13 Pro Max",
53
27
  iPhone_13_Pro = "iPhone 13 Pro",
54
28
  iPhone_14 = "iPhone 14",
55
- iPhone_14_Plus = "iPhone 14 Plus",
56
- iPhone_14_Pro = "iPhone 14 Pro",
57
29
  iPhone_14_Pro_Max = "iPhone 14 Pro Max",
58
30
  iPhone_15 = "iPhone 15",
59
- iPhone_15_Plus = "iPhone 15 Plus",
60
- iPhone_15_Pro = "iPhone 15 Pro",
61
- iPhone_15_Pro_Max = "iPhone 15 Pro Max",
62
- /** @deprecated use {@link iPhone_SE_1 } instead */
63
- iPhone_SE = "iPhone SE (1st generation)",
64
- iPhone_SE_1 = "iPhone SE (1st generation)",
65
- iPhone_SE_2 = "iPhone SE (2nd generation)",
66
- iPhone_SE_3 = "iPhone SE (3rd generation)",
67
- iPod_touch_7 = "iPod touch (7th generation)"
31
+ iPhone_15_Pro_Max = "iPhone 15 Pro Max"
68
32
  }
69
33
  export type IosDeviceName = `${IosDeviceNameEnum}`;
@@ -84,6 +84,7 @@ export type Configuration<TSpec extends Core.SpecType = Core.SpecType> = {
84
84
  };
85
85
  disableBrowserFetching?: boolean;
86
86
  waitBeforeCapture?: number;
87
+ disableNMLUrlCache?: boolean;
87
88
  };
88
89
  export declare class ConfigurationData<TSpec extends Core.SpecType = Core.SpecType> implements Required<Configuration<TSpec>> {
89
90
  protected static readonly _spec: Core.SpecDriver<Core.SpecType>;
@@ -379,6 +380,10 @@ export declare class ConfigurationData<TSpec extends Core.SpecType = Core.SpecTy
379
380
  getDontCloseBatches(): boolean;
380
381
  /** @undocumented */
381
382
  setDontCloseBatches(dontCloseBatches: boolean): this;
383
+ get disableNMLUrlCache(): boolean;
384
+ set disableNMLUrlCache(disableNMLUrlCache: boolean);
385
+ getDisableNMLUrlCache(): boolean;
386
+ setDisableNMLUrlCache(disableNMLUrlCache: boolean): this;
382
387
  /** @internal */
383
388
  toObject(): Configuration<TSpec>;
384
389
  /** @internal */
@@ -47,7 +47,9 @@ export type AndroidDeviceInfo = {
47
47
  };
48
48
  };
49
49
  export type IOSMultiDeviceInfo = {
50
- deviceName: IosMultiDeviceTarget;
50
+ iosDeviceInfo: {
51
+ deviceName: IosMultiDeviceTarget;
52
+ };
51
53
  };
52
54
  export type RenderInfoLegacy = RenderInfoBase & (DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | ChromeEmulationInfoLegacy);
53
55
  export type RenderInfo = RenderInfoBase & (DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | IOSMultiDeviceInfo);