appium-xcuitest-driver 8.1.0 → 8.3.0

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 (40) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/build/lib/commands/content-size.d.ts +33 -0
  3. package/build/lib/commands/content-size.d.ts.map +1 -0
  4. package/build/lib/commands/content-size.js +67 -0
  5. package/build/lib/commands/content-size.js.map +1 -0
  6. package/build/lib/commands/file-movement.d.ts.map +1 -1
  7. package/build/lib/commands/file-movement.js +3 -6
  8. package/build/lib/commands/file-movement.js.map +1 -1
  9. package/build/lib/commands/increase-contrast.d.ts +27 -0
  10. package/build/lib/commands/increase-contrast.d.ts.map +1 -0
  11. package/build/lib/commands/increase-contrast.js +49 -0
  12. package/build/lib/commands/increase-contrast.js.map +1 -0
  13. package/build/lib/commands/index.d.ts +4 -0
  14. package/build/lib/commands/index.d.ts.map +1 -1
  15. package/build/lib/commands/index.js +4 -0
  16. package/build/lib/commands/index.js.map +1 -1
  17. package/build/lib/commands/types.d.ts +16 -0
  18. package/build/lib/commands/types.d.ts.map +1 -1
  19. package/build/lib/driver.d.ts +22 -0
  20. package/build/lib/driver.d.ts.map +1 -1
  21. package/build/lib/driver.js +10 -0
  22. package/build/lib/driver.js.map +1 -1
  23. package/build/lib/execute-method-map.d.ts +18 -0
  24. package/build/lib/execute-method-map.d.ts.map +1 -1
  25. package/build/lib/execute-method-map.js +18 -0
  26. package/build/lib/execute-method-map.js.map +1 -1
  27. package/build/lib/utils.d.ts +5 -2
  28. package/build/lib/utils.d.ts.map +1 -1
  29. package/build/lib/utils.js +5 -1
  30. package/build/lib/utils.js.map +1 -1
  31. package/lib/commands/content-size.js +70 -0
  32. package/lib/commands/file-movement.js +3 -6
  33. package/lib/commands/increase-contrast.js +52 -0
  34. package/lib/commands/index.js +4 -0
  35. package/lib/commands/types.ts +54 -0
  36. package/lib/driver.js +14 -0
  37. package/lib/execute-method-map.ts +18 -0
  38. package/lib/utils.js +5 -1
  39. package/npm-shrinkwrap.json +60 -36
  40. package/package.json +3 -3
