UNPKG

@battle-racing/br-common-lib

Version:

Common library for all Battle Racing Repositorios

47 lines (46 loc) 1.73 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GameTurnQueueItemSchema = exports.GameTurnSchema = exports.GameTurnCheckSchema = exports.GameTurnStatusSchema = exports.GAME_TURN_CHECK = exports.GAME_TURN_STATUS = void 0; const zod_1 = require("zod"); const GameTurnTask_schema_1 = require("./GameTurnTask.schema"); exports.GAME_TURN_STATUS = { CREATED: 'created', IN_QUEUE: 'in_queue', READY: 'ready', PLAYING: 'playing', COMPLETED: 'completed', }; exports.GAME_TURN_CHECK = { TUTORIAL: 'tutorial', AGE_VERIFICATION: 'age_verification', TERMS_ACCEPTANCE: 'terms_acceptance', }; exports.GameTurnStatusSchema = zod_1.z.enum([ exports.GAME_TURN_STATUS.CREATED, exports.GAME_TURN_STATUS.IN_QUEUE, exports.GAME_TURN_STATUS.READY, exports.GAME_TURN_STATUS.PLAYING, exports.GAME_TURN_STATUS.COMPLETED, ]); exports.GameTurnCheckSchema = zod_1.z.enum([ exports.GAME_TURN_CHECK.TUTORIAL, exports.GAME_TURN_CHECK.AGE_VERIFICATION, exports.GAME_TURN_CHECK.TERMS_ACCEPTANCE, ]); exports.GameTurnSchema = zod_1.z.object({ id: zod_1.z.string(), purchaseId: zod_1.z.string(), leaderUsername: zod_1.z.string(), gameTickets: zod_1.z.array(zod_1.z.string()), usernames: zod_1.z.array(zod_1.z.string()), status: exports.GameTurnStatusSchema, tasks: zod_1.z.array(GameTurnTask_schema_1.GameTurnTaskSchema), createdAt: zod_1.z.date(), updatedAt: zod_1.z.date(), startedAt: zod_1.z.date().optional(), completedAt: zod_1.z.date().optional(), }); // The Game turn queue item requires a position to sort it. exports.GameTurnQueueItemSchema = exports.GameTurnSchema.extend({ position: zod_1.z.number(), });