1 | #!/usr/bin/env node
|
2 | 'use strict'
|
3 | const path = require('path')
|
4 | const os = require('os')
|
5 |
|
6 | const inquirer = require('inquirer')
|
7 | const chalk = require('chalk')
|
8 | const updateNotifier = require('update-notifier')
|
9 | const rimraf = require('rimraf')
|
10 |
|
11 | const rc = require('../lib/rc')()
|
12 | const pkg = require('../package.json')
|
13 | const setup = require('./setup')
|
14 | const selfAssessment = require('./selfAssessment')
|
15 | const configPath = path.join(os.homedir(), '.adarc')
|
16 | updateNotifier({pkg, updateCheckInterval: 1000 * 60 * 60}).notify()
|
17 |
|
18 | const menu = () => {
|
19 | const ada = require('../lib/index')
|
20 | console.log(chalk.cyan.bold(`Welcome to ada-cli ${rc.get().medx.username}\n`))
|
21 | inquirer.prompt({
|
22 | type: 'list',
|
23 | name: 'home',
|
24 | message: 'Select an option to get started:',
|
25 | choices: [
|
26 | 'Start Self Assessment',
|
27 | 'Delete all profiles',
|
28 | 'Logout'
|
29 | ]
|
30 | })
|
31 | .then((answer) => {
|
32 | switch (answer.home) {
|
33 | case 'Start Self Assessment':
|
34 | return selfAssessment()
|
35 | case 'Delete all profiles':
|
36 | return ada('cli', {}, true, (err, success) => {
|
37 | if (err) return console.log(err)
|
38 | console.log(chalk.green.bold(`${success}\n`))
|
39 | menu()
|
40 | })
|
41 | case 'Logout':
|
42 | rimraf(configPath, (err) => {
|
43 | if (err) return console.log(chalk.red.bold(err))
|
44 | console.log(chalk.green.bold('\nSuccessfully logged out.'))
|
45 | })
|
46 | }
|
47 | })
|
48 | }
|
49 |
|
50 | rc.configExists() ? menu() : setup(selfAssessment)
|