0a0dde3d50
Implements user profile data model and own-profile management endpoints: - Profile and ProfileFavorites models in backend/app/models/profile.py - Migration 0010_add_profile_tables.py (profiles, profile_favorites) - Endpoints in backend/app/routers/profiles.py: - GET /api/profile/me (own profile with default fallback) - PUT /api/profile/me (upsert bio, avatar_asset_id, privacy settings) - GET /api/profile/me/favorites (list favorite world IDs) - PUT /api/profile/me/favorites (replace favorite world IDs) - Fixes values_callable on Asset.asset_type ENUM in app/models/asset.py - Added test_profile.py covering auth, validation, favorites, privacy Independently re-verified: 19/19 new profile tests pass, 258/258 full backend regression suite passes with zero regressions.
22 lines
965 B
Python
22 lines
965 B
Python
from app.models.user import User
|
|
from app.models.session import Session
|
|
from app.models.world import World
|
|
from app.models.asset import Asset
|
|
from app.models.avatar_loadout import AvatarLoadout
|
|
from app.models.world_content import WorldRoom, WorldChunk, WorldChunkRevision
|
|
from app.models.social import Friendship, Follow, Block, FriendshipStatus
|
|
from app.models.chat import (
|
|
Conversation, ConversationParticipant, Message, MessageReport, ReportStatus,
|
|
)
|
|
from app.models.groups import Group, GroupMember, GroupRole
|
|
from app.models.profile import Profile, ProfileFavorite, ProfileVisibility
|
|
|
|
__all__ = [
|
|
"User", "Session", "World", "Asset", "AvatarLoadout",
|
|
"WorldRoom", "WorldChunk", "WorldChunkRevision",
|
|
"Friendship", "Follow", "Block", "FriendshipStatus",
|
|
"Conversation", "ConversationParticipant", "Message", "MessageReport", "ReportStatus",
|
|
"Group", "GroupMember", "GroupRole",
|
|
"Profile", "ProfileFavorite", "ProfileVisibility",
|
|
]
|