o
    ̿Si                     @   s0  d dl mZmZmZ d dlmZ d dlmZ d dlmZm	Z	 G dd deZ
G dd de
ZG d	d
 d
eZG dd deZG dd deZG dd de
ZG dd de
ZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd  d eZG d!d" d"eZd#S )$    )	BaseModelFieldEmailStr)ObjectId)datetime)OptionalListc                   @   s  e Zd ZU eed< eed< dZee ed< dZ	ee ed< dZ
ee ed< dZee ed< eejd	Zee ed
< eejd	Zee ed< dZee ed< dZee ed< dZee ed< dZee ed< dZee ed< dZeed< dZeed< dZeed< dZeed< dS )UserBaseemailpasswordNverificationCode namemobile
account_id)default_factorycreated_date
last_logindate_of_birthgoogle_connectlinkedin_connecttokenpicurlT	is_activeis_verifiedFmobile_verified   roles)__name__
__module____qualname__r   __annotations__strr   r   intr   r   r   r   r   utcnowr   r   r   r   r   r   r   r   boolr   r   r    r&   r&   ;/var/www/html/Trade-python/app/v1/models/saas/usersmodel.pyr	      s$   
 r	   c                   @   s4   e Zd ZU eed< dZee ed< G dd dZdS )UseridNr   c                   @   s   e Zd ZdZeeiZdZdS )zUser.ConfigTN)r   r   r    arbitrary_types_allowedr   r"   json_encodersallow_population_by_field_namer&   r&   r&   r'   Config"   s    r-   )r   r   r    r"   r!   r   r   r-   r&   r&   r&   r'   r(      s   
 r(   c                   @   s   e Zd ZU eed< eed< dZee ed< dZ	ee ed< dZ
ee ed< dZee ed< dZee ed< dZee ed	< dZee ed
< dZee ed< dZee ed< dZee ed< dZee ed< dZeed< dZeed< dZeed< dZeed< dS )UserResponseuser_idr
   Nr   r   r   r   r   r   r   r   r   r   r   r   Tr   r   Fr   r   r   )r   r   r    r"   r!   r   r   r   r#   r   r   r   r   r   r   r   r   r   r   r   r   r%   r   r   r   r&   r&   r&   r'   r.   (   s$   
 r.   c                   @   s"   e Zd ZU eed< ee ed< dS )UserResponseListtotal_countusersN)r   r   r    r#   r!   r   r.   r&   r&   r&   r'   r0   <   s   
 r0   c                   @   s   e Zd ZU ee ed< ee ed< ee ed< dZee ed< e Z	ee ed< dZ
ee ed< dZee ed	< d
Zee ed< dZeee  ed< dS )
UserUpdater   r   r   Nprofile_imager   Tr   r   r   r   permissions)r   r   r    r   r"   r!   r4   r   r$   r   r   r%   r   r   r#   r5   r   r&   r&   r&   r'   r3   A   s   
 r3   c                   @   s   e Zd ZU ee ed< dS )
UserCreater   N)r   r   r    r   r"   r!   r&   r&   r&   r'   r6   M   s   
 r6   c                   @      e Zd ZU eed< dS )UserInDBhashed_passwordNr   r   r    r"   r!   r&   r&   r&   r'   r8   Q      
 r8   c                   @   s.   e Zd ZU eed< eed< eed< eed< dS )ResetPasswordRequestr
   r   r   modeNr:   r&   r&   r&   r'   r<   T   s
   
 r<   c                   @   r7   )PasswordResetr
   N)r   r   r    r   r!   r&   r&   r&   r'   r>   [   r;   r>   c                   @      e Zd ZU eed< eed< dS )PasswordChangecurrent_passwordnew_passwordNr:   r&   r&   r&   r'   r@   _      
 r@   c                   @   r?   )Tokenaccess_token
token_typeNr:   r&   r&   r&   r'   rD   d   rC   rD   c                   @   r7   )	TokenDatar
   Nr:   r&   r&   r&   r'   rG   i   r;   rG   c                   @   sB   e Zd ZU eed< dZee ed< dZee ed< dZe	ed< dS )EmailActionemailssignupactionNr      role)
r   r   r    r"   r!   rK   r   r   rM   r#   r&   r&   r&   r'   rH   l   s
   
 rH   c                   @   r7   )GoogleTokenr   Nr:   r&   r&   r&   r'   rN   r   r;   rN   c                   @   s   e Zd ZU eed< eed< dS )	UserLoginr
   r   N)r   r   r    r   r!   r"   r&   r&   r&   r'   rO   u   rC   rO   N)pydanticr   r   r   bsonr   r   typingr   r   r	   r(   r.   r0   r3   r6   r8   r<   r>   r@   rD   rG   rH   rN   rO   r&   r&   r&   r'   <module>   s&    