Fixed validator for songhistory
This commit is contained in:
@@ -1,15 +1,27 @@
|
||||
import * as yup from 'yup';
|
||||
import ResponseHandler from './ResponseHandler';
|
||||
import { SongValidator } from './Song';
|
||||
import { ModelValidator } from './Model';
|
||||
|
||||
|
||||
export const SongHistoryItemValidator = yup.object({
|
||||
songID: yup.number().required(),
|
||||
song: SongValidator.required(),
|
||||
userID: yup.number().required(),
|
||||
info: yup.object({
|
||||
good: yup.number().required(),
|
||||
great: yup.number().required(),
|
||||
score: yup.number().required(),
|
||||
wrong: yup.number().required(),
|
||||
missed: yup.number().required(),
|
||||
perfect: yup.number().required(),
|
||||
max_score: yup.number().required(),
|
||||
max_streak: yup.number().required(),
|
||||
// there's also a current streak key but it doesn't
|
||||
// conceptually makes sense outside of the played game
|
||||
}).required(),
|
||||
score: yup.number().required(),
|
||||
playDate: yup.date().required(),
|
||||
difficulties: yup.mixed().required(),
|
||||
});
|
||||
}).concat(ModelValidator);
|
||||
export type SongHistoryItem = yup.InferType<typeof SongHistoryItemValidator>;
|
||||
|
||||
export const SongHistoryItemHandler: ResponseHandler<SongHistoryItem> = {
|
||||
|
||||
Reference in New Issue
Block a user