@props(['path' => null, 'alt' => '', 'class' => 'object-cover w-full h-40', 'placeholder' => '/images/placeholder.png']) @php $url = null; try { if ($path) { // Nettoyer le chemin (enlever les doubles slashes, backslashes, etc.) $cleanPath = str_replace(['\\', '//'], '/', trim($path, '/\\')); // Utiliser storage.php?file= pour servir les fichiers $baseUrl = request()->getSchemeAndHttpHost(); $url = $baseUrl . '/storage.php?file=' . urlencode($cleanPath); } } catch (\Exception $e) { $url = null; } $finalSrc = $url ?? asset($placeholder); @endphp {{ $alt }}merge(['class' => $class]) }} onerror="this.onerror=null;this.src='{{ asset($placeholder) }}'" loading="lazy" />