27 lines
1.0 KiB
JavaScript
27 lines
1.0 KiB
JavaScript
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;
|
|
};
|