
    	i                     8    d dl mZ  G d dej                  ZdS )   )	xmlwriterc                        e Zd ZdZd f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 xZS )Metadataz=
    A class for writing the Excel XLSX Metadata file.


    returnNc                 r    t                                                       d| _        d| _        d| _        dS )z
        Constructor.

        F    N)super__init__has_dynamic_functionshas_embedded_imagesnum_embedded_images)self	__class__s    K/srv/django_bis/venv311/lib/python3.11/site-packages/xlsxwriter/metadata.pyr
   zMetadata.__init__   s9     	%*"#( #$       c                    | j         dk    rd| _        |                                  |                                  |                                  | j        r|                                  | j        r|                                  | j        r|                                  | j        r| 	                                 | 
                    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_close)r   s    r   _assemble_xml_filezMetadata._assemble_xml_file+   s     #a'''+D$ 	 	 	""$$$ % 	/,,...# 	0--/// % 	(%%'''# 	)&&(((*%%% 	r   c                     d}d}d|fg}| j         r|                    d|dz   f           | j        r|                    d|dz   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
attributess       r   r   zMetadata._write_metadataQ   s    KD&'
# 	I|V6F-FGHHH% 	L{F5I,IJKKKJ
33333r   c                    d}| j         r|dz  }| j        r|dz  }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#   s      r   r   zMetadata._write_metadata_types`   s    % 	QJE# 	QJE&'
OZ888 % 	-**,,,# 	.++---/*****r   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#   s     r   r'   z"Metadata._write_cell_metadata_typeu   s1    
 
 

  	NJ77777r   c                 :    g d}|                      d|           d S )N)r+   XLRICHVALUEr-   r/   r1   r3   r5   r7   r9   r;   r=   r?   rA   rD   rE   rG   s     r   r(   z#Metadata._write_value_metadata_type   s1    
 
 

 	NJ77777r   c                 4   ddg}|                      d|           |                      d           |                      d           |                                  |                     d           |                     d           |                     d           d S )Nr*   r%   r   futureMetadatabkextLst)r!   _write_cell_extr   rG   s     r   r   z$Metadata._write_cell_future_metadata   s     


 	,j999D!!!H%%%(###$*+++++r   c                 r   dd| j         fg}|                     d|           t          | j                   D ]k}|                     d           |                     d           |                     |           |                     d           |                     d           l|                     d           d S )NrI   r%   rM   rN   rO   )r   r!   range_write_value_extr   )r   r#   indexs      r   r   z%Metadata._write_value_future_metadata   s     $d./


 	,j9994344 	$ 	$E%%%)))!!%(((h'''d####*+++++r   c                     dg}|                      d|           |                                  |                     d           d S )N)uriz&{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}ext)r!   #_write_xda_dynamic_array_propertiesr   rG   s     r   rP   zMetadata._write_cell_ext   sN    GH
E:... 	00222%     r   c                 :    ddg}|                      d|           d S )N)fDynamicr   )
fCollapsedr   zxda:dynamicArrayPropertiesrE   rG   s     r   rX   z,Metadata._write_xda_dynamic_array_properties   s0     


 	8*EEEEEr   c                     dg}|                      d|           |                     |           |                     d           d S )N)rV   z&{3e2802c4-a4d2-4d8b-9148-e3be6c30e623}rW   )r!   _write_xlrd_rvbr   r   rT   r#   s      r   rS   zMetadata._write_value_ext   sP    GH
E:... 	U###%     r   c                 <    d|fg}|                      d|           d S )Nizxlrd:rvbrE   r^   s      r   r]   zMetadata._write_xlrd_rvb   s)    El^
J
33333r   c                     dg}|                      d|           |                      d           |                     dd           |                     d           |                     d           d S )NrL   cellMetadatarN   r   r   )r!   	_write_rcr   rG   s     r   r   zMetadata._write_cell_metadata   sw    "^
NJ777D!!! 	q!$.)))))r   c                 8   | j         }d}| j        rd}d|fg}|                     d|           t          | j                   D ]B}|                     d           |                     ||           |                     d           C|                     d           d S )Nr      r%   valueMetadatarN   )r   r   r!   rR   rc   r   )r   r%   rc_typer#   rT   s        r   r   zMetadata._write_value_metadata   s    (% 	G&'
OZ888 4344 	$ 	$E%%%NN7E***d####/*****r   c                 B    d|fd|fg}|                      d|           d S )NtvrcrE   )r   rg   rT   r#   s       r   rc   zMetadata._write_rc  s7     'N%L


 	D*-----r   )r   N)__name__
__module____qualname____doc__r
   r   r   r   r'   r(   r   r   rP   rX   rS   r]   r   r   rc   __classcell__)r   s   @r   r   r      sd        	% 	% 	% 	% 	% 	%"   L4 4 4 4+ + + +*8 8 8 8(8 8 8 8&, , , ,, , , ,$	! 	! 	! 	!F F F F	! 	! 	! 	!4 4 4 4* * * *+ + + +(. . . . . . . .r   r   N) r   	XMLwriterr    r   r   <module>rt      sZ         }. }. }. }. }.y" }. }. }. }. }.r   