§
    £”jƒ  ã                  ó¤   — d Z ddlmZ ddlmZmZ ddlmZ ddlm	Z
 ddlmZ ddlmZ ddlmZ dd	lmZ  G d
„ de¦  «        Z G d„ d¦  «        ZdS )z3WordprocessingML Package class and related objects.é    )Úannotations)ÚIOÚcast)ÚImage)ÚRELATIONSHIP_TYPE)Ú
OpcPackage©ÚPackURI)Ú	ImagePart)Úlazypropertyc                  ó>   — e Zd ZdZd„ Zdd„Zedd	„¦   «         Zd
„ ZdS )ÚPackagez6Customizations specific to a WordprocessingML package.c                ó.   — |                       ¦   «          dS )z¢Called by loading code after all parts and relationships have been loaded.

        This method affords the opportunity for any required post-processing.
        N)Ú_gather_image_parts©Úselfs    ú[/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/docx/package.pyÚafter_unmarshalzPackage.after_unmarshal   s   € ð
 	× Ò Ñ"Ô"Ð"Ð"Ð"ó    Úimage_descriptorústr | IO[bytes]Úreturnr   c                ó6   — | j                              |¦  «        S )zºReturn |ImagePart| containing image specified by `image_descriptor`.

        The image-part is newly created if a matching one is not already present in the
        collection.
        )Úimage_partsÚget_or_add_image_part)r   r   s     r   r   zPackage.get_or_add_image_part   s   € ð Ô×5Ò5Ð6FÑGÔGÐGr   Ú
ImagePartsc                ó   — t          ¦   «         S )z0|ImageParts| collection object for this package.)r   r   s    r   r   zPackage.image_parts!   s   € õ ‰|Œ|Ðr   c                óè   — |                       ¦   «         D ]\}|j        rŒ
|j        t          j        k    rŒ |j        | j        v rŒ/| j                             t          d|j        ¦  «        ¦  «         Œ]dS )zCLoad the image part collection with all the image parts in package.r   N)	Ú	iter_relsÚis_externalÚreltypeÚRTÚIMAGEÚtarget_partr   Úappendr   )r   Úrels     r   r   zPackage._gather_image_parts&   s�   € à—>’>Ñ#Ô#ð 	Hð 	HˆCØŒð ØØŒ{�bœhÒ&Ð&ØØŒ $Ô"2Ð2Ð2ØØÔ×#Ò#¥D¨°c´oÑ$FÔ$FÑGÔGÐGÐGð	Hð 	Hr   N©r   r   r   r   )r   r   )	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   © r   r   r   r      su   € € € € € Ø@Ð@ð#ð #ð #ðHð Hð Hð Hð ðð ð ñ „\ðð	Hð 	Hð 	Hð 	Hð 	Hr   r   c                  óT   — e Zd ZdZd„ Zdd„Zd„ Zd„ Zdd	„Zdd„Z	dd„Z
dd„Zdd„ZdS )r   zICollection of |ImagePart| objects corresponding to images in the package.c                ó   — g | _         d S ©N)Ú_image_partsr   s    r   Ú__init__zImageParts.__init__5   s   € Ø-/ˆÔÐÐr   ÚitemÚobjectc                ó6   — | j                              |¦  «        S r/   )r0   Ú__contains__©r   r2   s     r   r5   zImageParts.__contains__8   s   € ØÔ ×-Ò-¨dÑ3Ô3Ð3r   c                ó4   — | j                              ¦   «         S r/   )r0   Ú__iter__r   s    r   r8   zImageParts.__iter__;   s   € ØÔ ×)Ò)Ñ+Ô+Ð+r   c                ó4   — | j                              ¦   «         S r/   )r0   Ú__len__r   s    r   r:   zImageParts.__len__>   s   € ØÔ ×(Ò(Ñ*Ô*Ð*r   r   c                ó:   — | j                              |¦  «         d S r/   )r0   r%   r6   s     r   r%   zImageParts.appendA   s   € ØÔ× Ò  Ñ&Ô&Ð&Ð&Ð&r   r   r   r   c                ó�   — t          j        |¦  «        }|                      |j        ¦  «        }|�|S |                      |¦  «        S )zºReturn |ImagePart| object containing image identified by `image_descriptor`.

        The image-part is newly created if a matching one is not present in the
        collection.
        )r   Ú	from_fileÚ_get_by_sha1Úsha1Ú_add_image_part)r   r   ÚimageÚmatching_image_parts       r   r   z ImageParts.get_or_add_image_partD   sJ   € õ ”Ð 0Ñ1Ô1ˆØ"×/Ò/°´
