// src/validators/roles.validators.js
const { body, param } = require('express-validator');

// Crear rol
const createRoleValidator = [
  body('nombre')
    .isString()
    .notEmpty()
    .withMessage('El nombre es requerido'),
  body('descripcion')
    .optional()
    .isString()
    .isLength({ max: 255 })
    .withMessage('Descripción demasiado larga'),
];

// Actualizar rol
const updateRoleValidator = [
  param('id').isInt({ gt: 0 }).withMessage('ID inválido'),
  body('nombre')
    .optional()
    .isString()
    .notEmpty()
    .withMessage('El nombre no puede estar vacío'),
  body('descripcion')
    .optional()
    .isString()
    .isLength({ max: 255 }),
];

// Obtener / eliminar rol por id
const roleIdValidator = [
  param('id').isInt({ gt: 0 }).withMessage('ID inválido'),
];

module.exports = {
  createRoleValidator,
  updateRoleValidator,
  roleIdValidator,
};
