Joi.object().keys({ title: Joi.string(), description: Joi.string(), dimensions: Joi.func(), segments: Joi.func(), order: Joi.array().items(Joi.object().keys({ member: Joi.func().required(), direction: Joi.any().valid('asc', 'desc').required() })), filters: Joi.array().items(Joi.object().keys({ member: Joi.func().required(), operator: Joi.any().valid('contains', 'notContains', 'equals', 'set', 'notSet', 'gt', 'gte', 'lt', 'lte'), params: Joi.array().items(Joi.string().allow('').optional()) })), timeDimension: Joi.object().keys({ dimension: Joi.func().required(), dateRange: Joi.string().required(), granularity: Joi.any().valid('hour', 'day', 'week', 'month', 'year', null) }), visualization: Joi.object().keys({ type: Joi.any().valid('bar', 'line', 'table', 'area', 'singleValue', 'pie').required(), autoScale: Joi.boolean(), seriesPositioning: Joi.any().valid('stacked', 'grouped', 'proportional') }), pivot: Joi.object().keys({ x: Joi.array(), y: Joi.array() }),
router.delete('/:id', async (req, res, next) => { try { await schema.validateAsync(req.body).catch(reason => { throw new ErrorHandler(422, reason); }); const id = req.params.id; await userService.delete([id]); return res.status(204).send(); } catch (e) { next(e); } });
const loginValidation = (data) => { const validSchema = Joi.object({ email: Joi.string().min(6).required().email(), password: Joi.string().min(6).required() }); return validSchema.validate(data); }
constructor(id: string, rawData: RawData) { if (!id) { throw new Error('Task requires an ID'); } const { value, error } = schema.validate(rawData, validationOptions); if (error) { throw new Error(`Invalid rawData for task: ${error}`); } this.id = id; this.dataString = value.data; this.dataObj = JSON.parse(value.data); this.dedupKey = value.dedupKey; this.retryCount = value.retryCount; }
function validateUser(user) { const schema = Joi.object({ name: Joi.string().required(), email: Joi.string().required().email(), password: Joi.string().min(5).max(12).required() }); return schema.validate(user); }
const validate = (schema, data) => { const response = Joi.object(schema) .validate(data) if (response.error != null) { return { error: true, messages: response.error.details.map(item => getMessage(item.type, item.context.key)) } } else { return { error: false, data: data } } }
/** * Get the Trigger configuration schema. * @returns {*} */ getConfigurationSchema() { return this.joi.object().keys({ host: [this.joi.string().hostname().required(), this.joi.string().ip().required()], port: this.joi.number().port().required(), user: this.joi.string().required(), pass: this.joi.string().required(), from: this.joi.string().email().required(), to: this.joi.string().email().required(), }); }
router.post('/', async (req, res, next) => { try { await schema.validateAsync(req.body).catch(reason => { throw new ErrorHandler(422, reason); }); const first_name = req.body.first_name; const last_name = req.body.last_name; await userService.post([first_name, last_name]); return res.status(200).send(); } catch (e) { next(e); } });
lab.before(async () => { DummyModel = class extends MongoModels {}; DummyModel.schema = Joi.object().keys({ _id: Joi.object(), count: Joi.number(), group: Joi.string(), isCool: Joi.boolean(), name: Joi.string().required() }); DummyModel.collectionName = 'dummies'; await MongoModels.connect(config.connection, config.options); });
//Register validation const registerValidation = data => { const schema= Joi.object({ name:Joi.string().min(6).required(), email: Joi.string().min(6).required().email(), password: Joi.string().min(6).required() }); return schema.validate(data); }
/** * Get the Trigger configuration schema. * @returns {*} */ getConfigurationSchema() { return this.joi.object().keys({ url: this.joi.string().uri({ scheme: ['mqtt', 'mqtts', 'tcp', 'tls', 'ws', 'wss'], }).required(), topic: this.joi.string().default('wud/image'), user: this.joi.string(), password: this.joi.string(), }); }
// Validate input data before signup const validateSignup = (data) => { const schema = Joi.object({ name: Joi.string().required().min(6).required(), email: emailValidation, password: passwordValidation, }); return schema.validate(data); }
function validate(req) { const schema = Joi.object({ email: Joi.string().required().email(), password: Joi.string().required() }); return schema.validate(req); }