# plugins/unifi/__init__.py from __future__ import annotations from typing import TYPE_CHECKING if TYPE_CHECKING: from quart import Quart _app: "Quart | None" = None def setup(app: "Quart") -> None: global _app _app = app from .models import ( # noqa: F401 UnifiWanStat, UnifiClientSnapshot, UnifiWlanStat, UnifiDpiSnapshot, UnifiDevice, UnifiKnownClient, UnifiEvent, UnifiAlarm, UnifiSpeedtestResult, UnifiNetwork, UnifiPortForward, UnifiFwRule, ) def get_scheduled_tasks() -> list: from .scheduler import make_poll_task return [make_poll_task(_app)] def get_blueprint(): from .routes import unifi_bp return unifi_bp def get_nav() -> list[dict]: # Surfaces in the sidebar's Infrastructure group (UniFi network overview). return [{"label": "UniFi", "href": "/plugins/unifi/"}]