Ñ;Ô;ÐØÐ*Ø&Ð&Ø×#Ò# EÑ*Ô*Ð*r   rA   r   c                óŽ   — |                       |j        ¦  «        }t          j        ||¦  «        }|                      |¦  «         |S )zVReturn |ImagePart| instance newly created from `image` and appended to the collection.)Ú_next_image_partnameÚextr   Ú
from_imager%   )r   rA   ÚpartnameÚ
image_parts       r   r@   zImageParts._add_image_partP   sA   € à×,Ò,¨U¬YÑ7Ô7ˆÝÔ)¨%°Ñ:Ô:ˆ
Ø�Š�JÑÔÐØÐr   r?   ÚstrúImagePart | Nonec                ó8   — | j         D ]}|j        |k    r|c S ŒdS )zlReturn the image part in this collection having a SHA1 hash matching `sha1`,
        or |None| if not found.N)r0   r?   )r   r?   rH   s      r   r>   zImageParts._get_by_sha1W   s9   € ð Ô+ð 	"ð 	"ˆJØŒ $Ò&Ð&Ø!Ð!Ð!Ð!ð 'àˆtr   rE   r
   c                óÆ   ‡— dˆfd„}d„ | D ¦   «         }t          dt          | ¦  «        dz   ¦  «        D ]}||vr ||¦  «        c S Œ |t          | ¦  «        dz   ¦  «        S )	zþThe next available image partname, starting from ``/word/media/image1.{ext}``
        where unused numbers are reused.

        The partname is unique by number, without regard to the extension. `ext` does
        not include the leading period.
        ÚnÚintr   r
   c                ó,   •— t          d| ‰fz  ¦  «        S )Nz/word/media/image%d.%sr	   )rM   rE   s    €r   Úimage_partnamez7ImageParts._next_image_partname.<locals>.image_partnameg   s   ø€ ÝÐ3°q¸#°hÑ>Ñ?Ô?Ð?r   c                ó&   — g | ]}|j         j        ‘ŒS r,   )rG   Úidx)Ú.0rH   s     r   ú
<listcomp>z3ImageParts._next_image_partname.<locals>.<listcomp>j   s   € ÐGÐGÐG°J˜
Ô+Ô/ÐGÐGÐGr   é   )rM   rN   r   r
   )ÚrangeÚlen)r   rE   rP   Úused_numbersrM   s    `   r   rD   zImageParts._next_image_partname_   s    ø€ ð	@ð 	@ð 	@ð 	@ð 	@ð 	@ð HÐGÀ$ÐGÑGÔGˆÝ�q�#˜d™)œ) a™-Ñ(Ô(ð 	)ð 	)ˆAØ˜Ð$Ð$Ø%�~ aÑ(Ô(Ð(Ð(Ð(ð %àˆ~�c $™iœi¨!™mÑ,Ô,Ð,r   N)r2   r3   )r2   r   r'   )rA   r   )r?   rI   r   rJ   )rE   rI   r   r
   )r(   r)   r*   r+   r1   r5   r8   r:   r%   r   r@   r>   rD   r,   r   r   r   r   2   s¿   € € € € € ØSÐSð0ð 0ð 0ð4ð 4ð 4ð 4ð,ð ,ð ,ð+ð +ð +ð'ð 'ð 'ð 'ð
+ð 
+ð 
+ð 
+ðð ð ð ðð ð ð ð-ð -ð -ð -ð -ð -r   r   N)r+   Ú
__future__r   Útypingr   r   Údocx.image.imager   Údocx.opc.constantsr   r"   Údocx.opc.packager   Údocx.opc.packurir
   Údocx.parts.imager   Údocx.sharedr   r   r   r,   r   r   ú<module>ra      s  ðØ 9Ð 9à "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ð Ð à "Ð "Ð "Ð "Ð "Ð "Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø $Ð $Ð $Ð $Ð $Ð $Ø &Ð &Ð &Ð &Ð &Ð &Ø $Ð $Ð $Ð $Ð $Ð $ð Hð  Hð  Hð  Hð  Hˆjñ  Hô  Hð  HðF<-ð <-ð <-ð <-ð <-ñ <-ô <-ð <-ð <-ð <-r   