erii 2.0.5 → 3.0.0-beta.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/dist/index.js DELETED
@@ -1,345 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Erii = void 0;
4
- const yargs = require('yargs-parser');
5
- const CLI = require('clui'), clc = require('cli-color');
6
- const chalk = require('chalk');
7
- const validator = require('validator');
8
- const convert_1 = require("./utils/convert");
9
- ;
10
- class Erii {
11
- constructor() {
12
- this.parsedArguments = {};
13
- this.version = "1.0.0";
14
- this.name = "Erii";
15
- this.commands = {};
16
- this.commonOptions = [];
17
- this.rawArguments = process.argv.slice(2);
18
- this.parsedArguments = yargs(process.argv.slice(2));
19
- this.validator = validator;
20
- // 不响应-后第二个字符起的命令
21
- for (const key of Object.keys(this.parsedArguments)) {
22
- if (key !== "_" && (!this.rawArguments.includes('--' + key) && !this.rawArguments.includes('-' + key))) {
23
- delete this.parsedArguments[key];
24
- }
25
- }
26
- }
27
- /**
28
- * 绑定命令处理函数
29
- * @param config
30
- * @param handler
31
- */
32
- bind(config, handler) {
33
- if (config.name === undefined) {
34
- return console.error(chalk.red("Invalid command binding, ignored."));
35
- }
36
- const { name, description, argument } = config;
37
- const mainCommand = Array.isArray(name) ? name.shift() : name;
38
- this.commands[mainCommand] = {
39
- name: mainCommand,
40
- description,
41
- argument,
42
- alias: [],
43
- options: [],
44
- handler
45
- };
46
- if (Array.isArray(name)) {
47
- for (const alias of name) {
48
- this.commands[mainCommand].alias.push(alias);
49
- this.commands[alias] = {
50
- name: alias,
51
- redirect: mainCommand
52
- };
53
- }
54
- }
55
- }
56
- /**
57
- * 总是执行
58
- * @param handler
59
- */
60
- always(handler) {
61
- this.alwaysHandler = handler;
62
- }
63
- /**
64
- *
65
- */
66
- default(handler) {
67
- this.defaultHandler = handler;
68
- }
69
- /**
70
- * 增加设置项
71
- * @param config
72
- */
73
- addOption(config) {
74
- config.name = Array.isArray(config.name) ? config.name : [config.name];
75
- if (!config.command) {
76
- this.commonOptions.push(config);
77
- }
78
- else {
79
- if (!(config.command in this.commands)) {
80
- return console.error(chalk.red(`Command for option [${config.name.join(', ')}] not found, ignored.`));
81
- }
82
- this.commands[config.command].options.push(config);
83
- }
84
- }
85
- /**
86
- *
87
- * @param command
88
- */
89
- commandCtx(command) {
90
- return {
91
- showVersion: () => {
92
- this.showVersion();
93
- },
94
- showHelp: () => {
95
- this.showHelp();
96
- },
97
- getArgument: (commandName = command) => {
98
- return this.getArgument(commandName);
99
- }
100
- };
101
- }
102
- /**
103
- * 设定基础信息
104
- * @param metaInfo
105
- */
106
- setMetaInfo({ version = "", name = "" } = {}) {
107
- this.version = version;
108
- this.name = name;
109
- }
110
- /**
111
- * 显示帮助信息
112
- */
113
- showHelp(command) {
114
- this.showVersion();
115
- console.log('\nHelp:');
116
- const Line = CLI.Line;
117
- new Line()
118
- .padding(5)
119
- .column('Commands', 30, [clc.cyan])
120
- .column('Description', 30, [clc.cyan])
121
- .column('Alias', 20, [clc.cyan])
122
- .output();
123
- new Line().output();
124
- for (const key of Object.keys(this.commands)) {
125
- if (this.commands[key].redirect) {
126
- continue;
127
- }
128
- let commandText = '--' + key;
129
- let aliasText = '';
130
- if (this.commands[key].argument) {
131
- commandText += ` <${this.commands[key].argument.name}>`;
132
- }
133
- if (this.commands[key].alias.length > 0) {
134
- const aliasWithPrefixes = this.commands[key].alias.map(alias => alias.length === 1 ? `-${alias}` : `--${alias}`);
135
- aliasText += aliasWithPrefixes.join(' / ');
136
- }
137
- new Line()
138
- .padding(5)
139
- .column(commandText, 30)
140
- .column(this.commands[key].description, 30)
141
- .column(aliasText, 20)
142
- .output();
143
- if (this.commands[key].argument) {
144
- // 参数说明
145
- new Line()
146
- .padding(9)
147
- .column(`<${this.commands[key].argument.name}>`, 26)
148
- .column(this.commands[key].argument.description, 30)
149
- .output();
150
- }
151
- if (this.commands[key].options.length > 0) {
152
- // 设置项说明
153
- for (const option of this.commands[key].options) {
154
- let optionsText = '';
155
- const optionName = Array.isArray(option.name) ? option.name : [option.name];
156
- if (option.argument) {
157
- optionsText += `--${optionName.join(', ')} <${option.argument.name}>`;
158
- }
159
- else {
160
- optionsText += `--${optionName.join(', ')}`;
161
- }
162
- ;
163
- new Line()
164
- .padding(9)
165
- .column(optionsText, 26)
166
- .column(option.description || '')
167
- .output();
168
- if (option.argument) {
169
- // 设置项参数说明
170
- new Line()
171
- .padding(13)
172
- .column(`<${option.argument.name}>`, 22)
173
- .column(option.argument.description || '')
174
- .output();
175
- }
176
- }
177
- }
178
- }
179
- new Line().output();
180
- if (this.commonOptions.length > 0) {
181
- // 通用设置项说明
182
- console.log('Options:\n');
183
- new Line()
184
- .padding(5)
185
- .column('Options', 30, [clc.cyan])
186
- .column('Description', 30, [clc.cyan])
187
- .output();
188
- for (const option of this.commonOptions) {
189
- let optionsText = '';
190
- const optionName = Array.isArray(option.name) ? option.name : [option.name];
191
- if (option.argument) {
192
- optionsText += `--${optionName.join(', ')} <${option.argument.name}>`;
193
- }
194
- else {
195
- optionsText += `--${optionName.join(', ')}`;
196
- }
197
- ;
198
- new Line()
199
- .padding(5)
200
- .column(optionsText, 30)
201
- .column(option.description || '')
202
- .output();
203
- if (option.argument) {
204
- // 设置项参数说明
205
- new Line()
206
- .padding(9)
207
- .column(`<${option.argument.name}>`, 26)
208
- .column(option.argument.description || '')
209
- .output();
210
- }
211
- }
212
- }
213
- }
214
- /**
215
- * 显示版本号
216
- */
217
- showVersion() {
218
- console.log(`${this.name} / ${this.version}`);
219
- }
220
- /**
221
- * 启动
222
- */
223
- start() {
224
- if (this.alwaysHandler) {
225
- this.alwaysHandler();
226
- }
227
- if (this.defaultHandler) {
228
- if (this.parsedArguments['_'].length === 0 && Object.keys(this.parsedArguments).length === 1) {
229
- this.defaultHandler();
230
- }
231
- }
232
- for (const key of Object.keys(this.parsedArguments)) {
233
- if (key in this.commands) {
234
- this.exec(key);
235
- }
236
- }
237
- for (const key of this.parsedArguments['_']) {
238
- if (key in this.commands) {
239
- this.exec(key);
240
- }
241
- }
242
- }
243
- /**
244
- * 执行命令担当函数
245
- * @param command
246
- * @param extraArguments
247
- */
248
- exec(command) {
249
- if (this.commands[command].redirect) {
250
- // 别名重定向
251
- this.exec(this.commands[command].redirect);
252
- }
253
- else {
254
- // 传递绑定的设置及通用设置
255
- const options = {};
256
- const bandOptions = this.commands[command].options.concat(this.commonOptions);
257
- for (const option of bandOptions) {
258
- for (const name of option.name) {
259
- if (name in this.parsedArguments) {
260
- // do option argument validation
261
- if (this.validateArgument(this.parsedArguments[name], option.argument)) {
262
- options[option.name[0]] = this.parsedArguments[name];
263
- }
264
- else {
265
- console.error(chalk.red(`Argument validation failed for option '${name}'.`));
266
- if (typeof option.argument.validate === 'string') {
267
- console.error(chalk.red(`<${option.argument.name}> should be a/an ${option.argument.validate.slice(2)}.`));
268
- }
269
- }
270
- }
271
- }
272
- }
273
- // do command argument validation
274
- if (this.validateArgument(this.parsedArguments[command], this.commands[command].argument)) {
275
- this.commands[command].handler(this.commandCtx(command), convert_1.createCamelProxifiedObject(options));
276
- }
277
- else {
278
- console.error(chalk.red(`Argument validation failed for command ${command}`));
279
- const validateMethod = this.commands[command].argument.validate;
280
- if (typeof validateMethod === 'string') {
281
- console.error(chalk.red(`<${this.commands[command].argument.name}> should be a/an ${validateMethod.slice(2)}.`));
282
- }
283
- }
284
- }
285
- }
286
- validateArgument(argumentValue, argument) {
287
- if (!argument || !argument.validate) {
288
- // no need to validate
289
- return true;
290
- }
291
- if (typeof argument.validate === "string") {
292
- if (argument.validate in this.validator) {
293
- return this.validator[argument.validate](argumentValue.toString());
294
- }
295
- else {
296
- console.error(chalk.red(`Unknown validate method for ${argument.name}.`));
297
- return true;
298
- }
299
- }
300
- else {
301
- // custom validator
302
- return argument.validate(argumentValue, (message) => {
303
- console.log(chalk.red(message));
304
- });
305
- }
306
- }
307
- /**
308
- * 获得命令的参数
309
- * @param commandName
310
- * @param followRedirect 是否遵循重定向
311
- */
312
- getArgument(commandName, followRedirect = true) {
313
- if (this.commands[commandName]) {
314
- if (this.commands[commandName].redirect) {
315
- return this.getArgument(this.commands[commandName].redirect);
316
- }
317
- else {
318
- if (Object.keys(this.parsedArguments).includes(commandName) && commandName !== '_') {
319
- return this.parsedArguments[commandName];
320
- }
321
- else {
322
- for (const alias of this.commands[commandName].alias) {
323
- if (Object.keys(this.parsedArguments).includes(alias)) {
324
- return this.parsedArguments[alias];
325
- }
326
- }
327
- console.error(chalk.red(`Command ${commandName} not found.`));
328
- }
329
- }
330
- }
331
- else {
332
- console.error(chalk.red(`Command ${commandName} not found.`));
333
- }
334
- }
335
- /**
336
- * 启动
337
- * エリイ 起きてます❤
338
- */
339
- okite() {
340
- return this.start();
341
- }
342
- }
343
- exports.Erii = Erii;
344
- exports.default = new Erii();
345
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- export declare function toCamelCase(str: string): string;
2
- export declare function toKebabCase(str: string): string;
3
- export declare function convertObjectKey(before: {
4
- [index: string]: any;
5
- }): {
6
- [k: string]: any;
7
- };
8
- export declare function createCamelProxifiedObject(before: {
9
- [index: string]: any;
10
- }): {
11
- [index: string]: any;
12
- };
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createCamelProxifiedObject = exports.convertObjectKey = exports.toKebabCase = exports.toCamelCase = void 0;
4
- function toCamelCase(str) {
5
- return str.replace(/([-_][a-z])/gi, ($1) => {
6
- return $1.toUpperCase().replace("-", "");
7
- });
8
- }
9
- exports.toCamelCase = toCamelCase;
10
- function toKebabCase(str) {
11
- return (str[0].toLowerCase() +
12
- str
13
- .slice(1, str.length)
14
- .replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`));
15
- }
16
- exports.toKebabCase = toKebabCase;
17
- function convertObjectKey(before) {
18
- return Object.fromEntries(Object.entries(before).map(([key, value]) => [toCamelCase(key), value]));
19
- }
20
- exports.convertObjectKey = convertObjectKey;
21
- function createCamelProxifiedObject(before) {
22
- const originalObject = before;
23
- return new Proxy(before, {
24
- get: (target, key) => {
25
- var _a;
26
- return (_a = originalObject[key]) !== null && _a !== void 0 ? _a : originalObject[toKebabCase(key)];
27
- },
28
- set: (target, key, value) => {
29
- // 如果赋值的是camel case的key,而驼峰形式key是从kebab case的key proxy来的 则赋值其kebab case形式的key的值
30
- if (!key.includes("-") &&
31
- (originalObject[key] === undefined ||
32
- originalObject[key] === null) &&
33
- originalObject[toKebabCase(key)] !== undefined &&
34
- originalObject[toKebabCase(key)] !== null) {
35
- target[toKebabCase(key)] = value;
36
- }
37
- else {
38
- target[key] = value;
39
- }
40
- return value;
41
- },
42
- });
43
- }
44
- exports.createCamelProxifiedObject = createCamelProxifiedObject;
45
- //# sourceMappingURL=convert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/utils/convert.ts"],"names":[],"mappings":";;;AAAA,SAAgB,WAAW,CAAC,GAAW;IACnC,OAAO,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,EAAE;QACvC,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC;AAJD,kCAIC;AAED,SAAgB,WAAW,CAAC,GAAW;IACnC,OAAO,CACH,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;QACpB,GAAG;aACE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC;aACpB,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CACjE,CAAC;AACN,CAAC;AAPD,kCAOC;AAED,SAAgB,gBAAgB,CAAC,MAAgC;IAC7D,OAAO,MAAM,CAAC,WAAW,CACrB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAC1E,CAAC;AACN,CAAC;AAJD,4CAIC;AAED,SAAgB,0BAA0B,CAAC,MAAgC;IACvE,MAAM,cAAc,GAAG,MAAM,CAAC;IAC9B,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;QACrB,GAAG,EAAE,CAAC,MAAqB,EAAE,GAAW,EAAE,EAAE;;YACxC,aAAO,cAAc,CAAC,GAAG,CAAC,mCAAI,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,GAAG,EAAE,CAAC,MAAqB,EAAE,GAAW,EAAE,KAAU,EAAE,EAAE;YACpD,+EAA+E;YAC/E,IACI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAClB,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,SAAS;oBAC9B,cAAc,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;gBACjC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS;gBAC9C,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAC3C;gBACE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;aACpC;iBAAM;gBACH,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACvB;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;KACJ,CAAC,CAAC;AACP,CAAC;AAtBD,gEAsBC"}