refactor: unify editorial section headings
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
---
|
||||
import SourceBadge from "./SourceBadge.astro";
|
||||
import SectionHeading from "./SectionHeading.astro";
|
||||
import { ago, kg, type PublicObservation } from "../lib/api";
|
||||
const { signals } = Astro.props as { signals: PublicObservation[] };
|
||||
const groups = [...signals.reduce((map, signal) => {
|
||||
@@ -17,7 +18,7 @@ const groups = [...signals.reduce((map, signal) => {
|
||||
}, new Map<string, PublicObservation & { observations: PublicObservation[] }>()).values()];
|
||||
---
|
||||
<section class="signal-section content-grid" aria-labelledby="signals-title">
|
||||
<div class="signal-heading"><div><span class="overline">Сырые данные источников</span><h2 id="signals-title">Полевые сигналы</h2><p>Показываем сразу, даже если часть полей отсутствует. Эти карточки не участвуют в расчёте активности до полного подтверждения.</p></div><span class="signal-count">{signals.length} сигналов · {groups.length} сюжетов</span></div>
|
||||
<SectionHeading editorial eyebrow="Сырые данные источников" title="Полевые сигналы" id="signals-title" description="Показываем сразу, даже если часть полей отсутствует. Эти карточки не участвуют в расчёте активности до полного подтверждения." count={`${signals.length} сигналов · ${groups.length} сюжетов`} />
|
||||
<div class="signal-grid">{groups.map(signal => {
|
||||
const provenance = [...new Map(signal.observations.map(item => [`${item.source_system}|${item.source_url}`, item])).values()];
|
||||
return <article class="signal-card" data-quality={signal.quality}>
|
||||
|
||||
Reference in New Issue
Block a user