import express from "express"; import { isAuthenticated } from "../../keycloak.js"; import { listNotesRouteHandler, getNoteRouteHandler, editNoteRouteHandler, newNoteRouteHandler, deleteNoteRouteHandler } from "../../services/misc/notes.js"; import { parseFilter } from "../../util/index.js"; const router = express.Router(); // List notes router.get("/", isAuthenticated, async (req, res) => { const { page, limit, property, sort, order } = req.query; const allowedFilters = ["parent", "user._id"]; var filter = {}; for (const [key, value] of Object.entries(req.query)) { for (var i = 0; i < allowedFilters.length; i++) { if (key == allowedFilters[i]) { const filterObject = parseFilter(key, value); filter = {...filter, ...filterObject} } } } listNotesRouteHandler(req, res, page, limit, property, filter, "", sort, order); } ); // Get single note router.get( "/:id", isAuthenticated, getNoteRouteHandler ); // Edit note router.put( "/:id", isAuthenticated, editNoteRouteHandler ); // Delete note router.delete( "/:id", isAuthenticated, deleteNoteRouteHandler ); // Create new note router.post( "/", isAuthenticated, newNoteRouteHandler ); export default router;