summaryrefslogtreecommitdiff
path: root/Biz/PodcastItLater/Admin/Core.py
diff options
context:
space:
mode:
Diffstat (limited to 'Biz/PodcastItLater/Admin/Core.py')
-rw-r--r--Biz/PodcastItLater/Admin/Core.py95
1 files changed, 95 insertions, 0 deletions
diff --git a/Biz/PodcastItLater/Admin/Core.py b/Biz/PodcastItLater/Admin/Core.py
new file mode 100644
index 0000000..10ea7f6
--- /dev/null
+++ b/Biz/PodcastItLater/Admin/Core.py
@@ -0,0 +1,95 @@
+"""
+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
+
+import Biz.PodcastItLater.Admin.Handlers as Handlers
+import Biz.PodcastItLater.Admin.Views as Views
+import sys
+
+# Re-export all symbols for backward compatibility
+ActionButtons = Views.ActionButtons
+ActionButtonsAttrs = Views.ActionButtonsAttrs
+AdminUsers = Views.AdminUsers
+AdminUsersAttrs = Views.AdminUsersAttrs
+AdminView = Views.AdminView
+AdminViewAttrs = Views.AdminViewAttrs
+EpisodeTableRow = Views.EpisodeTableRow
+EpisodeTableRowAttrs = Views.EpisodeTableRowAttrs
+MetricCard = Views.MetricCard
+MetricCardAttrs = Views.MetricCardAttrs
+MetricsAttrs = Views.MetricsAttrs
+MetricsDashboard = Views.MetricsDashboard
+QueueTableRow = Views.QueueTableRow
+QueueTableRowAttrs = Views.QueueTableRowAttrs
+StatusBadge = Views.StatusBadge
+StatusBadgeAttrs = Views.StatusBadgeAttrs
+TopEpisodesTable = Views.TopEpisodesTable
+TopEpisodesTableAttrs = Views.TopEpisodesTableAttrs
+TruncatedText = Views.TruncatedText
+TruncatedTextAttrs = Views.TruncatedTextAttrs
+UserTableRow = Views.UserTableRow
+UserTableRowAttrs = Views.UserTableRowAttrs
+create_table_header = Views.create_table_header
+AdminFeedback = Views.AdminFeedback
+AdminFeedbackAttrs = Views.AdminFeedbackAttrs
+
+admin_feedback = Handlers.admin_feedback
+admin_metrics = Handlers.admin_metrics
+admin_queue_status = Handlers.admin_queue_status
+admin_users = Handlers.admin_users
+delete_queue_item = Handlers.delete_queue_item
+retry_queue_item = Handlers.retry_queue_item
+toggle_episode_public = Handlers.toggle_episode_public
+update_user_status = Handlers.update_user_status
+
+__all__ = [
+ "ActionButtons",
+ "ActionButtonsAttrs",
+ "AdminFeedback",
+ "AdminFeedbackAttrs",
+ "AdminUsers",
+ "AdminUsersAttrs",
+ "AdminView",
+ "AdminViewAttrs",
+ "EpisodeTableRow",
+ "EpisodeTableRowAttrs",
+ "MetricCard",
+ "MetricCardAttrs",
+ "MetricsAttrs",
+ "MetricsDashboard",
+ "QueueTableRow",
+ "QueueTableRowAttrs",
+ "StatusBadge",
+ "StatusBadgeAttrs",
+ "TopEpisodesTable",
+ "TopEpisodesTableAttrs",
+ "TruncatedText",
+ "TruncatedTextAttrs",
+ "UserTableRow",
+ "UserTableRowAttrs",
+ "admin_feedback",
+ "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)