const express = require('express'); const { validate } = require('../../middleware/validation'); const { sendFriendRequestSchema, } = require('../../shared/validators/schemas/friendRequest.schema'); module.exports = ({ friendsController }) => { const router = express.Router(); const controller = { getFriends: (req, res, next) => friendsController.getFriends(req, res, next), getPendingRequests: (req, res, next) => friendsController.getPendingRequests(req, res, next), sendRequest: (req, res, next) => friendsController.sendRequest(req, res, next), acceptRequest: (req, res, next) => friendsController.acceptRequest(req, res, next), rejectRequest: (req, res, next) => friendsController.rejectRequest(req, res, next), }; router.get('/', controller.getFriends); router.get('/pending', controller.getPendingRequests); router.post('/', validate(sendFriendRequestSchema), controller.sendRequest); router.post('/:id/accept', controller.acceptRequest); router.delete('/:id', controller.rejectRequest); return router; };