@qelos/auth
Version:
Express Passport authentication service
34 lines (33 loc) • 2 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const api_kit_1 = require("@qelos/api-kit");
const users_1 = require("../controllers/users");
const verify_user_1 = __importDefault(require("../middleware/verify-user"));
const auth_check_1 = require("../middleware/auth-check");
const auth_config_check_1 = require("../middleware/auth-config-check");
const router = (0, api_kit_1.getRouter)();
router
.get('/api/users', verify_user_1.default, auth_check_1.onlyPrivileged, users_1.getUsers)
.post('/api/users', verify_user_1.default, auth_check_1.onlyPrivileged, auth_config_check_1.authConfigCheck, users_1.createUser)
.post('/api/users/:userId/encrypted', verify_user_1.default, auth_check_1.onlyPrivileged, users_1.setUserEncryptedData)
.get('/api/users/stats', verify_user_1.default, auth_check_1.onlyPrivileged, users_1.getUsersStats)
.get('/api/users/:userId', verify_user_1.default, auth_check_1.onlyPrivileged, users_1.getUser)
.get('/api/users/:userId/encrypted', verify_user_1.default, auth_check_1.onlyPrivileged, users_1.getUserEncryptedData)
.put('/api/users/:userId', verify_user_1.default, auth_check_1.onlyPrivileged, auth_config_check_1.authConfigCheck, users_1.updateUser)
.delete('/api/users/:userId', verify_user_1.default, auth_check_1.onlyPrivileged, users_1.removeUser);
router
.get('/internal-api/users', users_1.getUsersForAdmin)
.post('/internal-api/users', auth_config_check_1.authConfigCheck, users_1.createUser)
.get('/internal-api/users/:userId', (req, _, next) => {
req.user = {
type: 'internal',
isPrivileged: true,
};
next();
}, users_1.getUser)
.put('/internal-api/users/:userId', auth_config_check_1.authConfigCheck, users_1.updateUser)
.delete('/internal-api/users/:userId', users_1.removeUser);
exports.default = router;