191 lines
3.3 KiB
TypeScript
191 lines
3.3 KiB
TypeScript
|
interface Sites {
|
||
|
[key: string]: Site
|
||
|
}
|
||
|
|
||
|
interface Site {
|
||
|
path: string
|
||
|
showTeaser: boolean
|
||
|
teaserImages?: TeaserImage[]
|
||
|
teaserTitle?: string
|
||
|
teaserDescription?: string
|
||
|
row: Row[]
|
||
|
banner: Banner[]
|
||
|
id: string
|
||
|
}
|
||
|
|
||
|
interface Row {
|
||
|
title: string
|
||
|
maxWidth: boolean
|
||
|
column: Column[]
|
||
|
noGap: boolean
|
||
|
iconBackgroundTitle: boolean
|
||
|
}
|
||
|
|
||
|
interface Column {
|
||
|
contentType:
|
||
|
| "mainPicture"
|
||
|
| "googleMaps"
|
||
|
| "imageSlider"
|
||
|
| "table"
|
||
|
| "infoBoard"
|
||
|
| "iconBoard"
|
||
|
| "form"
|
||
|
| "videos"
|
||
|
| "text"
|
||
|
| "video"
|
||
|
video: FileField
|
||
|
titleVideo: string
|
||
|
descriptionVideo: string
|
||
|
mainPicture?: FileField
|
||
|
imageSlider: ImageSlider[]
|
||
|
siteRefs: boolean
|
||
|
siteReference: boolean
|
||
|
hintsTable: string
|
||
|
inscription?: string
|
||
|
textFieldHeading?: string
|
||
|
textContent?: string
|
||
|
annotation?: string
|
||
|
table?: Table[]
|
||
|
image?: FileField
|
||
|
title?: string
|
||
|
text?: string
|
||
|
links?: Link[]
|
||
|
iconBoard?: IconBoard[]
|
||
|
backgroundImage?: FileField
|
||
|
videoSwitch?: VideoSwitch[]
|
||
|
formRows?: FormRow[]
|
||
|
iconBackgroundImage?: boolean
|
||
|
}
|
||
|
|
||
|
interface ImageSlider {
|
||
|
image: FileField
|
||
|
}
|
||
|
|
||
|
interface Link {
|
||
|
name: string
|
||
|
site: string
|
||
|
}
|
||
|
|
||
|
interface Table {
|
||
|
title: string
|
||
|
tableRow: TableRow[]
|
||
|
hintsTable: string
|
||
|
}
|
||
|
|
||
|
interface TableRow {
|
||
|
bold: boolean
|
||
|
left: string
|
||
|
right: string
|
||
|
center: string
|
||
|
}
|
||
|
|
||
|
interface IconBoard {
|
||
|
icon: FileField
|
||
|
subText: string
|
||
|
}
|
||
|
|
||
|
interface VideoSwitch {
|
||
|
video: FileField
|
||
|
title: string
|
||
|
description: string
|
||
|
link: string
|
||
|
}
|
||
|
|
||
|
interface FormRow {
|
||
|
title?: string
|
||
|
columns: FormColumn[]
|
||
|
}
|
||
|
|
||
|
interface Block {
|
||
|
label: string
|
||
|
emailName: string
|
||
|
}
|
||
|
|
||
|
interface LabelNumber {
|
||
|
group: number
|
||
|
title: string
|
||
|
emailName: string
|
||
|
block: Block[]
|
||
|
}
|
||
|
|
||
|
interface FormColumn {
|
||
|
showLabelNumber: boolean
|
||
|
labelNumber: LabelNumber[]
|
||
|
showTimes?: boolean
|
||
|
annotation: string
|
||
|
times?: Time[]
|
||
|
timesPlaceholder?: string
|
||
|
showDate?: boolean
|
||
|
showSelect?: boolean
|
||
|
selectPlaceholder: string
|
||
|
selectEntries: Entries[]
|
||
|
datePlaceholder?: string
|
||
|
datefieldOrder?: number
|
||
|
textfieldOrder?: number
|
||
|
timesfieldOrder?: number
|
||
|
text?: TextField[]
|
||
|
title: string
|
||
|
selectTitle: string
|
||
|
numberPlaceholder: string
|
||
|
showNumber: boolean
|
||
|
timeNotRequired: boolean
|
||
|
dateNotRequired: boolean
|
||
|
dateSelectNotRequired: boolean
|
||
|
numberNotRequired: boolean
|
||
|
emailNameDate: string
|
||
|
emailNameNumber: string
|
||
|
emailNameTime: string
|
||
|
emailNameTimes: string
|
||
|
}
|
||
|
|
||
|
interface Temperature {
|
||
|
temperature: number
|
||
|
}
|
||
|
|
||
|
interface Time {
|
||
|
timeFrom: string
|
||
|
timeTo: string
|
||
|
}
|
||
|
|
||
|
interface Entries {
|
||
|
leftSide: string
|
||
|
rightSide: string
|
||
|
}
|
||
|
|
||
|
interface TextField {
|
||
|
textPlaceholder: string
|
||
|
textArea: boolean
|
||
|
notRequired: boolean
|
||
|
telValidation: boolean
|
||
|
emailValidation: boolean
|
||
|
dateSelectNotRequired: boolean
|
||
|
emailName: string
|
||
|
}
|
||
|
|
||
|
interface TeaserImage {
|
||
|
image: FileField
|
||
|
}
|
||
|
|
||
|
interface Banner {
|
||
|
content: string
|
||
|
}
|
||
|
|
||
|
interface Navigation {
|
||
|
tree: number
|
||
|
elemente: NavElement[]
|
||
|
}
|
||
|
|
||
|
interface NavElement {
|
||
|
endpoint: boolean
|
||
|
name: string
|
||
|
image: FileField
|
||
|
seite?: string
|
||
|
elemente?: NavElement[]
|
||
|
}
|
||
|
|
||
|
interface FileField {
|
||
|
path: string
|
||
|
src: string
|
||
|
type: string
|
||
|
}
|