from beanie import Document from fastapi_users_db_beanie import BaseOAuthAccount, BeanieUserDatabase, BeanieBaseUser from pydantic import Field from hub.firm import FirmRead from hub.user.schemas import UserSchema, UserUpdateSchema class OAuthAccount(BaseOAuthAccount): pass class User(BeanieBaseUser, Document): oauth_accounts: list[OAuthAccount] = Field(default_factory=list) firms: list[FirmRead] = Field(default_factory=list) class UserDatabase(BeanieUserDatabase): pass async def get_user_db(): yield UserDatabase(User, OAuthAccount)