
    ]iL                         d dl m Z  d dlmZmZ d dlmZmZ  G d de          Z G d de          Z G d d	e          Z	 G d
 de          Z
dS )    )datetime)ListOptional)	BaseModelFieldc                       e Zd ZU  edd          Zeed<    edd          Zee         ed<    edd	
          Z	e
ed<   dS )CartItem.z#ObjectId of the product as a stringdescription	productIdNzObjectId of the product variant)defaultr   	variantId   )gequantity)__name__
__module____qualname__r   r   str__annotations__r   r   r   int     app\models\cart.pyr	   r	      su         U3,QRRRIsRRR$uT?`aaaIx}aaaE#!$$$Hc$$$$$r   r	   c                       e Zd ZU  edd          Zeed<    ee          Ze	e
         ed<    eej                  Zeed<    eej                  Zeed<   d	S )
Cart.zObjectId of the userr
   userId)default_factoryitems	createdAt	updatedAtN)r   r   r   r   r   r   r   listr   r   r	   r   utcnowr    r!   r   r   r   r   r      s         %)?@@@FC@@@!E$777E4>777%@@@Ix@@@%@@@Ix@@@@@r   r   c                   &    e Zd ZU ee         ed<   dS )
CartUpdater   N)r   r   r   r   r	   r   r   r   r   r%   r%      s"         >r   r%   c                   N    e Zd ZU eed<   eed<   ee         ed<   eed<   eed<   dS )CartOutidr   r   r    r!   N)r   r   r   r   r   r   r	   r   r   r   r   r'   r'      sL         GGGKKK>r   r'   N)r   typingr   r   pydanticr   r   r	   r   r%   r'   r   r   r   <module>r+      s         ! ! ! ! ! ! ! ! % % % % % % % %% % % % %y % % %A A A A A9 A A A           i     r   