Options
'use strict';
const Fractale = require('fractale');
Fractale.setOptions({
use_moment: () => { try { require('moment'); return true; } catch (error) { return false; }}, // Specify to fractale to transform date to moment instance
});
Field options
'use strict';
const Fractale = require('fractale');
const Child = Fractale.create('Child', {
mixed: undefined,
boolean: Boolean,
number: Number,
string: String,
});
const Parent = Fractale.create('Parent', Child, {
parent: Fractale.with(Fractale.SELF, {
// Pass number of parent to number of great-parent
through: ['number'],
}),
children: [
Fractale.with(Child, {
// Pass number of parent to mixed of child
// Pass string of parent to string of child
through: { number: 'mixed', string: 'string' },
})
],
});
Field validators
'use strict';
const Fractale = require('fractale');
const Simple = Fractale.create('Simple', {
anyway: Fractale.with(undefined, {
validator: (value) => value !== 'A value'
}),
mixed: Fractale.with(undefined, {
validator: {
in: ['foo', 'bar', 42]
}
}),
number: Fractale.with(Number, {
validator: {
gt: 17,
gte: 18,
lt: 51,
lte: 50,
between: [18, 50]
}
}),
date: Fractale.with(Date, {
validator: {
gt: '2019-11-17',
gte: new Date('2019-11-18'),
lte: moment('2019-11-20'),
lt: moment(),
between: [18] // If one value is between ... and today or today and ...
}
}),
string: Fractale.with(String, {
validator: {
like: /bar$/
}
}),
});
Last updated
Was this helpful?