appium-xcuitest-driver 10.13.1 → 10.13.3

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 (49) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/build/lib/commands/app-management.d.ts +99 -76
  3. package/build/lib/commands/app-management.d.ts.map +1 -1
  4. package/build/lib/commands/app-management.js +83 -73
  5. package/build/lib/commands/app-management.js.map +1 -1
  6. package/build/lib/commands/certificate.d.ts +14 -19
  7. package/build/lib/commands/certificate.d.ts.map +1 -1
  8. package/build/lib/commands/certificate.js +24 -31
  9. package/build/lib/commands/certificate.js.map +1 -1
  10. package/build/lib/commands/element.d.ts +83 -67
  11. package/build/lib/commands/element.d.ts.map +1 -1
  12. package/build/lib/commands/element.js +111 -134
  13. package/build/lib/commands/element.js.map +1 -1
  14. package/build/lib/commands/file-movement.d.ts +31 -42
  15. package/build/lib/commands/file-movement.d.ts.map +1 -1
  16. package/build/lib/commands/file-movement.js +146 -205
  17. package/build/lib/commands/file-movement.js.map +1 -1
  18. package/build/lib/commands/find.d.ts +20 -12
  19. package/build/lib/commands/find.d.ts.map +1 -1
  20. package/build/lib/commands/find.js +27 -65
  21. package/build/lib/commands/find.js.map +1 -1
  22. package/build/lib/commands/navigation.d.ts.map +1 -1
  23. package/build/lib/commands/navigation.js +12 -14
  24. package/build/lib/commands/navigation.js.map +1 -1
  25. package/build/lib/commands/performance.d.ts +36 -55
  26. package/build/lib/commands/performance.d.ts.map +1 -1
  27. package/build/lib/commands/performance.js +93 -86
  28. package/build/lib/commands/performance.js.map +1 -1
  29. package/build/lib/commands/recordscreen.d.ts +31 -63
  30. package/build/lib/commands/recordscreen.d.ts.map +1 -1
  31. package/build/lib/commands/recordscreen.js +29 -28
  32. package/build/lib/commands/recordscreen.js.map +1 -1
  33. package/build/lib/execute-method-map.d.ts.map +1 -1
  34. package/build/lib/execute-method-map.js +0 -1
  35. package/build/lib/execute-method-map.js.map +1 -1
  36. package/lib/commands/app-management.ts +414 -0
  37. package/lib/commands/{certificate.js → certificate.ts} +55 -50
  38. package/lib/commands/element.ts +419 -0
  39. package/lib/commands/{file-movement.js → file-movement.ts} +212 -235
  40. package/lib/commands/find.ts +277 -0
  41. package/lib/commands/navigation.js +20 -14
  42. package/lib/commands/{performance.js → performance.ts} +133 -114
  43. package/lib/commands/{recordscreen.js → recordscreen.ts} +78 -50
  44. package/lib/execute-method-map.ts +0 -1
  45. package/npm-shrinkwrap.json +5 -5
  46. package/package.json +1 -1
  47. package/lib/commands/app-management.js +0 -346
  48. package/lib/commands/element.js +0 -423
  49. package/lib/commands/find.js +0 -205
@@ -25,14 +25,10 @@ const CONTAINER_TYPE_SEPARATOR = ':';
25
25
  const CONTAINER_DOCUMENTS_PATH = 'Documents';
26
26
  const OBJECT_NOT_FOUND_ERROR_MESSAGE = 'OBJECT_NOT_FOUND';
27
27
  /**
28
- * Parses the actual path and the bundle identifier from the given path string
28
+ * Parses the actual path and the bundle identifier from the given path string.
29
29
  *
30
- * @this {XCUITestDriver}
31
- * @param {string} remotePath - The given path string. The string should
32
- * match `CONTAINER_PATH_PATTERN` regexp, otherwise an error is going
33
- * to be thrown. A valid string example: `@bundle.identifier:container_type/relative_path_in_container`
34
- * @param {import('./types').ContainerRootSupplier|string} [containerRootSupplier] - Container root path supplier function or string value
35
- * @returns {Promise<import('./types').ContainerObject>}
30
+ * @param remotePath - Path string matching `CONTAINER_PATH_PATTERN`, e.g. `@bundle.id:container/relative/path`
31
+ * @param containerRootSupplier - Container root path supplier or explicit root
36
32
  */
37
33
  async function parseContainerPath(remotePath, containerRootSupplier) {
38
34
  const match = CONTAINER_PATH_PATTERN.exec(remotePath);
@@ -41,7 +37,8 @@ async function parseContainerPath(remotePath, containerRootSupplier) {
41
37
  `starts with '${CONTAINER_PATH_MARKER}' and is separated from the ` +
42
38
  `relative path with a single slash. '${remotePath}' is given instead`);
43
39
  }
44
- let [, bundleId, relativePath] = match;
40
+ const [, bundleIdMatch, relativePath] = match;
41
+ let bundleId = bundleIdMatch;
45
42
  let containerType = null;
46
43
  const typeSeparatorPos = bundleId.indexOf(CONTAINER_TYPE_SEPARATOR);
47
44
  // We only consider container type exists if its length is greater than zero
@@ -63,11 +60,126 @@ async function parseContainerPath(remotePath, containerRootSupplier) {
63
60
  return { bundleId, pathInContainer, containerType };
64
61
  }
