o
    ßïPjž  ã                   @   sp   d dl mZmZmZ dedefdd„ZG dd„ deƒZG dd	„ d	eƒZG d
d„ deƒZ	dede
defdd„ZdS )é    )ÚAnyÚListÚOptionalÚerrorÚreturnc                 C   s
   t | tƒS ©N)Ú
isinstanceÚTargetClosedError)r   © r
   úM/home/thesage/.local/lib/python3.10/site-packages/playwright/_impl/_errors.pyÚis_target_closed_error   s   
r   c                       sd   e Zd Zdeddf‡ fdd„Zedefdd„ƒZedee fdd	„ƒZedee fd
d„ƒZ	‡  Z
S )ÚErrorÚmessager   Nc                    s.   || _ d | _d | _d | _d | _tƒ  |¡ d S r   )Ú_messageÚ_nameÚ_stackÚ_detailsÚ_logÚsuperÚ__init__©Úselfr   ©Ú	__class__r
   r   r      s   zError.__init__c                 C   ó   | j S r   )r   ©r   r
   r
   r   r   #   ó   zError.messagec                 C   r   r   )r   r   r
   r
   r   Úname'   r   z
Error.namec                 C   r   r   )r   r   r
   r
   r   Ústack+   r   zError.stack)Ú__name__Ú
__module__Ú__qualname__Ústrr   Úpropertyr   r   r   r   Ú__classcell__r
   r
   r   r   r      s    r   c                   @   s   e Zd ZdS )ÚTimeoutErrorN)r   r    r!   r
   r
   r
   r   r%   0   s    r%   c                       s(   e Zd Zddeddf‡ fdd„Z‡  ZS )r	   Nr   r   c                    s   t ƒ  |pd¡ d S )Nz/Target page, context or browser has been closed)r   r   r   r   r
   r   r   5   s   zTargetClosedError.__init__r   )r   r    r!   r"   r   r$   r
   r
   r   r   r	   4   s     r	   r   c                 C   sD   t | ƒ|ƒ}t|tƒr t| tƒr | j|_| j|_| j|_| j|_|S r   )	Útyper   r   r   r   r   r   r   r   )r   r   Úrewritten_excr
   r
   r   Úrewrite_error9   s   r(   N)Útypingr   r   r   Ú	ExceptionÚboolr   r   r%   r	   r"   r(   r
   r
   r
   r   Ú<module>   s   