@dotenvx/dotenvx-radar
Version:
Dotenvx Radar
43 lines (34 loc) • 1.07 kB
JavaScript
const { logger } = require('@dotenvx/dotenvx')
const { createSpinner } = require('./../../lib/helpers/createSpinner')
const truncate = require('./../../lib/helpers/truncate')
const Logout = require('./../../lib/services/logout')
const spinner = createSpinner('waiting on browser authorization')
async function logout () {
const options = this.opts()
logger.debug(`options: ${JSON.stringify(options)}`)
const hostname = options.hostname
try {
spinner.start()
const {
username,
accessToken
} = await new Logout(hostname).run()
spinner.succeed(`logged out [${username}] from this device and revoked token [${truncate(accessToken, 11)}]`)
// logger.help(`⮕ next visit [${settingsDevicesUrl}] to view your devices`)
} catch (error) {
spinner.stop()
if (error.message) {
logger.error(error.message)
} else {
logger.error(error)
}
if (error.help) {
logger.help(error.help)
}
if (error.stack) {
logger.debug(error.stack)
}
process.exit(1)
}
}
module.exports = logout