mirror of
https://github.com/documentationjs/documentation.git
synced 2026-01-18 14:17:30 +00:00
* feat(core): Switch to Promises everywhere. Adopt Node v4 ES6 Big changes: * Uses template strings where appropriate * Config and argument parsing is unified and there is no such thing as formatterOptions anymore. All user-passed options go through mergeConfig. * The node API surface changed (again): `buildSync` is removed, building operations return Promises. * Now using Flow for internal type annotations. More changes: * Remove buildSync command * feat(inference): Partially implement object shorthand support * Refs #649 * Use Flow annotations to enforce types * Keep flow but switch to comment syntax * Clarify types * More flow improvements * Turn server into class * LinkerStack becomes class too * Fix comment description type * Run flow on lint * Many more flow fixes * More intense flow refactoring * Simplify inference steps * Update inference tests, flow errors down to 1 * Continue refining types * Fix more flow issues * Use 'use strict' everywhere * Make 'ast' property configurable * Fix many tests * Fix more tests * Fix more tests * Fix augments * Test Markdown meta support * Improve test coverage * Switch back from for of to for for speed
63 lines
1.4 KiB
JavaScript
Executable File
63 lines
1.4 KiB
JavaScript
Executable File
#!/usr/bin/env node
|
|
|
|
/* eslint no-console: 0 */
|
|
|
|
'use strict';
|
|
|
|
var yargs = require('yargs'),
|
|
commands = require('../lib/commands');
|
|
|
|
var argv = yargs
|
|
.command(commands.serve)
|
|
.command(commands.build)
|
|
.command(commands.lint)
|
|
.command(commands.readme)
|
|
.fail(function (msg, error) {
|
|
if (error) {
|
|
throw error;
|
|
} else {
|
|
yargs.showHelp('error');
|
|
console.error(msg);
|
|
return yargs.exit(1);
|
|
}
|
|
})
|
|
.version(function () {
|
|
return require('../package').version;
|
|
})
|
|
.usage(`Usage:
|
|
|
|
# generate markdown docs for index.js and files it references
|
|
$0 build index.js -f md
|
|
|
|
# generate html docs for all files in src
|
|
$0 build src/** -f html -o docs
|
|
|
|
# document index.js, ignoring any files it requires or imports
|
|
$0 build index.js -f md --shallow
|
|
|
|
# build, serve, and live-update html docs for app.js
|
|
$0 serve app.js
|
|
|
|
# validate JSDoc syntax in util.js
|
|
$0 lint util.js
|
|
|
|
# update the API section of README.md with docs from index.js
|
|
$0 readme index.js --section=API
|
|
|
|
# build docs for all values exported by index.js
|
|
$0 build --document-exported index.js
|
|
`)
|
|
.recommendCommands()
|
|
.help()
|
|
.argv;
|
|
|
|
if (argv.private) {
|
|
console.error('--private is deprecated, please use the --access (or -a) option instead');
|
|
console.error('for example: -a public -a private -a protected -a undefined');
|
|
}
|
|
|
|
if (!argv._handled) {
|
|
yargs.showHelp('error');
|
|
process.exit(1);
|
|
}
|