#!/usr/bin/env node const parseArgs = require('minimist'), chalk = require('chalk') const log = require('../lib/helpers/logger')('app:mode') appPaths = require('../lib/app-paths') const argv = parseArgs(process.argv.slice(2), { alias: { a: 'add', r: 'remove', h: 'help' }, string: ['a', 'r'], boolean: ['h'] }) if (argv.help) { console.log(` Description Add/Remove support for PWA / Cordova / Electron modes. Usage $ quasar mode -r|-a pwa|ssr|cordova|electron # determine what modes are currently installed: $ quasar mode Options --add, -a Add support for mode [pwa|ssr|cordova|electron] --remove, -r Remove support for mode [pwa|ssr|cordova|electron] --help, -h Displays this message `) process.exit(0) } require('../lib/helpers/ensure-argv')(argv, 'mode') const getMode = require('../lib/mode'), { green, grey } = require('chalk') if (argv.add) { getMode(argv.add).add() process.exit(0) } else if (argv.remove) { getMode(argv.remove).remove() process.exit(0) } log(`Detecting installed modes...`) const info = [] ;['pwa', 'ssr', 'cordova', 'electron'].forEach(mode => { const QuasarMode = getMode(mode) info.push([ `Mode ${mode.toUpperCase()}`, getMode(mode).isInstalled ? green('yes') : grey('no') ]) }) console.log( '\n' + info.map(msg => ' ' + msg[0].padEnd(16, '.') + ' ' + msg[1]).join('\n') + '\n' )