UNPKG

lynx-framework

Version:

lynx is a NodeJS framework for Web Development, based on decorators and the async/await support.

41 lines (39 loc) 2 kB
"use strict"; /** * This module contains a set of standard verifiers to ensure user authentication * and authorization. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.isStaffOrGreater = exports.notAuthUser = exports.authUser = void 0; var role_entity_1 = require("./entities/role.entity"); /** * Verify that the user is authenticated. */ function authUser(req, _) { if (!req.user || req.user === undefined) { return false; } return true; } exports.authUser = authUser; /** * Verify that the user is NOT authenticated. */ function notAuthUser(req, res) { return !authUser(req, res); } exports.notAuthUser = notAuthUser; /** * Verify that the user is logged and that is at least a Staff member. */ function isStaffOrGreater(req, res) { if (!authUser(req, res)) { return false; } if (req.user.level >= role_entity_1.default.STAFF_LEVEL) { return true; } return false; } exports.isStaffOrGreater = isStaffOrGreater; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2x5bngvdmVyaWZpZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7OztBQUdILHNEQUEwQztBQUcxQzs7R0FFRztBQUNILFNBQWdCLFFBQVEsQ0FBQyxHQUFZLEVBQUUsQ0FBbUI7SUFDdEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7UUFDckMsT0FBTyxLQUFLLENBQUM7S0FDaEI7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDO0FBTEQsNEJBS0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxHQUFZLEVBQUUsR0FBcUI7SUFDM0QsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQUZELGtDQUVDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixnQkFBZ0IsQ0FBQyxHQUFZLEVBQUUsR0FBcUI7SUFDaEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUU7UUFDckIsT0FBTyxLQUFLLENBQUM7S0FDaEI7SUFDRCxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLHFCQUFJLENBQUMsV0FBVyxFQUFFO1FBQ3BDLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBUkQsNENBUUMiLCJmaWxlIjoidmVyaWZpZXJzLmpzIiwic291cmNlUm9vdCI6IiJ9