
    h5jk                    "   U d Z ddlmZ ddlZddlmZmZ ddlmZm	Z	 dZ
dZdZd	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZde
dfedfedfedfedfedfedfedfed fed!fed"fed#fed$fed%fed&fed'fd(d)d*d+gZd,ed-<   d.Zd/Zd0Z G d1 d2e	      Z  G d3 d4e!      Z" e d5e"e"jF                         e d6e$e$jJ                         e d7e!e!jF                        gZ&e
d8fe
d9fe
d:fed;fgZ'd<a(dAd=Z) ejT                  d>      Z+ ejT                  d?      Z,dBdCd@Z-y)Dz1XMP metadata constants, templates, and utilities.    )annotationsN)CallableIterable)Any
NamedTuplez http://purl.org/dc/elements/1.1/zhttp://ns.adobe.com/pdf/1.3/zhttp://www.aiim.org/pdfa/ns/id/z&http://www.aiim.org/pdfa/ns/extension/z%http://www.aiim.org/pdfa/ns/property#z#http://www.aiim.org/pdfa/ns/schema#z http://www.aiim.org/pdfua/ns/id/zhttp://www.npes.org/pdfx/ns/id/z"http://ns.adobe.com/photoshop/1.0/z.http://prismstandard.org/namespaces/basic/1.0/z.http://prismstandard.org/namespaces/basic/2.0/z.http://prismstandard.org/namespaces/basic/3.0/z+http://www.w3.org/1999/02/22-rdf-syntax-ns#zhttp://ns.adobe.com/xap/1.0/zhttp://ns.adobe.com/xap/1.0/mm/z#http://ns.adobe.com/xap/1.0/rights/z$http://www.w3.org/XML/1998/namespace)zadobe:ns:meta/xdcpdfpdfaidpdfaExtensionpdfaProperty
pdfaSchemapdfuaidpdfxid	photoshopprismprism2prism3rdfxmpxmpMM	xmpRights)z"http://crossref.org/crossmark/1.0/	crossmark)z$http://www.niso.org/schemas/jav/1.0/jav)zhttp://ns.adobe.com/pdfx/1.3/pdfx)z$http://www.niso.org/schemas/ali/1.0/alizlist[tuple[str, str]]DEFAULT_NAMESPACESs6   <?xpacket begin="﻿" id="W5M0MpCehiHzreSzNTczkc9d"?>
s   <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="pikepdf">
 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
 </rdf:RDF>
</x:xmpmeta>
s   
<?xpacket end="w"?>
c                  0    e Zd ZU dZded<   ded<   ded<   y)	XmpContainerz6Map XMP container object to suitable Python container.strrdf_typetypepy_typezCallable[..., None]	insert_fnN)__name__
__module____qualname____doc____annotations__     X/var/www/html/qr/venv/lib/python3.12/site-packages/pikepdf/models/metadata/_constants.pyr   r   F   s    @MM""r+   r   c                      e Zd ZdZy)AltListz0XMP AltList container for language alternatives.N)r%   r&   r'   r(   r*   r+   r,   r.   r.   N   s    :r+   r.   AltBagSeqtitledescriptionrights
UsageTermsFc                ,   | dk(  ruddl m} t        s(ddlm} t
        D ]  \  }}|j                  ||        dat        t        D cg c]  \  }}t         |||             c}}      }|t               | <   |S t        dt        d|       c c}}w )N	LANG_ALTSr   )QName)etreeTzmodule z has no attribute )
lxml.etreer8   _LOADED_LXML_NAMESPACESlxmlr9   r   register_namespace	frozenset_LANG_ALTS_LAZYr    globalsAttributeErrorr%   )namer8   r9   _uri_prefixr   yvals           r,   __getattr__rG   c   s     {$&"!3 8g(($78&*#_EcaU1a[)EF	$

78,.@I
JJ Fs   B
zL(?u)[^\x09\x0A\x0D\x20-\U0000D7FF\U0000E000-\U0000FFFD\U00010000-\U0010FFFF]s   [^\x09\x0A\x0D\x20-\xFF]|&#0;c                    ddl m} t        | t              sct        | t              rH |d|         t        | t
              r|j                  t        |             } n|j                  |       } nt        d      t        j                  d|       S )a  Ensure an object can safely be inserted in a XML tag body.

    If we still have a non-str object at this point, the best option is to
    join it, because it's apparently calling for a new node in a place that
    isn't allowed in the spec or not supported.
    r   )warnzMerging elements of z.object must be a string or iterable of strings )warningsrI   
isinstancer    r   setjoinsorted	TypeErrorre_xml_illegal_charssub)sjoinerrI   s      r,   cleanrU      ss     aa"'s+,!S!KKq	*KKNLMM##B**r+   )rB   r    returnr   )z; )rS   zstr | Iterable[str]rT   r    rV   r    ).r(   
__future__r   recollections.abcr   r   typingr   r   	XMP_NS_DC
XMP_NS_PDFXMP_NS_PDFA_IDXMP_NS_PDFA_EXTENSIONXMP_NS_PDFA_PROPERTYXMP_NS_PDFA_SCHEMAXMP_NS_PDFUA_IDXMP_NS_PDFX_IDXMP_NS_PHOTOSHOPXMP_NS_PRISMXMP_NS_PRISM2XMP_NS_PRISM3
XMP_NS_RDF
XMP_NS_XMPXMP_NS_XMP_MMXMP_NS_XMP_RIGHTS
XMP_NS_XMLr   r)   XPACKET_BEGIN	XMP_EMPTYXPACKET_ENDr   listr.   appendrM   addXMP_CONTAINERSr?   r;   rG   compilerQ   re_xml_illegal_bytesrU   r*   r+   r,   <module>ru      s   8 " 	 . " /	+
2@ > : 427 ?@@:
+
19  4
 XO,>*&i X{#7HHG$73-3+- ) 4 X	 -#: #;d ;
 0SWW%dkk* %	   K. "rzzS  "rzz"CD +r+   