appium-xcuitest-driver 12.4.0 → 12.5.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.
- package/CHANGELOG.md +6 -0
- package/build/lib/commands/web-native-bridge.d.ts +6 -2
- package/build/lib/commands/web-native-bridge.d.ts.map +1 -1
- package/build/lib/commands/web-native-bridge.js +197 -152
- package/build/lib/commands/web-native-bridge.js.map +1 -1
- package/build/lib/commands/web.d.ts +6 -2
- package/build/lib/commands/web.d.ts.map +1 -1
- package/build/lib/commands/web.js +40 -37
- package/build/lib/commands/web.js.map +1 -1
- package/lib/commands/web-native-bridge.ts +235 -183
- package/lib/commands/web.ts +42 -38
- package/npm-shrinkwrap.json +12 -12
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
## [12.5.0](https://github.com/appium/appium-xcuitest-driver/compare/v12.4.0...v12.5.0) (2026-08-17)
|
|
2
|
+
|
|
3
|
+
### Features
|
|
4
|
+
|
|
5
|
+
* support native web tap inside same-origin iframes, bump remote-debugger ([#2950](https://github.com/appium/appium-xcuitest-driver/issues/2950)) ([6f91d47](https://github.com/appium/appium-xcuitest-driver/commit/6f91d47349484742e05d9da56148a8c4d264f9a2))
|
|
6
|
+
|
|
1
7
|
## [12.4.0](https://github.com/appium/appium-xcuitest-driver/compare/v12.3.4...v12.4.0) (2026-08-17)
|
|
2
8
|
|
|
3
9
|
### Features
|
|
@@ -85,12 +85,16 @@ export declare function nativeWebTap(this: XCUITestDriver, el: Element | string)
|
|
|
85
85
|
*
|
|
86
86
|
* Always uses a calibration transform, automatically (re)fitting one via
|
|
87
87
|
* {@linkcode getOrCreateWebviewCalibration} whenever the cached one no
|
|
88
|
-
* longer matches the current orientation/size/scroll state.
|
|
88
|
+
* longer matches the current orientation/size/scroll state. That transform
|
|
89
|
+
* is fitted against the top-level page, so `x`/`y` are first shifted by the
|
|
90
|
+
* current sub-frame's offset (see {@linkcode getFrameChainOffset}), if any.
|
|
89
91
|
*
|
|
90
92
|
* @param x - X coordinate in web space
|
|
91
93
|
* @param y - Y coordinate in web space
|
|
92
94
|
* @returns Translated position in native coordinates
|
|
93
|
-
* @throws {Error} If no WebView is found
|
|
95
|
+
* @throws {Error} If no WebView is found, if calibration fails, or if the
|
|
96
|
+
* current frame (or one of its ancestors) has a different origin than the
|
|
97
|
+
* top-level page
|
|
94
98
|
*/
|
|
95
99
|
export declare function translateWebCoords(this: XCUITestDriver, x: number, y: number): Promise<Position>;
|
|
96
100
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-native-bridge.d.ts","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAE,QAAQ,EAAQ,IAAI,EAAC,MAAM,eAAe,CAAC;AAIjE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAwB,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"web-native-bridge.d.ts","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAE,QAAQ,EAAQ,IAAI,EAAC,MAAM,eAAe,CAAC;AAIjE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAwB,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC;AA6J1G;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,GAAG,eAAe,CAwCzF;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAK9D;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9F;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAE9E;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;AAED;;;;GAIG;AACH,wBAAsB,gCAAgC,CACpD,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,EAC7B,QAAQ,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,OAAO,EACjB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB5F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoCtG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,8CAA8C,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CASnH"}
|
|
@@ -34,7 +34,12 @@ const CALIBRATION_TAPS_MARKER = '__appiumCalibrationTaps';
|
|
|
34
34
|
// existing overlay/taps array) so that a retry after a failed attempt can
|
|
35
35
|
// never inherit stale taps left over from a previous attempt whose cleanup
|
|
36
36
|
// call didn't actually reach the page (e.g. a transport hiccup).
|
|
37
|
-
|
|
37
|
+
//
|
|
38
|
+
// This and the next 3 scripts are sent via `this.remote.execute` (see the
|
|
39
|
+
// private helpers below), which evaluates them as a bare program, not a
|
|
40
|
+
// function body - unlike the `execute_script` atom, it does not tolerate a
|
|
41
|
+
// top-level `return`. Wrapped in an IIFE so they can use one anyway.
|
|
42
|
+
const INJECT_CALIBRATION_OVERLAY_SCRIPT = `(function () {
|
|
38
43
|
if (window.${CALIBRATION_OVERLAY_MARKER}) {
|
|
39
44
|
window.${CALIBRATION_OVERLAY_MARKER}.remove();
|
|
40
45
|
}
|
|
@@ -50,23 +55,23 @@ const INJECT_CALIBRATION_OVERLAY_SCRIPT = `
|
|
|
50
55
|
taps.push({x: e.clientX, y: e.clientY});
|
|
51
56
|
}, true);
|
|
52
57
|
window.${CALIBRATION_OVERLAY_MARKER} = overlay;
|
|
53
|
-
|
|
54
|
-
const REMOVE_CALIBRATION_OVERLAY_SCRIPT = `
|
|
58
|
+
})();`;
|
|
59
|
+
const REMOVE_CALIBRATION_OVERLAY_SCRIPT = `(function () {
|
|
55
60
|
if (window.${CALIBRATION_OVERLAY_MARKER}) {
|
|
56
61
|
window.${CALIBRATION_OVERLAY_MARKER}.remove();
|
|
57
62
|
delete window.${CALIBRATION_OVERLAY_MARKER};
|
|
58
63
|
delete window.${CALIBRATION_TAPS_MARKER};
|
|
59
64
|
}
|
|
60
|
-
|
|
65
|
+
})();`;
|
|
61
66
|
// Returns every tap the overlay has observed so far, so the caller can
|
|
62
67
|
// correlate a specific tap by index instead of trusting that the most
|
|
63
68
|
// recently pushed entry corresponds to the tap it just issued (a native tap
|
|
64
69
|
// resolves once WDA dispatches the touch, not once the webview's click
|
|
65
70
|
// handler has necessarily run and recorded it).
|
|
66
|
-
const READ_CALIBRATION_TAPS_SCRIPT = `
|
|
71
|
+
const READ_CALIBRATION_TAPS_SCRIPT = `(function () {
|
|
67
72
|
return window.${CALIBRATION_TAPS_MARKER} || [];
|
|
68
|
-
|
|
69
|
-
const READ_VIEWPORT_STATE_SCRIPT = `
|
|
73
|
+
})();`;
|
|
74
|
+
const READ_VIEWPORT_STATE_SCRIPT = `(function () {
|
|
70
75
|
var vv = window.visualViewport;
|
|
71
76
|
return {
|
|
72
77
|
innerWidth: window.innerWidth,
|
|
@@ -78,6 +83,25 @@ const READ_VIEWPORT_STATE_SCRIPT = `
|
|
|
78
83
|
visualViewportOffsetTop: vv ? vv.offsetTop : 0,
|
|
79
84
|
visualViewportScale: vv ? vv.scale : 1,
|
|
80
85
|
};
|
|
86
|
+
})();`;
|
|
87
|
+
// Sums each ancestor iframe's own getBoundingClientRect() offset up to the
|
|
88
|
+
// top document, giving the current frame's offset in top-page coordinates.
|
|
89
|
+
// `frameElement` is null for a cross-origin frame, which doubles as that signal.
|
|
90
|
+
const READ_FRAME_CHAIN_OFFSET_SCRIPT = `
|
|
91
|
+
var w = window;
|
|
92
|
+
var offsetX = 0;
|
|
93
|
+
var offsetY = 0;
|
|
94
|
+
while (w !== w.top) {
|
|
95
|
+
var fe = w.frameElement;
|
|
96
|
+
if (!fe) {
|
|
97
|
+
return {crossOrigin: true};
|
|
98
|
+
}
|
|
99
|
+
var rect = fe.getBoundingClientRect();
|
|
100
|
+
offsetX += rect.left;
|
|
101
|
+
offsetY += rect.top;
|
|
102
|
+
w = w.parent;
|
|
103
|
+
}
|
|
104
|
+
return {crossOrigin: false, offsetX: offsetX, offsetY: offsetY};
|
|
81
105
|
`;
|
|
82
106
|
// Marks arguments[0] with a throwaway `aria-label` (WebKit reflects this
|
|
83
107
|
// into the native accessibility label) so it can be looked up unambiguously
|
|
@@ -118,6 +142,7 @@ const RESTORE_ELEMENT_ARIA_LABEL_SCRIPT = `
|
|
|
118
142
|
el.removeAttribute('aria-label');
|
|
119
143
|
}
|
|
120
144
|
`;
|
|
145
|
+
// ---- exported commands ----
|
|
121
146
|
/**
|
|
122
147
|
* Computes the affine transform (`native = offset + ratio * web`) that best
|
|
123
148
|
* fits a set of native/web coordinate sample pairs, independently per axis.
|
|
@@ -177,6 +202,150 @@ export function viewportSignature(state) {
|
|
|
177
202
|
`@${state.visualViewportOffsetLeft},${state.visualViewportOffsetTop}x${state.visualViewportScale}`;
|
|
178
203
|
return `${state.orientation}:${state.innerWidth}x${state.innerHeight}:${state.isScrolledToTop ? 'top' : 'scrolled'}:${vv}`;
|
|
179
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Clicks at the specified web coordinates.
|
|
207
|
+
*
|
|
208
|
+
* Coordinates are automatically translated from web to native coordinates.
|
|
209
|
+
*
|
|
210
|
+
* @param x - X coordinate in web space
|
|
211
|
+
* @param y - Y coordinate in web space
|
|
212
|
+
*/
|
|
213
|
+
export async function clickWebCoords(x, y) {
|
|
214
|
+
const { x: translatedX, y: translatedY } = await this.translateWebCoords(x, y);
|
|
215
|
+
await this.mobileTap(translatedX, translatedY);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* @deprecated No longer used: coordinate translation is calibrated
|
|
219
|
+
* automatically and no longer needs a device-type hint. Kept as a no-op only
|
|
220
|
+
* for backward compatibility with existing callers.
|
|
221
|
+
*/
|
|
222
|
+
export async function getSafariIsIphone() {
|
|
223
|
+
return true;
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* @deprecated No longer used: coordinate translation is calibrated
|
|
227
|
+
* automatically and no longer needs the device's screen size. Kept as a
|
|
228
|
+
* no-op only for backward compatibility with existing callers.
|
|
229
|
+
*/
|
|
230
|
+
export async function getSafariDeviceSize() {
|
|
231
|
+
return { width: 0, height: 0 };
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* @deprecated No longer used: coordinate translation is calibrated
|
|
235
|
+
* automatically and no longer needs a notch hint. Kept as a no-op only for
|
|
236
|
+
* backward compatibility with existing callers.
|
|
237
|
+
*/
|
|
238
|
+
export async function getSafariIsNotched() {
|
|
239
|
+
return false;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* @deprecated No longer used: coordinate translation is calibrated
|
|
243
|
+
* automatically instead of computing Safari-chrome offsets. Kept as a no-op
|
|
244
|
+
* only for backward compatibility with existing callers.
|
|
245
|
+
*/
|
|
246
|
+
export async function getExtraTranslateWebCoordsOffset(wvPos, realDims) {
|
|
247
|
+
void wvPos;
|
|
248
|
+
void realDims;
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* @deprecated No longer used: coordinate translation is calibrated
|
|
252
|
+
* automatically instead of computing a smart-app-banner offset. Kept as a
|
|
253
|
+
* no-op only for backward compatibility with existing callers.
|
|
254
|
+
*/
|
|
255
|
+
export async function getExtraNativeWebTapOffset(isIphone, bannerVisibility) {
|
|
256
|
+
void isIphone;
|
|
257
|
+
void bannerVisibility;
|
|
258
|
+
return 0;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Performs a native tap on a web element.
|
|
262
|
+
*
|
|
263
|
+
* Attempts to use a simple native tap first, falling back to coordinate-based tapping if needed.
|
|
264
|
+
*
|
|
265
|
+
* @param el - Element to tap
|
|
266
|
+
*/
|
|
267
|
+
export async function nativeWebTap(el) {
|
|
268
|
+
const atomsElement = this.getAtomsElement(el);
|
|
269
|
+
// if strict native tap, do not try to do it with WDA directly
|
|
270
|
+
if (!this.settings.getSettings().nativeWebTapStrict && (await tapWebElementNatively.bind(this)(atomsElement))) {
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
this.log.warn('Unable to do simple native web tap. Attempting to convert coordinates');
|
|
274
|
+
const [size, coordinates] = (await Promise.all([
|
|
275
|
+
this.executeAtom('get_size', [atomsElement]),
|
|
276
|
+
this.executeAtom('get_top_left_coordinates', [atomsElement]),
|
|
277
|
+
]));
|
|
278
|
+
const { width, height } = size;
|
|
279
|
+
const { x, y } = coordinates;
|
|
280
|
+
await this.clickWebCoords(x + width / 2, y + height / 2);
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Translates web coordinates to native screen coordinates.
|
|
284
|
+
*
|
|
285
|
+
* Always uses a calibration transform, automatically (re)fitting one via
|
|
286
|
+
* {@linkcode getOrCreateWebviewCalibration} whenever the cached one no
|
|
287
|
+
* longer matches the current orientation/size/scroll state. That transform
|
|
288
|
+
* is fitted against the top-level page, so `x`/`y` are first shifted by the
|
|
289
|
+
* current sub-frame's offset (see {@linkcode getFrameChainOffset}), if any.
|
|
290
|
+
*
|
|
291
|
+
* @param x - X coordinate in web space
|
|
292
|
+
* @param y - Y coordinate in web space
|
|
293
|
+
* @returns Translated position in native coordinates
|
|
294
|
+
* @throws {Error} If no WebView is found, if calibration fails, or if the
|
|
295
|
+
* current frame (or one of its ancestors) has a different origin than the
|
|
296
|
+
* top-level page
|
|
297
|
+
*/
|
|
298
|
+
export async function translateWebCoords(x, y) {
|
|
299
|
+
this.log.debug(`Translating web coordinates (${JSON.stringify({ x, y })}) to native coordinates`);
|
|
300
|
+
const [{ offsetX, offsetY, pixelRatioX, pixelRatioY }, frameOffset] = await Promise.all([
|
|
301
|
+
getOrCreateWebviewCalibration.call(this),
|
|
302
|
+
getFrameChainOffset.call(this),
|
|
303
|
+
]);
|
|
304
|
+
if (frameOffset.crossOrigin) {
|
|
305
|
+
throw new Error('Cannot translate coordinates for the current frame: it (or one of its ancestor frames) has a ' +
|
|
306
|
+
"different origin than the top-level page. Safari's remote debugger cannot determine a cross-origin " +
|
|
307
|
+
"frame's position, which is required to compute where to tap. Switch back to the top-level frame " +
|
|
308
|
+
'or a same-origin ancestor before tapping elements here.');
|
|
309
|
+
}
|
|
310
|
+
const frameX = x + frameOffset.offsetX;
|
|
311
|
+
const frameY = y + frameOffset.offsetY;
|
|
312
|
+
const cmd = '(function () {return {innerWidth: window.innerWidth, innerHeight: window.innerHeight, ' +
|
|
313
|
+
'outerWidth: window.outerWidth, outerHeight: window.outerHeight}; })()';
|
|
314
|
+
const wvDims = await this.remote.execute(cmd);
|
|
315
|
+
// https://tripleodeon.com/2011/12/first-understand-your-screen/
|
|
316
|
+
const shouldApplyPixelRatio = wvDims.innerWidth > wvDims.outerWidth || wvDims.innerHeight > wvDims.outerHeight;
|
|
317
|
+
const newCoords = {
|
|
318
|
+
x: offsetX + frameX * (shouldApplyPixelRatio ? pixelRatioX : 1),
|
|
319
|
+
y: offsetY + frameY * (shouldApplyPixelRatio ? pixelRatioY : 1),
|
|
320
|
+
};
|
|
321
|
+
this.log.debug(`Converted web coords ${JSON.stringify({ x, y })} into real coords ${JSON.stringify(newCoords)}`);
|
|
322
|
+
return newCoords;
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Primes (or refreshes) the calibration transform that `translateWebCoords`
|
|
326
|
+
* fits and applies automatically for every native web tap. Calibration
|
|
327
|
+
* happens transparently as soon as it's needed, so calling this explicitly
|
|
328
|
+
* is optional; it's useful mainly to warm the cache ahead of a
|
|
329
|
+
* timing-sensitive interaction, or to force a fresh fit without waiting for
|
|
330
|
+
* the viewport signature to change.
|
|
331
|
+
*
|
|
332
|
+
* Measures against the current page in place, without navigating away from
|
|
333
|
+
* it, so it is safe to call without losing web app state, and works
|
|
334
|
+
* identically for Safari and hybrid-app webviews.
|
|
335
|
+
*
|
|
336
|
+
* @returns Calibration data with offset and pixel ratio information
|
|
337
|
+
* @throws {errors.NotImplementedError} If not in a web context
|
|
338
|
+
*/
|
|
339
|
+
export async function mobileCalibrateWebToRealCoordinatesTranslation() {
|
|
340
|
+
requireWebContext(this, 'This API can only be called from a web context');
|
|
341
|
+
const result = await getOrCreateWebviewCalibration.call(this, true);
|
|
342
|
+
return {
|
|
343
|
+
...result,
|
|
344
|
+
offsetX: Math.round(result.offsetX),
|
|
345
|
+
offsetY: Math.round(result.offsetY),
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
// ---- private helpers ----
|
|
180
349
|
/**
|
|
181
350
|
* Finds the current native XCUIElementTypeWebView and returns its rect.
|
|
182
351
|
* Used to pick native points to tap during calibration.
|
|
@@ -203,9 +372,12 @@ async function findWebviewRect() {
|
|
|
203
372
|
* included on top of what the plan's signature covers, because switching to
|
|
204
373
|
* a different webview is itself a reason any previously fitted transform no
|
|
205
374
|
* longer applies.
|
|
375
|
+
*
|
|
376
|
+
* Uses `this.remote.execute` (not `this.execute`) to always read the
|
|
377
|
+
* top-level page's viewport, regardless of the current frame.
|
|
206
378
|
*/
|
|
207
379
|
async function computeViewportSignature() {
|
|
208
|
-
const state =
|
|
380
|
+
const state = await this.remote.execute(READ_VIEWPORT_STATE_SCRIPT);
|
|
209
381
|
const orientation = state.innerHeight >= state.innerWidth ? 'PORTRAIT' : 'LANDSCAPE';
|
|
210
382
|
return `${this.curContext ?? ''}::${viewportSignature({ ...state, orientation })}`;
|
|
211
383
|
}
|
|
@@ -217,27 +389,17 @@ async function computeViewportSignature() {
|
|
|
217
389
|
* measures whatever chrome (or lack of it) is actually on screen right now,
|
|
218
390
|
* so it works the same way for Safari and hybrid-app webviews alike.
|
|
219
391
|
*
|
|
220
|
-
*
|
|
221
|
-
*
|
|
222
|
-
*
|
|
223
|
-
* coordinates are always picked from the *whole* WebView's rect - a
|
|
224
|
-
* sub-frame only covers part of that, so unless it happens to cover the
|
|
225
|
-
* WebView's center, the overlay would never observe the calibration taps.
|
|
226
|
-
* Calibrating from the top-level frame first still lets native web tap
|
|
227
|
-
* work for elements inside sub-frames, as long as the page doesn't rely on
|
|
228
|
-
* per-frame chrome/scroll offsets the top-level calibration can't see.
|
|
392
|
+
* Uses `this.remote.execute` (not `this.execute`) to always fit against the
|
|
393
|
+
* top-level page, regardless of the current frame; {@linkcode translateWebCoords}
|
|
394
|
+
* adds a sub-frame's own offset (via {@linkcode getFrameChainOffset}) on top.
|
|
229
395
|
*/
|
|
230
396
|
async function performCalibration() {
|
|
231
|
-
if (!isEmpty(this.curWebFrames)) {
|
|
232
|
-
throw new Error('Cannot calibrate web-to-native coordinates translation while switched into a sub-frame. ' +
|
|
233
|
-
"Switch back to the top-level frame first (e.g. WebdriverIO's driver.switchToFrame(null)).");
|
|
234
|
-
}
|
|
235
397
|
let entry;
|
|
236
398
|
await retryInterval(CALIBRATION_RETRIES, CALIBRATION_RETRY_INTERVAL_MS, async () => {
|
|
237
399
|
const rect = await findWebviewRect.call(this);
|
|
238
400
|
const centerX = rect.x + rect.width / 2;
|
|
239
401
|
const centerY = rect.y + rect.height / 2;
|
|
240
|
-
await this.execute(INJECT_CALIBRATION_OVERLAY_SCRIPT);
|
|
402
|
+
await this.remote.execute(INJECT_CALIBRATION_OVERLAY_SCRIPT);
|
|
241
403
|
try {
|
|
242
404
|
const samples = [];
|
|
243
405
|
for (const [i, sign] of [-1, 1].entries()) {
|
|
@@ -249,7 +411,7 @@ async function performCalibration() {
|
|
|
249
411
|
// webview's own click handler has run and recorded it.
|
|
250
412
|
const expectedCount = i + 1;
|
|
251
413
|
const taps = (await retryInterval(CALIBRATION_TAP_READBACK_RETRIES, CALIBRATION_TAP_READBACK_INTERVAL_MS, async () => {
|
|
252
|
-
const result =
|
|
414
|
+
const result = await this.remote.execute(READ_CALIBRATION_TAPS_SCRIPT);
|
|
253
415
|
if (!Array.isArray(result) || result.length < expectedCount) {
|
|
254
416
|
throw new Error('The calibration overlay has not observed this tap yet');
|
|
255
417
|
}
|
|
@@ -267,7 +429,7 @@ async function performCalibration() {
|
|
|
267
429
|
}
|
|
268
430
|
finally {
|
|
269
431
|
try {
|
|
270
|
-
await this.execute(REMOVE_CALIBRATION_OVERLAY_SCRIPT);
|
|
432
|
+
await this.remote.execute(REMOVE_CALIBRATION_OVERLAY_SCRIPT);
|
|
271
433
|
}
|
|
272
434
|
catch (err) {
|
|
273
435
|
// Don't let a cleanup hiccup mask a real error from the try block
|
|
@@ -280,6 +442,17 @@ async function performCalibration() {
|
|
|
280
442
|
});
|
|
281
443
|
return entry;
|
|
282
444
|
}
|
|
445
|
+
/**
|
|
446
|
+
* Offset of the current frame's viewport origin from the top-level page's,
|
|
447
|
+
* for converting a frame-relative coordinate into the top-level-relative
|
|
448
|
+
* space {@linkcode performCalibration} fits against.
|
|
449
|
+
*/
|
|
450
|
+
async function getFrameChainOffset() {
|
|
451
|
+
if (isEmpty(this.curWebFrames)) {
|
|
452
|
+
return { crossOrigin: false, offsetX: 0, offsetY: 0 };
|
|
453
|
+
}
|
|
454
|
+
return await this.execute(READ_FRAME_CHAIN_OFFSET_SCRIPT);
|
|
455
|
+
}
|
|
283
456
|
/**
|
|
284
457
|
* Returns a cached web-to-native calibration transform if the webview's
|
|
285
458
|
* orientation/size/scroll state hasn't changed since it was fitted,
|
|
@@ -357,132 +530,4 @@ async function tapWebElementNatively(atomsElement) {
|
|
|
357
530
|
}
|
|
358
531
|
}
|
|
359
532
|
}
|
|
360
|
-
/**
|
|
361
|
-
* Clicks at the specified web coordinates.
|
|
362
|
-
*
|
|
363
|
-
* Coordinates are automatically translated from web to native coordinates.
|
|
364
|
-
*
|
|
365
|
-
* @param x - X coordinate in web space
|
|
366
|
-
* @param y - Y coordinate in web space
|
|
367
|
-
*/
|
|
368
|
-
export async function clickWebCoords(x, y) {
|
|
369
|
-
const { x: translatedX, y: translatedY } = await this.translateWebCoords(x, y);
|
|
370
|
-
await this.mobileTap(translatedX, translatedY);
|
|
371
|
-
}
|
|
372
|
-
/**
|
|
373
|
-
* @deprecated No longer used: coordinate translation is calibrated
|
|
374
|
-
* automatically and no longer needs a device-type hint. Kept as a no-op only
|
|
375
|
-
* for backward compatibility with existing callers.
|
|
376
|
-
*/
|
|
377
|
-
export async function getSafariIsIphone() {
|
|
378
|
-
return true;
|
|
379
|
-
}
|
|
380
|
-
/**
|
|
381
|
-
* @deprecated No longer used: coordinate translation is calibrated
|
|
382
|
-
* automatically and no longer needs the device's screen size. Kept as a
|
|
383
|
-
* no-op only for backward compatibility with existing callers.
|
|
384
|
-
*/
|
|
385
|
-
export async function getSafariDeviceSize() {
|
|
386
|
-
return { width: 0, height: 0 };
|
|
387
|
-
}
|
|
388
|
-
/**
|
|
389
|
-
* @deprecated No longer used: coordinate translation is calibrated
|
|
390
|
-
* automatically and no longer needs a notch hint. Kept as a no-op only for
|
|
391
|
-
* backward compatibility with existing callers.
|
|
392
|
-
*/
|
|
393
|
-
export async function getSafariIsNotched() {
|
|
394
|
-
return false;
|
|
395
|
-
}
|
|
396
|
-
/**
|
|
397
|
-
* @deprecated No longer used: coordinate translation is calibrated
|
|
398
|
-
* automatically instead of computing Safari-chrome offsets. Kept as a no-op
|
|
399
|
-
* only for backward compatibility with existing callers.
|
|
400
|
-
*/
|
|
401
|
-
export async function getExtraTranslateWebCoordsOffset(wvPos, realDims) {
|
|
402
|
-
void wvPos;
|
|
403
|
-
void realDims;
|
|
404
|
-
}
|
|
405
|
-
/**
|
|
406
|
-
* @deprecated No longer used: coordinate translation is calibrated
|
|
407
|
-
* automatically instead of computing a smart-app-banner offset. Kept as a
|
|
408
|
-
* no-op only for backward compatibility with existing callers.
|
|
409
|
-
*/
|
|
410
|
-
export async function getExtraNativeWebTapOffset(isIphone, bannerVisibility) {
|
|
411
|
-
void isIphone;
|
|
412
|
-
void bannerVisibility;
|
|
413
|
-
return 0;
|
|
414
|
-
}
|
|
415
|
-
/**
|
|
416
|
-
* Performs a native tap on a web element.
|
|
417
|
-
*
|
|
418
|
-
* Attempts to use a simple native tap first, falling back to coordinate-based tapping if needed.
|
|
419
|
-
*
|
|
420
|
-
* @param el - Element to tap
|
|
421
|
-
*/
|
|
422
|
-
export async function nativeWebTap(el) {
|
|
423
|
-
const atomsElement = this.getAtomsElement(el);
|
|
424
|
-
// if strict native tap, do not try to do it with WDA directly
|
|
425
|
-
if (!this.settings.getSettings().nativeWebTapStrict && (await tapWebElementNatively.bind(this)(atomsElement))) {
|
|
426
|
-
return;
|
|
427
|
-
}
|
|
428
|
-
this.log.warn('Unable to do simple native web tap. Attempting to convert coordinates');
|
|
429
|
-
const [size, coordinates] = (await Promise.all([
|
|
430
|
-
this.executeAtom('get_size', [atomsElement]),
|
|
431
|
-
this.executeAtom('get_top_left_coordinates', [atomsElement]),
|
|
432
|
-
]));
|
|
433
|
-
const { width, height } = size;
|
|
434
|
-
const { x, y } = coordinates;
|
|
435
|
-
await this.clickWebCoords(x + width / 2, y + height / 2);
|
|
436
|
-
}
|
|
437
|
-
/**
|
|
438
|
-
* Translates web coordinates to native screen coordinates.
|
|
439
|
-
*
|
|
440
|
-
* Always uses a calibration transform, automatically (re)fitting one via
|
|
441
|
-
* {@linkcode getOrCreateWebviewCalibration} whenever the cached one no
|
|
442
|
-
* longer matches the current orientation/size/scroll state.
|
|
443
|
-
*
|
|
444
|
-
* @param x - X coordinate in web space
|
|
445
|
-
* @param y - Y coordinate in web space
|
|
446
|
-
* @returns Translated position in native coordinates
|
|
447
|
-
* @throws {Error} If no WebView is found or if calibration fails
|
|
448
|
-
*/
|
|
449
|
-
export async function translateWebCoords(x, y) {
|
|
450
|
-
this.log.debug(`Translating web coordinates (${JSON.stringify({ x, y })}) to native coordinates`);
|
|
451
|
-
const { offsetX, offsetY, pixelRatioX, pixelRatioY } = await getOrCreateWebviewCalibration.call(this);
|
|
452
|
-
const cmd = '(function () {return {innerWidth: window.innerWidth, innerHeight: window.innerHeight, ' +
|
|
453
|
-
'outerWidth: window.outerWidth, outerHeight: window.outerHeight}; })()';
|
|
454
|
-
const wvDims = (await this.remote.execute(cmd));
|
|
455
|
-
// https://tripleodeon.com/2011/12/first-understand-your-screen/
|
|
456
|
-
const shouldApplyPixelRatio = wvDims.innerWidth > wvDims.outerWidth || wvDims.innerHeight > wvDims.outerHeight;
|
|
457
|
-
const newCoords = {
|
|
458
|
-
x: offsetX + x * (shouldApplyPixelRatio ? pixelRatioX : 1),
|
|
459
|
-
y: offsetY + y * (shouldApplyPixelRatio ? pixelRatioY : 1),
|
|
460
|
-
};
|
|
461
|
-
this.log.debug(`Converted web coords ${JSON.stringify({ x, y })} into real coords ${JSON.stringify(newCoords)}`);
|
|
462
|
-
return newCoords;
|
|
463
|
-
}
|
|
464
|
-
/**
|
|
465
|
-
* Primes (or refreshes) the calibration transform that `translateWebCoords`
|
|
466
|
-
* fits and applies automatically for every native web tap. Calibration
|
|
467
|
-
* happens transparently as soon as it's needed, so calling this explicitly
|
|
468
|
-
* is optional; it's useful mainly to warm the cache ahead of a
|
|
469
|
-
* timing-sensitive interaction, or to force a fresh fit without waiting for
|
|
470
|
-
* the viewport signature to change.
|
|
471
|
-
*
|
|
472
|
-
* Measures against the current page in place, without navigating away from
|
|
473
|
-
* it, so it is safe to call without losing web app state, and works
|
|
474
|
-
* identically for Safari and hybrid-app webviews.
|
|
475
|
-
*
|
|
476
|
-
* @returns Calibration data with offset and pixel ratio information
|
|
477
|
-
* @throws {errors.NotImplementedError} If not in a web context
|
|
478
|
-
*/
|
|
479
|
-
export async function mobileCalibrateWebToRealCoordinatesTranslation() {
|
|
480
|
-
requireWebContext(this, 'This API can only be called from a web context');
|
|
481
|
-
const result = await getOrCreateWebviewCalibration.call(this, true);
|
|
482
|
-
return {
|
|
483
|
-
...result,
|
|
484
|
-
offsetX: Math.round(result.offsetX),
|
|
485
|
-
offsetY: Math.round(result.offsetY),
|
|
486
|
-
};
|
|
487
|
-
}
|
|
488
533
|
//# sourceMappingURL=web-native-bridge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-native-bridge.js","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web-native-bridge.js","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import type { Element, Cookie } from '@appium/types';
|
|
2
|
+
import type { AtomName } from 'appium-remote-debugger';
|
|
2
3
|
import type { XCUITestDriver } from '../driver.js';
|
|
3
4
|
import type { AtomsElement } from './types.js';
|
|
4
|
-
export declare const ATOM_NAMES: readonly ["active_element", "clear", "click", "execute_async_script", "execute_script", "find_element_fragment", "find_elements", "frame_by_id_or_name", "frame_by_index", "get_attribute_value", "get_frame_window", "get_size", "get_text", "get_top_left_coordinates", "get_value_of_css_property", "is_displayed", "is_enabled", "is_selected", "submit", "type"];
|
|
5
|
-
export type AtomName = (typeof ATOM_NAMES)[number];
|
|
6
5
|
/**
|
|
7
6
|
* Sets the current web frame context.
|
|
8
7
|
*
|
|
8
|
+
* A cross-origin frame can be entered but not scripted, so entering verifies
|
|
9
|
+
* the frame is actually usable and rolls back immediately if not, rather
|
|
10
|
+
* than failing later on some unrelated command.
|
|
11
|
+
*
|
|
9
12
|
* @param frame - Frame identifier (number, string, or null to return to default content)
|
|
10
13
|
* @group Mobile Web Only
|
|
11
14
|
* @throws {errors.NotImplementedError} If not in a web context
|
|
12
15
|
* @throws {errors.NoSuchFrameError} If the specified frame is not found
|
|
16
|
+
* @throws {Error} If the frame (or one of its ancestors) has a different origin than the top-level page
|
|
13
17
|
*/
|
|
14
18
|
export declare function setFrame(this: XCUITestDriver, frame: number | string | null): Promise<void>;
|
|
15
19
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../../lib/commands/web.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../../lib/commands/web.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,wBAAwB,CAAC;AAIrD,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAGjD,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAc7C;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CA2CjG;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,cAAc,EACpB,YAAY,EAAE,MAAM,EACpB,EAAE,EAAE,OAAO,GAAG,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CAKjB;AAED;;;;;;GAMG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtF;AAED;;;;;GAKG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAIjE;AAED;;;;;GAKG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAIlE;AAED;;;;;GAKG;AACH,wBAAsB,KAAK,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAIjE;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAmBxE;AAED;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBnF;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAW1F;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAKvE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAa5F;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAgBjF;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,GAAG,EACvC,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,OAAO,EAAE,EACf,kBAAkB,GAAE,OAAe,GAClC,OAAO,CAAC,CAAC,CAAC,CAIZ;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAGrH;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EACvD,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GACrB,YAAY,CAAC,CAAC,CAAC,CAMjB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,GAAE,SAAS,OAAO,EAAO,GAAG,OAAO,EAAE,CActG;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEjE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,OAAO,CAEjE;AAED;;;;;;;;;GASG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAC5B,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACtB,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,KAAK,EACZ,GAAG,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;AACpB,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,OAAO,EACd,GAAG,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAC5B,OAAO,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC;AAuChC;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAE1E;AAED;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA8EpG;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAOvF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,cAAc,EACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC,CAQf"}
|