@battle-racing/br-common-lib
Version:
Common library for all Battle Racing Repositorios
33 lines (27 loc) • 962 B
text/typescript
import { z } from 'zod';
import { colorNameSchema } from '../../color';
import { checkpointTypeSchema } from '../../checkpoint';
import { FLAG_MEDIA_NAME, FLAG_STATUS } from './Flag.const';
export const flagStatusSchema = z.enum(FLAG_STATUS);
export const flagMediaNameSchema = z.enum(FLAG_MEDIA_NAME);
export const flagModuleStatusSchema = z.object({
flagStatus: flagStatusSchema,
lastCheckpointAddress: z.number(),
lastCheckpointType: checkpointTypeSchema,
});
export const flagConfigurationOptionsSchema = z.object({
kartId: z.number(),
kartNumber: z.number(),
kartColor: colorNameSchema, // ensure colorNameSchema is imported
screenBrightness: z.number().min(0).max(100),
animationTime: z.number().min(1).max(25),
});
export const flagShowMediaOptionsSchema = z.object({
screens: z.object({
left: z.boolean(),
right: z.boolean(),
front: z.boolean(),
back: z.boolean(),
}),
mediaSourceName: flagMediaNameSchema,
});