PPPAIMT-Crest/backend/src/routes/consent.js

38 lines
895 B
JavaScript

import { requireUser } from '../middleware/requireUser.js';
import { getConsentForUser, submitConsent } from '../services/consent.js';
/** @type {import('@hapi/hapi').Plugin<void>} */
export const consentRoutes = {
name: 'consent-routes',
register(server) {
server.route({
method: 'GET',
path: '/api/consent/me',
options: {
auth: false,
pre: [requireUser],
},
handler(request) {
return getConsentForUser(Number(request.pre.user.id));
},
});
server.route({
method: 'POST',
path: '/api/consent',
options: {
auth: false,
pre: [requireUser],
plugins: {
'hapi-rate-limit': {
pathLimit: 30,
},
},
},
handler(request) {
return submitConsent(request, Number(request.pre.user.id), request.payload);
},
});
},
};