@extends('library.layouts.app') @section('title', __('labels.home')) @section('content')

{{ __('library.offline_packets') }}

@php function formatFilesize(int $size): string { if ($size >= 1048576) return number_format($size / 1048576, 2) . ' MB'; if ($size >= 1024) return number_format($size / 1024, 1) . ' KB'; return $size . ' B'; } @endphp @if(empty($packets)) {{-- ── Empty state ── --}}

{{ __('library.no_packets') }}

{{ __('library.no_packets_desc') }}

@else {{-- ════════════════════════════════════════════ ① 桌面端 Table ≥ md (768px) ════════════════════════════════════════════ --}}
@foreach($packets as $packet) {{-- 名称 --}} {{-- 大小 --}} {{-- 最低版本 --}} {{-- 创建时间 --}} {{-- 下载链接 --}} @endforeach
{{ __('library.col_name') }} {{ __('library.col_size') }} {{ __('library.col_min_version') }} {{ __('library.created_at') }} {{ __('library.col_links') }}
{{ $packet['title'] ?? $packet['id'] }}
{{ $packet['filename'] ?? '' }}
{{ formatFilesize((int)($packet['filesize'] ?? 0)) }} @if(!empty($packet['min_app_ver'])) v{{ $packet['min_app_ver'] }} @else @endif {{ $packet['create_at'] ?? '—' }} @if(!empty($packet['url']) && is_array($packet['url']))
@foreach($packet['url'] as $index => $urlItem) {{ $urlItem['hostname'] ?? __('library.download') }} @endforeach
@else {{ __('library.no_links') }} @endif
{{-- ════════════════════════════════════════════ ② 移动端 Card list < md (768px) ════════════════════════════════════════════ --}}
@foreach($packets as $packet)
{{-- 顶部:图标 + 标题 + 大小 badge --}}
{{ $packet['title'] ?? $packet['id'] }}
{{ $packet['filename'] ?? '' }}
{{ formatFilesize((int)($packet['filesize'] ?? 0)) }}
{{-- 中部:时间 + 最低版本 --}}
{{ $packet['create_at'] ?? '—' }} @if(!empty($packet['min_app_ver'])) {{ __('library.min_version_prefix') }}v{{ $packet['min_app_ver'] }} @endif
{{-- 底部:下载按钮,全宽竖排 --}} @if(!empty($packet['url']) && is_array($packet['url']))
@foreach($packet['url'] as $index => $urlItem) {{ $urlItem['hostname'] ?? __('library.download') }} @endforeach
@endif
{{-- /.list-group-item --}} @endforeach
@endif
{{-- /.card --}}
@endsection