io.appium.settings 7.0.3 → 7.0.4

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,9 @@
1
+ ## [7.0.4](https://github.com/appium/io.appium.settings/compare/v7.0.3...v7.0.4) (2025-11-15)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * publish via trusted publisher ([#251](https://github.com/appium/io.appium.settings/issues/251)) ([62bff2b](https://github.com/appium/io.appium.settings/commit/62bff2b828b96a99d6f859ea91627210d88a4069))
6
+
1
7
  ## [7.0.3](https://github.com/appium/io.appium.settings/compare/v7.0.2...v7.0.3) (2025-11-13)
2
8
 
3
9
  ### Bug Fixes
Binary file
@@ -14,6 +14,7 @@ export function makeMediaProjectionRecorder(this: import("../client").SettingsAp
14
14
  * @returns {Promise<boolean>} If the permissions adjustment has actually been made
15
15
  */
16
16
  export function adjustMediaProjectionServicePermissions(this: import("../client").SettingsApp): Promise<boolean>;
17
+ export type ADB = import("appium-adb").ADB;
17
18
  export type StartMediaProjectionRecordingOpts = {
18
19
  /**
19
20
  * Maximum supported resolution on-device (Detected automatically by the app
@@ -40,22 +41,6 @@ export type StartMediaProjectionRecordingOpts = {
40
41
  */
41
42
  filename?: string | undefined;
42
43
  };
43
- export type ADB = import("appium-adb").ADB;
44
- /**
45
- * @typedef {Object} StartMediaProjectionRecordingOpts
46
- * @property {string} [resolution] Maximum supported resolution on-device (Detected automatically by the app
47
- * itself), which usually equals to Full HD 1920x1080 on most phones however
48
- * you can change it to following supported resolutions as well: "1920x1080",
49
- * "1280x720", "720x480", "320x240", "176x144".
50
- * @property {number} [maxDurationSec=900] Maximum allowed duration is 15 minutes; you can increase it if your test
51
- * takes longer than that.
52
- * @property {'high' | 'normal' | 'low'} [priority='high'] Recording thread priority.
53
- * If you face performance drops during testing with recording enabled, you
54
- * can reduce recording priority
55
- * @property {string} [filename] You can type recording video file name as you want, but recording currently
56
- * supports only "mp4" format so your filename must end with ".mp4". An
57
- * invalid file name will fail to start the recording.
58
- */
59
44
  declare class MediaProjectionRecorder {
60
45
  /**
61
46
  * @param {ADB} adb
@@ -1 +1 @@
1
- {"version":3,"file":"media-projection.d.ts","sourceRoot":"","sources":["../../../lib/commands/media-projection.js"],"names":[],"mappings":"AAwJA;;;;;;GAMG;AACH,oFAFa,uBAAuB,CAInC;AAED;;;;;;GAMG;AACH,gGAFa,OAAO,CAAC,OAAO,CAAC,CAQ5B;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAGY,OAAO,YAAY,EAAE,GAAG;AAlKrC;;;;;;;;;;;;;;GAcG;AAEH;IACE;;OAEG;IACH,iBAFW,GAAG,EAIb;IADC,kCAAc;IAGhB;;;OAGG;IACH,aAFa,OAAO,CAAC,OAAO,CAAC,CAU5B;IAED;;;;OAIG;IACH,aAHW,iCAAiC,GAC/B,OAAO,CAAC,OAAO,CAAC,CAqC5B;IAED;;OAEG;IACH,WAFa,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,cAFa,OAAO,CAAC,MAAM,OAAC,CAAC,CAa5B;IAED;;OAEG;IACH,QAFa,OAAO,CAAC,OAAO,CAAC,CA2B5B;CACF"}
1
+ {"version":3,"file":"media-projection.d.ts","sourceRoot":"","sources":["../../../lib/commands/media-projection.js"],"names":[],"mappings":"AAwIA;;;;;;GAMG;AACH,oFAFa,uBAAuB,CAInC;AAED;;;;;;GAMG;AACH,gGAFa,OAAO,CAAC,OAAO,CAAC,CAQ5B;kBAGY,OAAO,YAAY,EAAE,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;AAlJrC;IACE;;OAEG;IACH,iBAFW,GAAG,EAIb;IADC,kCAAc;IAGhB;;;OAGG;IACH,aAFa,OAAO,CAAC,OAAO,CAAC,CAU5B;IAED;;;;OAIG;IACH,aAHW,iCAAiC,GAC/B,OAAO,CAAC,OAAO,CAAC,CAqC5B;IAED;;OAEG;IACH,WAFa,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,cAFa,OAAO,CAAC,MAAM,OAAC,CAAC,CAa5B;IAED;;OAEG;IACH,QAFa,OAAO,CAAC,OAAO,CAAC,CA2B5B;CACF"}
@@ -14,21 +14,6 @@ const constants_1 = require("../constants");
14
14
  const RECORDING_STARTUP_TIMEOUT_MS = 3 * 1000;
15
15
  const RECORDING_STOP_TIMEOUT_MS = 3 * 1000;
16
16
  const RECORDINGS_ROOT = `/storage/emulated/0/Android/data/${constants_1.SETTINGS_HELPER_ID}/files`;
17
- /**
18
- * @typedef {Object} StartMediaProjectionRecordingOpts
19
- * @property {string} [resolution] Maximum supported resolution on-device (Detected automatically by the app
20
- * itself), which usually equals to Full HD 1920x1080 on most phones however
21
- * you can change it to following supported resolutions as well: "1920x1080",
22
- * "1280x720", "720x480", "320x240", "176x144".
23
- * @property {number} [maxDurationSec=900] Maximum allowed duration is 15 minutes; you can increase it if your test
24
- * takes longer than that.
25
- * @property {'high' | 'normal' | 'low'} [priority='high'] Recording thread priority.
26
- * If you face performance drops during testing with recording enabled, you
27
- * can reduce recording priority
28
- * @property {string} [filename] You can type recording video file name as you want, but recording currently
29
- * supports only "mp4" format so your filename must end with ".mp4". An
30
- * invalid file name will fail to start the recording.
31
- */
32
17
  class MediaProjectionRecorder {
33
18
  /**
34
19
  * @param {ADB} adb
@@ -161,4 +146,19 @@ async function adjustMediaProjectionServicePermissions() {
161
146
  /**
162
147
  * @typedef {import('appium-adb').ADB} ADB
163
148
  */
149
+ /**
150
+ * @typedef {Object} StartMediaProjectionRecordingOpts
151
+ * @property {string} [resolution] Maximum supported resolution on-device (Detected automatically by the app
152
+ * itself), which usually equals to Full HD 1920x1080 on most phones however
153
+ * you can change it to following supported resolutions as well: "1920x1080",
154
+ * "1280x720", "720x480", "320x240", "176x144".
155
+ * @property {number} [maxDurationSec=900] Maximum allowed duration is 15 minutes; you can increase it if your test
156
+ * takes longer than that.
157
+ * @property {'high' | 'normal' | 'low'} [priority='high'] Recording thread priority.
158
+ * If you face performance drops during testing with recording enabled, you
159
+ * can reduce recording priority
160
+ * @property {string} [filename] You can type recording video file name as you want, but recording currently
161
+ * supports only "mp4" format so your filename must end with ".mp4". An
162
+ * invalid file name will fail to start the recording.
163
+ */
164
164
  //# sourceMappingURL=media-projection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-projection.js","sourceRoot":"","sources":["../../../lib/commands/media-projection.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media-projection.js","sourceRoot":"","sources":["../../../lib/commands/media-projection.js"],"names":[],"mappings":"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"}
@@ -15,22 +15,6 @@ const RECORDING_STARTUP_TIMEOUT_MS = 3 * 1000;
15
15
  const RECORDING_STOP_TIMEOUT_MS = 3 * 1000;
16
16
  const RECORDINGS_ROOT = `/storage/emulated/0/Android/data/${SETTINGS_HELPER_ID}/files`;
17
17
 
18
- /**
19
- * @typedef {Object} StartMediaProjectionRecordingOpts
20
- * @property {string} [resolution] Maximum supported resolution on-device (Detected automatically by the app
21
- * itself), which usually equals to Full HD 1920x1080 on most phones however
22
- * you can change it to following supported resolutions as well: "1920x1080",
23
- * "1280x720", "720x480", "320x240", "176x144".
24
- * @property {number} [maxDurationSec=900] Maximum allowed duration is 15 minutes; you can increase it if your test
25
- * takes longer than that.
26
- * @property {'high' | 'normal' | 'low'} [priority='high'] Recording thread priority.
27
- * If you face performance drops during testing with recording enabled, you
28
- * can reduce recording priority
29
- * @property {string} [filename] You can type recording video file name as you want, but recording currently
30
- * supports only "mp4" format so your filename must end with ".mp4". An
31
- * invalid file name will fail to start the recording.
32
- */
33
-
34
18
  class MediaProjectionRecorder {
35
19
  /**
36
20
  * @param {ADB} adb
@@ -179,3 +163,19 @@ export async function adjustMediaProjectionServicePermissions() {
179
163
  /**
180
164
  * @typedef {import('appium-adb').ADB} ADB
181
165
  */
166
+
167
+ /**
168
+ * @typedef {Object} StartMediaProjectionRecordingOpts
169
+ * @property {string} [resolution] Maximum supported resolution on-device (Detected automatically by the app
170
+ * itself), which usually equals to Full HD 1920x1080 on most phones however
171
+ * you can change it to following supported resolutions as well: "1920x1080",
172
+ * "1280x720", "720x480", "320x240", "176x144".
173
+ * @property {number} [maxDurationSec=900] Maximum allowed duration is 15 minutes; you can increase it if your test
174
+ * takes longer than that.
175
+ * @property {'high' | 'normal' | 'low'} [priority='high'] Recording thread priority.
176
+ * If you face performance drops during testing with recording enabled, you
177
+ * can reduce recording priority
178
+ * @property {string} [filename] You can type recording video file name as you want, but recording currently
179
+ * supports only "mp4" format so your filename must end with ".mp4". An
180
+ * invalid file name will fail to start the recording.
181
+ */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "io.appium.settings",
3
- "version": "7.0.3",
3
+ "version": "7.0.4",
4
4
  "description": "App for dealing with Android settings",
5
5
  "main": "./build/lib/index.js",
6
6
  "types": "./build/lib/index.d.ts",
@@ -14,7 +14,8 @@
14
14
  "prepare": "npm run build",
15
15
  "version": "npm run bump-gradle-version && npm run build",
16
16
  "clean": "npm run build -- --clean",
17
- "js:test": "mocha --exit --timeout 1m \"./test/unit/**/*-specs.js\""
17
+ "js:test": "mocha --exit --timeout 1m \"./test/unit/**/*-specs.js\"",
18
+ "e2e-test": "mocha --exit --timeout 5m \"./test/e2e/**/*-specs.ts\""
18
19
  },
19
20
  "repository": {
20
21
  "type": "git",
@@ -60,7 +61,10 @@
60
61
  "@semantic-release/changelog": "^6.0.1",
61
62
  "@semantic-release/git": "^10.0.1",
62
63
  "@types/bluebird": "^3.5.38",
64
+ "@types/chai": "^5.2.3",
65
+ "@types/chai-as-promised": "^8.0.2",
63
66
  "@types/lodash": "^4.14.196",
67
+ "@types/mocha": "^10.0.10",
64
68
  "@types/node": "^24.0.0",
65
69
  "@types/teen_process": "^2.0.2",
66
70
  "appium-adb": "^14.0.0",
@@ -69,7 +73,7 @@
69
73
  "conventional-changelog-conventionalcommits": "^9.0.0",
70
74
  "mocha": "^11.0.1",
71
75
  "prettier": "^3.0.0",
72
- "semantic-release": "^25.0.0",
76
+ "semantic-release": "^25.0.2",
73
77
  "ts-node": "^10.9.1",
74
78
  "typescript": "^5.1.6"
75
79
  }