2024-09-28 21:21:42 +02:00
|
|
|
from enum import Enum
|
|
|
|
from typing import Optional
|
|
|
|
|
|
|
|
from pydantic import Field
|
|
|
|
|
|
|
|
from .base import FrigateBaseModel
|
|
|
|
|
2025-02-10 21:23:42 +01:00
|
|
|
__all__ = ["TimeFormatEnum", "DateTimeStyleEnum", "UnitSystemEnum", "UIConfig"]
|
2024-09-28 21:21:42 +02:00
|
|
|
|
|
|
|
|
|
|
|
class TimeFormatEnum(str, Enum):
|
|
|
|
browser = "browser"
|
|
|
|
hours12 = "12hour"
|
|
|
|
hours24 = "24hour"
|
|
|
|
|
|
|
|
|
|
|
|
class DateTimeStyleEnum(str, Enum):
|
|
|
|
full = "full"
|
|
|
|
long = "long"
|
|
|
|
medium = "medium"
|
|
|
|
short = "short"
|
|
|
|
|
|
|
|
|
2025-02-10 21:23:42 +01:00
|
|
|
class UnitSystemEnum(str, Enum):
|
|
|
|
imperial = "imperial"
|
|
|
|
metric = "metric"
|
|
|
|
|
|
|
|
|
2024-09-28 21:21:42 +02:00
|
|
|
class UIConfig(FrigateBaseModel):
|
|
|
|
timezone: Optional[str] = Field(default=None, title="Override UI timezone.")
|
|
|
|
time_format: TimeFormatEnum = Field(
|
|
|
|
default=TimeFormatEnum.browser, title="Override UI time format."
|
|
|
|
)
|
|
|
|
date_style: DateTimeStyleEnum = Field(
|
|
|
|
default=DateTimeStyleEnum.short, title="Override UI dateStyle."
|
|
|
|
)
|
|
|
|
time_style: DateTimeStyleEnum = Field(
|
|
|
|
default=DateTimeStyleEnum.medium, title="Override UI timeStyle."
|
|
|
|
)
|
|
|
|
strftime_fmt: Optional[str] = Field(
|
|
|
|
default=None, title="Override date and time format using strftime syntax."
|
|
|
|
)
|
2025-02-10 21:23:42 +01:00
|
|
|
unit_system: UnitSystemEnum = Field(
|
|
|
|
default=UnitSystemEnum.metric, title="The unit system to use for measurements."
|
|
|
|
)
|