diff --git a/packages/backend/src/routes/stats.ts b/packages/backend/src/routes/stats.ts index 7cc232f..7093afd 100644 --- a/packages/backend/src/routes/stats.ts +++ b/packages/backend/src/routes/stats.ts @@ -1,6 +1,9 @@ import { Router } from 'express'; import type { Db } from '../db/client.js'; -import { getCardStats, getHeatmap, getLessonStats, getOverview } from '../services/stats.js'; +import { + getCardStats, getHeatmap, getLessonStats, getOverview, + getLessonsProgress, getDueOverview, +} from '../services/stats.js'; export function statsRouter(db: Db): Router { const r = Router(); @@ -8,6 +11,12 @@ export function statsRouter(db: Db): Router { r.get('/overview', async (req, res, next) => { try { res.json(await getOverview(db, req.user!.id)); } catch (e) { next(e); } }); + r.get('/lessons-progress', async (req, res, next) => { + try { res.json(await getLessonsProgress(db, req.user!.id)); } catch (e) { next(e); } + }); + r.get('/due', async (req, res, next) => { + try { res.json(await getDueOverview(db, req.user!.id)); } catch (e) { next(e); } + }); r.get('/lessons/:id', async (req, res, next) => { try { res.json(await getLessonStats(db, req.user!.id, Number(req.params.id))); } catch (e) { next(e); } }); @@ -16,7 +25,7 @@ export function statsRouter(db: Db): Router { }); r.get('/heatmap', async (req, res, next) => { try { - const weeks = Math.min(52, Math.max(1, Number(req.query.weeks ?? 12))); + const weeks = Math.min(52, Math.max(1, Number(req.query.weeks ?? 52))); res.json(await getHeatmap(db, req.user!.id, weeks)); } catch (e) { next(e); } });