o
    4˜Žj¡  ã                   @  s�   d dl mZ d dlmZmZ d dlmZmZmZ d dl	m
Z
mZmZ d dlmZmZ d dlmZ ddlmZ er>d d	lmZ G d
d„ deƒZdS )é    )Úannotations)Ú	AwaitableÚCallable)ÚTYPE_CHECKINGÚAnyÚcast)Ú	UNHANDLEDÚCancelHandlerÚSkipHandler)ÚTelegramObjectÚUpdate)Ú
ErrorEventé   )ÚBaseMiddleware)ÚRouterc                   @  s    e Zd Zddd„Zddd„ZdS )ÚErrorsMiddlewareÚrouterr   c                 C  s
   || _ d S )N)r   )Úselfr   © r   úa/var/www/kodo/Anonymous/send/lib/python3.10/site-packages/aiogram/dispatcher/middlewares/error.pyÚ__init__   s   
zErrorsMiddleware.__init__Úhandlerú:Callable[[TelegramObject, dict[str, Any]], Awaitable[Any]]Úeventr   Údataúdict[str, Any]Úreturnr   c              
   Ã  s†   �z	|||ƒI d H W S  t tfy   ‚  tyB } z#| jjddttt|ƒ|d�dœ|¤ŽI d H }|tur=|W  Y d }~S ‚ d }~ww )NÚerror)ÚupdateÚ	exception)Úupdate_typer   r   )	r
   r	   Ú	Exceptionr   Úpropagate_eventr   r   r   r   )r   r   r   r   ÚeÚresponser   r   r   Ú__call__   s"   €þý€øzErrorsMiddleware.__call__N)r   r   )r   r   r   r   r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__r   r%   r   r   r   r   r      s    
r   N)Ú
__future__r   Úcollections.abcr   r   Útypingr   r   r   Úaiogram.dispatcher.event.basesr   r	   r
   Úaiogram.typesr   r   Úaiogram.types.error_eventr   Úbaser   Úaiogram.dispatcher.routerr   r   r   r   r   r   Ú<module>   s    