mirror of
https://github.com/WeBankFinTech/fes.js.git
synced 2025-04-06 03:59:53 +08:00
50 lines
1.4 KiB
JavaScript
50 lines
1.4 KiB
JavaScript
import { chalk, yParser } from '@fesjs/utils';
|
|
import { existsSync } from 'fs';
|
|
import { join } from 'path';
|
|
|
|
|
|
const args = yParser(process.argv.slice(2), {
|
|
alias: {
|
|
version: ['v'],
|
|
help: ['h'],
|
|
force: ['f'],
|
|
merge: ['m'],
|
|
proxy: ['x']
|
|
},
|
|
boolean: ['version', 'help', 'merge', 'force']
|
|
});
|
|
|
|
if (args._.length > 1) {
|
|
console.log(chalk.yellow('\n Warning: You provided more than one argument. The first one will be used as the app\'s name, the rest are ignored.'));
|
|
}
|
|
|
|
if (args.version && !args._[0]) {
|
|
args._[0] = 'version';
|
|
const local = existsSync(join(__dirname, '../.local'))
|
|
? chalk.cyan('@local')
|
|
: '';
|
|
const { name, version } = require('../package.json');
|
|
console.log(`${name}@${version}${local}`);
|
|
} else if (args.help && !args._[0]) {
|
|
console.log(`
|
|
Usage: create-fes-app <name>
|
|
|
|
Options:
|
|
-v, --version Output the current version
|
|
-h, --help Display help for command
|
|
-f, --force Overwrite target directory if it exists
|
|
-m, --merge Merge target directory if it exists
|
|
-x, --proxy <proxyUrl> Use specified proxy when creating project
|
|
`);
|
|
} else {
|
|
require('.')
|
|
.default({
|
|
cwd: process.cwd(),
|
|
args
|
|
})
|
|
.catch((err) => {
|
|
console.error(`Create failed, ${err.message}`);
|
|
console.error(err);
|
|
});
|
|
}
|