<?php

namespace {{ namespace }};

use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;

class {{ class }} extends JsonResource
{
    /**
     * Transform the resource into an array.
     * Nivel Staff: Mapeo explícito para evitar fuga de datos sensibles (Data Leakage).
     *
     * @return array<string, mixed>
     */
    public function toArray(Request $request): array
    {
        return [
            'id' => $this->id, // Considerar cambiar a $this->uuid si aplica
            // 'nombre' => $this->nombre,
            // 'estado' => $this->status,
            
            // Relaciones cargadas dinámicamente (Evita N+1 y serializa recursivamente)
            // 'relacion' => new RelacionResource($this->whenLoaded('relacion')),
            
            // Fechas en formato ISO 8601 estandarizado para Vue/Capacitor
            'creado_el' => $this->created_at?->toIso8601String(),
            'actualizado_el' => $this->updated_at?->toIso8601String(),
        ];
    }
}