simple-review-server/src/types.ts

19 lines
512 B
TypeScript
Raw Normal View History

2024-08-16 15:04:52 -04:00
import { object, string, number, InferType } from "yup";
export const reviewSchema = object({
username: string().max(30).required(),
2024-08-18 23:45:00 -04:00
rating: number()
.positive()
.max(5)
.test(
"maxDigitsAfterDecimal",
"Rating can only have at most one integer at half intervals (.0 or .5)",
2024-08-19 00:10:56 -04:00
(number) => (number! * 10) % 5 === 0,
2024-08-18 23:45:00 -04:00
)
.required(),
title: string().max(50).required(),
content: string().max(2000).notRequired(),
2024-08-16 15:04:52 -04:00
});
export type Review = InferType<typeof reviewSchema>;