appium 3.3.0 → 3.3.1

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 (196) hide show
  1. package/build/lib/appium.d.ts +147 -205
  2. package/build/lib/appium.d.ts.map +1 -1
  3. package/build/lib/appium.js +169 -282
  4. package/build/lib/appium.js.map +1 -1
  5. package/build/lib/bidi-commands.d.ts.map +1 -1
  6. package/build/lib/bidi-commands.js +11 -11
  7. package/build/lib/bidi-commands.js.map +1 -1
  8. package/build/lib/bootstrap/appium-initializer.d.ts +21 -0
  9. package/build/lib/bootstrap/appium-initializer.d.ts.map +1 -0
  10. package/build/lib/bootstrap/appium-initializer.js +146 -0
  11. package/build/lib/bootstrap/appium-initializer.js.map +1 -0
  12. package/build/lib/bootstrap/appium-main-runner.d.ts +22 -0
  13. package/build/lib/bootstrap/appium-main-runner.d.ts.map +1 -0
  14. package/build/lib/bootstrap/appium-main-runner.js +109 -0
  15. package/build/lib/bootstrap/appium-main-runner.js.map +1 -0
  16. package/build/lib/bootstrap/config-file.d.ts +37 -0
  17. package/build/lib/bootstrap/config-file.d.ts.map +1 -0
  18. package/build/lib/{config-file.js → bootstrap/config-file.js} +9 -26
  19. package/build/lib/bootstrap/config-file.js.map +1 -0
  20. package/build/lib/bootstrap/grid-v3-register.d.ts +20 -0
  21. package/build/lib/bootstrap/grid-v3-register.d.ts.map +1 -0
  22. package/build/lib/{grid-register.js → bootstrap/grid-v3-register.js} +28 -13
  23. package/build/lib/bootstrap/grid-v3-register.js.map +1 -0
  24. package/build/lib/bootstrap/init-types.d.ts +16 -0
  25. package/build/lib/bootstrap/init-types.d.ts.map +1 -0
  26. package/build/lib/bootstrap/init-types.js +3 -0
  27. package/build/lib/bootstrap/init-types.js.map +1 -0
  28. package/build/lib/bootstrap/main-helpers.d.ts +55 -0
  29. package/build/lib/bootstrap/main-helpers.d.ts.map +1 -0
  30. package/build/lib/bootstrap/main-helpers.js +187 -0
  31. package/build/lib/bootstrap/main-helpers.js.map +1 -0
  32. package/build/lib/bootstrap/node-helpers.d.ts +32 -0
  33. package/build/lib/bootstrap/node-helpers.d.ts.map +1 -0
  34. package/build/lib/bootstrap/node-helpers.js +201 -0
  35. package/build/lib/bootstrap/node-helpers.js.map +1 -0
  36. package/build/lib/bootstrap/startup-config.d.ts +22 -0
  37. package/build/lib/bootstrap/startup-config.d.ts.map +1 -0
  38. package/build/lib/bootstrap/startup-config.js +111 -0
  39. package/build/lib/bootstrap/startup-config.js.map +1 -0
  40. package/build/lib/cli/args.d.ts.map +1 -1
  41. package/build/lib/cli/args.js +9 -9
  42. package/build/lib/cli/args.js.map +1 -1
  43. package/build/lib/cli/extension-command.d.ts +95 -95
  44. package/build/lib/cli/extension-command.d.ts.map +1 -1
  45. package/build/lib/cli/extension-command.js +18 -18
  46. package/build/lib/cli/extension-command.js.map +1 -1
  47. package/build/lib/cli/extension.d.ts +1 -1
  48. package/build/lib/cli/extension.d.ts.map +1 -1
  49. package/build/lib/cli/extension.js +5 -5
  50. package/build/lib/cli/extension.js.map +1 -1
  51. package/build/lib/cli/parser.d.ts +8 -8
  52. package/build/lib/cli/parser.d.ts.map +1 -1
  53. package/build/lib/cli/parser.js +49 -49
  54. package/build/lib/cli/parser.js.map +1 -1
  55. package/build/lib/cli/setup-command.js +6 -6
  56. package/build/lib/cli/setup-command.js.map +1 -1
  57. package/build/lib/cli/utils.d.ts +17 -17
  58. package/build/lib/cli/utils.d.ts.map +1 -1
  59. package/build/lib/cli/utils.js +29 -29
  60. package/build/lib/cli/utils.js.map +1 -1
  61. package/build/lib/doctor/doctor.d.ts +2 -2
  62. package/build/lib/doctor/doctor.d.ts.map +1 -1
  63. package/build/lib/doctor/doctor.js +6 -6
  64. package/build/lib/doctor/doctor.js.map +1 -1
  65. package/build/lib/extension/driver-config.d.ts +18 -77
  66. package/build/lib/extension/driver-config.d.ts.map +1 -1
  67. package/build/lib/extension/driver-config.js +37 -125
  68. package/build/lib/extension/driver-config.js.map +1 -1
  69. package/build/lib/extension/extension-config.d.ts +103 -210
  70. package/build/lib/extension/extension-config.d.ts.map +1 -1
  71. package/build/lib/extension/extension-config.js +180 -342
  72. package/build/lib/extension/extension-config.js.map +1 -1
  73. package/build/lib/extension/index.d.ts +12 -29
  74. package/build/lib/extension/index.d.ts.map +1 -1
  75. package/build/lib/extension/index.js +33 -75
  76. package/build/lib/extension/index.js.map +1 -1
  77. package/build/lib/extension/manifest-migrations.d.ts +3 -20
  78. package/build/lib/extension/manifest-migrations.d.ts.map +1 -1
  79. package/build/lib/extension/manifest-migrations.js +20 -101
  80. package/build/lib/extension/manifest-migrations.js.map +1 -1
  81. package/build/lib/extension/manifest.d.ts +61 -107
  82. package/build/lib/extension/manifest.d.ts.map +1 -1
  83. package/build/lib/extension/manifest.js +181 -356
  84. package/build/lib/extension/manifest.js.map +1 -1
  85. package/build/lib/extension/package-changed.d.ts +1 -3
  86. package/build/lib/extension/package-changed.d.ts.map +1 -1
  87. package/build/lib/extension/package-changed.js +8 -15
  88. package/build/lib/extension/package-changed.js.map +1 -1
  89. package/build/lib/extension/plugin-config.d.ts +10 -52
  90. package/build/lib/extension/plugin-config.d.ts.map +1 -1
  91. package/build/lib/extension/plugin-config.js +11 -63
  92. package/build/lib/extension/plugin-config.js.map +1 -1
  93. package/build/lib/helpers/build.d.ts +22 -0
  94. package/build/lib/helpers/build.d.ts.map +1 -0
  95. package/build/lib/helpers/build.js +109 -0
  96. package/build/lib/helpers/build.js.map +1 -0
  97. package/build/lib/helpers/capability.d.ts +38 -0
  98. package/build/lib/helpers/capability.d.ts.map +1 -0
  99. package/build/lib/helpers/capability.js +128 -0
  100. package/build/lib/helpers/capability.js.map +1 -0
  101. package/build/lib/helpers/network.d.ts +14 -0
  102. package/build/lib/helpers/network.d.ts.map +1 -0
  103. package/build/lib/helpers/network.js +35 -0
  104. package/build/lib/helpers/network.js.map +1 -0
  105. package/build/lib/insecure-features.js +6 -6
  106. package/build/lib/insecure-features.js.map +1 -1
  107. package/build/lib/inspector-commands.d.ts +6 -0
  108. package/build/lib/inspector-commands.d.ts.map +1 -1
  109. package/build/lib/inspector-commands.js +6 -0
  110. package/build/lib/inspector-commands.js.map +1 -1
  111. package/build/lib/logger.d.ts +2 -3
  112. package/build/lib/logger.d.ts.map +1 -1
  113. package/build/lib/logger.js +2 -3
  114. package/build/lib/logger.js.map +1 -1
  115. package/build/lib/main.d.ts +15 -58
  116. package/build/lib/main.d.ts.map +1 -1
  117. package/build/lib/main.js +25 -425
  118. package/build/lib/main.js.map +1 -1
  119. package/build/lib/schema/cli-args-guards.d.ts +34 -0
  120. package/build/lib/schema/cli-args-guards.d.ts.map +1 -0
  121. package/build/lib/schema/cli-args-guards.js +49 -0
  122. package/build/lib/schema/cli-args-guards.js.map +1 -0
  123. package/build/lib/schema/cli-args.js +2 -2
  124. package/build/lib/schema/cli-args.js.map +1 -1
  125. package/build/lib/schema/format-errors.d.ts +28 -0
  126. package/build/lib/schema/format-errors.d.ts.map +1 -0
  127. package/build/lib/schema/format-errors.js +29 -0
  128. package/build/lib/schema/format-errors.js.map +1 -0
  129. package/build/lib/schema/index.d.ts +2 -0
  130. package/build/lib/schema/index.d.ts.map +1 -1
  131. package/build/lib/schema/index.js +2 -0
  132. package/build/lib/schema/index.js.map +1 -1
  133. package/build/lib/schema/schema.d.ts +15 -15
  134. package/build/lib/schema/schema.d.ts.map +1 -1
  135. package/build/lib/schema/schema.js +37 -37
  136. package/build/lib/schema/schema.js.map +1 -1
  137. package/build/lib/utils.d.ts +0 -81
  138. package/build/lib/utils.d.ts.map +1 -1
  139. package/build/lib/utils.js +1 -248
  140. package/build/lib/utils.js.map +1 -1
  141. package/lib/{appium.js → appium.ts} +297 -341
  142. package/lib/bidi-commands.ts +10 -14
  143. package/lib/bootstrap/appium-initializer.ts +212 -0
  144. package/lib/bootstrap/appium-main-runner.ts +172 -0
  145. package/lib/{config-file.ts → bootstrap/config-file.ts} +29 -63
  146. package/lib/{grid-register.ts → bootstrap/grid-v3-register.ts} +35 -35
  147. package/lib/bootstrap/init-types.ts +31 -0
  148. package/lib/bootstrap/main-helpers.ts +223 -0
  149. package/lib/bootstrap/node-helpers.ts +180 -0
  150. package/lib/bootstrap/startup-config.ts +143 -0
  151. package/lib/cli/args.ts +10 -10
  152. package/lib/cli/extension-command.ts +132 -132
  153. package/lib/cli/extension.ts +7 -7
  154. package/lib/cli/parser.ts +50 -50
  155. package/lib/cli/setup-command.ts +2 -2
  156. package/lib/cli/utils.ts +33 -33
  157. package/lib/doctor/doctor.ts +8 -8
  158. package/lib/extension/driver-config.ts +165 -0
  159. package/lib/extension/{extension-config.js → extension-config.ts} +291 -405
  160. package/lib/extension/index.ts +143 -0
  161. package/lib/extension/manifest-migrations.ts +57 -0
  162. package/lib/extension/manifest.ts +369 -0
  163. package/lib/extension/{package-changed.js → package-changed.ts} +9 -18
  164. package/lib/extension/plugin-config.ts +62 -0
  165. package/lib/helpers/build.ts +111 -0
  166. package/lib/helpers/capability.ts +171 -0
  167. package/lib/helpers/network.ts +30 -0
  168. package/lib/insecure-features.ts +1 -1
  169. package/lib/inspector-commands.ts +6 -1
  170. package/lib/{logger.js → logger.ts} +1 -2
  171. package/lib/main.ts +60 -0
  172. package/lib/schema/cli-args-guards.ts +67 -0
  173. package/lib/schema/cli-args.ts +1 -1
  174. package/lib/schema/format-errors.ts +43 -0
  175. package/lib/schema/index.ts +2 -0
  176. package/lib/schema/schema.ts +51 -52
  177. package/lib/utils.ts +0 -331
  178. package/package.json +12 -13
  179. package/scripts/autoinstall-extensions.js +3 -0
  180. package/build/lib/config-file.d.ts +0 -57
  181. package/build/lib/config-file.d.ts.map +0 -1
  182. package/build/lib/config-file.js.map +0 -1
  183. package/build/lib/config.d.ts +0 -68
  184. package/build/lib/config.d.ts.map +0 -1
  185. package/build/lib/config.js +0 -358
  186. package/build/lib/config.js.map +0 -1
  187. package/build/lib/grid-register.d.ts +0 -35
  188. package/build/lib/grid-register.d.ts.map +0 -1
  189. package/build/lib/grid-register.js.map +0 -1
  190. package/lib/config.ts +0 -377
  191. package/lib/extension/driver-config.js +0 -245
  192. package/lib/extension/index.js +0 -169
  193. package/lib/extension/manifest-migrations.js +0 -136
  194. package/lib/extension/manifest.js +0 -550
  195. package/lib/extension/plugin-config.js +0 -112
  196. package/lib/main.js +0 -545
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.checkNodeOk = checkNodeOk;
40
+ exports.adjustNodePath = adjustNodePath;
41
+ exports.showDebugInfo = showDebugInfo;
42
+ exports.requireDir = requireDir;
43
+ /* eslint-disable no-console */
44
+ const lodash_1 = __importDefault(require("lodash"));
45
+ const node_path_1 = __importDefault(require("node:path"));
46
+ const node_os_1 = __importDefault(require("node:os"));
47
+ const semver = __importStar(require("semver"));
48
+ const bluebird_1 = __importDefault(require("bluebird"));
49
+ const support_1 = require("@appium/support");
50
+ const logger_1 = require("../logger");
51
+ const utils_1 = require("../utils");
52
+ const build_1 = require("../helpers/build");
53
+ const MIN_NODE_VERSION = utils_1.npmPackage.engines.node;
54
+ /**
55
+ * @throws {Error} If Node version is outside of the supported range
56
+ */
57
+ function checkNodeOk() {
58
+ const version = getNodeVersion();
59
+ if (!semver.satisfies(version, MIN_NODE_VERSION)) {
60
+ throw new Error(`Node version must be at least ${MIN_NODE_VERSION}; current is ${version.version}`);
61
+ }
62
+ }
63
+ /**
64
+ * Adjusts NODE_PATH so CJS drivers/plugins can load peer deps. Does not work with ESM.
65
+ */
66
+ function adjustNodePath() {
67
+ let appiumModuleSearchRoot;
68
+ try {
69
+ appiumModuleSearchRoot = node_path_1.default.dirname((0, utils_1.getAppiumModuleRoot)());
70
+ }
71
+ catch (error) {
72
+ logger_1.log.warn(error.message);
73
+ return;
74
+ }
75
+ const refreshRequirePaths = () => {
76
+ try {
77
+ // Private API; see https://gist.github.com/branneman/8048520#7-the-hack
78
+ require('node:module').Module._initPaths();
79
+ return true;
80
+ }
81
+ catch {
82
+ return false;
83
+ }
84
+ };
85
+ if (!process.env.NODE_PATH) {
86
+ process.env.NODE_PATH = appiumModuleSearchRoot;
87
+ if (refreshRequirePaths()) {
88
+ process.env.APPIUM_OMIT_PEER_DEPS = '1';
89
+ }
90
+ else {
91
+ delete process.env.NODE_PATH;
92
+ }
93
+ return;
94
+ }
95
+ const nodePathParts = process.env.NODE_PATH.split(node_path_1.default.delimiter);
96
+ if (nodePathParts.includes(appiumModuleSearchRoot)) {
97
+ process.env.APPIUM_OMIT_PEER_DEPS = '1';
98
+ return;
99
+ }
100
+ nodePathParts.push(appiumModuleSearchRoot);
101
+ process.env.NODE_PATH = nodePathParts.join(node_path_1.default.delimiter);
102
+ if (refreshRequirePaths()) {
103
+ process.env.APPIUM_OMIT_PEER_DEPS = '1';
104
+ }
105
+ else {
106
+ process.env.NODE_PATH = lodash_1.default.without(nodePathParts, appiumModuleSearchRoot).join(node_path_1.default.delimiter);
107
+ }
108
+ }
109
+ /**
110
+ * Prints JSON debug info (OS, Node/npm, Appium build, installed drivers/plugins) to stdout.
111
+ * Input combines extension config snapshots with the resolved Appium home path.
112
+ */
113
+ async function showDebugInfo({ driverConfig, pluginConfig, appiumHome }) {
114
+ const getNpmVersion = async () => {
115
+ const { stdout } = await support_1.npm.exec('--version', [], { cwd: process.cwd() });
116
+ return lodash_1.default.trim(stdout);
117
+ };
118
+ const findNpmLocation = async () => await support_1.fs.which(support_1.system.isWindows() ? 'npm.cmd' : 'npm');
119
+ const [npmVersion, npmLocation] = await bluebird_1.default.all([
120
+ ...[getNpmVersion, findNpmLocation].map((f) => getSafeResult(f, 'unknown')),
121
+ (0, build_1.updateBuildInfo)(),
122
+ ]);
123
+ const debugInfo = {
124
+ os: {
125
+ platform: node_os_1.default.platform(),
126
+ release: node_os_1.default.release(),
127
+ arch: node_os_1.default.arch(),
128
+ homedir: node_os_1.default.homedir(),
129
+ username: node_os_1.default.userInfo().username,
130
+ },
131
+ node: {
132
+ version: process.version,
133
+ arch: process.arch,
134
+ cwd: process.cwd(),
135
+ argv: process.argv,
136
+ env: process.env,
137
+ npm: {
138
+ location: npmLocation,
139
+ version: npmVersion,
140
+ },
141
+ },
142
+ appium: {
143
+ location: build_1.rootDir,
144
+ homedir: appiumHome,
145
+ build: (0, build_1.getBuildInfo)(),
146
+ drivers: driverConfig.installedExtensions,
147
+ plugins: pluginConfig.installedExtensions,
148
+ },
149
+ };
150
+ console.log(JSON.stringify(debugInfo, null, 2));
151
+ }
152
+ /**
153
+ * Ensures a directory exists and (optionally) is writeable.
154
+ *
155
+ * If the directory does not exist, this attempts to create it recursively.
156
+ *
157
+ * @throws {Error}
158
+ */
159
+ async function requireDir(root, requireWriteable = true, displayName = 'folder path') {
160
+ let stat;
161
+ try {
162
+ stat = await support_1.fs.stat(root);
163
+ }
164
+ catch (e) {
165
+ if (e.code === 'ENOENT') {
166
+ try {
167
+ await support_1.fs.mkdir(root, { recursive: true });
168
+ return;
169
+ }
170
+ catch { }
171
+ }
172
+ throw new Error(`The ${displayName} '${root}' must exist and be a valid directory`);
173
+ }
174
+ if (stat && !stat.isDirectory()) {
175
+ throw new Error(`The ${displayName} '${root}' must be a valid directory`);
176
+ }
177
+ if (requireWriteable) {
178
+ try {
179
+ await support_1.fs.access(root, support_1.fs.constants.W_OK);
180
+ }
181
+ catch {
182
+ throw new Error(`The ${displayName} '${root}' must be writeable for the current user account '${node_os_1.default.userInfo().username}'`);
183
+ }
184
+ }
185
+ }
186
+ function getNodeVersion() {
187
+ return semver.coerce(process.version);
188
+ }
189
+ /**
190
+ * Calculates the result of the given function and return its value
191
+ * or the default one if there was an exception.
192
+ */
193
+ async function getSafeResult(f, defaultValue) {
194
+ try {
195
+ return await f();
196
+ }
197
+ catch {
198
+ return defaultValue;
199
+ }
200
+ }
201
+ //# sourceMappingURL=node-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-helpers.js","sourceRoot":"","sources":["../../../lib/bootstrap/node-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { Args } from 'appium/types';
2
+ import type { ReadConfigFileResult } from './config-file';
3
+ /**
4
+ * Returns key/value pairs of server arguments that differ from schema defaults (flattened comparison).
5
+ *
6
+ * @param parsedArgs - Fully merged server args (CLI + config + defaults)
7
+ */
8
+ export declare function getNonDefaultServerArgs(parsedArgs: Args): Args;
9
+ /**
10
+ * Prints a breakdown of configuration: defaults, config file, CLI/programmatic overrides, and final merged args.
11
+ *
12
+ * The actual shape of `nonDefaultPreConfigParsedArgs` and `defaults` does not matter for the purposes of this
13
+ * function, but it's intended to be called with values of type {@link ParsedArgs} and
14
+ * `DefaultValues<true>`, respectively.
15
+ *
16
+ * @param nonDefaultPreConfigParsedArgs - CLI-only (or programmatic) args that differ from defaults
17
+ * @param configResult - Result of {@link readConfigFile}
18
+ * @param defaults - Schema default values
19
+ * @param parsedArgs - Final merged configuration
20
+ */
21
+ export declare function showConfig(nonDefaultPreConfigParsedArgs: Partial<Args>, configResult: ReadConfigFileResult, defaults: Partial<Args>, parsedArgs: Args): void;
22
+ //# sourceMappingURL=startup-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startup-config.d.ts","sourceRoot":"","sources":["../../../lib/bootstrap/startup-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAOxD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,IAAI,GAAG,IAAI,CA0E9D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CACxB,6BAA6B,EAAE,OAAO,CAAC,IAAI,CAAC,EAC5C,YAAY,EAAE,oBAAoB,EAClC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EACvB,UAAU,EAAE,IAAI,GACf,IAAI,CAmBN"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getNonDefaultServerArgs = getNonDefaultServerArgs;
7
+ exports.showConfig = showConfig;
8
+ /* eslint-disable no-console */
9
+ const lodash_1 = __importDefault(require("lodash"));
10
+ const schema_1 = require("../schema/schema");
11
+ /**
12
+ * Returns key/value pairs of server arguments that differ from schema defaults (flattened comparison).
13
+ *
14
+ * @param parsedArgs - Fully merged server args (CLI + config + defaults)
15
+ */
16
+ function getNonDefaultServerArgs(parsedArgs) {
17
+ /**
18
+ * Flattens parsed args into a single level object for comparison with
19
+ * flattened defaults across server args and extension args.
20
+ */
21
+ const flatten = (args) => {
22
+ const argSpecs = (0, schema_1.getAllArgSpecs)();
23
+ const flattened = lodash_1.default.reduce([...argSpecs.values()], (acc, argSpec) => {
24
+ if (lodash_1.default.has(args, argSpec.dest)) {
25
+ acc[argSpec.dest] = { value: lodash_1.default.get(args, argSpec.dest), argSpec };
26
+ }
27
+ return acc;
28
+ }, {});
29
+ return flattened;
30
+ };
31
+ const args = flatten(parsedArgs);
32
+ // hopefully these function names are descriptive enough
33
+ const typesDiffer = (dest) => typeof args[dest].value !== typeof defaultsFromSchema[dest];
34
+ const defaultValueIsArray = (dest) => lodash_1.default.isArray(defaultsFromSchema[dest]);
35
+ const argsValueIsArray = (dest) => lodash_1.default.isArray(args[dest].value);
36
+ const arraysDiffer = (dest) => lodash_1.default.gt(lodash_1.default.size(lodash_1.default.difference(args[dest].value, defaultsFromSchema[dest])), 0);
37
+ const valuesDiffer = (dest) => args[dest].value !== defaultsFromSchema[dest];
38
+ const defaultIsDefined = (dest) => !lodash_1.default.isUndefined(defaultsFromSchema[dest]);
39
+ // note that `_.overEvery` is like an "AND", and `_.overSome` is like an "OR"
40
+ const argValueNotArrayOrArraysDiffer = lodash_1.default.overSome([lodash_1.default.negate(argsValueIsArray), arraysDiffer]);
41
+ const defaultValueNotArrayAndValuesDiffer = lodash_1.default.overEvery([
42
+ lodash_1.default.negate(defaultValueIsArray),
43
+ valuesDiffer,
44
+ ]);
45
+ /**
46
+ * This used to be a hideous conditional, but it's broken up into a hideous function instead.
47
+ * hopefully this makes things a little more understandable.
48
+ * - checks if the default value is defined
49
+ * - if so, and the default is not an array:
50
+ * - ensures the types are the same
51
+ * - ensures the values are equal
52
+ * - if so, and the default is an array:
53
+ * - ensures the args value is an array
54
+ * - ensures the args values do not differ from the default values
55
+ */
56
+ const isNotDefault = lodash_1.default.overEvery([
57
+ defaultIsDefined,
58
+ lodash_1.default.overSome([
59
+ typesDiffer,
60
+ lodash_1.default.overEvery([defaultValueIsArray, argValueNotArrayOrArraysDiffer]),
61
+ defaultValueNotArrayAndValuesDiffer,
62
+ ]),
63
+ ]);
64
+ const defaultsFromSchema = (0, schema_1.getDefaultsForSchema)(true);
65
+ return lodash_1.default.reduce(lodash_1.default.pickBy(args, (_v, key) => isNotDefault(key)),
66
+ // explodes the flattened object back into nested one
67
+ (acc, { value, argSpec }) => lodash_1.default.set(acc, argSpec.dest, value), {});
68
+ }
69
+ /**
70
+ * Prints a breakdown of configuration: defaults, config file, CLI/programmatic overrides, and final merged args.
71
+ *
72
+ * The actual shape of `nonDefaultPreConfigParsedArgs` and `defaults` does not matter for the purposes of this
73
+ * function, but it's intended to be called with values of type {@link ParsedArgs} and
74
+ * `DefaultValues<true>`, respectively.
75
+ *
76
+ * @param nonDefaultPreConfigParsedArgs - CLI-only (or programmatic) args that differ from defaults
77
+ * @param configResult - Result of {@link readConfigFile}
78
+ * @param defaults - Schema default values
79
+ * @param parsedArgs - Final merged configuration
80
+ */
81
+ function showConfig(nonDefaultPreConfigParsedArgs, configResult, defaults, parsedArgs) {
82
+ console.log('Appium Configuration\n');
83
+ console.log('from defaults:\n');
84
+ console.dir(compactConfig(defaults));
85
+ if (configResult.config) {
86
+ console.log(`\nfrom config file at ${configResult.filepath}:\n`);
87
+ console.dir(compactConfig(configResult.config));
88
+ }
89
+ else {
90
+ console.log(`\n(no configuration file loaded)`);
91
+ }
92
+ const compactedNonDefaultPreConfigArgs = compactConfig(nonDefaultPreConfigParsedArgs);
93
+ if (lodash_1.default.isEmpty(compactedNonDefaultPreConfigArgs)) {
94
+ console.log(`\n(no CLI parameters provided)`);
95
+ }
96
+ else {
97
+ console.log('\nvia CLI or function call:\n');
98
+ console.dir(compactedNonDefaultPreConfigArgs);
99
+ }
100
+ console.log('\nfinal configuration:\n');
101
+ console.dir(compactConfig(parsedArgs));
102
+ }
103
+ /**
104
+ * Compacts an object for {@link showConfig}:
105
+ * 1. Removes `subcommand` key/value
106
+ * 2. Removes `undefined` values
107
+ * 3. Removes empty objects (but not `false` values)
108
+ * Does not operate recursively.
109
+ */
110
+ const compactConfig = lodash_1.default.partial(lodash_1.default.omitBy, lodash_1.default, (value, key) => key === 'subcommand' || lodash_1.default.isUndefined(value) || (lodash_1.default.isObject(value) && lodash_1.default.isEmpty(value)));
111
+ //# sourceMappingURL=startup-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startup-config.js","sourceRoot":"","sources":["../../../lib/bootstrap/startup-config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../lib/cli/args.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,cAAc,CAAC;AAgBzD,MAAM,MAAM,mBAAmB,GAAG,GAAG,CACnC;IAAC,IAAI,EAAE,MAAM;CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAC9C,eAAe,CAChB,CAAC;AAwBF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,SAA0C,MAAM,CAC3E,aAAa,EACb,MAAM,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CACpD,sBAgBC,CAAC;AAkLH;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,mBAAmB,CAEnD"}
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../lib/cli/args.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,cAAc,CAAC;AAgBzD,MAAM,MAAM,mBAAmB,GAAG,GAAG,CACnC;IAAC,IAAI,EAAE,MAAM;CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAC9C,eAAe,CAChB,CAAC;AAwBF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,SAA0C,MAAM,CAC3E,aAAa,EACb,MAAM,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CACpD,sBAgBC,CAAC;AAEH;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,mBAAmB,CAEnD"}
@@ -49,6 +49,15 @@ exports.getExtensionArgs = lodash_1.default.memoize(function getExtensionArgs()
49
49
  }
