package de.tsschulz.timeclock.ui.model

data class MenuItem(
    val label: String,
    val route: AppRoute,
)

data class MenuSection(
    val title: String,
    val items: List<MenuItem>,
)

enum class AppRoute(val title: String) {
    Week("Wochenübersicht"),
    Timefix("Zeitkorrekturen"),
    Vacation("Urlaub"),
    Sick("Krankheit"),
    Workdays("Arbeitstage"),
    Calendar("Kalender"),
    Entries("Einträge"),
    Stats("Statistiken"),
    Export("Export"),
    Profile("Persönliches"),
    Password("Passwort ändern"),
    Timewish("Zeitwünsche"),
    Permissions("Zugriffe verwalten"),
    Invite("Einladen"),
    Holidays("Feiertage"),
    Roles("Rechte"),
}

data class StatusRow(
    val label: String,
    val value: String? = null,
    val isHeading: Boolean = false,
)

data class StatusAction(
    val label: String,
    val variant: ButtonVariant,
    val clockAction: String? = null,
)

enum class ButtonVariant {
    Default,
    Primary,
    Success,
    Danger,
    Secondary,
}
