@appium/docutils 0.1.6 → 0.2.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.
- package/README.md +2 -5
- package/build/lib/build/mkdocs.d.ts +58 -0
- package/build/lib/build/mkdocs.d.ts.map +1 -0
- package/build/lib/build/mkdocs.js +80 -0
- package/build/lib/build/mkdocs.js.map +1 -0
- package/build/lib/build/typedoc.d.ts +55 -0
- package/build/lib/build/typedoc.d.ts.map +1 -0
- package/build/lib/build/typedoc.js +120 -0
- package/build/lib/build/typedoc.js.map +1 -0
- package/build/lib/build-api.d.ts +18 -0
- package/build/lib/build-api.d.ts.map +1 -0
- package/build/lib/build-api.js +75 -0
- package/build/lib/build-api.js.map +1 -0
- package/build/lib/build.d.ts +21 -0
- package/build/lib/build.d.ts.map +1 -0
- package/build/lib/build.js +71 -0
- package/build/lib/build.js.map +1 -0
- package/build/lib/builder/deploy.d.ts +89 -0
- package/build/lib/builder/deploy.d.ts.map +1 -0
- package/build/lib/builder/deploy.js +105 -0
- package/build/lib/builder/deploy.js.map +1 -0
- package/build/lib/builder/index.d.ts +5 -0
- package/build/lib/builder/index.d.ts.map +1 -0
- package/build/lib/builder/index.js +21 -0
- package/build/lib/builder/index.js.map +1 -0
- package/build/lib/builder/nav.d.ts +81 -0
- package/build/lib/builder/nav.d.ts.map +1 -0
- package/build/lib/builder/nav.js +280 -0
- package/build/lib/builder/nav.js.map +1 -0
- package/build/lib/builder/reference.d.ts +57 -0
- package/build/lib/builder/reference.d.ts.map +1 -0
- package/build/lib/builder/reference.js +129 -0
- package/build/lib/builder/reference.js.map +1 -0
- package/build/lib/builder/site.d.ts +55 -0
- package/build/lib/builder/site.d.ts.map +1 -0
- package/build/lib/builder/site.js +81 -0
- package/build/lib/builder/site.js.map +1 -0
- package/build/lib/cli/command/build.d.ts +178 -0
- package/build/lib/cli/command/build.d.ts.map +1 -0
- package/build/lib/cli/command/build.js +223 -0
- package/build/lib/cli/command/build.js.map +1 -0
- package/build/lib/cli/command/deploy.d.ts +1 -0
- package/build/lib/cli/command/deploy.d.ts.map +1 -0
- package/build/lib/cli/command/deploy.js +2 -0
- package/build/lib/cli/command/deploy.js.map +1 -0
- package/build/lib/cli/command/index.d.ts +4 -0
- package/build/lib/cli/command/index.d.ts.map +1 -0
- package/build/lib/cli/command/index.js +13 -0
- package/build/lib/cli/command/index.js.map +1 -0
- package/build/lib/cli/command/init.d.ts +143 -0
- package/build/lib/cli/command/init.d.ts.map +1 -0
- package/build/lib/cli/command/init.js +164 -0
- package/build/lib/cli/command/init.js.map +1 -0
- package/build/lib/cli/command/validate.d.ts +76 -0
- package/build/lib/cli/command/validate.d.ts.map +1 -0
- package/build/lib/cli/command/validate.js +115 -0
- package/build/lib/cli/command/validate.js.map +1 -0
- package/build/lib/cli/command-init.d.ts +143 -0
- package/build/lib/cli/command-init.d.ts.map +1 -0
- package/build/lib/cli/command-init.js +164 -0
- package/build/lib/cli/command-init.js.map +1 -0
- package/build/lib/cli/command-validate.d.ts +52 -0
- package/build/lib/cli/command-validate.d.ts.map +1 -0
- package/build/lib/cli/command-validate.js +66 -0
- package/build/lib/cli/command-validate.js.map +1 -0
- package/build/lib/cli/config.d.ts +28 -0
- package/build/lib/cli/config.d.ts.map +1 -0
- package/build/lib/cli/config.js +114 -0
- package/build/lib/cli/config.js.map +1 -0
- package/build/lib/cli/index.d.ts +13 -0
- package/build/lib/cli/index.d.ts.map +1 -0
- package/build/lib/cli/index.js +91 -0
- package/build/lib/cli/index.js.map +1 -0
- package/build/lib/cli/init.d.ts +143 -0
- package/build/lib/cli/init.d.ts.map +1 -0
- package/build/lib/cli/init.js +164 -0
- package/build/lib/cli/init.js.map +1 -0
- package/build/lib/cli/options.d.ts +1 -0
- package/build/lib/cli/options.d.ts.map +1 -0
- package/build/lib/cli/options.js +2 -0
- package/build/lib/cli/options.js.map +1 -0
- package/build/lib/cli/validate.d.ts +1 -0
- package/build/lib/cli/validate.d.ts.map +1 -0
- package/build/lib/cli/validate.js +2 -0
- package/build/lib/cli/validate.js.map +1 -0
- package/build/lib/cli.d.ts +10 -0
- package/build/lib/cli.d.ts.map +1 -0
- package/build/lib/cli.js +328 -0
- package/build/lib/cli.js.map +1 -0
- package/build/lib/constants.d.ts +125 -0
- package/build/lib/constants.d.ts.map +1 -0
- package/build/lib/constants.js +133 -0
- package/build/lib/constants.js.map +1 -0
- package/build/lib/error.d.ts +3 -0
- package/build/lib/error.d.ts.map +1 -0
- package/build/lib/error.js +7 -0
- package/build/lib/error.js.map +1 -0
- package/build/lib/fs.d.ts +142 -0
- package/build/lib/fs.d.ts.map +1 -0
- package/build/lib/fs.js +237 -0
- package/build/lib/fs.js.map +1 -0
- package/build/lib/index.d.ts +5 -2
- package/build/lib/index.d.ts.map +1 -1
- package/build/lib/index.js +4 -1
- package/build/lib/index.js.map +1 -1
- package/build/lib/init-task.d.ts +49 -0
- package/build/lib/init-task.d.ts.map +1 -0
- package/build/lib/init-task.js +95 -0
- package/build/lib/init-task.js.map +1 -0
- package/build/lib/init.d.ts +202 -0
- package/build/lib/init.d.ts.map +1 -0
- package/build/lib/init.js +225 -0
- package/build/lib/init.js.map +1 -0
- package/build/lib/io.d.ts +1 -0
- package/build/lib/io.d.ts.map +1 -0
- package/build/lib/io.js +2 -0
- package/build/lib/io.js.map +1 -0
- package/build/lib/logger.d.ts +17 -2
- package/build/lib/logger.d.ts.map +1 -1
- package/build/lib/logger.js +187 -2
- package/build/lib/logger.js.map +1 -1
- package/build/lib/mike.d.ts +3 -0
- package/build/lib/mike.d.ts.map +1 -1
- package/build/lib/mike.js +4 -0
- package/build/lib/mike.js.map +1 -1
- package/build/lib/mkdocs.d.ts +51 -12
- package/build/lib/mkdocs.d.ts.map +1 -1
- package/build/lib/mkdocs.js +64 -32
- package/build/lib/mkdocs.js.map +1 -1
- package/build/lib/model.d.ts +80 -0
- package/build/lib/model.d.ts.map +1 -0
- package/build/lib/model.js +8 -0
- package/build/lib/model.js.map +1 -0
- package/build/lib/nav.d.ts +47 -0
- package/build/lib/nav.d.ts.map +1 -0
- package/build/lib/nav.js +132 -0
- package/build/lib/nav.js.map +1 -0
- package/build/lib/scaffold.d.ts +95 -0
- package/build/lib/scaffold.d.ts.map +1 -0
- package/build/lib/scaffold.js +103 -0
- package/build/lib/scaffold.js.map +1 -0
- package/build/lib/test.d.ts +9 -0
- package/build/lib/test.d.ts.map +1 -0
- package/build/lib/test.js +2 -0
- package/build/lib/test.js.map +1 -0
- package/build/lib/typedoc.d.ts +55 -0
- package/build/lib/typedoc.d.ts.map +1 -0
- package/build/lib/typedoc.js +122 -0
- package/build/lib/typedoc.js.map +1 -0
- package/build/lib/types.d.ts +52 -0
- package/build/lib/types.d.ts.map +1 -0
- package/build/lib/types.js +7 -0
- package/build/lib/types.js.map +1 -0
- package/build/lib/util.d.ts +42 -0
- package/build/lib/util.d.ts.map +1 -0
- package/build/lib/util.js +56 -0
- package/build/lib/util.js.map +1 -0
- package/build/lib/validate.d.ts +218 -0
- package/build/lib/validate.d.ts.map +1 -0
- package/build/lib/validate.js +501 -0
- package/build/lib/validate.js.map +1 -0
- package/build/lib/validation/base-validator.d.ts +218 -0
- package/build/lib/validation/base-validator.d.ts.map +1 -0
- package/build/lib/validation/base-validator.js +453 -0
- package/build/lib/validation/base-validator.js.map +1 -0
- package/build/lib/validation/mkdocs-validator.d.ts +5 -0
- package/build/lib/validation/mkdocs-validator.d.ts.map +1 -0
- package/build/lib/validation/mkdocs-validator.js +54 -0
- package/build/lib/validation/mkdocs-validator.js.map +1 -0
- package/build/lib/validation/python-validator.d.ts +1 -0
- package/build/lib/validation/python-validator.d.ts.map +1 -0
- package/build/lib/validation/python-validator.js +2 -0
- package/build/lib/validation/python-validator.js.map +1 -0
- package/build/lib/validation/python.d.ts +1 -0
- package/build/lib/validation/python.d.ts.map +1 -0
- package/build/lib/validation/python.js +2 -0
- package/build/lib/validation/python.js.map +1 -0
- package/build/lib/validation/validate.d.ts +221 -0
- package/build/lib/validation/validate.d.ts.map +1 -0
- package/build/lib/validation/validate.js +508 -0
- package/build/lib/validation/validate.js.map +1 -0
- package/build/lib/validation/validator.d.ts +220 -0
- package/build/lib/validation/validator.d.ts.map +1 -0
- package/build/lib/validation/validator.js +470 -0
- package/build/lib/validation/validator.js.map +1 -0
- package/lib/builder/deploy.ts +223 -0
- package/lib/builder/index.ts +4 -0
- package/lib/builder/nav.ts +399 -0
- package/lib/builder/reference.ts +191 -0
- package/lib/builder/site.ts +143 -0
- package/lib/cli/command/build.ts +229 -0
- package/lib/cli/command/index.ts +3 -0
- package/lib/cli/command/init.ts +166 -0
- package/lib/cli/command/validate.ts +122 -0
- package/lib/cli/config.ts +89 -0
- package/lib/cli/index.ts +88 -0
- package/lib/constants.ts +150 -0
- package/lib/error.ts +1 -0
- package/lib/fs.ts +274 -0
- package/lib/index.ts +5 -0
- package/lib/init.ts +319 -0
- package/lib/logger.ts +198 -0
- package/lib/mike.js +4 -0
- package/lib/model.ts +92 -0
- package/lib/scaffold.ts +225 -0
- package/lib/util.ts +76 -0
- package/lib/validate.ts +728 -0
- package/package.json +38 -6
- package/requirements.txt +4 -0
- package/tsconfig.json +2 -1
- package/build/tsconfig.tsbuildinfo +0 -1
- package/lib/index.js +0 -2
- package/lib/logger.js +0 -3
- package/lib/mkdocs.js +0 -43
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Functions for running `mike`
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.deploy = void 0;
|
|
12
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
13
|
+
const teen_process_1 = require("teen_process");
|
|
14
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
15
|
+
const constants_1 = require("../constants");
|
|
16
|
+
const error_1 = require("../error");
|
|
17
|
+
const fs_1 = require("../fs");
|
|
18
|
+
const logger_1 = __importDefault(require("../logger"));
|
|
19
|
+
const util_1 = require("../util");
|
|
20
|
+
const log = logger_1.default.withTag('builder:deploy');
|
|
21
|
+
/**
|
|
22
|
+
* Runs `mike serve`
|
|
23
|
+
* @param args Extra args to `mike build`
|
|
24
|
+
* @param opts Extra options for `teen_process.Subprocess.start`
|
|
25
|
+
* @param mikePath Path to `mike` executable
|
|
26
|
+
*/
|
|
27
|
+
async function doServe(args = [], { startDetector, detach, timeoutMs } = {}, mikePath) {
|
|
28
|
+
mikePath = mikePath ?? (await (0, fs_1.whichMike)());
|
|
29
|
+
const finalArgs = ['serve', ...args];
|
|
30
|
+
log.debug('Launching %s with args: %O', mikePath, finalArgs);
|
|
31
|
+
const proc = new teen_process_1.SubProcess(mikePath, finalArgs);
|
|
32
|
+
return await proc.start(startDetector, detach, timeoutMs);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Runs `mike build`
|
|
36
|
+
* @param args Extra args to `mike build`
|
|
37
|
+
* @param opts Extra options to `teen_process.exec`
|
|
38
|
+
* @param mikePath Path to `mike` executable
|
|
39
|
+
*/
|
|
40
|
+
async function doDeploy(args = [], opts = {}, mikePath) {
|
|
41
|
+
mikePath = mikePath ?? (await (0, fs_1.whichMike)());
|
|
42
|
+
const finalArgs = ['deploy', ...args];
|
|
43
|
+
log.debug('Launching %s with args: %O', mikePath, finalArgs);
|
|
44
|
+
return await (0, teen_process_1.exec)(mikePath, finalArgs, opts);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Derives a deployment version from `package.json`
|
|
48
|
+
* @param packageJsonPath Path to `package.json` if known
|
|
49
|
+
* @param cwd Current working directory
|
|
50
|
+
*/
|
|
51
|
+
async function findDeployVersion(packageJsonPath, cwd = process.cwd()) {
|
|
52
|
+
const { pkg } = await (0, fs_1.readPackageJson)(packageJsonPath ? node_path_1.default.dirname(packageJsonPath) : cwd, true);
|
|
53
|
+
const version = pkg.version;
|
|
54
|
+
if (!version) {
|
|
55
|
+
throw new error_1.DocutilsError('No "version" field found in package.json; please add one or specify a version to deploy');
|
|
56
|
+
}
|
|
57
|
+
return version;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Runs `mike build` or `mike serve`
|
|
61
|
+
* @param opts Options
|
|
62
|
+
*/
|
|
63
|
+
async function deploy({ mkdocsYml: mkDocsYmlPath, packageJson: packageJsonPath, deployVersion: version, cwd = process.cwd(), serve = false, push = false, branch = constants_1.DEFAULT_DEPLOY_BRANCH, remote = constants_1.DEFAULT_DEPLOY_REMOTE, prefix, message, alias, rebase = true, port = constants_1.DEFAULT_SERVE_PORT, host = constants_1.DEFAULT_SERVE_HOST, serveOpts, execOpts, } = {}) {
|
|
64
|
+
const stop = (0, util_1.stopwatch)('deploy');
|
|
65
|
+
mkDocsYmlPath = mkDocsYmlPath ?? (await (0, fs_1.findMkDocsYml)(cwd));
|
|
66
|
+
if (!mkDocsYmlPath) {
|
|
67
|
+
throw new error_1.DocutilsError(`Could not find ${constants_1.NAME_MKDOCS_YML} from ${cwd}; run "${constants_1.NAME_BIN} init" to create it`);
|
|
68
|
+
}
|
|
69
|
+
version = version ?? (await findDeployVersion(packageJsonPath, cwd));
|
|
70
|
+
const mikeOpts = {
|
|
71
|
+
'config-file': mkDocsYmlPath,
|
|
72
|
+
push,
|
|
73
|
+
remote,
|
|
74
|
+
branch,
|
|
75
|
+
prefix,
|
|
76
|
+
message,
|
|
77
|
+
rebase,
|
|
78
|
+
port,
|
|
79
|
+
host,
|
|
80
|
+
};
|
|
81
|
+
if (serve) {
|
|
82
|
+
const mikeArgs = [
|
|
83
|
+
...(0, util_1.argify)(lodash_1.default.pickBy(mikeOpts, (value) => lodash_1.default.isNumber(value) || Boolean(value))),
|
|
84
|
+
version,
|
|
85
|
+
];
|
|
86
|
+
if (alias) {
|
|
87
|
+
mikeArgs.push(alias);
|
|
88
|
+
}
|
|
89
|
+
// unsure about how SIGHUP is handled here
|
|
90
|
+
await doServe(mikeArgs, serveOpts);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
const mikeArgs = [
|
|
94
|
+
...(0, util_1.argify)(lodash_1.default.omitBy(mikeOpts, (value, key) => lodash_1.default.includes(['port', 'host'], key) || (!lodash_1.default.isNumber(value) && !value))),
|
|
95
|
+
version,
|
|
96
|
+
];
|
|
97
|
+
if (alias) {
|
|
98
|
+
mikeArgs.push(alias);
|
|
99
|
+
}
|
|
100
|
+
await doDeploy(mikeArgs, execOpts);
|
|
101
|
+
log.success('Mike finished deployment into branch %s (%dms)', branch, stop());
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
exports.deploy = deploy;
|
|
105
|
+
//# sourceMappingURL=deploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../lib/builder/deploy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/builder/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./deploy"), exports);
|
|
18
|
+
__exportStar(require("./site"), exports);
|
|
19
|
+
__exportStar(require("./reference"), exports);
|
|
20
|
+
__exportStar(require("./nav"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/builder/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB;AACvB,8CAA4B;AAC5B,wCAAsB"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Handles updating/adding the `nav` property of `mkdocs.yml`, based on the output of `typedoc`;
|
|
3
|
+
* specifically, the command documentation generated by `@appium/typedoc-plugin-appium`.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import { MkDocsYmlNav } from '../model';
|
|
8
|
+
/**
|
|
9
|
+
* Because the `nav` property of `mkdocs.yml` is both a recursive type and a kind of awful one, it's
|
|
10
|
+
* easier to work with it if we rewrite the data into a flat array of objects. We keep a `keypath`
|
|
11
|
+
* prop which represents the deep/nested location within the `nav` object.
|
|
12
|
+
*
|
|
13
|
+
* @privateRemarks This function is not recursive; instead it loops over a queue of items to process
|
|
14
|
+
* data, and we append to that queue while processing if needed.
|
|
15
|
+
* @param nav Contents of the `nav` prop of `mkdocs.yml`
|
|
16
|
+
* @returns A list of objects, each with a `keypath` property and a `fileOrUrl` property (and maybe
|
|
17
|
+
* a `name` property)
|
|
18
|
+
*/
|
|
19
|
+
export declare function parseNav(nav: MkDocsYmlNav): ParsedNavData[];
|
|
20
|
+
/**
|
|
21
|
+
* Update the `nav` property of `mkdocs.yml` with a list of "command" files generated by TypeDoc via
|
|
22
|
+
* `@appium/typedoc-plugin-appium`.
|
|
23
|
+
*
|
|
24
|
+
* To be clear, this function **modifies the MkDocs config file (`mkdocs.yml`) in place**; it is
|
|
25
|
+
* typically under version control, so if this function makes any changes, you'll want to commit them.
|
|
26
|
+
* @param opts - Options
|
|
27
|
+
* @todo implement `dryRun` option
|
|
28
|
+
*/
|
|
29
|
+
export declare function updateNav({ cwd, mkdocsYml: mkDocsYmlPath, typedocJson: typeDocJsonPath, all, dryRun, }?: UpdateNavOpts): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Options for {@linkcode updateNav}
|
|
32
|
+
*/
|
|
33
|
+
export interface UpdateNavOpts {
|
|
34
|
+
/**
|
|
35
|
+
* Current working directory
|
|
36
|
+
*/
|
|
37
|
+
cwd?: string;
|
|
38
|
+
/**
|
|
39
|
+
* Path to `mkdocs.yml`
|
|
40
|
+
*/
|
|
41
|
+
mkdocsYml?: string;
|
|
42
|
+
/**
|
|
43
|
+
* Path to `package.json`
|
|
44
|
+
*/
|
|
45
|
+
packageJson?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Path to `typedoc.json`
|
|
48
|
+
*/
|
|
49
|
+
typedocJson?: string;
|
|
50
|
+
/**
|
|
51
|
+
* If `true`, do not write any files
|
|
52
|
+
* @remarks Not yet implemented
|
|
53
|
+
*/
|
|
54
|
+
dryRun?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* If `true`, add _all_ reference documentation to the navigation config (not just commands)
|
|
57
|
+
*/
|
|
58
|
+
all?: boolean;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Used internally by {@linkcode updatedNav}
|
|
62
|
+
* @see {@linkcode parseNav}
|
|
63
|
+
*/
|
|
64
|
+
interface ParsedNavData {
|
|
65
|
+
/**
|
|
66
|
+
* Keypath within `nav` for some file or URL
|
|
67
|
+
*/
|
|
68
|
+
keypath: string;
|
|
69
|
+
/**
|
|
70
|
+
* A filepath (usually) or a URL.
|
|
71
|
+
* This is considered the "index" of the data, and should be unique within its parent. If it's not
|
|
72
|
+
* unique, then it will probably end up that way after updating...
|
|
73
|
+
*/
|
|
74
|
+
fileOrUrl: string;
|
|
75
|
+
/**
|
|
76
|
+
* If this file or url has a proper name, this would be it. Most don't.
|
|
77
|
+
*/
|
|
78
|
+
name?: string;
|
|
79
|
+
}
|
|
80
|
+
export {};
|
|
81
|
+
//# sourceMappingURL=nav.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav.d.ts","sourceRoot":"","sources":["../../../lib/builder/nav.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,OAAO,EAAY,YAAY,EAAC,MAAM,UAAU,CAAC;AA4BjD;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,YAAY,GAAG,aAAa,EAAE,CA+B3D;AAgJD;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAAC,EAC9B,GAAmB,EACnB,SAAS,EAAE,aAAa,EACxB,WAAW,EAAE,eAAe,EAC5B,GAAW,EACX,MAAc,GACf,GAAE,aAAkB,iBAwFpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;GAGG;AACH,UAAU,aAAa;IACrB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Handles updating/adding the `nav` property of `mkdocs.yml`, based on the output of `typedoc`;
|
|
4
|
+
* specifically, the command documentation generated by `@appium/typedoc-plugin-appium`.
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.updateNav = exports.parseNav = void 0;
|
|
13
|
+
const support_1 = require("@appium/support");
|
|
14
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
15
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
16
|
+
const constants_1 = require("../constants");
|
|
17
|
+
const error_1 = require("../error");
|
|
18
|
+
const fs_1 = require("../fs");
|
|
19
|
+
const logger_1 = __importDefault(require("../logger"));
|
|
20
|
+
const util_1 = require("../util");
|
|
21
|
+
const log = logger_1.default.withTag('builder:nav');
|
|
22
|
+
/**
|
|
23
|
+
* Gets a list of `.md` files relative to `docs_dir`
|
|
24
|
+
* @param targetDir Directory ostensibly containing Markdown files; must be absolute
|
|
25
|
+
* @param mkDocsDocsDir The path to the `docs_dir` in the `mkdocs.yml` file; must be absolute
|
|
26
|
+
* @returns List of Markdown files relative to the `docs_dir` in the `mkdocs.yml` file
|
|
27
|
+
*/
|
|
28
|
+
async function findRelativeMarkdownFiles(targetDir, mkDocsDocsDir) {
|
|
29
|
+
if (!node_path_1.default.isAbsolute(targetDir)) {
|
|
30
|
+
throw new error_1.DocutilsError(`Expected absolute path, got '${targetDir}'`);
|
|
31
|
+
}
|
|
32
|
+
if (!node_path_1.default.isAbsolute(mkDocsDocsDir)) {
|
|
33
|
+
throw new error_1.DocutilsError(`Expected absolute path, got '${mkDocsDocsDir}'`);
|
|
34
|
+
}
|
|
35
|
+
const relDir = node_path_1.default.relative(mkDocsDocsDir, targetDir);
|
|
36
|
+
const dirEnts = await support_1.fs.readdir(targetDir, { withFileTypes: true });
|
|
37
|
+
return dirEnts
|
|
38
|
+
.filter((ent) => ent.isFile() && ent.name.endsWith('.md'))
|
|
39
|
+
.map((ent) => node_path_1.default.join(relDir, ent.name));
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Because the `nav` property of `mkdocs.yml` is both a recursive type and a kind of awful one, it's
|
|
43
|
+
* easier to work with it if we rewrite the data into a flat array of objects. We keep a `keypath`
|
|
44
|
+
* prop which represents the deep/nested location within the `nav` object.
|
|
45
|
+
*
|
|
46
|
+
* @privateRemarks This function is not recursive; instead it loops over a queue of items to process
|
|
47
|
+
* data, and we append to that queue while processing if needed.
|
|
48
|
+
* @param nav Contents of the `nav` prop of `mkdocs.yml`
|
|
49
|
+
* @returns A list of objects, each with a `keypath` property and a `fileOrUrl` property (and maybe
|
|
50
|
+
* a `name` property)
|
|
51
|
+
*/
|
|
52
|
+
function parseNav(nav) {
|
|
53
|
+
let parsedNav = [];
|
|
54
|
+
const entries = Object.entries(nav);
|
|
55
|
+
const queue = [{ entries, keypath: '' }];
|
|
56
|
+
while (queue.length) {
|
|
57
|
+
const { entries, keypath } = queue.shift();
|
|
58
|
+
for (const [key, item] of entries) {
|
|
59
|
+
if (lodash_1.default.isString(item)) {
|
|
60
|
+
const navData = {
|
|
61
|
+
keypath: keypath ? `${keypath}.${key}` : key,
|
|
62
|
+
fileOrUrl: item,
|
|
63
|
+
};
|
|
64
|
+
// if the key is not convertible to a number, it's a name
|
|
65
|
+
// which was manually put there by somebody.
|
|
66
|
+
if (Number.isNaN(Number(key))) {
|
|
67
|
+
navData.name = key;
|
|
68
|
+
}
|
|
69
|
+
parsedNav = [...parsedNav, navData];
|
|
70
|
+
}
|
|
71
|
+
else if (lodash_1.default.isObject(item)) {
|
|
72
|
+
const subEntries = Object.entries(item);
|
|
73
|
+
queue.push({ entries: subEntries, keypath: keypath ? `${keypath}.${key}` : key });
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return parsedNav;
|
|
78
|
+
}
|
|
79
|
+
exports.parseNav = parseNav;
|
|
80
|
+
/**
|
|
81
|
+
* Finds all items within the list of parsed nav data which correpsond to the header. This is
|
|
82
|
+
* imperfect, as it's possible for the header string to appear in multiple places in the nav, but let's just ignore that until we can't.
|
|
83
|
+
* @param navData Some parsed nav data
|
|
84
|
+
* @param header Header name
|
|
85
|
+
*/
|
|
86
|
+
function filterHeaderItems(navData, header) {
|
|
87
|
+
return lodash_1.default.filter(navData, (item) => lodash_1.default.toPath(item.keypath).includes(header));
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
*
|
|
91
|
+
* @param rootHeaderKeypath Root keypath as determined by {@linkcode getRootHeaderKeypath}
|
|
92
|
+
* @param offset Numeric offset within the array of items for the header
|
|
93
|
+
* @param data Any parsed nav data found. For new items, this will be `undefined`. If not new, it
|
|
94
|
+
* may or may not have a `name` prop, and if it does, we want to retain it.
|
|
95
|
+
* @returns Complete keypath for a nav item beginning with the root keypath
|
|
96
|
+
*/
|
|
97
|
+
function getKeypathForHeaderItem(rootHeaderKeypath, offset, data) {
|
|
98
|
+
return data?.name
|
|
99
|
+
? `${rootHeaderKeypath}.${offset}.${data.name}`
|
|
100
|
+
: `${rootHeaderKeypath}.${offset}`;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Compares two sets of nav data and determines if they are different.
|
|
104
|
+
*
|
|
105
|
+
* This does not compare the entire `nav` object with a new one; it works per-header
|
|
106
|
+
* @param newNavData Nav data as computed by {@linkcode getNavItemsForDir} corresponding to a
|
|
107
|
+
* particular header
|
|
108
|
+
* @param navData Subset of original nav data as parsed by {@linkcode parseNav}, corresponding to
|
|
109
|
+
* the same header
|
|
110
|
+
*/
|
|
111
|
+
function navDataDidChange(newNavData, navData) {
|
|
112
|
+
const diff = lodash_1.default.xorWith(newNavData, navData, (a, b) => a.keypath === b.keypath && a.fileOrUrl === b.fileOrUrl);
|
|
113
|
+
return !lodash_1.default.isEmpty(diff);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Find the "root" keypath for a particular header
|
|
117
|
+
* @param headerItems Some subset of the nav data having keypaths corresponding to `header`
|
|
118
|
+
* @param header Header string
|
|
119
|
+
* @returns The keypath up to the header string, inclusive
|
|
120
|
+
*/
|
|
121
|
+
function getRootHeaderKeypath(headerItems, header) {
|
|
122
|
+
// these are the parts of the keypath of the first item, which will contain the header string. it
|
|
123
|
+
// dosn't matter whether we pick the first one or any one; they will all contain the same root
|
|
124
|
+
// keypath by definition.
|
|
125
|
+
const rootHeaderKeypathParts = lodash_1.default.toPath(lodash_1.default.first(headerItems).keypath);
|
|
126
|
+
// this is the keypath up to the header string, inclusive.
|
|
127
|
+
// we append indices or names to this keypath
|
|
128
|
+
return rootHeaderKeypathParts.slice(0, rootHeaderKeypathParts.indexOf(header) + 1).join('.');
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* This examines the `navData` looking for items matching the header string (which _may_ be defined
|
|
132
|
+
* by `dir`; if `all` is true, we just use the default header, because we will be returning a whole
|
|
133
|
+
* lot of headers).
|
|
134
|
+
*
|
|
135
|
+
*
|
|
136
|
+
* @param dir Abs path to directory containing markdown files generated by TypeDoc
|
|
137
|
+
* @param mkDocsDocsDir Configured `docs_dir` or via options
|
|
138
|
+
* @param navData Nav data parsed by {@linkcode parseNav}
|
|
139
|
+
* @param all If `true`, process all markdown files, not just commands
|
|
140
|
+
*/
|
|
141
|
+
async function getNavItemsForDir(dir, mkDocsDocsDir, navData, nav, all = false) {
|
|
142
|
+
let dataChanged = false;
|
|
143
|
+
const newNavHeaderItems = [];
|
|
144
|
+
const referenceOutputFilepaths = await findRelativeMarkdownFiles(dir, mkDocsDocsDir);
|
|
145
|
+
if (!referenceOutputFilepaths.length) {
|
|
146
|
+
log.warn('No markdown files found in %s; did TypeDoc run?', dir);
|
|
147
|
+
return { data: [], changed: false };
|
|
148
|
+
}
|
|
149
|
+
const navHeader = all ? lodash_1.default.startCase(node_path_1.default.basename(dir)) : constants_1.DEFAULT_NAV_HEADER;
|
|
150
|
+
const navHeaderItems = filterHeaderItems(navData, navHeader);
|
|
151
|
+
// if we found items with this header already, we are going
|
|
152
|
+
// to replace them all wholesale
|
|
153
|
+
if (navHeaderItems.length) {
|
|
154
|
+
log.debug('Found %d item(s) in header %s', navHeaderItems.length, navHeader);
|
|
155
|
+
// we append indices or names to this keypath
|
|
156
|
+
const rootHeaderKeypath = getRootHeaderKeypath(navHeaderItems, navHeader);
|
|
157
|
+
for (const fileOrUrl of referenceOutputFilepaths) {
|
|
158
|
+
let offset = navHeaderItems.findIndex((item) => item.fileOrUrl === fileOrUrl);
|
|
159
|
+
const newOffset = offset >= 0 ? offset : navHeaderItems.length;
|
|
160
|
+
const data = navHeaderItems[offset];
|
|
161
|
+
log.warn(rootHeaderKeypath, newOffset, data);
|
|
162
|
+
const keypath = getKeypathForHeaderItem(rootHeaderKeypath, newOffset, data);
|
|
163
|
+
newNavHeaderItems.push({ keypath, fileOrUrl });
|
|
164
|
+
}
|
|
165
|
+
// look for any differences between what we have and what's in the file
|
|
166
|
+
if (navDataDidChange(newNavHeaderItems, navHeaderItems)) {
|
|
167
|
+
log.debug('Will write new nav data for header %s: %O', navHeader, newNavHeaderItems);
|
|
168
|
+
dataChanged = true;
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
log.debug('No changes for header %s', navHeader);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
log.debug('No items found in header %s', navHeader);
|
|
176
|
+
let navOffset = nav.length;
|
|
177
|
+
for (const [idx, newRefFilepath] of referenceOutputFilepaths.entries()) {
|
|
178
|
+
newNavHeaderItems.push({
|
|
179
|
+
keypath: `${navOffset}.${navHeader}.${idx}`,
|
|
180
|
+
fileOrUrl: newRefFilepath,
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
log.debug('Will create nav data for header %s', navHeader);
|
|
184
|
+
dataChanged = true;
|
|
185
|
+
}
|
|
186
|
+
return { data: newNavHeaderItems, changed: dataChanged };
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Applies the changes in `newData` to the `mkDocsYml` object.
|
|
190
|
+
*
|
|
191
|
+
* **This function mutates `mkDocsYml`.**
|
|
192
|
+
* @param newData New nav data
|
|
193
|
+
* @param mkDocsYml Original `mkdocs.yml`
|
|
194
|
+
*/
|
|
195
|
+
function applyNavData(newData, mkDocsYml) {
|
|
196
|
+
for (const { keypath, fileOrUrl } of newData) {
|
|
197
|
+
lodash_1.default.set(mkDocsYml, `nav.${keypath}`, fileOrUrl);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Update the `nav` property of `mkdocs.yml` with a list of "command" files generated by TypeDoc via
|
|
202
|
+
* `@appium/typedoc-plugin-appium`.
|
|
203
|
+
*
|
|
204
|
+
* To be clear, this function **modifies the MkDocs config file (`mkdocs.yml`) in place**; it is
|
|
205
|
+
* typically under version control, so if this function makes any changes, you'll want to commit them.
|
|
206
|
+
* @param opts - Options
|
|
207
|
+
* @todo implement `dryRun` option
|
|
208
|
+
*/
|
|
209
|
+
async function updateNav({ cwd = process.cwd(), mkdocsYml: mkDocsYmlPath, typedocJson: typeDocJsonPath, all = false, dryRun = false, } = {}) {
|
|
210
|
+
// we need `mkdocs.yml` to update
|
|
211
|
+
// and we need `typedoc.json` to know where to look for the command docs
|
|
212
|
+
[mkDocsYmlPath, typeDocJsonPath] = await Promise.all([
|
|
213
|
+
mkDocsYmlPath ?? (0, fs_1.findMkDocsYml)(cwd),
|
|
214
|
+
typeDocJsonPath ?? (0, fs_1.findTypeDocJsonPath)(cwd),
|
|
215
|
+
]);
|
|
216
|
+
if (!mkDocsYmlPath) {
|
|
217
|
+
throw new error_1.DocutilsError(`Could not find ${constants_1.NAME_MKDOCS_YML} from ${cwd}; run "${constants_1.NAME_BIN} init" to create it`);
|
|
218
|
+
}
|
|
219
|
+
if (!typeDocJsonPath) {
|
|
220
|
+
throw new error_1.DocutilsError(`Could not find ${constants_1.NAME_TYPEDOC_JSON} from ${cwd}; run "${constants_1.NAME_BIN} init" to create it`);
|
|
221
|
+
}
|
|
222
|
+
const relativePath = (0, util_1.relative)(cwd);
|
|
223
|
+
const relMkDocsYmlPath = relativePath(mkDocsYmlPath);
|
|
224
|
+
const typeDocJson = (0, fs_1.readTypedocJson)(typeDocJsonPath);
|
|
225
|
+
const mkDocsYml = (await (0, fs_1.readYaml)(mkDocsYmlPath));
|
|
226
|
+
/**
|
|
227
|
+
* Absolute path to `typedoc.json`
|
|
228
|
+
*/
|
|
229
|
+
const absTypeDocJsonPath = node_path_1.default.isAbsolute(typeDocJsonPath)
|
|
230
|
+
? typeDocJsonPath
|
|
231
|
+
: node_path_1.default.resolve(cwd, typeDocJsonPath);
|
|
232
|
+
/**
|
|
233
|
+
* Absolute path to TypeDoc's output directory (`out`)
|
|
234
|
+
*/
|
|
235
|
+
const typeDocOutDir = node_path_1.default.resolve(node_path_1.default.dirname(absTypeDocJsonPath), typeDocJson.out ? typeDocJson.out : constants_1.DEFAULT_REL_TYPEDOC_OUT_PATH);
|
|
236
|
+
/**
|
|
237
|
+
* Absolute path to `mkdocs.yml`
|
|
238
|
+
*/
|
|
239
|
+
const absMkdocsYmlPath = node_path_1.default.isAbsolute(mkDocsYmlPath)
|
|
240
|
+
? mkDocsYmlPath
|
|
241
|
+
: node_path_1.default.resolve(cwd, mkDocsYmlPath);
|
|
242
|
+
const { docs_dir: docsDir, nav = [] } = mkDocsYml;
|
|
243
|
+
/**
|
|
244
|
+
* Absolute path to the directory containing MkDocs input docs
|
|
245
|
+
*/
|
|
246
|
+
const mkDocsDocsDir = node_path_1.default.resolve(node_path_1.default.dirname(absMkdocsYmlPath), docsDir ?? 'docs');
|
|
247
|
+
/**
|
|
248
|
+
* @todo
|
|
249
|
+
* `commands` is a dirname configurable via the `commandsDir` option added by
|
|
250
|
+
* `@appium/typedoc-plugin-appium`. this lives in `typedoc.json`, but in order for it to be parsed
|
|
251
|
+
* using TypeDoc's facilities, we have to load plugins before reading `typedoc.json`, which is
|
|
252
|
+
* slow. we will probably have to support this in the future, but for now, we can just hardcode it
|
|
253
|
+
*/
|
|
254
|
+
const dirs = all ? await (0, fs_1.findDirsIn)(typeDocOutDir) : [node_path_1.default.join(typeDocOutDir, 'commands')];
|
|
255
|
+
let shouldWriteMkDocsYml = false;
|
|
256
|
+
const navData = parseNav(nav);
|
|
257
|
+
// this is the thing which will be assigned to the `nav` prop
|
|
258
|
+
// and thus written to `mkdocs.yml` if there were any changes.
|
|
259
|
+
// we don't need the `name` prop, since the name is already present in the keypath.
|
|
260
|
+
const newData = [];
|
|
261
|
+
for await (const dir of dirs) {
|
|
262
|
+
const { data, changed } = await getNavItemsForDir(dir, mkDocsDocsDir, navData, nav, all);
|
|
263
|
+
if (changed) {
|
|
264
|
+
shouldWriteMkDocsYml = true;
|
|
265
|
+
}
|
|
266
|
+
newData.push(...data);
|
|
267
|
+
}
|
|
268
|
+
if (shouldWriteMkDocsYml) {
|
|
269
|
+
applyNavData(newData, mkDocsYml);
|
|
270
|
+
const yaml = (0, fs_1.stringifyYaml)(mkDocsYml);
|
|
271
|
+
log.debug('Writing to %s:\n%s', mkDocsYmlPath, yaml);
|
|
272
|
+
await (0, fs_1.safeWriteFile)(mkDocsYmlPath, yaml, true);
|
|
273
|
+
log.success('Updated MkDocs navigation config for reference docs; please run "git add -A %s" and commit this change', relMkDocsYmlPath);
|
|
274
|
+
}
|
|
275
|
+
else {
|
|
276
|
+
log.info('No changes needed for MkDocs config at %s', relMkDocsYmlPath);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
exports.updateNav = updateNav;
|
|
280
|
+
//# sourceMappingURL=nav.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav.js","sourceRoot":"","sources":["../../../lib/builder/nav.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAEH,6CAAmC;AACnC,oDAAuB;AACvB,0DAA6B;AAC7B,4CAMsB;AACtB,oCAAuC;AACvC,8BAQe;AACf,uDAA+B;AAE/B,kCAAiC;AAEjC,MAAM,GAAG,GAAG,gBAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAE1C;;;;;GAKG;AACH,KAAK,UAAU,yBAAyB,CACtC,SAAiB,EACjB,aAAqB;IAErB,IAAI,CAAC,mBAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC/B,MAAM,IAAI,qBAAa,CAAC,gCAAgC,SAAS,GAAG,CAAC,CAAC;KACvE;IACD,IAAI,CAAC,mBAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;QACnC,MAAM,IAAI,qBAAa,CAAC,gCAAgC,aAAa,GAAG,CAAC,CAAC;KAC3E;IACD,MAAM,MAAM,GAAG,mBAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,MAAM,YAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC,CAAC,CAAC;IACnE,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACzD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,QAAQ,CAAC,GAAiB;IACxC,IAAI,SAAS,GAAoB,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAKpC,MAAM,KAAK,GAAgB,CAAC,EAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC,CAAC;IAEpD,OAAO,KAAK,CAAC,MAAM,EAAE;QACnB,MAAM,EAAC,OAAO,EAAE,OAAO,EAAC,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE;YACjC,IAAI,gBAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACpB,MAAM,OAAO,GAAkB;oBAC7B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG;oBAC5C,SAAS,EAAE,IAAI;iBAChB,CAAC;gBAEF,yDAAyD;gBACzD,4CAA4C;gBAC5C,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;oBAC7B,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC;iBACpB;gBACD,SAAS,GAAG,CAAC,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC;aACrC;iBAAM,IAAI,gBAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACxC,KAAK,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC;aACjF;SACF;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AA/BD,4BA+BC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,OAAwB,EAAE,MAAc;IACjE,OAAO,gBAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,uBAAuB,CAAC,iBAAyB,EAAE,MAAc,EAAE,IAAoB;IAC9F,OAAO,IAAI,EAAE,IAAI;QACf,CAAC,CAAC,GAAG,iBAAiB,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE;QAC/C,CAAC,CAAC,GAAG,iBAAiB,IAAI,MAAM,EAAE,CAAC;AACvC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CACvB,UAA8C,EAC9C,OAAwB;IAExB,MAAM,IAAI,GAAG,gBAAC,CAAC,OAAO,CACpB,UAAU,EACV,OAAO,EACP,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS,CACjE,CAAC;IACF,OAAO,CAAC,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,WAA4B,EAAE,MAAc;IACxE,iGAAiG;IACjG,8FAA8F;IAC9F,yBAAyB;IACzB,MAAM,sBAAsB,GAAG,gBAAC,CAAC,MAAM,CAAC,gBAAC,CAAC,KAAK,CAAC,WAAW,CAAE,CAAC,OAAO,CAAC,CAAC;IAEvE,0DAA0D;IAC1D,6CAA6C;IAC7C,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/F,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,iBAAiB,CAC9B,GAAW,EACX,aAAqB,EACrB,OAAwB,EACxB,GAAiB,EACjB,GAAG,GAAG,KAAK;IAEX,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,MAAM,iBAAiB,GAAkC,EAAE,CAAC;IAC5D,MAAM,wBAAwB,GAAG,MAAM,yBAAyB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IACrF,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE;QACpC,GAAG,CAAC,IAAI,CAAC,iDAAiD,EAAE,GAAG,CAAC,CAAC;QACjE,OAAO,EAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAC,CAAC;KACnC;IAED,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,gBAAC,CAAC,SAAS,CAAC,mBAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,8BAAkB,CAAC;IAC7E,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAE7D,2DAA2D;IAC3D,gCAAgC;IAChC,IAAI,cAAc,CAAC,MAAM,EAAE;QACzB,GAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC7E,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAE1E,KAAK,MAAM,SAAS,IAAI,wBAAwB,EAAE;YAChD,IAAI,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;YAC9E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;YAC/D,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YACpC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,uBAAuB,CAAC,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC5E,iBAAiB,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,SAAS,EAAC,CAAC,CAAC;SAC9C;QAED,uEAAuE;QACvE,IAAI,gBAAgB,CAAC,iBAAiB,EAAE,cAAc,CAAC,EAAE;YACvD,GAAG,CAAC,KAAK,CAAC,2CAA2C,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;YACrF,WAAW,GAAG,IAAI,CAAC;SACpB;aAAM;YACL,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC;SAClD;KACF;SAAM;QACL,GAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,SAAS,CAAC,CAAC;QACpD,IAAI,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;QAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,IAAI,wBAAwB,CAAC,OAAO,EAAE,EAAE;YACtE,iBAAiB,CAAC,IAAI,CAAC;gBACrB,OAAO,EAAE,GAAG,SAAS,IAAI,SAAS,IAAI,GAAG,EAAE;gBAC3C,SAAS,EAAE,cAAc;aAC1B,CAAC,CAAC;SACJ;QACD,GAAG,CAAC,KAAK,CAAC,oCAAoC,EAAE,SAAS,CAAC,CAAC;QAC3D,WAAW,GAAG,IAAI,CAAC;KACpB;IACD,OAAO,EAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,EAAC,CAAC;AACzD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,OAAwB,EAAE,SAAoB;IAClE,KAAK,MAAM,EAAC,OAAO,EAAE,SAAS,EAAC,IAAI,OAAO,EAAE;QAC1C,gBAAC,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;KAC/C;AACH,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,SAAS,CAAC,EAC9B,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EACnB,SAAS,EAAE,aAAa,EACxB,WAAW,EAAE,eAAe,EAC5B,GAAG,GAAG,KAAK,EACX,MAAM,GAAG,KAAK,MACG,EAAE;IACnB,iCAAiC;IACjC,wEAAwE;IACxE,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACnD,aAAa,IAAI,IAAA,kBAAa,EAAC,GAAG,CAAC;QACnC,eAAe,IAAI,IAAA,wBAAmB,EAAC,GAAG,CAAC;KAC5C,CAAC,CAAC;IACH,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,IAAI,qBAAa,CACrB,kBAAkB,2BAAe,SAAS,GAAG,WAAW,oBAAQ,qBAAqB,CACtF,CAAC;KACH;IACD,IAAI,CAAC,eAAe,EAAE;QACpB,MAAM,IAAI,qBAAa,CACrB,kBAAkB,6BAAiB,SAAS,GAAG,WAAW,oBAAQ,qBAAqB,CACxF,CAAC;KACH;IACD,MAAM,YAAY,GAAG,IAAA,eAAQ,EAAC,GAAG,CAAC,CAAC;IACnC,MAAM,gBAAgB,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,IAAA,oBAAe,EAAC,eAAe,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,CAAC,MAAM,IAAA,aAAQ,EAAC,aAAa,CAAC,CAAc,CAAC;IAE/D;;OAEG;IACH,MAAM,kBAAkB,GAAG,mBAAI,CAAC,UAAU,CAAC,eAAe,CAAC;QACzD,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAEvC;;OAEG;IACH,MAAM,aAAa,GAAG,mBAAI,CAAC,OAAO,CAChC,mBAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAChC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,wCAA4B,CACjE,CAAC;IAEF;;OAEG;IACH,MAAM,gBAAgB,GAAG,mBAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QACrD,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAErC,MAAM,EAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAG,EAAE,EAAC,GAAG,SAAS,CAAC;IAChD;;OAEG;IACH,MAAM,aAAa,GAAG,mBAAI,CAAC,OAAO,CAAC,mBAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,OAAO,IAAI,MAAM,CAAC,CAAC;IAEtF;;;;;;OAMG;IACH,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,IAAA,eAAU,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC;IAE5F,IAAI,oBAAoB,GAAG,KAAK,CAAC;IAEjC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAE9B,6DAA6D;IAC7D,8DAA8D;IAC9D,mFAAmF;IACnF,MAAM,OAAO,GAAkC,EAAE,CAAC;IAElD,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,EAAE;QAC5B,MAAM,EAAC,IAAI,EAAE,OAAO,EAAC,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACvF,IAAI,OAAO,EAAE;YACX,oBAAoB,GAAG,IAAI,CAAC;SAC7B;QACD,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;KACvB;IAED,IAAI,oBAAoB,EAAE;QACxB,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,IAAA,kBAAa,EAAC,SAAS,CAAC,CAAC;QACtC,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;QACrD,MAAM,IAAA,kBAAa,EAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,GAAG,CAAC,OAAO,CACT,wGAAwG,EACxG,gBAAgB,CACjB,CAAC;KACH;SAAM;QACL,GAAG,CAAC,IAAI,CAAC,2CAA2C,EAAE,gBAAgB,CAAC,CAAC;KACzE;AACH,CAAC;AA9FD,8BA8FC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds reference documentation via TypeDoc. The output is _markdown_, intended to be imported into MkDocs.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Executes TypeDoc _in the current process_
|
|
8
|
+
*
|
|
9
|
+
* You will probably want to run `updateNav()` after this.
|
|
10
|
+
*
|
|
11
|
+
* @privateRemarks Monkeypatches TypeDoc's homebrew "glob" implementation because it is broken
|
|
12
|
+
* @parma typeDocJsonPath - Path to `typedoc.json`
|
|
13
|
+
* @param opts - TypeDoc options
|
|
14
|
+
*/
|
|
15
|
+
export declare function runTypedoc(typeDocJsonPath: string, opts: Record<string, string>): Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Options for {@linkcode buildReferenceDocs}
|
|
18
|
+
*/
|
|
19
|
+
export interface BuildReferenceOptions {
|
|
20
|
+
/**
|
|
21
|
+
* Path to `typedoc.json`
|
|
22
|
+
*/
|
|
23
|
+
typedocJson?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Current working directory
|
|
26
|
+
*/
|
|
27
|
+
cwd?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Path to `package.json`
|
|
30
|
+
*/
|
|
31
|
+
packageJson?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Path to `tsconfig.json`
|
|
34
|
+
*/
|
|
35
|
+
tsconfigJson?: string;
|
|
36
|
+
/**
|
|
37
|
+
* "Title" for generated docs; this corresponds to {@linkcode typedoc.TypeDocOptionMap.name}
|
|
38
|
+
*/
|
|
39
|
+
title?: string;
|
|
40
|
+
/**
|
|
41
|
+
* This is here because we pass it thru to TypeDoc
|
|
42
|
+
*/
|
|
43
|
+
logLevel?: LogLevelName;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Log level names as supported by this package
|
|
47
|
+
*
|
|
48
|
+
* Used to convert our log level to TypeDoc's
|
|
49
|
+
*/
|
|
50
|
+
declare type LogLevelName = 'debug' | 'info' | 'error' | 'warn';
|
|
51
|
+
/**
|
|
52
|
+
* Build reference documentation via TypeDoc
|
|
53
|
+
* @param opts - Options
|
|
54
|
+
*/
|
|
55
|
+
export declare function buildReferenceDocs({ typedocJson: typeDocJsonPath, cwd, tsconfigJson: tsconfig, logLevel, title, }?: BuildReferenceOptions): Promise<void>;
|
|
56
|
+
export {};
|
|
57
|
+
//# sourceMappingURL=reference.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reference.d.ts","sourceRoot":"","sources":["../../../lib/builder/reference.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoCH;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,iBAsBrF;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED;;;;GAIG;AACH,aAAK,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAexD;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,WAAW,EAAE,eAAe,EAC5B,GAAmB,EACnB,YAAY,EAAE,QAAQ,EACtB,QAA4B,EAC5B,KAAK,GACN,GAAE,qBAA0B,iBAyD5B"}
|