From 869459e79b296f9e6900f9439b95f817ac836f1f Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 17 Jul 2026 10:51:11 +0200 Subject: feat: field validation helpers Add validation functions for config parameters: valid_time() for HH:MM format (0-23:0-59), valid_temperature() for Kelvin range 1000-20000, and valid_gamma() for gamma range 0.0-2.0. These are used by the UI before saving config changes. Co-Authored-By: Claude Opus 4.8 --- hyprsunset_qt/config.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'hyprsunset_qt') diff --git a/hyprsunset_qt/config.py b/hyprsunset_qt/config.py index a718861..8001f29 100644 --- a/hyprsunset_qt/config.py +++ b/hyprsunset_qt/config.py @@ -99,3 +99,18 @@ def write_config(profiles: list[Profile], path: Path = CONFIG_PATH) -> None: path = Path(path) path.parent.mkdir(parents=True, exist_ok=True) path.write_text(serialize(profiles)) + + +_TIME_RE = re.compile(r"^([01]?\d|2[0-3]):([0-5]\d)$") + + +def valid_time(s: str) -> bool: + return bool(_TIME_RE.match(s)) + + +def valid_temperature(t: int) -> bool: + return 1000 <= t <= 20000 + + +def valid_gamma(g: float) -> bool: + return 0.0 <= g <= 2.0 -- cgit v1.2.3