appium-uiautomator2-driver 6.7.4 → 6.7.6

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 CHANGED
@@ -1,3 +1,15 @@
1
+ ## [6.7.6](https://github.com/appium/appium-uiautomator2-driver/compare/v6.7.5...v6.7.6) (2025-12-23)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * Migrate various command modules to typescript (part 2) ([#970](https://github.com/appium/appium-uiautomator2-driver/issues/970)) ([976d79d](https://github.com/appium/appium-uiautomator2-driver/commit/976d79dcb122f5ba28128d16c7b90a5d37dc868f))
6
+
7
+ ## [6.7.5](https://github.com/appium/appium-uiautomator2-driver/compare/v6.7.4...v6.7.5) (2025-12-22)
8
+
9
+ ### Miscellaneous Chores
10
+
11
+ * **deps:** bump teen_process from 3.0.6 to 4.0.4 ([#969](https://github.com/appium/appium-uiautomator2-driver/issues/969)) ([ff5d39f](https://github.com/appium/appium-uiautomator2-driver/commit/ff5d39f24bba4295729e5ff3a1ed114dd6a349c0))
12
+
1
13
  ## [6.7.4](https://github.com/appium/appium-uiautomator2-driver/compare/v6.7.3...v6.7.4) (2025-12-22)
2
14
 
3
15
  ### Miscellaneous Chores
@@ -1,102 +1,68 @@
1
+ import type { DoSetElementValueOpts } from 'appium-android-driver';
2
+ import type { Element as AppiumElement, Position, Rect, Size } from '@appium/types';
3
+ import type { AndroidUiautomator2Driver } from '../driver';
1
4
  /**
2
- * @this {AndroidUiautomator2Driver}
3
- * @returns {Promise<import('@appium/types').Element>}
5
+ * Gets the currently active element.
4
6
  */
5
- export function active(this: import("../driver").AndroidUiautomator2Driver): Promise<import("@appium/types").Element>;
7
+ export declare function active(this: AndroidUiautomator2Driver): Promise<AppiumElement>;
6
8
  /**
7
- * @this {AndroidUiautomator2Driver}
8
- * @param {string} attribute
9
- * @param {string} elementId
10
- * @returns {Promise<string?>}
9
+ * Gets an element attribute value.
11
10
  */
12
- export function getAttribute(this: import("../driver").AndroidUiautomator2Driver, attribute: string, elementId: string): Promise<string | null>;
11
+ export declare function getAttribute(this: AndroidUiautomator2Driver, attribute: string, elementId: string): Promise<string>;
13
12
  /**
14
- * @this {AndroidUiautomator2Driver}
15
- * @param {string} elementId
16
- * @returns {Promise<boolean>}
13
+ * Returns whether the element is displayed.
17
14
  */
18
- export function elementDisplayed(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<boolean>;
15
+ export declare function elementDisplayed(this: AndroidUiautomator2Driver, elementId: string): Promise<boolean>;
19
16
  /**
20
- * @this {AndroidUiautomator2Driver}
21
- * @param {string} elementId
22
- * @returns {Promise<boolean>}
17
+ * Returns whether the element is enabled.
23
18
  */
24
- export function elementEnabled(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<boolean>;
19
+ export declare function elementEnabled(this: AndroidUiautomator2Driver, elementId: string): Promise<boolean>;
25
20
  /**
26
- * @this {AndroidUiautomator2Driver}
27
- * @param {string} elementId
28
- * @returns {Promise<boolean>}
21
+ * Returns whether the element is selected.
29
22
  */
30
- export function elementSelected(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<boolean>;
23
+ export declare function elementSelected(this: AndroidUiautomator2Driver, elementId: string): Promise<boolean>;
31
24
  /**
32
- * @this {AndroidUiautomator2Driver}
33
- * @param {string} elementId
34
- * @returns {Promise<string>}
25
+ * Gets the element tag name.
35
26
  */
36
- export function getName(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<string>;
27
+ export declare function getName(this: AndroidUiautomator2Driver, elementId: string): Promise<string>;
37
28
  /**
38
- * @this {AndroidUiautomator2Driver}
39
- * @param {string} elementId
40
- * @returns {Promise<import('@appium/types').Position>}
29
+ * Gets the element location.
41
30
  */
42
- export function getLocation(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<import("@appium/types").Position>;
31
+ export declare function getLocation(this: AndroidUiautomator2Driver, elementId: string): Promise<Position>;
43
32
  /**
44
- * @this {AndroidUiautomator2Driver}
45
- * @param {string} elementId
46
- * @returns {Promise<import('@appium/types').Size>}
33
+ * Gets the element size.
47
34
  */
48
- export function getSize(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<import("@appium/types").Size>;
35
+ export declare function getSize(this: AndroidUiautomator2Driver, elementId: string): Promise<Size>;
49
36
  /**
50
- * @this {AndroidUiautomator2Driver}
51
- * @param {import('appium-android-driver').DoSetElementValueOpts} params
52
- * @returns {Promise<void>}
37
+ * Sets the value of an element using the upstream driver API.
53
38
  */
54
- export function doSetElementValue(this: import("../driver").AndroidUiautomator2Driver, params: import("appium-android-driver").DoSetElementValueOpts): Promise<void>;
39
+ export declare function doSetElementValue(this: AndroidUiautomator2Driver, params: DoSetElementValueOpts): Promise<void>;
55
40
  /**
56
- * @this {AndroidUiautomator2Driver}
57
- * @param {string|string[]} keys
58
- * @param {string} elementId
59
- * @returns {Promise<void>}
41
+ * Sends text to an element without replacement.
60
42
  */
61
- export function setValueImmediate(this: import("../driver").AndroidUiautomator2Driver, keys: string | string[], elementId: string): Promise<void>;
43
+ export declare function setValueImmediate(this: AndroidUiautomator2Driver, keys: string | string[], elementId: string): Promise<void>;
62
44
  /**
63
- * @this {AndroidUiautomator2Driver}
64
- * @param {string} elementId
65
- * @returns {Promise<string>}
45
+ * Gets the element text.
66
46
  */
67
- export function getText(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<string>;
47
+ export declare function getText(this: AndroidUiautomator2Driver, elementId: string): Promise<string>;
68
48
  /**
69
- * @this {AndroidUiautomator2Driver}
70
- * @param {string} element
71
- * @returns {Promise<void>}
49
+ * Clicks the given element.
72
50
  */
73
- export function click(this: import("../driver").AndroidUiautomator2Driver, element: string): Promise<void>;
51
+ export declare function click(this: AndroidUiautomator2Driver, element: string): Promise<void>;
74
52
  /**
75
- * @this {AndroidUiautomator2Driver}
76
- * @param {string} element
77
- * @returns {Promise<string>}
53
+ * Takes a screenshot of the element.
78
54
  */
79
- export function getElementScreenshot(this: import("../driver").AndroidUiautomator2Driver, element: string): Promise<string>;
55
+ export declare function getElementScreenshot(this: AndroidUiautomator2Driver, element: string): Promise<string>;
80
56
  /**
81
- * @this {AndroidUiautomator2Driver}
82
- * @param {string} elementId
83
- * @returns {Promise<void>}
57
+ * Clears the element text.
84
58
  */
85
- export function clear(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<void>;
59
+ export declare function clear(this: AndroidUiautomator2Driver, elementId: string): Promise<void>;
86
60
  /**
87
- * @this {AndroidUiautomator2Driver}
88
- * @param {string} elementId
89
- * @returns {Promise<import('@appium/types').Rect>}
61
+ * Gets the element rectangle.
90
62
  */
91
- export function getElementRect(this: import("../driver").AndroidUiautomator2Driver, elementId: string): Promise<import("@appium/types").Rect>;
63
+ export declare function getElementRect(this: AndroidUiautomator2Driver, elementId: string): Promise<Rect>;
92
64
  /**
93
- * Sends text to the given element by replacing its previous content
94
- * @this {AndroidUiautomator2Driver}
95
- * @param {string} elementId The id of the element whose content will be replaced.
96
- * @param {string} text The actual text to set.
97
- * @throws {Error} If there was a faulre while setting the text
98
- * @returns {Promise<void>}
65
+ * Replaces the element text.
99
66
  */
100
- export function mobileReplaceElementValue(this: import("../driver").AndroidUiautomator2Driver, elementId: string, text: string): Promise<void>;
101
- export type AndroidUiautomator2Driver = import("../driver").AndroidUiautomator2Driver;
67
+ export declare function mobileReplaceElementValue(this: AndroidUiautomator2Driver, elementId: string, text: string): Promise<void>;
102
68
  //# sourceMappingURL=element.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../../../lib/commands/element.js"],"names":[],"mappings":"AAIA;;;GAGG;AACH,6EAFa,OAAO,CAAC,OAAO,eAAe,EAAE,OAAO,CAAC,CASpD;AAED;;;;;GAKG;AACH,6FAJW,MAAM,aACN,MAAM,GACJ,OAAO,CAAC,MAAM,OAAC,CAAC,CAU5B;AAED;;;;GAIG;AACH,iGAHW,MAAM,GACJ,OAAO,CAAC,OAAO,CAAC,CAI5B;AAED;;;;GAIG;AACH,+FAHW,MAAM,GACJ,OAAO,CAAC,OAAO,CAAC,CAI5B;AAED;;;;GAIG;AACH,gGAHW,MAAM,GACJ,OAAO,CAAC,OAAO,CAAC,CAI5B;AAED;;;;GAIG;AACH,wFAHW,MAAM,GACJ,OAAO,CAAC,MAAM,CAAC,CAU3B;AAED;;;;GAIG;AACH,4FAHW,MAAM,GACJ,OAAO,CAAC,OAAO,eAAe,EAAE,QAAQ,CAAC,CAUrD;AAED;;;;GAIG;AACH,wFAHW,MAAM,GACJ,OAAO,CAAC,OAAO,eAAe,EAAE,IAAI,CAAC,CAUjD;AAED;;;;GAIG;AACH,+FAHW,OAAO,uBAAuB,EAAE,qBAAqB,GACnD,OAAO,CAAC,IAAI,CAAC,CAQzB;AAED;;;;;GAKG;AACH,6FAJW,MAAM,GAAC,MAAM,EAAE,aACf,MAAM,GACJ,OAAO,CAAC,IAAI,CAAC,CAYzB;AAED;;;;GAIG;AACH,wFAHW,MAAM,GACJ,OAAO,CAAC,MAAM,CAAC,CAU3B;AAED;;;;GAIG;AACH,oFAHW,MAAM,GACJ,OAAO,CAAC,IAAI,CAAC,CAQzB;AAED;;;;GAIG;AACH,mGAHW,MAAM,GACJ,OAAO,CAAC,MAAM,CAAC,CAU3B;AAED;;;;GAIG;AACH,sFAHW,MAAM,GACJ,OAAO,CAAC,IAAI,CAAC,CAUzB;AAED;;;;GAIG;AACH,+FAHW,MAAM,GACJ,OAAO,CAAC,OAAO,eAAe,EAAE,IAAI,CAAC,CA4BjD;AAED;;;;;;;GAOG;AACH,0GALW,MAAM,QACN,MAAM,GAEJ,OAAO,CAAC,IAAI,CAAC,CAWzB;wCAeY,OAAO,WAAW,EAAE,yBAAyB"}
1
+ {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../../../lib/commands/element.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAC,OAAO,IAAI,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAC;AAClF,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,WAAW,CAAC;AAGzD;;GAEG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC,CAEpF;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEzH;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE3G;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEzG;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE1G;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEjG;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAEvG;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/F;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAErH;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,yBAAyB,EAC/B,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEjG;AAED;;GAEG;AACH,wBAAsB,KAAK,CAAC,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3F;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAE5G;AAED;;GAEG;AACH,wBAAsB,KAAK,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7F;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CActG;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,yBAAyB,EAC/B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAKf"}
@@ -19,86 +19,65 @@ exports.getElementScreenshot = getElementScreenshot;
19
19
  exports.clear = clear;
20
20
  exports.getElementRect = getElementRect;
21
21
  exports.mobileReplaceElementValue = mobileReplaceElementValue;
22
+ const driver_1 = require("appium/driver");
22
23
  const bluebird_1 = __importDefault(require("bluebird"));
23
24
  const lodash_1 = __importDefault(require("lodash"));
24
- const driver_1 = require("appium/driver");
25
25
  /**
26
- * @this {AndroidUiautomator2Driver}
27
- * @returns {Promise<import('@appium/types').Element>}
26
+ * Gets the currently active element.
28
27
  */
29
28
  async function active() {
30
- return /** @type {import('@appium/types').Element} */ (await this.uiautomator2.jwproxy.command('/element/active', 'GET'));
29
+ return (await this.uiautomator2.jwproxy.command('/element/active', 'GET'));
31
30
  }
32
31
  /**
33
- * @this {AndroidUiautomator2Driver}
34
- * @param {string} attribute
35
- * @param {string} elementId
36
- * @returns {Promise<string?>}
32
+ * Gets an element attribute value.
37
33
  */
38
34
  async function getAttribute(attribute, elementId) {
39
35
  return String(await this.uiautomator2.jwproxy.command(`/element/${elementId}/attribute/${attribute}`, 'GET', {}));
40
36
  }
41
37
  /**
42
- * @this {AndroidUiautomator2Driver}
43
- * @param {string} elementId
44
- * @returns {Promise<boolean>}
38
+ * Returns whether the element is displayed.
45
39
  */
46
40
  async function elementDisplayed(elementId) {
47
41
  return toBool(await this.getAttribute('displayed', elementId));
48
42
  }
49
43
  /**
50
- * @this {AndroidUiautomator2Driver}
51
- * @param {string} elementId
52
- * @returns {Promise<boolean>}
44
+ * Returns whether the element is enabled.
53
45
  */
54
46
  async function elementEnabled(elementId) {
55
47
  return toBool(await this.getAttribute('enabled', elementId));
56
48
  }
57
49
  /**
58
- * @this {AndroidUiautomator2Driver}
59
- * @param {string} elementId
60
- * @returns {Promise<boolean>}
50
+ * Returns whether the element is selected.
61
51
  */
62
52
  async function elementSelected(elementId) {
63
53
  return toBool(await this.getAttribute('selected', elementId));
64
54
  }
65
55
  /**
66
- * @this {AndroidUiautomator2Driver}
67
- * @param {string} elementId
68
- * @returns {Promise<string>}
56
+ * Gets the element tag name.
69
57
  */
70
58
  async function getName(elementId) {
71
- return /** @type {string} */ (await this.uiautomator2.jwproxy.command(`/element/${elementId}/name`, 'GET', {}));
59
+ return (await this.uiautomator2.jwproxy.command(`/element/${elementId}/name`, 'GET', {}));
72
60
  }
73
61
  /**
74
- * @this {AndroidUiautomator2Driver}
75
- * @param {string} elementId
76
- * @returns {Promise<import('@appium/types').Position>}
62
+ * Gets the element location.
77
63
  */
78
64
  async function getLocation(elementId) {
79
- return /** @type {import('@appium/types').Position} */ (await this.uiautomator2.jwproxy.command(`/element/${elementId}/location`, 'GET', {}));
65
+ return (await this.uiautomator2.jwproxy.command(`/element/${elementId}/location`, 'GET', {}));
80
66
  }
81
67
  /**
82
- * @this {AndroidUiautomator2Driver}
83
- * @param {string} elementId
84
- * @returns {Promise<import('@appium/types').Size>}
68
+ * Gets the element size.
85
69
  */
86
70
  async function getSize(elementId) {
87
- return /** @type {import('@appium/types').Size} */ (await this.uiautomator2.jwproxy.command(`/element/${elementId}/size`, 'GET', {}));
71
+ return (await this.uiautomator2.jwproxy.command(`/element/${elementId}/size`, 'GET', {}));
88
72
  }
89
73
  /**
90
- * @this {AndroidUiautomator2Driver}
91
- * @param {import('appium-android-driver').DoSetElementValueOpts} params
92
- * @returns {Promise<void>}
74
+ * Sets the value of an element using the upstream driver API.
93
75
  */
94
76
  async function doSetElementValue(params) {
95
77
  await this.uiautomator2.jwproxy.command(`/element/${params.elementId}/value`, 'POST', params);
96
78
  }
97
79
  /**
98
- * @this {AndroidUiautomator2Driver}
99
- * @param {string|string[]} keys
100
- * @param {string} elementId
101
- * @returns {Promise<void>}
80
+ * Sends text to an element without replacement.
102
81
  */
103
82
  async function setValueImmediate(keys, elementId) {
104
83
  await this.uiautomator2.jwproxy.command(`/element/${elementId}/value`, 'POST', {
@@ -108,67 +87,48 @@ async function setValueImmediate(keys, elementId) {
108
87
  });
109
88
  }
110
89
  /**
111
- * @this {AndroidUiautomator2Driver}
112
- * @param {string} elementId
113
- * @returns {Promise<string>}
90
+ * Gets the element text.
114
91
  */
115
92
  async function getText(elementId) {
116
93
  return String(await this.uiautomator2.jwproxy.command(`/element/${elementId}/text`, 'GET', {}));
117
94
  }
118
95
  /**
119
- * @this {AndroidUiautomator2Driver}
120
- * @param {string} element
121
- * @returns {Promise<void>}
96
+ * Clicks the given element.
122
97
  */
123
98
  async function click(element) {
124
99
  await this.uiautomator2.jwproxy.command(`/element/${element}/click`, 'POST', { element });
125
100
  }
126
101
  /**
127
- * @this {AndroidUiautomator2Driver}
128
- * @param {string} element
129
- * @returns {Promise<string>}
102
+ * Takes a screenshot of the element.
130
103
  */
131
104
  async function getElementScreenshot(element) {
132
105
  return String(await this.uiautomator2.jwproxy.command(`/element/${element}/screenshot`, 'GET', {}));
133
106
  }
134
107
  /**
135
- * @this {AndroidUiautomator2Driver}
136
- * @param {string} elementId
137
- * @returns {Promise<void>}
108
+ * Clears the element text.
138
109
  */
139
110
  async function clear(elementId) {
140
- await this.uiautomator2.jwproxy.command(`/element/${elementId}/clear`, 'POST', {
141
- elementId,
142
- });
111
+ await this.uiautomator2.jwproxy.command(`/element/${elementId}/clear`, 'POST', { elementId });
143
112
  }
144
113
  /**
145
- * @this {AndroidUiautomator2Driver}
146
- * @param {string} elementId
147
- * @returns {Promise<import('@appium/types').Rect>}
114
+ * Gets the element rectangle.
148
115
  */
149
116
  async function getElementRect(elementId) {
150
- const chromedriver = /** @type {import('appium-chromedriver').default} */ (this.chromedriver);
151
- if (this.isWebContext()) {
152
- this.log.debug(`Detected downstream chromedriver protocol: ${chromedriver.jwproxy.downstreamProtocol}`);
153
- if (chromedriver.jwproxy.downstreamProtocol === driver_1.PROTOCOLS.MJSONWP) {
154
- const [{ x, y }, { width, height }] =
155
- /** @type {[import('@appium/types').Position, import('@appium/types').Size]} */ (await bluebird_1.default.all([
156
- chromedriver.jwproxy.command(`/element/${elementId}/location`, 'GET'),
157
- chromedriver.jwproxy.command(`/element/${elementId}/size`, 'GET'),
158
- ]));
159
- return { x, y, width, height };
160
- }
161
- return /** @type {import('@appium/types').Rect} */ (await chromedriver.jwproxy.command(`/element/${elementId}/rect`, 'GET'));
117
+ if (!this.isWebContext()) {
118
+ return (await this.uiautomator2.jwproxy.command(`/element/${elementId}/rect`, 'GET'));
119
+ }
120
+ const chromedriver = this.chromedriver;
121
+ if (chromedriver.jwproxy.downstreamProtocol === driver_1.PROTOCOLS.MJSONWP) {
122
+ const [{ x, y }, { width, height }] = (await bluebird_1.default.all([
123
+ chromedriver.jwproxy.command(`/element/${elementId}/location`, 'GET'),
124
+ chromedriver.jwproxy.command(`/element/${elementId}/size`, 'GET'),
125
+ ]));
126
+ return { x, y, width, height };
162
127
  }
163
- return /** @type {import('@appium/types').Rect} */ (await this.uiautomator2.jwproxy.command(`/element/${elementId}/rect`, 'GET'));
128
+ return (await chromedriver.jwproxy.command(`/element/${elementId}/rect`, 'GET'));
164
129
  }
165
130
  /**
166
- * Sends text to the given element by replacing its previous content
167
- * @this {AndroidUiautomator2Driver}
168
- * @param {string} elementId The id of the element whose content will be replaced.
169
- * @param {string} text The actual text to set.
170
- * @throws {Error} If there was a faulre while setting the text
171
- * @returns {Promise<void>}
131
+ * Replaces the element text.
172
132
  */
173
133
  async function mobileReplaceElementValue(elementId, text) {
174
134
  await this.uiautomator2.jwproxy.command(`/element/${elementId}/value`, 'POST', {
@@ -176,16 +136,7 @@ async function mobileReplaceElementValue(elementId, text) {
176
136
  replace: true,
177
137
  });
178
138
  }
179
- // #region Internal Helpers
180
- /**
181
- * @param {any} s
182
- * @returns {boolean}
183
- */
184
- function toBool(s) {
185
- return lodash_1.default.isString(s) ? s.toLowerCase() === 'true' : !!s;
139
+ function toBool(value) {
140
+ return lodash_1.default.isString(value) ? value.toLowerCase() === 'true' : !!value;
186
141
  }
187
- // #endregion
188
- /**
189
- * @typedef {import('../driver').AndroidUiautomator2Driver} AndroidUiautomator2Driver
190
- */
191
142
  //# sourceMappingURL=element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"element.js","sourceRoot":"","sources":["../../../lib/commands/element.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element.js","sourceRoot":"","sources":["../../../lib/commands/element.ts"],"names":[],"mappings":"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"}