feat: add searchable fish and waterbody pages

This commit is contained in:
ik
2026-09-07 16:39:28 +07:00
parent 7e60daed6f
commit 233c5887eb
10 changed files with 91 additions and 5 deletions
+10
View File
@@ -0,0 +1,10 @@
---
import Layout from "../../layouts/Layout.astro";
import { api, type DictionaryItem } from "../../lib/api";
let fishes: DictionaryItem[] = [], unavailable = false;
try { fishes = await api<DictionaryItem[]>("/api/v1/fishes?limit=500"); } catch { unavailable = true; }
---
<Layout title="Все виды рыб Russian Fishing 4 — RF4 Spotter" description="Каталог рыб RF4 со свежими точками, уловами, приманками и прозрачными источниками данных.">
<section class="catalog-hero content-grid"><span class="overline">Справочник RF4</span><h1>Рыбы</h1><p>Выберите вид, чтобы увидеть свежие подтверждённые точки и полевые сигналы.</p></section>
{unavailable ? <div class="state content-grid"><h2>Каталог временно недоступен</h2></div> : <nav class="catalog-grid content-grid" aria-label="Виды рыб">{fishes.map(fish => <a href={`/fish/${fish.slug}`}><span>Вид рыбы</span><strong>{fish.name_ru}</strong><i>→</i></a>)}</nav>}
</Layout>