
    	i                     P    d dl mZ dZedz   Zedz   Z G d dej                  ZdS )   )	xmlwriterz!http://schemas.openxmlformats.orgz/package/2006/relationshipsz"/officeDocument/2006/relationshipsc                   f     e Zd ZdZd fdZddZdddZddZddZdd	Z	dd
Z
ddZddZ xZS )RelationshipszB
    A class for writing the Excel XLSX Relationships file.


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

        r   N)super__init__relationshipsid)self	__class__s    P/srv/django_bis/venv311/lib/python3.11/site-packages/xlsxwriter/relationships.pyr	   zRelationships.__init__    s.     	    c                 ~    |                                   |                                  |                                  d S N)_xml_declaration_write_relationships
_xml_close)r   s    r   _assemble_xml_filez Relationships._assemble_xml_file1   s@     	!!### 	r   c                 T    t           |z   }| j                            |||f           d S r   )DOCUMENT_SCHEMAr
   append)r   rel_typetargettarget_modes       r   _add_document_relationshipz(Relationships._add_document_relationship<   s0    "X-!!8V["ABBBBBr   c                 T    t           |z   }| j                            ||d f           d S r   )PACKAGE_SCHEMAr
   r   )r   r   r   s      r   _add_package_relationshipz'Relationships._add_package_relationshipB   s0    !H,!!8VT":;;;;;r   c                 N    d}||z   }| j                             ||d f           d S )Nz6http://schemas.microsoft.com/office/2006/relationshipsr
   r   )r   r   r   schemas       r   _add_ms_package_relationshipz*Relationships._add_ms_package_relationshipH   s5    IH$!!8VT":;;;;;r   c                 .   d}|dz   }d}| j                             ||d f           d}|dz   }d}| j                             ||d f           |dz   }d}| j                             ||d f           |d	z   }d
}| j                             ||d f           d S )Nz:http://schemas.microsoft.com/office/2022/10/relationships/richValueRelzrichData/richValueRel.xmlz:http://schemas.microsoft.com/office/2017/06/relationships/rdRichValuezrichData/rdrichvalue.xmlrdRichValueStructurez!richData/rdrichvaluestructure.xmlrdRichValueTypeszrichData/rdRichValueTypes.xmlr!   r   r"   r   r   s       r   _add_rich_value_relationshipz*Relationships._add_rich_value_relationshipO   s    MN*,!!8VT":;;;MM)+!!8VT":;;;224!!8VT":;;;..0!!8VT":;;;;;r   c                 R    d}|dz   }d}| j                             ||d f           d S )Nz:http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBagz)featurePropertyBag/featurePropertyBag.xmlr!   r)   s       r   _add_feature_bag_relationshipz+Relationships._add_feature_bag_relationshipc   s;    M00<!!8VT":;;;;;r   c                     dt           fg}|                     d|           | j        D ]}|                     |           |                     d           d S )Nxmlnsr   )r   _xml_start_tagr
   _write_relationship_xml_end_tag)r   
attributesrelationships      r   r   z"Relationships._write_relationshipsp   sq     

 	OZ888 . 	3 	3L$$\2222/*****r   c                     |\  }}}ddt          | j                  z   fd|fd|fg}| xj        dz  c_        |r|                    d|f           |                     d|           d S )NIdrIdTypeTargetr   
TargetModeRelationship)strr   r   _xml_empty_tag)r   r4   r   r   r   r3   s         r   r1   z!Relationships._write_relationship   s    (4%&+ 53tw<<'(Xv

 	1 	;|[9:::NJ77777r   )r   Nr   )__name__
__module____qualname____doc__r	   r   r   r   r#   r*   r-   r   r1   __classcell__)r   s   @r   r   r      s         	 	 	 	 	 	"	 	 	 	C C C C C< < < << < < << < < <(< < < <+ + + + 8 8 8 8 8 8 8 8r   r   N) r   SCHEMA_ROOTr   r   	XMLwriterr    r   r   <module>rG      sw          2<< DD|8 |8 |8 |8 |8I' |8 |8 |8 |8 |8r   