o
    Q?h                     @   s   d dl Z d dlmZmZ d dlmZmZ d dlmZ d dl	m
Z
 d dlmZmZ eddG d	d
 d
eZeddG dd deZdS )    N)	dataclassfield)DocumentReferencedb)Address)Image)DocumentDatavalidateT)kw_onlyc                   @   s   e Zd ZU eed< eed< eed< eed< eed< eed< ee ed< eed< eed	< eed
< ededefddZ	dd Z
dS )BlankVariantcolor	colorCodesizeblankProductIddescriptiongtinimagesstyleweight
weightUnitblankVariantIdc                 C   s2   t d| d|  }|jr| | S d S NblankProducts/z/blankVariants/r   documentgetexists	from_dictto_dict)clsr   r   doc r!   T/var/www/html/riverr-enterprise-integrations-main/V2/functions/BlankProducts/main.pyr      s   zBlankVariant.getc                 C   s   | j dd| _ d S )N/-)idreplace)selfr!   r!   r"   __post_init__   s   zBlankVariant.__post_init__N)__name__
__module____qualname__str__annotations__listr   floatclassmethodr   r(   r!   r!   r!   r"   r      s   
 r   c                   @   s   e Zd ZU eed< eed< eed< eed< eed< eed< eed< eed< eed	< ee ed
< ee ed< ee ed< edefddZ	dd Z
dee fddZdS )BlankProductnamer   brandr   publicr   
supplierIdsupplierNameprimaryImage
categoriesr   tagsc                 C   s,   t d|  }|jr| | S d S )Nr   r   )r   r   r    r!   r!   r"   r   /   s   zBlankProduct.getc                 C   s&   t d| j d }dd |D S )Nr   z/blankVariantsc                 S   s   g | ]	}t | qS r!   )r   r   r   ).0r    r!   r!   r"   
<listcomp>6   s    z1BlankProduct.getBlankVariants.<locals>.<listcomp>)r   
collectionr%   r   )r'   docsr!   r!   r"   getBlankVariants4   s   zBlankProduct.getBlankVariantsblankVariantsc                 C   sj   t  }t d| j }|||   |D ]}t d| j d|j }|||  q|  | S r   )r   batchr   r%   setr   commit)r'   r?   r@   r    blankVariantr!   r!   r"   save8   s   zBlankProduct.saveN)r)   r*   r+   r,   r-   boolr.   r   r0   r   r>   r   rD   r!   r!   r!   r"   r1       s"   
 r1   )inspectdataclassesr   r   configs.firebaser   r   V2.functions.Address.mainr   V2.functions.Images.mainr   V2.functions.mainr   r	   r   r1   r!   r!   r!   r"   <module>   s   