o
    Q?h                     @   s   d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dlm	Z	 eG dd dZ
eG d	d
 d
e	Zdede
dB fddZdd ZdS )    N)	dataclass)datetime)Optional)db)DocumentDatac                   @   s   e Zd ZU eed< eed< eed< ee ed< ee ed< ee ed< dZedB 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< edd Zdd ZedefddZdS )UseruidenterpriseIdemaildisplayNamephotoURL	createdAtN	updatedAtFisEnterpriseAdmin	isProUser
locationIdconnectAccountIdplanIdr   numberc                    $   | di  fddt | jD S )Nc                       i | ]}|  |qS  get.0kdatar   L/var/www/html/riverr-enterprise-integrations-main/V2/functions/Users/main.py
<dictcomp>       z"User.from_dict.<locals>.<dictcomp>r   inspect	signature
parametersclsr   r   r   r   	from_dict      

zUser.from_dictc                 K   s,   t d| j | tdd| ji|S )Nusers/r   r   )r   documentr   updatedict)selfkwargsr   r   r   r,       s   zUser.updatec                 C   ,   t d|  }|jr| | S d S Nr*   r   r+   r   existsr(   to_dict)r'   r   refr   r   r   r   $      zUser.get)__name__
__module____qualname__str__annotations__r   r   r   r   boolr   r   r   r   r   intclassmethodr(   r,   r   r   r   r   r   r   
   s&   
 
r   c                   @   sx   e Zd ZU eed< eed< ee ed< dZedB ed< dZedB ed< dZ	edB ed< e
dd	 Ze
defd
dZdS )
Enterpriseidr   r   Nr   r   namec                    r   )Nc                    r   r   r   r   r   r   r   r    5   r!   z(Enterprise.from_dict.<locals>.<dictcomp>r   r"   r&   r   r   r   r(   3   r)   zEnterprise.from_dictc                 C   r0   )Nzenterprises/r2   )r'   r@   r5   r   r   r   r   9   r6   zEnterprise.get)r7   r8   r9   r:   r;   r   r   r   r   rA   r>   r(   r   r   r   r   r   r?   *   s   
 
r?   r   returnc                 C   s,   t d|   }|jrt| S d S r1   )r   r+   r   r3   r   r(   r4   )r   r5   r   r   r   getUser?   s   rC   c                 C   s$   t ddd|  }|d  S )NenterprisescatalogDomainsarray_containsr   )r   
collectionwherer   r4   )hostnamer5   r   r   r   getEnterpriseByHostnameD   s   rJ   )r#   dataclassesr   r   typingr   configs.firebaser   V2.functions.mainr   r   r?   r:   rC   rJ   r   r   r   r   <module>   s    