appium-android-driver 12.4.6 → 12.4.7

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.
@@ -33,31 +33,29 @@ const APP_EXTENSIONS = ['.apk', '.apks'];
33
33
  const PACKAGE_INSTALL_TIMEOUT_MS = 90000;
34
34
  // These constants are in sync with
35
35
  // https://developer.apple.com/documentation/xctest/xcuiapplicationstate/xcuiapplicationstaterunningbackground?language=objc
36
- exports.APP_STATE = ({
36
+ exports.APP_STATE = {
37
37
  NOT_INSTALLED: 0,
38
38
  NOT_RUNNING: 1,
39
39
  RUNNING_IN_BACKGROUND: 3,
40
40
  RUNNING_IN_FOREGROUND: 4,
41
- });
42
- /**
43
- * @typedef {Object} IsAppInstalledOptions
44
- * @property {string} [user] - The user id
45
- */
41
+ };
46
42
  /**
47
- * @this {AndroidDriver}
48
- * @param {string} appId
49
- * @param {IsAppInstalledOptions} [opts={}]
50
- * @returns {Promise<boolean>}
43
+ * Checks whether the specified application is installed on the device.
44
+ *
45
+ * @param appId The application package identifier to check.
46
+ * @param opts Optional parameters for the installation check.
47
+ * @returns `true` if the application is installed, `false` otherwise.
51
48
  */
52
49
  async function isAppInstalled(appId, opts = {}) {
53
50
  return await this.adb.isAppInstalled(appId, opts);
54
51
  }
55
52
  /**
56
- * @this {AndroidDriver}
57
- * @param {string} appId Application package identifier
58
- * @param {string | number} [user] The user ID for which the package is installed.
53
+ * Checks whether the specified application is installed on the device.
54
+ *
55
+ * @param appId Application package identifier
56
+ * @param user The user ID for which the package is installed.
59
57
  * The `current` user id is used by default.
60
- * @returns {Promise<boolean>}
58
+ * @returns `true` if the application is installed, `false` otherwise.
61
59
  */
