appium-xcuitest-driver 10.12.1 → 10.13.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 (48) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/build/lib/commands/context.d.ts +130 -161
  3. package/build/lib/commands/context.d.ts.map +1 -1
  4. package/build/lib/commands/context.js +122 -107
  5. package/build/lib/commands/context.js.map +1 -1
  6. package/build/lib/commands/execute.js +1 -1
  7. package/build/lib/commands/execute.js.map +1 -1
  8. package/build/lib/commands/general.js +1 -1
  9. package/build/lib/commands/general.js.map +1 -1
  10. package/build/lib/commands/gesture.d.ts +103 -119
  11. package/build/lib/commands/gesture.d.ts.map +1 -1
  12. package/build/lib/commands/gesture.js +98 -138
  13. package/build/lib/commands/gesture.js.map +1 -1
  14. package/build/lib/commands/pcap.d.ts +1 -1
  15. package/build/lib/commands/pcap.d.ts.map +1 -1
  16. package/build/lib/commands/performance.d.ts +1 -1
  17. package/build/lib/commands/performance.d.ts.map +1 -1
  18. package/build/lib/commands/record-audio.d.ts +2 -1
  19. package/build/lib/commands/record-audio.d.ts.map +1 -1
  20. package/build/lib/commands/recordscreen.d.ts +2 -1
  21. package/build/lib/commands/recordscreen.d.ts.map +1 -1
  22. package/build/lib/commands/screenshots.d.ts.map +1 -1
  23. package/build/lib/commands/screenshots.js +3 -5
  24. package/build/lib/commands/screenshots.js.map +1 -1
  25. package/build/lib/commands/timeouts.js +1 -1
  26. package/build/lib/commands/timeouts.js.map +1 -1
  27. package/build/lib/commands/web.d.ts +199 -202
  28. package/build/lib/commands/web.d.ts.map +1 -1
  29. package/build/lib/commands/web.js +206 -174
  30. package/build/lib/commands/web.js.map +1 -1
  31. package/build/lib/driver.d.ts +2 -1
  32. package/build/lib/driver.d.ts.map +1 -1
  33. package/build/lib/driver.js +10 -4
  34. package/build/lib/driver.js.map +1 -1
  35. package/build/lib/execute-method-map.d.ts.map +1 -1
  36. package/build/lib/execute-method-map.js +0 -1
  37. package/build/lib/execute-method-map.js.map +1 -1
  38. package/lib/commands/{context.js → context.ts} +172 -145
  39. package/lib/commands/execute.js +1 -1
  40. package/lib/commands/general.js +1 -1
  41. package/lib/commands/{gesture.js → gesture.ts} +225 -183
  42. package/lib/commands/screenshots.js +3 -5
  43. package/lib/commands/timeouts.js +1 -1
  44. package/lib/commands/{web.js → web.ts} +305 -263
  45. package/lib/driver.ts +11 -4
  46. package/lib/execute-method-map.ts +0 -1
  47. package/npm-shrinkwrap.json +14 -89
  48. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"execute-method-map.js","sourceRoot":"","sources":["../../lib/execute-method-map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-method-map.js","sourceRoot":"","sources":["../../lib/execute-method-map.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,10 @@ import {
10
10
  } from './bidi/models';
11
11
  import { BIDI_EVENT_NAME } from './bidi/constants';
12
12
  import { assignBiDiLogListener } from './log';
13
+ import type {XCUITestDriver} from '../driver';
14
+ import type {Page} from '../types';
15
+ import type {ViewContext, FullContext, PageChangeNotification} from './types';
16
+ import type {Simulator} from 'appium-ios-simulator';
13
17
 
14
18
  const WEBVIEW_WIN = 'WEBVIEW';
15
19
  const WEBVIEW_BASE = `${WEBVIEW_WIN}_`;
@@ -19,17 +23,14 @@ const DEFAULT_NATIVE_WINDOW_HANDLE = '1';
19
23
 
20
24
 
21
25
  /**
22
- * @this {XCUITestDriver}
23
- * @param {boolean} [useUrl=false]
24
- * @returns {Promise<import('./types').ViewContext[]>}
26
+ * Retrieves the list of available contexts and their associated views.
27
+ *
28
+ * @param useUrl - Whether to filter webviews by URL
25
29
  */
26
- export async function getContextsAndViews(useUrl = true) {
30
+ export async function getContextsAndViews(this: XCUITestDriver, useUrl: boolean = true): Promise<ViewContext[]> {
27
31
  this.log.debug('Retrieving contexts and views');
28
32
  const webviews = await this.listWebFrames(useUrl);
29
- /**
30
- * @type {import('./types').ViewContext[]}
31
- */
32
- const ctxs = [{id: NATIVE_WIN, view: {}}];
33
+ const ctxs: ViewContext[] = [{id: NATIVE_WIN, view: {}}];
33
34
  this.contexts = [NATIVE_WIN];
34
35
  for (const view of webviews) {
35
36
  ctxs.push({id: `${WEBVIEW_BASE}${view.id}`, view});
@@ -39,19 +40,18 @@ export async function getContextsAndViews(useUrl = true) {
39
40
  }
40
41
 
41
42
  /**
42
- * @deprecated this method is not used anywhere and will be removed in the future
43
- * @this {XCUITestDriver}
44
- * @returns {boolean}
43
+ * @deprecated This method is not used anywhere and will be removed in the future
45
44
  */
46
- export function useNewSafari() {
45
+ export function useNewSafari(this: XCUITestDriver): boolean {
47
46
  return this.isSimulator() && this.isSafari();
48
47
  }
49
48
 
50
49
  /**
51
- * @this {XCUITestDriver}
52
- * @returns {Promise<void>}
50
+ * Activates the most recently available webview context.
51
+ *
52
+ * @throws {Error} If no webview is available or if the remote debugger cannot connect
53
53
  */
54
- export async function activateRecentWebview() {
54
+ export async function activateRecentWebview(this: XCUITestDriver): Promise<void> {
55
55
  this.log.debug('Activating a recent webview');
56
56
  const timer = new timing.Timer().start();
57
57
  const contextId = await this.getRecentWebviewContextId(/.*/, /.*/);
@@ -60,7 +60,7 @@ export async function activateRecentWebview() {
60
60
  await this.setContext(contextId);
61
61
  return;
62
62
  }
63
- const appDict = (/** @type {RemoteDebugger} */ (this.remote)).appDict;
63
+ const appDict = this.remote.appDict;
64
64
  const errSuffix = `Make sure your web application is debuggable ` +
65
65
  `and could be inspected in Safari Web Inspector.`;
66
66
  if (_.isEmpty(appDict)) {
@@ -92,22 +92,23 @@ export async function activateRecentWebview() {
92
92
  }
93
93
 
94
94
  /**
95
- * @this {XCUITestDriver}
96
- * @returns {Promise<import('../types').Page[]>}
95
+ * Lists all available web frames (pages) from the remote debugger.
96
+ *
97
+ * @param useUrl - Whether to filter pages by the current URL
97
98
  */
98
- export async function listWebFrames(useUrl = true) {
99
+ export async function listWebFrames(this: XCUITestDriver, useUrl: boolean = true): Promise<Page[]> {
99
100
  const shouldFilterByUrl = useUrl && !this.isRealDevice() && !!this.getCurrentUrl();
100
101
  this.log.debug(
101
102
  `Selecting by url: ${shouldFilterByUrl}` +
102
103
  (shouldFilterByUrl ? ` (expected url: '${this.getCurrentUrl()}')` : '')
103
104
  );
104
105
 
105
- if (!this.remote) {
106
+ if (!this._remote) {
106
107
  await this.connectToRemoteDebugger();
107
108
  }
108
- const doListPages = async (/** @type {number} */ retries) => {
109
+ const doListPages = async (retries: number): Promise<Page[]> => {
109
110
  try {
110
- const pageArray = await (/** @type {RemoteDebugger} */ (this.remote)).selectApp(
111
+ const pageArray = await this.remote.selectApp(
111
112
  shouldFilterByUrl ? this.getCurrentUrl() : undefined,
112
113
  retries,
113
114
  this.opts.ignoreAboutBlankUrl,
@@ -117,7 +118,7 @@ export async function listWebFrames(useUrl = true) {
117
118
  this.log.debug(`No web frames found after ${util.pluralize('retry', retries, true)}`);
118
119
  }
119
120
  return pageArray;
120
- } catch (err) {
121
+ } catch (err: any) {
121
122
  this.log.debug(
122
123
  `No available web pages after ${util.pluralize('retry', retries, true)}: ${err.message}`
123
124
  );
@@ -125,9 +126,8 @@ export async function listWebFrames(useUrl = true) {
125
126
  }
126
127
  };
127
128
 
128
- /** @type {number} */
129
129
  const maxRetriesCount = _.isInteger(this.opts.webviewConnectRetries)
130
- ? Math.max(/** @type {number} */ (this.opts.webviewConnectRetries), 1)
130
+ ? Math.max(this.opts.webviewConnectRetries as number, 1)
131
131
  : DEFAULT_LIST_WEB_FRAMES_RETRIES;
132
132
  this.log.debug(
133
133
  `About to select a web application with ${util.pluralize('retry', maxRetriesCount, true)} ` +
@@ -138,11 +138,10 @@ export async function listWebFrames(useUrl = true) {
138
138
  }
139
139
 
140
140
  /**
141
- * @this {XCUITestDriver}
142
- * @returns {Promise<void>}
141
+ * Establishes a connection to the remote debugger and sets up event listeners.
143
142
  */
144
- export async function connectToRemoteDebugger() {
145
- this.remote = await this.getNewRemoteDebugger();
143
+ export async function connectToRemoteDebugger(this: XCUITestDriver): Promise<void> {
144
+ this._remote = await this.getNewRemoteDebugger();
146
145
 
147
146
  // @ts-ignore static is fine
148
147
  this.remote.on(RemoteDebugger.EVENT_PAGE_CHANGE, this.onPageChange.bind(this));
@@ -181,14 +180,14 @@ export async function connectToRemoteDebugger() {
181
180
  * client code would have to connect to each of them in order to detect the
182
181
  * one which needs to be interacted with. This extra effort is not needed with
183
182
  * the information provided by this extension.
184
- * @param {number} [waitForWebviewMs=0] - The period to poll for available webview(s) (in ms)
185
- * @returns {Promise<Context[]>} The list of available context objects along with their properties.
186
- * @this {XCUITestDriver}
183
+ *
184
+ * @param waitForWebviewMs - The period to poll for available webview(s) (in ms)
185
+ * @returns The list of available context objects along with their properties.
187
186
  */
188
- export async function mobileGetContexts(waitForWebviewMs = 0) {
187
+ export async function mobileGetContexts(this: XCUITestDriver, waitForWebviewMs: number = 0): Promise<FullContext[]> {
189
188
  // make sure it is a number, so the duration check works properly
190
189
  if (!_.isNumber(waitForWebviewMs)) {
191
- waitForWebviewMs = parseInt(waitForWebviewMs, 10);
190
+ waitForWebviewMs = parseInt(String(waitForWebviewMs), 10);
192
191
  if (isNaN(waitForWebviewMs)) {
193
192
  waitForWebviewMs = 0;
194
193
  }
@@ -199,10 +198,9 @@ export async function mobileGetContexts(waitForWebviewMs = 0) {
199
198
 
200
199
  const timer = new timing.Timer().start();
201
200
  try {
202
- /** @type {FullContext[]} */
203
- let contexts;
201
+ let contexts: FullContext[];
204
202
  do {
205
- contexts = /** @type {FullContext[]} */ (await this.getContexts());
203
+ contexts = await this.getContexts() as FullContext[];
206
204
 
207
205
  if (contexts.length >= 2) {
208
206
  this.log.debug(
@@ -220,11 +218,13 @@ export async function mobileGetContexts(waitForWebviewMs = 0) {
220
218
  }
221
219
 
222
220
  /**
223
- * @this {XCUITestDriver}
224
- * @param {import('./types').PageChangeNotification} pageChangeNotification
225
- * @returns {Promise<void>}
221
+ * Handles page change notifications from the remote debugger.
222
+ *
223
+ * Updates the current context when new pages are detected or when pages are closed.
224
+ *
225
+ * @param pageChangeNotification - The notification containing page array and app ID
226
226
  */
227
- export async function onPageChange(pageChangeNotification) {
227
+ export async function onPageChange(this: XCUITestDriver, pageChangeNotification: PageChangeNotification): Promise<void> {
228
228
  this.log.debug(
229
229
  `Remote debugger notified us of a new page listing: ${JSON.stringify(
230
230
  pageChangeNotification,
@@ -234,19 +234,16 @@ export async function onPageChange(pageChangeNotification) {
234
234
  this.log.debug('We are in the middle of selecting a page, ignoring');
235
235
  return;
236
236
  }
237
- if (!this.remote?.isConnected) {
237
+ if (!this._remote?.isConnected) {
238
238
  this.log.debug('We have not yet connected, ignoring');
239
239
  return;
240
240
  }
241
241
 
242
242
  const {appIdKey, pageArray} = pageChangeNotification;
243
243
 
244
- /** @type {string[]} */
245
- const newIds = [];
246
- /** @type {string[]} */
247
- const newPages = [];
248
- /** @type {string|null} */
249
- let keyId = null;
244
+ const newIds: string[] = [];
245
+ const newPages: string[] = [];
246
+ let keyId: string | null = null;
250
247
  for (const page of pageArray) {
251
248
  const id = page.id.toString();
252
249
  newIds.push(id);
@@ -286,10 +283,9 @@ export async function onPageChange(pageChangeNotification) {
286
283
  return;
287
284
  }
288
285
 
289
- /** @type {string|null} */
290
- let newPage = null;
286
+ let newPage: string | null = null;
291
287
  if (newPages.length) {
292
- newPage = /** @type {string} */ (_.last(newPages));
288
+ newPage = _.last(newPages) as string;
293
289
  this.log.debug(`We have new pages, selecting page '${newPage}'`);
294
290
  } else if (!_.includes(newIds, curPageIdKey)) {
295
291
  this.log.debug(
@@ -330,7 +326,7 @@ export async function onPageChange(pageChangeNotification) {
330
326
  try {
331
327
  await this.remote.selectPage(appIdKey, parseInt(newPage, 10));
332
328
  await notifyBiDiContextChange.bind(this)();
333
- } catch (e) {
329
+ } catch (e: any) {
334
330
  this.log.warn(`Failed to select page: ${e.message}`);
335
331
  this.curContext = oldContext;
336
332
  } finally {
@@ -340,47 +336,58 @@ export async function onPageChange(pageChangeNotification) {
340
336
  }
341
337
 
342
338
  /**
343
- * @this {XCUITestDriver}
344
- * @returns {Promise<void>}
339
+ * Disconnects from the remote debugger and cleans up context state.
345
340
  */
346
- export async function stopRemote(closeWindowBeforeDisconnecting = false) {
347
- if (!this.remote) {
348
- throw this.log.errorWithException('Tried to leave a web frame but were not in one');
341
+ export async function stopRemote(this: XCUITestDriver): Promise<void> {
342
+ if (!this._remote) {
343
+ return;
349
344
  }
350
345
 
351
- if (closeWindowBeforeDisconnecting) {
352
- await this.closeWindow();
346
+ try {
347
+ await this.remote.disconnect();
348
+ this.curContext = null;
349
+ try {
350
+ await notifyBiDiContextChange.bind(this)();
351
+ } catch (err) {
352
+ this.log.warn(`Failed to notify BiDi context change: ${err.message}`);
353
+ }
354
+ } finally {
355
+ this.curWebFrames = [];
356
+ this._remote = null;
353
357
  }
354
- await this.remote.disconnect();
355
- this.curContext = null;
356
- await notifyBiDiContextChange.bind(this)();
357
- this.curWebFrames = [];
358
- this.remote = null;
359
358
  }
360
359
 
361
360
  /**
362
- * @this {XCUITestDriver}
363
- * @param {string|null} url
361
+ * Sets the current URL for the active webview context.
362
+ *
363
+ * @param url - The URL to set, or null to clear
364
364
  */
365
- export function setCurrentUrl(url) {
365
+ export function setCurrentUrl(this: XCUITestDriver, url: string | null): void {
366
366
  this._currentUrl = url;
367
367
  }
368
368
 
369
369
  /**
370
- * @this {XCUITestDriver}
371
- * @returns {string|undefined|null}
370
+ * Gets the current URL for the active webview context.
371
+ *
372
+ * @returns The current URL, or undefined/null if not set
372
373
  */
373
- export function getCurrentUrl() {
374
+ export function getCurrentUrl(this: XCUITestDriver): string | undefined | null {
374
375
  return this._currentUrl;
375
376
  }
376
377
 
377
378
  /**
378
- * @param {RegExp} titleRegExp
379
- * @param {RegExp} urlRegExp
380
- * @this {XCUITestDriver}
381
- * @returns {Promise<string|undefined>}
379
+ * Finds the most recent webview context ID matching the given title or URL patterns.
380
+ *
381
+ * @param titleRegExp - Regular expression to match against page titles
382
+ * @param urlRegExp - Regular expression to match against page URLs
383
+ * @returns The matching context ID, or undefined if no match is found
384
+ * @throws {errors.InvalidArgumentError} If neither regex is provided
382
385
  */
383
- export async function getRecentWebviewContextId(titleRegExp, urlRegExp) {
386
+ export async function getRecentWebviewContextId(
387
+ this: XCUITestDriver,
388
+ titleRegExp: RegExp,
389
+ urlRegExp: RegExp,
390
+ ): Promise<string | undefined> {
384
391
  if (!_.isRegExp(titleRegExp) && !_.isRegExp(urlRegExp)) {
385
392
  throw new errors.InvalidArgumentError(
386
393
  'A regular expression for either web view title or url must be provided',
@@ -404,33 +411,38 @@ export async function getRecentWebviewContextId(titleRegExp, urlRegExp) {
404
411
  }
405
412
 
406
413
  /**
407
- * @this {XCUITestDriver}
408
- * @returns {boolean}
414
+ * Checks if the current context is a web context (not native).
415
+ *
416
+ * @returns True if currently in a web context
409
417
  */
410
- export function isWebContext() {
418
+ export function isWebContext(this: XCUITestDriver): boolean {
411
419
  return !!this.curContext && this.curContext !== NATIVE_WIN;
412
420
  }
413
421
 
414
422
  /**
415
- * @this {XCUITestDriver}
416
- * @returns {boolean}
423
+ * Checks if the current context is a webview.
424
+ *
425
+ * This is an alias for {@linkcode isWebContext}.
426
+ *
427
+ * @returns True if currently in a webview context
417
428
  */
418
- export function isWebview() {
429
+ export function isWebview(this: XCUITestDriver): boolean {
419
430
  return this.isWebContext();
420
431
  }
421
432
 
422
433
  /**
423
- * @this {XCUITestDriver}
424
- * @returns {Promise<RemoteDebugger>}
434
+ * Creates a new remote debugger instance configured for the current device.
435
+ *
436
+ * @returns A configured RemoteDebugger instance
425
437
  */
426
- export async function getNewRemoteDebugger() {
438
+ export async function getNewRemoteDebugger(this: XCUITestDriver): Promise<RemoteDebugger> {
427
439
  const socketPath = this.isRealDevice()
428
440
  ? undefined
429
- : (await /** @type {import('appium-ios-simulator').Simulator} */ (this.device).getWebInspectorSocket() ?? undefined);
441
+ : (await (this.device as Simulator).getWebInspectorSocket() ?? undefined);
430
442
  return createRemoteDebugger(
431
443
  {
432
444
  bundleId: this.opts.bundleId,
433
- additionalBundleIds: /** @type {string[] | undefined} */ (this.opts.additionalWebviewBundleIds),
445
+ additionalBundleIds: this.opts.additionalWebviewBundleIds as string[] | undefined,
434
446
  isSafari: this.isSafari(),
435
447
  includeSafari: this.opts.includeSafariInWebviews,
436
448
  pageLoadMs: this.pageLoadMs,
@@ -440,7 +452,7 @@ export async function getNewRemoteDebugger() {
440
452
  garbageCollectOnExecute: util.hasValue(this.opts.safariGarbageCollect)
441
453
  ? !!this.opts.safariGarbageCollect
442
454
  : false,
443
- udid: /** @type {string} */ (this.opts.udid),
455
+ udid: this.opts.udid as string,
444
456
  logAllCommunication: this.opts.safariLogAllCommunication,
445
457
  logAllCommunicationHexDump: this.opts.safariLogAllCommunicationHexDump,
446
458
  socketChunkSize: this.opts.safariSocketChunkSize,
@@ -452,10 +464,11 @@ export async function getNewRemoteDebugger() {
452
464
  }
453
465
 
454
466
  /**
455
- * @this {XCUITestDriver}
456
- * @returns {Promise<string>}
467
+ * Gets the identifier of the current context.
468
+ *
469
+ * @returns The context identifier (e.g., 'NATIVE_APP' or 'WEBVIEW_xxx')
457
470
  */
458
- export async function getCurrentContext() {
471
+ export async function getCurrentContext(this: XCUITestDriver): Promise<string> {
459
472
  if (this.curContext && this.curContext !== NATIVE_WIN) {
460
473
  return `${WEBVIEW_BASE}${this.curContext}`;
461
474
  }
@@ -463,28 +476,32 @@ export async function getCurrentContext() {
463
476
  }
464
477
 
465
478
  /**
466
- * Set context
479
+ * Switches to the specified context (native or webview).
467
480
  *
468
- * @param {string|Context} name - The name of context to set. It could be 'null' as NATIVE_WIN.
469
- * @param {any} [callback] The callback. (It is not called in this method)
470
- * @param {boolean} [skipReadyCheck=false] - Whether it waits for the new context is ready
471
- * @this {XCUITestDriver}
472
- * @returns {Promise<void>}
481
+ * @param name - The name of context to set. Can be 'NATIVE_APP', 'WEBVIEW_xxx', or null
482
+ * @param callback - The callback (not used, kept for compatibility)
483
+ * @param skipReadyCheck - Whether to skip waiting for the new context to be ready
484
+ * @throws {errors.NoSuchContextError} If the specified context does not exist
473
485
  */
474
- export async function setContext(name, callback, skipReadyCheck = false) {
475
- function alreadyInContext(desired, current) {
486
+ export async function setContext(
487
+ this: XCUITestDriver,
488
+ name: string | {id: string} | null,
489
+ callback?: any,
490
+ skipReadyCheck: boolean = false,
491
+ ): Promise<void> {
492
+ function alreadyInContext(desired: string | null, current: string | null): boolean {
476
493
  return (
477
494
  desired === current ||
478
495
  (desired === null && current === NATIVE_WIN) ||
479
496
  (desired === NATIVE_WIN && current === null)
480
497
  );
481
498
  }
482
- function isNativeContext(context) {
499
+ function isNativeContext(context: string | null): boolean {
483
500
  return context === NATIVE_WIN || context === null;
484
501
  }
485
502
 
486
503
  // allow the full context list to be passed in
487
- const strName = String(typeof name === 'object' && name.id ? name.id : name);
504
+ const strName = String(typeof name === 'object' && name && 'id' in name ? name.id : name);
488
505
 
489
506
  this.log.debug(
490
507
  `Attempting to set context to '${strName || NATIVE_WIN}' from '${
@@ -519,7 +536,7 @@ export async function setContext(name, callback, skipReadyCheck = false) {
519
536
  // allow user to pass in "WEBVIEW" without an index
520
537
  // the second context will be the first webview as
521
538
  // the first is always NATIVE_APP
522
- contextId = /** @type {string[]} */ (this.contexts)[1];
539
+ contextId = (this.contexts as string[])[1];
523
540
  }
524
541
  if (!_.includes(this.contexts, contextId)) {
525
542
  throw new errors.NoSuchContextError();
@@ -532,7 +549,7 @@ export async function setContext(name, callback, skipReadyCheck = false) {
532
549
  const [appIdKey, pageIdKey] = _.map(contextId.split('.'), (id) => parseInt(id, 10));
533
550
  try {
534
551
  this.selectingNewPage = true;
535
- await (/** @type {RemoteDebugger} */ (this.remote)).selectPage(appIdKey, pageIdKey, skipReadyCheck);
552
+ await this.remote.selectPage(appIdKey, pageIdKey, skipReadyCheck);
536
553
  await notifyBiDiContextChange.bind(this)();
537
554
  } catch (err) {
538
555
  this.curContext = this.curWindowHandle = oldContext;
@@ -542,7 +559,7 @@ export async function setContext(name, callback, skipReadyCheck = false) {
542
559
  }
543
560
 
544
561
  // attempt to start performance logging, if requested
545
- if (this.opts.enablePerformanceLogging && this.remote) {
562
+ if (this.opts.enablePerformanceLogging && this._remote) {
546
563
  const context = this.curContext;
547
564
  this.log.debug(`Starting performance log on '${context}'`);
548
565
  [this.logs.performance,] = assignBiDiLogListener.bind(this)(
@@ -560,46 +577,56 @@ export async function setContext(name, callback, skipReadyCheck = false) {
560
577
  // start safari logging if the logs handlers are active
561
578
  if (name && name !== NATIVE_WIN && this.logs) {
562
579
  if (this.logs.safariConsole) {
563
- (/** @type {RemoteDebugger} */ (this.remote)).startConsole(
580
+ this.remote.startConsole(
564
581
  this.logs.safariConsole.onConsoleLogEvent.bind(this.logs.safariConsole),
565
582
  );
566
583
  }
567
584
  if (this.logs.safariNetwork) {
568
- (/** @type {RemoteDebugger} */ (this.remote)).startNetwork(
585
+ this.remote.startNetwork(
569
586
  this.logs.safariNetwork.onNetworkEvent.bind(this.logs.safariNetwork),
570
- );
587
+ );
588
+ }
571
589
  }
572
590
  }
573
- }
574
591
 
575
592
  /**
576
- * @this {XCUITestDriver}
577
- * @returns {Promise<string[]|FullContext[]>}
593
+ * Gets the list of available contexts.
594
+ *
595
+ * The format depends on the `fullContextList` option:
596
+ * - If enabled, returns full context objects with title, URL, and bundleId
597
+ * - If disabled, returns simple context ID strings
598
+ *
599
+ * @returns Array of context IDs or full context objects
578
600
  */
579
- export async function getContexts() {
601
+ export async function getContexts(this: XCUITestDriver): Promise<string[] | FullContext[]> {
580
602
  this.log.debug('Getting list of available contexts');
581
603
  const contexts = await this.getContextsAndViews(false);
582
604
 
583
605
  if (this.opts.fullContextList) {
584
- return /** @type {import('./types').FullContext[]} */ (
585
- contexts.map((context) => ({
586
- id: context.id.toString(),
587
- title: context.view?.title,
588
- url: context.view?.url,
589
- bundleId: context.view?.bundleId,
590
- }))
591
- );
606
+ return contexts.map((context) => ({
607
+ id: context.id.toString(),
608
+ title: context.view?.title,
609
+ url: context.view?.url,
610
+ bundleId: context.view?.bundleId,
611
+ })) as FullContext[];
592
612
  }
593
- return /** @type {string[]} */ (contexts.map((context) => context.id.toString()));
613
+ return contexts.map((context) => context.id.toString());
594
614
  }
595
615
 
596
616
  /**
597
- * @this {XCUITestDriver}
598
- * @param {string} name
599
- * @param {boolean} [skipReadyCheck]
600
- * @returns {Promise<void>}
617
+ * Sets the current window (context) in a web context.
618
+ *
619
+ * This is a wrapper around {@linkcode setContext} that translates errors appropriately.
620
+ *
621
+ * @param name - The window/context name to switch to
622
+ * @param skipReadyCheck - Whether to skip waiting for the window to be ready
623
+ * @throws {errors.NoSuchWindowError} If the window does not exist
601
624
  */
602
- export async function setWindow(name, skipReadyCheck) {
625
+ export async function setWindow(
626
+ this: XCUITestDriver,
627
+ name: string,
628
+ skipReadyCheck?: boolean,
629
+ ): Promise<void> {
603
630
  if (!this.isWebContext()) {
604
631
  // https://github.com/appium/appium/issues/20710
605
632
  return;
@@ -613,10 +640,14 @@ export async function setWindow(name, skipReadyCheck) {
613
640
  }
614
641
 
615
642
  /**
616
- * @this {XCUITestDriver}
617
- * @returns {Promise<string>}
643
+ * Gets the handle of the current window.
644
+ *
645
+ * In native context, returns a default handle. In web context, returns the current context ID.
646
+ *
647
+ * @returns The window handle
648
+ * @throws {errors.InvalidContextError} If not in a valid context
618
649
  */
619
- export async function getWindowHandle() {
650
+ export async function getWindowHandle(this: XCUITestDriver): Promise<string> {
620
651
  if (!this.isWebContext()) {
621
652
  // https://github.com/appium/appium/issues/20710
622
653
  return DEFAULT_NATIVE_WINDOW_HANDLE;
@@ -629,10 +660,13 @@ export async function getWindowHandle() {
629
660
  }
630
661
 
631
662
  /**
632
- * @this {XCUITestDriver}
633
- * @returns {Promise<string[]>}
663
+ * Gets the list of all available window handles.
664
+ *
665
+ * In native context, returns a single default handle. In web context, returns all webview handles.
666
+ *
667
+ * @returns Array of window handle strings
634
668
  */
635
- export async function getWindowHandles() {
669
+ export async function getWindowHandles(this: XCUITestDriver): Promise<string[]> {
636
670
  if (!this.isWebContext()) {
637
671
  // https://github.com/appium/appium/issues/20710
638
672
  return [DEFAULT_NATIVE_WINDOW_HANDLE];
@@ -653,13 +687,13 @@ export async function getWindowHandles() {
653
687
  }
654
688
 
655
689
  /**
656
- * Checks if a URL is blacklisted in the 'safariIgnoreWebHostnames' capability
690
+ * Checks if a URL is blacklisted in the 'safariIgnoreWebHostnames' capability.
657
691
  *
658
- * @param {string} url
659
- * @param {string} [safariIgnoreWebHostnames]
660
- * @returns {boolean}
692
+ * @param url - The URL to check
693
+ * @param safariIgnoreWebHostnames - Comma-separated list of hostnames to ignore
694
+ * @returns True if the URL should be ignored
661
695
  */
662
- function isUrlIgnored(url, safariIgnoreWebHostnames) {
696
+ function isUrlIgnored(url: string, safariIgnoreWebHostnames?: string): boolean {
663
697
  if (!safariIgnoreWebHostnames || _.isEmpty(safariIgnoreWebHostnames)) {
664
698
  return false;
665
699
  }
@@ -686,20 +720,13 @@ function isUrlIgnored(url, safariIgnoreWebHostnames) {
686
720
  }
687
721
 
688
722
  /**
689
- * https://github.com/appium/appium/issues/20741
723
+ * Notifies BiDi clients about context changes.
690
724
  *
691
- * @this {XCUITestDriver}
692
- * @returns {Promise<void>}
725
+ * @see https://github.com/appium/appium/issues/20741
693
726
  */
694
- export async function notifyBiDiContextChange() {
727
+ export async function notifyBiDiContextChange(this: XCUITestDriver): Promise<void> {
695
728
  const name = await this.getCurrentContext();
696
729
  this.eventEmitter.emit(BIDI_EVENT_NAME, makeContextUpdatedEvent(name));
697
730
  this.eventEmitter.emit(BIDI_EVENT_NAME, makeObsoleteContextUpdatedEvent(name));
698
731
  }
699
732
 
700
-
701
- /**
702
- * @typedef {import('../driver').XCUITestDriver} XCUITestDriver
703
- * @typedef {import('./types').Context} Context
704
- * @typedef {import('./types').FullContext} FullContext
705
- */
@@ -66,7 +66,7 @@ export async function executeAsync(script, args) {
66
66
 
67
67
  args = this.convertElementsForAtoms(args);
68
68
  this.asyncWaitMs = this.asyncWaitMs || 0;
69
- const promise = (/** @type {import('appium-remote-debugger').RemoteDebugger} */ (this.remote)).executeAtomAsync(
69
+ const promise = this.remote.executeAtomAsync(
70
70
  'execute_async_script',
71
71
  [script, args, this.asyncWaitMs],
72
72
  this.curWebFrames,