2026-07-10 18:17:13 -05:00
|
|
|
// Fully type-checked (tsconfig.server.json); leading import type keeps Node type-stripping active.
|
2026-07-06 11:26:50 -05:00
|
|
|
import type { Req, Res, Next } from '../types/http';
|
2026-07-06 14:23:53 -05:00
|
|
|
('use strict');
|
2026-05-03 19:51:57 -05:00
|
|
|
|
|
|
|
|
const express = require('express');
|
2026-07-06 14:23:53 -05:00
|
|
|
const router = express.Router();
|
2026-07-06 11:00:01 -05:00
|
|
|
const { getUserSettings, setUserSettings } = require('../services/userSettings.cts');
|
2026-05-03 19:51:57 -05:00
|
|
|
|
|
|
|
|
// GET /api/settings — returns only user-facing app preferences
|
2026-07-06 11:26:50 -05:00
|
|
|
router.get('/', (req: Req, res: Res) => {
|
2026-05-15 22:45:38 -05:00
|
|
|
res.json(getUserSettings(req.user.id));
|
2026-05-03 19:51:57 -05:00
|
|
|
});
|
|
|
|
|
|
2026-05-15 22:45:38 -05:00
|
|
|
// PUT /api/settings — updates only allowed user-facing keys for this user
|
2026-07-06 11:26:50 -05:00
|
|
|
router.put('/', (req: Req, res: Res) => {
|
2026-05-15 22:45:38 -05:00
|
|
|
res.json(setUserSettings(req.user.id, req.body));
|
2026-05-03 19:51:57 -05:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
module.exports = router;
|