69 lines
1.6 KiB
JavaScript
69 lines
1.6 KiB
JavaScript
const express = require("express");
|
|
const { register, login, me } = require("../controllers/auth.controller");
|
|
const authMiddleware = require("../middlewares/auth.middleware");
|
|
const validate = require("../middlewares/validate.middleware");
|
|
const { registerSchema, loginSchema } = require("../validations/auth.validation");
|
|
|
|
const router = express.Router();
|
|
|
|
/**
|
|
* @swagger
|
|
* /api/auth/register:
|
|
* post:
|
|
* summary: Inscription d'un utilisateur
|
|
* tags:
|
|
* - Auth
|
|
* requestBody:
|
|
* required: true
|
|
* content:
|
|
* application/json:
|
|
* schema:
|
|
* type: object
|
|
* properties:
|
|
* firstname:
|
|
* type: string
|
|
* lastname:
|
|
* type: string
|
|
* email:
|
|
* type: string
|
|
* password:
|
|
* type: string
|
|
* responses:
|
|
* 201:
|
|
* description: Utilisateur créé
|
|
*/
|
|
router.post("/register", validate(registerSchema), register);
|
|
|
|
/**
|
|
* @swagger
|
|
* /api/auth/login:
|
|
* post:
|
|
* summary: Connexion utilisateur
|
|
* tags:
|
|
* - Auth
|
|
* requestBody:
|
|
* required: true
|
|
* responses:
|
|
* 200:
|
|
* description: Connexion réussie
|
|
*/
|
|
|
|
router.post("/login", validate(loginSchema), login);
|
|
|
|
/**
|
|
* @swagger
|
|
* /api/auth/me:
|
|
* get:
|
|
* summary: Informations de l'utilisateur connecté
|
|
* tags:
|
|
* - Auth
|
|
* security:
|
|
* - bearerAuth: []
|
|
* responses:
|
|
* 200:
|
|
* description: Profil utilisateur
|
|
*/
|
|
router.get("/me", authMiddleware, me);
|
|
|
|
|
|
module.exports = router; |