<?php

namespace App\Http\Requests\Admin;

use Illuminate\Foundation\Http\FormRequest;

class CreateTemplateRequest extends FormRequest
{
    public function authorize(): bool
    {
        return true;
    }

    public function rules(): array
    {
        return [
            'name' => ['required', 'string', 'max:255'],
            'preview_image' => ['nullable', 'string', 'max:255'],
            'view_file' => ['required', 'string', 'max:255'],
            'type' => ['required', 'string', 'max:100'],
        ];
    }

    public function messages(): array
    {
        return [
            'name.required' => 'El nombre es obligatorio.',
            'name.string' => 'El nombre debe ser una cadena de texto.',
            'name.max' => 'El nombre no debe exceder los 255 caracteres.',

            'preview_image.string' => 'La imagen de vista previa debe ser una cadena de texto.',
            'preview_image.max' => 'La imagen de vista previa no debe exceder los 255 caracteres.',

            'view_file.required' => 'El archivo de vista es obligatorio.',
            'view_file.string' => 'El archivo de vista debe ser una cadena de texto.',
            'view_file.max' => 'El archivo de vista no debe exceder los 255 caracteres.',

            'type.required' => 'El tipo es obligatorio.',
            'type.string' => 'El tipo debe ser una cadena de texto.',
            'type.max' => 'El tipo no debe exceder los 100 caracteres.',
        ];
    }
}