UNPKG

redux-security

Version:
100 lines (80 loc) 3.32 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.configAPILocal = undefined; var _bluebird = require('bluebird'); var _bluebird2 = _interopRequireDefault(_bluebird); var _reduxJournal = require('redux-journal'); var _reduxManager = require('redux-manager'); var _config = require('../config'); var _config2 = require('../../sessions/config'); var _config3 = require('../../users/config'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var tags = _config.TAGS + '.api.local'; var sendFake = function sendFake(_ref) { var email = _ref.email; var code = _ref.code; return _bluebird2.default.try(function () { console.log('Fake send to ' + email + ' code ' + code); }); }; var configAPILocal = exports.configAPILocal = function configAPILocal() { var _ref2 = arguments.length <= 0 || arguments[0] === undefined ? { serviceSessions: _config2.SERVICE, serviceUsers: _config3.SERVICE, send: sendFake } : arguments[0]; var _ref2$serviceSessions = _ref2.serviceSessions; var serviceSessions = _ref2$serviceSessions === undefined ? _config2.SERVICE : _ref2$serviceSessions; var _ref2$serviceUsers = _ref2.serviceUsers; var serviceUsers = _ref2$serviceUsers === undefined ? _config3.SERVICE : _ref2$serviceUsers; var _ref2$send = _ref2.send; var send = _ref2$send === undefined ? sendFake : _ref2$send; var apiSessions = function apiSessions() { return _reduxManager.manager.api.get(serviceSessions); }; var apiUsers = function apiUsers() { return _reduxManager.manager.api.get(serviceUsers); }; var codeConfirm = function codeConfirm(_ref3) { var code = _ref3.code; return apiUsers().getByCode({ code: code }).then(function (user) { return apiUsers().confirmEmail({ userID: user._id }); }); }; var codeEmail = function codeEmail(_ref4) { var sessionID = _ref4.sessionID; return apiSessions().get({ sessionID: sessionID }).then(function (session) { return apiUsers().get({ userID: session.userID }); }).then(function (user) { return apiUsers().codeGenerate({ userID: user._id }).then(function (_ref5) { var code = _ref5.code; return send({ email: user.email, code: code }); }); }); }; var login = function login(_ref6) { var username = _ref6.username; var password = _ref6.password; return apiUsers().check({ username: username, password: password }).then(function (_ref7) { var userID = _ref7.userID; return apiSessions().create({ userID: userID }); }); }; var logout = function logout(_ref8) { var sessionID = _ref8.sessionID; return apiSessions().remove({ _id: sessionID }); }; var signup = function signup(_ref9) { var username = _ref9.username; var password = _ref9.password; var email = _ref9.email; return apiUsers().create({ username: username, password: password, email: email }).then(function (_ref10) { var userID = _ref10.userID; return apiUsers().codeGenerate({ userID: userID }); }).then(function (_ref11) { var code = _ref11.code; return send({ email: email, code: code }); }); }; return { codeEmail: codeEmail, codeConfirm: codeConfirm, login: login, logout: logout, signup: signup }; };