UNPKG

advanced-react-cli

Version:

NPM package which aims to provide a better way to install packages for your react application through an intuitive CLI

78 lines (64 loc) 1.95 kB
const inquirer = require('inquirer') const customCMD = require('../../../customNodeCMD') const errorLogging = require('../../../customNodeCMD/customError') // CLI Model const cliModel = require('../../../cliModel/index') const installOption = cliModel.installOption // Cli Install Commands const { TypeScriptReactObj } = require('../../../cliModel/install-commands') const { typesNode } = TypeScriptReactObj const { TypeScriptReactObjYarn } = require('../../../cliModel/install-commands-yarn') const { typesNodeYarn } = TypeScriptReactObjYarn const prompt = inquirer.createPromptModule() /* Installs @types/nodes */ module.exports = class TypesNodes { installOrUninstall (packageInstaller) { prompt(installOption).then(({ decision }) => { if (decision === 'Install') { this.install(packageInstaller) } else if (decision === 'Uninstall') { this.uninstall(packageInstaller) } }) } install (packageInstaller) { switch (packageInstaller) { case 'NPM': customCMD.get( `${typesNode.install}`, 'install', `Package(s): @types/node has been installed successfully!` ) break case 'Yarn': customCMD.get( `${typesNodeYarn.install}`, 'install', `Package(s): @types/node has been installed successfully!` ) break } } uninstall (packageInstaller) { switch (packageInstaller) { case 'NPM': customCMD.get( `${typesNode.uninstall}`, 'uninstall', `Package(s): @types/node has been uninstalled successfully!` ) break case 'Yarn': customCMD.get( `${typesNodeYarn.uninstall}`, 'uninstall', `Package(s): @types/node has been uninstalled successfully!` ) break } } }