@@ -72,17 +72,14 @@ function verifyIsSubPath(originalPath, root) {
72
72
  *
73
73
  * @param {string} udid
74
74
  * @param {string} [bundleId]
75
- * @param {string} [containerType]
76
75
  * @returns {Promise<any>}
77
76
  */
78
- async function createAfcClient(udid, bundleId, containerType) {
77
+ async function createAfcClient(udid, bundleId) {
79
78
  if (!bundleId) {
80
79
  return await services.startAfcService(udid);
81
80
  }
82
81
  const service = await services.startHouseArrestService(udid);
83
- return isDocumentsContainer(containerType)
84
- ? await service.vendDocuments(bundleId)
85
- : await service.vendContainer(bundleId);
82
+ return await service.vendContainer(bundleId);
86
83
  }
87
84
 
88
85
  /**
@@ -103,7 +100,7 @@ function isDocumentsContainer(containerType) {
103
100
  async function createService(remotePath) {
104
101
  if (CONTAINER_PATH_PATTERN.test(remotePath)) {
105
102
  const {bundleId, pathInContainer, containerType} = await parseContainerPath.bind(this)(remotePath);
106
- const service = await createAfcClient(this.device.udid, bundleId, containerType);
103
+ const service = await createAfcClient(this.device.udid, bundleId);
107
104
  const relativePath = isDocumentsContainer(containerType)
108
105
  ? path.join(CONTAINER_DOCUMENTS_PATH, pathInContainer)
109
106
  : pathInContainer;
@@ -0,0 +1,52 @@
1
+ import _ from 'lodash';
2
+ import {assertSimulator as _assertSimulator} from '../utils';
3
+ import { errors } from 'appium/driver';
4
+
5
+ const assertSimulator = _.partial(_assertSimulator, 'Content size ui command');
6
+
7
+ const INCREASE_CONTRAST_CONFIG = [
8
+ 'enabled',
9
+ 'disabled',
10
+ ];
11
+
12
+ export default {
13
+ /**
14
+ * Sets the increase contrast configuration for the given simulator.
15
+ *
16
+ * @since Xcode 15 (but lower xcode could have this command)
17
+ * @param {IncreaseContrastAction} increaseContrast valid increase constrast configuration value.
18
+ * Acceptable value is 'enabled' or 'disabled' with Xcode 16.2.
19
+ * @throws {Error} if the current platform does not support content size appearance changes
20
+ * @this {XCUITestDriver}
21
+ */
22
+ async mobileSetIncreaseContrast(increaseContrast) {
23
+ const simulator = assertSimulator(this);
24
+
25
+ if (!INCREASE_CONTRAST_CONFIG.includes(_.lowerCase(increaseContrast))) {
26
+ throw new errors.InvalidArgumentError(
27
+ `The 'increaseContrast' value is expected to be one of ${INCREASE_CONTRAST_CONFIG.join(',')}`
28
+ );
29
+ }
30
+
31
+ await simulator.setIncreaseContrast(increaseContrast);
32
+ },
33
+
34
+ /**
35
+ * Retrieves the current increase contrast configuration value from the given simulator.
36
+ *
37
+ * @since Xcode 15 (but lower xcode could have this command)
38
+ * @returns {Promise<IncreaseContrastResult>} the contrast configuration value.
39
+ * Possible return value is 'enabled', 'disabled',
40
+ * 'unsupported' or 'unknown' with Xcode 16.2.
41
+ * @this {XCUITestDriver}
42
+ */
43
+ async mobileGetIncreaseContrast() {
44
+ return /** @type {IncreaseContrastResult} */ (await assertSimulator(this).getIncreaseContrast());
45
+ },
46
+ };
47
+
48
+ /**
49
+ * @typedef {import('../driver').XCUITestDriver} XCUITestDriver
50
+ * @typedef {import('./types').IncreaseContrastAction} IncreaseContrastAction
51
+ * @typedef {import('./types').IncreaseContrastResult} IncreaseContrastResult
52
+ */
@@ -9,6 +9,7 @@ import biometricExtensions from './biometric';
9
9
  import certificateExtensions from './certificate';
10
10
  import clipboardExtensions from './clipboard';
11
11
  import conditionExtensions from './condition';
12
+ import contentSizeExtensions from './content-size';
12
13
  import contextExtensions from './context';
13
14
  import deviceInfoExtensions from './deviceInfo';
14
15
  import elementExtensions from './element';
@@ -18,6 +19,7 @@ import findExtensions from './find';
18
19
  import generalExtensions from './general';
19
20
  import geolocationExtensions from './geolocation';
20
21
  import gestureExtensions from './gesture';
22
+ import increaseContrastExtensions from './increase-contrast';
21
23
  import iohidExtensions from './iohid';
22
24
  import keychainsExtensions from './keychains';
23
25
  import keyboardExtensions from './keyboard';
@@ -55,6 +57,7 @@ export default {
55
57
  certificateExtensions,
56
58
  clipboardExtensions,
57
59
  conditionExtensions,
60
+ contentSizeExtensions,
58
61
  contextExtensions,
59
62
  deviceInfoExtensions,
60
63
  elementExtensions,
@@ -64,6 +67,7 @@ export default {
64
67
  generalExtensions,
65
68
  geolocationExtensions,
66
69
  gestureExtensions,
70
+ increaseContrastExtensions,
67
71
  iohidExtensions,
68
72
  keychainsExtensions,
69
73
  keyboardExtensions,
@@ -337,6 +337,60 @@ export type ButtonName = AnyCase<
337
337
  */
338
338
  export type Style = 'dark' | 'light' | 'unsupported' | 'unknown';
339
339
 
340
+ /**
341
+ * Returned in the {@linkcode XCUITest.mobileGetIncreaseContrast mobile: getIncreaseContrast} command response.
342
+ */
343
+ export type IncreaseContrastResult =
344
+ | 'enabled'
345
+ | 'disabled'
346
+ | 'unsupported'
347
+ | 'unknown';
348
+
349
+ /**
350
+ * Argument in the {@linkcode XCUITest.mobileSetIncreaseContrast mobile: setIncreaseContrast} command.
351
+ */
352
+ export type IncreaseContrastAction =
353
+ | 'enabled'
354
+ | 'disabled';
355
+
356
+ /**
357
+ * Argument in the {@linkcode XCUITest.mobileSetContentSize mobile: setContentSize} command.
358
+ */
359
+ export type ContentSizeAction =
360
+ | 'extra-small'
361
+ | 'small'
362
+ | 'medium'
363
+ | 'large'
364
+ | 'extra-large'
365
+ | 'extra-extra-large'
366
+ | 'extra-extra-extra-large'
367
+ | 'accessibility-medium'
368
+ | 'accessibility-large'
369
+ | 'accessibility-extra-large'
370
+ | 'accessibility-extra-extra-large'
371
+ | 'accessibility-extra-extra-extra-large'
372
+ | 'increment'
373
+ | 'decrement';
374
+
375
+ /**
376
+ * Returned in the {@linkcode XCUITest.mobileGetContentSize mobile: getContentSize} command response.
377
+ */
378
+ export type ContentSizeResult =
379
+ | 'extra-small'
380
+ | 'small'
381
+ | 'medium'
382
+ | 'large'
383
+ | 'extra-large'
384
+ | 'extra-extra-large'
385
+ | 'extra-extra-extra-large'
386
+ | 'accessibility-medium'
387
+ | 'accessibility-large'
388
+ | 'accessibility-extra-large'
389
+ | 'accessibility-extra-extra-large'
390
+ | 'accessibility-extra-extra-extra-large'
391
+ | 'unknown'
392
+ | 'unsupported';
393
+
340
394
  export interface ScreenInfo {
341
395
  /**
342
396
  * Status bar dimensions
package/lib/driver.js CHANGED
@@ -1825,6 +1825,20 @@ export class XCUITestDriver extends BaseDriver {
1825
1825
  mobileSetAppearance = commands.appearanceExtensions.mobileSetAppearance;
1826
1826
  mobileGetAppearance = commands.appearanceExtensions.mobileGetAppearance;
1827
1827
 
1828
+ /*------------+
1829
+ | INCREASE CONTRAST |
1830
+ +------------+*/
1831
+
1832
+ mobileSetIncreaseContrast = commands.increaseContrastExtensions.mobileSetIncreaseContrast;
1833
+ mobileGetIncreaseContrast = commands.increaseContrastExtensions.mobileGetIncreaseContrast;
1834
+
1835
+ /*------------+
1836
+ | CONTENT SIZE |
1837
+ +------------+*/
1838
+
1839
+ mobileSetContentSize = commands.contentSizeExtensions.mobileSetContentSize;
1840
+ mobileGetContentSize = commands.contentSizeExtensions.mobileGetContentSize;
1841
+
1828
1842
  /*------------+
1829
1843
  | AUDIT |
1830
1844
  +------------+*/
@@ -333,6 +333,24 @@ export const executeMethodMap = {
333
333
  required: ['style'],
334
334
  },
335
335
  },
336
+ 'mobile: getIncreaseContrast': {
337
+ command: 'mobileGetIncreaseContrast'
338
+ },
339
+ 'mobile: setIncreaseContrast': {
340
+ command: 'mobileSetIncreaseContrast',
341
+ params: {
342
+ required: ['increaseContrast'],
343
+ },
344
+ },
345
+ 'mobile: contentSize': {
346
+ command: 'mobileGetContentSize'
347
+ },
348
+ 'mobile: setContentSize': {
349
+ command: 'mobileSetContentSize',
350
+ params: {
351
+ required: ['size'],
352
+ },
353
+ },
336
354
  'mobile: getClipboard': {
337
355
  command: 'getClipboard',
338
356
  params: {
package/lib/utils.js CHANGED
@@ -466,15 +466,18 @@ function requireArgs(argNames, opts = {}) {
466
466
  }
467
467
 
468
468
  /**
469
- * Asserts that the given driver is running on a Simulator.
469
+ * Asserts that the given driver is running on a Simulator and return
470
+ * the simlator instance.
470
471
  *
471
472
  * @param {string} action - Description of action
472
473
  * @param {import('./driver').XCUITestDriver} driver
474
+ * @returns {Simulator}
473
475
  */
474
476
  export function assertSimulator(action, driver) {
475
477
  if (!driver.isSimulator()) {
476
478
  throw new Error(`${_.upperFirst(action)} can only be performed on Simulator`);
477
479
  }
480
+ return /** @type{Simulator} */ (driver.device);
478
481
  }
479
482
 
480
483
  /**
@@ -536,4 +539,5 @@ export {
536
539
 
537
540
  /**
538
541
  * @typedef {import('appium-xcode').XcodeVersion} XcodeVersion
542
+ * @typedef {import('appium-ios-simulator').Simulator} Simulator
539
543
  */
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "appium-xcuitest-driver",
3
- "version": "8.1.0",
3
+ "version": "8.3.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "appium-xcuitest-driver",
9
- "version": "8.1.0",
9
+ "version": "8.3.0",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "@colors/colors": "^1.6.0",
13
13
  "appium-idb": "^1.6.13",
14
14
  "appium-ios-device": "^2.8.0",
15
- "appium-ios-simulator": "^6.1.7",
15
+ "appium-ios-simulator": "^6.2.0",
16
16
  "appium-remote-debugger": "^12.1.1",
17
17
  "appium-webdriveragent": "^9.0.1",
18
18
  "appium-xcode": "^5.1.4",
@@ -25,7 +25,7 @@
25
25
  "lru-cache": "^10.0.0",
26
26
  "moment": "^2.29.4",
27
27
  "moment-timezone": "^0.x",
28
- "node-simctl": "^7.6.0",
28
+ "node-simctl": "^7.7.1",
29
29
  "portscanner": "^2.2.0",
30
30
  "semver": "^7.5.4",
31
31
  "source-map-support": "^0.x",
@@ -112,6 +112,12 @@
112
112
  "spdy": "4.0.2"
113
113
  }
114
114
  },
115
+ "node_modules/@appium/base-driver/node_modules/@types/lodash": {
116
+ "version": "4.17.14",
117
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.14.tgz",
118
+ "integrity": "sha512-jsxagdikDiDBeIRaPYtArcT8my4tN1og7MtMRquFT3XNA6axxyHDRUemqDz/taRDdOUn0GnGHRCuff4q48sW9A==",
119
+ "license": "MIT"
120
+ },
115
121
  "node_modules/@appium/base-driver/node_modules/type-fest": {
116
122
  "version": "4.31.0",
117
123
  "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz",
@@ -159,6 +165,18 @@
159
165
  "npm": ">=8"
160
166
  }
161
167
  },
168
+ "node_modules/@appium/docutils/node_modules/semver": {
169
+ "version": "7.6.3",
170
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
171
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
172
+ "license": "ISC",
173
+ "bin": {
174
+ "semver": "bin/semver.js"
175
+ },
176
+ "engines": {
177
+ "node": ">=10"
178
+ }
179
+ },
162
180
  "node_modules/@appium/docutils/node_modules/type-fest": {
163
181
  "version": "4.31.0",
164
182
  "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz",
@@ -296,6 +314,18 @@
296
314
  "sharp": "0.33.5"
297
315
  }
298
316
  },
317
+ "node_modules/@appium/support/node_modules/semver": {
318
+ "version": "7.6.3",
319
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
320
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
321
+ "license": "ISC",
322
+ "bin": {
323
+ "semver": "bin/semver.js"
324
+ },
325
+ "engines": {
326
+ "node": ">=10"
327
+ }
328
+ },
299
329
  "node_modules/@appium/support/node_modules/type-fest": {
300
330
  "version": "4.31.0",
301
331
  "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz",
@@ -560,9 +590,9 @@
560
590
  }
561
591
  },
