
    Be
                        d dl mZ d dlZd dlZd dlZd dlZd dlmZ dZ	 dddZ	ddZ
	 	 dddZ G d de          Z G d de          Z ej        de            ej        de           dS )     )annotationsN)Version)
deprecatedfind_stack_levelPanelDeprecationWarningPanelUserWarningwarnmessagestrcategorytype[Warning] | None
stacklevel
int | NonereturnNonec                T    |t                      }t          j        | ||           d S )N)r   )r   warningsr	   )r
   r   r   s      3lib/python3.11/site-packages/panel/util/warnings.pyr	   r	      s2     %''
M'8
;;;;;;    intc                    ddl } t          j                            | j                  }t          j                            |d          }t          j                            t          j                  }t          j                    }d}|rPt          j	        |          }|
                    ||f          r"|
                    |          s|j        }|dz  }nn|P|S )z
    Find the first place in the stack that is not inside Panel and Param.
    Inspired by: pandas.util._exceptions.find_stack_level
    r   Ntests   )panelospathdirname__file__joinparaminspectcurrentframegetfile
startswithf_back)pnpkg_dirtest_dir	param_dirframer   fnames          r   r   r      s     goobk**Gw||GW--H//I ""EJ
 &&Wi011 	%:J:J8:T:T 	LE!OJJ   r   remove_versionVersion | stroldnew
str | Noneextrac                   dd l }t          |j                  }t          |j                  }t	          | t
                    rt          |           } | |k    r0|j        r|j        d         dk    st          |d|  d| d          |d|  d}|r|d d          d|d	}|r|d
|	                                z   z  }t          |t                     d S )Nr   rcz should have been removed in z, current version .z. is deprecated and will be removed in version z, use z	 instead. )r   r   __version__base_version
isinstancer   is_prereleasepre
ValueErrorstripr	   r   )r,   r.   r/   r1   r&   current_versionr8   r
   s           r   r   r   6   s    bn--O?788L.#&& 1 00%%/L%Q`QdefQgkoQoQogg>ggUdggg
 
 	
 WWnWWWG
 :SbS\99999 '3&&)*****r   c                      e Zd ZdZdS )r   zA Panel-specific ``DeprecationWarning`` subclass.
    Used to selectively filter Panel deprecations for unconditional display.
    N__name__
__module____qualname____doc__ r   r   r   r   V              r   r   c                      e Zd ZdZdS )r   zxA Panel-specific ``UserWarning`` subclass.
    Used to selectively filter Panel warnings for unconditional display.
    Nr@   rE   r   r   r   r   \   rF   r   r   always)NN)r
   r   r   r   r   r   r   r   )r   r   )
r,   r-   r.   r   r/   r0   r1   r0   r   r   )
__future__r   r!   r   r   r    packaging.versionr   __all__r	   r   r   DeprecationWarningr   UserWarningr   simplefilterrE   r   r   <module>rO      s3   " " " " " "  				   % % % % % % SW< < < < <   8 	+ + + + +@    0       {     h 7 8 8 8  h 0 1 1 1 1 1r   