From 49d7bd9d88d899e8272caa3b71283d9153f195ef Mon Sep 17 00:00:00 2001 From: Mathias Wagner Date: Sun, 8 Jan 2023 02:32:40 +0100 Subject: [PATCH] Created the module validation --- server/validations/module.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 server/validations/module.js diff --git a/server/validations/module.js b/server/validations/module.js new file mode 100644 index 0000000..b4781a6 --- /dev/null +++ b/server/validations/module.js @@ -0,0 +1,21 @@ +const Joi = require('joi'); + +const fieldValidation = Joi.object({ + type: Joi.string().required().valid("text", "number"), + name: Joi.string().required().max(25), + description: Joi.string().required().max(40), + placeholder: Joi.string().max(30) +}); + +const metaValidation = Joi.array().required().items(Joi.object({ + name: Joi.string().required(), + type: Joi.string().valid("default"), + fields: Joi.object().pattern(Joi.string(), fieldValidation) +})); + +module.exports = Joi.object({ + name: Joi.string().required().min(3).max(20), + icon: Joi.string().required(), + validationSchema: Joi.object().required(), + meta: metaValidation +});