65
62
  /**
63
+ * Pushes the given data to a file on the remote device.
64
+ *
65
+ * @param remotePath The full path to the remote file or
66
+ * a file inside a package bundle. Check the documentation on
67
+ * `pushFileToRealDevice` and `pushFileToSimulator` for more information
68
+ * on acceptable values.
69
+ * @param base64Data Base64 encoded data to be written to the
70
+ * remote file. The remote file will be silently overridden if it already exists.
71
+ * @throws {Error} If there was an error while pushing the data
72
+ */
73
+ async function pushFile(remotePath, base64Data) {
74
+ if (remotePath.endsWith('/')) {
75
+ throw new driver_1.errors.InvalidArgumentError(`It is expected that remote path points to a file and not to a folder. ` +
76
+ `'${remotePath}' is given instead`);
77
+ }
78
+ let b64StringData;
79
+ if (lodash_1.default.isArray(base64Data)) {
80
+ // some clients (ahem) java, send a byte array encoding utf8 characters
81
+ // instead of a string, which would be infinitely better!
82
+ b64StringData = Buffer.from(base64Data).toString('utf8');
83
+ }
84
+ else if (Buffer.isBuffer(base64Data)) {
85
+ b64StringData = base64Data.toString('utf8');
86
+ }
87
+ else {
88
+ b64StringData = base64Data;
89
+ }
90
+ return this.isSimulator()
91
+ ? await pushFileToSimulator.bind(this)(remotePath, b64StringData)
92
+ : await pushFileToRealDevice.bind(this)(remotePath, b64StringData);
93
+ }
94
+ /**
95
+ * Pushes the given data to a file on the remote device.
96
+ *
97
+ * @param remotePath - The full path to the remote file
98
+ * or a specially formatted path, which points to an item inside an app bundle.
99
+ * @param payload - Base64-encoded content of the file to be pushed.
100
+ */
101
+ async function mobilePushFile(remotePath, payload) {
102
+ return await this.pushFile(remotePath, payload);
103
+ }
104
+ /**
105
+ * Pulls a remote file from the device.
106
+ *
107
+ * @param remotePath The full path to the remote file
108
+ * or a specially formatted path, which points to an item inside app bundle.
109
+ * See the documentation for `pullFromRealDevice` and `pullFromSimulator`
110
+ * to get more information on acceptable values.
111
+ * @returns Base64 encoded content of the pulled file
112
+ * @throws {Error} If the pull operation failed
113
+ */
114
+ async function pullFile(remotePath) {
115
+ if (remotePath.endsWith('/')) {
116
+ throw new driver_1.errors.InvalidArgumentError(`It is expected that remote path points to a file and not to a folder. ` +
117
+ `'${remotePath}' is given instead`);
118
+ }
119
+ return this.isSimulator()
120
+ ? await pullFromSimulator.bind(this)(remotePath, true)
121
+ : await pullFromRealDevice.bind(this)(remotePath, true);
122
+ }
123
+ /**
124
+ * Pulls a remote file from the device.
125
+ *
126
+ * @param remotePath - The full path to the remote file
127
+ * or a specially formatted path, which points to an item inside app bundle. See the documentation for `pullFromRealDevice` and `pullFromSimulator` to get more information on acceptable values.
128
+ * @returns The same as in `pullFile`
129
+ */
130
+ async function mobilePullFile(remotePath) {
131
+ return await this.pullFile(remotePath);
132
+ }
133
+ /**
134
+ * Delete a remote folder from the device.
135
+ *
136
+ * @param remotePath - The full path to the remote folder or a specially formatted path, which points to an item inside app bundle. See the documentation for `pullFromRealDevice` and `pullFromSimulator` to get more information on acceptable values.
137
+ * @returns Nothing
138
+ */
139
+ async function mobileDeleteFolder(remotePath) {
140
+ if (!remotePath.endsWith('/')) {
141
+ remotePath = `${remotePath}/`;
142
+ }
143
+ await deleteFileOrFolder.bind(this)(remotePath);
144
+ }
145
+ /**
146
+ * Delete a remote file from the device.
66
147
  *
67
- * @param {string} originalPath
68
- * @param {string} root
69
- * @returns {void}
148
+ * @param remotePath - The full path to the remote file or a specially formatted path, which points to an item inside app bundle. See the documentation for `pullFromRealDevice` and `pullFromSimulator` to get more information on acceptable values.
149
+ * @returns Nothing
150
+ */
151
+ async function mobileDeleteFile(remotePath) {
152
+ if (remotePath.endsWith('/')) {
153
+ throw new driver_1.errors.InvalidArgumentError(`It is expected that remote path points to a file and not to a folder. ` +
154
+ `'${remotePath}' is given instead`);
155
+ }
156
+ await deleteFileOrFolder.bind(this)(remotePath);
157
+ }
158
+ /**
159
+ * Pulls the whole folder from the remote device
160
+ *
161
+ * @param remotePath The full path to a folder on the
162
+ * remote device or a folder inside an application bundle
163
+ * @returns Zipped and base64-encoded content of the folder
164
+ * @throws {Error} If there was a failure while getting the folder content
70
165
  */
