@applitools/core 3.11.8 → 4.0.1

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.
Files changed (59) hide show
  1. package/CHANGELOG.md +135 -0
  2. package/dist/abort.js +3 -3
  3. package/dist/automation/abort.js +7 -7
  4. package/dist/automation/close.js +7 -7
  5. package/dist/automation/get-results.js +2 -2
  6. package/dist/automation/utils/{extract-renderer-key.js → to-environment-key.js} +4 -8
  7. package/dist/automation/utils/uniquify-environments.js +27 -0
  8. package/dist/classic/check-and-close.js +36 -35
  9. package/dist/classic/check.js +36 -35
  10. package/dist/classic/get-base-eyes.js +3 -12
  11. package/dist/classic/open-eyes.js +7 -7
  12. package/dist/classic/utils/extract-default-environments.js +70 -0
  13. package/dist/classic/utils/take-screenshots.js +1 -1
  14. package/dist/close-batch.js +3 -3
  15. package/dist/close.js +3 -3
  16. package/dist/core.js +2 -2
  17. package/dist/delete-test.js +3 -3
  18. package/dist/extract-text.js +3 -3
  19. package/dist/get-account-info.js +3 -3
  20. package/dist/get-manager-results.js +1 -1
  21. package/dist/locate-text.js +3 -3
  22. package/dist/locate.js +3 -3
  23. package/dist/log-event.js +3 -3
  24. package/dist/open-eyes.js +18 -18
  25. package/dist/ufg/check-and-close.js +39 -39
  26. package/dist/ufg/check.js +39 -39
  27. package/dist/ufg/get-base-eyes.js +4 -4
  28. package/dist/ufg/open-eyes.js +5 -5
  29. package/dist/ufg/utils/{extract-default-renderers.js → extract-default-environment.js} +3 -3
  30. package/dist/ufg/utils/take-dom-snapshots.js +17 -17
  31. package/dist/universal/core-server.js +12 -13
  32. package/dist/utils/{extract-environment.js → extract-test-environment.js} +3 -3
  33. package/package.json +28 -25
  34. package/types/abort.d.ts +3 -3
  35. package/types/automation/abort.d.ts +3 -3
  36. package/types/automation/close.d.ts +3 -3
  37. package/types/automation/types.d.ts +23 -26
  38. package/types/automation/utils/to-environment-key.d.ts +2 -0
  39. package/types/automation/utils/uniquify-environments.d.ts +2 -0
  40. package/types/classic/check-and-close.d.ts +5 -5
  41. package/types/classic/check.d.ts +3 -3
  42. package/types/classic/utils/extract-default-environments.d.ts +9 -0
  43. package/types/classic/utils/take-screenshots.d.ts +2 -2
  44. package/types/close.d.ts +3 -3
  45. package/types/get-typed-eyes.d.ts +1 -4
  46. package/types/types.d.ts +1 -1
  47. package/types/ufg/check-and-close.d.ts +5 -5
  48. package/types/ufg/check.d.ts +3 -3
  49. package/types/ufg/core.d.ts +1 -1
  50. package/types/ufg/utils/extract-default-environment.d.ts +5 -0
  51. package/types/ufg/utils/take-dom-snapshots.d.ts +3 -4
  52. package/types/utils/extract-test-environment.d.ts +2 -0
  53. package/dist/automation/utils/uniquify-renderers.js +0 -27
  54. package/dist/classic/utils/extract-default-renderers.js +0 -72
  55. package/types/automation/utils/extract-renderer-key.d.ts +0 -2
  56. package/types/automation/utils/uniquify-renderers.d.ts +0 -2
  57. package/types/classic/utils/extract-default-renderers.d.ts +0 -9
  58. package/types/ufg/utils/extract-default-renderers.d.ts +0 -5
  59. package/types/utils/extract-environment.d.ts +0 -2
@@ -24,11 +24,11 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.makeGetBaseEyes = void 0;
27
- const extract_renderer_key_1 = require("../automation/utils/extract-renderer-key");
27
+ const to_environment_key_1 = require("../automation/utils/to-environment-key");
28
28
  const utils = __importStar(require("@applitools/utils"));
