appium-uiautomator2-driver 7.6.2 → 8.0.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 +10 -0
- package/build/lib/commands/actions.d.ts +2 -2
- package/build/lib/commands/actions.d.ts.map +1 -1
- package/build/lib/commands/actions.js +5 -12
- package/build/lib/commands/actions.js.map +1 -1
- package/build/lib/commands/alert.d.ts +1 -1
- package/build/lib/commands/alert.d.ts.map +1 -1
- package/build/lib/commands/alert.js +5 -12
- package/build/lib/commands/alert.js.map +1 -1
- package/build/lib/commands/app-management.d.ts +2 -2
- package/build/lib/commands/app-management.d.ts.map +1 -1
- package/build/lib/commands/app-management.js +5 -8
- package/build/lib/commands/app-management.js.map +1 -1
- package/build/lib/commands/aut.d.ts +1 -1
- package/build/lib/commands/aut.d.ts.map +1 -1
- package/build/lib/commands/aut.js +19 -25
- package/build/lib/commands/aut.js.map +1 -1
- package/build/lib/commands/battery.d.ts +2 -2
- package/build/lib/commands/battery.d.ts.map +1 -1
- package/build/lib/commands/battery.js +1 -4
- package/build/lib/commands/battery.js.map +1 -1
- package/build/lib/commands/clipboard.d.ts +1 -1
- package/build/lib/commands/clipboard.d.ts.map +1 -1
- package/build/lib/commands/clipboard.js +2 -6
- package/build/lib/commands/clipboard.js.map +1 -1
- package/build/lib/commands/element.d.ts +1 -1
- package/build/lib/commands/element.d.ts.map +1 -1
- package/build/lib/commands/element.js +18 -36
- package/build/lib/commands/element.js.map +1 -1
- package/build/lib/commands/find.d.ts +1 -1
- package/build/lib/commands/find.d.ts.map +1 -1
- package/build/lib/commands/find.js +3 -6
- package/build/lib/commands/find.js.map +1 -1
- package/build/lib/commands/gestures.d.ts +1 -1
- package/build/lib/commands/gestures.d.ts.map +1 -1
- package/build/lib/commands/gestures.js +17 -30
- package/build/lib/commands/gestures.js.map +1 -1
- package/build/lib/commands/keyboard.d.ts +1 -1
- package/build/lib/commands/keyboard.d.ts.map +1 -1
- package/build/lib/commands/keyboard.js +6 -14
- package/build/lib/commands/keyboard.js.map +1 -1
- package/build/lib/commands/misc.d.ts +1 -1
- package/build/lib/commands/misc.d.ts.map +1 -1
- package/build/lib/commands/misc.js +7 -16
- package/build/lib/commands/misc.js.map +1 -1
- package/build/lib/commands/navigation.d.ts +1 -1
- package/build/lib/commands/navigation.d.ts.map +1 -1
- package/build/lib/commands/navigation.js +3 -8
- package/build/lib/commands/navigation.js.map +1 -1
- package/build/lib/commands/screenshot.d.ts +2 -2
- package/build/lib/commands/screenshot.d.ts.map +1 -1
- package/build/lib/commands/screenshot.js +9 -16
- package/build/lib/commands/screenshot.js.map +1 -1
- package/build/lib/commands/types.js +1 -2
- package/build/lib/commands/viewport.d.ts +2 -2
- package/build/lib/commands/viewport.d.ts.map +1 -1
- package/build/lib/commands/viewport.js +7 -16
- package/build/lib/commands/viewport.js.map +1 -1
- package/build/lib/commands/windows.d.ts +2 -2
- package/build/lib/commands/windows.d.ts.map +1 -1
- package/build/lib/commands/windows.js +2 -6
- package/build/lib/commands/windows.js.map +1 -1
- package/build/lib/constraints.js +3 -5
- package/build/lib/constraints.js.map +1 -1
- package/build/lib/css/constants.js +2 -5
- package/build/lib/css/constants.js.map +1 -1
- package/build/lib/css/index.d.ts +1 -1
- package/build/lib/css/index.d.ts.map +1 -1
- package/build/lib/css/index.js +13 -18
- package/build/lib/css/index.js.map +1 -1
- package/build/lib/css/schema.js +1 -4
- package/build/lib/css/schema.js.map +1 -1
- package/build/lib/css/ui-automator-emitter.js +6 -10
- package/build/lib/css/ui-automator-emitter.js.map +1 -1
- package/build/lib/doctor/optional-checks.js +4 -7
- package/build/lib/doctor/optional-checks.js.map +1 -1
- package/build/lib/doctor/required-checks.js +5 -8
- package/build/lib/doctor/required-checks.js.map +1 -1
- package/build/lib/driver.d.ts +19 -19
- package/build/lib/driver.d.ts.map +1 -1
- package/build/lib/driver.js +130 -136
- package/build/lib/driver.js.map +1 -1
- package/build/lib/execute-method-map.js +3 -6
- package/build/lib/execute-method-map.js.map +1 -1
- package/build/lib/extensions.js +2 -5
- package/build/lib/extensions.js.map +1 -1
- package/build/lib/index.d.ts +1 -1
- package/build/lib/index.d.ts.map +1 -1
- package/build/lib/index.js +3 -6
- package/build/lib/index.js.map +1 -1
- package/build/lib/logger.js +2 -5
- package/build/lib/logger.js.map +1 -1
- package/build/lib/method-map.js +3 -6
- package/build/lib/method-map.js.map +1 -1
- package/build/lib/session-claim-handler.d.ts +1 -1
- package/build/lib/session-claim-handler.d.ts.map +1 -1
- package/build/lib/session-claim-handler.js +15 -21
- package/build/lib/session-claim-handler.js.map +1 -1
- package/build/lib/types.d.ts +2 -2
- package/build/lib/types.d.ts.map +1 -1
- package/build/lib/types.js +1 -2
- package/build/lib/uiautomator2-server/core.d.ts +1 -1
- package/build/lib/uiautomator2-server/core.d.ts.map +1 -1
- package/build/lib/uiautomator2-server/core.js +36 -43
- package/build/lib/uiautomator2-server/core.js.map +1 -1
- package/build/lib/uiautomator2-server/index.d.ts +3 -3
- package/build/lib/uiautomator2-server/index.d.ts.map +1 -1
- package/build/lib/uiautomator2-server/index.js +2 -17
- package/build/lib/uiautomator2-server/index.js.map +1 -1
- package/build/lib/uiautomator2-server/packages.js +2 -5
- package/build/lib/uiautomator2-server/packages.js.map +1 -1
- package/build/lib/uiautomator2-server/session.d.ts +3 -3
- package/build/lib/uiautomator2-server/session.d.ts.map +1 -1
- package/build/lib/uiautomator2-server/session.js +26 -41
- package/build/lib/uiautomator2-server/session.js.map +1 -1
- package/build/lib/utils/app.js +8 -15
- package/build/lib/utils/app.js.map +1 -1
- package/build/lib/utils/index.d.ts +4 -4
- package/build/lib/utils/index.d.ts.map +1 -1
- package/build/lib/utils/index.js +4 -20
- package/build/lib/utils/index.js.map +1 -1
- package/build/lib/utils/lang.js +2 -6
- package/build/lib/utils/lang.js.map +1 -1
- package/build/lib/utils/memoize.js +1 -4
- package/build/lib/utils/memoize.js.map +1 -1
- package/build/lib/utils/object.js +1 -4
- package/build/lib/utils/object.js.map +1 -1
- package/lib/commands/actions.ts +2 -2
- package/lib/commands/alert.ts +1 -1
- package/lib/commands/app-management.ts +4 -4
- package/lib/commands/aut.ts +5 -5
- package/lib/commands/battery.ts +2 -2
- package/lib/commands/clipboard.ts +1 -1
- package/lib/commands/element.ts +2 -2
- package/lib/commands/find.ts +2 -2
- package/lib/commands/gestures.ts +4 -4
- package/lib/commands/keyboard.ts +1 -1
- package/lib/commands/misc.ts +1 -1
- package/lib/commands/navigation.ts +1 -1
- package/lib/commands/screenshot.ts +4 -4
- package/lib/commands/viewport.ts +2 -2
- package/lib/commands/windows.ts +2 -2
- package/lib/css/index.ts +6 -6
- package/lib/css/ui-automator-emitter.ts +1 -1
- package/lib/driver.ts +25 -25
- package/lib/index.ts +1 -1
- package/lib/logger.ts +1 -1
- package/lib/session-claim-handler.ts +3 -3
- package/lib/types.ts +2 -2
- package/lib/uiautomator2-server/core.ts +3 -3
- package/lib/uiautomator2-server/index.ts +3 -3
- package/lib/uiautomator2-server/session.ts +5 -5
- package/lib/utils/app.ts +1 -1
- package/lib/utils/index.ts +4 -4
- package/npm-shrinkwrap.json +66 -70
- package/package.json +19 -12
- package/scripts/e2e-spec-batches.sh +20 -34
- package/scripts/node-test-json-reporter.mjs +8 -0
- package/scripts/{reset.js → reset.mjs} +5 -5
- package/scripts/run-functional-tests.sh +22 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../../lib/commands/element.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../../lib/commands/element.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Element as AppiumElement } from '@appium/types';
|
|
2
2
|
import type { FindElementOpts } from 'appium-android-driver';
|
|
3
|
-
import type { AndroidUiautomator2Driver } from '../driver';
|
|
3
|
+
import type { AndroidUiautomator2Driver } from '../driver.js';
|
|
4
4
|
/**
|
|
5
5
|
* Overrides helpers.doFindElementOrEls functionality of appium-android-driver.
|
|
6
6
|
* Handles special xpath selectors and CSS selector conversion.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAS5D;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,yBAAyB,EAC/B,MAAM,EAAE,eAAe,GAAG;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAC,GACzC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;AAC5B,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,yBAAyB,EAC/B,MAAM,EAAE,eAAe,GAAG;IAAC,QAAQ,EAAE,KAAK,CAAA;CAAC,GAC1C,OAAO,CAAC,aAAa,CAAC,CAAC"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.doFindElementOrEls = doFindElementOrEls;
|
|
4
|
-
const css_1 = require("../css");
|
|
1
|
+
import { cssToNativeLocator } from '../css/index.js';
|
|
5
2
|
// we override the xpath search for this first-visible-child selector, which
|
|
6
3
|
// looks like /*[@firstVisible="true"]
|
|
7
4
|
const MAGIC_FIRST_VIS_CHILD_SEL = /\/\*\[@firstVisible ?= ?('|")true\1\]/;
|
|
8
5
|
const MAGIC_SCROLLABLE_SEL = /\/\/\*\[@scrollable ?= ?('|")true\1\]/;
|
|
9
6
|
const MAGIC_SCROLLABLE_BY = 'new UiSelector().scrollable(true)';
|
|
10
|
-
async function doFindElementOrEls(params) {
|
|
7
|
+
export async function doFindElementOrEls(params) {
|
|
11
8
|
const uiautomator2 = this.uiautomator2;
|
|
12
9
|
if (params.strategy === 'xpath' && MAGIC_FIRST_VIS_CHILD_SEL.test(params.selector)) {
|
|
13
10
|
const elementId = params.context;
|
|
@@ -18,7 +15,7 @@ async function doFindElementOrEls(params) {
|
|
|
18
15
|
params.selector = MAGIC_SCROLLABLE_BY;
|
|
19
16
|
}
|
|
20
17
|
if (params.strategy === 'css selector') {
|
|
21
|
-
({ strategy: params.strategy, selector: params.selector } = await
|
|
18
|
+
({ strategy: params.strategy, selector: params.selector } = await cssToNativeLocator(params.selector, this.opts.appPackage));
|
|
22
19
|
}
|
|
23
20
|
return (await uiautomator2.jwproxy.command(`/element${params.multiple ? 's' : ''}`, 'POST', params));
|
|
24
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../lib/commands/find.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAKnD,4EAA4E;AAC5E,sCAAsC;AACtC,MAAM,yBAAyB,GAAG,uCAAuC,CAAC;AAE1E,MAAM,oBAAoB,GAAG,uCAAuC,CAAC;AACrE,MAAM,mBAAmB,GAAG,mCAAmC,CAAC;AAgBhE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAEtC,MAAuB;IAEvB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACvC,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;QACjC,OAAO,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,OAAO,CACxC,mBAAmB,SAAS,gBAAgB,EAC5C,KAAK,EACL,EAAE,CACH,CAAkB,CAAC;IACtB,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9E,MAAM,CAAC,QAAQ,GAAG,sBAAsB,CAAC;QACzC,MAAM,CAAC,QAAQ,GAAG,mBAAmB,CAAC;IACxC,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,cAAc,EAAE,CAAC;QACvC,CAAC,EAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAC,GAAG,MAAM,kBAAkB,CAChF,MAAM,CAAC,QAAQ,EACf,IAAI,CAAC,IAAI,CAAC,UAAU,CACrB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,OAAO,CACxC,WAAW,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EACvC,MAAM,EACN,MAAM,CACP,CAAoC,CAAC;AACxC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Element as AppiumElement } from '@appium/types';
|
|
2
|
-
import type { AndroidUiautomator2Driver } from '../driver';
|
|
2
|
+
import type { AndroidUiautomator2Driver } from '../driver.js';
|
|
3
3
|
/**
|
|
4
4
|
* Performs a simple click/tap gesture.
|
|
5
5
|
* @param elementId - Optional element to use as the origin for the click. If not provided, uses screen coordinates.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gestures.d.ts","sourceRoot":"","sources":["../../../lib/commands/gestures.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,IAAI,aAAa,EAAW,MAAM,eAAe,CAAC;AAEtE,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"gestures.d.ts","sourceRoot":"","sources":["../../../lib/commands/gestures.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.mobileClickGesture = mobileClickGesture;
|
|
4
|
-
exports.mobileLongClickGesture = mobileLongClickGesture;
|
|
5
|
-
exports.mobileDoubleClickGesture = mobileDoubleClickGesture;
|
|
6
|
-
exports.mobileDragGesture = mobileDragGesture;
|
|
7
|
-
exports.mobileFlingGesture = mobileFlingGesture;
|
|
8
|
-
exports.mobilePinchCloseGesture = mobilePinchCloseGesture;
|
|
9
|
-
exports.mobilePinchOpenGesture = mobilePinchOpenGesture;
|
|
10
|
-
exports.mobileSwipeGesture = mobileSwipeGesture;
|
|
11
|
-
exports.mobileScrollGesture = mobileScrollGesture;
|
|
12
|
-
exports.mobileScrollBackTo = mobileScrollBackTo;
|
|
13
|
-
exports.mobileScroll = mobileScroll;
|
|
14
|
-
const driver_1 = require("appium/driver");
|
|
15
|
-
const support_1 = require("appium/support");
|
|
1
|
+
import { errors } from 'appium/driver.js';
|
|
2
|
+
import { util } from 'appium/support.js';
|
|
16
3
|
/**
|
|
17
4
|
* Performs a simple click/tap gesture.
|
|
18
5
|
* @param elementId - Optional element to use as the origin for the click. If not provided, uses screen coordinates.
|
|
19
6
|
* @param x - Optional X offset from the element origin or screen.
|
|
20
7
|
* @param y - Optional Y offset from the element origin or screen.
|
|
21
8
|
*/
|
|
22
|
-
async function mobileClickGesture(elementId, x, y) {
|
|
9
|
+
export async function mobileClickGesture(elementId, x, y) {
|
|
23
10
|
await this.uiautomator2.jwproxy.command('/appium/gestures/click', 'POST', {
|
|
24
11
|
origin: toOrigin(elementId),
|
|
25
12
|
offset: toPoint(x, y),
|
|
@@ -32,7 +19,7 @@ async function mobileClickGesture(elementId, x, y) {
|
|
|
32
19
|
* @param y - Optional Y offset from the element origin or screen.
|
|
33
20
|
* @param duration - Optional duration of the long press in milliseconds.
|
|
34
21
|
*/
|
|
35
|
-
async function mobileLongClickGesture(elementId, x, y, duration) {
|
|
22
|
+
export async function mobileLongClickGesture(elementId, x, y, duration) {
|
|
36
23
|
await this.uiautomator2.jwproxy.command('/appium/gestures/long_click', 'POST', {
|
|
37
24
|
origin: toOrigin(elementId),
|
|
38
25
|
offset: toPoint(x, y),
|
|
@@ -45,7 +32,7 @@ async function mobileLongClickGesture(elementId, x, y, duration) {
|
|
|
45
32
|
* @param x - Optional X offset from the element origin or screen.
|
|
46
33
|
* @param y - Optional Y offset from the element origin or screen.
|
|
47
34
|
*/
|
|
48
|
-
async function mobileDoubleClickGesture(elementId, x, y) {
|
|
35
|
+
export async function mobileDoubleClickGesture(elementId, x, y) {
|
|
49
36
|
await this.uiautomator2.jwproxy.command('/appium/gestures/double_click', 'POST', {
|
|
50
37
|
origin: toOrigin(elementId),
|
|
51
38
|
offset: toPoint(x, y),
|
|
@@ -60,7 +47,7 @@ async function mobileDoubleClickGesture(elementId, x, y) {
|
|
|
60
47
|
* @param endY - Y coordinate of the drag end point.
|
|
61
48
|
* @param speed - Optional speed of the drag gesture.
|
|
62
49
|
*/
|
|
63
|
-
async function mobileDragGesture(elementId, startX, startY, endX, endY, speed) {
|
|
50
|
+
export async function mobileDragGesture(elementId, startX, startY, endX, endY, speed) {
|
|
64
51
|
await this.uiautomator2.jwproxy.command('/appium/gestures/drag', 'POST', {
|
|
65
52
|
origin: toOrigin(elementId),
|
|
66
53
|
start: toPoint(startX, startY),
|
|
@@ -79,7 +66,7 @@ async function mobileDragGesture(elementId, startX, startY, endX, endY, speed) {
|
|
|
79
66
|
* @param speed - Optional speed of the fling gesture.
|
|
80
67
|
* @returns True if further scrolling is possible, false otherwise.
|
|
81
68
|
*/
|
|
82
|
-
async function mobileFlingGesture(direction, elementId, left, top, width, height, speed) {
|
|
69
|
+
export async function mobileFlingGesture(direction, elementId, left, top, width, height, speed) {
|
|
83
70
|
return (await this.uiautomator2.jwproxy.command('/appium/gestures/fling', 'POST', {
|
|
84
71
|
origin: toOrigin(elementId),
|
|
85
72
|
area: toRect(left, top, width, height),
|
|
@@ -97,7 +84,7 @@ async function mobileFlingGesture(direction, elementId, left, top, width, height
|
|
|
97
84
|
* @param height - Optional height of the pinch area.
|
|
98
85
|
* @param speed - Optional speed of the pinch gesture.
|
|
99
86
|
*/
|
|
100
|
-
async function mobilePinchCloseGesture(percent, elementId, left, top, width, height, speed) {
|
|
87
|
+
export async function mobilePinchCloseGesture(percent, elementId, left, top, width, height, speed) {
|
|
101
88
|
await this.uiautomator2.jwproxy.command('/appium/gestures/pinch_close', 'POST', {
|
|
102
89
|
origin: toOrigin(elementId),
|
|
103
90
|
area: toRect(left, top, width, height),
|
|
@@ -115,7 +102,7 @@ async function mobilePinchCloseGesture(percent, elementId, left, top, width, hei
|
|
|
115
102
|
* @param height - Optional height of the pinch area.
|
|
116
103
|
* @param speed - Optional speed of the pinch gesture.
|
|
117
104
|
*/
|
|
118
|
-
async function mobilePinchOpenGesture(percent, elementId, left, top, width, height, speed) {
|
|
105
|
+
export async function mobilePinchOpenGesture(percent, elementId, left, top, width, height, speed) {
|
|
119
106
|
await this.uiautomator2.jwproxy.command('/appium/gestures/pinch_open', 'POST', {
|
|
120
107
|
origin: toOrigin(elementId),
|
|
121
108
|
area: toRect(left, top, width, height),
|
|
@@ -134,7 +121,7 @@ async function mobilePinchOpenGesture(percent, elementId, left, top, width, heig
|
|
|
134
121
|
* @param height - Optional height of the swipe area.
|
|
135
122
|
* @param speed - Optional speed of the swipe gesture.
|
|
136
123
|
*/
|
|
137
|
-
async function mobileSwipeGesture(direction, percent, elementId, left, top, width, height, speed) {
|
|
124
|
+
export async function mobileSwipeGesture(direction, percent, elementId, left, top, width, height, speed) {
|
|
138
125
|
await this.uiautomator2.jwproxy.command('/appium/gestures/swipe', 'POST', {
|
|
139
126
|
origin: toOrigin(elementId),
|
|
140
127
|
area: toRect(left, top, width, height),
|
|
@@ -155,7 +142,7 @@ async function mobileSwipeGesture(direction, percent, elementId, left, top, widt
|
|
|
155
142
|
* @param speed - Optional speed of the scroll gesture.
|
|
156
143
|
* @returns True if further scrolling is possible, false otherwise.
|
|
157
144
|
*/
|
|
158
|
-
async function mobileScrollGesture(direction, percent, elementId, left, top, width, height, speed) {
|
|
145
|
+
export async function mobileScrollGesture(direction, percent, elementId, left, top, width, height, speed) {
|
|
159
146
|
return (await this.uiautomator2.jwproxy.command('/appium/gestures/scroll', 'POST', {
|
|
160
147
|
origin: toOrigin(elementId),
|
|
161
148
|
area: toRect(left, top, width, height),
|
|
@@ -170,11 +157,11 @@ async function mobileScrollGesture(direction, percent, elementId, left, top, wid
|
|
|
170
157
|
* @param elementToId - ID of the target element to scroll to.
|
|
171
158
|
* @throws {errors.InvalidArgumentError} If either elementId or elementToId is not provided.
|
|
172
159
|
*/
|
|
173
|
-
async function mobileScrollBackTo(elementId, elementToId) {
|
|
160
|
+
export async function mobileScrollBackTo(elementId, elementToId) {
|
|
174
161
|
if (!elementId || !elementToId) {
|
|
175
|
-
throw new
|
|
162
|
+
throw new errors.InvalidArgumentError(`Both elementId and elementToId arguments must be provided`);
|
|
176
163
|
}
|
|
177
|
-
await this.uiautomator2.jwproxy.command(`/appium/element/${
|
|
164
|
+
await this.uiautomator2.jwproxy.command(`/appium/element/${util.unwrapElement(elementId)}/scroll_to/${util.unwrapElement(elementToId)}`, 'POST', {});
|
|
178
165
|
}
|
|
179
166
|
/**
|
|
180
167
|
* Scrolls until an element located by the given strategy is visible.
|
|
@@ -184,9 +171,9 @@ async function mobileScrollBackTo(elementId, elementToId) {
|
|
|
184
171
|
* @param maxSwipes - Optional maximum number of swipes to perform.
|
|
185
172
|
* @throws {errors.InvalidArgumentError} If either strategy or selector is not provided.
|
|
186
173
|
*/
|
|
187
|
-
async function mobileScroll(strategy, selector, elementId, maxSwipes) {
|
|
174
|
+
export async function mobileScroll(strategy, selector, elementId, maxSwipes) {
|
|
188
175
|
if (!strategy || !selector) {
|
|
189
|
-
throw new
|
|
176
|
+
throw new errors.InvalidArgumentError(`Both strategy and selector arguments must be provided`);
|
|
190
177
|
}
|
|
191
178
|
await this.uiautomator2.jwproxy.command('/gestures/scroll_to', 'POST', {
|
|
192
179
|
origin: toOrigin(elementId),
|
|
@@ -194,7 +181,7 @@ async function mobileScroll(strategy, selector, elementId, maxSwipes) {
|
|
|
194
181
|
});
|
|
195
182
|
}
|
|
196
183
|
function toOrigin(element) {
|
|
197
|
-
return element ?
|
|
184
|
+
return element ? util.wrapElement(util.unwrapElement(element)) : undefined;
|
|
198
185
|
}
|
|
199
186
|
function toPoint(x, y) {
|
|
200
187
|
return Number.isFinite(x) && Number.isFinite(y) ? { x, y } : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gestures.js","sourceRoot":"","sources":["../../../lib/commands/gestures.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gestures.js","sourceRoot":"","sources":["../../../lib/commands/gestures.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../lib/commands/keyboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../lib/commands/keyboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,uBAAuB,CAAC;AAExD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,yBAAyB,EAC/B,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,SAAS,CAAC,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,yBAAyB,EAC/B,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,yBAAyB,EAC/B,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,EACd,WAAW,GAAE,OAAe,EAC5B,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAWf;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,yBAAyB,EAC/B,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAC9B,OAAO,CAAC,OAAO,CAAC,CAElB;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,yBAAyB,EAC/B,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,yBAAyB,EAC/B,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAGf"}
|
|
@@ -1,18 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.pressKeyCode = pressKeyCode;
|
|
4
|
-
exports.longPressKeyCode = longPressKeyCode;
|
|
5
|
-
exports.mobilePressKey = mobilePressKey;
|
|
6
|
-
exports.mobileType = mobileType;
|
|
7
|
-
exports.doSendKeys = doSendKeys;
|
|
8
|
-
exports.keyevent = keyevent;
|
|
9
1
|
/**
|
|
10
2
|
* Presses a key code with optional metastate and flags.
|
|
11
3
|
* @param keycode - Android key code to press.
|
|
12
4
|
* @param metastate - Optional meta state modifier keys.
|
|
13
5
|
* @param flags - Optional flags for the key event.
|
|
14
6
|
*/
|
|
15
|
-
async function pressKeyCode(keycode, metastate, flags) {
|
|
7
|
+
export async function pressKeyCode(keycode, metastate, flags) {
|
|
16
8
|
await this.uiautomator2.jwproxy.command('/appium/device/press_keycode', 'POST', {
|
|
17
9
|
keycode,
|
|
18
10
|
metastate,
|
|
@@ -25,7 +17,7 @@ async function pressKeyCode(keycode, metastate, flags) {
|
|
|
25
17
|
* @param metastate - Meta state modifier keys.
|
|
26
18
|
* @param flags - Optional flags for the key event.
|
|
27
19
|
*/
|
|
28
|
-
async function longPressKeyCode(keycode, metastate, flags) {
|
|
20
|
+
export async function longPressKeyCode(keycode, metastate, flags) {
|
|
29
21
|
await this.uiautomator2.jwproxy.command('/appium/device/long_press_keycode', 'POST', {
|
|
30
22
|
keycode,
|
|
31
23
|
metastate,
|
|
@@ -42,7 +34,7 @@ async function longPressKeyCode(keycode, metastate, flags) {
|
|
|
42
34
|
* Multiple source values can be combined using the logical OR operator.
|
|
43
35
|
* See https://developer.android.com/reference/android/view/InputDevice for details.
|
|
44
36
|
*/
|
|
45
|
-
async function mobilePressKey(keycode, metastate, flags, isLongPress = false, source) {
|
|
37
|
+
export async function mobilePressKey(keycode, metastate, flags, isLongPress = false, source) {
|
|
46
38
|
await this.uiautomator2.jwproxy.command(`/appium/device/${isLongPress ? 'long_' : ''}press_keycode`, 'POST', {
|
|
47
39
|
keycode,
|
|
48
40
|
metastate,
|
|
@@ -56,14 +48,14 @@ async function mobilePressKey(keycode, metastate, flags, isLongPress = false, so
|
|
|
56
48
|
* @returns True if the input text has been successfully sent to adb.
|
|
57
49
|
* @throws {errors.InvalidArgumentError} If the text argument is not provided.
|
|
58
50
|
*/
|
|
59
|
-
async function mobileType(text) {
|
|
51
|
+
export async function mobileType(text) {
|
|
60
52
|
return await this.settingsApp.typeUnicode(String(text));
|
|
61
53
|
}
|
|
62
54
|
/**
|
|
63
55
|
* Sends keys to the current element.
|
|
64
56
|
* @param params - Options containing the text to send and optional replace flag.
|
|
65
57
|
*/
|
|
66
|
-
async function doSendKeys(params) {
|
|
58
|
+
export async function doSendKeys(params) {
|
|
67
59
|
await this.uiautomator2.jwproxy.command('/keys', 'POST', params);
|
|
68
60
|
}
|
|
69
61
|
/**
|
|
@@ -71,7 +63,7 @@ async function doSendKeys(params) {
|
|
|
71
63
|
* @param keycode - Android key code to send.
|
|
72
64
|
* @param metastate - Optional meta state (ignored in this implementation).
|
|
73
65
|
*/
|
|
74
|
-
async function keyevent(keycode, metastate) {
|
|
66
|
+
export async function keyevent(keycode, metastate) {
|
|
75
67
|
this.log.debug(`Ignoring metastate ${metastate}`);
|
|
76
68
|
await this.adb.keyevent(keycode);
|
|
77
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../../lib/commands/keyboard.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../../lib/commands/keyboard.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAEhC,OAAwB,EACxB,SAAkB,EAClB,KAAc;IAEd,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,8BAA8B,EAAE,MAAM,EAAE;QAC9E,OAAO;QACP,SAAS;QACT,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAEpC,OAAwB,EACxB,SAAiB,EACjB,KAAc;IAEd,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,mCAAmC,EAAE,MAAM,EAAE;QACnF,OAAO;QACP,SAAS;QACT,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAElC,OAAe,EACf,SAAkB,EAClB,KAAc,EACd,cAAuB,KAAK,EAC5B,MAAe;IAEf,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CACrC,kBAAkB,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,EAC3D,MAAM,EACN;QACE,OAAO;QACP,SAAS;QACT,KAAK;QACL,MAAM;KACP,CACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAE9B,IAA+B;IAE/B,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAE9B,MAAoB;IAEpB,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAE5B,OAAwB,EACxB,SAAkB;IAElB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;IAClD,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Orientation, StringRecord } from '@appium/types';
|
|
2
|
-
import type { AndroidUiautomator2Driver } from '../driver';
|
|
2
|
+
import type { AndroidUiautomator2Driver } from '../driver.js';
|
|
3
3
|
/**
|
|
4
4
|
* Retrieves the current page source.
|
|
5
5
|
* @returns The XML page source of the current screen.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../lib/commands/misc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../lib/commands/misc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAE5D;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAEpF;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,WAAW,CAAC,CAE1F;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,yBAAyB,EAC/B,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,yBAAyB,GAAG,IAAI,CAS9E;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAEhG;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,yBAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAEf"}
|
|
@@ -1,31 +1,22 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPageSource = getPageSource;
|
|
4
|
-
exports.getOrientation = getOrientation;
|
|
5
|
-
exports.setOrientation = setOrientation;
|
|
6
|
-
exports.openNotifications = openNotifications;
|
|
7
|
-
exports.suspendChromedriverProxy = suspendChromedriverProxy;
|
|
8
|
-
exports.mobileGetDeviceInfo = mobileGetDeviceInfo;
|
|
9
|
-
exports.mobileResetAccessibilityCache = mobileResetAccessibilityCache;
|
|
10
1
|
/**
|
|
11
2
|
* Retrieves the current page source.
|
|
12
3
|
* @returns The XML page source of the current screen.
|
|
13
4
|
*/
|
|
14
|
-
async function getPageSource() {
|
|
5
|
+
export async function getPageSource() {
|
|
15
6
|
return String(await this.uiautomator2.jwproxy.command('/source', 'GET', {}));
|
|
16
7
|
}
|
|
17
8
|
/**
|
|
18
9
|
* Gets the current device orientation.
|
|
19
10
|
* @returns The current device orientation ('LANDSCAPE' or 'PORTRAIT').
|
|
20
11
|
*/
|
|
21
|
-
async function getOrientation() {
|
|
12
|
+
export async function getOrientation() {
|
|
22
13
|
return (await this.uiautomator2.jwproxy.command(`/orientation`, 'GET', {}));
|
|
23
14
|
}
|
|
24
15
|
/**
|
|
25
16
|
* Sets the device orientation.
|
|
26
17
|
* @param orientation - The desired orientation ('LANDSCAPE' or 'PORTRAIT').
|
|
27
18
|
*/
|
|
28
|
-
async function setOrientation(orientation) {
|
|
19
|
+
export async function setOrientation(orientation) {
|
|
29
20
|
const normalizedOrientation = orientation.toUpperCase();
|
|
30
21
|
await this.uiautomator2.jwproxy.command(`/orientation`, 'POST', {
|
|
31
22
|
orientation: normalizedOrientation,
|
|
@@ -34,13 +25,13 @@ async function setOrientation(orientation) {
|
|
|
34
25
|
/**
|
|
35
26
|
* Opens the device notification shade.
|
|
36
27
|
*/
|
|
37
|
-
async function openNotifications() {
|
|
28
|
+
export async function openNotifications() {
|
|
38
29
|
await this.uiautomator2.jwproxy.command('/appium/device/open_notifications', 'POST', {});
|
|
39
30
|
}
|
|
40
31
|
/**
|
|
41
32
|
* Stops proxying to Chromedriver and restores UIA2 proxy.
|
|
42
33
|
*/
|
|
43
|
-
function suspendChromedriverProxy() {
|
|
34
|
+
export function suspendChromedriverProxy() {
|
|
44
35
|
if (!this.uiautomator2?.proxyReqRes || !this.uiautomator2?.proxyCommand) {
|
|
45
36
|
return;
|
|
46
37
|
}
|
|
@@ -53,13 +44,13 @@ function suspendChromedriverProxy() {
|
|
|
53
44
|
* Retrieves device info via the UIA2 server.
|
|
54
45
|
* @returns Device information as a string record.
|
|
55
46
|
*/
|
|
56
|
-
async function mobileGetDeviceInfo() {
|
|
47
|
+
export async function mobileGetDeviceInfo() {
|
|
57
48
|
return (await this.uiautomator2.jwproxy.command('/appium/device/info', 'GET'));
|
|
58
49
|
}
|
|
59
50
|
/**
|
|
60
51
|
* Resets the accessibility cache on the device.
|
|
61
52
|
*/
|
|
62
|
-
async function mobileResetAccessibilityCache() {
|
|
53
|
+
export async function mobileResetAccessibilityCache() {
|
|
63
54
|
await this.uiautomator2.jwproxy.command('/appium/reset_ax_cache', 'POST', {});
|
|
64
55
|
}
|
|
65
56
|
//# sourceMappingURL=misc.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../lib/commands/misc.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../lib/commands/misc.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE,CAAC,CAAgB,CAAC;AAC7F,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAElC,WAAwB;IAExB,MAAM,qBAAqB,GAAG,WAAW,CAAC,WAAW,EAAiB,CAAC;IACvE,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE;QAC9D,WAAW,EAAE,qBAAqB;KACnC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,mCAAmC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB;IACtC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,CAAC;QACxE,OAAO;IACT,CAAC;IAED,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAiB,CAAC;AACjG,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B;IAGjD,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;AAChF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../lib/commands/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../lib/commands/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAE5D;;;GAGG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,yBAAyB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAExF;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,yBAAyB,EAC/B,GAAG,EAAE,MAAM,EACX,GAAG,CAAC,EAAE,MAAM,EACZ,aAAa,GAAE,OAAc,GAC5B,OAAO,CAAC,IAAI,CAAC,CAEf;AAED;;GAEG;AACH,wBAAsB,IAAI,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAEzE"}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setUrl = setUrl;
|
|
4
|
-
exports.mobileDeepLink = mobileDeepLink;
|
|
5
|
-
exports.back = back;
|
|
6
1
|
/**
|
|
7
2
|
* Sets the URL for the current app.
|
|
8
3
|
* @param url - The URL to navigate to.
|
|
9
4
|
*/
|
|
10
|
-
async function setUrl(url) {
|
|
5
|
+
export async function setUrl(url) {
|
|
11
6
|
await this.adb.startUri(url, this.opts.appPackage);
|
|
12
7
|
}
|
|
13
8
|
/**
|
|
@@ -16,13 +11,13 @@ async function setUrl(url) {
|
|
|
16
11
|
* @param pkg - Optional package name to start the URI with. If not provided, uses the current app package.
|
|
17
12
|
* @param waitForLaunch - If false, adb won't wait for the started activity to return control. Defaults to true.
|
|
18
13
|
*/
|
|
19
|
-
async function mobileDeepLink(url, pkg, waitForLaunch = true) {
|
|
14
|
+
export async function mobileDeepLink(url, pkg, waitForLaunch = true) {
|
|
20
15
|
return await this.adb.startUri(url, pkg, { waitForLaunch });
|
|
21
16
|
}
|
|
22
17
|
/**
|
|
23
18
|
* Navigates back in the app.
|
|
24
19
|
*/
|
|
25
|
-
async function back() {
|
|
20
|
+
export async function back() {
|
|
26
21
|
await this.adb.keyevent(4);
|
|
27
22
|
}
|
|
28
23
|
//# sourceMappingURL=navigation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../../lib/commands/navigation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../../lib/commands/navigation.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAkC,GAAW;IACvE,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,UAAoB,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAElC,GAAW,EACX,GAAY,EACZ,gBAAyB,IAAI;IAE7B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAC,aAAa,EAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AndroidUiautomator2Driver } from '../driver';
|
|
2
|
-
import type { Screenshot } from './types';
|
|
1
|
+
import type { AndroidUiautomator2Driver } from '../driver.js';
|
|
2
|
+
import type { Screenshot } from './types.js';
|
|
3
3
|
import type { StringRecord } from '@appium/types';
|
|
4
4
|
/**
|
|
5
5
|
* Parses SurfaceFlinger display output to extract display information.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screenshot.d.ts","sourceRoot":"","sources":["../../../lib/commands/screenshot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"screenshot.d.ts","sourceRoot":"","sources":["../../../lib/commands/screenshot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAQhD;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CA6BrC;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAE/F;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAI5F;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAYpF;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,yBAAyB,EAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAC1B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CA0CnC"}
|
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.parseSurfaceFlingerDisplays = parseSurfaceFlingerDisplays;
|
|
4
|
-
exports.mobileViewportScreenshot = mobileViewportScreenshot;
|
|
5
|
-
exports.getViewportScreenshot = getViewportScreenshot;
|
|
6
|
-
exports.getScreenshot = getScreenshot;
|
|
7
|
-
exports.mobileScreenshots = mobileScreenshots;
|
|
8
|
-
const support_1 = require("appium/support");
|
|
9
|
-
const utils_1 = require("../utils");
|
|
1
|
+
import { imageUtil } from 'appium/support.js';
|
|
2
|
+
import { isEmpty } from '../utils/index.js';
|
|
10
3
|
// Matches SurfaceFlinger output format:
|
|
11
4
|
// Physical: Display 4619827259835644672 (HWC display 0): port=0 pnpId=GGL displayName="EMU_display_0"
|
|
12
5
|
// Virtual: Display 11529215049243506835 (Virtual display): displayName="Emulator 2D Display" uniqueId="..."
|
|
@@ -16,7 +9,7 @@ const DISPLAY_PATTERN = /^Display\s+(\d+)\s+\((?:HWC\s+display\s+(\d+)|Virtual\s
|
|
|
16
9
|
* @param displaysInfo - The raw output from `adb shell dumpsys SurfaceFlinger --display-id`
|
|
17
10
|
* @returns A record mapping display IDs to their information (without payload)
|
|
18
11
|
*/
|
|
19
|
-
function parseSurfaceFlingerDisplays(displaysInfo) {
|
|
12
|
+
export function parseSurfaceFlingerDisplays(displaysInfo) {
|
|
20
13
|
const infos = {};
|
|
21
14
|
const lines = displaysInfo.split('\n');
|
|
22
15
|
for (const line of lines) {
|
|
@@ -42,21 +35,21 @@ function parseSurfaceFlingerDisplays(displaysInfo) {
|
|
|
42
35
|
/**
|
|
43
36
|
* Takes a screenshot of the current viewport
|
|
44
37
|
*/
|
|
45
|
-
async function mobileViewportScreenshot() {
|
|
38
|
+
export async function mobileViewportScreenshot() {
|
|
46
39
|
return await this.getViewportScreenshot();
|
|
47
40
|
}
|
|
48
41
|
/**
|
|
49
42
|
* Gets a screenshot of the current viewport
|
|
50
43
|
*/
|
|
51
|
-
async function getViewportScreenshot() {
|
|
44
|
+
export async function getViewportScreenshot() {
|
|
52
45
|
const screenshot = await this.getScreenshot();
|
|
53
46
|
const rect = await this.getViewPortRect();
|
|
54
|
-
return await
|
|
47
|
+
return await imageUtil.cropBase64Image(screenshot, rect);
|
|
55
48
|
}
|
|
56
49
|
/**
|
|
57
50
|
* Gets a screenshot of the current screen
|
|
58
51
|
*/
|
|
59
|
-
async function getScreenshot() {
|
|
52
|
+
export async function getScreenshot() {
|
|
60
53
|
if (this.mjpegStream) {
|
|
61
54
|
const data = await this.mjpegStream.lastChunkPNGBase64();
|
|
62
55
|
if (data) {
|
|
@@ -74,10 +67,10 @@ async function getScreenshot() {
|
|
|
74
67
|
* If not provided then screenshots of all displays are going to be returned.
|
|
75
68
|
* If no matches were found then an error is thrown.
|
|
76
69
|
*/
|
|
77
|
-
async function mobileScreenshots(displayId) {
|
|
70
|
+
export async function mobileScreenshots(displayId) {
|
|
78
71
|
const displaysInfo = await this.adb.shell(['dumpsys', 'SurfaceFlinger', '--display-id']);
|
|
79
72
|
const infos = parseSurfaceFlingerDisplays(displaysInfo);
|
|
80
|
-
if (
|
|
73
|
+
if (isEmpty(infos)) {
|
|
81
74
|
this.log.debug(displaysInfo);
|
|
82
75
|
throw new Error('Cannot determine the information about connected Android displays');
|
|
83
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screenshot.js","sourceRoot":"","sources":["../../../lib/commands/screenshot.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"screenshot.js","sourceRoot":"","sources":["../../../lib/commands/screenshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Rect, Size } from '@appium/types';
|
|
2
|
-
import type { AndroidUiautomator2Driver } from '../driver';
|
|
3
|
-
import type { RelativeRect } from './types';
|
|
2
|
+
import type { AndroidUiautomator2Driver } from '../driver.js';
|
|
3
|
+
import type { RelativeRect } from './types.js';
|
|
4
4
|
/**
|
|
5
5
|
* Gets the status bar height in pixels.
|
|
6
6
|
* @returns The status bar height in pixels.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../lib/commands/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../lib/commands/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAE7C;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CASzF;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAE1F;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAW5F;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAE/F;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAMxF;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF"}
|