@reactivehub/cli
Version:
78 lines (60 loc) • 2.22 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator');
var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
var _opn = require('opn');
var _opn2 = _interopRequireDefault(_opn);
var _configstore = require('../libs/configstore');
var _configstore2 = _interopRequireDefault(_configstore);
var _messages = require('../messages');
var _messages2 = _interopRequireDefault(_messages);
var _api = require('../services/api');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const setAuthToken = token => _configstore2.default.set('rhub-auth-token', token);
const setNamespace = namespace => _configstore2.default.set('namespace', namespace);
const setEmail = email => _configstore2.default.set('email', email);
const setLogged = () => _configstore2.default.set('isLogged', true);
const getAuthToken = () => _configstore2.default.get('rhub-auth-token');
const getNamespace = () => _configstore2.default.get('namespace');
const getEmail = () => _configstore2.default.get('email');
const getLogged = () => _configstore2.default.get('isLogged');
const authStatus = () => {
const namespace = getNamespace();
const email = getEmail();
const isLogged = getLogged();
if (isLogged) {
_messages2.default.info(`Logged in at ${namespace} as ${email}.`);
return true;
}
_messages2.default.info("You're not logged in");
return false;
};
const authHandler = (() => {
var _ref = (0, _asyncToGenerator3.default)(function* ({ code, email, namespace } = {}) {
const { token, message } = yield (0, _api.issueToken)({ code, namespace, email });
if (message) {
_messages2.default.error(message);
return false;
}
setAuthToken(token);
setNamespace(namespace);
setEmail(email);
setLogged();
authStatus();
return true;
});
return function authHandler() {
return _ref.apply(this, arguments);
};
})();
const openAuth = () => (0, _opn2.default)('http://localhost:7000');
exports.default = {
getAuthToken,
authHandler,
getNamespace,
openAuth,
authStatus
};
//# sourceMappingURL=auth.js.map