562
592
  "node_modules/@types/express-serve-static-core": {
563
- "version": "5.0.5",
564
- "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.5.tgz",
565
- "integrity": "sha512-GLZPrd9ckqEBFMcVM/qRFAP0Hg3qiVEojgEFsx/N/zKXsBzbGF6z5FBDpZ0+Xhp1xr+qRZYjfGr1cWHB9oFHSA==",
593
+ "version": "5.0.6",
594
+ "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.6.tgz",
595
+ "integrity": "sha512-3xhRnjJPkULekpSzgtoNYYcTWgEZkp4myc+Saevii5JPnHNvHMRlBSHDbs7Bh1iPPoVTERHEZXyhyLbMEsExsA==",
566
596
  "license": "MIT",
567
597
  "dependencies": {
568
598
  "@types/node": "*",
@@ -614,9 +644,9 @@
614
644
  "license": "MIT"
615
645
  },
616
646
  "node_modules/@types/lodash": {
617
- "version": "4.17.14",
618
- "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.14.tgz",
619
- "integrity": "sha512-jsxagdikDiDBeIRaPYtArcT8my4tN1og7MtMRquFT3XNA6axxyHDRUemqDz/taRDdOUn0GnGHRCuff4q48sW9A==",
647
+ "version": "4.17.15",
648
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.15.tgz",
649
+ "integrity": "sha512-w/P33JFeySuhN6JLkysYUK2gEmy9kHHFN7E8ro0tkfmlDOgxBDzWEZ/J8cWA+fHqFevpswDTFZnDx+R9lbL6xw==",
620
650
  "license": "MIT"
621
651
  },
622
652
  "node_modules/@types/method-override": {
@@ -650,9 +680,9 @@
650
680
  }
651
681
  },
