zova-cli 1.1.65

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 (71) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -0
  3. package/dist/bin/cabloy.d.ts +3 -0
  4. package/dist/bin/cabloy.d.ts.map +1 -0
  5. package/dist/bin/cabloy.js +6 -0
  6. package/dist/bin/cabloy.js.map +1 -0
  7. package/dist/bin/zova.d.ts +3 -0
  8. package/dist/bin/zova.d.ts.map +1 -0
  9. package/dist/bin/zova.js +6 -0
  10. package/dist/bin/zova.js.map +1 -0
  11. package/dist/config.d.ts +42 -0
  12. package/dist/config.d.ts.map +1 -0
  13. package/dist/config.js +37 -0
  14. package/dist/config.js.map +1 -0
  15. package/dist/index.d.ts +4 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +20 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/lib/bean.cli.base.d.ts +34 -0
  20. package/dist/lib/bean.cli.base.d.ts.map +1 -0
  21. package/dist/lib/bean.cli.base.js +177 -0
  22. package/dist/lib/bean.cli.base.js.map +1 -0
  23. package/dist/lib/bean.cli.d.ts +16 -0
  24. package/dist/lib/bean.cli.d.ts.map +1 -0
  25. package/dist/lib/bean.cli.js +38 -0
  26. package/dist/lib/bean.cli.js.map +1 -0
  27. package/dist/lib/cli.d.ts +45 -0
  28. package/dist/lib/cli.d.ts.map +1 -0
  29. package/dist/lib/cli.js +220 -0
  30. package/dist/lib/cli.js.map +1 -0
  31. package/dist/lib/commands.d.ts +7 -0
  32. package/dist/lib/commands.d.ts.map +1 -0
  33. package/dist/lib/commands.js +51 -0
  34. package/dist/lib/commands.js.map +1 -0
  35. package/dist/lib/index.d.ts +3 -0
  36. package/dist/lib/index.d.ts.map +1 -0
  37. package/dist/lib/index.js +19 -0
  38. package/dist/lib/index.js.map +1 -0
  39. package/dist/lib/local.console.d.ts +11 -0
  40. package/dist/lib/local.console.d.ts.map +1 -0
  41. package/dist/lib/local.console.js +53 -0
  42. package/dist/lib/local.console.js.map +1 -0
  43. package/dist/lib/local.helper.d.ts +83 -0
  44. package/dist/lib/local.helper.d.ts.map +1 -0
  45. package/dist/lib/local.helper.js +196 -0
  46. package/dist/lib/local.helper.js.map +1 -0
  47. package/dist/lib/local.template.d.ts +98 -0
  48. package/dist/lib/local.template.d.ts.map +1 -0
  49. package/dist/lib/local.template.js +308 -0
  50. package/dist/lib/local.template.js.map +1 -0
  51. package/dist/start.d.ts +22 -0
  52. package/dist/start.d.ts.map +1 -0
  53. package/dist/start.js +88 -0
  54. package/dist/start.js.map +1 -0
  55. package/dist/types/argv.d.ts +23 -0
  56. package/dist/types/argv.d.ts.map +1 -0
  57. package/dist/types/argv.js +3 -0
  58. package/dist/types/argv.js.map +1 -0
  59. package/dist/types/console.d.ts +9 -0
  60. package/dist/types/console.d.ts.map +1 -0
  61. package/dist/types/console.js +3 -0
  62. package/dist/types/console.js.map +1 -0
  63. package/dist/types/helper.d.ts +10 -0
  64. package/dist/types/helper.d.ts.map +1 -0
  65. package/dist/types/helper.js +3 -0
  66. package/dist/types/helper.js.map +1 -0
  67. package/dist/types/index.d.ts +4 -0
  68. package/dist/types/index.d.ts.map +1 -0
  69. package/dist/types/index.js +20 -0
  70. package/dist/types/index.js.map +1 -0
  71. package/package.json +58 -0
