appium-adb 14.1.2 → 14.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/build/lib/tools/aab-utils.d.ts +5 -4
  3. package/build/lib/tools/aab-utils.d.ts.map +1 -1
  4. package/build/lib/tools/aab-utils.js +13 -11
  5. package/build/lib/tools/aab-utils.js.map +1 -1
  6. package/build/lib/tools/android-manifest.d.ts +26 -30
  7. package/build/lib/tools/android-manifest.d.ts.map +1 -1
  8. package/build/lib/tools/android-manifest.js +33 -47
  9. package/build/lib/tools/android-manifest.js.map +1 -1
  10. package/build/lib/tools/apks-utils.d.ts +25 -29
  11. package/build/lib/tools/apks-utils.d.ts.map +1 -1
  12. package/build/lib/tools/apks-utils.js +41 -52
  13. package/build/lib/tools/apks-utils.js.map +1 -1
  14. package/build/lib/tools/fs-commands.d.ts +25 -30
  15. package/build/lib/tools/fs-commands.d.ts.map +1 -1
  16. package/build/lib/tools/fs-commands.js +19 -26
  17. package/build/lib/tools/fs-commands.js.map +1 -1
  18. package/build/lib/tools/general-commands.d.ts +36 -58
  19. package/build/lib/tools/general-commands.d.ts.map +1 -1
  20. package/build/lib/tools/general-commands.js +41 -47
  21. package/build/lib/tools/general-commands.js.map +1 -1
  22. package/build/lib/tools/keyboard-commands.d.ts +27 -36
  23. package/build/lib/tools/keyboard-commands.d.ts.map +1 -1
  24. package/build/lib/tools/keyboard-commands.js +24 -34
  25. package/build/lib/tools/keyboard-commands.js.map +1 -1
  26. package/build/lib/tools/lockmgmt.d.ts +25 -36
  27. package/build/lib/tools/lockmgmt.d.ts.map +1 -1
  28. package/build/lib/tools/lockmgmt.js +34 -38
  29. package/build/lib/tools/lockmgmt.js.map +1 -1
  30. package/build/lib/tools/logcat-commands.d.ts +11 -30
  31. package/build/lib/tools/logcat-commands.d.ts.map +1 -1
  32. package/build/lib/tools/logcat-commands.js +16 -17
  33. package/build/lib/tools/logcat-commands.js.map +1 -1
  34. package/build/lib/tools/network-commands.d.ts +24 -31
  35. package/build/lib/tools/network-commands.d.ts.map +1 -1
  36. package/build/lib/tools/network-commands.js +14 -24
  37. package/build/lib/tools/network-commands.js.map +1 -1
  38. package/lib/tools/{aab-utils.js → aab-utils.ts} +24 -15
  39. package/lib/tools/{android-manifest.js → android-manifest.ts} +66 -59
  40. package/lib/tools/{apks-utils.js → apks-utils.ts} +76 -68
  41. package/lib/tools/{fs-commands.js → fs-commands.ts} +41 -35
  42. package/lib/tools/{general-commands.js → general-commands.ts} +71 -68
  43. package/lib/tools/{keyboard-commands.js → keyboard-commands.ts} +42 -49
  44. package/lib/tools/{lockmgmt.js → lockmgmt.ts} +71 -56
  45. package/lib/tools/{logcat-commands.js → logcat-commands.ts} +24 -22
  46. package/lib/tools/{network-commands.js → network-commands.ts} +42 -34
  47. package/package.json +1 -1
@@ -1,58 +1,39 @@
1
+ import type { ADB } from '../adb.js';
2
+ import type { LogcatOpts, LogEntry, LogcatListener } from './types.js';
1
3
  /**
2
4
  * Start the logcat process to gather logs.
3
5
  *
4
- * @this {import('../adb.js').ADB}
5
- * @param {import('./types').LogcatOpts} [opts={}]
6
+ * @param opts - Logcat options
6
7
  * @throws {Error} If restart fails.
7
8
  */
