mirror of https://github.com/nocodb/nocodb
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.3 KiB
59 lines
1.3 KiB
// #! /usr/bin/env node |
|
|
|
import CliMgr from './lib/CliMgr'; |
|
import SocialMgr from './lib/mgr/SocialMgr'; |
|
import Util from './lib/util/Util'; |
|
|
|
import updateNotifier from 'update-notifier'; |
|
|
|
// tslint:disable-next-line:no-var-requires |
|
const pkg = require('../package.json'); |
|
import yargs from 'yargs'; |
|
|
|
const { |
|
uniqueNamesGenerator, |
|
starWars, |
|
adjectives, |
|
animals |
|
} = require('unique-names-generator'); |
|
|
|
/* get cli args */ |
|
const args = yargs |
|
.alias('u', 'url') |
|
.alias('m', 'module') |
|
.alias('n', 'nomodel') |
|
.help('help').argv; |
|
|
|
/* cwd is reference to all commands */ |
|
args.folder = process.cwd(); |
|
|
|
/* handle command */ |
|
(async () => { |
|
// Checks for available update and returns an instance |
|
const notifier = updateNotifier({ pkg }); |
|
|
|
// Notify using the built-in convenience method |
|
notifier.notify(); |
|
|
|
if (args._) { |
|
if (!args._.length) { |
|
await SocialMgr.showPrompt(); |
|
args._.unshift( |
|
uniqueNamesGenerator({ |
|
dictionaries: [[starWars], [adjectives, animals]][ |
|
Math.floor(Math.random() * 2) |
|
] |
|
}) |
|
.toLowerCase() |
|
.replace(/[ -]/g, '_') |
|
); |
|
} |
|
await CliMgr.process(args); |
|
} else { |
|
Util.showHelp(args); |
|
process.exit(0); |
|
} |
|
})().catch(err => { |
|
console.error('\n\nThere was an error processing command:'); |
|
console.error(err); |
|
});
|
|
|