50
50
  return extensionArgs;
51
51
  });
52
+ /**
53
+ * Returns CLI argument definitions for the `server` command.
54
+ *
55
+ * This includes schema-derived options and additional CLI-only options which
56
+ * are intentionally disallowed in config files.
57
+ */
58
+ function getServerArgs() {
59
+ return new Map([...(0, cli_args_1.toParserArgs)(), ...serverArgsDisallowedInConfig]);
60
+ }
52
61
  /**
53
62
  * Builds options for the `list` subcommand for an extension type.
54
63
  */
@@ -210,15 +219,6 @@ function makeRunArgs(type) {
210
219
  ],
211
220
  ]);
212
221
  }
213
- /**
214
- * Returns CLI argument definitions for the `server` command.
215
- *
216
- * This includes schema-derived options and additional CLI-only options which
217
- * are intentionally disallowed in config files.
218
- */
219
- function getServerArgs() {
220
- return new Map([...(0, cli_args_1.toParserArgs)(), ...serverArgsDisallowedInConfig]);
221
- }
222
222
  /**
223
223
  * These don't make sense in the context of a config file for obvious reasons.
224
224
  */
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../lib/cli/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../lib/cli/args.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,86 @@ export type InstalledExtensionListData<ExtType extends ExtensionType = Extension
35
35
  * Return value of {@linkcode ExtensionCliCommand.list}.
