Source code for timelink.app.dependencies

from typing import Annotated
from fastapi import Request
from fastapi import Depends
from timelink.app.schemas import UserSchema
from timelink.app.models.user import User


async def get_current_user(request: Request):
    return None


async def get_current_active_user(
    request: Request, current_user: Annotated[UserSchema, Depends(get_current_user)]
):
    return None


# Dependency to get a connection to the database
[docs] def get_user_db(request: Request): """Get the User database request""" webapp = request.app.state.webapp return webapp.users_db
# dependency to get a connection to the kleio server
[docs] def get_kleio_server(request: Request): """Get a connection to the kleio server Uses timelink.kleio.kleio_server.KleioServer to get a connection to the kleio server. """ webapp = request.app.state.webapp return webapp.kleio_server
[docs] def get_db(request: Request): """Get the database request""" webapp = request.app.state.webapp user = Annotated[User, Depends(get_current_active_user)] # Todo: Determine the user's project # project = webapp.projects[user.name] # project_db = project.db return webapp.get_current_project_db(user)
[docs] def get_github_auth(request: Request): """Get the github auth request""" webapp = request.app.state.webapp return webapp