from __future__ import annotations
from os import environ
from gibil.classes.env_loader import EnvLoader
from gibil.classes.weather.sample_data import WeatherSampleData
from gibil.classes.weather.store import WeatherStore, WeatherStoreConfigurationError
from gibil.classes.weather.display import WeatherDisplay
from gibil.classes.oracle.display import OracleDisplay
from gibil.classes.oracle.quality_display import OracleQualityDisplay
class WebUI:
"""Composes Astrape web modules into a small control panel."""
def __init__(self) -> None:
self.weather_display = WeatherDisplay()
self.oracle_display = OracleDisplay()
self.oracle_quality_display = OracleQualityDisplay()
def render_page(self, page: str = "oracle") -> str:
current_page = page if page in {"oracle", "weather", "quality"} else "oracle"
return f"""