UNPKG

@battle-racing/br-common-lib

Version:

Common library for all Battle Racing Repositorios

18 lines (12 loc) 675 B
import { z } from 'zod'; export const arithmeticOperatorSchema = z.enum(['+', '-', '*', '/']); // Regex for SimpleArithmeticString: check for operator followed by numbers export const simpleArithmeticStringSchema = z.string().regex(/^[\+\-\*\/]-?\d+(\.\d+)?$/); // Regex for ContextArithmeticString: $variable operator number export const kartContextVariableSchema = z.enum(['$kart.configuredSpeed', '$kart.powerUpTime']); export const contextArithmeticStringSchema = z.string().regex(/^\$[a-zA-Z0-9\.]+\s[\+\-\*\/]\s-?\d+(\.\d+)?$/); export const arithmeticExpressionSchema = z.union([ z.number(), simpleArithmeticStringSchema, contextArithmeticStringSchema, ]);