import Joi from 'joi';
import { objectId } from '@/shared/validations/custom.validation';

export const getRules = {
  query: Joi.object().keys({
    companyId: Joi.string().custom(objectId).required(),
    key: Joi.string(),
  }),
};

export const createOrUpdateRules = {
  body: Joi.object().keys({
    companyId: Joi.string().custom(objectId).required(),
    rules: Joi.object().pattern(Joi.string(), Joi.boolean()).required(),
  }),
};

export const patchRules = {
    params: Joi.object().keys({
      companyId: Joi.string().custom(objectId).required(),
    }),
    body: Joi.object({
      rules: Joi.object()
        .pattern(Joi.string().min(1), Joi.boolean())
        .required()
        .messages({
          'object.base': 'rules must be an object',
          'boolean.base': 'All rule values must be boolean',
          'string.min': 'Rule keys must not be empty',
        }),
    }),
  };
  