Spaces:
				
			
			
	
			
			
		Build error
		
	
	
	
			
			
	
	
	
	
		
		
		Build error
		
	File size: 1,162 Bytes
			
			| 31b9617 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | from typing import Optional, List
from datetime import datetime
from pydantic import BaseModel, EmailStr
from ..models.user import UserRole, Permission
class UserBase(BaseModel):
    email: EmailStr
    username: str
    role: UserRole
    permissions: List[Permission] = []
    customer_info: Optional[dict] = None
class UserCreate(UserBase):
    password: str
class UserUpdate(BaseModel):
    email: Optional[EmailStr] = None
    username: Optional[str] = None
    role: Optional[UserRole] = None
    permissions: Optional[List[Permission]] = None
    is_active: Optional[bool] = None
    customer_info: Optional[dict] = None
class UserResponse(UserBase):
    id: str
    is_active: bool
    is_verified: bool
    created_at: datetime
    updated_at: datetime
    last_login: Optional[datetime] = None
class UserLogin(BaseModel):
    username: str
    password: str
class Token(BaseModel):
    access_token: str
    token_type: str = "bearer"
class TokenData(BaseModel):
    username: Optional[str] = None
    user_id: Optional[str] = None
    role: Optional[str] = None
class PasswordChange(BaseModel):
    current_password: str
    new_password: str
 |