4056c70d90
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
25 lines
994 B
JavaScript
25 lines
994 B
JavaScript
import { Router } from 'express';
|
|
import { requireAuth } from '../../middleware/auth.js';
|
|
import { requireModule } from '../../middleware/modules.js';
|
|
import {
|
|
getNotes, postNote, putNote, deleteNote, putReorderNotes, getNoteShares, postNoteShare, deleteNoteShare,
|
|
} from './controller.js';
|
|
|
|
const router = Router();
|
|
|
|
// Sin restriccion de rol: cualquier usuario autenticado tiene sus propias notas (y ve las que
|
|
// otros compartieron con el). Los permisos de compartir se resuelven en el service (dueño-only).
|
|
router.use(requireAuth);
|
|
router.use(requireModule('notes'));
|
|
router.get('/', getNotes);
|
|
router.post('/', postNote);
|
|
// /reorder ANTES de /:id -- si no, Express lo confunde con un id (":id" matcheria "reorder").
|
|
router.put('/reorder', putReorderNotes);
|
|
router.put('/:id', putNote);
|
|
router.delete('/:id', deleteNote);
|
|
router.get('/:id/shares', getNoteShares);
|
|
router.post('/:id/shares', postNoteShare);
|
|
router.delete('/:id/shares/:userId', deleteNoteShare);
|
|
|
|
export default router;
|