62
60
  async function mobileIsAppInstalled(appId, user) {
63
61
  const _opts = {};
@@ -67,9 +65,16 @@ async function mobileIsAppInstalled(appId, user) {
67
65
  return await this.isAppInstalled(appId, _opts);
68
66
  }
69
67
  /**
70
- * @this {AndroidDriver}
71
- * @param {string} appId Application package identifier
72
- * @returns {Promise<import('./types').AppState>}
68
+ * Queries the current state of the specified application.
69
+ *
70
+ * The possible states are:
71
+ * - `APP_STATE.NOT_INSTALLED` (0): The application is not installed
72
+ * - `APP_STATE.NOT_RUNNING` (1): The application is installed but not running
73
+ * - `APP_STATE.RUNNING_IN_BACKGROUND` (3): The application is running in the background
74
+ * - `APP_STATE.RUNNING_IN_FOREGROUND` (4): The application is running in the foreground
75
+ *
76
+ * @param appId Application package identifier
77
+ * @returns The current state of the application as a numeric value.
73
78
  */
74
79
  async function queryAppState(appId) {
75
80
  this.log.info(`Querying the state of '${appId}'`);
@@ -88,32 +93,34 @@ async function queryAppState(appId) {
88
93
  return exports.APP_STATE.RUNNING_IN_BACKGROUND;
89
94
  }
90
95
  /**
91
- * @this {AndroidDriver}
92
- * @param {string} appId Application package identifier
93
- * @returns {Promise<void>}
96
+ * Activates the specified application, bringing it to the foreground.
97
+ *
98
+ * This is equivalent to launching the application if it's not already running,
99
+ * or bringing it to the foreground if it's running in the background.
100
+ *
101
+ * @param appId Application package identifier
94
102
  */
95
103
  async function activateApp(appId) {
96
104
  return await this.adb.activateApp(appId);
97
105
  }
98
106
  /**
99
- * @this {AndroidDriver}
100
- * @param {string} appId
101
- * @param {Omit<import('appium-adb').UninstallOptions, 'appId'>} opts
102
- * @returns {Promise<boolean>}
107
+ * Removes (uninstalls) the specified application from the device.
108
+ *
109
+ * @param appId The application package identifier to remove.
110
+ * @param opts Optional uninstall options. See {@link UninstallOptions} for available options.
111
+ * @returns `true` if the application was successfully uninstalled, `false` otherwise.
103
112
  */
104
113
  async function removeApp(appId, opts = {}) {
105
114
  return await this.adb.uninstallApk(appId, opts);
106
115
  }
107
116
  /**
108
- * @this {import('../driver').AndroidDriver}
109
- * @param {string} appId Application package identifier
110
- * @param {number} [timeout] The count of milliseconds to wait until the
117
+ * @param appId Application package identifier
118
+ * @param timeout The count of milliseconds to wait until the
111
119
  * app is uninstalled.
112
- * @param {boolean} [keepData] Set to true in order to keep the
120
+ * @param keepData Set to true in order to keep the
113
121
  * application data and cache folders after uninstall.
114
- * @param {boolean} [skipInstallCheck] Whether to check if the app is installed prior to
122
+ * @param skipInstallCheck Whether to check if the app is installed prior to
115
123
  * uninstalling it. By default this is checked.
116
- * @returns {Promise<boolean>}
117
124
  */
118
125
  async function mobileRemoveApp(appId, timeout, keepData, skipInstallCheck) {
119
126
  return await this.removeApp(appId, {
@@ -123,10 +130,15 @@ async function mobileRemoveApp(appId, timeout, keepData, skipInstallCheck) {
123
130
  });
124
131
  }
125
132
  /**
126
- * @this {AndroidDriver}
127
- * @param {string} appId
128
- * @param {import('./types').TerminateAppOpts} [options={}]
129
- * @returns {Promise<boolean>}
133
+ * Terminates the specified application.
134
+ *
135
+ * This method forcefully stops the application and waits for it to be terminated.
136
+ * It checks that all process IDs belonging to the application have been stopped.
137
+ *
138
+ * @param appId The application package identifier to terminate.
139
+ * @param options Optional termination options. See {@link TerminateAppOpts} for available options.
140
+ * @returns `true` if the application was successfully terminated, `false` if it was not running.
141
+ * @throws {Error} If the application is still running after the timeout period.
130
142
  */
131
143
  async function terminateApp(appId, options = {}) {
132
144
  this.log.info(`Terminating '${appId}'`);
@@ -144,7 +156,6 @@ async function terminateApp(appId, options = {}) {
144
156
  `since the timeout was set to ${timeout}ms`);
145
157
  return true;
146
158
  }
147
- /** @type {number[]} */
148
159
  let currentPids = [];
149
160
  try {
150
161
  await (0, asyncbox_1.waitForCondition)(async () => {
@@ -176,11 +187,16 @@ async function terminateApp(appId, options = {}) {
176
187
  return true;
177
188
  }
178
189
  /**
179
- * @this {AndroidDriver}
180
- * @param {string} appId Application package identifier
181
- * @param {number|string} [timeout] The count of milliseconds to wait until the app is terminated.
190
+ * Terminates the specified application.
191
+ *
192
+ * This method forcefully stops the application and waits for it to be terminated.
193
+ * It checks that all process IDs belonging to the application have been stopped.
194
+ *
195
+ * @param appId Application package identifier
196
+ * @param timeout The count of milliseconds to wait until the app is terminated.
182
197
  * 500ms by default.
183
- * @returns {Promise<boolean>}
198
+ * @returns `true` if the application was successfully terminated, `false` if it was not running.
199
+ * @throws {Error} If the application is still running after the timeout period.
184
200
  */
185
201
  async function mobileTerminateApp(appId, timeout) {
186
202
  return await this.terminateApp(appId, {
@@ -188,34 +204,36 @@ async function mobileTerminateApp(appId, timeout) {
188
204
  });
189
205
  }
190
206
  /**
191
- * @this {AndroidDriver}
192
- * @param {string} appPath
193
- * @param {Omit<import('appium-adb').InstallOptions, 'appId'>} opts
194
- * @returns {Promise<void>}
207
+ * Installs the specified application on the device.
208
+ *
209
+ * The application file will be configured and validated before installation.
210
+ * Supported file formats are: `.apk`, `.apks`.
211
+ *
212
+ * @param appPath The path to the application file to install.
213
+ * Can be a local file path or a URL.
214
+ * @param opts Optional installation options. See {@link InstallOptions} for available options.
195
215
  */
196
216
  async function installApp(appPath, opts) {
197
- const localPath = await this.helpers.configureApp(appPath, APP_EXTENSIONS);
217
+ const localPath = await this.helpers.configureApp(appPath, [...APP_EXTENSIONS]);
198
218
  await this.adb.install(localPath, opts);
199
219
  }
200
220
  /**
201
- * @this {AndroidDriver}
202
- * @param {string} appPath
203
- * @param {boolean} [checkVersion]
204
- * @param {number} [timeout] The count of milliseconds to wait until the app is installed.
221
+ * @param appPath
222
+ * @param checkVersion
223
+ * @param timeout The count of milliseconds to wait until the app is installed.
205
224
  * 20000ms by default.
206
- * @param {boolean} [allowTestPackages] Set to true in order to allow test packages installation.
225
+ * @param allowTestPackages Set to true in order to allow test packages installation.
207
226
  * `false` by default.
208
- * @param {boolean} [useSdcard] Set to true to install the app on sdcard instead of the device memory.
227
+ * @param useSdcard Set to true to install the app on sdcard instead of the device memory.
209
228
  * `false` by default.
210
- * @param {boolean} [grantPermissions] Set to true in order to grant all the
229
+ * @param grantPermissions Set to true in order to grant all the
211
230
  * permissions requested in the application's manifest automatically after the installation is completed
212
231
  * under Android 6+. `false` by default.
213
- * @param {boolean} [replace] Set it to false if you don't want the application to be upgraded/reinstalled
232
+ * @param replace Set it to false if you don't want the application to be upgraded/reinstalled
214
233
  * if it is already present on the device. `true` by default.
215
- * @param {boolean} [noIncremental] Forcefully disables incremental installs if set to `true`.
234
+ * @param noIncremental Forcefully disables incremental installs if set to `true`.
216
235
  * Read https://developer.android.com/preview/features#incremental for more details.
217
236
  * `false` by default.
218
- * @returns {Promise<void>}
219
237
  */
220
238
  async function mobileInstallApp(appPath, checkVersion, timeout, allowTestPackages, useSdcard, grantPermissions, replace, noIncremental) {
221
239
  const opts = {
@@ -227,7 +245,7 @@ async function mobileInstallApp(appPath, checkVersion, timeout, allowTestPackage
227
245
  noIncremental,
228
246
  };
229
247
  if (checkVersion) {
230
- const localPath = await this.helpers.configureApp(appPath, APP_EXTENSIONS);
248
+ const localPath = await this.helpers.configureApp(appPath, [...APP_EXTENSIONS]);
231
249
  await this.adb.installOrUpgrade(localPath, null, {
232
250
  ...opts,
233
251
  enforceCurrentBuild: false,
@@ -237,31 +255,41 @@ async function mobileInstallApp(appPath, checkVersion, timeout, allowTestPackage
237
255
  return await this.installApp(appPath, opts);
238
256
  }
239
257
  /**
240
- * @this {AndroidDriver}
241
- * @param {string} appId Application package identifier
242
- * @returns {Promise<void>}
258
+ * Clears the application data and cache for the specified application.
259
+ *
260
+ * This is equivalent to running `adb shell pm clear <appId>`.
261
+ * All user data, cache, and settings for the application will be removed.
262
+ *
263
+ * @param appId Application package identifier
243
264
  */
244
265
  async function mobileClearApp(appId) {
245
266
  await this.adb.clear(appId);
246
267
  }
247
268
  /**
248
- * @this {AndroidDriver}
249
- * @returns {Promise<string>}
269
+ * Retrieves the name of the currently focused activity.
270
+ *
271
+ * @returns The fully qualified name of the current activity (e.g., 'com.example.app.MainActivity').
250
272
  */
251
273
  async function getCurrentActivity() {
252
- return /** @type {string} */ ((await this.adb.getFocusedPackageAndActivity()).appActivity);
274
+ return (await this.adb.getFocusedPackageAndActivity()).appActivity;
253
275
  }
254
276
  /**
255
- * @this {AndroidDriver}
256
- * @returns {Promise<string>}
277
+ * Retrieves the package name of the currently focused application.
278
+ *
279
+ * @returns The package identifier of the current application (e.g., 'com.example.app').
257
280
  */
258
281
  async function getCurrentPackage() {
259
- return /** @type {string} */ ((await this.adb.getFocusedPackageAndActivity()).appPackage);
282
+ return (await this.adb.getFocusedPackageAndActivity()).appPackage;
260
283
  }
261
284
  /**
262
- * @this {AndroidDriver}
263
- * @param {number} seconds
264
- * @returns {Promise<string|true>}
285
+ * Puts the application in the background for the specified duration.
286
+ *
287
+ * If a negative value is provided, the app will be sent to background and not restored.
288
+ * Otherwise, the app will be restored to the foreground after the specified duration.
289
+ *
290
+ * @param seconds The number of seconds to keep the app in the background.
291
+ * A negative value means to not restore the app after putting it to background.
292
+ * @returns `true` if the app was successfully restored, or the result of `startApp` if restoration was attempted.
265
293
  */
266
294
  async function background(seconds) {
267
295
  if (seconds < 0) {
@@ -270,25 +298,20 @@ async function background(seconds) {
270
298
  await this.adb.goToHome();
271
299
  return true;
272
300
  }
273
- let { appPackage, appActivity } = await this.adb.getFocusedPackageAndActivity();
301
+ const { appPackage, appActivity } = await this.adb.getFocusedPackageAndActivity();
274
302
  await this.adb.goToHome();
275
303
  // people can wait for a long time, so to be safe let's use the longSleep function and log
276
304
  // progress periodically.
277
305
  const sleepMs = seconds * 1000;
278
306
  const thresholdMs = 30 * 1000; // use the spin-wait for anything over this threshold
279
307
  // for our spin interval, use 1% of the total wait time, but nothing bigger than 30s
280
- const intervalMs = lodash_1.default.min([30 * 1000, parseInt(String(sleepMs / 100), 10)]);
281
- /**
282
- *
283
- * @param {{elapsedMs: number, progress: number}} param0
284
- */
308
+ const intervalMs = lodash_1.default.min([30 * 1000, parseInt(String(sleepMs / 100), 10)]) || 1000;
285
309
  const progressCb = ({ elapsedMs, progress }) => {
286
310
  const waitSecs = (elapsedMs / 1000).toFixed(0);
287
311
  const progressPct = (progress * 100).toFixed(2);
288
312
  this.log.debug(`Waited ${waitSecs}s so far (${progressPct}%)`);
289
313
  };
290
314
  await (0, asyncbox_1.longSleep)(sleepMs, { thresholdMs, intervalMs, progressCb });
291
- /** @type {import('appium-adb').StartAppOptions} */
292
315
  let args;
293
316
  if (this._cachedActivityArgs?.[`${appPackage}/${appActivity}`]) {
294
317
  // the activity was started with `startActivity`, so use those args to restart
@@ -297,7 +320,7 @@ async function background(seconds) {
297
320
  else {
298
321
  try {
299
322
  this.log.debug(`Activating app '${appPackage}' in order to restore it`);
300
- await this.adb.activateApp(/** @type {string} */ (appPackage));
323
+ await this.adb.activateApp(appPackage);
301
324
  return true;
302
325
  }
303
326
  catch { }
@@ -307,7 +330,7 @@ async function background(seconds) {
307
330
  (this.opts.appWaitActivity || '').split(',').includes(String(appActivity)))
308
331
  ? {
309
332
  // the activity is the original session activity, so use the original args
310
- pkg: /** @type {string} */ (this.opts.appPackage),
333
+ pkg: this.opts.appPackage,
311
334
  activity: this.opts.appActivity ?? undefined,
312
335
  action: this.opts.intentAction,
313
336
  category: this.opts.intentCategory,
@@ -322,14 +345,14 @@ async function background(seconds) {
322
345
  }
323
346
  : {
324
347
  // the activity was started some other way, so use defaults
325
- pkg: /** @type {string} */ (appPackage),
348
+ pkg: appPackage,
326
349
  activity: appActivity ?? undefined,
327
350
  waitPkg: appPackage ?? undefined,
328
351
  waitActivity: appActivity ?? undefined,
329
352
  stopApp: false,
330
353
  };
331
354
  }
332
- args = /** @type {import('appium-adb').StartAppOptions} */ (lodash_1.default.pickBy(args, (value) => !lodash_1.default.isUndefined(value)));
355
+ args = lodash_1.default.pickBy(args, (value) => !lodash_1.default.isUndefined(value));
333
356
  this.log.debug(`Bringing application back to foreground with arguments: ${JSON.stringify(args)}`);
334
357
  return await this.adb.startApp(args);
335
358
  }
@@ -337,18 +360,22 @@ async function background(seconds) {
337
360
  * Puts the app to background and waits the given number of seconds then restores the app
338
361
  * if necessary. The call is blocking.
339
362
  *
340
- * @this {AndroidDriver}
341
- * @param {number} [seconds=-1] The amount of seconds to wait between putting the app to background and restoring it.
363
+ * @param seconds The amount of seconds to wait between putting the app to background and restoring it.
342
364
  * Any negative value means to not restore the app after putting it to background.
343
- * @returns {Promise<void>}
344
365
  */
345
366
  async function mobileBackgroundApp(seconds = -1) {
346
367
  await this.background(seconds);
347
368
  }
348
369
  /**
349
- * @this {AndroidDriver}
350
- * @param {import('../driver').AndroidDriverOpts?} [opts=null]
351
- * @returns {Promise<void>}
370
+ * Resets the Application Under Test (AUT).
371
+ *
372
+ * The reset behavior depends on the driver options:
373
+ * - If `fastReset` is enabled: Stops the app and clears its data
374
+ * - If `fullReset` is enabled: Uninstalls and reinstalls the app
375
+ * - If neither is enabled: Only stops the app
376
+ *
377
+ * @param opts Optional driver options. If not provided, uses the current session options.
378
+ * @throws {Error} If `appPackage` is not specified or if the app cannot be reset.
352
379
  */
353
380
  async function resetAUT(opts = null) {
354
381
  const { app, appPackage, fastReset, fullReset, androidInstallTimeout = PACKAGE_INSTALL_TIMEOUT_MS, autoGrantPermissions, allowTestPackages, } = opts ?? this.opts;
@@ -373,7 +400,8 @@ async function resetAUT(opts = null) {
373
400
  await this.adb.grantAllPermissions(appPackage);
374
401
  }
375
402
  catch (error) {
376
- this.log.error(`Unable to grant permissions requested. Original error: ${error.message}`);
403
+ const err = error;
404
+ this.log.error(`Unable to grant permissions requested. Original error: ${err.message}`);
377
405
  }
378
406
  }
379
407
  this.log.debug(`Performed fast reset on the installed '${appPackage}' application (stop and clear)`);
@@ -395,9 +423,14 @@ async function resetAUT(opts = null) {
395
423
  });
396
424
  }
397
425
  /**
398
- * @this {AndroidDriver}
399
- * @param {import('../driver').AndroidDriverOpts?} [opts=null]
400
- * @returns {Promise<void>}
426
+ * Installs the Application Under Test (AUT) on the device.
427
+ *
428
+ * If `fullReset` is enabled, this will perform a full reset (uninstall and reinstall).
429
+ * Otherwise, it will install or upgrade the app if needed. If `fastReset` is enabled
430
+ * and the app was already installed, it will perform a fast reset after installation.
431
+ *
432
+ * @param opts Optional driver options. If not provided, uses the current session options.
433
+ * @throws {Error} If `app` or `appPackage` options are not specified.
401
434
  */
402
435
  async function installAUT(opts = null) {
403
436
  const { app, appPackage, fastReset, fullReset, androidInstallTimeout = PACKAGE_INSTALL_TIMEOUT_MS, autoGrantPermissions, allowTestPackages, enforceAppInstall, } = opts ?? this.opts;
@@ -422,10 +455,14 @@ async function installAUT(opts = null) {
422
455
  }
423
456
  }
424
457
  /**
425
- * @this {AndroidDriver}
426
- * @param {string[]} otherApps
427
- * @param {import('../driver').AndroidDriverOpts?} [opts=null]
428
- * @returns {Promise<void>}
458
+ * Installs multiple additional APK files on the device.
459
+ *
460
+ * All APKs are installed asynchronously in parallel. This is useful for installing
461
+ * dependencies or additional applications required for testing.
462
+ *
463
+ * @param otherApps An array of paths to APK files to install.
464
+ * Each path can be a local file path or a URL.
465
+ * @param opts Optional driver options. If not provided, uses the current session options.
429
466
  */
430
467
  async function installOtherApks(otherApps, opts = null) {
431
468
  const { androidInstallTimeout = PACKAGE_INSTALL_TIMEOUT_MS, autoGrantPermissions, allowTestPackages, } = opts ?? this.opts;
@@ -440,10 +477,14 @@ async function installOtherApks(otherApps, opts = null) {
440
477
  }));
441
478
  }
442
479
  /**
443
- * @this {AndroidDriver}
444
- * @param {string[]} appPackages
445
- * @param {string[]} [filterPackages=[]]
446
- * @returns {Promise<void>}
480
+ * Uninstalls the specified packages from the device.
481
+ *
482
+ * If `appPackages` contains `'*'`, all third-party packages will be uninstalled
483
+ * (excluding packages in `filterPackages`).
484
+ *
485
+ * @param appPackages An array of package names to uninstall, or `['*']` to uninstall all third-party packages.
486
+ * @param filterPackages An array of package names to exclude from uninstallation.
487
+ * Only used when `appPackages` contains `'*'`.
447
488
  */
448
489
  async function uninstallOtherPackages(appPackages, filterPackages = []) {
449
490
  if (appPackages.includes('*')) {
@@ -454,9 +495,14 @@ async function uninstallOtherPackages(appPackages, filterPackages = []) {
454
495
  await bluebird_1.default.all(appPackages.map((appPackage) => this.adb.uninstallApk(appPackage)));
455
496
  }
456
497
  /**
457
- * @this {AndroidDriver}
458
- * @param {string[]} [filterPackages=[]]
459
- * @returns {Promise<string[]>}
498
+ * Retrieves a list of all third-party packages installed on the device.
499
+ *
500
+ * Third-party packages are those that are not part of the system installation.
501
+ * This is equivalent to running `adb shell pm list packages -3`.
502
+ *
503
+ * @param filterPackages An array of package names to exclude from the results.
504
+ * @returns An array of third-party package names, excluding those in `filterPackages`.
505
+ * Returns an empty array if the command fails.
460
506
  */
461
507
  async function getThirdPartyPackages(filterPackages = []) {
462
508
  try {
@@ -469,11 +515,9 @@ async function getThirdPartyPackages(filterPackages = []) {
469
515
  return lodash_1.default.difference(appPackagesArray, filterPackages);
470
516
  }
471
517
  catch (err) {
472
- this.log.warn(`Unable to get packages with 'adb shell pm list packages -3': ${err.message}`);
518
+ const error = err;
519
+ this.log.warn(`Unable to get packages with 'adb shell pm list packages -3': ${error.message}`);
473
520
  return [];
474
521
  }
475
522
  }
476
- /**
477
- * @typedef {import('../driver').AndroidDriver} AndroidDriver
478
- */
479
523
  //# sourceMappingURL=app-management.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-management.js","sourceRoot":"","sources":["../../../lib/commands/app-management.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-management.js","sourceRoot":"","sources":["../../../lib/commands/app-management.ts"],"names":[],"mappings":";;;;;;AAmCA,wCAMC;AAUD,oDAUC;AAcD,sCAeC;AAUD,kCAEC;AASD,8BAMC;AAWD,0CAYC;AAaD,oCAyDC;AAcD,gDAQC;AAYD,gCAOC;AAoBD,4CA6BC;AAUD,wCAEC;AAOD,gDAEC;AAOD,8CAEC;AAYD,gCAmEC;AASD,kDAKC;AAaD,4BAgEC;AAYD,gCAsCC;AAYD,4CAsBC;AAYD,wDAYC;AAYD,sDAiBC;AA7nBD,6CAAqC;AACrC,uCAAqD;AACrD,oDAAuB;AACvB,qCAA4B;AAC5B,wDAAyB;AAKzB,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,CAAU,CAAC;AAClD,MAAM,0BAA0B,GAAG,KAAK,CAAC;AACzC,mCAAmC;AACnC,4HAA4H;AAC/G,QAAA,SAAS,GAAG;IACvB,aAAa,EAAE,CAAC;IAChB,WAAW,EAAE,CAAC;IACd,qBAAqB,EAAE,CAAC;IACxB,qBAAqB,EAAE,CAAC;CAChB,CAAC;AAUX;;;;;;GAMG;AACI,KAAK,UAAU,cAAc,CAElC,KAAa,EACb,OAA8B,EAAE;IAEhC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,oBAAoB,CAExC,KAAa,EACb,IAAsB;IAEtB,MAAM,KAAK,GAA0B,EAAE,CAAC;IACxC,IAAI,cAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,GAAG,GAAG,IAAI,EAAE,CAAC;IACzB,CAAC;IACD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,aAAa,CAAsB,KAAa;IACpE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,0BAA0B,KAAK,GAAG,CAAC,CAAC;IAClD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5C,OAAO,iBAAS,CAAC,aAAa,CAAC;IACjC,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,iBAAS,CAAC,WAAW,CAAC;IAC/B,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,MAAM,gBAAC,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3D,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACzF,OAAO,iBAAS,CAAC,qBAAqB,CAAC;QACzC,CAAC;IACH,CAAC;IACD,OAAO,iBAAS,CAAC,qBAAqB,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,WAAW,CAAsB,KAAa;IAClE,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,SAAS,CAE7B,KAAa,EACb,OAAwC,EAAE;IAE1C,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,eAAe,CAEnC,KAAa,EACb,OAAgB,EAChB,QAAkB,EAClB,gBAA0B;IAE1B,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;QACjC,OAAO;QACP,QAAQ;QACR,gBAAgB;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,YAAY,CAEhC,KAAa,EACb,UAA4B,EAAE;IAE9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,GAAG,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,kBAAkB,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,OAAO,GACX,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAC9D,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QACvC,CAAC,CAAC,GAAG,CAAC;IAEV,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,IAAI,KAAK,4EAA4E;YACrF,gCAAgC,OAAO,IAAI,CAC5C,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,WAAW,GAAa,EAAE,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,IAAA,2BAAgB,EAAC,KAAK,IAAI,EAAE;YAChC,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,iBAAS,CAAC,WAAW,EAAE,CAAC;gBAC7D,OAAO,IAAI,CAAC;YACd,CAAC;YACD,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,gBAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,gBAAC,CAAC,OAAO,CAAC,gBAAC,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;gBAC3E,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,oBAAoB,KAAK,0BAA0B;oBACnD,8DAA8D;oBAC9D,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK;oBAC/D,0CAA0C,CAC3C,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,EAAE;YACD,MAAM,EAAE,OAAO;YACf,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,gBAAC,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;YAC3E,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,uCAAuC,KAAK,iCAAiC;gBAC7E,SAAS,OAAO,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CACjF,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,KAAK,4BAA4B,OAAO,YAAY,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,oCAAoC,CAAC,CAAC;IAC7D,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,kBAAkB,CAEtC,KAAa,EACb,OAAyB;IAEzB,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE;QACpC,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,UAAU,CAE9B,OAAe,EACf,IAAmC;IAEnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;IAChF,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,gBAAgB,CAEpC,OAAe,EACf,YAAsB,EACtB,OAAgB,EAChB,iBAA2B,EAC3B,SAAmB,EACnB,gBAA0B,EAC1B,OAAiB,EACjB,aAAuB;IAEvB,MAAM,IAAI,GAAkC;QAC1C,OAAO;QACP,iBAAiB;QACjB,SAAS;QACT,gBAAgB;QAChB,OAAO;QACP,aAAa;KACd,CAAC;IACF,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;QAChF,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,EAAE;YAC/C,GAAG,IAAI;YACP,mBAAmB,EAAE,KAAK;SAC3B,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,cAAc,CAAsB,KAAa;IACrE,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,kBAAkB;IACtC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC,CAAC,WAAqB,CAAC;AAC/E,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,iBAAiB;IACrC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC,CAAC,UAAoB,CAAC;AAC9E,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,UAAU,CAE9B,OAAe;IAEf,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,gFAAgF;QAChF,mCAAmC;QACnC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EAAC,UAAU,EAAE,WAAW,EAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC;IAChF,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAE1B,0FAA0F;IAC1F,yBAAyB;IACzB,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC;IAC/B,MAAM,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,qDAAqD;IACpF,oFAAoF;IACpF,MAAM,UAAU,GAAG,gBAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACnF,MAAM,UAAU,GAAG,CAAC,EAAC,SAAS,EAAE,QAAQ,EAAwC,EAAE,EAAE;QAClF,MAAM,QAAQ,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,QAAQ,aAAa,WAAW,IAAI,CAAC,CAAC;IACjE,CAAC,CAAC;IACF,MAAM,IAAA,oBAAS,EAAC,OAAO,EAAE,EAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC,CAAC;IAEhE,IAAI,IAA0C,CAAC;IAC/C,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAG,UAAU,IAAI,WAAW,EAAE,CAAC,EAAE,CAAC;QAC/D,8EAA8E;QAC9E,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,UAAU,IAAI,WAAW,EAAE,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,UAAU,0BAA0B,CAAC,CAAC;YACxE,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,UAAoB,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,IAAI;YACF,CAAC,UAAU,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,WAAW,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC9E,CAAC,UAAU,KAAK,IAAI,CAAC,IAAI,CAAC,cAAc;oBACtC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;gBAC3E,CAAC,CAAC;oBACE,0EAA0E;oBAC1E,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,UAAoB;oBACnC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,SAAS;oBAC5C,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;oBAC9B,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;oBAClC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;oBAC5B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,SAAS;oBAC9C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,SAAS;oBACpD,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB;oBACzC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;oBACvC,uBAAuB,EAAE,IAAI,CAAC,IAAI,CAAC,uBAAuB;oBAC1D,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;iBAC5B;gBACH,CAAC,CAAC;oBACE,2DAA2D;oBAC3D,GAAG,EAAE,UAAoB;oBACzB,QAAQ,EAAE,WAAW,IAAI,SAAS;oBAClC,OAAO,EAAE,UAAU,IAAI,SAAS;oBAChC,YAAY,EAAE,WAAW,IAAI,SAAS;oBACtC,OAAO,EAAE,KAAK;iBACf,CAAC;IACV,CAAC;IACD,IAAI,GAAG,gBAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,gBAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAyC,CAAC;IAChG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,2DAA2D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClG,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,mBAAmB,CAEvC,UAAkB,CAAC,CAAC;IAEpB,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,QAAQ,CAE5B,OAAiC,IAAI;IAErC,MAAM,EACJ,GAAG,EACH,UAAU,EACV,SAAS,EACT,SAAS,EACT,qBAAqB,GAAG,0BAA0B,EAClD,oBAAoB,EACpB,iBAAiB,GAClB,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;IAEtB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAE9D,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,wCAAwC;QACxC,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAChD,IAAI,gBAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CACb,yCAAyC,UAAU,sBAAsB,MAAM,EAAE,CAClF,CAAC;YACJ,CAAC;YACD,wFAAwF;YACxF,IAAI,oBAAoB,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;gBACjD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,GAAG,GAAG,KAAc,CAAC;oBAC3B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0DAA0D,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1F,CAAC;YACH,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,0CAA0C,UAAU,gCAAgC,CACrF,CAAC;YACF,OAAO;QACT,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,2CAA2C,UAAU,OAAO;YAC1D,4CAA4C,UAAU,mCAAmC,CAC5F,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,UAAU,eAAe,CAAC,CAAC;IACpE,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE;QAC1B,gBAAgB,EAAE,oBAAoB;QACtC,OAAO,EAAE,qBAAqB;QAC9B,iBAAiB;KAClB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,UAAU,CAE9B,OAAiC,IAAI;IAErC,MAAM,EACJ,GAAG,EACH,UAAU,EACV,SAAS,EACT,SAAS,EACT,qBAAqB,GAAG,0BAA0B,EAClD,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;IAEtB,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO;IACT,CAAC;IAED,MAAM,EAAC,QAAQ,EAAE,cAAc,EAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE;QAClF,gBAAgB,EAAE,oBAAoB;QACtC,OAAO,EAAE,qBAAqB;QAC9B,iBAAiB;QACjB,mBAAmB,EAAE,iBAAiB;KACvC,CAAC,CAAC;IAEH,oDAAoD;IACpD,MAAM,0BAA0B,GAC9B,CAAC,cAAc,IAAI,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,aAAa,CAAC;IAC3E,IAAI,SAAS,IAAI,0BAA0B,EAAE,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,6BAA6B,UAAU,GAAG,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,gBAAgB,CAEpC,SAAmB,EACnB,OAAiC,IAAI;IAErC,MAAM,EACJ,qBAAqB,GAAG,0BAA0B,EAClD,oBAAoB,EACpB,iBAAiB,GAClB,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;IAEtB,0CAA0C;IAC1C,MAAM,kBAAC,CAAC,GAAG,CACT,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE;YACpD,gBAAgB,EAAE,oBAAoB;YACtC,OAAO,EAAE,qBAAqB;YAC9B,iBAAiB;SAClB,CAAC,CAAC;IACL,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,sBAAsB,CAE1C,WAAqB,EACrB,iBAA2B,EAAE;IAE7B,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACjD,WAAW,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAC;IACxD,MAAM,kBAAC,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,qBAAqB,CAEzC,iBAA2B,EAAE;IAE7B,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9E,MAAM,gBAAgB,GAAG,cAAc;aACpC,IAAI,EAAE;aACN,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;aACxB,KAAK,CAAC,aAAG,CAAC,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,gBAAgB,oBAAoB,cAAc,GAAG,CAAC,CAAC;QAC1E,OAAO,gBAAC,CAAC,UAAU,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,GAAY,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gEAAgE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/F,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -1,10 +1,27 @@
1
- /**
2
- * @module
3
- */
4
1
  import type { AndroidDriver } from '../driver';
5
2
  import type { Element } from '@appium/types';
6
3
  import type { FindElementOpts } from './types';
4
+ /**
5
+ * @param strategy The element location strategy to use (e.g., 'id', 'xpath', 'class name').
6
+ * @param selector The selector value to search for.
7
+ * @param mult If `true`, searches for multiple elements; if `false`, searches for a single element.
8
+ * @param context The context (e.g., webview) in which to search. Defaults to empty string (native context).
9
+ * @returns If `mult` is `false`, returns a single `Element` object.
10
+ * If `mult` is `true`, returns an array of `Element` objects (may be empty).
11
+ * @throws {Error} If `selector` is not provided.
12
+ * @throws {errors.NoSuchElementError} If a single element search fails and no element is found.
13
+ */
7
14
  export declare function findElOrEls(this: AndroidDriver, strategy: string, selector: string, mult: true, context?: string): Promise<Element[]>;
8
15
  export declare function findElOrEls(this: AndroidDriver, strategy: string, selector: string, mult: false, context?: string): Promise<Element>;
16
+ /**
17
+ * Performs the actual element search operation.
18
+ *
19
+ * This is an abstract method that must be implemented by subclasses or specific
20
+ * context handlers (e.g., native context, webview context).
21
+ *
22
+ * @param params The search parameters containing strategy, selector, context, and multiple flag.
23
+ * @returns A single `Element` if `params.multiple` is `false`, or an array of `Element` objects if `true`.
24
+ * @throws {errors.NotImplementedError} This method must be implemented by the specific context handler.
25
+ */
9
26
  export declare function doFindElementOrEls(this: AndroidDriver, params: FindElementOpts): Promise<Element | Element[]>;
10
27
  //# sourceMappingURL=find.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"AACA;;GAEG;AAIH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,SAAS,CAAC;AAE7C,wBAAsB,WAAW,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACtB,wBAAsB,WAAW,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,EACX,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAAC;AAkEpB,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC,CAE9B"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,SAAS,CAAC;AAE7C;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACtB,wBAAsB,WAAW,CAC/B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,EACX,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAAC;AAkEpB;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC,CAE9B"}
@@ -1,8 +1,5 @@
1
1
  "use strict";
2
2
  /* eslint-disable @typescript-eslint/no-unused-vars */
3
- /**
4
- * @module
5
- */
6
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
7
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
8
5
  };
@@ -66,6 +63,16 @@ async function findElOrEls(strategy, selector, mult, context = '') {
66
63
  }
67
64
  return element;
68
65
  }
66
+ /**
67
+ * Performs the actual element search operation.
68
+ *
69
+ * This is an abstract method that must be implemented by subclasses or specific
70
+ * context handlers (e.g., native context, webview context).
71
+ *
72
+ * @param params The search parameters containing strategy, selector, context, and multiple flag.
73
+ * @returns A single `Element` if `params.multiple` is `false`, or an array of `Element` objects if `true`.
74
+ * @throws {errors.NotImplementedError} This method must be implemented by the specific context handler.
75
+ */
69
76
  async function doFindElementOrEls(params) {
70
77
  throw new driver_1.errors.NotImplementedError('Not implemented');
71
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"find.js","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD;;GAEG;;;;;AAsBH,kCA+DC;AAED,gDAKC;AA1FD,oDAAuB;AACvB,0CAAkD;AAmB3C,KAAK,UAAU,WAAW,CAE/B,QAAgB,EAChB,QAAgB,EAChB,IAAa,EACb,OAAO,GAAG,EAAE;IAEZ,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,MAAM,GAAoB;QAC9B,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,QAAQ,EAAE,IAAI;KACf,CAAC;IAEF,IAAI,OAAwC,CAAC;IAC7C,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACxB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,qEAAqE;YACrE,+CAA+C;YAC/C,IAAI,IAAA,oBAAW,EAAC,GAAG,EAAE,eAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC/C,GAAG,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,mCAAmC;YACjE,CAAC;YAED,mEAAmE;YACnE,6DAA6D;YAC7D,gBAAgB;YAChB,IAAI,IAAA,oBAAW,EAAC,GAAG,EAAE,eAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAChD,+CAA+C;gBAC/C,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,8DAA8D;QAC9D,OAAO,CAAC,gBAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,CAAU,CAAC;QACvB,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC1C,wDAAwD;YACxD,mDAAmD;YACnD,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,OAAoB,CAAC;IAC9B,CAAC;IACD,IAAI,gBAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,eAAM,CAAC,kBAAkB,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,OAAkB,CAAC;AAC5B,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAEtC,MAAuB;IAEvB,MAAM,IAAI,eAAM,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"find.js","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":";AAAA,sDAAsD;;;;;AAgCtD,kCA+DC;AAYD,gDAKC;AA9GD,oDAAuB;AACvB,0CAAkD;AA6B3C,KAAK,UAAU,WAAW,CAE/B,QAAgB,EAChB,QAAgB,EAChB,IAAa,EACb,OAAO,GAAG,EAAE;IAEZ,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,MAAM,GAAoB;QAC9B,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,QAAQ,EAAE,IAAI;KACf,CAAC;IAEF,IAAI,OAAwC,CAAC;IAC7C,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACxB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,qEAAqE;YACrE,+CAA+C;YAC/C,IAAI,IAAA,oBAAW,EAAC,GAAG,EAAE,eAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC/C,GAAG,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,mCAAmC;YACjE,CAAC;YAED,mEAAmE;YACnE,6DAA6D;YAC7D,gBAAgB;YAChB,IAAI,IAAA,oBAAW,EAAC,GAAG,EAAE,eAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAChD,+CAA+C;gBAC/C,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,8DAA8D;QAC9D,OAAO,CAAC,gBAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,CAAU,CAAC;QACvB,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC1C,wDAAwD;YACxD,mDAAmD;YACnD,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,OAAoB,CAAC;IAC9B,CAAC;IACD,IAAI,gBAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,eAAM,CAAC,kBAAkB,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,OAAkB,CAAC;AAC5B,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,kBAAkB,CAEtC,MAAuB;IAEvB,MAAM,IAAI,eAAM,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;AAC1D,CAAC"}