@applitools/nml-client 1.5.13 → 1.5.15

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,50 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.5.15](https://github.com/applitools/eyes.sdk.javascript1/compare/js/nml-client@1.5.14...js/nml-client@1.5.15) (2023-11-07)
4
+
5
+
6
+ ### Dependencies
7
+
8
+ * @applitools/driver bumped to 1.15.0
9
+ #### Features
10
+
11
+ * added warning when driver used with capabilities that may conflict with applitools lib workflow ([#2011](https://github.com/applitools/eyes.sdk.javascript1/issues/2011)) ([081006d](https://github.com/applitools/eyes.sdk.javascript1/commit/081006d879894db03a2713129b66586496b6eb02))
12
+ * @applitools/spec-driver-webdriver bumped to 1.0.49
13
+
14
+
15
+ ## [1.5.14](https://github.com/applitools/eyes.sdk.javascript1/compare/js/nml-client@1.5.13...js/nml-client@1.5.14) (2023-10-17)
16
+
17
+
18
+ ### Dependencies
19
+
20
+ * @applitools/utils bumped to 1.6.2
21
+ #### Code Refactoring
22
+
23
+ * disallow usage of global Buffer ([#1957](https://github.com/applitools/eyes.sdk.javascript1/issues/1957)) ([adcc082](https://github.com/applitools/eyes.sdk.javascript1/commit/adcc082f20f6b92e819b96424e995d9a69d99758))
24
+ * @applitools/logger bumped to 2.0.12
25
+ #### Code Refactoring
26
+
27
+ * disallow usage of global Buffer ([#1957](https://github.com/applitools/eyes.sdk.javascript1/issues/1957)) ([adcc082](https://github.com/applitools/eyes.sdk.javascript1/commit/adcc082f20f6b92e819b96424e995d9a69d99758))
28
+
29
+
30
+
31
+ * @applitools/req bumped to 1.6.2
32
+ #### Code Refactoring
33
+
34
+ * disallow usage of global Buffer ([#1957](https://github.com/applitools/eyes.sdk.javascript1/issues/1957)) ([adcc082](https://github.com/applitools/eyes.sdk.javascript1/commit/adcc082f20f6b92e819b96424e995d9a69d99758))
35
+
36
+
37
+
38
+ * @applitools/driver bumped to 1.14.4
39
+ #### Code Refactoring
40
+
41
+ * disallow usage of global Buffer ([#1957](https://github.com/applitools/eyes.sdk.javascript1/issues/1957)) ([adcc082](https://github.com/applitools/eyes.sdk.javascript1/commit/adcc082f20f6b92e819b96424e995d9a69d99758))
42
+
43
+
44
+
45
+ * @applitools/spec-driver-webdriver bumped to 1.0.48
46
+
47
+
3
48
  ## [1.5.13](https://github.com/applitools/eyes.sdk.javascript1/compare/js/nml-client@1.5.12...js/nml-client@1.5.13) (2023-09-29)
4
49
 
5
50
 
package/dist/client.js CHANGED
@@ -11,7 +11,7 @@ function makeNMLClient({ settings, logger: defaultLogger, }) {
11
11
  return {
12
12
  takeScreenshots: (0, take_screenshots_1.makeTakeScreenshots)({ requests, logger }),
13
13
  takeSnapshots: (0, take_snapshots_1.makeTakeSnapshots)({ requests, logger }),
14
- getSupportedRenderEnvironments: requests.getSupportedRenderEnvironments,
14
+ getSupportedEnvironments: requests.getSupportedEnvironments,
15
15
  };
16
16
  }
17
17
  exports.makeNMLClient = makeNMLClient;
@@ -33,46 +33,46 @@ const utils = __importStar(require("@applitools/utils"));
33
33
  function makeNMLRequests({ settings, logger: mainLogger, }) {
34
34
  let brokerUrl = settings.brokerUrl;
35
35
  const req = (0, req_broker_1.makeReqBroker)({ settings, logger: mainLogger });
36
- const getSupportedRenderEnvironmentsWithCache = utils.general.cachify(getSupportedRenderEnvironments, () => 'default');
36
+ const getSupportedEnvironmentsWithCache = utils.general.cachify(getSupportedEnvironments, () => 'default');
37
37
  return {
38
- getSupportedRenderEnvironments: getSupportedRenderEnvironmentsWithCache,
38
+ getSupportedEnvironments: getSupportedEnvironmentsWithCache,
39
39
  takeScreenshots,
40
40
  takeSnapshots,
41
41
  };
42
- async function getSupportedRenderEnvironments({ logger: _logger }) {
43
- const response = await (0, req_1.default)(settings.renderEnvironmentsUrl);
42
+ async function getSupportedEnvironments({ logger: _logger }) {
43
+ const response = await (0, req_1.default)(settings.supportedEnvironmentsUrl);
44
44
  const result = await response.json();
45
45
  return result;
46
46
  }
47
47
  async function takeScreenshots({ settings, logger = mainLogger, }) {
48
48
  logger = logger.extend(mainLogger, { tags: [`nml-request-${utils.general.shortid()}`] });
49
49
  logger.log('Request "takeScreenshots" called with settings', settings);
50
- const supportedRenderEnvironments = await getSupportedRenderEnvironmentsWithCache({ logger });
51
- const { localEnvironment, renderEnvironments, rendererSettings } = settings.renderers.reduce((result, renderer) => {
50
+ const supportedEnvironments = await getSupportedEnvironmentsWithCache({ logger });
51
+ const { localEnvironment, renderEnvironments, environmentSettings } = settings.environments.reduce((result, environment) => {
52
52
  var _a;
53
- if (utils.types.has(renderer, 'environment')) {
54
- result.localEnvironment = { ...renderer.environment, renderEnvironmentId: utils.general.guid(), renderer };
53
+ if (!utils.types.has(environment, 'iosDeviceInfo') && !utils.types.has(environment, 'androidDeviceInfo')) {
54
+ result.localEnvironment = { ...environment, environmentId: utils.general.guid() };
55
55
  }
56
56
  else {
57
- const deviceInfo = utils.types.has(renderer, 'iosDeviceInfo')
58
- ? renderer.iosDeviceInfo
59
- : renderer.androidDeviceInfo;
57
+ const deviceInfo = utils.types.has(environment, 'iosDeviceInfo')
58
+ ? environment.iosDeviceInfo
59
+ : environment.androidDeviceInfo;
60
60
  const orientation = deviceInfo.screenOrientation === 'landscape' ? 'landscapeLeft' : (_a = deviceInfo.screenOrientation) !== null && _a !== void 0 ? _a : 'portrait';
61
- const rawEnvironment = supportedRenderEnvironments[deviceInfo.deviceName][orientation].env;
61
+ const rawEnvironment = supportedEnvironments[deviceInfo.deviceName][orientation].env;
62
62
  result.renderEnvironments.push({
63
- renderEnvironmentId: utils.general.guid(),
64
- renderer,
63
+ requested: environment,
64
+ environmentId: utils.general.guid(),
65
65
  deviceName: rawEnvironment.deviceInfo,
66
66
  os: rawEnvironment.os + (deviceInfo.version ? ` ${deviceInfo.version}` : ''),
67
67
  viewportSize: rawEnvironment.displaySize,
68
68
  });
69
- result.rendererSettings.push({ ...supportedRenderEnvironments[deviceInfo.deviceName], orientation });
69
+ result.environmentSettings.push({ ...supportedEnvironments[deviceInfo.deviceName], orientation });
70
70
  }
71
71
  return result;
72
72
  }, {
73
73
  localEnvironment: undefined,
74
74
  renderEnvironments: [],
75
- rendererSettings: [],
75
+ environmentSettings: [],
76
76
  });
77
77
  try {
78
78
  const response = await req(brokerUrl, {
@@ -83,8 +83,8 @@ function makeNMLRequests({ settings, logger: mainLogger, }) {
83
83
  key: utils.general.guid(),
84
84
  payload: {
85
85
  ...settings,
86
- renderers: undefined,
87
- deviceList: !localEnvironment ? rendererSettings : undefined,
86
+ environments: undefined,
87
+ deviceList: !localEnvironment ? environmentSettings : undefined,
88
88
  },
89
89
  },
90
90
  logger,
@@ -92,9 +92,9 @@ function makeNMLRequests({ settings, logger: mainLogger, }) {
92
92
  const result = await response.json();
93
93
  brokerUrl = result.nextPath;
94
94
  const screenshots = localEnvironment
95
- ? [{ image: result.payload.result.screenshotUrl, renderEnvironment: localEnvironment }]
96
- : renderEnvironments.map((renderEnvironment, index) => {
97
- return { image: result.payload[index].result.screenshotUrl, renderEnvironment };
95
+ ? [{ image: result.payload.result.screenshotUrl, environment: localEnvironment }]
96
+ : renderEnvironments.map((environment, index) => {
97
+ return { image: result.payload[index].result.screenshotUrl, environment };
98
98
  });
99
99
  logger.log('Request "takeScreenshots" finished successfully with body', screenshots);
100
100
  return screenshots;
@@ -134,7 +134,7 @@ function makeNMLRequests({ settings, logger: mainLogger, }) {
134
134
  ;
135
135
  snapshot.vhsType = 'android-x';
136
136
  }
137
- return Array(settings.renderers.length).fill(snapshot);
137
+ return Array(settings.environments.length).fill(snapshot);
138
138
  }
139
139
  catch (error) {
140
140
  if (error.nextPath)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/nml-client",
3
- "version": "1.5.13",
3
+ "version": "1.5.15",
4
4
  "description": "Client to integrate the SDKs to the Native Mobile Library (NML)",
5
5
  "homepage": "https://applitools.com",
6
6
  "bugs": {
@@ -36,16 +36,15 @@
36
36
  "test": "run --top-level mocha './test/**/*.spec.ts' --parallel --jobs ${MOCHA_JOBS:-15}"
37
37
  },
38
38
  "dependencies": {
39
- "@applitools/logger": "2.0.11",
40
- "@applitools/req": "1.6.1",
41
- "@applitools/utils": "1.6.1"
39
+ "@applitools/logger": "2.0.12",
40
+ "@applitools/req": "1.6.2",
41
+ "@applitools/utils": "1.6.2"
42
42
  },
43
43
  "devDependencies": {
44
- "@applitools/spec-driver-webdriver": "^1.0.47",
44
+ "@applitools/spec-driver-webdriver": "^1.0.49",
45
45
  "@applitools/test-server": "^1.2.2",
46
46
  "@applitools/test-utils": "^1.5.17",
47
47
  "@types/node": "^12.20.55",
48
- "chromedriver": "^115.0.1",
49
48
  "nock": "^13.3.2",
50
49
  "webdriver": "^7.31.1"
51
50
  },
@@ -1,7 +1,7 @@
1
1
  import type { BrokerServerSettings, ScreenshotSettings, Screenshot, SnapshotSettings, IOSSnapshot, AndroidSnapshot } from '../types';
2
2
  import { type Logger } from '@applitools/logger';
3
3
  export interface NMLRequests {
4
- getSupportedRenderEnvironments(options: {
4
+ getSupportedEnvironments(options: {
5
5
  logger?: Logger;
6
6
  }): Promise<Record<string, any>>;
7
7
  takeScreenshots(options: {
package/types/types.d.ts CHANGED
@@ -10,42 +10,44 @@ export interface NMLClient {
10
10
  settings: SnapshotSettings;
11
11
  logger?: Logger;
12
12
  }): Promise<TSnapshot[]>;
13
- getSupportedRenderEnvironments(options: {
13
+ getSupportedEnvironments(options: {
14
14
  logger?: Logger;
15
15
  }): Promise<Record<string, any>>;
16
16
  }
17
17
  export interface BrokerServerSettings {
18
18
  brokerUrl: string;
19
- renderEnvironmentsUrl: string;
19
+ supportedEnvironmentsUrl: string;
20
20
  agentId?: string;
21
21
  proxy?: Proxy;
22
22
  useDnsCache?: boolean;
23
23
  }
24
24
  export type NMLClientSettings = BrokerServerSettings;
25
- export interface IOSDeviceRenderer {
25
+ export interface IOSDeviceEnvironment {
26
26
  iosDeviceInfo: {
27
27
  deviceName: string;
28
28
  version?: string;
29
29
  screenOrientation?: string;
30
30
  };
31
31
  }
32
- export interface AndroidDeviceRenderer {
32
+ export interface AndroidDeviceEnvironment {
33
33
  androidDeviceInfo: {
34
34
  deviceName: string;
35
35
  version?: string;
36
36
  screenOrientation?: string;
37
37
  };
38
38
  }
39
- export interface EnvironmentRenderer {
40
- environment: any;
39
+ export interface LocalEnvironment {
40
+ os: string;
41
+ deviceName: string;
42
+ viewportSize: Size;
41
43
  }
42
- export type Renderer = IOSDeviceRenderer | AndroidDeviceRenderer | EnvironmentRenderer;
43
- export interface RenderEnvironment {
44
+ export type Environment = IOSDeviceEnvironment | AndroidDeviceEnvironment | LocalEnvironment;
45
+ export interface ActualEnvironment {
46
+ requested?: IOSDeviceEnvironment | AndroidDeviceEnvironment;
47
+ environmentId: string;
44
48
  os: string;
45
49
  deviceName: string;
46
50
  viewportSize: Size;
47
- renderEnvironmentId: string;
48
- renderer: Renderer;
49
51
  }
50
52
  export type Selector = string | {
51
53
  selector: string;
@@ -54,7 +56,7 @@ export type Selector = string | {
54
56
  frame?: Selector;
55
57
  };
56
58
  export type ScreenshotSettings = {
57
- renderers: Renderer[];
59
+ environments: Environment[];
58
60
  webview?: boolean | string;
59
61
  region?: Region | Selector;
60
62
  fully?: boolean;
@@ -86,10 +88,10 @@ export type Screenshot = {
86
88
  locationInView?: Location;
87
89
  fullViewSize?: Size;
88
90
  calculatedRegions?: Region[];
89
- renderEnvironment: RenderEnvironment;
91
+ environment: ActualEnvironment;
90
92
  };
91
93
  export type SnapshotSettings = {
92
- renderers: Renderer[];
94
+ environments: Environment[];
93
95
  resourceSeparation?: boolean;
94
96
  waitBeforeCapture?: number;
95
97
  name?: string;