help.js
1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
function _react() {
const data = _interopRequireDefault(require("react"));
_react = function _react() {
return data;
};
return data;
}
function _utils() {
const data = require("@umijs/utils");
_utils = function _utils() {
return data;
};
return data;
}
function _assert() {
const data = _interopRequireDefault(require("assert"));
_assert = function _assert() {
return data;
};
return data;
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function getDescriptions(commands) {
return Object.keys(commands).filter(name => typeof commands[name] !== 'string').map(name => {
return getDescription(commands[name]);
});
}
function getDescription(command) {
return ` ${_utils().chalk.green(_utils().lodash.padEnd(command.name, 10))}${command.description || ''}`;
}
function padLeft(str) {
return str.split('\n').map(line => ` ${line}`).join('\n');
}
var _default = api => {
api.registerCommand({
name: 'help',
description: 'show command helps',
fn({
args
}) {
const commandName = args._[0];
if (commandName) {
const command = api.service.commands[commandName];
(0, _assert().default)(command, `Command ${commandName} not found.`);
console.log(`
Usage: umi ${commandName} [options]
Options:
Details:
${command.details ? padLeft(command.details.trim()) : ''}
`);
} else {
console.log(`
Usage: umi <command> [options]
Commands:
${getDescriptions(api.service.commands).join('\n')}
Run \`${_utils().chalk.bold('umi help <command>')}\` for more information of specific commands.
Visit ${_utils().chalk.bold('https://umijs.org/')} to learn more about Umi.
`);
}
}
});
};
exports.default = _default;