chore: 迁移到 social-app 架构,集成 Supabase 和 taskiq worker

This commit is contained in:
qzl
2026-04-02 16:36:35 +08:00
parent 695adb7d6f
commit 92cdfd9fca
132 changed files with 5802 additions and 759 deletions
+66
View File
@@ -0,0 +1,66 @@
from __future__ import annotations
from uuid import UUID
from pydantic import BaseModel, ConfigDict, Field
SUPABASE_PASSWORD_MIN_LENGTH = 6
SUPABASE_PHONE_PATTERN = r"^\+[1-9]\d{7,14}$"
class OtpSendRequest(BaseModel):
model_config = ConfigDict(extra="forbid")
phone: str = Field(pattern=SUPABASE_PHONE_PATTERN)
class PhoneSessionCreateRequest(BaseModel):
model_config = ConfigDict(extra="forbid")
phone: str = Field(pattern=SUPABASE_PHONE_PATTERN)
token: str = Field(pattern=r"^\d{6}$")
class SessionRefreshRequest(BaseModel):
refresh_token: str = Field(min_length=1)
class SessionDeleteRequest(BaseModel):
refresh_token: str = Field(min_length=1)
class AuthUser(BaseModel):
id: str
phone: str = Field(pattern=SUPABASE_PHONE_PATTERN)
class SessionResponse(BaseModel):
access_token: str
refresh_token: str
expires_in: int
token_type: str
user: AuthUser
class UserByPhoneResponse(BaseModel):
id: str
phone: str = Field(pattern=SUPABASE_PHONE_PATTERN)
created_at: str
phone_confirmed_at: str | None = None
class UserByIdResponse(BaseModel):
id: str
phone: str | None = None
created_at: str
phone_confirmed_at: str | None = None
class OtpSendResponse(BaseModel):
phone: str = Field(pattern=SUPABASE_PHONE_PATTERN)
class RegistrationBootstrapRequest(BaseModel):
model_config = ConfigDict(extra="forbid")
user_id: UUID