UNPKG

1.32 kBJavaScriptView Raw
1var Valida = require('..');
2
3
4var studentSchema = {
5 name: [
6 { sanitizer: Valida.Sanitizer.trim },
7 { validator: Valida.Validator.required }
8 ],
9 age: [
10 { sanitizer: Valida.Sanitizer.toInt },
11 { validator: Valida.Validator.required }
12 ]
13};
14
15var classroomSchema = {
16 name: [
17 { sanitizer: Valida.Sanitizer.trim },
18 { validator: Valida.Validator.required }
19 ],
20 students: [
21 { validator: Valida.Validator.array },
22 { validator: Valida.Validator.required },
23 { validator: Valida.Validator.schema, schema: studentSchema }
24 ]
25};
26
27var data = {
28 name: 'class 1403',
29 students: [{
30 name: 'Eduardo Nunes',
31 age: '32'
32 }, {
33 name: 'Paulo Ragonha',
34 age: 30
35 }, {
36 name: 'Max Nunes',
37 age: 24
38 }]
39};
40
41
42var done = function (ctx) {
43 console.log('validation succeed, isValid =', ctx.isValid());
44 if (!ctx.isValid()) return console.log('errors', JSON.stringify(ctx.errors()));
45 console.log('data', data);
46};
47
48
49var fail = function (err) {
50 console.log('failed with err', err);
51};
52
53
54Valida.process(data, classroomSchema)
55 .then(done, fail);
56
57
58data = {
59 name: 'class 1403',
60 students: [{
61 name: 'Eduardo Nunes',
62 age: '32'
63 }, {
64 name: 'Paulo Ragonha',
65 }, {
66 name: 'Max Nunes',
67 age: 24
68 }]
69};
70
71
72Valida.process(data, classroomSchema)
73 .then(done, fail);