@extends('layouts.app') @section('title', __('home.changelog')) @section('css') @endsection @section('content') @php $typeMeta = function (string $type): array { return match ($type) { 'changed' => [ 'label' => __('home.changelog_type_changed'), 'icon' => 'fa fa-random', 'accent' => 'linear-gradient(180deg, #f59e0b, #ea580c)', 'bar' => '#f59e0b', 'badge' => 'background:#fffbeb;color:#b45309;border:1px solid #fde68a;', ], 'fixed' => [ 'label' => __('home.changelog_type_fixed'), 'icon' => 'fa fa-wrench', 'accent' => 'linear-gradient(180deg, #10b981, #059669)', 'bar' => '#10b981', 'badge' => 'background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;', ], 'removed' => [ 'label' => __('home.changelog_type_removed'), 'icon' => 'fa fa-minus', 'accent' => 'linear-gradient(180deg, #fb7185, #e11d48)', 'bar' => '#f43f5e', 'badge' => 'background:#fff1f2;color:#be123c;border:1px solid #fecdd3;', ], default => [ 'label' => __('home.changelog_type_added'), 'icon' => 'fa fa-plus', 'accent' => 'linear-gradient(180deg, #6366f1, #4f46e5)', 'bar' => '#6366f1', 'badge' => 'background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;', ], }; }; $releaseCount = is_countable($releases) ? count($releases) : 0; $lastUpdated = null; if (!empty($releases)) { $dates = collect($releases)->pluck('date')->filter(); $lastUpdated = $dates->isNotEmpty() ? $dates->max() : null; } $appVersion = (string) config('author.app_version', ''); @endphp

@lang('home.changelog_eyebrow')

@lang('home.changelog')

@lang('home.changelog_intro')

@lang('home.changelog_app_version_label')

{{ $appVersion !== '' ? $appVersion : '—' }}

@if (!empty($releases))

@lang('home.changelog_releases_label')

{{ $releaseCount }}

@if ($lastUpdated)

@lang('home.changelog_stat_updated')

{{ \Carbon\Carbon::parse($lastUpdated)->format('M j, Y') }}

@endif @endif
@if (empty($releases))

@lang('home.changelog_empty')

@lang('home.changelog_empty_hint')

@else
    @foreach ($releases as $release)
  1. @lang('home.changelog_version')

    {{ $release['version'] ?? '—' }}

    @if (!empty($release['date'])) @endif @php $itemCount = count($release['items'] ?? []); @endphp @if ($itemCount > 0) {{ __('home.changelog_stat_items', ['count' => $itemCount]) }} @endif
      @foreach ($release['items'] ?? [] as $item) @php $type = $item['type'] ?? 'added'; $meta = $typeMeta($type); @endphp
    • {{ $meta['label'] }}

      {{ $item['text'] ?? '' }}

    • @endforeach
  2. @endforeach
@endif
@endsection