feat: add internal_component block type with contact form

InternalComponentBlock dispatches on `component` field value.
ContactFormComponent submits via /api/contact (SvelteKit proxy →
CMS /api/forms/kontakt/submit) with honeypot + client_age_ms.
BlockRenderer and block-types.ts updated accordingly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Peter Meier
2026-05-21 11:01:47 +02:00
parent 50d68a17ca
commit 9e05fbb2ba
5 changed files with 157 additions and 0 deletions
+11
View File
@@ -422,6 +422,17 @@ export type CalendarBlockData = Omit<
layout?: BlockLayout;
};
/** Internal component block (_type: "internal_component"). */
export type InternalComponentId = "form-contact";
export interface InternalComponentBlockData {
_type?: "internal_component";
_slug?: string;
id?: string;
component?: InternalComponentId;
layout?: BlockLayout;
}
export interface WindMapBlockData {
_type?: "wind_map";
_slug?: string;