feat(section-grid): InfoCard + SectionGrid als CMS-Block
Neuer section_grid-Block (SectionHeader + Card-Grid aus info_card-Refs) + info_card-Collection. SectionGrid/InfoCard-Komponenten, BlockRenderer-Case, content_layout erlaubt section_grid in Rows. SectionHeader.title jetzt optional (Kicker-only-Header). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -576,3 +576,34 @@ export interface StellingnahmeGeneratorBlockData {
|
||||
aiRules?: string;
|
||||
layout?: BlockLayout;
|
||||
}
|
||||
|
||||
/** Einzelne Kachel (info_card): Icon/Bild + Titel + Beschreibung + optionaler Link. */
|
||||
export interface InfoCardData {
|
||||
_type?: "info_card";
|
||||
_slug?: string;
|
||||
/** Iconify-String ("mdi:email") oder Bild-URL — Komponente erkennt automatisch. */
|
||||
icon?: string;
|
||||
title?: string;
|
||||
description?: string;
|
||||
linkLabel?: string;
|
||||
linkHref?: string;
|
||||
external?: boolean;
|
||||
}
|
||||
|
||||
/** Sektions-Grid (_type: "section_grid"): SectionHeader + info_card-Kacheln. */
|
||||
export interface SectionGridBlockData {
|
||||
_type?: "section_grid";
|
||||
_slug?: string;
|
||||
headline?: string;
|
||||
subtitle?: string;
|
||||
/** SectionHeader: Label über dem Titel (uppercase). */
|
||||
kicker?: string;
|
||||
/** SectionHeader: Index vor dem Kicker, z.B. "01". */
|
||||
number?: string;
|
||||
/** SectionHeader: CTA-Link (aufgelöst: url, linkName). */
|
||||
action?: string | { url?: string; linkName?: string; newTab?: boolean };
|
||||
columns?: "2" | "3" | "4";
|
||||
/** Slugs oder aufgelöste info_card-Einträge. */
|
||||
cards?: (string | InfoCardData)[];
|
||||
layout?: BlockLayout;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user