add completedBingoCard schema, request_new_bingo_card WS message

This commit is contained in:
2026-03-13 11:23:10 +01:00
parent b095ce0d69
commit 25f61d456c
2 changed files with 15 additions and 0 deletions

View File

@@ -87,6 +87,15 @@ export const bingoCardSchema = z.object({
export type BingoCard = z.infer<typeof bingoCardSchema>
export const completedBingoCardSchema = z.object({
playerId: z.string(),
displayName: z.string(),
card: bingoCardSchema,
completedAt: z.string(),
})
export type CompletedBingoCard = z.infer<typeof completedBingoCardSchema>
// ─── Quiz ────────────────────────────────────────────────────────
export const quizQuestionSchema = z.object({
@@ -134,6 +143,7 @@ export const gameStateSchema = z.object({
playerId: z.string(),
displayName: z.string(),
})),
completedBingoCards: z.array(completedBingoCardSchema),
// Quiz
currentQuizQuestion: quizQuestionSchema.nullable(),
myQuizBuzzStatus: z.enum(["can_buzz", "already_buzzed", "excluded", "waiting"]).nullable(),

View File

@@ -54,6 +54,10 @@ export const tapBingoSquareMessage = z.object({
tropeId: z.string(),
})
export const requestNewBingoCardMessage = z.object({
type: z.literal("request_new_bingo_card"),
})
export const submitActualResultsMessage = z.object({
type: z.literal("submit_actual_results"),
winner: z.string(),
@@ -90,6 +94,7 @@ export const clientMessage = z.discriminatedUnion("type", [
closeJuryVoteMessage,
submitJuryVoteMessage,
tapBingoSquareMessage,
requestNewBingoCardMessage,
submitActualResultsMessage,
startQuizQuestionMessage,
buzzMessage,