U
    /e                     @  s   d Z ddlmZ ddlZeeZddlmZ ddl	m
Z
 ddlmZ er~dd	lmZ dd
lmZmZ ddl	mZ ddlmZ dZd%ddddddddZd&ddddddddd Zd'd!dd"d#d$ZdS )(z

    )annotationsN)TYPE_CHECKING   )run_notebook_hook)curstate   )PathLike)	ResourcesResourcesMode)NotebookType)State)output_fileoutput_notebookreset_output
Bokeh Plotr   strzResourcesMode | NonezPathLike | NoneNone)filenametitlemoderoot_dirreturnc                 C  s   t  j| |||d dS )a   Configure the default output state to generate output saved
    to a file when :func:`show` is called.

    Does not change the current ``Document`` from ``curdoc()``. File and notebook
    output may be active at the same time, so e.g., this does not clear the
    effects of ``output_notebook()``.

    Args:
        filename (str) : a filename for saving the HTML document

        title (str, optional) : a title for the HTML document (default: "Bokeh Plot")

        mode (str, optional) : how to include BokehJS (default: ``'cdn'``)
            One of: ``'inline'``, ``'cdn'``, ``'relative(-dev)'`` or
            ``'absolute(-dev)'``. See :class:`bokeh.resources.Resources` for more details.

        root_dir (str, optional) : root directory to use for 'absolute' resources. (default: None)
            This value is ignored for other resource types, e.g. ``INLINE`` or
            ``CDN``.

    Returns:
        None

    .. note::
        Generally, this should be called at the beginning of an interactive
        session or the top of a script.

    .. warning::
        This output file will be overwritten on every save, e.g., each time
        |show| or |save| is invoked.

    )r   r   r   N)r   r   )r   r   r   r    r   3/tmp/pip-unpacked-wheel-f5fndrjf/bokeh/io/output.pyr   2   s    "r   F  jupyterzResources | Noneboolintr   )	resourcesverbosehide_bannerload_timeoutnotebook_typer   c                 C  s"   t  | t|d| ||| dS )a   Configure the default output state to generate output in notebook cells
    when |show| is called. Note that |show| may be called multiple
    times in a single cell to display multiple objects in the output cell. The
    objects will be displayed in order.

    Args:
        resources (Resource, optional) :
            How and where to load BokehJS from (default: CDN)

        verbose (bool, optional) :
            whether to display detailed BokehJS banner (default: False)

        hide_banner (bool, optional):
            whether to hide the Bokeh banner (default: False)

        load_timeout (int, optional) :
            Timeout in milliseconds when plots assume load timed out (default: 5000)

        notebook_type (string, optional):
            Notebook type (default: jupyter)

    Returns:
        None

    .. note::
        Generally, this should be called at the beginning of an interactive
        session or the top of a script.

    loadN)r   r   r   )r   r   r    r!   r"   r   r   r   r   [   s     r   zState | None)stater   c                 C  s   t    dS )zN Clear the default state of all output modes.

    Returns:
        None

    N)r   reset)r$   r   r   r   r   ~   s    r   )r   NN)NFFr   r   )N)__doc__
__future__r   logging	getLogger__name__logtypingr   Znotebookr   r$   r   Z
core.typesr   r   r	   r
   r   r   __all__r   r   r   r   r   r   r   <module>   s,   

    )      #