1
0
mirror of https://github.com/sasjs/server.git synced 2025-12-10 19:34:34 +00:00
Files
server/src/routes/api/index.ts
2021-11-03 15:56:58 +05:00

29 lines
833 B
TypeScript

import express from 'express'
import dotenv from 'dotenv'
import driveRouter from './drive'
import stpRouter from './stp'
import userRouter from './user'
import clientRouter from './client'
import authRouter, { connectDB } from './auth'
import { authenticateAccessToken } from '../../utils'
dotenv.config()
connectDB()
const router = express.Router()
router.use('/drive', authenticateAccessToken, driveRouter)
router.use('/stp', authenticateAccessToken, stpRouter)
router.use('/user', authenticateAccessToken, verifyAdmin, userRouter)
router.use('/client', authenticateAccessToken, verifyAdmin, clientRouter)
router.use('/auth', authRouter)
function verifyAdmin(req: any, res: any, next: any) {
const { user } = req
if (!user?.isAdmin) return res.status(403).send('Admin account required')
next()
}
export default router