Source code for src.core.routes.__init__

# Copyright (C) 2025 Raccoon Survey org
# This file is part of Raccoon Survey.
# Raccoon Survey is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License v3 as published by
# the Free Software Foundation.
# See the LICENSE file distributed with this program for details.

from __future__ import annotations

from flask import Flask

from src.ui.routes.pages import bp as ui_bp

from .anonymous import bp as anonymous_bp
from .auth import auth_bp
from .categories import bp as categories_bp
from .docs import bp as docs_bp
from .maintenance import bp as maintenance_bp
from .metrics import bp as metrics_bp
from .questions import bp as questions_bp
from .reports import bp as reports_bp
from .roles import bp as roles_bp
from .surveys import bp as surveys_bp
from .teams import bp as teams_bp
from .tokens import bp as tokens_bp
from .users import bp as users_bp


[docs] def register_routes(app: Flask) -> None: """Register application blueprints. This keeps route registration centralized and tidy. Args: app (Flask): Flask instance """ app.register_blueprint(auth_bp, url_prefix="/api/v1/auth") app.register_blueprint(teams_bp, url_prefix="/api/v1/teams") app.register_blueprint(users_bp, url_prefix="/api/v1/users") app.register_blueprint(surveys_bp, url_prefix="/api/v1/surveys") app.register_blueprint(questions_bp, url_prefix="/api/v1/questions") app.register_blueprint(tokens_bp, url_prefix="/api/v1/tokens") app.register_blueprint(categories_bp, url_prefix="/api/v1/categories") app.register_blueprint(maintenance_bp, url_prefix="/api/v1/maintenance") app.register_blueprint(anonymous_bp, url_prefix="/api/v1/anonymous") app.register_blueprint(reports_bp, url_prefix="/api/v1/reports") app.register_blueprint(metrics_bp, url_prefix="/api/v1/metrics") app.register_blueprint(roles_bp, url_prefix="/api/v1/roles") app.register_blueprint(docs_bp, url_prefix="/api/v1") app.register_blueprint(ui_bp)
__all__ = ["register_routes"]