36
36
  */
37
37
  export type ExtensionList<ExtType extends ExtensionType = ExtensionType> = Record<string, ExtensionListData<ExtType>>;
38
+ /**
39
+ * Return value of {@linkcode ExtensionCliCommand._run}
40
+ */
41
+ export type RunOutput = {
42
+ output?: string[];
43
+ };
44
+ /**
45
+ * Return type of {@linkcode ExtensionCliCommand.getPostInstallText}.
46
+ */
47
+ export type PostInstallText = string;
48
+ /**
49
+ * Return value of {@linkcode ExtensionCliCommand._update}.
50
+ */
51
+ export type ExtensionUpdateResult = {
52
+ errors: Record<string, Error>;
53
+ updates: Record<string, UpdateReport>;
54
+ };
55
+ /**
56
+ * Used by {@linkcode ExtensionCliCommand.getPostInstallText}
57
+ */
58
+ export type ExtensionArgs<ExtType extends ExtensionType = ExtensionType> = {
59
+ extName: string;
60
+ extData: ExtInstallReceipt<ExtType>;
61
+ };
62
+ /**
63
+ * Options for {@linkcode ExtensionCliCommand._run}.
64
+ */
65
+ type RunOptions = {
66
+ installSpec: string;
67
+ scriptName?: string;
68
+ extraArgs?: string[];
69
+ bufferOutput?: boolean;
70
+ };
71
+ /**
72
+ * Options for {@linkcode ExtensionCliCommand.doctor}.
73
+ */
74
+ type DoctorOptions = {
75
+ installSpec: string;
76
+ };
77
+ /**
78
+ * Options for {@linkcode ExtensionCliCommand._update}.
79
+ */
80
+ type ExtensionUpdateOpts = {
81
+ installSpec: string;
82
+ unsafe: boolean;
83
+ };
84
+ /**
85
+ * Part of result of {@linkcode ExtensionCliCommand._update}.
86
+ */
87
+ type UpdateReport = {
88
+ from: string;
89
+ to: string | null;
90
+ };
91
+ /**
92
+ * Options for {@linkcode ExtensionCliCommand._uninstall}.
93
+ */
94
+ type UninstallOpts = {
95
+ installSpec: string;
96
+ };
97
+ /**
98
+ * Object returned by {@linkcode ExtensionCliCommand.checkForExtensionUpdate}
99
+ */
100
+ type PossibleUpdates = {
101
+ current: string;
102
+ safeUpdate: string | null;
103
+ unsafeUpdate: string | null;
104
+ };
105
+ /**
106
+ * Options for {@linkcode ExtensionCliCommand._install}
107
+ */
108
+ type InstallOpts = {
109
+ installSpec: string;
110
+ installType: InstallType;
111
+ packageName?: string;
112
+ };
113
+ type ListOptions = {
114
+ showInstalled: boolean;
115
+ showUpdates: boolean;
116
+ verbose?: boolean;
117
+ };
38
118
  declare abstract class ExtensionCliCommand<ExtType extends ExtensionType = ExtensionType> {
39
119
  /**
40
120
  * This is the `DriverConfig` or `PluginConfig`, depending on `ExtType`.
@@ -73,15 +153,6 @@ declare abstract class ExtensionCliCommand<ExtType extends ExtensionType = Exten
73
153
  * @returns map of extension names to list data
74
154
  */
75
155
  list({ showInstalled, showUpdates, verbose }: ListOptions): Promise<ExtensionList>;
76
- /**
77
- * For any `package.json` fields which a particular type of extension requires, validate the
78
- * presence and form of those fields on the `package.json` data, throwing an error if anything is
79
- * amiss.
80
- *
81
- * @param extMetadata - the data in the "appium" field of `package.json` for an extension
82
- * @param installSpec - Extension name/spec
83
- */
84
- protected abstract validateExtensionFields(extMetadata: ExtMetadata<ExtType>, installSpec: string): void;
85
156
  /**
86
157
  * Logs a message and returns an {@linkcode Error} to throw.
87
158
  *
@@ -97,12 +168,6 @@ declare abstract class ExtensionCliCommand<ExtType extends ExtensionType = Exten
97
168
  *
98
169
  */
99
170
  protected _install({ installSpec, installType, packageName }: InstallOpts): Promise<Record<string, any>>;
100
- /**
101
- * Get the text which should be displayed to the user after an extension has been installed. This
102
- * is designed to be overridden by drivers/plugins with their own particular text.
103
- *
104
- */
105
- protected abstract getPostInstallText(args: ExtensionArgs<ExtType>): PostInstallText;
106
171
  /**
107
172
  * Uninstall an extension.
108
173
  *
@@ -233,6 +298,21 @@ declare abstract class ExtensionCliCommand<ExtType extends ExtensionType = Exten
233
298
  *
234
299
  */
235
300
  private _checkInstallCompatibility;
301
+ /**
302
+ * For any `package.json` fields which a particular type of extension requires, validate the
303
+ * presence and form of those fields on the `package.json` data, throwing an error if anything is
304
+ * amiss.
305
+ *
306
+ * @param extMetadata - the data in the "appium" field of `package.json` for an extension
307
+ * @param installSpec - Extension name/spec
308
+ */
309
+ protected abstract validateExtensionFields(extMetadata: ExtMetadata<ExtType>, installSpec: string): void;
310
+ /**
311
+ * Get the text which should be displayed to the user after an extension has been installed. This
312
+ * is designed to be overridden by drivers/plugins with their own particular text.
313
+ *
314
+ */
315
+ protected abstract getPostInstallText(args: ExtensionArgs<ExtType>): PostInstallText;
236
316
  }
