From 54f1088da239d87ac54058a74425255ef4b81cae Mon Sep 17 00:00:00 2001 From: Aleksei Pavlov Date: Fri, 19 Jun 2026 12:25:59 +0300 Subject: [PATCH] fix(zero): banner always renders, even without published notes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Showing the hero matters for discoverability — visitors see who Зеро is and the TG channel link even before the first note is published. When there are no notes, hero spans the full width (no empty grid). --- components/ZeroBlock.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/components/ZeroBlock.js b/components/ZeroBlock.js index a95f4b0..7598059 100644 --- a/components/ZeroBlock.js +++ b/components/ZeroBlock.js @@ -110,11 +110,10 @@ function ZeroNoteCard({ note }) { } export default function ZeroBlock({ notes = [], compact = false }) { - // На главной компонент скрывается полностью если нет заметок; - // на /zero — рендерится только Hero (с CTA-кнопками) - if (compact && notes.length === 0) return null; - + // Баннер всегда рендерится (даже без заметок) — это лицо персонажа. + // Пустое состояние просто скрывает grid карточек, оставляя hero на всю ширину. const items = compact ? notes.slice(0, 3) : notes; + const hasItems = items.length > 0; return (
{compact ? ( - // Главная: hero слева (5 кол), карточки справа (7 кол) -
-
+ // Главная: hero слева (5 кол), карточки справа (7 кол). + // Если карточек нет — hero на всю ширину. +
+
- {items.length > 0 && ( + {hasItems && (
{items.map(n => )} @@ -147,7 +147,7 @@ export default function ZeroBlock({ notes = [], compact = false }) {
- {items.length > 0 ? ( + {hasItems ? (
{items.map(n => )}