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

export const sourceValidation = {
  get: Joi.object({
    id: Joi.string().custom(objectId).required(),
  }).unknown(true),
  query: Joi.object().unknown(true),

  create: Joi.object({
    name: Joi.string().trim().required(),
    createdBy: Joi.string().custom(objectId).optional(),
    updatedBy: Joi.string().custom(objectId).optional(),
  }),

  update: {
    params: Joi.object({
      id: Joi.string().custom(objectId).required(),
    }).unknown(true),
    body: Joi.object({
      name: Joi.string().trim().optional(),
      updatedBy: Joi.string().custom(objectId).optional(),
    }),
  },

  delete: Joi.object({
    id: Joi.string().custom(objectId).required(),
  }),
};
