@gameroom/cli
Version:
A command line tool for Gameroom
27 lines (22 loc) • 889 B
JavaScript
const { helpers } = require('@gameroom/kit'),
{ getToken } = helpers,
{ prompt } = require('../consoleIO'),
{ models: { Token } } = require('../emporium'),
{ grGreen, resetSelections } = require('../helpers'),
{ spinner } = require('../refs')
module.exports = async ({ email, password }) => {
if (process.env.NODE_ENV === 'development') {
email = email || 'admin@example.com'
password = password || 'password'
}
if (!email) email = await prompt('email: ')
if (!password) password = await prompt('password: [ hidden ]', { secure: true })
spinner.text = 'logging in'
spinner.start()
let token = await getToken({email, password})
let tokens = await Token.get()
if (tokens.length > 0) for (const token of tokens) await token.delete()
await Token.create({ token })
await resetSelections()
spinner.succeed(`logged in as ${grGreen(email)}`).stop()
}