diff --git a/src/lib/block-types.ts b/src/lib/block-types.ts
index e6e8793..f60c7ae 100644
--- a/src/lib/block-types.ts
+++ b/src/lib/block-types.ts
@@ -331,6 +331,24 @@ export interface OrganisationsBlockData {
layout?: BlockLayout;
}
+export interface ContactEntry {
+ _type?: "contact";
+ _slug?: string;
+ name?: string;
+ role?: string;
+ email?: string;
+ phone?: string;
+ note?: string;
+}
+
+export interface ContactsBlockData {
+ _type?: "contacts_block";
+ _slug?: string;
+ headline?: string;
+ contacts?: (string | ContactEntry)[];
+ layout?: BlockLayout;
+}
+
/** Live-Strommix-Widget (_type: "live_strommix"). Editorial-Konfig + Platzierungs-Instanz.
* Fetched live data from /api/strommix (aggregator) and renders status bucket
* derived from `(wind_onshore + wind_offshore + solar) / load * 100`. */
diff --git a/src/lib/components/BlockRenderer.svelte b/src/lib/components/BlockRenderer.svelte
index bd3db3d..efbe294 100644
--- a/src/lib/components/BlockRenderer.svelte
+++ b/src/lib/components/BlockRenderer.svelte
@@ -16,6 +16,7 @@
import CalendarBlock from "./blocks/CalendarBlock.svelte";
import CalendarCompactBlock from "./blocks/CalendarCompactBlock.svelte";
import OrganisationsBlock from "./blocks/OrganisationsBlock.svelte";
+ import ContactsBlock from "./blocks/ContactsBlock.svelte";
import OpnFormBlock from "./blocks/OpnFormBlock.svelte";
import InternalComponentBlock from "./blocks/InternalComponentBlock.svelte";
import DeadlineBannerBlock from "./blocks/DeadlineBannerBlock.svelte";
@@ -39,6 +40,7 @@
SearchableTextBlockData,
CalendarBlockData,
OrganisationsBlockData,
+ ContactsBlockData,
OpnFormBlockData,
InternalComponentBlockData,
DeadlineBannerBlockData,
@@ -91,6 +93,8 @@
{/if}
{:else if type === "organisations"}
{contact.note}
+ {/if} +