§
    `Ò³gÅ  ã                   ól   — d Z ddlZddlZddlmZ ddlmZ  ej	        d¦  «        Z
 G d„ d¦  «        ZdS ))ÚPdfUnspHandleré    NÚ	pypdfium2c                   óB   — e Zd ZdZd„ Zd„ Zd	d„Zd„ Zed„ ¦   «         Z	dS )
r   a  
    Unsupported feature handler helper class.
    
    Attributes:
        handlers (dict[str, typing.Callable]):
            A dictionary of named handler functions to be called with an unsupported code (:attr:`FPDF_UNSP_*`) when PDFium detects an unsupported feature.
    c                 ó"   — i | _         d | _        d S ©N)ÚhandlersÚ_config©Úselfs    ú\/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pypdfium2/_helpers/unsupported.pyÚ__init__zPdfUnspHandler.__init__   s   € ØˆŒØˆŒˆˆó    c                 óT   — | j                              ¦   «         D ]} ||¦  «         Œd S r   )r   Úvalues)r   Ú_ÚtypeÚhandlers       r   Ú__call__zPdfUnspHandler.__call__   s8   € Ø”}×+Ò+Ñ-Ô-ð 	ð 	ˆGØˆG�D‰MŒMˆMˆMð	ð 	r   Tc                 ó  — t          j        d¬¦  «        | _        t          j        | j        d| ¦  «         t          j        | j        ¦  «         t          j        | j        ¦  «         |rt          j
        | j        d<   dS dS )a  
        Attach the handler to PDFium, and register an exit function to keep the object alive for the rest of the session.
        
        Parameters:
            add_default (bool):
                If True, add a default callback that will log unsupported features as warning.
        é   )ÚversionÚFSDK_UnSupport_HandlerÚdefaultN)Úpdfium_cÚUNSUPPORT_INFOr	   Úpdfium_iÚset_callbackÚFSDK_SetUnSpObjProcessHandlerÚatexitÚregisterÚ_keepr   Ú_defaultr   )r   Úadd_defaults     r   ÚsetupzPdfUnspHandler.setup!   s}   € õ  Ô.°qÐ9Ñ9Ô9ˆŒÝÔ˜dœlÐ,DÀdÑKÔKÐKÝÔ.¨t¬|Ñ<Ô<Ð<åŒ˜œ
Ñ#Ô#Ð#àð 	?Ý'5Ô'>ˆDŒM˜)Ñ$Ð$Ð$ð	?ð 	?r   c                 óV   — t          | j        ¦  «         t          | j        ¦  «         d S r   )Úidr   r	   r
   s    r   r!   zPdfUnspHandler._keep4   s(   € Ý
ˆ4Œ=ÑÔÐÝ
ˆ4Œ<ÑÔÐÐÐr   c                 óz   — t                                dt          j                             | ¦  «        › �¦  «         d S )NzUnsupported PDF feature: )Ú
lib_loggerÚwarningr   ÚUnsupportedInfoToStrÚget)r   s    r   r"   zPdfUnspHandler._default9   s7   € å×ÒÐ`µxÔ7T×7XÒ7XÐY]Ñ7^Ô7^Ð`Ð`ÑaÔaÐaÐaÐar   N)T)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r$   r!   Ústaticmethodr"   © r   r   r   r      s   € € € € € ðð ðð ð ð
ð ð ð
?ð ?ð ?ð ?ð&ð ð ð
 ðbð bñ „\ðbð bð br   r   )Ú__all__r   ÚloggingÚpypdfium2.rawÚrawr   Úpypdfium2.internalÚinternalr   Ú	getLoggerr(   r   r1   r   r   ú<module>r9      s�   ðð €à €€€Ø €€€Ø  Ð  Ð  Ð  Ð  Ð  Ø %Ð %Ð %Ð %Ð %Ð %àˆWÔ˜{Ñ+Ô+€
ð-bð -bð -bð -bð -bñ -bô -bð -bð -bð -br   