
    -eA                    F   d Z ddlmZ ddlZ ej        e          ZddlmZ ddl	m
Z
mZmZmZmZmZmZ ddlmZ dZe G d	 d
e                      Ze G d de                      Z G d de          Z G d de          Z G d de          Z G d de          ZdS )z Text-related models
    )annotationsN   )abstract)BoolDictEitherIntRequiredStringTuple)Model)AsciiMathMLMathText	PlainTextTeXc                  >     e Zd ZdZd fdZ eed          Z xZS )BaseTextzD
    Base class for renderers of text content of various kinds.
    returnNonec                ~    t          |          dk    rd|vr|d         |d<    t                      j        di | d S )N   textr    )lensuper__init__selfargskwargs	__class__s      1lib/python3.11/site-packages/bokeh/models/text.pyr   zBaseText.__init__9   sL    t99>>fF22!!WF6N""6"""""    z#
    The text value to render.
    helpr   r   )	__name__
__module____qualname____doc__r   r
   r   r   __classcell__r"   s   @r#   r   r   3   sZ         # # # # # # 8F " 	 	 	DDDDDr$   r   c                  $     e Zd ZdZd fdZ xZS )r   z8 Base class for renderers of mathematical content.

    r   r   c                :     t                      j        |i | d S Nr   r   r   s      r#   r   zMathText.__init__J   %    $)&)))))r$   r'   r(   r)   r*   r+   r   r,   r-   s   @r#   r   r   C   sG         
* * * * * * * * * *r$   r   c                  $     e Zd ZdZd fdZ xZS )r   z[ Render mathematical content using `AsciiMath <http://asciimath.org/>`_
    notation.

    r   r   c                :     t                      j        |i | d S r0   r1   r   s      r#   r   zAscii.__init__T   r2   r$   r'   r3   r-   s   @r#   r   r   M   sG         * * * * * * * * * *r$   r   c                  $     e Zd ZdZd fdZ xZS )r   z Render mathematical content using `MathML <https://www.w3.org/Math/>`_
    notation.

    See :ref:`ug_styling_mathtext` in the |user guide| for more information.

    r   r   c                :     t                      j        |i | d S r0   r1   r   s      r#   r   zMathML.__init__`   r2   r$   r'   r3   r-   s   @r#   r   r   W   sG         * * * * * * * * * *r$   r   c            
           e Zd ZdZd
 fdZ ee ee eee	                    d          Z
 edd	          Z xZS )r   a   Render mathematical content using `LaTeX <https://www.latex-project.org/>`_
    notation.

    See :ref:`ug_styling_mathtext` in the |user guide| for more information.

    .. note::
        Bokeh uses `MathJax <https://www.mathjax.org>`_ to render text
        containing mathematical notation.

        MathJax only supports math-mode macros (no text-mode macros). You
        can see more about differences between standard TeX/LaTeX and MathJax
        here: https://docs.mathjax.org/en/latest/input/tex/differences.html

    r   r   c                :     t                      j        |i | d S r0   r1   r   s      r#   r   zTeX.__init__t   r2   r$   aD  
    User defined TeX macros.

    This is a mapping from control sequence names (without leading backslash) to
    either replacement strings or tuples of a replacement string and a number
    of arguments.

    Example:

    .. code-block:: python

        TeX(text=r"\R \rightarrow \R^2", macros={"RR": r"{\bf R}"})

    r%   Fz[
    Whether the math text is inline display or not (for TeX input). Default is False.
    )defaultr&   r'   )r(   r)   r*   r+   r   r   r   r   r   r	   macrosr   inliner,   r-   s   @r#   r   r   c   s          * * * * * * T&&&vs););<< D 	 	 	F T% ' 	 	 	FFFFFr$   r   c                  $     e Zd ZdZd fdZ xZS )r   zG Represents plain text in contexts where text parsing is allowed.

    r   r   c                :     t                      j        |i | d S r0   r1   r   s      r#   r   zPlainText.__init__   r2   r$   r'   r3   r-   s   @r#   r   r      sG         
* * * * * * * * * *r$   r   )r+   
__future__r   logging	getLoggerr(   logcore.has_propsr   core.propertiesr   r   r   r	   r
   r   r   modelr   __all__r   r   r   r   r   r   r   r$   r#   <module>rG      s    # " " " " " g!! & % % % % %                        
	 	 	 	 	u 	 	 
	 
* * * * *x * * 
** * * * *H * * *
* 
* 
* 
* 
*X 
* 
* 
*%	 %	 %	 %	 %	( %	 %	 %	N* * * * * * * * * *r$   