@appium/docutils 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/LICENSE +1 -1
  2. package/build/lib/builder/deploy.d.ts.map +1 -1
  3. package/build/lib/builder/deploy.js +6 -2
  4. package/build/lib/builder/deploy.js.map +1 -1
  5. package/build/lib/builder/index.d.ts +4 -0
  6. package/build/lib/builder/index.d.ts.map +1 -1
  7. package/build/lib/builder/index.js +4 -0
  8. package/build/lib/builder/index.js.map +1 -1
  9. package/build/lib/builder/nav.d.ts +1 -1
  10. package/build/lib/builder/nav.d.ts.map +1 -1
  11. package/build/lib/builder/nav.js +3 -3
  12. package/build/lib/builder/nav.js.map +1 -1
  13. package/build/lib/builder/reference.d.ts +1 -1
  14. package/build/lib/builder/reference.d.ts.map +1 -1
  15. package/build/lib/builder/reference.js +1 -19
  16. package/build/lib/builder/reference.js.map +1 -1
  17. package/build/lib/builder/site.d.ts.map +1 -1
  18. package/build/lib/builder/site.js +4 -3
  19. package/build/lib/builder/site.js.map +1 -1
  20. package/build/lib/cli/check.d.ts +19 -0
  21. package/build/lib/cli/check.d.ts.map +1 -0
  22. package/build/lib/cli/check.js +58 -0
  23. package/build/lib/cli/check.js.map +1 -0
  24. package/build/lib/cli/command/build.d.ts +42 -29
  25. package/build/lib/cli/command/build.d.ts.map +1 -1
  26. package/build/lib/cli/command/build.js +55 -39
  27. package/build/lib/cli/command/build.js.map +1 -1
  28. package/build/lib/cli/command/index.d.ts +4 -0
  29. package/build/lib/cli/command/index.d.ts.map +1 -1
  30. package/build/lib/cli/command/index.js +4 -0
  31. package/build/lib/cli/command/index.js.map +1 -1
  32. package/build/lib/cli/command/init.d.ts +42 -27
  33. package/build/lib/cli/command/init.d.ts.map +1 -1
  34. package/build/lib/cli/command/init.js +51 -28
  35. package/build/lib/cli/command/init.js.map +1 -1
  36. package/build/lib/cli/command/validate.d.ts +21 -15
  37. package/build/lib/cli/command/validate.d.ts.map +1 -1
  38. package/build/lib/cli/command/validate.js +30 -21
  39. package/build/lib/cli/command/validate.js.map +1 -1
  40. package/build/lib/cli/config.js +1 -1
  41. package/build/lib/cli/config.js.map +1 -1
  42. package/build/lib/cli/index.d.ts.map +1 -1
  43. package/build/lib/cli/index.js +29 -12
  44. package/build/lib/cli/index.js.map +1 -1
  45. package/build/lib/constants.d.ts +4 -0
  46. package/build/lib/constants.d.ts.map +1 -1
  47. package/build/lib/constants.js +5 -1
  48. package/build/lib/constants.js.map +1 -1
  49. package/build/lib/error.d.ts +5 -0
  50. package/build/lib/error.d.ts.map +1 -1
  51. package/build/lib/error.js +5 -0
  52. package/build/lib/error.js.map +1 -1
  53. package/build/lib/fs.d.ts +1 -1
  54. package/build/lib/fs.d.ts.map +1 -1
  55. package/build/lib/fs.js +2 -2
  56. package/build/lib/fs.js.map +1 -1
  57. package/build/lib/index.d.ts +4 -0
  58. package/build/lib/index.d.ts.map +1 -1
  59. package/build/lib/index.js +4 -0
  60. package/build/lib/index.js.map +1 -1
  61. package/build/lib/init.d.ts +24 -26
  62. package/build/lib/init.d.ts.map +1 -1
  63. package/build/lib/init.js +12 -7
  64. package/build/lib/init.js.map +1 -1
  65. package/build/lib/logger.js +0 -4
  66. package/build/lib/logger.js.map +1 -1
  67. package/build/lib/mike.d.ts.map +1 -1
  68. package/build/lib/mike.js +4 -0
  69. package/build/lib/mike.js.map +1 -1
  70. package/build/lib/model.d.ts +6 -10
  71. package/build/lib/model.d.ts.map +1 -1
  72. package/build/lib/scaffold.d.ts +5 -5
  73. package/build/lib/scaffold.d.ts.map +1 -1
  74. package/build/lib/util.d.ts +6 -3
  75. package/build/lib/util.d.ts.map +1 -1
  76. package/build/lib/util.js.map +1 -1
  77. package/build/lib/validate.d.ts +5 -2
  78. package/build/lib/validate.d.ts.map +1 -1
  79. package/build/lib/validate.js +9 -7
  80. package/build/lib/validate.js.map +1 -1
  81. package/lib/builder/deploy.ts +9 -3
  82. package/lib/builder/index.ts +5 -0
  83. package/lib/builder/nav.ts +2 -3
  84. package/lib/builder/reference.ts +2 -22
  85. package/lib/builder/site.ts +6 -5
  86. package/lib/cli/check.ts +87 -0
  87. package/lib/cli/command/build.ts +61 -46
  88. package/lib/cli/command/index.ts +5 -0
  89. package/lib/cli/command/init.ts +54 -32
  90. package/lib/cli/command/validate.ts +35 -28
  91. package/lib/cli/index.ts +23 -4
  92. package/lib/constants.ts +5 -0
  93. package/lib/error.ts +6 -0
  94. package/lib/fs.ts +6 -3
  95. package/lib/index.ts +5 -0
  96. package/lib/init.ts +23 -6
  97. package/lib/logger.ts +6 -11
  98. package/lib/mike.js +5 -0
  99. package/lib/model.ts +3 -9
  100. package/lib/util.ts +4 -1
  101. package/lib/validate.ts +10 -9
  102. package/package.json +10 -12
  103. package/requirements.txt +1 -1
  104. package/build/lib/build/mkdocs.d.ts +0 -58
  105. package/build/lib/build/mkdocs.d.ts.map +0 -1
  106. package/build/lib/build/mkdocs.js +0 -80
  107. package/build/lib/build/mkdocs.js.map +0 -1
  108. package/build/lib/build/typedoc.d.ts +0 -55
  109. package/build/lib/build/typedoc.d.ts.map +0 -1
  110. package/build/lib/build/typedoc.js +0 -120
  111. package/build/lib/build/typedoc.js.map +0 -1
  112. package/build/lib/build-api.d.ts +0 -18
  113. package/build/lib/build-api.d.ts.map +0 -1
  114. package/build/lib/build-api.js +0 -75
  115. package/build/lib/build-api.js.map +0 -1
  116. package/build/lib/build.d.ts +0 -21
  117. package/build/lib/build.d.ts.map +0 -1
  118. package/build/lib/build.js +0 -71
  119. package/build/lib/build.js.map +0 -1
  120. package/build/lib/cli/command/deploy.d.ts +0 -1
  121. package/build/lib/cli/command/deploy.d.ts.map +0 -1
  122. package/build/lib/cli/command/deploy.js +0 -2
  123. package/build/lib/cli/command/deploy.js.map +0 -1
  124. package/build/lib/cli/command-init.d.ts +0 -143
  125. package/build/lib/cli/command-init.d.ts.map +0 -1
  126. package/build/lib/cli/command-init.js +0 -164
  127. package/build/lib/cli/command-init.js.map +0 -1
  128. package/build/lib/cli/command-validate.d.ts +0 -52
  129. package/build/lib/cli/command-validate.d.ts.map +0 -1
  130. package/build/lib/cli/command-validate.js +0 -66
  131. package/build/lib/cli/command-validate.js.map +0 -1
  132. package/build/lib/cli/init.d.ts +0 -143
  133. package/build/lib/cli/init.d.ts.map +0 -1
  134. package/build/lib/cli/init.js +0 -164
  135. package/build/lib/cli/init.js.map +0 -1
  136. package/build/lib/cli/options.d.ts +0 -1
  137. package/build/lib/cli/options.d.ts.map +0 -1
  138. package/build/lib/cli/options.js +0 -2
  139. package/build/lib/cli/options.js.map +0 -1
  140. package/build/lib/cli/validate.d.ts +0 -1
  141. package/build/lib/cli/validate.d.ts.map +0 -1
  142. package/build/lib/cli/validate.js +0 -2
  143. package/build/lib/cli/validate.js.map +0 -1
  144. package/build/lib/cli.d.ts +0 -10
  145. package/build/lib/cli.d.ts.map +0 -1
  146. package/build/lib/cli.js +0 -328
  147. package/build/lib/cli.js.map +0 -1
  148. package/build/lib/init-task.d.ts +0 -49
  149. package/build/lib/init-task.d.ts.map +0 -1
  150. package/build/lib/init-task.js +0 -95
  151. package/build/lib/init-task.js.map +0 -1
  152. package/build/lib/io.d.ts +0 -1
  153. package/build/lib/io.d.ts.map +0 -1
  154. package/build/lib/io.js +0 -2
  155. package/build/lib/io.js.map +0 -1
  156. package/build/lib/mkdocs.d.ts +0 -58
  157. package/build/lib/mkdocs.d.ts.map +0 -1
  158. package/build/lib/mkdocs.js +0 -77
  159. package/build/lib/mkdocs.js.map +0 -1
  160. package/build/lib/nav.d.ts +0 -47
  161. package/build/lib/nav.d.ts.map +0 -1
  162. package/build/lib/nav.js +0 -132
  163. package/build/lib/nav.js.map +0 -1
  164. package/build/lib/test.d.ts +0 -9
  165. package/build/lib/test.d.ts.map +0 -1
  166. package/build/lib/test.js +0 -2
  167. package/build/lib/test.js.map +0 -1
  168. package/build/lib/typedoc.d.ts +0 -55
  169. package/build/lib/typedoc.d.ts.map +0 -1
  170. package/build/lib/typedoc.js +0 -122
  171. package/build/lib/typedoc.js.map +0 -1
  172. package/build/lib/types.d.ts +0 -52
  173. package/build/lib/types.d.ts.map +0 -1
  174. package/build/lib/types.js +0 -7
  175. package/build/lib/types.js.map +0 -1
  176. package/build/lib/validation/base-validator.d.ts +0 -218
  177. package/build/lib/validation/base-validator.d.ts.map +0 -1
  178. package/build/lib/validation/base-validator.js +0 -453
  179. package/build/lib/validation/base-validator.js.map +0 -1
  180. package/build/lib/validation/mkdocs-validator.d.ts +0 -5
  181. package/build/lib/validation/mkdocs-validator.d.ts.map +0 -1
  182. package/build/lib/validation/mkdocs-validator.js +0 -54
  183. package/build/lib/validation/mkdocs-validator.js.map +0 -1
  184. package/build/lib/validation/python-validator.d.ts +0 -1
  185. package/build/lib/validation/python-validator.d.ts.map +0 -1
  186. package/build/lib/validation/python-validator.js +0 -2
  187. package/build/lib/validation/python-validator.js.map +0 -1
  188. package/build/lib/validation/python.d.ts +0 -1
  189. package/build/lib/validation/python.d.ts.map +0 -1
  190. package/build/lib/validation/python.js +0 -2
  191. package/build/lib/validation/python.js.map +0 -1
  192. package/build/lib/validation/validate.d.ts +0 -221
  193. package/build/lib/validation/validate.d.ts.map +0 -1
  194. package/build/lib/validation/validate.js +0 -508
  195. package/build/lib/validation/validate.js.map +0 -1
  196. package/build/lib/validation/validator.d.ts +0 -220
  197. package/build/lib/validation/validator.d.ts.map +0 -1
  198. package/build/lib/validation/validator.js +0 -470
  199. package/build/lib/validation/validator.js.map +0 -1
  200. package/build/test/unit/mike.spec.js +0 -17
  201. package/build/test/unit/mike.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Validates an environment for building documentation
