feat: соц-кнопки и кнопка «Наверх» внизу + русская плюрализация

- Под лентой контента появилась панель из трёх pill-кнопок:
  Telegram (t.me/anotherreflections), ВКонтакте (vk.com/anotherreflections)
  и «Наверх» (smooth scroll to top)
- Универсальный plural() в consts.ts — больше нет «8 мира»,
  hero показывает «8 миров / 50 публикаций / 20 лет онлайн»
  с автоматически правильной формой при любом значении
- Уточнено описание Ренессанса: «фантастическими допущениями мира Сумрака»
This commit is contained in:
2026-05-21 01:43:30 +03:00
parent 65a55ca6ef
commit 5f9ec37211
6 changed files with 81 additions and 7 deletions

View File

@@ -1,7 +1,7 @@
---
import { getCollection } from 'astro:content';
import BaseLayout from '../layouts/BaseLayout.astro';
import { WORLDS, CATEGORY_COLORS, HERO_TAGLINE, SITE_FOUNDED } from '../consts';
import { WORLDS, CATEGORY_COLORS, HERO_TAGLINE, SITE_FOUNDED, plural } from '../consts';
const posts = (await getCollection('posts'))
.sort((a, b) => b.data.pubDate.valueOf() - a.data.pubDate.valueOf());
@@ -19,9 +19,9 @@ const fmtDate = (d: Date) =>
<h1>Иные<br/>Отражения</h1>
<p class="hero-tagline">{HERO_TAGLINE}</p>
<div class="hero-meta">
<span><strong>{totalWorlds}</strong> мира</span>
<span><strong>{totalPosts}</strong> публикаций</span>
<span><strong>{new Date().getFullYear() - SITE_FOUNDED}</strong> лет онлайн</span>
<span><strong>{totalWorlds}</strong> {plural(totalWorlds, ['мир', 'мира', 'миров'])}</span>
<span><strong>{totalPosts}</strong> {plural(totalPosts, ['публикация', 'публикации', 'публикаций'])}</span>
<span><strong>{new Date().getFullYear() - SITE_FOUNDED}</strong> {plural(new Date().getFullYear() - SITE_FOUNDED, ['год', 'года', 'лет'])} онлайн</span>
</div>
</section>