feat: scaffold quiz API vertical slice

- Add GameRequestSchema and derived types to packages/shared
- Add SupportedLanguageCode, SupportedPos, DifficultyLevel type exports
- Add getGameTerms() model to packages/db with pos/language/difficulty/limit filters
- Add prepareGameQuestions() service skeleton in apps/api
- Add createGame controller with Zod safeParse validation
- Wire POST /api/v1/game/start route
- Add scripts/gametest/test-game.ts for manual end-to-end testing
This commit is contained in:
lila 2026-04-09 13:47:01 +02:00
parent 13cc709b09
commit 9fc3ba375a
11 changed files with 99 additions and 94 deletions

View file

@ -1,3 +1,16 @@
export const prepareQuestions = async (params: object) => {
console.log(params);
import type { GameRequestType } from "@glossa/shared";
import { getGameTerms } from "@glossa/db";
export const prepareGameQuestions = async (gameSettings: GameRequestType) => {
const { source_language, target_language, pos, difficulty, rounds } =
gameSettings;
const terms = await getGameTerms(
source_language,
target_language,
pos,
difficulty,
Number(rounds),
);
return terms;
};