<?php

namespace App\Http\Controllers;

use Illuminate\Support\Facades\Storage;

class FileController extends Controller
{
    /**
     * Sirve archivos privados con autenticación.
     * El parámetro $path incluye el módulo como primer segmento:
     *   chat/filename.jpg
     *   profiles/avatar.jpg
     *   tasks/homework.pdf
     */
    public function serve(string $path)
    {
        if (!Storage::disk('local')->exists($path)) {
            abort(404);
        }

        return Storage::disk('local')->response($path);
    }
}