3
+ * Validates an environment for building documentation; used by `validate` command
4
4
  *
5
5
  * @module
6
6
  */
@@ -14,7 +14,6 @@ const chalk_1 = __importDefault(require("chalk"));
14
14
  const lodash_1 = __importDefault(require("lodash"));
15
15
  const node_events_1 = require("node:events");
16
16
  const node_path_1 = __importDefault(require("node:path"));
17
- const pluralize_1 = __importDefault(require("pluralize"));
18
17
  const semver_1 = require("semver");
19
18
  const teen_process_1 = require("teen_process");
20
19
  const constants_1 = require("./constants");
@@ -163,7 +162,7 @@ class DocutilsValidator extends node_events_1.EventEmitter {
163
162
  if (this.requirementsTxt) {
164
163
  return this.requirementsTxt;
165
164
  }
166
- let requiredPackages = [];
165
+ const requiredPackages = [];
167
166
  try {
168
167
  let requirementsTxt = await support_1.fs.readFile(constants_1.REQUIREMENTS_TXT_PATH, 'utf8');
169
168
  requirementsTxt = requirementsTxt.trim();
@@ -185,6 +184,9 @@ class DocutilsValidator extends node_events_1.EventEmitter {
185
184
  reset() {
186
185
  this.emittedErrors.clear();
187
186
  }
187
+ /**
188
+ * Validates that the correct version of `mkdocs` is installed
189
+ */
188
190
  async validateMkDocs() {
189
191
  let mkDocsPath;
190
192
  try {
@@ -318,12 +320,12 @@ class DocutilsValidator extends node_events_1.EventEmitter {
318
320
  }
319
321
  const msgParts = [];
320
322
  if (missingPackages.length) {
321
- msgParts.push(`The following required ${(0, pluralize_1.default)('package', missingPackages.length)} could not be found:\n${missingPackages
323
+ msgParts.push(`The following required ${support_1.util.pluralize('package', missingPackages.length)} could not be found:\n${missingPackages
322
324
  .map((p) => (0, chalk_1.default) `- {yellow ${p.name}} @ {yellow ${p.version}}`)
323
325
  .join('\n')}`);
324
326
  }
325
327
  if (invalidVersionPackages.length) {
326
- msgParts.push(`The following required ${(0, pluralize_1.default)('package', invalidVersionPackages.length)} are installed, but at the wrong version:\n${invalidVersionPackages
328
+ msgParts.push(`The following required ${support_1.util.pluralize('package', invalidVersionPackages.length)} are installed, but at the wrong version:\n${invalidVersionPackages
327
329
  .map(([expected, actual]) => (0, chalk_1.default) `- {yellow ${expected.name}} @ {yellow ${expected.version}} (found {red ${actual.version}})`)
328
330
  .join('\n')}`);
329
331
  }
@@ -368,7 +370,7 @@ class DocutilsValidator extends node_events_1.EventEmitter {
368
370
  return this.fail(`Could not find ${constants_1.NAME_TYPEDOC} executable from ${pkgDir}`);
369
371
  }
370
372
  if (rawTypeDocVersion) {
371
- let match = rawTypeDocVersion.match(TYPEDOC_VERSION_REGEX);
373
+ const match = rawTypeDocVersion.match(TYPEDOC_VERSION_REGEX);
372
374
  if (match) {
373
375
  typeDocVersion = match[1];
374
376
  }
@@ -438,7 +440,7 @@ class DocutilsValidator extends node_events_1.EventEmitter {
438
440
  catch {
439
441
  return this.fail(`Could not find TypeScript compiler ("tsc") from ${pkgDir}`);
440
442
  }
441
- let match = rawTypeScriptVersion.match(TYPESCRIPT_VERSION_REGEX);
443
+ const match = rawTypeScriptVersion.match(TYPESCRIPT_VERSION_REGEX);
442
444
  if (match) {
443
445
  typeScriptVersion = match[1];
444
446
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
 
7
7
  import _ from 'lodash';
8
- import {exec, SubProcess, TeenProcessExecOptions} from 'teen_process';
8
+ import {exec, SubProcess, SubProcessOptions, TeenProcessExecOptions} from 'teen_process';
9
9
  import path from 'node:path';
10
10
  import {
11
11
  DEFAULT_DEPLOY_BRANCH,
@@ -35,8 +35,9 @@ async function doServe(
35
35
  ) {
36
36
  mikePath = mikePath ?? (await whichMike());
37
37
  const finalArgs = ['serve', ...args];
38
- log.debug('Launching %s with args: %O', mikePath, finalArgs);
39
- const proc = new SubProcess(mikePath, finalArgs);
38
+ const opts: SubProcessOptions = {stdio: 'inherit'};
39
+ log.debug('Launching %s with args: %s', mikePath, finalArgs);
40
+ const proc = new SubProcess(mikePath, finalArgs, opts);
40
41
  return await proc.start(startDetector, detach, timeoutMs);
41
42
  }
42
43
 
@@ -99,6 +100,10 @@ export async function deploy({
99
100
  );
100
101
  }
101
102
  version = version ?? (await findDeployVersion(packageJsonPath, cwd));
103
+
104
+ // substitute %s in message with version
105
+ message = message?.replace('%s', version);
106
+
102
107
  const mikeOpts = {
103
108
  'config-file': mkDocsYmlPath,
104
109
  push,
@@ -118,6 +123,7 @@ export async function deploy({
118
123
  if (alias) {
119
124
  mikeArgs.push(alias);
120
125
  }
126
+ stop(); // discard
121
127
  // unsure about how SIGHUP is handled here
122
128
  await doServe(mikeArgs, serveOpts);
123
129
  } else {
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Exports APIs used by build-related commands
3
+ * @module
4
+ */
5
+
1
6
  export * from './deploy';
2
7
  export * from './site';
3
8
  export * from './reference';
@@ -197,7 +197,7 @@ async function getNavItemsForDir(
197
197
  const rootHeaderKeypath = getRootHeaderKeypath(navHeaderItems, navHeader);
198
198
 
199
199
  for (const fileOrUrl of referenceOutputFilepaths) {
200
- let offset = navHeaderItems.findIndex((item) => item.fileOrUrl === fileOrUrl);
200
+ const offset = navHeaderItems.findIndex((item) => item.fileOrUrl === fileOrUrl);
201
201
  const newOffset = offset >= 0 ? offset : navHeaderItems.length;
202
202
  const data = navHeaderItems[offset];
203
203
  log.warn(rootHeaderKeypath, newOffset, data);
@@ -214,7 +214,7 @@ async function getNavItemsForDir(
214
214
  }
215
215
  } else {
216
216
  log.debug('No items found in header %s', navHeader);
217
- let navOffset = nav.length;
217
+ const navOffset = nav.length;
218
218
  for (const [idx, newRefFilepath] of referenceOutputFilepaths.entries()) {
219
219
  newNavHeaderItems.push({
220
220
  keypath: `${navOffset}.${navHeader}.${idx}`,
@@ -254,7 +254,6 @@ export async function updateNav({
254
254
  mkdocsYml: mkDocsYmlPath,
255
255
  typedocJson: typeDocJsonPath,
256
256
  all = false,
257
- dryRun = false,
258
257
  }: UpdateNavOpts = {}) {
259
258
  // we need `mkdocs.yml` to update
260
259
  // and we need `typedoc.json` to know where to look for the command docs
@@ -5,7 +5,6 @@
5
5
  */
6
6
 
7
7
  import {fs} from '@appium/support';
8
- import glob from 'glob';
9
8
  import _ from 'lodash';
10
9
  import path from 'node:path';
11
10
  import {Application, ArgumentsReader, TypeDocOptions, TypeDocReader} from 'typedoc';
@@ -16,28 +15,12 @@ import {
16
15
  NAME_TYPEDOC_JSON,
17
16
  } from '../constants';
18
17
  import {DocutilsError} from '../error';
19
- import {findPkgDir, findTypeDocJsonPath, readTypedocJson} from '../fs';
18
+ import {findTypeDocJsonPath, readTypedocJson} from '../fs';
20
19
  import logger from '../logger';
21
20
  import {argify, relative, stopwatch} from '../util';
22
21
 
23
22
  const log = logger.withTag('builder:reference');
24
23
 
25
- /**
26
- * Replaces TypeDoc's homebrew "glob" implementation with a real one
27
- *
28
- * This cannot be done via `require('typedoc')` or `import` due to the file being excluded
29
- * from the export map in its `package.json`.
30
- * @see https://github.com/TypeStrong/typedoc/issues/2151
31
- */
32
- const monkeyPatchTypedoc = _.once(async () => {
33
- const typedocDir = await findPkgDir(require.resolve('typedoc'));
34
- if (!typedocDir) {
35
- throw new DocutilsError('Could not find TypeDoc package directory; is it installed?');
36
- }
37
- const tdFs = require(path.join(typedocDir, 'dist', 'lib', 'utils', 'fs.js'));
38
- tdFs.glob = glob.sync;
39
- });
40
-
41
24
  /**
42
25
  * Executes TypeDoc _in the current process_
43
26
  *
@@ -48,9 +31,6 @@ const monkeyPatchTypedoc = _.once(async () => {
48
31
  * @param opts - TypeDoc options
49
32
  */
50
33
  export async function runTypedoc(typeDocJsonPath: string, opts: Record<string, string>) {
51
- await monkeyPatchTypedoc();
52
- log.debug('Monkeypatched TypeDoc');
53
-
54
34
  const args = argify(opts);
55
35
  log.debug('TypeDoc args:', args);
56
36
  const app = new Application();
@@ -179,7 +159,7 @@ export async function buildReferenceDocs({
179
159
 
180
160
  try {
181
161
  await runTypedoc(typeDocJsonPath, extraTypedocOpts);
182
- let finalOut = (typeDocJson.out ?? out) as string;
162
+ const finalOut = (typeDocJson.out ?? out) as string;
183
163
  log.success(
184
164
  'Reference docs built at %s (%dms)',
185
165
  path.isAbsolute(finalOut) ? relativePath(finalOut) : finalOut,
@@ -6,8 +6,8 @@
6
6
  */
7
7
 
8
8
  import path from 'node:path';
9
- import {exec, SubProcess, TeenProcessExecOptions} from 'teen_process';
10
- import {NAME_BIN, NAME_MKDOCS, NAME_MKDOCS_YML} from '../constants';
9
+ import {exec, SubProcess, SubProcessOptions, TeenProcessExecOptions} from 'teen_process';
10
+ import {NAME_BIN, NAME_THEME, NAME_MKDOCS_YML} from '../constants';
11
11
  import {DocutilsError} from '../error';
12
12
  import {findMkDocsYml, readMkDocsYml, whichMkDocs} from '../fs';
13
13
  import logger from '../logger';
@@ -28,8 +28,9 @@ async function doServe(
28
28
  ) {
29
29
  mkDocsPath = mkDocsPath ?? (await whichMkDocs());
30
30
  const finalArgs = ['serve', ...args];
31
- log.debug('Launching %s with args: %O', mkDocsPath, finalArgs);
32
- const proc = new SubProcess(mkDocsPath, finalArgs);
31
+ const opts: SubProcessOptions = {stdio: 'inherit'};
32
+ log.debug('Launching %s with args: %s', mkDocsPath, finalArgs);
33
+ const proc = new SubProcess(mkDocsPath, finalArgs, opts);
33
34
  return await proc.start(startDetector, detach, timeoutMs);
34
35
  }
35
36
 
@@ -57,7 +58,7 @@ async function doBuild(
57
58
  export async function buildSite({
58
59
  mkdocsYml: mkDocsYmlPath,
59
60
  siteDir,
60
- theme = NAME_MKDOCS,
61
+ theme = NAME_THEME,
61
62
  cwd = process.cwd(),
62
63
  serve = false,
63
64
  serveOpts,
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Provides functions to validate user-provided options as part of Yargs' post-parsing "check" phase
3
+ * @module
4
+ */
5
+
6
+ import {fs, util} from '@appium/support';
7
+ import _ from 'lodash';
8
+ import type {Options} from 'yargs';
9
+ import logger from '../logger';
10
+
11
+ const log = logger.withTag('check');
12
+
13
+ /**
14
+ * Given a list of objects with `id` and `path` props, filters out the ones that do not exist
15
+ * @param paths Filepaths
16
+ * @returns Missing files
17
+ */
18
+ async function filterMissing(paths: MissingFileData[]): Promise<MissingFileData[]> {
19
+ const exists = await Promise.all(
20
+ paths.map(async ({id, path}) => ({id, path, exists: await fs.exists(path)}))
21
+ );
22
+ const results = _.reject(exists, 'exists');
23
+ return _.map(results, (result) => _.omit(result, 'exists'));
24
+ }
25
+
26
+ /**
27
+ * Data structure describing a missing file; returned by {@linkcode filterMissing}
28
+ */
29
+ interface MissingFileData {
30
+ /**
31
+ * Arbitrary identifier; intent was to map to an option name
32
+ */
33
+ id: string;
34
+ /**
35
+ * Normalized filepath
36
+ */
37
+ path: string;
38
+ }
39
+
40
+ /**
41
+ * Takes user-provided paths and checks for existence.
42
+ *
43
+ * Filters options to consider based on group name only.
44
+ *
45
+ * Meant to be used as a "fail-fast" strategy on the CLI, so we don't go all the way through some
46
+ * expensive behavior before realizing we're missing a path.
47
+ * @param opts Options object for a yargs command
48
+ * @param group Group name to filter on
49
+ * @param argv User-provided args
50
+ * @returns `true` if all paths exist or otherwise an error message
51
+ */
52
+ export async function checkMissingPaths<T extends Record<string, Options>>(
53
+ opts: T,
54
+ group: string,
55
+ argv: Record<string, unknown>
56
+ ): Promise<true | string> {
57
+ const argsToCheck = _.keys(
58
+ _.pickBy(opts, (opt: Options, id: string) => opt?.group === group && id in argv) as Partial<T>
59
+ );
60
+
61
+ // yargs is pretty loose about allowing CLI args multiple times, and the value could potentially
62
+ // be a `string[]` instead of `string`; we don't want to allow more than one path per arg.
63
+ if (!argsToCheck.every((id) => _.isString(argv[id]))) {
64
+ return 'Paths may only be provided once each';
65
+ }
66
+
67
+ const pathsToCheck: MissingFileData[] = _.map(argsToCheck, (id) => ({
68
+ id,
69
+ path: String(argv[id]), // this must be a string per the above check
70
+ }));
71
+
72
+ log.debug(
73
+ 'Checking for existence of %s: %s',
74
+ util.pluralize('path', pathsToCheck.length),
75
+ _.map(pathsToCheck, 'path')
76
+ );
77
+
78
+ const missingPaths = await filterMissing(pathsToCheck);
79
+
80
+ if (missingPaths.length) {
81
+ return missingPaths
82
+ .map(({id, path}) => `Path specified using --${_.kebabCase(id)} (${path}) does not exist`)
83
+ .join('\n');
84
+ }
85
+
86
+ return true;
87
+ }
@@ -1,53 +1,64 @@
1
- import {CommandModule, InferredOptionTypes, Options} from 'yargs';
1
+ /**
2
+ * Yargs command module for the `build` command.
3
+ * @module
4
+ */
5
+
6
+ import path from 'node:path';
7
+ import type {CommandModule, InferredOptionTypes, Options} from 'yargs';
2
8
  import {buildReferenceDocs, buildSite, deploy, updateNav} from '../../builder';
3
9
  import {NAME_BIN} from '../../constants';
4
10
  import logger from '../../logger';
5
11
  import {stopwatch} from '../../util';
12
+ import {checkMissingPaths} from '../check';
6
13
 
7
14
  const log = logger.withTag('build');
8
15
 
9
- const NAME_GROUP_BUILD = 'Build Options:';
10
- const NAME_GROUP_DEPLOY = 'Deployment Options:';
11
- const NAME_GROUP_SERVE = 'Serve Options:';
12
- const NAME_GROUP_BUILD_PATHS = 'Paths:';
16
+ enum BuildCommandGroup {
17
+ Build = 'Build Config:',
18
+ Deploy = 'Deployment Config:',
19
+ Serve = 'Dev Server Config:',
20
+ BuildPaths = 'Custom Paths:',
21
+ }
13
22
 
14
23
  const opts = {
15
24
  reference: {
16
25
  describe: 'Run TypeDoc command API reference build (Markdown)',
17
- group: NAME_GROUP_BUILD,
26
+ group: BuildCommandGroup.Build,
18
27
  type: 'boolean',
19
28
  default: true,
20
29
  },
21
30
  site: {
22
31
  describe: 'Run MkDocs build (HTML)',
23
- group: NAME_GROUP_BUILD,
32
+ group: BuildCommandGroup.Build,
24
33
  type: 'boolean',
25
34
  default: true,
26
35
  },
27
36
  'site-dir': {
28
37
  alias: 'd',
29
38
  describe: 'HTML output directory',
30
- group: NAME_GROUP_BUILD_PATHS,
39
+ group: BuildCommandGroup.Build,
31
40
  nargs: 1,
32
41
  requiresArg: true,
33
42
  type: 'string',
34
43
  normalize: true,
44
+ coerce: path.resolve,
35
45
  implies: 'site',
36
46
  defaultDescription: '(from mkdocs.yml)',
37
47
  },
38
48
  'package-json': {
39
49
  defaultDescription: './package.json',
40
50
  describe: 'Path to package.json',
41
- group: NAME_GROUP_BUILD_PATHS,
51
+ group: BuildCommandGroup.BuildPaths,
42
52
  nargs: 1,
43
53
  normalize: true,
54
+ coerce: path.resolve,
44
55
  requiresArg: true,
45
56
  type: 'string',
46
57
  },
47
58
  title: {
48
59
  defaultDescription: '(extension package name)',
49
60
  describe: 'Title of the API reference',
50
- group: NAME_GROUP_BUILD,
61
+ group: BuildCommandGroup.Build,
51
62
  nargs: 1,
52
63
  requiresArg: true,
53
64
  type: 'string',
@@ -55,45 +66,48 @@ const opts = {
55
66
  'tsconfig-json': {
56
67
  defaultDescription: './tsconfig.json',
57
68
  describe: 'Path to tsconfig.json',
58
- group: NAME_GROUP_BUILD_PATHS,
69
+ group: BuildCommandGroup.BuildPaths,
59
70
  nargs: 1,
60
71
  normalize: true,
61
72
  requiresArg: true,
73
+ coerce: path.resolve,
62
74
  type: 'string',
63
75
  },
64
76
  'mkdocs-yml': {
65
77
  defaultDescription: './mkdocs.yml',
66
78
  description: 'Path to mkdocs.yml',
67
- group: NAME_GROUP_BUILD_PATHS,
79
+ group: BuildCommandGroup.BuildPaths,
68
80
  nargs: 1,
69
81
  normalize: true,
70
82
  requiresArg: true,
83
+ coerce: path.resolve,
71
84
  type: 'string',
72
85
  },
73
86
  'typedoc-json': {
74
87
  defaultDescription: './typedoc.json',
75
88
  describe: 'Path to typedoc.json',
76
- group: NAME_GROUP_BUILD_PATHS,
89
+ group: BuildCommandGroup.BuildPaths,
77
90
  nargs: 1,
78
91
  normalize: true,
79
92
  requiresArg: true,
93
+ coerce: path.resolve,
80
94
  type: 'string',
81
95
  },
82
96
  all: {
83
97
  describe: 'Output all reference docs (not just Appium comands)',
84
- group: NAME_GROUP_BUILD,
98
+ group: BuildCommandGroup.Build,
85
99
  implies: 'site',
86
100
  type: 'boolean',
87
101
  },
88
102
  deploy: {
89
- describe: 'Commit HTML output',
90
- group: NAME_GROUP_DEPLOY,
103
+ describe: 'Commit HTML output to a branch using mike',
104
+ group: BuildCommandGroup.Deploy,
91
105
  type: 'boolean',
92
106
  implies: 'site',
93
107
  },
94
108
  push: {
95
109
  describe: 'Push after deploy',
96
- group: NAME_GROUP_DEPLOY,
110
+ group: BuildCommandGroup.Deploy,
97
111
  type: 'boolean',
98
112
  implies: 'deploy',
99
113
  },
@@ -101,7 +115,7 @@ const opts = {
101
115
  alias: 'b',
102
116
  describe: 'Branch to commit to',
103
117
  implies: 'deploy',
104
- group: NAME_GROUP_DEPLOY,
118
+ group: BuildCommandGroup.Deploy,
105
119
  type: 'string',
106
120
  requiresArg: true,
107
121
  nargs: 1,
@@ -111,7 +125,7 @@ const opts = {
111
125
  alias: 'r',
112
126
  describe: 'Remote to push to',
113
127
  implies: ['deploy', 'push'],
114
- group: NAME_GROUP_DEPLOY,
128
+ group: BuildCommandGroup.Deploy,
115
129
  type: 'string',
116
130
  requiresArg: true,
117
131
  nargs: 1,
@@ -120,16 +134,16 @@ const opts = {
120
134
  prefix: {
121
135
  describe: 'Subdirectory within <branch> to commit to',
122
136
  implies: ['deploy', 'branch'],
123
- group: NAME_GROUP_DEPLOY,
137
+ group: BuildCommandGroup.Deploy,
124
138
  type: 'string',
125
139
  nargs: 1,
126
140
  requiresArg: true,
127
141
  },
128
142
  message: {
129
143
  alias: 'm',
130
- describe: 'Commit message',
144
+ describe: 'Commit message. Use "%s" for version placeholder',
131
145
  implies: 'deploy',
132
- group: NAME_GROUP_DEPLOY,
146
+ group: BuildCommandGroup.Deploy,
133
147
  type: 'string',
134
148
  nargs: 1,
135
149
  requiresArg: true,
@@ -137,7 +151,7 @@ const opts = {
137
151
  'deploy-version': {
138
152
  describe: 'Version (directory) to deploy build to',
139
153
  implies: 'deploy',
140
- group: NAME_GROUP_DEPLOY,
154
+ group: BuildCommandGroup.Deploy,
141
155
  type: 'string',
142
156
  nargs: 1,
143
157
  requiresArg: true,
@@ -146,7 +160,7 @@ const opts = {
146
160
  alias: {
147
161
  describe: 'Alias for the build (e.g., "latest"); triggers alias update',
148
162
  implies: 'deploy',
149
- group: NAME_GROUP_DEPLOY,
163
+ group: BuildCommandGroup.Deploy,
150
164
  type: 'string',
151
165
  nargs: 1,
152
166
  requiresArg: true,
@@ -155,18 +169,18 @@ const opts = {
155
169
  rebase: {
156
170
  describe: 'Rebase <branch> with remote before deploy',
157
171
  implies: ['deploy', 'branch', 'remote'],
158
- group: NAME_GROUP_DEPLOY,
172
+ group: BuildCommandGroup.Deploy,
159
173
  type: 'boolean',
160
174
  },
161
175
  serve: {
162
176
  describe: 'Start development server',
163
- group: NAME_GROUP_SERVE,
177
+ group: BuildCommandGroup.Serve,
164
178
  type: 'boolean',
165
179
  },
166
180
  port: {
167
181
  alias: 'p',
168
182
  describe: 'Development server port',
169
- group: NAME_GROUP_SERVE,
183
+ group: BuildCommandGroup.Serve,
170
184
  type: 'number',
171
185
  defaultDescription: '8000',
172
186
  implies: 'serve',
@@ -176,32 +190,35 @@ const opts = {
176
190
  host: {
177
191
  alias: 'h',
178
192
  describe: 'Development server host',
179
- group: NAME_GROUP_SERVE,
193
+ group: BuildCommandGroup.Serve,
180
194
  type: 'string',
181
195
  nargs: 1,
182
196
  requiresArg: true,
183
197
  implies: 'serve',
184
198
  defaultDescription: 'localhost',
185
199
  },
186
- } as const;
200
+ } as const satisfies Record<string, Options>;
187
201
 
188
- opts as Record<string, Options>;
189
202
  type BuildOptions = InferredOptionTypes<typeof opts>;
190
203
 
191
- const buildCommand: CommandModule<{}, BuildOptions> = {
204
+ export default {
192
205
  command: 'build',
193
- describe: 'Build Appium extension documentation',
194
- builder: (yargs) =>
195
- yargs.options(opts).check((argv) => {
196
- // either this method doesn't provide camel-cased props, or the types are wrong.
197
- if (argv.deploy === true && argv['site-dir']) {
198
- log.error(
199
- `--site-dir is unsupported when running "${NAME_BIN} deploy"; use --prefix if needd, but remember that the default behavior is to deploy to the root of the branch (${argv.branch}) instead of a subdirectory`
200
- );
201
- return false;
202
- }
203
- return true;
204
- }),
206
+ describe: 'Build Appium extension documentation using TypeDoc & MkDocs',
207
+ builder(yargs) {
208
+ return yargs
209
+ .options(opts)
210
+ .check(async (argv) => {
211
+ // either this method doesn't provide camel-cased props, or the types are wrong.
212
+ if (argv.deploy === true && argv['site-dir']) {
213
+ return `--site-dir is unsupported when running "${NAME_BIN} deploy"; use --prefix if needed, but remember that the default behavior is to deploy to the root of the branch (${argv.branch}) instead of a subdirectory`;
214
+ }
215
+
216
+ return await checkMissingPaths(opts, BuildCommandGroup.BuildPaths, argv);
217
+ })
218
+ .epilog(
219
+ 'For help with further configuration, see:\n - MkDocs: https://www.mkdocs.org\n - TypeDoc: https://typedoc.org\n - Mike: https://github.com/jimporter/mike'
220
+ );
221
+ },
205
222
  async handler(args) {
206
223
  const stop = stopwatch('build');
207
224
  log.debug('Build command called with args: %O', args);
@@ -224,6 +241,4 @@ const buildCommand: CommandModule<{}, BuildOptions> = {
224
241
  }
225
242
  log.success('Done! (total: %dms)', stop());
226
243
  },
227
- };
228
-
229
- export default buildCommand;
244
+ } as CommandModule<object, BuildOptions>;