UNPKG

@tuzki/cli

Version:

🐇 lowcode-cli is an efficient cli tool for Rabbitpre plugin component secondary development. ❤️

66 lines (65 loc) 2.53 kB
/* * Login Command * * @Author: nichubiao * @Date: 2023-03-20 10:26:50 * * Copyright © 2014-2023 Rabbitpre.com. All Rights Reserved. */ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; import inquirer from 'inquirer'; import Logger from '@tuzki/scaffold-logger'; import { login as loginApi } from '../apis/login.js'; import config, { getCliConfig, setLocalConfig } from '../utils/config.js'; const logger = Logger.get('cli:commands:login'); export const login = () => __awaiter(void 0, void 0, void 0, function* () { try { const isLogin = !!config.token; let needLogin = true; if (isLogin) { const loginAns = yield inquirer.prompt({ type: 'confirm', name: 'reLogin', message: '您已登录,是否重新登录?', default: false, }); needLogin = loginAns.reLogin; } if (!needLogin) return; const nameAns = yield inquirer.prompt({ type: 'input', name: 'name', message: '请输入登录手机号:', validate: (val) => { if (val.match(/\d{11}/g)) { return true; } return '请输入 11 位手机号'; }, }); const { name } = nameAns; const passwordAns = yield inquirer.prompt({ type: 'password', name: 'password', message: '请输入登录密码:', }); const { password } = passwordAns; const res = yield loginApi(name, password); const cliConfig = getCliConfig(); setLocalConfig(Object.assign(Object.assign({}, cliConfig), { token: res.tzSid })); logger.info('登录成功!'); } catch (err) { logger.error('登录失败!', err); process.exit(1); } });