237
317
  /**
238
318
  * This is needed to ensure proper module resolution for installed extensions,
@@ -244,86 +324,6 @@ declare abstract class ExtensionCliCommand<ExtType extends ExtensionType = Exten
244
324
  * @returns resolves when symlink injection has completed for all extensions
245
325
  */
246
326
  export declare function injectAppiumSymlinks(driverConfig: ExtensionConfig<any>, pluginConfig: ExtensionConfig<any>, logger: AppiumLogger): Promise<void>;
247
- /**
248
- * Options for {@linkcode ExtensionCliCommand._run}.
249
- */
250
- type RunOptions = {
251
- installSpec: string;
252
- scriptName?: string;
253
- extraArgs?: string[];
254
- bufferOutput?: boolean;
255
- };
256
- /**
257
- * Options for {@linkcode ExtensionCliCommand.doctor}.
258
- */
259
- type DoctorOptions = {
260
- installSpec: string;
261
- };
262
- /**
263
- * Return value of {@linkcode ExtensionCliCommand._run}
264
- */
265
- export type RunOutput = {
266
- output?: string[];
267
- };
268
- /**
269
- * Return type of {@linkcode ExtensionCliCommand.getPostInstallText}.
270
- */
271
- export type PostInstallText = string;
272
- /**
273
- * Options for {@linkcode ExtensionCliCommand._update}.
274
- */
275
- type ExtensionUpdateOpts = {
276
- installSpec: string;
277
- unsafe: boolean;
278
- };
279
- /**
280
- * Part of result of {@linkcode ExtensionCliCommand._update}.
281
- */
282
- type UpdateReport = {
283
- from: string;
284
- to: string | null;
285
- };
286
- /**
287
- * Return value of {@linkcode ExtensionCliCommand._update}.
288
- */
289
- export type ExtensionUpdateResult = {
290
- errors: Record<string, Error>;
291
- updates: Record<string, UpdateReport>;
292
- };
293
- /**
294
- * Options for {@linkcode ExtensionCliCommand._uninstall}.
295
- */
296
- type UninstallOpts = {
297
- installSpec: string;
298
- };
299
- /**
300
- * Used by {@linkcode ExtensionCliCommand.getPostInstallText}
301
- */
302
- export type ExtensionArgs<ExtType extends ExtensionType = ExtensionType> = {
303
- extName: string;
304
- extData: ExtInstallReceipt<ExtType>;
305
- };
306
- /**
307
- * Object returned by {@linkcode ExtensionCliCommand.checkForExtensionUpdate}
308
- */
309
- type PossibleUpdates = {
310
- current: string;
311
- safeUpdate: string | null;
312
- unsafeUpdate: string | null;
313
- };
314
- /**
315
- * Options for {@linkcode ExtensionCliCommand._install}
316
- */
317
- type InstallOpts = {
318
- installSpec: string;
319
- installType: InstallType;
320
- packageName?: string;
321
- };
322
- type ListOptions = {
323
- showInstalled: boolean;
324
- showUpdates: boolean;
325
- verbose?: boolean;
326
- };
327
327
  export default ExtensionCliCommand;
328
328
  export { ExtensionCliCommand as ExtensionCommand };
329
329
  //# sourceMappingURL=extension-command.d.ts.map