Front: Api models validation (#245)
* Front: Model: Write Validators * Front: Plage response validator * Front: API: Typing 'fetch' return * Front: Basic Models: Response Handlers * Front: API: Validate authentication response * Front: Validate Search History * Front: Validate Responses of User updates * Front: On Validation Error, more verbose console error
This commit is contained in:
@@ -1,7 +1,34 @@
|
||||
import * as yup from 'yup';
|
||||
import ResponseHandler from './ResponseHandler';
|
||||
|
||||
export const SongDetailsValidator = yup.object({
|
||||
length: yup.number().required(),
|
||||
rhythm: yup.number().required(),
|
||||
arpeggio: yup.number().required(),
|
||||
distance: yup.number().required(),
|
||||
lefthand: yup.number().required(),
|
||||
twohands: yup.number().required(),
|
||||
notecombo: yup.number().required(),
|
||||
precision: yup.number().required(),
|
||||
righthand: yup.number().required(),
|
||||
pedalpoint: yup.number().required(),
|
||||
chordtiming: yup.number().required(),
|
||||
leadhandchange: yup.number().required(),
|
||||
chordcomplexity: yup.number().required(),
|
||||
});
|
||||
|
||||
export const SongDetailsHandler: ResponseHandler<
|
||||
yup.InferType<typeof SongDetailsValidator>,
|
||||
SongDetails
|
||||
> = {
|
||||
validator: SongDetailsValidator,
|
||||
transformer: (value) => value,
|
||||
};
|
||||
|
||||
interface SongDetails {
|
||||
length: number;
|
||||
rhythm: number;
|
||||
arppegio: number;
|
||||
arpeggio: number;
|
||||
distance: number;
|
||||
lefthand: number;
|
||||
righthand: number;
|
||||
@@ -10,7 +37,7 @@ interface SongDetails {
|
||||
precision: number;
|
||||
pedalpoint: number;
|
||||
chordtiming: number;
|
||||
leadheadchange: number;
|
||||
leadhandchange: number;
|
||||
chordcomplexity: number;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user