Theme-Konfiguration
Diese Referenz wird automatisch aus den Theme-Typdefinitionen und Default-Werten generiert.
| Eigenschaft | Typ | Erforderlich | Default | Beschreibung |
|---|---|---|---|---|
| glossaryPage | string | false | — | URL-Pfad zur Glossar-Seite (z. B. /glossar). Aktiviert die automatische Verlinkung von Glossarbegriffen im Text. |
| feedback | FeedbackProps | false | — | Konfiguration des Feedback-Formulars. Alle Felder sind in FeedbackProps beschrieben. |
| feedback.feedbackServerUrl | string | true | — | |
| feedback.gitlabProjectId | string | true | — | |
| feedback.headline | string | false | — | |
| feedback.description | string | false | — | |
| feedback.buttonText | string | false | — | |
| feedback.labels | string[] | [ ] | true | — | |
| feedback.requiredText | string | true | — | |
| feedback.fields | FeedbackFields | true | — | |
| feedback.fields.email | FeedbackFieldConfig | false | — | |
| feedback.fields.email.label | string | true | — | |
| feedback.fields.email.placeholder | string | true | — | |
| feedback.fields.email.required | boolean | false | — | |
| feedback.fields.email.type | HTMLInputTypeAttribute | "textarea" | false | — | |
| feedback.fields.email.description | ReactNode | false | — | |
| feedback.fields.message | FeedbackFieldConfig | true | — | |
| feedback.fields.message.label | string | true | — | |
| feedback.fields.message.placeholder | string | true | — | |
| feedback.fields.message.required | boolean | false | — | |
| feedback.fields.message.type | HTMLInputTypeAttribute | "textarea" | false | — | |
| feedback.fields.message.description | ReactNode | false | — | |
| feedback.shouldCreateConfidentialIssue | boolean | false | — | Erstellt das GitLab-Issue als vertraulich (confidential), wenn true. Nur im Developer Mode verfügbar. |
| feedback.notice | { title: string; body: string; link: { href: string; label: string; }; } | false | — | |
| feedback.notice.title | string | true | — | |
| feedback.notice.body | string | true | — | |
| feedback.notice.link | { href: string; label: string; } | true | — | |
| feedback.notice.link.href | string | true | — | |
| feedback.notice.link.label | string | true | — | |
| feedback.privacyConsent | { textBeforeLink: string; link: { label: string; href: string; }; textAfterLink: string; } | true | — | |
| feedback.privacyConsent.textBeforeLink | string | true | — | |
| feedback.privacyConsent.link | { label: string; href: string; } | true | — | |
| feedback.privacyConsent.link.label | string | true | — | |
| feedback.privacyConsent.link.href | string | true | — | |
| feedback.privacyConsent.textAfterLink | string | true | — | |
| feedback.afterSubmit | { successText: string; errorText: string; buttonLabel?: string; } | true | — | |
| feedback.afterSubmit.successText | string | true | — | |
| feedback.afterSubmit.errorText | string | true | — | |
| feedback.afterSubmit.buttonLabel | string | false | — | |
| feedback.className | string | false | — | |
| feedback.headlineClassName | string | false | — | |
| feedback.descriptionClassName | string | false | — | |
| feedback.inputClassName | string | false | — | |
| feedback.inputLabelClassName | string | false | — | |
| feedback.textareaClassName | string | false | — | |
| feedback.checkboxClassName | string | false | — | |
| feedback.btnClassName | string | false | — | |
| layoutComponent | (props: PropsWithChildren) => ReactNode | false | — | Benutzerdefinierte Layout-Komponente, die alle Seiten umschließt. |
| docsRepositoryBase | string | false | — | |
| project | { link?: string; icon?: ReactNode | FC; } | false | — | Projekt-Link und optionales Icon für die obere Navigation. |
| project.link | string | false | — | URL zum Quell-Repository (z. B. GitLab-Projektseite). |
| project.icon | ReactNode | FC | false | — | Icon-Komponente, die neben dem Projekt-Link angezeigt wird. |
| umbrellaFooter | boolean | false | false | Aktiviert den Dachmarken-Footer (openCode / ZenDiS). |
| umbrellaHeader | boolean | false | false | Aktiviert den Dachmarken-Header (openCode / ZenDiS). |
| i18n | { uiElementTranslation?: { [locale: string]: Partial<typeof messages.en>; }; } | false | — | Übersetzungen für UI-Elemente der Theme-Oberfläche. |
| i18n.uiElementTranslation | { [locale: string]: Partial<typeof messages.en>; } | false | — | Sprachspezifische Übersetzungen der UI-Bezeichnungen, gegliedert nach Locale-Schlüssel. |
| banner | FC | false | — | Optionale Banner-Komponente, die oberhalb der gesamten Navigation angezeigt wird. |
| header | { component?: ReactNode | FC; centerElement?: ReactNode | FC; lowerBadgeLogoPath?: string; } | false | — | Konfiguration der Kopfzeile. |
| header.component | ReactNode | FC | false | — | Eigene Kopfzeilen-Komponente, die die Standard-Kopfzeile ersetzt. |
| header.centerElement | ReactNode | FC | false | — | Element, das in der Mitte der Kopfzeile angezeigt wird (z. B. Suchfeld oder Logo). |
| header.lowerBadgeLogoPath | string | false | — | Pfad zum Logo im unteren Badge-Bereich der Kopfzeile. |
| disableSearch | boolean | true | false | Deaktiviert die globale Suchfunktion. |
| hidePrimaryMenu | boolean | true | false | Blendet das primäre Navigationsmenü in der Kopfzeile aus. |
| primaryMenu | { title: string; iconEnabled?: boolean; } | false | — | Konfiguration des primären Navigationsmenüs. |
| primaryMenu.title | string | true | — | Bezeichnung des primären Menüs. |
| primaryMenu.iconEnabled | boolean | false | — | Zeigt Icons neben den Menüeinträgen an. |
| faviconGlyph | string | false | — | Zeichen oder Emoji, das als Favicon verwendet wird. |
| accessibilityLanguages | { leichteSpracheHref?: string; gebaerdenSprachenHref?: string; } | false | — | Links zur Leichten Sprache und zur Gebärdensprachen-Version der Website. |
| accessibilityLanguages.leichteSpracheHref | string | false | — | URL zur Leichte-Sprache-Version. |
| accessibilityLanguages.gebaerdenSprachenHref | string | false | — | URL zur Gebärdensprachen-Version. |
| footer | { component?: ReactNode | FC<{ menu: boolean; }>; links?: Array<{ name: string; href: string; column: string; }>; headingLevel?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6"; logo?: ReactNode | FC; description?: ReactNode | FC; copyright?: ReactNode | FC; } | true | — | Konfiguration des Footers. |
| footer.component | ReactNode | FC<{ menu: boolean; }> | false | [ref:Footer] | Eigene Footer-Komponente, die den Standard-Footer ersetzt. |
| footer.links | Array<{ name: string; href: string; column: string; }> | false | [array] | Footer-Links mit Name, URL und Spaltenzuordnung. |
| footer.headingLevel | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | false | — | HTML-Überschriftenebene für Spaltenüberschriften im Footer (z. B. "h2"). |
| footer.logo | ReactNode | FC | false | — | Logo-Komponente im Footer. |
| footer.description | ReactNode | FC | false | null | Beschreibungstext im Footer (z. B. Kurzbeschreibung der Organisation). |
| footer.copyright | ReactNode | FC | false | [complex] | Copyright-Hinweis im Footer. |
| toc | { disable?: boolean; title?: string; headingLevel?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6"; iconEnabled?: boolean; footer?: ReactNode; } | false | — | Konfiguration des seiteninternen Inhaltsverzeichnisses (TOC). |
| toc.disable | boolean | false | — | Deaktiviert das Inhaltsverzeichnis global für alle Seiten. |
| toc.title | string | false | — | Überschrift des Inhaltsverzeichnisses. |
| toc.headingLevel | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | false | — | HTML-Überschriftenebene für den TOC-Titel (z. B. "h2"). |
| toc.iconEnabled | boolean | false | — | Zeigt Icons neben den Einträgen im Inhaltsverzeichnis an. |
| toc.footer | ReactNode | false | — | Inhalt, der unterhalb der TOC-Einträge angezeigt wird (z. B. ein Link oder Hinweis). |
| head | ReactNode | false | — | Zusätzliche Elemente, die in den HTML-<head> der Seite eingefügt werden (z. B. Meta-Tags). |
| logo | ReactNode | FC | false | [jsx] | Logo-Komponente, die in der Kopfzeile angezeigt wird. |
| logoText | string | false | "" | Text, der neben dem Logo angezeigt wird. |
| logoLink | boolean | string | true | true | URL des Logo-Links. Mit false wird der Link deaktiviert. |
| notFound | { content: ReactNode | FC; labels: string; } | true | — | Konfiguration der 404-Fehlerseite. |
| notFound.content | ReactNode | FC | true | Submit an issue about broken link → | Inhalt der 404-Seite. |
| notFound.labels | string | true | bug | GitLab-Labels, die beim automatischen Erstellen von Issues für fehlerhafte Links vergeben werden. |
| search | { component?: ReactNode | FC<{ className?: string; }>; emptyResult?: ReactNode | FC; error?: string | (() => string); loading?: ReactNode | FC; placeholder?: string | (() => string); renderResult?: FC<SearchResultRendererProps>; } | true | — | Konfiguration der Suchfunktion. |
| search.component | ReactNode | FC<{ className?: string; }> | false | [ref:Flexsearch] | Eigene Such-Komponente, die die Standard-Suche ersetzt. |
| search.emptyResult | ReactNode | FC | false | [complex] | Anzeige, wenn keine Suchergebnisse gefunden wurden. |
| search.error | string | (() => string) | false | — | Fehlermeldung bei einem Suchfehler. |
| search.loading | ReactNode | FC | false | — | Ladeanzeige während der Suche. |
| search.placeholder | string | (() => string) | false | — | Platzhaltertext im Suchfeld. |
| search.renderResult | FC<SearchResultRendererProps> | false | — | Eigener Renderer für einzelne Suchergebnis-Einträge. Erhält Titel, Inhalt, Route und den aktuellen Suchbegriff. |
| sidebar | { disable: boolean; autoCollapse?: boolean; defaultMenuCollapseLevel: number; toggleButton: boolean; } | true | — | Konfiguration der Seitenleiste. |
| sidebar.disable | boolean | true | true | Deaktiviert die Seitenleiste global. |
| sidebar.autoCollapse | boolean | false | — | Klappt beim Öffnen eines Bereichs alle anderen automatisch zu. |
| sidebar.defaultMenuCollapseLevel | number | true | 2 | Einrückungstiefe, ab der Untermenüs standardmäßig eingeklappt werden. |
| sidebar.toggleButton | boolean | true | true | Zeigt die Schaltfläche zum Ein- und Ausblenden der Seitenleiste an. |
| editPage | { enabled: boolean; description?: string; repoBaseUrl: string; icon?: "auto" | "edit" | "github" | "opencode" | "gitlab" | "none"; } | true | — | Konfiguration des „Seite bearbeiten"-Links. |
| editPage.enabled | boolean | true | false | Aktiviert den „Seite bearbeiten"-Link auf jeder Seite. |
| editPage.description | string | false | Diese Seite bearbeiten | Beschriftung des „Seite bearbeiten"-Links. |
| editPage.repoBaseUrl | string | true | "" | Basis-URL zum Quell-Repository (z. B. https://gitlab.example.com/org/repo/-/blob/main/dokument). |
| editPage.icon | "auto" | "edit" | "github" | "opencode" | "gitlab" | "none" | false | auto | Icon-Stil für den „Seite bearbeiten"-Link. auto wählt anhand der repoBaseUrl automatisch. |
| theme | ThemeProviderProps | false | — | Konfiguration des Farbschemas (hell/dunkel/System) über next-themes. |