30 lines
789 B
Python
30 lines
789 B
Python
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
from collections.abc import Awaitable, Callable
|
||
|
|
from typing import Any
|
||
|
|
|
||
|
|
from quart import Quart
|
||
|
|
|
||
|
|
from repub.web.publisher.actions import register_publisher_actions
|
||
|
|
from repub.web.publisher.pages.dashboard import register_publisher_dashboard_routes
|
||
|
|
|
||
|
|
RouteGuard = Callable[[Callable[..., Awaitable[Any]]], Callable[..., Awaitable[Any]]]
|
||
|
|
|
||
|
|
|
||
|
|
def register_publisher_routes(
|
||
|
|
app: Quart,
|
||
|
|
*,
|
||
|
|
publisher_required: RouteGuard,
|
||
|
|
admin_required: RouteGuard,
|
||
|
|
) -> None:
|
||
|
|
register_publisher_dashboard_routes(
|
||
|
|
app,
|
||
|
|
publisher_required=publisher_required,
|
||
|
|
admin_required=admin_required,
|
||
|
|
)
|
||
|
|
register_publisher_actions(
|
||
|
|
app,
|
||
|
|
publisher_required=publisher_required,
|
||
|
|
admin_required=admin_required,
|
||
|
|
)
|