""" PodcastItLater Admin Interface. Admin pages and functionality for managing users and queue items. """ # : out podcastitlater-admin # : dep ludic # : dep httpx # : dep starlette # : dep pytest # : dep pytest-asyncio # : dep pytest-mock # i need to import these unused because bild cannot get local transitive python # dependencies yet import Omni.App as App # noqa: F401 import Omni.Log as Log # noqa: F401 import Omni.Test as Test # noqa: F401 import sys from Biz.PodcastItLater.Admin.Handlers import admin_metrics from Biz.PodcastItLater.Admin.Handlers import admin_queue_status from Biz.PodcastItLater.Admin.Handlers import admin_users from Biz.PodcastItLater.Admin.Handlers import delete_queue_item from Biz.PodcastItLater.Admin.Handlers import retry_queue_item from Biz.PodcastItLater.Admin.Handlers import toggle_episode_public from Biz.PodcastItLater.Admin.Handlers import update_user_status # Import all views and handlers from the new modules from Biz.PodcastItLater.Admin.Views import ActionButtons from Biz.PodcastItLater.Admin.Views import ActionButtonsAttrs from Biz.PodcastItLater.Admin.Views import AdminUsers from Biz.PodcastItLater.Admin.Views import AdminUsersAttrs from Biz.PodcastItLater.Admin.Views import AdminView from Biz.PodcastItLater.Admin.Views import AdminViewAttrs from Biz.PodcastItLater.Admin.Views import EpisodeTableRow from Biz.PodcastItLater.Admin.Views import EpisodeTableRowAttrs from Biz.PodcastItLater.Admin.Views import MetricCard from Biz.PodcastItLater.Admin.Views import MetricCardAttrs from Biz.PodcastItLater.Admin.Views import MetricsAttrs from Biz.PodcastItLater.Admin.Views import MetricsDashboard from Biz.PodcastItLater.Admin.Views import QueueTableRow from Biz.PodcastItLater.Admin.Views import QueueTableRowAttrs from Biz.PodcastItLater.Admin.Views import StatusBadge from Biz.PodcastItLater.Admin.Views import StatusBadgeAttrs from Biz.PodcastItLater.Admin.Views import TopEpisodesTable from Biz.PodcastItLater.Admin.Views import TopEpisodesTableAttrs from Biz.PodcastItLater.Admin.Views import TruncatedText from Biz.PodcastItLater.Admin.Views import TruncatedTextAttrs from Biz.PodcastItLater.Admin.Views import UserTableRow from Biz.PodcastItLater.Admin.Views import UserTableRowAttrs from Biz.PodcastItLater.Admin.Views import create_table_header # Export all symbols for backward compatibility __all__ = [ # Views "ActionButtons", "ActionButtonsAttrs", "AdminUsers", "AdminUsersAttrs", "AdminView", "AdminViewAttrs", "EpisodeTableRow", "EpisodeTableRowAttrs", "MetricCard", "MetricCardAttrs", "MetricsAttrs", "MetricsDashboard", "QueueTableRow", "QueueTableRowAttrs", "StatusBadge", "StatusBadgeAttrs", "TopEpisodesTable", "TopEpisodesTableAttrs", "TruncatedText", "TruncatedTextAttrs", "UserTableRow", "UserTableRowAttrs", # Handlers "admin_metrics", "admin_queue_status", "admin_users", "create_table_header", "delete_queue_item", "retry_queue_item", "toggle_episode_public", "update_user_status", ] def main() -> None: """Admin tests are currently in Web.""" if "test" in sys.argv: sys.exit(0)