29
29
  function makeGetBaseEyes({ settings: defaultSettings, eyes, logger: mainLogger, }) {
30
30
  const getBaseEyesWithCache = utils.general.wrap(getBaseEyes, (getBaseEyes, options) => {
31
- const key = (0, extract_renderer_key_1.extractRendererKey)(options.settings.renderer);
31
+ const key = (0, to_environment_key_1.toEnvironmentKey)(options.settings.environment);
32
32
  let item = eyes.storage.get(key);
33
33
  if (!item) {
34
34
  item = { eyes: utils.promises.makeControlledPromise(), jobs: [] };
@@ -42,19 +42,10 @@ function makeGetBaseEyes({ settings: defaultSettings, eyes, logger: mainLogger,
42
42
  async function getBaseEyes({ settings, logger = mainLogger, }) {
43
43
  logger = logger.extend(mainLogger);
44
44
  logger.log(`Command "getBaseEyes" is called with settings`, settings);
45
- let environment;
46
- if (utils.types.has(settings.renderer, 'environment')) {
47
- environment = settings.renderer.environment;
48
- }
49
- else {
50
- // NOTE: ios and android handled by nml-client
51
- // TODO: chrome emulation, desktop
52
- environment = { renderer: settings.renderer };
53
- }
54
45
  return eyes.core.base.openEyes({
55
46
  settings: {
56
47
  ...defaultSettings,
57
- environment: { ...defaultSettings.environment, ...environment, properties: settings.renderer.properties },
48
+ environment: { ...defaultSettings.environment, ...settings.environment },
58
49
  },
59
50
  logger,
60
51
  });
@@ -31,7 +31,7 @@ const check_and_close_1 = require("./check-and-close");
31
31
  const close_1 = require("../automation/close");
32
32
  const abort_1 = require("../automation/abort");
33
33
  const get_results_1 = require("../automation/get-results");
34
- const extract_default_renderers_1 = require("./utils/extract-default-renderers");
34
+ const extract_default_environments_1 = require("./utils/extract-default-environments");
35
35
  const abort_controller_1 = require("abort-controller");
36
36
  const utils = __importStar(require("@applitools/utils"));
37
37
  function makeOpenEyes({ core, spec, logger: mainLogger }) {
@@ -50,7 +50,7 @@ function makeOpenEyes({ core, spec, logger: mainLogger }) {
50
50
  settings.environment.ecSessionId = (_c = (await driver.getSessionId())) !== null && _c !== void 0 ? _c : undefined;
51
51
  }
52
52
  }
53
- const renderers = await (0, extract_default_renderers_1.extractDefaultRenderers)({ driver, settings });
53
+ const environments = await (0, extract_default_environments_1.extractDefaultEnvironments)({ driver, settings });
54
54
  const controller = new abort_controller_1.AbortController();
55
55
  const account = await core.getAccountInfo({ settings, logger });
56
56
  return utils.general.extend({}, eyes => {
@@ -66,16 +66,16 @@ function makeOpenEyes({ core, spec, logger: mainLogger }) {
66
66
  ufgServer: account.ufgServer,
67
67
  uploadUrl: account.uploadUrl,
68
68
  stitchingServiceUrl: account.stitchingServiceUrl,
69
- renderEnvironmentsUrl: account.renderEnvironmentsUrl,
69
+ supportedEnvironmentsUrl: account.supportedEnvironmentsUrl,
70
70
  account,
71
71
  },
72
72
  running: true,
73
73
  storage,
74
74
  getBaseEyes: (0, get_base_eyes_1.makeGetBaseEyes)({ settings, eyes, logger }),
75
- check: (0, check_1.makeCheck)({ eyes, target: driver, renderers, spec, signal: controller.signal, logger }),
76
- checkAndClose: (0, check_and_close_1.makeCheckAndClose)({ eyes, target: driver, renderers, spec, signal: controller.signal, logger }),
77
- close: (0, close_1.makeClose)({ eyes, target: driver, renderers, logger }),
78
- abort: (0, abort_1.makeAbort)({ eyes, target: driver, renderers, spec, controller, logger }),
75
+ check: (0, check_1.makeCheck)({ eyes, target: driver, environments, spec, signal: controller.signal, logger }),
76
+ checkAndClose: (0, check_and_close_1.makeCheckAndClose)({ eyes, target: driver, environments, spec, signal: controller.signal, logger }),
77
+ close: (0, close_1.makeClose)({ eyes, target: driver, environments, logger }),
78
+ abort: (0, abort_1.makeAbort)({ eyes, target: driver, environments, spec, controller, logger }),
79
79
  getResults: (0, get_results_1.makeGetResults)({ eyes, logger }),
80
80
  };
81
81
  });
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.extractDefaultEnvironments = void 0;
27
+ const utils = __importStar(require("@applitools/utils"));
28
+ async function extractDefaultEnvironments({ driver, settings, }) {
29
+ var _a, _b, _c;
30
+ const environment = {};
31
+ if (!driver)
32
+ return [(_a = settings === null || settings === void 0 ? void 0 : settings.environment) !== null && _a !== void 0 ? _a : environment];
33
+ const currentContext = driver.currentContext;
34
+ try {
35
+ const driverEnvironment = await driver.getEnvironment();
36
+ const viewport = await driver.getViewport();
37
+ const size = await driver.getViewportSize();
38
+ environment.viewportSize = utils.geometry.scale(size, viewport.viewportScale);
39
+ if (driverEnvironment.isEC)
40
+ environment.ecSessionId = (_b = (await driver.getSessionId())) !== null && _b !== void 0 ? _b : undefined;
41
+ if (driverEnvironment.isWeb)
42
+ environment.userAgent = await driver.getUserAgentLegacy();
43
+ if (driverEnvironment.deviceName)
44
+ environment.deviceName = driverEnvironment.deviceName;
45
+ if (driverEnvironment.isNative && driverEnvironment.platformName) {
46
+ environment.os = driverEnvironment.platformName;
47
+ if (driverEnvironment.platformVersion)
48
+ environment.os += ` ${driverEnvironment.platformVersion}`;
49
+ if (!(settings === null || settings === void 0 ? void 0 : settings.keepPlatformNameAsIs)) {
50
+ if (/^android/i.test(environment.os)) {
51
+ environment.os = `Android${environment.os.slice(7)}`;
52
+ }
53
+ if (/^ios/i.test(environment.os)) {
54
+ environment.os = `iOS${environment.os.slice(3)}`;
55
+ }
56
+ }
57
+ }
58
+ else if (driverEnvironment.isReliable &&
59
+ driverEnvironment.isChromium &&
60
+ ((driverEnvironment.isWindows && Number.parseInt(driverEnvironment.browserVersion) >= 107) ||
61
+ (driverEnvironment.isMac && Number.parseInt(driverEnvironment.browserVersion) >= 90))) {
62
+ environment.os = `${driverEnvironment.platformName} ${(_c = driverEnvironment.platformVersion) !== null && _c !== void 0 ? _c : ''}`.trim();
63
+ }
64
+ return [environment];
65
+ }
66
+ finally {
67
+ await currentContext.focus();
68
+ }
69
+ }
70
+ exports.extractDefaultEnvironments = extractDefaultEnvironments;
@@ -55,6 +55,6 @@ async function takeScreenshots({ driver, settings, logger, }) {
55
55
  : await driver.getViewportSize();
56
56
  }
57
57
  await screenshot.restoreState();
58
- return new Array(settings.renderers.length).fill(baseTarget);
58
+ return new Array(settings.environments.length).fill(baseTarget);
59
59
  }
60
60
  exports.takeScreenshots = takeScreenshots;
@@ -29,9 +29,9 @@ function makeCloseBatch({ core, logger: mainLogger }) {
29
29
  return async function closeBatch({ settings, logger = mainLogger, }) {
30
30
  logger = logger.extend(mainLogger, { tags: [`close-batch-${utils.general.shortid()}`] });
31
31
  (utils.types.isArray(settings) ? settings : [settings]).forEach(settings => {
32
- var _a, _b, _c, _d, _e;
33
- (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_d = (_c = (_b = settings.serverUrl) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
34
- (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
32
+ var _a, _b, _c, _d;
33
+ (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_c = (_b = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('SERVER_URL')) !== null && _c !== void 0 ? _c : 'https://eyesapi.applitools.com');
34
+ (_d = settings.apiKey) !== null && _d !== void 0 ? _d : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
35
35
  });
36
36
  return core.base.closeBatch({ settings, logger });
37
37
  };
package/dist/close.js CHANGED
@@ -25,15 +25,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.makeClose = void 0;
27
27
  const utils = __importStar(require("@applitools/utils"));
28
- function makeClose({ eyes, renderers: defaultRenderers, logger: mainLogger, }) {
28
+ function makeClose({ eyes, environments: defaultEnvironments, logger: mainLogger, }) {
29
29
  return async function close({ settings, config, logger = mainLogger, } = {}) {
30
30
  var _a, _b;
31
31
  logger = logger.extend(mainLogger, { tags: [`close-${utils.general.shortid()}`] });
32
32
  const typedEyes = await eyes.getTypedEyes({ logger });
33
33
  settings = { ...config === null || config === void 0 ? void 0 : config.close, ...settings };
34
34
  (_a = settings.updateBaselineIfNew) !== null && _a !== void 0 ? _a : (settings.updateBaselineIfNew = true);
35
- if (typedEyes.type === 'classic' && !utils.types.isEmpty(defaultRenderers)) {
36
- (_b = settings.renderers) !== null && _b !== void 0 ? _b : (settings.renderers = defaultRenderers);
35
+ if (typedEyes.type === 'classic' && !utils.types.isEmpty(defaultEnvironments)) {
36
+ (_b = settings.environments) !== null && _b !== void 0 ? _b : (settings.environments = defaultEnvironments);
37
37
  }
38
38
  await typedEyes.close({ settings, logger });
39
39
  };
package/dist/core.js CHANGED
@@ -38,11 +38,11 @@ const open_eyes_1 = require("./open-eyes");
38
38
  const make_manager_1 = require("./make-manager");
39
39
  const close_batch_1 = require("./close-batch");
40
40
  const delete_test_1 = require("./delete-test");
41
- const extract_environment_1 = require("./utils/extract-environment");
41
+ const extract_test_environment_1 = require("./utils/extract-test-environment");
42
42
  const utils = __importStar(require("@applitools/utils"));
43
43
  function makeCore({ spec, clients, concurrency, base: defaultBase, environment: defaultEnvironment, agentId = 'core', cwd = process.cwd(), logger: defaultLogger, asyncCache, } = {}) {
44
44
  const logger = (0, logger_1.makeLogger)({ logger: defaultLogger, format: { label: 'core' } });
45
- const environment = (0, extract_environment_1.extractEnvironment)(defaultEnvironment);
45
+ const environment = (0, extract_test_environment_1.extractTestEnvironment)(defaultEnvironment);
46
46
  logger.log(`Core is initialized ${defaultBase ? 'with' : 'without'} custom base core and environment`, environment);
47
47
  const base = defaultBase !== null && defaultBase !== void 0 ? defaultBase : (0, core_base_1.makeCore)({ agentId, cwd, logger });
48
48
  return utils.general.extend(base, core => {
@@ -29,9 +29,9 @@ function makeDeleteTest({ core, logger: mainLogger }) {
29
29
  return async function deleteTest({ settings, logger = mainLogger, }) {
30
30
  logger = logger.extend(mainLogger, { tags: [`delete-test-${utils.general.shortid()}`] });
31
31
  (utils.types.isArray(settings) ? settings : [settings]).forEach(settings => {
32
- var _a, _b, _c, _d, _e;
33
- (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_d = (_c = (_b = settings.serverUrl) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
34
- (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
32
+ var _a, _b, _c, _d;
33
+ (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_c = (_b = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('SERVER_URL')) !== null && _c !== void 0 ? _c : 'https://eyesapi.applitools.com');
34
+ (_d = settings.apiKey) !== null && _d !== void 0 ? _d : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
35
35
  });
36
36
  return core.base.deleteTest({ settings, logger });
37
37
  };
@@ -31,11 +31,11 @@ function makeExtractText({ spec, core, logger: mainLogger }) {
31
31
  logger = logger.extend(mainLogger, { tags: [`extract-text-${utils.general.shortid()}`] });
32
32
  settings = utils.types.isArray(settings) ? settings : [settings];
33
33
  settings = settings.map(settings => {
34
- var _a, _b, _c, _d, _e, _f;
34
+ var _a, _b, _c, _d, _e;
35
35
  settings = { ...config === null || config === void 0 ? void 0 : config.open, ...config === null || config === void 0 ? void 0 : config.screenshot, ...settings };
36
36
  (_a = settings.userCommandId) !== null && _a !== void 0 ? _a : (settings.userCommandId = `extract-text--${utils.general.guid()}`);
37
- (_b = settings.eyesServerUrl) !== null && _b !== void 0 ? _b : (settings.eyesServerUrl = (_e = (_d = (_c = settings.serverUrl) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _d !== void 0 ? _d : utils.general.getEnvValue('SERVER_URL')) !== null && _e !== void 0 ? _e : 'https://eyesapi.applitools.com');
38
- (_f = settings.apiKey) !== null && _f !== void 0 ? _f : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
37
+ (_b = settings.eyesServerUrl) !== null && _b !== void 0 ? _b : (settings.eyesServerUrl = (_d = (_c = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
38
+ (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
39
39
  return settings;
40
40
  });
41
41
  const classicCore = (0, core_1.makeCore)({ spec, base: core.base, logger });
@@ -27,10 +27,10 @@ exports.makeGetAccountInfo = void 0;
27
27
  const utils = __importStar(require("@applitools/utils"));
28
28
  function makeGetAccountInfo({ core, logger: mainLogger }) {
29
29
  return async function getAccountInfo({ settings, logger = mainLogger, }) {
30
- var _a, _b, _c, _d, _e;
30
+ var _a, _b, _c, _d;
31
31
  logger = logger.extend(mainLogger, { tags: [`get-account-info-${utils.general.shortid()}`] });
32
- (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_d = (_c = (_b = settings.serverUrl) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
33
- (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
32
+ (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_c = (_b = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('SERVER_URL')) !== null && _c !== void 0 ? _c : 'https://eyesapi.applitools.com');
33
+ (_d = settings.apiKey) !== null && _d !== void 0 ? _d : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
34
34
  return core.base.getAccountInfo({ settings, logger });
35
35
  };
36
36
  }
@@ -40,7 +40,7 @@ function makeGetManagerResults({ core, storage, logger: mainLogger, }) {
40
40
  result,
41
41
  error: result.status !== 'Passed' ? new test_error_1.TestError(result) : undefined,
42
42
  userTestId: result.userTestId,
43
- renderer: result.renderer,
43
+ environment: result.environment,
44
44
  })));
45
45
  });
46
46
  }
@@ -28,11 +28,11 @@ const core_1 = require("./classic/core");
28
28
  const utils = __importStar(require("@applitools/utils"));
29
29
  function makeLocateText({ spec, core, logger: mainLogger }) {
30
30
  return async function locateText({ target, settings, config, logger = mainLogger, }) {
31
- var _a, _b, _c, _d, _e;
31
+ var _a, _b, _c, _d;
32
32
  logger = logger.extend(mainLogger, { tags: [`locate-text-${utils.general.shortid()}`] });
33
33
  settings = { ...config === null || config === void 0 ? void 0 : config.open, ...config === null || config === void 0 ? void 0 : config.screenshot, ...settings };
34
- (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_d = (_c = (_b = settings.serverUrl) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
35
- (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
34
+ (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_c = (_b = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('SERVER_URL')) !== null && _c !== void 0 ? _c : 'https://eyesapi.applitools.com');
35
+ (_d = settings.apiKey) !== null && _d !== void 0 ? _d : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
36
36
  const classicCore = (0, core_1.makeCore)({ spec, base: core.base, logger });
37
37
  const results = await classicCore.locateText({ target, settings, logger });
38
38
  return results;
package/dist/locate.js CHANGED
@@ -28,11 +28,11 @@ const core_1 = require("./classic/core");
28
28
  const utils = __importStar(require("@applitools/utils"));
29
29
  function makeLocate({ spec, core, logger: mainLogger }) {
30
30
  return async function locate({ target, settings, config, logger = mainLogger, }) {
31
- var _a, _b, _c, _d, _e;
31
+ var _a, _b, _c, _d;
32
32
  logger = logger.extend(mainLogger, { tags: [`locate-${utils.general.shortid()}`] });
33
33
  settings = { ...config === null || config === void 0 ? void 0 : config.open, ...config === null || config === void 0 ? void 0 : config.screenshot, ...settings };
34
- (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_d = (_c = (_b = settings.serverUrl) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
35
- (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
34
+ (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_c = (_b = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('SERVER_URL')) !== null && _c !== void 0 ? _c : 'https://eyesapi.applitools.com');
35
+ (_d = settings.apiKey) !== null && _d !== void 0 ? _d : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
36
36
  const classicCore = (0, core_1.makeCore)({ spec, base: core.base, logger });
37
37
  const results = await classicCore.locate({ target, settings, logger });
38
38
  return results;
package/dist/log-event.js CHANGED
@@ -29,9 +29,9 @@ function makeLogEvent({ core, logger: mainLogger }) {
29
29
  return async function logEvent({ settings, logger = mainLogger, }) {
30
30
  logger = logger.extend(mainLogger, { tags: [`log-event-${utils.general.shortid()}`] });
31
31
  (utils.types.isArray(settings) ? settings : [settings]).forEach(settings => {
32
- var _a, _b, _c, _d, _e;
33
- (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_d = (_c = (_b = settings.serverUrl) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
34
- (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
32
+ var _a, _b, _c, _d;
33
+ (_a = settings.eyesServerUrl) !== null && _a !== void 0 ? _a : (settings.eyesServerUrl = (_c = (_b = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _b !== void 0 ? _b : utils.general.getEnvValue('SERVER_URL')) !== null && _c !== void 0 ? _c : 'https://eyesapi.applitools.com');
34
+ (_d = settings.apiKey) !== null && _d !== void 0 ? _d : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
35
35
  });
36
36
  return core.base.logEvent({ settings, logger });
37
37
  };
package/dist/open-eyes.js CHANGED
@@ -36,27 +36,27 @@ const get_eyes_results_1 = require("./get-eyes-results");
36
36
  const utils = __importStar(require("@applitools/utils"));
37
37
  function makeOpenEyes({ type: defaultType = 'classic', clients, concurrency, batch, core, cores, spec, environment, logger: mainLogger, asyncCache, }) {
38
38
  return async function openEyes({ type = defaultType, settings, config, target, logger = mainLogger, }) {
39
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
40
- var _v, _w, _x, _y;
39
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
40
+ var _u, _v, _w, _x;
41
41
  logger = logger.extend(mainLogger, { tags: [`eyes-${type}-${utils.general.shortid()}`] });
42
42
  settings = { ...config === null || config === void 0 ? void 0 : config.open, ...settings };
43
43
  (_a = settings.userTestId) !== null && _a !== void 0 ? _a : (settings.userTestId = `${settings.testName}--${utils.general.guid()}`);
44
- (_b = settings.eyesServerUrl) !== null && _b !== void 0 ? _b : (settings.eyesServerUrl = (_e = (_d = (_c = settings.serverUrl) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _d !== void 0 ? _d : utils.general.getEnvValue('SERVER_URL')) !== null && _e !== void 0 ? _e : 'https://eyesapi.applitools.com');
45
- (_f = settings.apiKey) !== null && _f !== void 0 ? _f : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
46
- (_g = settings.useDnsCache) !== null && _g !== void 0 ? _g : (settings.useDnsCache = utils.general.getEnvValue('USE_DNS_CACHE', 'boolean'));
44
+ (_b = settings.eyesServerUrl) !== null && _b !== void 0 ? _b : (settings.eyesServerUrl = (_d = (_c = utils.general.getEnvValue('EYES_SERVER_URL')) !== null && _c !== void 0 ? _c : utils.general.getEnvValue('SERVER_URL')) !== null && _d !== void 0 ? _d : 'https://eyesapi.applitools.com');
45
+ (_e = settings.apiKey) !== null && _e !== void 0 ? _e : (settings.apiKey = utils.general.getEnvValue('API_KEY'));
46
+ (_f = settings.useDnsCache) !== null && _f !== void 0 ? _f : (settings.useDnsCache = utils.general.getEnvValue('USE_DNS_CACHE', 'boolean'));
47
47
  settings.batch = { ...batch, ...settings.batch };
48
- (_h = (_v = settings.batch).id) !== null && _h !== void 0 ? _h : (_v.id = (_j = utils.general.getEnvValue('BATCH_ID')) !== null && _j !== void 0 ? _j : `generated-${utils.general.guid()}`);
49
- (_k = (_w = settings.batch).name) !== null && _k !== void 0 ? _k : (_w.name = utils.general.getEnvValue('BATCH_NAME'));
50
- (_l = (_x = settings.batch).sequenceName) !== null && _l !== void 0 ? _l : (_x.sequenceName = utils.general.getEnvValue('BATCH_SEQUENCE'));
51
- (_m = (_y = settings.batch).notifyOnCompletion) !== null && _m !== void 0 ? _m : (_y.notifyOnCompletion = utils.general.getEnvValue('BATCH_NOTIFY', 'boolean'));
52
- (_o = settings.keepBatchOpen) !== null && _o !== void 0 ? _o : (settings.keepBatchOpen = utils.general.getEnvValue('DONT_CLOSE_BATCHES', 'boolean'));
53
- (_p = settings.branchName) !== null && _p !== void 0 ? _p : (settings.branchName = utils.general.getEnvValue('BRANCH'));
54
- (_q = settings.parentBranchName) !== null && _q !== void 0 ? _q : (settings.parentBranchName = utils.general.getEnvValue('PARENT_BRANCH'));
55
- (_r = settings.baselineBranchName) !== null && _r !== void 0 ? _r : (settings.baselineBranchName = utils.general.getEnvValue('BASELINE_BRANCH'));
56
- (_s = settings.ignoreBaseline) !== null && _s !== void 0 ? _s : (settings.ignoreBaseline = false);
57
- (_t = settings.compareWithParentBranch) !== null && _t !== void 0 ? _t : (settings.compareWithParentBranch = false);
48
+ (_g = (_u = settings.batch).id) !== null && _g !== void 0 ? _g : (_u.id = (_h = utils.general.getEnvValue('BATCH_ID')) !== null && _h !== void 0 ? _h : `generated-${utils.general.guid()}`);
49
+ (_j = (_v = settings.batch).name) !== null && _j !== void 0 ? _j : (_v.name = utils.general.getEnvValue('BATCH_NAME'));
50
+ (_k = (_w = settings.batch).sequenceName) !== null && _k !== void 0 ? _k : (_w.sequenceName = utils.general.getEnvValue('BATCH_SEQUENCE'));
51
+ (_l = (_x = settings.batch).notifyOnCompletion) !== null && _l !== void 0 ? _l : (_x.notifyOnCompletion = utils.general.getEnvValue('BATCH_NOTIFY', 'boolean'));
52
+ (_m = settings.keepBatchOpen) !== null && _m !== void 0 ? _m : (settings.keepBatchOpen = utils.general.getEnvValue('DONT_CLOSE_BATCHES', 'boolean'));
53
+ (_o = settings.branchName) !== null && _o !== void 0 ? _o : (settings.branchName = utils.general.getEnvValue('BRANCH'));
54
+ (_p = settings.parentBranchName) !== null && _p !== void 0 ? _p : (settings.parentBranchName = utils.general.getEnvValue('PARENT_BRANCH'));
55
+ (_q = settings.baselineBranchName) !== null && _q !== void 0 ? _q : (settings.baselineBranchName = utils.general.getEnvValue('BASELINE_BRANCH'));
56
+ (_r = settings.ignoreBaseline) !== null && _r !== void 0 ? _r : (settings.ignoreBaseline = false);
57
+ (_s = settings.compareWithParentBranch) !== null && _s !== void 0 ? _s : (settings.compareWithParentBranch = false);
58
58
  const driver = target && (await (0, driver_1.makeDriver)({ spec, driver: target, logger, customConfig: settings }));
59
- const renderers = (_u = config === null || config === void 0 ? void 0 : config.check) === null || _u === void 0 ? void 0 : _u.renderers;
59
+ const environments = (_t = config === null || config === void 0 ? void 0 : config.check) === null || _t === void 0 ? void 0 : _t.environments;
60
60
  core.logEvent({
61
61
  settings: {
62
62
  ...settings,
@@ -85,8 +85,8 @@ function makeOpenEyes({ type: defaultType = 'classic', clients, concurrency, bat
85
85
  getTypedEyes,
86
86
  check: (0, check_1.makeCheck)({ type, eyes, target: driver, spec, logger }),
87
87
  checkAndClose: (0, check_and_close_1.makeCheckAndClose)({ type, eyes, target: driver, spec, logger }),
88
- close: (0, close_1.makeClose)({ eyes, renderers, logger }),
89
- abort: (0, abort_1.makeAbort)({ eyes, renderers, logger }),
88
+ close: (0, close_1.makeClose)({ eyes, environments, logger }),
89
+ abort: (0, abort_1.makeAbort)({ eyes, environments, logger }),
90
90
  getResults: (0, get_eyes_results_1.makeGetEyesResults)({ eyes, logger }),
91
91
  })); // TODO solve the types issue
92
92
  };
@@ -30,12 +30,12 @@ exports.makeCheckAndClose = void 0;
30
30
  const driver_1 = require("@applitools/driver");
31
31
  const take_dom_snapshots_1 = require("./utils/take-dom-snapshots");
32
32
  const to_base_check_settings_1 = require("../automation/utils/to-base-check-settings");
33
- const uniquify_renderers_1 = require("../automation/utils/uniquify-renderers");
34
- const extract_renderer_key_1 = require("../automation/utils/extract-renderer-key");
33
+ const uniquify_environments_1 = require("../automation/utils/uniquify-environments");
34
+ const to_environment_key_1 = require("../automation/utils/to-environment-key");
35
35
  const abort_error_1 = require("../errors/abort-error");
36
36
  const utils = __importStar(require("@applitools/utils"));
37
37
  const chalk_1 = __importDefault(require("chalk"));
38
- function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRenderers = [], spec, signal, logger: mainLogger, }) {
38
+ function makeCheckAndClose({ eyes, target: defaultTarget, environments: defaultEnvironments = [], spec, signal, logger: mainLogger, }) {
39
39
  return async function checkAndClose({ target = defaultTarget, settings = {}, logger = mainLogger, } = {}) {
40
40
  var _a, _b, _c;
41
41
  logger = logger.extend(mainLogger);
@@ -47,7 +47,7 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
47
47
  const { elementReferencesToCalculate, elementReferenceToTarget, getBaseCheckSettings } = (0, to_base_check_settings_1.toBaseCheckSettings)({
48
48
  settings,
49
49
  });
50
- const uniqueRenderers = (0, uniquify_renderers_1.uniquifyRenderers)((_a = settings.renderers) !== null && _a !== void 0 ? _a : defaultRenderers);
50
+ const uniqueEnvironments = (0, uniquify_environments_1.uniquifyEnvironments)((_a = settings.environments) !== null && _a !== void 0 ? _a : defaultEnvironments);
51
51
  const ufgClient = await eyes.core.getUFGClient({
52
52
  settings: {
53
53
  ...eyes.test.ufgServer,
@@ -76,7 +76,7 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
76
76
  waitBeforeCapture: settings.waitBeforeCapture,
77
77
  disableBrowserFetching: settings.disableBrowserFetching,
78
78
  layoutBreakpoints: settings.layoutBreakpoints,
79
- renderers: uniqueRenderers,
79
+ environments: uniqueEnvironments,
80
80
  skipResources: ufgClient.getCachedResourceUrls(),
81
81
  lazyLoad: settings.lazyLoad,
82
82
  calculateRegionsOptions: {
@@ -95,14 +95,14 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
95
95
  else {
96
96
  const nmlClient = await eyes.core.getNMLClient({
97
97
  driver,
98
- settings: { ...eyes.test.eyesServer, renderEnvironmentsUrl: eyes.test.renderEnvironmentsUrl },
98
+ settings: { ...eyes.test.eyesServer, supportedEnvironmentsUrl: eyes.test.supportedEnvironmentsUrl },
99
99
  logger,
100
100
  });
101
101
  const snapshots = (await nmlClient.takeSnapshots({
102
102
  settings: {
103
103
  ...eyes.test.eyesServer,
104
104
  waitBeforeCapture: settings.waitBeforeCapture,
105
- renderers: uniqueRenderers,
105
+ environments: uniqueEnvironments,
106
106
  },
107
107
  logger,
108
108
  }));
@@ -124,20 +124,20 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
124
124
  snapshotTitle = await driver.getTitle();
125
125
  }
126
126
  else {
127
- snapshotResults = !utils.types.isArray(target) ? Array(uniqueRenderers.length).fill(target) : target;
127
+ snapshotResults = !utils.types.isArray(target) ? Array(uniqueEnvironments.length).fill(target) : target;
128
128
  snapshotUrl = utils.types.has((_c = snapshotResults[0]) === null || _c === void 0 ? void 0 : _c.snapshot, 'url') ? snapshotResults[0].snapshot.url : undefined;
129
129
  }
130
- const promises = uniqueRenderers.map(async (renderer, index) => {
131
- var _a;
132
- const rendererLogger = logger.extend({ tags: [`renderer-${utils.general.shortid()}`] });
133
- const ufgRenderer = renderer;
134
- if (utils.types.has(ufgRenderer, 'name') && ufgRenderer.name === 'edge') {
130
+ const promises = uniqueEnvironments.map(async (environment, index) => {
131
+ var _a, _b, _c, _d, _e, _f, _g, _h;
132
+ const environmentLogger = logger.extend({ tags: [`environment-${utils.general.shortid()}`] });
133
+ const ufgEnvironment = environment;
134
+ if (utils.types.has(ufgEnvironment, 'name') && ufgEnvironment.name === 'edge') {
135
135
  const message = chalk_1.default.yellow(`The 'edge' option that is being used in your browsers' configuration will soon be deprecated. Please change it to either 'edgelegacy' for the legacy version or to 'edgechromium' for the new Chromium-based version. Please note, when using the built-in BrowserType enum, then the values are BrowserType.EDGE_LEGACY and BrowserType.EDGE_CHROMIUM, respectively.`);
136
- rendererLogger.console.log(message);
136
+ environmentLogger.console.log(message);
137
137
  }
138
138
  try {
139
139
  if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
140
- rendererLogger.warn('Command "check" was aborted before rendering');
140
+ environmentLogger.warn('Command "check" was aborted before rendering');
141
141
  throw new abort_error_1.AbortError('Command "check" was aborted before rendering');
142
142
  }
143
143
  const { snapshot: snapshotFromResult, selectorsToCalculate: selectorsToCalculateFromSnapshot, regionToTarget, scrollRootSelector, } = snapshotResults[index];
@@ -147,13 +147,13 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
147
147
  originalSelector: selector,
148
148
  safeSelector: selector,
149
149
  }));
150
- if (utils.types.has(ufgRenderer, 'iosDeviceInfo') || utils.types.has(ufgRenderer, 'androidDeviceInfo')) {
151
- ufgRenderer.type = utils.types.has(snapshot, 'cdt') ? 'web' : 'native';
150
+ if (utils.types.has(ufgEnvironment, 'iosDeviceInfo') || utils.types.has(ufgEnvironment, 'androidDeviceInfo')) {
151
+ ufgEnvironment.type = utils.types.has(snapshot, 'cdt') ? 'web' : 'native';
152
152
  }
153
153
  const renderTargetPromise = ufgClient.createRenderTarget({
154
154
  snapshot,
155
155
  settings: {
156
- renderer: ufgRenderer,
156
+ environment: ufgEnvironment,
157
157
  cookies,
158
158
  headers: {
159
159
  Referer: snapshotUrl,
@@ -163,26 +163,26 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
163
163
  proxy: eyes.test.eyesServer.proxy,
164
164
  autProxy: settings.autProxy,
165
165
  },
166
- logger: rendererLogger,
166
+ logger: environmentLogger,
167
167
  });
168
- const baseEyes = await eyes.getBaseEyes({ settings: { renderer }, logger });
168
+ const baseEyes = await eyes.getBaseEyes({ settings: { environment }, logger });
169
169
  try {
170
170
  if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
171
- rendererLogger.warn('Command "check" was aborted before rendering');
171
+ environmentLogger.warn('Command "check" was aborted before rendering');
172
172
  throw new abort_error_1.AbortError('Command "check" was aborted before rendering');
173
173
  }
174
174
  else if (!baseEyes.running) {
175
- rendererLogger.warn(`Render on environment with id "${baseEyes.test.renderEnvironmentId}" was aborted during one of the previous steps`);
176
- throw new abort_error_1.AbortError(`Render on environment with id "${baseEyes.test.renderEnvironmentId}" was aborted during one of the previous steps`);
175
+ environmentLogger.warn(`Render on environment with id "${(_b = baseEyes.test.environment) === null || _b === void 0 ? void 0 : _b.environmentId}" was aborted during one of the previous steps`);
176
+ throw new abort_error_1.AbortError(`Render on environment with id "${(_c = baseEyes.test.environment) === null || _c === void 0 ? void 0 : _c.environmentId}" was aborted during one of the previous steps`);
177
177
  }
178
178
  const renderTarget = await renderTargetPromise;
179
179
  if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
180
- rendererLogger.warn('Command "check" was aborted before rendering');
180
+ environmentLogger.warn('Command "check" was aborted before rendering');
181
181
  throw new abort_error_1.AbortError('Command "check" was aborted before rendering');
182
182
  }
183
183
  else if (!baseEyes.running) {
184
- rendererLogger.warn(`Render on environment with id "${baseEyes.test.renderEnvironmentId}" was aborted during one of the previous steps`);
185
- throw new abort_error_1.AbortError(`Render on environment with id "${baseEyes.test.renderEnvironmentId}" was aborted during one of the previous steps`);
184
+ environmentLogger.warn(`Render on environment with id "${(_d = baseEyes.test.environment) === null || _d === void 0 ? void 0 : _d.environmentId}" was aborted during one of the previous steps`);
185
+ throw new abort_error_1.AbortError(`Render on environment with id "${(_e = baseEyes.test.environment) === null || _e === void 0 ? void 0 : _e.environmentId}" was aborted during one of the previous steps`);
186
186
  }
187
187
  const { renderId, selectorRegions, ...baseTarget } = await ufgClient.render({
188
188
  target: renderTarget,
@@ -192,13 +192,13 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
192
192
  scrollRootElement: scrollRootSelector,
193
193
  selectorsToCalculate: selectorsToCalculate.flatMap(({ safeSelector }) => safeSelector !== null && safeSelector !== void 0 ? safeSelector : []),
194
194
  includeFullPageSize: !!settings.pageId,
195
- renderer: ufgRenderer,
196
- renderEnvironmentId: baseEyes.test.renderEnvironmentId,
195
+ environment: ufgEnvironment,
196
+ environmentId: baseEyes.test.environment.environmentId,
197
197
  uploadUrl: baseEyes.test.uploadUrl,
198
198
  stitchingServiceUrl: baseEyes.test.stitchingServiceUrl,
199
199
  },
200
200
  signal,
201
- logger: rendererLogger,
201
+ logger: environmentLogger,
202
202
  });
203
203
  let offset = 0;
204
204
  const baseSettings = getBaseCheckSettings({
@@ -211,34 +211,34 @@ function makeCheckAndClose({ eyes, target: defaultTarget, renderers: defaultRend
211
211
  baseTarget.source = snapshotUrl;
212
212
  baseTarget.name = snapshotTitle;
213
213
  if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
214
- rendererLogger.warn('Command "check" was aborted after rendering');
214
+ environmentLogger.warn('Command "check" was aborted after rendering');
215
215
  throw new abort_error_1.AbortError('Command "check" was aborted after rendering');
216
216
  }
217
217
  else if (!baseEyes.running) {
218
- rendererLogger.warn(`Render on environment with id "${baseEyes.test.renderEnvironmentId}" was aborted during one of the previous steps`);
219
- throw new abort_error_1.AbortError(`Render on environment with id "${baseEyes.test.renderEnvironmentId}" was aborted during one of the previous steps`);
218
+ environmentLogger.warn(`Render on environment with id "${(_f = baseEyes.test.environment) === null || _f === void 0 ? void 0 : _f.environmentId}" was aborted during one of the previous steps`);
219
+ throw new abort_error_1.AbortError(`Render on environment with id "${(_g = baseEyes.test.environment) === null || _g === void 0 ? void 0 : _g.environmentId}" was aborted during one of the previous steps`);
220
220
  }
221
221
  await baseEyes.checkAndClose({
222
222
  target: { ...baseTarget, isTransformed: true },
223
223
  settings: baseSettings,
224
- logger: rendererLogger,
224
+ logger: environmentLogger,
225
225
  });
226
226
  }
227
227
  catch (error) {
228
- rendererLogger.error(`Render on environment with id "${baseEyes.test.renderEnvironmentId}" failed due to an error`, error);
229
- await baseEyes.abort({ logger: rendererLogger });
228
+ environmentLogger.error(`Render on environment with id "${(_h = baseEyes.test.environment) === null || _h === void 0 ? void 0 : _h.environmentId}" failed due to an error`, error);
229
+ await baseEyes.abort({ logger: environmentLogger });
230
230
  error.info = { eyes: baseEyes };
231
231
  throw error;
232
232
  }
233
233
  }
234
234
  catch (error) {
235
- rendererLogger.error(`Renderer with id ${ufgRenderer.id} failed before rendering started due to an error`, error);
236
- error.info = { ...error.info, userTestId: eyes.test.userTestId, renderer: ufgRenderer };
235
+ environmentLogger.error(`Environment with id ${ufgEnvironment.environmentId} failed before rendering started due to an error`, error);
236
+ error.info = { ...error.info, userTestId: eyes.test.userTestId, environment: ufgEnvironment };
237
237
  throw error;
238
238
  }
239
239
  });
240
- uniqueRenderers.forEach((renderer, index) => {
241
- const key = (0, extract_renderer_key_1.extractRendererKey)(renderer);
240
+ uniqueEnvironments.forEach((environment, index) => {
241
+ const key = (0, to_environment_key_1.toEnvironmentKey)(environment);
242
242
  let item = eyes.storage.get(key);
243
243
  if (!item) {
244
244
  item = { eyes: utils.promises.makeControlledPromise(), jobs: [] };