652
682
  "node_modules/@types/node": {
653
- "version": "22.10.7",
654
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.7.tgz",
655
- "integrity": "sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==",
683
+ "version": "22.12.0",
684
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.12.0.tgz",
685
+ "integrity": "sha512-Fll2FZ1riMjNmlmJOdAyY5pUbkftXslB5DgEzlIuNaiWhXd00FhWxVC/r4yV/4wBb9JfImTu+jiSvXTkJ7F/gA==",
656
686
  "license": "MIT",
657
687
  "dependencies": {
658
688
  "undici-types": "~6.20.0"
@@ -871,9 +901,9 @@
871
901
  }
872
902
  },
873
903
  "node_modules/appium-ios-simulator": {
874
- "version": "6.1.17",
875
- "resolved": "https://registry.npmjs.org/appium-ios-simulator/-/appium-ios-simulator-6.1.17.tgz",
876
- "integrity": "sha512-GrQqHWSp5JAp8F3FS8X2mVzXHkdTf9mwN8rX2xTg1G/yFQBmQw/3/wJPUhCVm/hFHXYSPIHYMClprdKRjhTGuQ==",
904
+ "version": "6.2.0",
905
+ "resolved": "https://registry.npmjs.org/appium-ios-simulator/-/appium-ios-simulator-6.2.0.tgz",
906
+ "integrity": "sha512-VpFMKSVQBoRVnp86sXt2nr4qtOGm23sQytCDWGDsQ1povIb3RG5Lyato6IQYAI5VRPesDois3DgOAR70DnnauQ==",
877
907
  "license": "Apache-2.0",
878
908
  "dependencies": {
879
909
  "@appium/support": "^6.0.0",
@@ -883,7 +913,7 @@
883
913
  "asyncbox": "^3.0.0",
884
914
  "bluebird": "^3.5.1",
885
915
  "lodash": "^4.2.1",
886
- "node-simctl": "^7.4.1",
916
+ "node-simctl": "^7.7.1",
887
917
  "semver": "^7.0.0",
888
918
  "source-map-support": "^0.x",
889
919
  "teen_process": "^2.0.0"
@@ -2601,6 +2631,7 @@
2601
2631
  "version": "4.4.2",
2602
2632
  "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
2603
2633
  "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==",
2634
+ "deprecated": "This package is deprecated. Use the optional chaining (?.) operator instead.",
2604
2635
  "license": "MIT"
2605
2636
  },
2606
2637
  "node_modules/lodash.isfinite": {
@@ -2781,9 +2812,9 @@
2781
2812
  }
2782
2813
  },