8
- export function startLogcat(this: import("../adb.js").ADB, opts?: import("./types").LogcatOpts): Promise<void>;
9
- export class startLogcat {
10
- /**
11
- * Start the logcat process to gather logs.
12
- *
13
- * @this {import('../adb.js').ADB}
14
- * @param {import('./types').LogcatOpts} [opts={}]
15
- * @throws {Error} If restart fails.
16
- */
17
- constructor(this: import("../adb.js").ADB, opts?: import("./types").LogcatOpts);
18
- logcat: Logcat;
19
- _logcatStartupParams: import("./types").LogcatOpts;
20
- }
9
+ export declare function startLogcat(this: ADB, opts?: LogcatOpts): Promise<void>;
21
10
  /**
22
11
  * Stop the active logcat process which gathers logs.
23
12
  * The call will be ignored if no logcat process is running.
24
- * @this {import('../adb.js').ADB}
25
13
  */
26
- export function stopLogcat(this: import("../adb.js").ADB): Promise<void>;
27
- export class stopLogcat {
28
- logcat: any;
29
- }
14
+ export declare function stopLogcat(this: ADB): Promise<void>;
30
15
  /**
31
16
  * Retrieve the output from the currently running logcat process.
32
17
  * The logcat process should be executed by {2link #startLogcat} method.
33
18
  *
34
- * @this {import('../adb.js').ADB}
35
- * @return {import('./types').LogEntry[]} The collected logcat output.
19
+ * @return The collected logcat output.
36
20
  * @throws {Error} If logcat process is not running.
37
21
  */
38
- export function getLogcatLogs(this: import("../adb.js").ADB): import("./types").LogEntry[];
22
+ export declare function getLogcatLogs(this: ADB): LogEntry[];
39
23
  /**
40
24
  * Set the callback for the logcat output event.
41
25
  *
42
- * @this {import('../adb.js').ADB}
43
- * @param {import('./types').LogcatListener} listener - Listener function
26
+ * @param listener - Listener function
44
27
  * @throws {Error} If logcat process is not running.
45
28
  */
46
- export function setLogcatListener(this: import("../adb.js").ADB, listener: import("./types").LogcatListener): void;
29
+ export declare function setLogcatListener(this: ADB, listener: LogcatListener): void;
47
30
  /**
48
31
  * Removes the previously set callback for the logcat output event.
49
32
  *
50
- * @this {import('../adb.js').ADB}
51
- * @param {import('./types').LogcatListener} listener
33
+ * @param listener
52
34
  * The listener function, which has been previously
53
35
  * passed to `setLogcatListener`
54
36
  * @throws {Error} If logcat process is not running.
55
37
  */
56
- export function removeLogcatListener(this: import("../adb.js").ADB, listener: import("./types").LogcatListener): void;
57
- import { Logcat } from '../logcat';
38
+ export declare function removeLogcatListener(this: ADB, listener: LogcatListener): void;
58
39
  //# sourceMappingURL=logcat-commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logcat-commands.d.ts","sourceRoot":"","sources":["../../../lib/tools/logcat-commands.js"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,kEAHW,OAAO,SAAS,EAAE,UAAU,iBAgBtC;;IApBD;;;;;;OAMG;IACH,kDAHW,OAAO,SAAS,EAAE,UAAU,EAgBtC;IARC,eAKE;IAEF,mDAAgC;;AAGlC;;;;GAIG;AACH,yEASC;;IAFG,YAAuB;;AAI3B;;;;;;;GAOG;AACH,8DAHY,OAAO,SAAS,EAAE,QAAQ,EAAE,CAQvC;AAED;;;;;;GAMG;AACH,2EAHW,OAAO,SAAS,EAAE,cAAc,QAQ1C;AAED;;;;;;;;GAQG;AACH,8EALW,OAAO,SAAS,EAAE,cAAc,QAU1C;uBAnFoB,WAAW"}
