a
    èÞJbª  ã                   @   s"   d dl mZ G dd„ dejƒZdS )é   )Ú	xmlwriterc                       sh   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‡  ZS )ÚMetadataz=
    A class for writing the Excel XLSX Metadata file.


    c                    s   t t| ƒ ¡  dS )z
        Constructor.

        N)Úsuperr   Ú__init__©Úself©Ú	__class__© ú2lib/python3.9/site-packages/xlsxwriter/metadata.pyr      s    zMetadata.__init__c                 C   s>   |   ¡  |  ¡  |  ¡  |  ¡  |  ¡  |  d¡ |  ¡  d S )NÚmetadata)Z_xml_declarationÚ_write_metadataÚ_write_metadata_typesÚ_write_future_metadataÚ_write_cell_metadataÚ_xml_end_tagZ
_xml_closer   r
   r
   r   Ú_assemble_xml_file'   s    
zMetadata._assemble_xml_filec                 C   s0   d}d}|d }d|fd|fg}|   d|¡ d S )Nz9http://schemas.openxmlformats.org/spreadsheetml/2006/mainz#http://schemas.microsoft.com/officez /spreadsheetml/2017/dynamicarrayÚxmlnsz	xmlns:xdar   )Ú_xml_start_tag)r   r   ZschemaZ	xmlns_xdaÚ
attributesr
   r
   r   r   D   s    þzMetadata._write_metadatac                 C   s(   dg}|   d|¡ |  ¡  |  d¡ d S )N©Úcountr   ZmetadataTypes)r   Ú_write_metadata_typer   ©r   r   r
   r
   r   r   Q   s    zMetadata._write_metadata_typesc                 C   s   g d¢}|   d|¡ d S )N)©ÚnameZXLDAPR)ZminSupportedVersioniÀÔ )Úcopyr   )ZpasteAllr   )ZpasteValuesr   )Úmerger   )Z
splitFirstr   )ZrowColShiftr   )ZclearFormatsr   )ZclearCommentsr   )Zassignr   )Zcoercer   )ZcellMetar   ZmetadataType©Z_xml_empty_tagr   r
   r
   r   r   \   s    zMetadata._write_metadata_typec                 C   sR   ddg}|   d|¡ |   d¡ |   d¡ |  ¡  |  d¡ |  d¡ |  d¡ d S )Nr   r   ZfutureMetadataÚbkZextLst)r   Ú
_write_extr   r   r
   r
   r   r   p   s    þ



zMetadata._write_future_metadatac                 C   s(   dg}|   d|¡ |  ¡  |  d¡ d S )N)Zuriz&{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}Úext)r   Ú#_write_xda_dynamic_array_propertiesr   r   r
   r
   r   r    ‚   s    zMetadata._write_extc                 C   s   ddg}|   d|¡ d S )N)ZfDynamicr   )Z
fCollapsedé    zxda:dynamicArrayPropertiesr   r   r
   r
   r   r"      s    þz,Metadata._write_xda_dynamic_array_propertiesc                 C   s<   dg}|   d|¡ |   d¡ |  ¡  |  d¡ |  d¡ d S )Nr   ZcellMetadatar   )r   Ú	_write_rcr   r   r
   r
   r   r   –   s    

zMetadata._write_cell_metadatac                 C   s   ddg}|   d|¡ d S )N)Útr   )Úvr#   Úrcr   r   r
   r
   r   r$   £   s    þzMetadata._write_rc)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r    r"   r   r$   Ú__classcell__r
   r
   r   r   r      s   	r   N)Ú r   Z	XMLwriterr   r
   r
   r
   r   Ú<module>	   s   