@php $fmt = function ($bytes) { if (! $bytes) return '—'; $u = ['B','KB','MB','GB']; $i = 0; while ($bytes >= 1024 && $i < 3) { $bytes /= 1024; $i++; } return round($bytes, 1).' '.$u[$i]; }; $badge = [ 'stable' => 'bg-emerald-50 text-emerald-700', 'beta' => 'bg-amber-50 text-amber-700', 'alpha' => 'bg-orange-50 text-orange-700', 'hotfix' => 'bg-rose-50 text-rose-700', ]; $statusBadge = [ 'published' => 'bg-emerald-50 text-emerald-700', 'draft' => 'bg-gray-100 text-gray-600', 'archived' => 'bg-gray-100 text-gray-400', ]; @endphp {{-- Dashboard --}}
@foreach ([ ['Latest', $stats['latest']?->version ?? '—'], ['Published', $stats['published']], ['Downloads', $stats['total_downloads']], ['Updated OK', $stats['successful_updates']], ['Failed', $stats['failed_updates']], ['Most installed', $stats['most_installed']?->version ?? '—'], ] as [$label, $value])
{{ $label }}
{{ $value }}
@endforeach

Version history

{{-- Upload form --}} @if ($showForm)

Upload New Version

SHA-256 checksums are generated automatically after upload.

@endif {{-- History table --}}
@forelse ($versions as $v) @empty @endforelse
Version Type Mandatory Published Size Downloads Status Actions
{{ $v->version }} ({{ $v->version_code }}) {{ ucfirst($v->release_type) }} {{ $v->mandatory ? 'Yes' : 'No' }} {{ $v->published_at?->format('Y-m-d') ?? '—' }} {{ $fmt($v->installer_size) }} {{ $v->download_count }} {{ ucfirst($v->status) }}
@if ($v->installerUrl()) Download @endif @if ($v->status !== 'published') @endif @if ($v->status === 'published') @endif
No versions yet. Upload the first release.