18 lines
535 B
TypeScript
18 lines
535 B
TypeScript
import { Router } from 'express';
|
|
import { adminLessonCuratedSchema } from '@flashcard/shared';
|
|
import type { Db } from '../db/client.js';
|
|
import { setLessonCurated } from '../services/lessons.js';
|
|
|
|
export function adminLessonsRouter(db: Db): Router {
|
|
const r = Router();
|
|
|
|
r.patch('/:id/curated', async (req, res, next) => {
|
|
try {
|
|
const input = adminLessonCuratedSchema.parse(req.body);
|
|
res.json(await setLessonCurated(db, Number(req.params.id), input.isCurated));
|
|
} catch (e) { next(e); }
|
|
});
|
|
|
|
return r;
|
|
}
|