play-again.ts 623 B

123456789101112131415161718192021
  1. import { Router, Request, Response } from 'express';
  2. import type { WordBank } from '@wordle/shared';
  3. import { selectPlayAgainWord } from '../play-again.js';
  4. export function createPlayAgainRouter(wordBank: WordBank): Router {
  5. const router = Router();
  6. router.post('/', (req: Request, res: Response) => {
  7. const { skillMetric } = req.body ?? {};
  8. if (typeof skillMetric !== 'number') {
  9. res.status(400).json({ error: 'skillMetric (number) required' });
  10. return;
  11. }
  12. const target = selectPlayAgainWord(wordBank.targets, skillMetric);
  13. res.json({ wordId: target.id });
  14. });
  15. return router;
  16. }