messages.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. const express = require('express');
  2. const router = express.Router();
  3. const guard = require('../helpers/guard');
  4. const controllers = require('../controllers/messages');
  5. const validation = require('../validation/message');
  6. const upload = require('../helpers/upload');
  7. router
  8. .get('/', guard, controllers.listMessages)
  9. .post('/', guard, validation.sentMessage, controllers.sentMessage)
  10. .patch(
  11. '/selected/',
  12. guard,
  13. validation.removeSelected,
  14. controllers.removeSelected
  15. )
  16. .patch('/unpin/all/', guard, validation.unpinAll, controllers.unpinAllMessage)
  17. .post(
  18. '/image/:companionIdAndCaption',
  19. [guard, upload.uploadImage.single('image'), validation.validateUploadFile],
  20. controllers.imageMessage
  21. )
  22. .post(
  23. '/audio/:companionIdAndCaption',
  24. [guard, upload.uploadAudio.single('audio'), validation.validateUploadFile],
  25. controllers.audioMessage
  26. )
  27. .post(
  28. '/video/:companionIdAndCaption',
  29. [guard, upload.uploadVideo.single('video'), validation.validateUploadFile],
  30. controllers.videoMessage
  31. )
  32. .post(
  33. '/file/:companionIdAndCaption',
  34. [guard, upload.uploadFile.single('file'), validation.validateUploadFile],
  35. controllers.fileMessage
  36. );
  37. router
  38. .get('/:companionId', guard, controllers.listMessagesById)
  39. .patch('/pin/:id', guard, controllers.updateMessagePin)
  40. .patch('/:id', guard, controllers.updateMessageEmoji)
  41. .delete('/:id', guard, controllers.removeMessage);
  42. module.exports = router;