
    li1                     Z    d dl m Z mZ d dlmZmZ ddlmZ  G d dej                        Zy)    )datetimetimezone)DictUnion   )	xmlwriterc                        e Zd ZdZd fdZddZdeeeee	f   f   d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 xZS )Corez9
    A class for writing the Excel XLSX Core file.


    returnNc                 >    t         |           i | _        d| _        y)z
        Constructor.

         N)super__init__
propertiesiso_date)self	__class__s    M/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/xlsxwriter/core.pyr   zCore.__init__   s     	    c                    | j                   j                  d      }t        |t              s#t        j                  t
        j                        }|j                  d      | _        | j                          | j                          | j                          | j                          | j                          | j                          | j                          | j!                          | j#                          | j%                          | j'                          | j)                          | j+                  d       | j-                          y )Ncreatedz%Y-%m-%dT%H:%M:%SZcp:coreProperties)r   get
isinstancer   nowr   utcstrftimer   _xml_declaration_write_cp_core_properties_write_dc_title_write_dc_subject_write_dc_creator_write_cp_keywords_write_dc_description_write_cp_last_modified_by_write_dcterms_created_write_dcterms_modified_write_cp_category_write_cp_content_status_xml_end_tag
_xml_close)r   dates     r   _assemble_xml_filezCore._assemble_xml_file.   s     ""9-$)<<-D&:; 	&&(  !""$'')##%$$&!%%'-. 	r   r   c                     || _         y )N)r   )r   r   s     r   _set_propertieszCore._set_propertiesL   s	    $r   c                 ^    d}d}d}d}d}d|fd|fd|fd	|fd
|fg}| j                  d|       y )NzGhttp://schemas.openxmlformats.org/package/2006/metadata/core-propertiesz http://purl.org/dc/elements/1.1/zhttp://purl.org/dc/terms/zhttp://purl.org/dc/dcmitype/z)http://www.w3.org/2001/XMLSchema-instancezxmlns:cpzxmlns:dczxmlns:dctermszxmlns:dcmitypez	xmlns:xsir   )_xml_start_tag)r   xmlns_cpxmlns_dcxmlns_dctermsxmlns_dcmitype	xmlns_xsi
attributess          r   r   zCore._write_cp_core_propertiesV   sf    ) 	 637?	 ""m,~.)$

 	/<r   c                 `    | j                   j                  dd      }| j                  d|       y )Nauthorr   z
dc:creatorr   r   _xml_data_elementr   datas     r   r"   zCore._write_dc_creatorl   s(    ""8R0|T2r   c                 `    | j                   j                  dd      }| j                  d|       y )Nr9   r   zcp:lastModifiedByr:   r<   s     r   r%   zCore._write_cp_last_modified_byr   s)    ""8R02D9r   c                 D    dg}| j                  d| j                  |       y )Nzxsi:typezdcterms:W3CDTFzdcterms:createdr;   r   r   r7   s     r   r&   zCore._write_dcterms_createdx   s!    45
0$--Lr   c                 D    dg}| j                  d| j                  |       y )Nr@   zdcterms:modifiedrA   rB   s     r   r'   zCore._write_dcterms_modified}   s!    45
14==*Mr   c                 f    d| j                   v r| j                   d   }ny | j                  d|       y )Ntitlezdc:titler   r;   r<   s     r   r    zCore._write_dc_title   s/    doo%??7+Dz40r   c                 f    d| j                   v r| j                   d   }ny | j                  d|       y )Nsubjectz
dc:subjectrF   r<   s     r   r!   zCore._write_dc_subject   s/    '??9-D|T2r   c                 f    d| j                   v r| j                   d   }ny | j                  d|       y )Nkeywordszcp:keywordsrF   r<   s     r   r#   zCore._write_cp_keywords   /    (??:.D}d3r   c                 f    d| j                   v r| j                   d   }ny | j                  d|       y )Ncommentszdc:descriptionrF   r<   s     r   r$   zCore._write_dc_description   s0    (??:.D/6r   c                 f    d| j                   v r| j                   d   }ny | j                  d|       y )Ncategoryzcp:categoryrF   r<   s     r   r(   zCore._write_cp_category   rK   r   c                 f    d| j                   v r| j                   d   }ny | j                  d|       y )Nstatuszcp:contentStatusrF   r<   s     r   r)   zCore._write_cp_content_status   s0    t&??8,D148r   )r   N)__name__
__module____qualname____doc__r   r-   r   strr   r   r/   r   r"   r%   r&   r'   r    r!   r#   r$   r(   r)   __classcell__)r   s   @r   r
   r
      sq    	"<%$sE#x-4H/H*I %d %=,3:M
N
134749r   r
   N)	r   r   typingr   r   r   r   	XMLwriterr
    r   r   <module>r[      s$    (  f99 f9r   