1
+ {"version":3,"file":"logcat-commands.d.ts","sourceRoot":"","sources":["../../../lib/tools/logcat-commands.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAC,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAC,MAAM,YAAY,CAAC;AAErE;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAajF;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAUzD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,GAAG,GAAG,QAAQ,EAAE,CAMnD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAM3E;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAM9E"}
@@ -13,8 +13,7 @@ const logcat_1 = require("../logcat");
13
13
  /**
14
14
  * Start the logcat process to gather logs.
15
15
  *
16
- * @this {import('../adb.js').ADB}
17
- * @param {import('./types').LogcatOpts} [opts={}]
16
+ * @param opts - Logcat options
18
17
  * @throws {Error} If restart fails.
19
18
  */
20
19
  async function startLogcat(opts = {}) {
@@ -33,14 +32,14 @@ async function startLogcat(opts = {}) {
33
32
  /**
34
33
  * Stop the active logcat process which gathers logs.
35
34
  * The call will be ignored if no logcat process is running.
36
- * @this {import('../adb.js').ADB}
37
35
  */
38
36
  async function stopLogcat() {
39
- if (lodash_1.default.isEmpty(this.logcat)) {
37
+ const logcat = this.logcat;
38
+ if (!logcat || lodash_1.default.isEmpty(this.logcat)) {
40
39
  return;
41
40
  }
42
41
  try {
43
- await this.logcat.stopCapture();
42
+ await logcat.stopCapture();
44
43
  }
45
44
  finally {
46
45
  this.logcat = undefined;
@@ -50,42 +49,42 @@ async function stopLogcat() {
50
49
  * Retrieve the output from the currently running logcat process.
51
50
  * The logcat process should be executed by {2link #startLogcat} method.
52
51
  *
53
- * @this {import('../adb.js').ADB}
54
- * @return {import('./types').LogEntry[]} The collected logcat output.
52
+ * @return The collected logcat output.
55
53
  * @throws {Error} If logcat process is not running.
56
54
  */
57
55
  function getLogcatLogs() {
58
- if (lodash_1.default.isEmpty(this.logcat)) {
56
+ const logcat = this.logcat;
57
+ if (!logcat || lodash_1.default.isEmpty(this.logcat)) {
59
58
  throw new Error(`Can't get logcat logs since logcat hasn't started`);
60
59
  }
61
- return this.logcat.getLogs();
60
+ return logcat.getLogs();
62
61
  }
63
62
  /**
64
63
  * Set the callback for the logcat output event.
65
64
  *
66
- * @this {import('../adb.js').ADB}
67
- * @param {import('./types').LogcatListener} listener - Listener function
65
+ * @param listener - Listener function
68
66
  * @throws {Error} If logcat process is not running.
69
67
  */
70
68
  function setLogcatListener(listener) {
71
- if (lodash_1.default.isEmpty(this.logcat)) {
69
+ const logcat = this.logcat;
70
+ if (!logcat || lodash_1.default.isEmpty(this.logcat)) {
72
71
  throw new Error("Logcat process hasn't been started");
73
72
  }
74
- this.logcat.on('output', listener);
73
+ logcat.on('output', listener);
75
74
  }
76
75
  /**
77
76
  * Removes the previously set callback for the logcat output event.
78
77
  *
79
- * @this {import('../adb.js').ADB}
80
- * @param {import('./types').LogcatListener} listener
78
+ * @param listener
81
79
  * The listener function, which has been previously
82
80
  * passed to `setLogcatListener`
83
81
  * @throws {Error} If logcat process is not running.
84
82
  */
85
83
  function removeLogcatListener(listener) {
86
- if (lodash_1.default.isEmpty(this.logcat)) {
84
+ const logcat = this.logcat;
85
+ if (!logcat || lodash_1.default.isEmpty(this.logcat)) {
87
86
  throw new Error("Logcat process hasn't been started");
88
87
  }
89
- this.logcat.removeListener('output', listener);
88
+ logcat.removeListener('output', listener);
90
89
  }
91
90
  //# sourceMappingURL=logcat-commands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logcat-commands.js","sourceRoot":"","sources":["../../../lib/tools/logcat-commands.js"],"names":[],"mappings":";;;;;AAUA,kCAaC;AAOD,gCASC;AAUD,sCAKC;AASD,8CAKC;AAWD,oDAKC;AApFD,oDAAuB;AACvB,sCAAiC;AAEjC;;;;;;GAMG;AACI,KAAK,UAAU,WAAW,CAAC,IAAI,GAAG,EAAE;IACzC,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC;QACvB,GAAG,EAAE,IAAI,CAAC,UAAU;QACpB,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,KAAK;QACjB,sBAAsB,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB;KACtD,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,UAAU;IAC9B,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,aAAa;IAC3B,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;AAC/B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAAC,QAAQ;IACxC,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,oBAAoB,CAAC,QAAQ;IAC3C,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"logcat-commands.js","sourceRoot":"","sources":["../../../lib/tools/logcat-commands.ts"],"names":[],"mappings":";;;;;AAWA,kCAaC;AAMD,gCAUC;AASD,sCAMC;AAQD,8CAMC;AAUD,oDAMC;AArFD,oDAAuB;AACvB,sCAAiC;AAIjC;;;;;GAKG;AACI,KAAK,UAAU,WAAW,CAAY,OAAmB,EAAE;IAChE,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC;QACvB,GAAG,EAAE,IAAI,CAAC,UAAU;QACpB,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,KAAK;QACjB,sBAAsB,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB;KACtD,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;AACnC,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,UAAU;IAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,MAAM,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa;IAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,MAAM,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAY,QAAwB;IACnE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,MAAM,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAAY,QAAwB;IACtE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,MAAM,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC5C,CAAC"}
@@ -1,80 +1,73 @@
1
+ import type { ADB } from '../adb.js';
2
+ import type { PortFamily, PortInfo } from './types.js';
1
3
  /**
2
4
  * Get TCP port forwarding with adb on the device under test.
3
5
  *
4
- * @this {import('../adb.js').ADB}
5
- * @return {Promise<string[]>} The output of the corresponding adb command.
6
+ * @return The output of the corresponding adb command.
6
7
  * An array contains each forwarding line of output
7
8
  */
8
- export function getForwardList(this: import("../adb.js").ADB): Promise<string[]>;
9
+ export declare function getForwardList(this: ADB): Promise<string[]>;
9
10
  /**
10
11
  * Setup TCP port forwarding with adb on the device under test.
11
12
  *
12
- * @this {import('../adb.js').ADB}
13
- * @param {string|number} systemPort - The number of the local system port.
14
- * @param {string|number} devicePort - The number of the remote device port.
13
+ * @param systemPort - The number of the local system port.
14
+ * @param devicePort - The number of the remote device port.
15
15
  */
16
- export function forwardPort(this: import("../adb.js").ADB, systemPort: string | number, devicePort: string | number): Promise<void>;
16
+ export declare function forwardPort(this: ADB, systemPort: string | number, devicePort: string | number): Promise<void>;
17
17
  /**
18
18
  * Remove TCP port forwarding with adb on the device under test. The forwarding
19
19
  * for the given port should be setup with {@link #forwardPort} first.
20
20
  *
21
- * @this {import('../adb.js').ADB}
22
- * @param {string|number} systemPort - The number of the local system port
21
+ * @param systemPort - The number of the local system port
23
22
  * to remove forwarding on.
24
23
  */
25
- export function removePortForward(this: import("../adb.js").ADB, systemPort: string | number): Promise<void>;
24
+ export declare function removePortForward(this: ADB, systemPort: string | number): Promise<void>;
26
25
  /**
27
26
  * Get TCP port forwarding with adb on the device under test.
28
27
  *
29
- * @this {import('../adb.js').ADB}
30
- * @return {Promise<string[]>} The output of the corresponding adb command.
28
+ * @return The output of the corresponding adb command.
31
29
  * An array contains each forwarding line of output
32
30
  */
33
- export function getReverseList(this: import("../adb.js").ADB): Promise<string[]>;
31
+ export declare function getReverseList(this: ADB): Promise<string[]>;
34
32
  /**
35
33
  * Setup TCP port forwarding with adb on the device under test.
36
34
  * Only available for API 21+.
37
35
  *
38
- * @this {import('../adb.js').ADB}
39
- * @param {string|number} devicePort - The number of the remote device port.
40
- * @param {string|number} systemPort - The number of the local system port.
36
+ * @param devicePort - The number of the remote device port.
37
+ * @param systemPort - The number of the local system port.
41
38
  */
42
- export function reversePort(this: import("../adb.js").ADB, devicePort: string | number, systemPort: string | number): Promise<void>;
39
+ export declare function reversePort(this: ADB, devicePort: string | number, systemPort: string | number): Promise<void>;
43
40
  /**
44
41
  * Remove TCP port forwarding with adb on the device under test. The forwarding
45
42
  * for the given port should be setup with {@link #forwardPort} first.
46
43
  *
47
- * @this {import('../adb.js').ADB}
48
- * @param {string|number} devicePort - The number of the remote device port
44
+ * @param devicePort - The number of the remote device port
49
45
  * to remove forwarding on.
50
46
  */
51
- export function removePortReverse(this: import("../adb.js").ADB, devicePort: string | number): Promise<void>;
47
+ export declare function removePortReverse(this: ADB, devicePort: string | number): Promise<void>;
52
48
  /**
53
49
  * Setup TCP port forwarding with adb on the device under test. The difference
54
50
  * between {@link #forwardPort} is that this method does setup for an abstract
55
51
  * local port.
56
52
  *
57
- * @this {import('../adb.js').ADB}
58
- * @param {string|number} systemPort - The number of the local system port.
59
- * @param {string|number} devicePort - The number of the remote device port.
53
+ * @param systemPort - The number of the local system port.
54
+ * @param devicePort - The number of the remote device port.
60
55
  */
61
- export function forwardAbstractPort(this: import("../adb.js").ADB, systemPort: string | number, devicePort: string | number): Promise<void>;
56
+ export declare function forwardAbstractPort(this: ADB, systemPort: string | number, devicePort: string | number): Promise<void>;
62
57
  /**
63
58
  * Execute ping shell command on the device under test.
64
59
  *
65
- * @this {import('../adb.js').ADB}
66
- * @return {Promise<boolean>} True if the command output contains 'ping' substring.
60
+ * @return True if the command output contains 'ping' substring.
67
61
  * @throws {Error} If there was an error while executing 'ping' command on the
68
62
  * device under test.
69
63
  */
70
- export function ping(this: import("../adb.js").ADB): Promise<boolean>;
64
+ export declare function ping(this: ADB): Promise<boolean>;
71
65
  /**
72
66
  * Returns the list of TCP port states of the given family.
73
67
  * Could be empty if no ports are opened.
74
68
  *
75
- * @this {import('../adb.js').ADB}
76
- * @param {import('./types').PortFamily} [family='4']
77
- * @returns {Promise<import('./types').PortInfo[]>}
69
+ * @param family - Port family ('4' for IPv4, '6' for IPv6)
70
+ * @returns Array of port information
78
71
  */
79
- export function listPorts(this: import("../adb.js").ADB, family?: import("./types").PortFamily): Promise<import("./types").PortInfo[]>;
72
+ export declare function listPorts(this: ADB, family?: PortFamily): Promise<PortInfo[]>;
80
73
  //# sourceMappingURL=network-commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"network-commands.d.ts","sourceRoot":"","sources":["../../../lib/tools/network-commands.js"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,+DAHY,OAAO,CAAC,MAAM,EAAE,CAAC,CAO5B;AAED;;;;;;GAMG;AACH,uEAHW,MAAM,GAAC,MAAM,cACb,MAAM,GAAC,MAAM,iBAKvB;AAED;;;;;;;GAOG;AACH,6EAHW,MAAM,GAAC,MAAM,iBAMvB;AAED;;;;;;GAMG;AACH,+DAHY,OAAO,CAAC,MAAM,EAAE,CAAC,CAO5B;AAED;;;;;;;GAOG;AACH,uEAHW,MAAM,GAAC,MAAM,cACb,MAAM,GAAC,MAAM,iBAKvB;AAED;;;;;;;GAOG;AACH,6EAHW,MAAM,GAAC,MAAM,iBAMvB;AAED;;;;;;;;GAQG;AACH,+EAHW,MAAM,GAAC,MAAM,cACb,MAAM,GAAC,MAAM,iBAKvB;AAED;;;;;;;GAOG;AACH,qDAJY,OAAO,CAAC,OAAO,CAAC,CAU3B;AAED;;;;;;;GAOG;AACH,kEAHW,OAAO,SAAS,EAAE,UAAU,GAC1B,OAAO,CAAC,OAAO,SAAS,EAAE,QAAQ,EAAE,CAAC,CAmCjD"}
1
+ {"version":3,"file":"network-commands.d.ts","sourceRoot":"","sources":["../../../lib/tools/network-commands.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAC,UAAU,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AAErD;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAIjE;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,UAAU,EAAE,MAAM,GAAG,MAAM,GAC1B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG7F;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAIjE;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,UAAU,EAAE,MAAM,GAAG,MAAM,GAC1B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,MAAM,GAAG,MAAM,GAC1B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,UAAU,EAAE,MAAM,GAAG,MAAM,GAC1B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;GAMG;AACH,wBAAsB,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAMtD;AAED;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,GAAE,UAAgB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAgCxF"}
@@ -18,8 +18,7 @@ const logger_js_1 = require("../logger.js");
18
18
  /**
19
19
  * Get TCP port forwarding with adb on the device under test.
20
20
  *
21
- * @this {import('../adb.js').ADB}
22
- * @return {Promise<string[]>} The output of the corresponding adb command.
21
+ * @return The output of the corresponding adb command.
23
22
  * An array contains each forwarding line of output
24
23
  */
25
24
  async function getForwardList() {
@@ -30,9 +29,8 @@ async function getForwardList() {
30
29
  /**
31
30
  * Setup TCP port forwarding with adb on the device under test.
32
31
  *
33
- * @this {import('../adb.js').ADB}
34
- * @param {string|number} systemPort - The number of the local system port.
35
- * @param {string|number} devicePort - The number of the remote device port.
32
+ * @param systemPort - The number of the local system port.
33
+ * @param devicePort - The number of the remote device port.
36
34
  */
37
35
  async function forwardPort(systemPort, devicePort) {
38
36
  logger_js_1.log.debug(`Forwarding system: ${systemPort} to device: ${devicePort}`);
@@ -42,8 +40,7 @@ async function forwardPort(systemPort, devicePort) {
42
40
  * Remove TCP port forwarding with adb on the device under test. The forwarding
43
41
  * for the given port should be setup with {@link #forwardPort} first.
44
42
  *
45
- * @this {import('../adb.js').ADB}
46
- * @param {string|number} systemPort - The number of the local system port
43
+ * @param systemPort - The number of the local system port
47
44
  * to remove forwarding on.
48
45
  */
49
46
  async function removePortForward(systemPort) {
@@ -53,8 +50,7 @@ async function removePortForward(systemPort) {
53
50
  /**
54
51
  * Get TCP port forwarding with adb on the device under test.
55
52
  *
56
- * @this {import('../adb.js').ADB}
57
- * @return {Promise<string[]>} The output of the corresponding adb command.
53
+ * @return The output of the corresponding adb command.
58
54
  * An array contains each forwarding line of output
59
55
  */
60
56
  async function getReverseList() {
@@ -66,9 +62,8 @@ async function getReverseList() {
66
62
  * Setup TCP port forwarding with adb on the device under test.
67
63
  * Only available for API 21+.
68
64
  *
69
- * @this {import('../adb.js').ADB}
70
- * @param {string|number} devicePort - The number of the remote device port.
71
- * @param {string|number} systemPort - The number of the local system port.
65
+ * @param devicePort - The number of the remote device port.
66
+ * @param systemPort - The number of the local system port.
72
67
  */
73
68
  async function reversePort(devicePort, systemPort) {
74
69
  logger_js_1.log.debug(`Forwarding device: ${devicePort} to system: ${systemPort}`);
@@ -78,8 +73,7 @@ async function reversePort(devicePort, systemPort) {
78
73
  * Remove TCP port forwarding with adb on the device under test. The forwarding
79
74
  * for the given port should be setup with {@link #forwardPort} first.
80
75
  *
81
- * @this {import('../adb.js').ADB}
82
- * @param {string|number} devicePort - The number of the remote device port
76
+ * @param devicePort - The number of the remote device port
83
77
  * to remove forwarding on.
84
78
  */
85
79
  async function removePortReverse(devicePort) {
@@ -91,9 +85,8 @@ async function removePortReverse(devicePort) {
91
85
  * between {@link #forwardPort} is that this method does setup for an abstract
92
86
  * local port.
93
87
  *
94
- * @this {import('../adb.js').ADB}
95
- * @param {string|number} systemPort - The number of the local system port.
96
- * @param {string|number} devicePort - The number of the remote device port.
88
+ * @param systemPort - The number of the local system port.
89
+ * @param devicePort - The number of the remote device port.
97
90
  */
98
91
  async function forwardAbstractPort(systemPort, devicePort) {
99
92
  logger_js_1.log.debug(`Forwarding system: ${systemPort} to abstract device: ${devicePort}`);
@@ -102,13 +95,12 @@ async function forwardAbstractPort(systemPort, devicePort) {
102
95
  /**
103
96
  * Execute ping shell command on the device under test.
104
97
  *
105
- * @this {import('../adb.js').ADB}
106
- * @return {Promise<boolean>} True if the command output contains 'ping' substring.
98
+ * @return True if the command output contains 'ping' substring.
107
99
  * @throws {Error} If there was an error while executing 'ping' command on the
108
100
  * device under test.
109
101
  */
110
102
  async function ping() {
111
- let stdout = await this.shell(['echo', 'ping']);
103
+ const stdout = await this.shell(['echo', 'ping']);
112
104
  if (stdout.indexOf('ping') === 0) {
113
105
  return true;
114
106
  }
@@ -118,9 +110,8 @@ async function ping() {
118
110
  * Returns the list of TCP port states of the given family.
119
111
  * Could be empty if no ports are opened.
120
112
  *
121
- * @this {import('../adb.js').ADB}
122
- * @param {import('./types').PortFamily} [family='4']
123
- * @returns {Promise<import('./types').PortInfo[]>}
113
+ * @param family - Port family ('4' for IPv4, '6' for IPv6)
114
+ * @returns Array of port information
124
115
  */
125
116
  async function listPorts(family = '4') {
126
117
  const sourceProcName = `/proc/net/tcp${family === '6' ? '6' : ''}`;
@@ -138,7 +129,6 @@ async function listPorts(family = '4') {
138
129
  logger_js_1.log.debug(lines[0]);
139
130
  throw new Error(`Cannot parse the header row of ${sourceProcName} payload`);
140
131
  }
141
- /** @type {import('./types').PortInfo[]} */
142
132
  const result = [];
143
133
  // 2: 1002000A:D036 24CE3AD8:01BB 08 00000000:00000000 00:00000000 00000000 10132 0 49104 1 0000000000000000 21 4 20 10 -1
144
134
  for (const line of lines.slice(1)) {
@@ -1 +1 @@
1
- {"version":3,"file":"network-commands.js","sourceRoot":"","sources":["../../../lib/tools/network-commands.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network-commands.js","sourceRoot":"","sources":["../../../lib/tools/network-commands.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,12 @@ import {unzipFile} from '../helpers.js';
6
6
  import AsyncLock from 'async-lock';
7
7
  import B from 'bluebird';
8
8
  import crypto from 'crypto';
9
+ import type {ADB} from '../adb.js';
10
+ import type {ApkCreationOptions, StringRecord} from './types.js';
9
11
 
10
- /** @type {LRUCache<string, string>} */
11
- const AAB_CACHE = new LRUCache({
12
+ const AAB_CACHE = new LRUCache<string, string>({
12
13
  max: 10,
13
- dispose: (extractedFilesRoot) => fs.rimraf(/** @type {string} */ (extractedFilesRoot)),
14
+ dispose: (extractedFilesRoot) => fs.rimraf(extractedFilesRoot),
14
15
  });
15
16
  const AAB_CACHE_GUARD = new AsyncLock();
16
17
  const UNIVERSAL_APK = 'universal.apk';
@@ -20,7 +21,7 @@ process.on('exit', () => {
20
21
  return;
21
22
  }
22
23
 
23
- const paths = /** @type {string[]} */ ([...AAB_CACHE.values()]);
24
+ const paths = [...AAB_CACHE.values()];
24
25
  log.debug(
25
26
  `Performing cleanup of ${paths.length} cached .aab ` + util.pluralize('package', paths.length),
26
27
  );
@@ -29,7 +30,7 @@ process.on('exit', () => {
29
30
  // Asynchronous calls are not supported in onExit handler
30
31
  fs.rimrafSync(appPath);
31
32
  } catch (e) {
32
- log.warn(/** @type {Error} */ (e).message);
33
+ log.warn((e as Error).message);
33
34
  }
34
35
  }
35
36
  });
@@ -39,14 +40,17 @@ process.on('exit', () => {
39
40
  * https://developer.android.com/studio/command-line/bundletool#generate_apks
40
41
  * for more details.
41
42
  *
42
- * @this {import('../adb.js').ADB}
43
- * @param {string} aabPath Full path to the source .aab package
44
- * @param {import('./types').ApkCreationOptions} [opts={}]
43
+ * @param aabPath Full path to the source .aab package
44
+ * @param opts Options for APK creation
45
45
  * @returns The path to the resulting universal .apk. The .apk is stored in the internal cache
46
46
  * by default.
47
47
  * @throws {Error} If there was an error while creating the universal .apk
48
48
  */
49
- export async function extractUniversalApk(aabPath, opts = {}) {
49
+ export async function extractUniversalApk(
50
+ this: ADB,
51
+ aabPath: string,
52
+ opts: ApkCreationOptions = {},
53
+ ): Promise<string> {
50
54
  if (!(await fs.exists(aabPath))) {
51
55
  throw new Error(`The file at '${aabPath}' either does not exist or is not accessible`);
52
56
  }
@@ -79,18 +83,22 @@ export async function extractUniversalApk(aabPath, opts = {}) {
79
83
  }
80
84
  log.debug(`Calculated the cache key for '${aabPath}': ${cacheHash}`);
81
85
  if (AAB_CACHE.has(cacheHash)) {
82
- const resultPath = path.resolve(/** @type {string} */ (AAB_CACHE.get(cacheHash)), apkName);
83
- if (await fs.exists(resultPath)) {
84
- return resultPath;
86
+ const cachedRoot = AAB_CACHE.get(cacheHash);
87
+ if (cachedRoot) {
88
+ const resultPath = path.resolve(cachedRoot, apkName);
89
+ if (await fs.exists(resultPath)) {
90
+ return resultPath;
91
+ }
85
92
  }
86
93
  AAB_CACHE.delete(cacheHash);
87
94
  }
88
95
 
89
96
  await this.initAapt2();
97
+ const binaries = this.binaries as StringRecord;
90
98
  const args = [
91
99
  'build-apks',
92
100
  '--aapt2',
93
- /** @type {import('./types').StringRecord} */ (this.binaries).aapt2,
101
+ binaries.aapt2,
94
102
  '--bundle',
95
103
  aabPath,
96
104
  '--output',
@@ -114,8 +122,8 @@ export async function extractUniversalApk(aabPath, opts = {}) {
114
122
 
115
123
  log.debug(`Unpacking universal application bundle at '${tmpApksPath}' to '${tmpRoot}'`);
116
124
  await unzipFile(tmpApksPath, tmpRoot);
117
- let universalApkPath;
118
- const fileDeletionPromises = [];
125
+ let universalApkPath: string | undefined;
126
+ const fileDeletionPromises: Promise<void>[] = [];
119
127
  const allFileNames = await fs.readdir(tmpRoot);
120
128
  for (const fileName of allFileNames) {
121
129
  const fullPath = path.join(tmpRoot, fileName);
@@ -146,3 +154,4 @@ export async function extractUniversalApk(aabPath, opts = {}) {
146
154
  throw e;
147
155
  }
148
156
  }
157
+