| 12345678910111213141516171819202122232425262728293031323334 |
- const Joi = require('joi')
-
- const profileSchema = require('./profiles')
-
- /**
- * Groupings
- * A represents a match, an organization, or anything else
- * that relates multiple profiles to each other.
- */
-
- // validator is used to validate route input/output
- const validator = Joi.object({
- grouping_id: Joi.number(),
- grouping_name: Joi.string(),
- grouping_type: Joi.string(),
- is_paired: Joi.boolean(),
- profile: profileSchema.validator,
- }).label('grouping__single_validator')
-
- const list = Joi.array().items(validator).label('grouping__list_validator')
-
- // single is used to define database models
- const single = Joi.object({
- grouping_id: Joi.number(),
- grouping_name: Joi.string(),
- grouping_type: Joi.string(),
- is_paired: Joi.boolean(),
- }).label('grouping__single')
-
- module.exports = {
- single,
- validator,
- list,
- }
|