feat: manage contact form copy via payload

This commit is contained in:
syntaxbullet
2026-06-22 11:57:59 +02:00
parent aa839fcebc
commit 8dbe129ff2
6 changed files with 275 additions and 36 deletions

View File

@@ -456,6 +456,54 @@ export interface Page {
formImageLabel?: string | null;
formEyebrow?: string | null;
formTitle?: string | null;
/**
* Step labels, subject choices, field labels, validation messages, and success copy.
*/
formCopy?: {
steps?:
| {
label?: string | null;
id?: string | null;
}[]
| null;
subjects?:
| {
value?: string | null;
label?: string | null;
desc?: string | null;
id?: string | null;
}[]
| null;
prompts?: {
subject?: string | null;
contact?: string | null;
message?: string | null;
};
fields?: {
nameLabel?: string | null;
namePlaceholder?: string | null;
emailLabel?: string | null;
emailPlaceholder?: string | null;
messageLabel?: string | null;
messagePlaceholder?: string | null;
};
validation?: {
nameRequired?: string | null;
emailRequired?: string | null;
emailInvalid?: string | null;
messageRequired?: string | null;
};
navigation?: {
back?: string | null;
next?: string | null;
submit?: string | null;
};
success?: {
heading?: string | null;
prefix?: string | null;
suffixBeforeEmail?: string | null;
};
};
};
/**
* Dark 2026 timeline with three deadline columns.
@@ -3211,6 +3259,63 @@ export interface PagesSelect<T extends boolean = true> {
formImageLabel?: T;
formEyebrow?: T;
formTitle?: T;
formCopy?:
| T
| {
steps?:
| T
| {
label?: T;
id?: T;
};
subjects?:
| T
| {
value?: T;
label?: T;
desc?: T;
id?: T;
};
prompts?:
| T
| {
subject?: T;
contact?: T;
message?: T;
};
fields?:
| T
| {
nameLabel?: T;
namePlaceholder?: T;
emailLabel?: T;
emailPlaceholder?: T;
messageLabel?: T;
messagePlaceholder?: T;
};
validation?:
| T
| {
nameRequired?: T;
emailRequired?: T;
emailInvalid?: T;
messageRequired?: T;
};
navigation?:
| T
| {
back?: T;
next?: T;
submit?: T;
};
success?:
| T
| {
heading?: T;
prefix?: T;
suffixBeforeEmail?: T;
};
};
};
deadlines?:
| T