166
+ async function pullFolder(remotePath) {
167
+ if (!remotePath.endsWith('/')) {
168
+ remotePath = `${remotePath}/`;
169
+ }
170
+ return this.isSimulator()
171
+ ? await pullFromSimulator.bind(this)(remotePath, false)
172
+ : await pullFromRealDevice.bind(this)(remotePath, false);
173
+ }
174
+ /**
175
+ * Pulls the whole folder from the device under test.
176
+ *
177
+ * @param remotePath - The full path to the remote folder
178
+ * @returns The same as `pullFolder`
179
+ */
180
+ async function mobilePullFolder(remotePath) {
181
+ return await this.pullFolder(remotePath);
182
+ }
71
183
  function verifyIsSubPath(originalPath, root) {
72
184
  const normalizedRoot = path_1.default.normalize(root);
73
185
  const normalizedPath = path_1.default.normalize(path_1.default.dirname(originalPath));
@@ -76,13 +188,6 @@ function verifyIsSubPath(originalPath, root) {
76
188
  throw new Error(`'${normalizedPath}' is expected to be a subpath of '${normalizedRoot}'`);
77
189
  }
78
190
  }
79
- /**
80
- *
81
- * @this {XCUITestDriver}
82
- * @param {string} [bundleId]
83
- * @param {string} [containerType]
84
- * @returns {Promise<any>}
85
- */
86
191
  async function createAfcClient(bundleId, containerType) {
87
192
  const udid = this.device.udid;
88
193
  if (!bundleId) {
@@ -97,20 +202,9 @@ async function createAfcClient(bundleId, containerType) {
97
202
  ? await service.vendDocuments(bundleId)
98
203
  : await service.vendContainer(bundleId);
99
204
  }
100
- /**
101
- *
102
- * @param {string} [containerType]
103
- * @returns {boolean}
104
- */
105
205
  function isDocumentsContainer(containerType) {
106
- return lodash_1.default.toLower(containerType) === lodash_1.default.toLower(CONTAINER_DOCUMENTS_PATH);
206
+ return lodash_1.default.toLower(containerType ?? '') === lodash_1.default.toLower(CONTAINER_DOCUMENTS_PATH);
107
207
  }
108
- /**
109
- *
110
- * @this {XCUITestDriver}
111
- * @param {string} remotePath
112
- * @returns {Promise<{service: any, relativePath: string}>}
113
- */
114
208
  async function createService(remotePath) {
115
209
  if (CONTAINER_PATH_PATTERN.test(remotePath)) {
116
210
  const { bundleId, pathInContainer, containerType } = await parseContainerPath.bind(this)(remotePath);
@@ -128,22 +222,14 @@ async function createService(remotePath) {
128
222
  /**
129
223
  * Save the given base64 data chunk as a binary file on the Simulator under test.
130
224
  *
131
- * @this {XCUITestDriver}
132
- * @param {string} remotePath - The remote path on the device. This variable can be prefixed with
133
- * bundle id, so then the file will be uploaded to the corresponding
134
- * application container instead of the default media folder, for example
135
- * '@com.myapp.bla:data/RelativePathInContainer/111.png'. The '@' character at the
136
- * beginning of the argument is mandatory in such case. The colon at the end of bundle identifier
137
- * is optional and is used to distinguish the container type.
138
- * Possible values there are 'app', 'data', 'groups', '<A specific App Group container>'.
139
- * The default value is 'app'.
140
- * The relative folder path is ignored if the file is going to be uploaded
141
- * to the default media folder and only the file name is considered important.
142
- * @param {string} base64Data - Base-64 encoded content of the file to be uploaded.
225
+ * @param remotePath - Remote path on the simulator. Supports bundle-id-prefixed format
226
+ * (e.g. `@com.myapp.bla:data/path/in/container/file.png`) to target
227
+ * application containers; otherwise uploads to the default media folder.
228
+ * @param base64Data - Base-64 encoded content of the file to be uploaded.
143
229
  */
144
230
  async function pushFileToSimulator(remotePath, base64Data) {
145
231
  const buffer = Buffer.from(base64Data, 'base64');
146
- const device = /** @type {import('appium-ios-simulator').Simulator} */ (this.device);
232
+ const device = this.device;
147
233
  if (CONTAINER_PATH_PATTERN.test(remotePath)) {
148
234
  const { bundleId, pathInContainer: dstPath } = await parseContainerPath.bind(this)(remotePath, async (appBundle, containerType) => await device.simctl.getAppContainer(appBundle, containerType));
149
235
  this.log.info(`Parsed bundle identifier '${bundleId}' from '${remotePath}'. ` +
@@ -166,22 +252,12 @@ async function pushFileToSimulator(remotePath, base64Data) {
166
252
  }
167
253
  }
168
254
  /**
169
- * Save the given base64 data chunk as a binary file on the device under test.
255
+ * Save the given base64 data chunk as a binary file on a real device.
170
256
  *
171
- * @this {XCUITestDriver}
172
- * @param {string} remotePath - The remote path on the device. This variable can be prefixed with
173
- * bundle id, so then the file will be uploaded to the corresponding
174
- * application container instead of the default media folder. Use
175
- * `@<app_bundle_id>:<optional_container_type>/<path_to_the_file_or_folder_inside_container>`
176
- * format to pull a file or a folder from an application container of the given type.
177
- * The only supported container type is 'documents'. If the container type is not set
178
- * explicitly for a bundle id, then the default application container is going to be mounted
179
- * (aka --container ifuse argument)
180
- * e.g. If `@com.myapp.bla:documents/111.png` is provided,
181
- * `On My iPhone/<app name>` in Files app will be mounted in the host machine.
182
- * Base64 encoded `111.png` will be pushed into `On My iPhone/<app name>/111.png`
183
- * as base64 decoded data.
184
- * @param {string} base64Data - Base-64 encoded content of the file to be uploaded.
257
+ * @param remotePath - Remote path on the device. Supports the same bundle-id-prefixed
258
+ * format as simulator uploads (e.g. `@com.myapp.bla:documents/file.png`)
259
+ * to target application containers; otherwise defaults to media folder.
260
+ * @param base64Data - Base-64 encoded content of the file to be uploaded.
185
261
  */
186
262
  async function pushFileToRealDevice(remotePath, base64Data) {
187
263
  const { service, relativePath } = await createService.bind(this)(remotePath);
@@ -196,12 +272,6 @@ async function pushFileToRealDevice(remotePath, base64Data) {
196
272
  service.close();
197
273
  }
198
274
  }
199
- /**
200
- *
201
- * @this {XCUITestDriver}
202
- * @param {string} remotePath
203
- * @returns {Promise<void>}
204
- */
205
275
  async function deleteFileOrFolder(remotePath) {
206
276
  return this.isSimulator()
207
277
  ? await deleteFromSimulator.bind(this)(remotePath)
@@ -211,19 +281,18 @@ async function deleteFileOrFolder(remotePath) {
211
281
  * Get the content of given file or folder from iOS Simulator and return it as base-64 encoded string.
212
282
  * Folder content is recursively packed into a zip archive.
213
283
  *
214
- * @this {XCUITestDriver}
215
- * @param {string} remotePath - The path to a file or a folder, which exists in the corresponding application
284
+ * @param remotePath - The path to a file or a folder, which exists in the corresponding application
216
285
  * container on Simulator. Use
217
286
  * `@<app_bundle_id>:<optional_container_type>/<path_to_the_file_or_folder_inside_container>`
218
287
  * format to pull a file or a folder from an application container of the given type.
219
288
  * Possible container types are `app`, `data`, `groups`, `<A specific App Group container>`.
220
289
  * The default type is `app`.
221
- * @param {boolean} isFile - Whether the destination item is a file or a folder
222
- * @returns {Promise<string>} Base-64 encoded content of the file.
290
+ * @param isFile - Whether the destination item is a file or a folder
291
+ * @returns Base-64 encoded content of the file.
223
292
  */
224
293
  async function pullFromSimulator(remotePath, isFile) {
225
294
  let pathOnServer;
226
- const device = /** @type {import('appium-ios-simulator').Simulator} */ (this.device);
295
+ const device = this.device;
227
296
  if (CONTAINER_PATH_PATTERN.test(remotePath)) {
228
297
  const { bundleId, pathInContainer: dstPath } = await parseContainerPath.bind(this)(remotePath, async (appBundle, containerType) => await device.simctl.getAppContainer(appBundle, containerType));
229
298
  this.log.info(`Parsed bundle identifier '${bundleId}' from '${remotePath}'. ` +
@@ -248,8 +317,7 @@ async function pullFromSimulator(remotePath, isFile) {
248
317
  * Get the content of given file or folder from the real device under test and return it as base-64 encoded string.
249
318
  * Folder content is recursively packed into a zip archive.
250
319
  *
251
- * @this {XCUITestDriver}
252
- * @param {string} remotePath - The path to an existing remote file on the device. This variable can be prefixed with
320
+ * @param remotePath - The path to an existing remote file on the device. This variable can be prefixed with
253
321
  * bundle id, so then the file will be downloaded from the corresponding
254
322
  * application container instead of the default media folder. Use
255
323
  * `@<app_bundle_id>:<optional_container_type>/<path_to_the_file_or_folder_inside_container>`
@@ -262,8 +330,8 @@ async function pullFromSimulator(remotePath, isFile) {
262
330
  * `On My iPhone/<app name>/111.png` will be pulled into the mounted host machine
263
331
  * and Appium returns the data as base64-encoded string to client.
264
332
  * `@com.myapp.bla:documents/` means `On My iPhone/<app name>`.
265
- * @param {boolean} isFile - Whether the destination item is a file or a folder
266
- * @returns {Promise<string>} Base-64 encoded content of the remote file
333
+ * @param isFile - Whether the destination item is a file or a folder
334
+ * @returns Base-64 encoded content of the remote file
267
335
  */
268
336
  async function pullFromRealDevice(remotePath, isFile) {
269
337
  const { service, relativePath } = await createService.bind(this)(remotePath);
@@ -286,18 +354,17 @@ async function pullFromRealDevice(remotePath, isFile) {
286
354
  /**
287
355
  * Remove the file or folder from the device
288
356
  *
289
- * @this {XCUITestDriver}
290
- * @param {string} remotePath - The path to a file or a folder, which exists in the corresponding application
357
+ * @param remotePath - The path to a file or a folder, which exists in the corresponding application
291
358
  * container on Simulator. Use
292
359
  * `@<app_bundle_id>:<optional_container_type>/<path_to_the_file_or_folder_inside_container>`
293
360
  * format to pull a file or a folder from an application container of the given type.
294
361
  * Possible container types are 'app', 'data', 'groups', '<A specific App Group container>'.
295
362
  * The default type is 'app'.
296
- * @returns {Promise<void>}
363
+ * @returns Nothing
297
364
  */
298
365
  async function deleteFromSimulator(remotePath) {
299
366
  let pathOnServer;
300
- const device = /** @type {import('appium-ios-simulator').Simulator} */ (this.device);
367
+ const device = this.device;
301
368
  if (CONTAINER_PATH_PATTERN.test(remotePath)) {
302
369
  const { bundleId, pathInContainer: dstPath } = await parseContainerPath.bind(this)(remotePath, async (appBundle, containerType) => await device.simctl.getAppContainer(appBundle, containerType));
303
370
  this.log.info(`Parsed bundle identifier '${bundleId}' from '${remotePath}'. ` +
@@ -318,8 +385,7 @@ async function deleteFromSimulator(remotePath) {
318
385
  /**
319
386
  * Remove the file or folder from the device
320
387
  *
321
- * @this {XCUITestDriver}
322
- * @param {string} remotePath - The path to an existing remote file on the device. This variable can be prefixed with
388
+ * @param remotePath - The path to an existing remote file on the device. This variable can be prefixed with
323
389
  * bundle id, so then the file will be downloaded from the corresponding
324
390
  * application container instead of the default media folder. Use
325
391
  * `@<app_bundle_id>:<optional_container_type>/<path_to_the_file_or_folder_inside_container>`
@@ -332,7 +398,7 @@ async function deleteFromSimulator(remotePath) {
332
398
  * `On My iPhone/<app name>/111.png` will be pulled into the mounted host machine
333
399
  * and Appium returns the data as base64-encoded string to client.
334
400
  * `@com.myapp.bla:documents/` means `On My iPhone/<app name>`.
335
- * @returns {Promise<void>}
401
+ * @returns Nothing
336
402
  */
337
403
  async function deleteFromRealDevice(remotePath) {
338
404
  const { service, relativePath } = await createService.bind(this)(remotePath);
@@ -349,129 +415,4 @@ async function deleteFromRealDevice(remotePath) {
349
415
  service.close();
350
416
  }
351
417
  }
352
- /**
353
- * Pushes the given data to a file on the remote device
354
- *
355
- * @param {string} remotePath The full path to the remote file or
356
- * a file inside a package bundle. Check the documentation on
357
- * `pushFileToRealDevice` and `pushFileToSimulator` for more information
358
- * on acceptable values.
359
- * @param {string} base64Data Base64 encoded data to be written to the
360
- * remote file. The remote file will be silently overridden if it already exists.
361
- * @throws {Error} If there was an error while pushing the data
362
- * @this {XCUITestDriver}
363
- */
364
- async function pushFile(remotePath, base64Data) {
365
- if (remotePath.endsWith('/')) {
366
- throw new driver_1.errors.InvalidArgumentError(`It is expected that remote path points to a file and not to a folder. ` +
367
- `'${remotePath}' is given instead`);
368
- }
369
- if (lodash_1.default.isArray(base64Data)) {
370
- // some clients (ahem) java, send a byte array encoding utf8 characters
371
- // instead of a string, which would be infinitely better!
372
- base64Data = Buffer.from(base64Data).toString('utf8');
373
- }
374
- return this.isSimulator()
375
- ? await pushFileToSimulator.bind(this)(remotePath, base64Data)
376
- : await pushFileToRealDevice.bind(this)(remotePath, base64Data);
377
- }
378
- /**
379
- * Pushes the given data to a file on the remote device.
380
- *
381
- * @param {string} remotePath - The full path to the remote file
382
- * or a specially formatted path, which points to an item inside an app bundle.
383
- * @param {string} payload - Base64-encoded content of the file to be pushed.
384
- * @this {XCUITestDriver}
385
- */
386
- async function mobilePushFile(remotePath, payload) {
387
- return await this.pushFile(remotePath, payload);
388
- }
389
- /**
390
- * Pulls a remote file from the device.
391
- *
392
- * @param {string} remotePath The full path to the remote file
393
- * or a specially formatted path, which points to an item inside app bundle.
394
- * See the documentation for `pullFromRealDevice` and `pullFromSimulator`
395
- * to get more information on acceptable values.
396
- * @returns {Promise<string>} Base64 encoded content of the pulled file
397
- * @throws {Error} If the pull operation failed
398
- * @this {XCUITestDriver}
399
- */
400
- async function pullFile(remotePath) {
401
- if (remotePath.endsWith('/')) {
402
- throw new driver_1.errors.InvalidArgumentError(`It is expected that remote path points to a file and not to a folder. ` +
403
- `'${remotePath}' is given instead`);
404
- }
405
- return this.isSimulator()
406
- ? await pullFromSimulator.bind(this)(remotePath, true)
407
- : await pullFromRealDevice.bind(this)(remotePath, true);
408
- }
409
- /**
410
- * Pulls a remote file from the device.
411
- *
412
- * @param {string} remotePath - The full path to the remote file
413
- * or a specially formatted path, which points to an item inside app bundle. See the documentation for `pullFromRealDevice` and `pullFromSimulator` to get more information on acceptable values.
414
- * @returns {Promise<string>} The same as in `pullFile`
415
- * @this {XCUITestDriver}
416
- */
417
- async function mobilePullFile(remotePath) {
418
- return await this.pullFile(remotePath);
419
- }
420
- /**
421
- * Delete a remote folder from the device.
422
- *
423
- * @param {string} remotePath - The full path to the remote folder or a specially formatted path, which points to an item inside app bundle. See the documentation for `pullFromRealDevice` and `pullFromSimulator` to get more information on acceptable values.
424
- * @this {XCUITestDriver}
425
- * @returns {Promise<void>}
426
- */
427
- async function mobileDeleteFolder(remotePath) {
428
- if (!remotePath.endsWith('/')) {
429
- remotePath = `${remotePath}/`;
430
- }
431
- await deleteFileOrFolder.bind(this)(remotePath);
432
- }
433
- /**
434
- * Delete a remote file from the device.
435
- *
436
- * @param {string} remotePath - The full path to the remote file or a specially formatted path, which points to an item inside app bundle. See the documentation for `pullFromRealDevice` and `pullFromSimulator` to get more information on acceptable values.
437
- * @this {XCUITestDriver}
438
- * @returns {Promise<void>}
439
- */
440
- async function mobileDeleteFile(remotePath) {
441
- if (remotePath.endsWith('/')) {
442
- throw new driver_1.errors.InvalidArgumentError(`It is expected that remote path points to a file and not to a folder. ` +
443
- `'${remotePath}' is given instead`);
444
- }
445
- await deleteFileOrFolder.bind(this)(remotePath);
446
- }
447
- /**
448
- * Pulls the whole folder from the remote device
449
- *
450
- * @param {string} remotePath The full path to a folder on the
451
- * remote device or a folder inside an application bundle
452
- * @returns {Promise<string>} Zipped and base64-encoded content of the folder
453
- * @throws {Error} If there was a failure while getting the folder content
454
- * @this {XCUITestDriver}
455
- */
456
- async function pullFolder(remotePath) {
457
- if (!remotePath.endsWith('/')) {
458
- remotePath = `${remotePath}/`;
459
- }
460
- return this.isSimulator()
461
- ? await pullFromSimulator.bind(this)(remotePath, false)
462
- : await pullFromRealDevice.bind(this)(remotePath, false);
463
- }
464
- /**
465
- * Pulls the whole folder from the device under test.
466
- *
467
- * @param {string} remotePath - The full path to the remote folder
468
- * @returns {Promise<string>} The same as `pullFolder`
469
- * @this {XCUITestDriver}
470
- */
471
- async function mobilePullFolder(remotePath) {
472
- return await this.pullFolder(remotePath);
473
- }
474
- /**
475
- * @typedef {import('../driver').XCUITestDriver} XCUITestDriver
476
- */
477
418
  //# sourceMappingURL=file-movement.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-movement.js","sourceRoot":"","sources":["../../../lib/commands/file-movement.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-movement.js","sourceRoot":"","sources":["../../../lib/commands/file-movement.ts"],"names":[],"mappings":";;;;;AA2BA,gDAkCC;AAaD,4BAwBC;AASD,wCAMC;AAYD,4BAUC;AASD,wCAEC;AAQD,gDAKC;AAQD,4CAQC;AAUD,gCAOC;AAQD,4CAEC;AA1MD,oDAAuB;AACvB,4CAA8D;AAC9D,gDAAwB;AACxB,yDAA2C;AAC3C,6EAI0C;AAC1C,0CAAqC;AAKrC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,kCAAkC;AAClC,MAAM,sBAAsB,GAAG,IAAI,MAAM,CAAC,IAAI,qBAAqB,cAAc,CAAC,CAAC;AACnF,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,wBAAwB,GAAG,WAAW,CAAC;AAC7C,MAAM,8BAA8B,GAAG,kBAAkB,CAAC;AAE1D;;;;;GAKG;AACI,KAAK,UAAU,kBAAkB,CAEtC,UAAkB,EAClB,qBAAsD;IAEtD,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,yCAAyC;YACvC,gBAAgB,qBAAqB,8BAA8B;YACnE,uCAAuC,UAAU,oBAAoB,CACxE,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,EAAE,aAAa,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC;IAC9C,IAAI,QAAQ,GAAG,aAAa,CAAC;IAC7B,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACpE,4EAA4E;IAC5E,yBAAyB;IACzB,IAAI,gBAAgB,GAAG,CAAC,IAAI,gBAAgB,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnE,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,aAAa,EAAE,CAAC,CAAC;QAC1D,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,gBAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACnC,MAAM,eAAe,GAAG,YAAY,CAAC;QACrC,OAAO,EAAC,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAC,CAAC;IACpD,CAAC;IACD,MAAM,aAAa,GAAG,gBAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACvD,CAAC,CAAC,MAAM,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC;QACtD,CAAC,CAAC,qBAAqB,CAAC;IAC1B,MAAM,eAAe,GAAG,cAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACxE,eAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAChD,OAAO,EAAC,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,QAAQ,CAE5B,UAAkB,EAClB,UAAsC;IAEtC,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,eAAM,CAAC,oBAAoB,CACnC,wEAAwE;YACtE,IAAI,UAAU,oBAAoB,CACrC,CAAC;IACJ,CAAC;IACD,IAAI,aAAqB,CAAC;IAC1B,IAAI,gBAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,uEAAuE;QACvE,yDAAyD;QACzD,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACvC,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,aAAa,GAAG,UAAoB,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,CAAC,WAAW,EAAE;QACvB,CAAC,CAAC,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC;QACjE,CAAC,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,cAAc,CAElC,UAAkB,EAClB,OAAe;IAEf,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,QAAQ,CAAuB,UAAkB;IACrE,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,eAAM,CAAC,oBAAoB,CACnC,wEAAwE;YACtE,IAAI,UAAU,oBAAoB,CACrC,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC,WAAW,EAAE;QACvB,CAAC,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC;QACtD,CAAC,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,cAAc,CAAuB,UAAkB;IAC3E,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACzC,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,kBAAkB,CAAuB,UAAkB;IAC/E,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,UAAU,GAAG,GAAG,UAAU,GAAG,CAAC;IAChC,CAAC;IACD,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;AAClD,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAuB,UAAkB;IAC7E,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,eAAM,CAAC,oBAAoB,CACnC,wEAAwE;YACtE,IAAI,UAAU,oBAAoB,CACrC,CAAC;IACJ,CAAC;IACD,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,UAAU,CAAuB,UAAkB;IACvE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,UAAU,GAAG,GAAG,UAAU,GAAG,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC,WAAW,EAAE;QACvB,CAAC,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC;QACvD,CAAC,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAuB,UAAkB;IAC7E,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,eAAe,CAAC,YAAoB,EAAE,IAAY;IACzD,MAAM,cAAc,GAAG,cAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,cAAI,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAClE,4EAA4E;IAC5E,IAAI,cAAc,KAAK,YAAY,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,IAAI,cAAc,qCAAqC,cAAc,GAAG,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAE5B,QAAwB,EACxB,aAA6B;IAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAc,CAAC;IAExC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,MAAM,4BAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,4BAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAE7D,MAAM,EACJ,2BAA2B,GAAG,KAAK,GACpC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAEtC,IAAI,2BAA2B,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,oBAAoB,CAAC,aAAa,CAAC;QACxC,CAAC,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC;QACvC,CAAC,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,oBAAoB,CAAC,aAA6B;IACzD,OAAO,gBAAC,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC,KAAK,gBAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;AAChF,CAAC;AAED,KAAK,UAAU,aAAa,CAE1B,UAAkB;IAElB,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,MAAM,EAAC,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAC,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;QACnG,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC1E,MAAM,YAAY,GAAG,oBAAoB,CAAC,aAAa,CAAC;YACtD,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,eAAe,CAAC;YACtD,CAAC,CAAC,eAAe,CAAC;QACpB,OAAO,EAAC,OAAO,EAAE,YAAY,EAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,mBAAmB,CAEhC,UAAkB,EAClB,UAAkB;IAElB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAmB,CAAC;IACxC,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,MAAM,EAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAC,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9E,UAAU,EACV,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,CACjC,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC,CAChE,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,6BAA6B,QAAQ,WAAW,UAAU,KAAK;YAC7D,2BAA2B,OAAO,GAAG,CACxC,CAAC;QACF,IAAI,CAAC,CAAC,MAAM,YAAE,CAAC,MAAM,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,2BAA2B,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;YAChG,MAAM,IAAA,gBAAM,EAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,YAAE,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,iBAAO,CAAC,OAAO,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,YAAE,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;YAAS,CAAC;QACT,MAAM,YAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,oBAAoB,CAEjC,UAAkB,EAClB,UAAkB;IAElB,MAAM,EAAC,OAAO,EAAE,YAAY,EAAC,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3E,IAAI,CAAC;QACH,MAAM,IAAA,iCAAkB,EAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC;IACrF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,+BAA+B,UAAU,sBAAsB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9F,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAuB,UAAkB;IACxE,OAAO,IAAI,CAAC,WAAW,EAAE;QACvB,CAAC,CAAC,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC;QAClD,CAAC,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,iBAAiB,CAE9B,UAAkB,EAClB,MAAe;IAEf,IAAI,YAAY,CAAC;IACjB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAmB,CAAC;IACxC,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,MAAM,EAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAC,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9E,UAAU,EACV,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,CACjC,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC,CAChE,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,6BAA6B,QAAQ,WAAW,UAAU,KAAK;YAC7D,2BAA2B,OAAO,GAAG,CACxC,CAAC;QACF,YAAY,GAAG,OAAO,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAChC,YAAY,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,YAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAC/B,cAAc,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,QAAQ,YAAY,kBAAkB,CAC/E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM;QACnB,CAAC,CAAC,MAAM,cAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC;QAC3C,CAAC,CAAC,MAAM,aAAG,CAAC,aAAa,CAAC,YAAY,EAAE,EAAC,cAAc,EAAE,IAAI,EAAC,CAAC,CAAC;IAClE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,KAAK,UAAU,kBAAkB,CAE/B,UAAkB,EAClB,MAAe;IAEf,MAAM,EAAC,OAAO,EAAE,YAAY,EAAC,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3E,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,4CAA4C,UAAU,GAAG,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,GAAG,CAAC,CAAC;QAC/E,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,EAAE;YACtB,CAAC,CAAC,CAAC,MAAM,IAAA,iCAAkB,EAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACtE,CAAC,CAAC,CAAC,MAAM,IAAA,mCAAoB,EAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrE,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,mBAAmB,CAAuB,UAAkB;IACzE,IAAI,YAAoB,CAAC;IACzB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAmB,CAAC;IACxC,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,MAAM,EAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAC,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9E,UAAU,EACV,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,CACjC,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC,CAChE,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,6BAA6B,QAAQ,WAAW,UAAU,KAAK;YAC7D,IAAI,OAAO,mBAAmB,CACjC,CAAC;QACF,YAAY,GAAG,OAAO,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAChC,YAAY,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,YAAY,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,YAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,eAAM,CAAC,oBAAoB,CAAC,uBAAuB,YAAY,kBAAkB,CAAC,CAAC;IAC/F,CAAC;IACD,MAAM,YAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,UAAU,oBAAoB,CAAuB,UAAkB;IAC1E,MAAM,EAAC,OAAO,EAAE,YAAY,EAAC,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3E,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,SAAS,UAAU,gCAAgC,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,21 +1,29 @@
1
+ import type { Element } from '@appium/types';
2
+ import type { XCUITestDriver } from '../driver';
1
3
  /**
2
- * @this {XCUITestDriver}
4
+ * Finds elements, delegating to web or native based on context.
3
5
  */
4
- export function findElOrEls(this: import("../driver").XCUITestDriver, strategy: any, selector: any, mult: any, context: any): Promise<any>;
6
+ export declare function findElOrEls(this: XCUITestDriver, strategy: string, selector: string, mult: true, context?: any): Promise<Element[]>;
7
+ export declare function findElOrEls(this: XCUITestDriver, strategy: string, selector: string, mult: false, context?: any): Promise<Element>;
8
+ export declare function findElOrEls(this: XCUITestDriver, strategy: string, selector: string, mult: boolean, context?: any): Promise<Element | Element[]>;
9
+ export declare function findElOrEls(this: XCUITestDriver, strategy: string, selector: string, mult: boolean, context?: any): Promise<Element | Element[]>;
5
10
  /**
6
- * @this {XCUITestDriver}
7
- * @privateRemarks I'm not sure what these objects are; they aren't `Element`.
8
- * @returns {Promise<any|any[]|undefined>}
11
+ * Finds elements natively with strategy/selector rewriting for WDA.
9
12
  */
10
- export function findNativeElementOrElements(this: import("../driver").XCUITestDriver, strategy: any, selector: any, mult: any, context: any): Promise<any | any[] | undefined>;
13
+ export declare function findNativeElementOrElements(this: XCUITestDriver, strategy: string, selector: string, mult: true, context?: any): Promise<Element[]>;
14
+ export declare function findNativeElementOrElements(this: XCUITestDriver, strategy: string, selector: string, mult: false, context?: any): Promise<Element>;
15
+ export declare function findNativeElementOrElements(this: XCUITestDriver, strategy: string, selector: string, mult: boolean, context?: any): Promise<Element | Element[]>;
11
16
  /**
12
- * @this {XCUITestDriver}
17
+ * Finds elements natively and returns either a single element or an array depending on `mult`.
18
+ *
19
+ * Returns an array when `mult` is true; otherwise returns a single element.
13
20
  */
14
- export function doNativeFind(this: import("../driver").XCUITestDriver, strategy: any, selector: any, mult: any, context: any): Promise<import("@appium/types").Element<string>[] | undefined>;
21
+ export declare function doNativeFind(this: XCUITestDriver, strategy: string, selector: string, mult: true, context?: any): Promise<Element[]>;
22
+ export declare function doNativeFind(this: XCUITestDriver, strategy: string, selector: string, mult: false, context?: any): Promise<Element>;
23
+ export declare function doNativeFind(this: XCUITestDriver, strategy: string, selector: string, mult: boolean, context?: any): Promise<Element | Element[]>;
24
+ export declare function doNativeFind(this: XCUITestDriver, strategy: string, selector: string, mult: boolean, context?: any): Promise<Element | Element[]>;
15
25
  /**
16
- * @this {XCUITestDriver}
26
+ * Finds the first visible child element inside a context.
17
27
  */
18
- export function getFirstVisibleChild(this: import("../driver").XCUITestDriver, mult: any, context: any): Promise<import("@appium/types").Element<string>[] | undefined>;
19
- export type XCUITestDriver = import("../driver").XCUITestDriver;
20
- export type Element = import("@appium/types").Element;
28
+ export declare function getFirstVisibleChild(this: XCUITestDriver, mult: boolean, context: Element | string | null): Promise<Element>;
21
29
  //# sourceMappingURL=find.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.js"],"names":[],"mappings":"AAKA;;GAEG;AACH,2IAMC;AAED;;;;GAIG;AACH,8IAFa,OAAO,CAAC,GAAG,GAAC,GAAG,EAAE,GAAC,SAAS,CAAC,CAkDxC;AAED;;GAEG;AACH,8LA4CC;AAED;;GAEG;AACH,wKA0BC;6BAqDY,OAAO,WAAW,EAAE,cAAc;sBAClC,OAAO,eAAe,EAAE,OAAO"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"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"}