Contains a JSON Schema for Viewscript, along with a validation utility.
$ npm install viewscript-schema --save
const viewscriptSchema = require('viewscript-schema')
const result = viewscriptSchema.validateForm(
{
title: 'Simple demo form!',
canBeCompletedOffline: true,
widgets: [
{
type: 'header',
attributes: {
heading: 'Register!',
desc: 'Let's get to know each other a bit better...',
backgroundImage: 'happyPeople.jpg',
backgroundImageAltText: 'Beautiful people smiling around a laptop'
}
},
{
id: 'name',
type: 'text',
attributes: {
heading: 'Name',
placeholder: 'e.g. Lucy Smith',
mandatory: true,
minCharacters: 1,
maxCharacters: 100,
help: 'Enter your full name here'
}
}
]
})
if (result.widgetsValid) {
// All is well!!
} else {
// Do something with result.errors array.
}
$ npm test