o
    ^Å÷gn  ć                   @   s"   d dl mZ G dd dejZdS )é   )Ś	xmlwriterc                       s   e Zd ZdZ fddZdd Zdd Zdd	 Zd
d Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Z  ZS ) ŚMetadataz=
    A class for writing the Excel XLSX Metadata file.


    c                    s    t   ”  d| _d| _d| _dS )z
        Constructor.

        Fé    N)ŚsuperŚ__init__Śhas_dynamic_functionsŚhas_embedded_imagesŚnum_embedded_images©Śself©Ś	__class__© śm/var/www/eduai.edurigo.com/doc_train/edurigo_ai/Puru/venv/lib/python3.10/site-packages/xlsxwriter/metadata.pyr      s   

zMetadata.__init__c                 C   sv   | j dkrd| _|  ”  |  ”  |  ”  | jr|  ”  | jr"|  ”  | jr)|  ”  | jr0|  	”  |  
d” |  ”  d S )Nr   TŚmetadata)r	   r   Ś_xml_declarationŚ_write_metadataŚ_write_metadata_typesr   Ś_write_cell_future_metadataŚ_write_value_future_metadataŚ_write_cell_metadataŚ_write_value_metadataŚ_xml_end_tagŚ
_xml_closer
   r   r   r   Ś_assemble_xml_file+   s   

zMetadata._assemble_xml_filec                 C   sR   d}d}d|fg}| j r| d|d f” | jr!| d|d f” |  d|” d S )	Nz9http://schemas.openxmlformats.org/spreadsheetml/2006/mainz1http://schemas.microsoft.com/office/spreadsheetmlŚxmlnsz
xmlns:xlrdz/2017/richdataz	xmlns:xdaz/2017/dynamicarrayr   )r   Śappendr   Ś_xml_start_tag)r   r   ŚschemaŚ
attributesr   r   r   r   Q   s   
zMetadata._write_metadatac                 C   s`   d}| j r	|d7 }| jr|d7 }d|fg}|  d|” | j r"|  ”  | jr)|  ”  |  d” d S )Nr   r   ŚcountŚmetadataTypes)r   r   r   Ś_write_cell_metadata_typeŚ_write_value_metadata_typer   )r   r    r   r   r   r   r   `   s   
zMetadata._write_metadata_typesc                 C   ó   g d¢}|   d|” d S )N)©ŚnameŚXLDAPR©ŚminSupportedVersioniĄŌ ©Ścopyr   ©ŚpasteAllr   ©ŚpasteValuesr   ©Śmerger   ©Ś
splitFirstr   ©ŚrowColShiftr   ©ŚclearFormatsr   ©ŚclearCommentsr   ©Śassignr   ©Ścoercer   )ŚcellMetar   ŚmetadataType©Ś_xml_empty_tag©r   r   r   r   r   r"   u   s   z"Metadata._write_cell_metadata_typec                 C   r$   )N)©r&   ŚXLRICHVALUEr(   r*   r,   r.   r0   r2   r4   r6   r8   r:   r<   r?   r@   rB   r   r   r   r#      s   z#Metadata._write_value_metadata_typec                 C   sR   ddg}|   d|” |   d” |   d” |  ”  |  d” |  d” |  d” d S )Nr%   ©r    r   ŚfutureMetadataŚbkŚextLst)r   Ś_write_cell_extr   rB   r   r   r   r      s   ž



z$Metadata._write_cell_future_metadatac                 C   sj   dd| j fg}|  d|” t| j D ]}|  d” |  d” |  |” |  d” |  d” q|  d” d S )NrC   r    rF   rG   rH   )r	   r   ŚrangeŚ_write_value_extr   )r   r   Śindexr   r   r   r   «   s   ž



z%Metadata._write_value_future_metadatac                 C   s(   dg}|   d|” |  ”  |  d” d S )N)Śuriz&{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}Śext)r   Ś#_write_xda_dynamic_array_propertiesr   rB   r   r   r   rI   ½   s   zMetadata._write_cell_extc                 C   s   ddg}|   d|” d S )N)ŚfDynamicr   )Ś
fCollapsedr   zxda:dynamicArrayPropertiesr@   rB   r   r   r   rO   Č   s   žz,Metadata._write_xda_dynamic_array_propertiesc                 C   s*   dg}|   d|” |  |” |  d” d S )N)rM   z&{3e2802c4-a4d2-4d8b-9148-e3be6c30e623}rN   )r   Ś_write_xlrd_rvbr   ©r   rL   r   r   r   r   rK   Ń   s   
zMetadata._write_value_extc                 C   s   d|fg}|   d|” d S )NŚizxlrd:rvbr@   rS   r   r   r   rR   Ü   s   
zMetadata._write_xlrd_rvbc                 C   s@   dg}|   d|” |   d” |  dd” |  d” |  d” d S )NrE   ŚcellMetadatarG   r   r   )r   Ś	_write_rcr   rB   r   r   r   r   ā   s   

zMetadata._write_cell_metadatac                 C   sh   | j }d}| jr
d}d|fg}|  d|” t| j D ]}|  d” |  ||” |  d” q|  d” d S )Nr   é   r    ŚvalueMetadatarG   )r	   r   r   rJ   rV   r   )r   r    Śrc_typer   rL   r   r   r   r   ļ   s   

zMetadata._write_value_metadatac                 C   s    d|fd|fg}|   d|” d S )NŚtŚvŚrcr@   )r   rY   rL   r   r   r   r   rV     s   žzMetadata._write_rc)Ś__name__Ś
__module__Ś__qualname__Ś__doc__r   r   r   r   r"   r#   r   r   rI   rO   rK   rR   r   r   rV   Ś__classcell__r   r   r   r   r      s"    &	r   N)Ś r   Ś	XMLwriterr   r   r   r   r   Ś<module>   s   	