2783
2814
  "node_modules/moment-timezone": {
2784
- "version": "0.5.46",
2785
- "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.46.tgz",
2786
- "integrity": "sha512-ZXm9b36esbe7OmdABqIWJuBBiLLwAjrN7CE+7sYdCCx82Nabt1wHDj8TVseS59QIlfFPbOoiBPm6ca9BioG4hw==",
2815
+ "version": "0.5.47",
2816
+ "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.47.tgz",
2817
+ "integrity": "sha512-UbNt/JAWS0m/NJOebR0QMRHBk0hu03r5dx9GK8Cs0AS3I81yDcOc9k+DytPItgVvBP7J6Mf6U2n3BPAacAV9oA==",
2787
2818
  "license": "MIT",
2788
2819
  "dependencies": {
2789
2820
  "moment": "^2.29.4"
@@ -2916,9 +2947,9 @@
2916
2947
  }
2917
2948
  },
2918
2949
  "node_modules/node-simctl": {
2919
- "version": "7.6.5",
2920
- "resolved": "https://registry.npmjs.org/node-simctl/-/node-simctl-7.6.5.tgz",
2921
- "integrity": "sha512-YOylJayVx4bVuCC/VkApHrV3jVHQ2vVcZb3h61WlozL9/G9y49GfCQBZ9Ij4bk+RQCbs0u4ClTydB+JqjXL3ZQ==",
2950
+ "version": "7.7.1",
2951
+ "resolved": "https://registry.npmjs.org/node-simctl/-/node-simctl-7.7.1.tgz",
2952
+ "integrity": "sha512-MnCFJTusdKlZC2fmU+xfEpisN6ddNbBIBCH/IU+o4BjBPQWFVPZMSXr5slPX51QX05F1NbuiczTZyr88cJMqVQ==",
2922
2953
  "license": "Apache-2.0",
2923
2954
  "dependencies": {
2924
2955
  "@appium/logger": "^1.3.0",
@@ -3310,12 +3341,6 @@
3310
3341
  "url": "https://github.com/sponsors/ljharb"
3311
3342
  }
3312
3343
  },
