Joi Validation conditional against other fields

PHOTO EMBED

Mon Dec 26 2022 14:34:53 GMT+0000 (Coordinated Universal Time)

Saved by @adoniasmulugeta #nodejs #chai

const schema = Joi.object({
    keyword_id: IdValidation()
      .when('keyword_ids', { not: Joi.exist(), then: Joi.optional(), otherwise: Joi.forbidden() }),
    keyword_ids: Joi.array().items(IdValidation().required()).min(1),
    keyword_value: Joi.string()
      .min(1)
      .max(constants.MAX_CHAR_LENGTH)
      .regex(constants.STRING_REGEX),
    class_ids: Joi.array().items(IdValidation().required()).min(1),
  });
content_copyCOPY