A JSON schema parser for Yup
npm install json-yupA simple utility for converting a JSON schema into Yup schema.
npm install -S json-yup
`
`
import createValidationSchema from 'json-yup';
`API
`javascript
createValidationSchema(schema, options);
`$3
|Argument | Type | Description |
|-------------- | --- |---|
|schema | Object | A valid JSON schema conforming to JSON schema specifications. |
| customValidationFields | Object | Custom Yup mappings for schema properties |$3
|Property | Type | Description |
|-------------- | --- |---|
|blackList | Array | A list of fields to omit from the schema. |
|customValidationFields | Object | Custom Yup mappings for schema properties |
|validationTypes| Object | Custom Yup mappings for schema types. |
$3
Yup validation objectUsage
`javascript
// Valid JSON Schema
const jsonSchema = {
"type": "object",
"required": [
"first_name"
],
"properties": {
"create_at": {
"type": "string"
},
"first_name": {
"type": "string"
},
"age": {
"type": "number",
"min": 1,
"max": 200
}
}
};// Build Yup Schema
const validationSchema = createValidationSchema(jsonSchema, {
blackList: [
'create_at'
],
validationTypes: {
string: yup.string().nullable()
},
customValidationFields: {
first_name: yup.string().test(
'isWilly',
'Oops! You\'re not Willy',
value => value === 'Willy'
)
}
});
// Check validity
validationSchema.isValid({
first_name: 'Willy',
age: 24
})
``