3313
- "node_modules/queue-tick": {
3314
- "version": "1.0.1",
3315
- "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz",
3316
- "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==",
3317
- "license": "MIT"
3318
- },
3319
3344
  "node_modules/range-parser": {
3320
3345
  "version": "1.2.1",
3321
3346
  "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
@@ -3530,9 +3555,9 @@
3530
3555
  "optional": true
3531
3556
  },
3532
3557
  "node_modules/semver": {
3533
- "version": "7.6.3",
3534
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
3535
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
3558
+ "version": "7.7.0",
3559
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.0.tgz",
3560
+ "integrity": "sha512-DrfFnPzblFmNrIZzg5RzHegbiRWg7KMR7btwi2yjHwx06zsUbO5g613sVwEV7FTwmzJu+Io0lJe2GJ3LxqpvBQ==",
3536
3561
  "license": "ISC",
3537
3562
  "bin": {
3538
3563
  "semver": "bin/semver.js"
@@ -3958,13 +3983,12 @@
3958
3983
  }
3959
3984
  },
3960
3985
  "node_modules/streamx": {
3961
- "version": "2.21.1",
3962
- "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.21.1.tgz",
3963
- "integrity": "sha512-PhP9wUnFLa+91CPy3N6tiQsK+gnYyUNuk15S3YG/zjYE7RuPeCjJngqnzpC31ow0lzBHQ+QGO4cNJnd0djYUsw==",
3986
+ "version": "2.22.0",
3987
+ "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz",
3988
+ "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==",
3964
3989
  "license": "MIT",
3965
3990
  "dependencies": {
3966
3991
  "fast-fifo": "^1.3.2",
3967
- "queue-tick": "^1.0.1",
3968
3992
  "text-decoder": "^1.1.0"
3969
3993
  },
3970
3994
  "optionalDependencies": {
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "xcuitest",
9
9
  "xctest"
10
10
  ],
11
- "version": "8.1.0",
11
+ "version": "8.3.0",
12
12
  "author": "Appium Contributors",
13
13
  "license": "Apache-2.0",
14
14
  "repository": {
@@ -79,7 +79,7 @@
79
79
  "@colors/colors": "^1.6.0",
80
80
  "appium-idb": "^1.6.13",
81
81
  "appium-ios-device": "^2.8.0",
82
- "appium-ios-simulator": "^6.1.7",
82
+ "appium-ios-simulator": "^6.2.0",
83
83
  "appium-remote-debugger": "^12.1.1",
84
84
  "appium-webdriveragent": "^9.0.1",
85
85
  "appium-xcode": "^5.1.4",
@@ -92,7 +92,7 @@
92
92
  "lru-cache": "^10.0.0",
93
93
  "moment": "^2.29.4",
94
94
  "moment-timezone": "^0.x",
95
- "node-simctl": "^7.6.0",
95
+ "node-simctl": "^7.7.1",
96
96
  "portscanner": "^2.2.0",
97
97
  "semver": "^7.5.4",
98
98
  "source-map-support": "^0.x",