UNPKG

@qelos/auth

Version:

Express Passport authentication service

34 lines (33 loc) 1.31 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.signin = void 0; const passport_1 = __importDefault(require("passport")); const signin_signup_token_1 = require("./signin-signup-token"); const req_host_1 = require("../services/req-host"); function signin(req, res, next) { const validationErrors = (0, signin_signup_token_1.validateSignInForm)(req.body); if (Object.keys(validationErrors).length > 0) { return res.status(401).json({ errors: validationErrors }); } return passport_1.default.authenticate('local-login', (error, data) => { if (error !== null) { return res.status(401).json({ errors: { [error.code === 'INCORRECT_CREDENTIALS' ? 'password' : 'general']: error, }, }); } if (!data) { return res.status(401).json({ errors: { password: 'password is incorrect', }, }); } (0, signin_signup_token_1.tokenPayload)((0, req_host_1.getRequestHost)(req), res, data); })(req, res, next); } exports.signin = signin;