@@ -0,0 +1,220 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CliCommand = void 0;
7
+ const is_type_of_1 = __importDefault(require("is-type-of"));
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const enquirer_1 = __importDefault(require("enquirer"));
10
+ const egg_born_utils_1 = __importDefault(require("egg-born-utils"));
11
+ const common_bin_1 = __importDefault(require("@zhennann/common-bin"));
12
+ const bean_cli_js_1 = require("./bean.cli.js");
13
+ const __envFields = ['TERM', 'TERM_PROGRAM', 'TERM_PROGRAM_VERSION', 'SHELL', 'COLOR', 'LANG', 'npm_config_registry'];
14
+ const __comment_seperator = '====================================================================';
15
+ class CliCommand extends common_bin_1.default {
16
+ constructor(rawArgv, { meta, argv }) {
17
+ super(rawArgv);
18
+ Object.defineProperty(this, "__meta", {
19
+ enumerable: true,
20
+ configurable: true,
21
+ writable: true,
22
+ value: void 0
23
+ });
24
+ Object.defineProperty(this, "__groups", {
25
+ enumerable: true,
26
+ configurable: true,
27
+ writable: true,
28
+ value: void 0
29
+ });
30
+ Object.defineProperty(this, "__argv", {
31
+ enumerable: true,
32
+ configurable: true,
33
+ writable: true,
34
+ value: void 0
35
+ });
36
+ Object.defineProperty(this, "__cabloyConfig", {
37
+ enumerable: true,
38
+ configurable: true,
39
+ writable: true,
40
+ value: void 0
41
+ });
42
+ Object.defineProperty(this, "cabloyConfig", {
43
+ enumerable: true,
44
+ configurable: true,
45
+ writable: true,
46
+ value: void 0
47
+ });
48
+ this.usage = meta.info.usage;
49
+ this.version = meta.info.version;
50
+ this.options = meta.options;
51
+ this.__meta = meta;
52
+ this.__groups = meta.groups;
53
+ this.__argv = argv;
54
+ this.__cabloyConfig = null;
55
+ this.cabloyConfig = null;
56
+ }
57
+ async run(options) {
58
+ let { argv, cwd, env, rawArgv } = options;
59
+ // argv
60
+ argv = Object.assign({}, argv, this.__argv);
61
+ delete argv.t;
62
+ delete argv.token;
63
+ delete argv.$0;
64
+ // context
65
+ const context = { argv, cwd, env: this._adjustEnv({ env }), rawArgv };
66
+ // log start
67
+ console.log(`zova ${chalk_1.default.cyan(argv.cliFullName)} at %s\n`, cwd);
68
+ // log meta welcomes
69
+ this._logMetaWelcomes();
70
+ // prompt
71
+ await this._promptGroups({ context, groups: this.__groups });
72
+ // execute
73
+ const beanCli = new bean_cli_js_1.BeanCli();
74
+ await beanCli.execute({ context });
75
+ // done: log cli docs
76
+ this._logCliDocs();
77
+ // done
78
+ console.log(chalk_1.default.cyan('\n cli successfully!\n'));
79
+ }
80
+ _getMetaWelcomes() {
81
+ let welcomes = this.__meta.info.welcomes;
82
+ if (!welcomes)
83
+ return null;
84
+ if (!Array.isArray(welcomes))
85
+ welcomes = [welcomes];
86
+ if (welcomes.length === 0)
87
+ return null;
88
+ return welcomes;
89
+ }
90
+ _logMetaWelcomes() {
91
+ const welcomes = this._getMetaWelcomes();
92
+ if (!welcomes)
93
+ return;
94
+ console.log(__comment_seperator);
95
+ for (const welcome of welcomes) {
96
+ console.log(welcome);
97
+ }
98
+ console.log(__comment_seperator);
99
+ console.log('');
100
+ }
101
+ _logCliDocs() {
102
+ const welcomes = this._getMetaWelcomes();
103
+ if (!welcomes)
104
+ return;
105
+ const welcome = welcomes[0];
106
+ if (!welcome || welcome.indexOf('articles/cli-introduce.html') === -1)
107
+ return;
108
+ console.log('');
109
+ console.log(__comment_seperator);
110
+ console.log(welcome);
111
+ console.log(__comment_seperator);
112
+ }
113
+ _adjustEnv({ env }) {
114
+ const res = {};
115
+ for (const field of __envFields) {
116
+ if (env[field])
117
+ res[field] = env[field];
118
+ }
119
+ return res;
120
+ }
121
+ async _promptGroups({ context, groups }) {
122
+ for (const groupName in groups) {
123
+ const group = groups[groupName];
124
+ await this._promptGroup({ group, context });
125
+ }
126
+ }
127
+ async _promptGroup({ group, context }) {
128
+ const { argv } = context;
129
+ // check
130
+ const check = this._checkGroupCondition({ group, context });
131
+ if (!check)
132
+ return;
133
+ // prepare
134
+ const varsWant = [];
135
+ for (const key in group.questions) {
136
+ const value = argv[key];
137
+ if (value !== undefined)
138
+ continue;
139
+ const question = group.questions[key];
140
+ const varWant = this._prepareQuestion({ group, question, key, context });
141
+ if (varWant) {
142
+ varsWant.push(varWant);
143
+ }
144
+ }
145
+ if (varsWant.length === 0)
146
+ return;
147
+ // log description
148
+ if (group.description) {
149
+ console.log('===>', group.description);
150
+ }
151
+ // prompt
152
+ await enquirer_1.default.prompt(varsWant);
153
+ }
154
+ _prepareQuestionPropertyExpression({ group, question, key, context, propName }) {
155
+ // expression
156
+ const expression = question[propName] && question[propName].expression;
157
+ if (!expression)
158
+ return null;
159
+ return function (value) {
160
+ return egg_born_utils_1.default.tools.evaluateExpression({ expression, scope: { value, group, question, key, context } });
161
+ };
162
+ }
163
+ _prepareQuestion({ group, question, key, context }) {
164
+ const { argv } = context;
165
+ // want
166
+ const varWant = {
167
+ name: key,
168
+ ...question,
169
+ };
170
+ // message/skip/initial/format/validate
171
+ for (const propName of ['message', 'skip', 'initial', 'format', 'validate']) {
172
+ const propFunction = this._prepareQuestionPropertyExpression({ group, question, key, context, propName });
173
+ if (propFunction) {
174
+ varWant[propName] = propFunction;
175
+ }
176
+ }
177
+ // special check initial
178
+ let initial = varWant.initial;
179
+ if (initial && is_type_of_1.default.function(initial)) {
180
+ initial = initial();
181
+ if (initial !== undefined) {
182
+ argv[key] = initial;
183
+ return null;
184
+ }
185
+ }
186
+ // result
187
+ varWant.result = value => {
188
+ const propFunction = this._prepareQuestionPropertyExpression({
189
+ group,
190
+ question,
191
+ key,
192
+ context,
193
+ propName: 'result',
194
+ });
195
+ if (propFunction) {
196
+ value = propFunction(value);
197
+ }
198
+ argv[key] = value;
199
+ return value;
200
+ };
201
+ // required
202
+ if (question.required) {
203
+ varWant.validate = value => {
204
+ if (!value)
205
+ return 'Required';
206
+ return true;
207
+ };
208
+ }
209
+ // ok
210
+ return varWant;
211
+ }
212
+ _checkGroupCondition({ group, context }) {
213
+ const expression = group.condition && group.condition.expression;
214
+ if (!expression)
215
+ return true;
216
+ return egg_born_utils_1.default.tools.evaluateExpression({ expression, scope: { group, context } });
217
+ }
218
+ }
219
+ exports.CliCommand = CliCommand;
220
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/lib/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare function getCommandsMeta(): Promise<{
2
+ map: any;
3
+ all: any;
4
+ }>;
5
+ export declare function findCommand(cliFullName: string): any;
6
+ export declare function collectCommands(): Promise<void>;
7
+ //# sourceMappingURL=commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/lib/commands.ts"],"names":[],"mappings":"AAIA,wBAAsB,eAAe;;;GAGpC;AAED,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,OAE9C;AAED,wBAAsB,eAAe,kBAEpC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.collectCommands = exports.findCommand = exports.getCommandsMeta = void 0;
4
+ const config_js_1 = require("../config.js");
5
+ let __commandsMeta;
6
+ async function getCommandsMeta() {
7
+ await collectCommands();
8
+ return __commandsMeta;
9
+ }
10
+ exports.getCommandsMeta = getCommandsMeta;
11
+ function findCommand(cliFullName) {
12
+ return __commandsMeta.map[cliFullName];
13
+ }
14
+ exports.findCommand = findCommand;
15
+ async function collectCommands() {
16
+ await _collectCommands();
17
+ }
18
+ exports.collectCommands = collectCommands;
19
+ async function _collectCommands() {
20
+ if (__commandsMeta)
21
+ return;
22
+ const _commandsMap = {};
23
+ const _commandsAll = {};
24
+ const sets = config_js_1.commandsConfig.sets;
25
+ for (const setName in sets) {
26
+ const setModuleName = sets[setName];
27
+ const setModule = await import(setModuleName);
28
+ const commands = setModule.commands;
29
+ if (!commands)
30
+ continue;
31
+ const _commandsSet = (_commandsAll[setName] = {});
32
+ for (const groupName in commands) {
33
+ const group = commands[groupName];
34
+ const _commandsGroup = (_commandsSet[groupName] = {});
35
+ for (const key in group) {
36
+ const command = group[key];
37
+ const fullKey = `${setName}:${groupName}:${key}`;
38
+ // command BeanClass
39
+ const BeanClass = setModule.beans[command.bean];
40
+ // ok
41
+ _commandsMap[fullKey] = _commandsGroup[key] = { command, BeanClass };
42
+ }
43
+ }
44
+ }
45
+ // ok
46
+ __commandsMeta = {
47
+ map: _commandsMap,
48
+ all: _commandsAll,
49
+ };
50
+ }
51
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/lib/commands.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAE9C,IAAI,cAAsC,CAAC;AAEpC,KAAK,UAAU,eAAe;IACnC,MAAM,eAAe,EAAE,CAAC;IACxB,OAAO,cAAc,CAAC;AACxB,CAAC;AAHD,0CAGC;AAED,SAAgB,WAAW,CAAC,WAAmB;IAC7C,OAAO,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACzC,CAAC;AAFD,kCAEC;AAEM,KAAK,UAAU,eAAe;IACnC,MAAM,gBAAgB,EAAE,CAAC;AAC3B,CAAC;AAFD,0CAEC;AAED,KAAK,UAAU,gBAAgB;IAC7B,IAAI,cAAc;QAAE,OAAO;IAC3B,MAAM,YAAY,GAAQ,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAQ,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,0BAAc,CAAC,IAAI,CAAC;IACjC,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,MAAM,YAAY,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAClD,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,cAAc,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;YACtD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAG,GAAG,OAAO,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;gBACjD,oBAAoB;gBACpB,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChD,KAAK;gBACL,YAAY,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;YACvE,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK;IACL,cAAc,GAAG;QACf,GAAG,EAAE,YAAY;QACjB,GAAG,EAAE,YAAY;KAClB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './bean.cli.base.js';
2
+ export * from './commands.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC"}
@@ -0,0 +1,19 @@
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("./bean.cli.base.js"), exports);
18
+ __exportStar(require("./commands.js"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,gDAA8B"}
@@ -0,0 +1,11 @@
1
+ import { IConsoleLogData, IConsoleLogOptions } from '../types/console.js';
2
+ import { BeanCliBase } from './bean.cli.base.js';
3
+ export declare class LocalConsole {
4
+ cli: BeanCliBase;
5
+ constructor(cli: any);
6
+ get options(): import("../index.js").CmdOptions;
7
+ get context(): import("../index.js").ICommandContext;
8
+ log(data?: IConsoleLogData | string, options?: IConsoleLogOptions): Promise<void>;
9
+ _adjustText(prefix: any, text: any): string;
10
+ }
11
+ //# sourceMappingURL=local.console.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.console.d.ts","sourceRoot":"","sources":["../../src/lib/local.console.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBAAa,YAAY;IACvB,GAAG,EAAE,WAAW,CAAC;gBAEL,GAAG,KAAA;IAIf,IAAI,OAAO,qCAEV;IAED,IAAI,OAAO,0CAEV;IAEK,GAAG,CAAC,IAAI,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,OAAO,GAAE,kBAAuB;IAyB3E,WAAW,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA;CAMzB"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LocalConsole = void 0;
4
+ class LocalConsole {
5
+ constructor(cli) {
6
+ Object.defineProperty(this, "cli", {
7
+ enumerable: true,
8
+ configurable: true,
9
+ writable: true,
10
+ value: void 0
11
+ });
12
+ this.cli = cli;
13
+ }
14
+ get options() {
15
+ return this.cli.options;
16
+ }
17
+ get context() {
18
+ return this.cli.options.context;
19
+ }
20
+ async log(data, options = {}) {
21
+ if (!data)
22
+ return;
23
+ // data
24
+ if (typeof data !== 'object') {
25
+ data = { text: String(data) };
26
+ }
27
+ let { /* progressNo,*/ total, progress, text } = data;
28
+ // logPrefix
29
+ const logPrefix = options.logPrefix;
30
+ if (logPrefix) {
31
+ text = this._adjustText(logPrefix, text);
32
+ }
33
+ // fallback
34
+ if (!this.cli.terminal) {
35
+ if (total !== undefined && progress !== undefined) {
36
+ const progressValid = progress >= 0;
37
+ const progressText = `(${progressValid ? progress + 1 : '-'}/${total})`;
38
+ if (progressValid) {
39
+ text = this._adjustText(`${progressText}=> `, text);
40
+ }
41
+ }
42
+ return console.log(text);
43
+ }
44
+ }
45
+ _adjustText(prefix, text) {
46
+ return String(text)
47
+ .split('\n')
48
+ .map(item => (item ? prefix + item : item))
49
+ .join('\n');
50
+ }
51
+ }
52
+ exports.LocalConsole = LocalConsole;
53
+ //# sourceMappingURL=local.console.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.console.js","sourceRoot":"","sources":["../../src/lib/local.console.ts"],"names":[],"mappings":";;;AAGA,MAAa,YAAY;IAGvB,YAAY,GAAG;QAFf;;;;;WAAiB;QAGf,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAA+B,EAAE,UAA8B,EAAE;QACzE,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,OAAO;QACP,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,CAAC;QACD,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtD,YAAY;QACZ,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,WAAW;QACX,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,KAAK,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClD,MAAM,aAAa,GAAG,QAAQ,IAAI,CAAC,CAAC;gBACpC,MAAM,YAAY,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,GAAG,CAAC;gBACxE,IAAI,aAAa,EAAE,CAAC;oBAClB,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,YAAY,KAAK,EAAE,IAAI,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,WAAW,CAAC,MAAM,EAAE,IAAI;QACtB,OAAO,MAAM,CAAC,IAAI,CAAC;aAChB,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC1C,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;CACF;AA9CD,oCA8CC"}
@@ -0,0 +1,83 @@
1
+ import Chalk from 'chalk';
2
+ import TableClass, { TableConstructorOptions } from 'cli-table3';
3
+ import * as ModuleInfo from '@cabloy/module-info';
4
+ import { BeanCliBase } from './bean.cli.base.js';
5
+ import { NameMeta } from '../types/helper.js';
6
+ export declare class LocalHelper {
7
+ cli: BeanCliBase;
8
+ ProcessHelper: any;
9
+ constructor(cli: any);
10
+ get options(): import("../index.js").CmdOptions;
11
+ get context(): import("../index.js").ICommandContext;
12
+ get console(): import("./local.console.js").LocalConsole;
13
+ get template(): import("./local.template.js").LocalTemplate;
14
+ get moduleConfig(): {
15
+ sets: {
16
+ front: string;
17
+ };
18
+ helper: {
19
+ chalk: {
20
+ options: {
21
+ level: number;
22
+ };
23
+ };
24
+ boxen: {
25
+ options: {
26
+ padding: number;
27
+ margin: number;
28
+ align: string;
29
+ borderColor: string;
30
+ borderStyle: string;
31
+ };
32
+ };
33
+ };
34
+ template: {
35
+ render: {
36
+ fileMapping: {
37
+ gitignore: string;
38
+ _gitignore: string;
39
+ '_.gitignore': string;
40
+ '_package.json': string;
41
+ '_.eslintrc': string;
42
+ '_.eslintignore': string;
43
+ '_.npmignore': string;
44
+ '_.npmrc': string;
45
+ '_.eslintrc.js': string;
46
+ '_jsconfig.json': string;
47
+ '_tsconfig.json': string;
48
+ '_tsconfig.base.json': string;
49
+ '_tsconfig.build.json': string;
50
+ };
51
+ ignore: string[];
52
+ };
53
+ };
54
+ };
55
+ get chalk(): Chalk.Chalk;
56
+ get Table(): TableClass;
57
+ get cwd(): string;
58
+ newChalk(options?: any): Chalk.Chalk;
59
+ newTable(options: TableConstructorOptions): TableClass.Table;
60
+ boxen({ text, options }: any): string;
61
+ firstCharToLowerCase(name: string): string;
62
+ firstCharToUpperCase(name: string): string;
63
+ stringToCapitalize(str: string[] | string, separator: string): string;
64
+ slashPrefixForPath(count: number): string;
65
+ parseNameMeta(name: string, ignores?: string[]): NameMeta;
66
+ parseModuleInfo(moduleName: any): ModuleInfo.IModuleInfo;
67
+ findModule(moduleName: any): ModuleInfo.IModule;
68
+ parseSuiteInfo(suiteName: any): ModuleInfo.IModuleInfo;
69
+ findSuite(suiteName: any): ModuleInfo.ISuite;
70
+ ensureDir(dir: any): Promise<any>;
71
+ pnpmInstall(): Promise<void>;
72
+ formatFile({ fileName, logPrefix }: any): Promise<any>;
73
+ spawnBin({ cmd, args, options }: any): Promise<any>;
74
+ spawnCmd({ cmd, args, options }: any): Promise<any>;
75
+ spawnExe({ cmd, args, options }: any): Promise<any>;
76
+ spawn({ cmd, args, options }: {
77
+ cmd: any;
78
+ args?: never[] | undefined;
79
+ options?: {} | undefined;
80
+ }): Promise<any>;
81
+ gitCommit({ cwd, message }: any): Promise<any>;
82
+ }
83
+ //# sourceMappingURL=local.helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.helper.d.ts","sourceRoot":"","sources":["../../src/lib/local.helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,EAAE,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAGjE,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,qBAAa,WAAW;IACtB,GAAG,EAAE,WAAW,CAAC;IACjB,aAAa,EAAE,GAAG,CAAC;gBAEP,GAAG,KAAA;IAKf,IAAI,OAAO,qCAEV;IAED,IAAI,OAAO,0CAEV;IAED,IAAI,OAAO,8CAEV;IAED,IAAI,QAAQ,gDAEX;IAED,IAAI,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEf;IACD,IAAI,KAAK,gBAER;IACD,IAAI,KAAK,eAER;IACD,IAAI,GAAG,WAEN;IAED,QAAQ,CAAC,OAAO,CAAC,KAAA;IAMjB,QAAQ,CAAC,OAAO,EAAE,uBAAuB;IAGzC,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG;IAM5B,oBAAoB,CAAC,IAAI,EAAE,MAAM;IAGjC,oBAAoB,CAAC,IAAI,EAAE,MAAM;IAGjC,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAQrE,kBAAkB,CAAC,KAAK,EAAE,MAAM;IAIhC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,QAAQ;IA2BzD,eAAe,CAAC,UAAU,KAAA;IAK1B,UAAU,CAAC,UAAU,KAAA;IAIrB,cAAc,CAAC,SAAS,KAAA;IAKxB,SAAS,CAAC,SAAS,KAAA;IAIb,SAAS,CAAC,GAAG,KAAA;IAIb,WAAW;IAWX,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,GAAG;IAGvC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG;IAGpC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG;IAGpC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG;IAGpC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAS,EAAE,OAAY,EAAE;;;;KAAA;IAGtC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG;CAGtC"}