from pydantic import BaseModel from typing import Optional, List from .product import ProductResponse class CartItemCreate(BaseModel): product_id: int quantity: int = 1 size: Optional[str] = None color: Optional[str] = None class CartItemUpdate(BaseModel): quantity: Optional[int] = None class CartItemResponse(BaseModel): id: int product_id: int quantity: int size: Optional[str] color: Optional[str] product: ProductResponse class Config: from_attributes = True class CartResponse(BaseModel): id: int user_id: int items: List[CartItemResponse] class Config: from_attributes = True