U
    TZf                     @   s(   d dl mZ d dlZG dd deZdS )    )BaseTraceHierarchyTypeNc                       s   e Zd ZdZdZdddhZedd Zejdd Zed	d
 Z	e	jdd
 Z	edd Z
e
jdd Z
edd Zd fdd	Z  ZS )	ConnectorZ	waterfallzwaterfall.connectorlinemodevisiblec                 C   s   | d S )a*  
        The 'line' property is an instance of Line
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.waterfall.connector.Line`
          - A dict of string/value properties that will be passed
            to the Line constructor

            Supported dict properties:

                color
                    Sets the line color.
                dash
                    Sets the dash style of lines. Set to a dash
                    type string ("solid", "dot", "dash",
                    "longdash", "dashdot", or "longdashdot") or a
                    dash length list in px (eg "5px,10px,2px,2px").
                width
                    Sets the line width (in px).

        Returns
        -------
        plotly.graph_objs.waterfall.connector.Line
        r    selfr   r   J/tmp/pip-unpacked-wheel-5ksk5baj/plotly/graph_objs/waterfall/_connector.pyr      s    zConnector.linec                 C   s   || d< d S )Nr   r   r	   valr   r   r
   r   *   s    c                 C   s   | d S )a  
        Sets the shape of connector lines.

        The 'mode' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['spanning', 'between']

        Returns
        -------
        Any
        r   r   r   r   r   r
   r   0   s    zConnector.modec                 C   s   || d< d S )Nr   r   r   r   r   r
   r   ?   s    c                 C   s   | d S )z
        Determines if connector lines are drawn.

        The 'visible' property must be specified as a bool
        (either True, or False)

        Returns
        -------
        bool
        r   r   r   r   r   r
   r   E   s    zConnector.visiblec                 C   s   || d< d S )Nr   r   r   r   r   r
   r   S   s    c                 C   s   dS )Na          line
            :class:`plotly.graph_objects.waterfall.connector.Line`
            instance or dict with compatible properties
        mode
            Sets the shape of connector lines.
        visible
            Determines if connector lines are drawn.
        r   r   r   r   r
   _prop_descriptionsY   s    zConnector._prop_descriptionsNc                    s(  t t| d d|kr&|d | _dS |dkr4i }n4t|| jrJ| }nt|tr`t	|}nt
d|dd| _|dd| _|d	d}|dk	r|n|}|dk	r|| d	< |d
d}|dk	r|n|}|dk	r|| d
< |dd}|dk	r|n|}|dk	r
|| d< | jf t|f| d| _dS )a:  
        Construct a new Connector object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of
            :class:`plotly.graph_objs.waterfall.Connector`
        line
            :class:`plotly.graph_objects.waterfall.connector.Line`
            instance or dict with compatible properties
        mode
            Sets the shape of connector lines.
        visible
            Determines if connector lines are drawn.

        Returns
        -------
        Connector
        Z	connector_parentNzThe first argument to the plotly.graph_objs.waterfall.Connector
constructor must be a dict or
an instance of :class:`plotly.graph_objs.waterfall.Connector`Zskip_invalidF	_validateTr   r   r   )superr   __init__r   
isinstance	__class__Zto_plotly_jsondict_copycopy
ValueErrorpopZ_skip_invalidr   Z_process_kwargs)r	   argr   r   r   kwargsZ_vr   r   r
   r   e   s:    


	
zConnector.__init__)NNNN)__name__
__module____qualname__Z_parent_path_strZ	_path_strZ_valid_propspropertyr   setterr   r   r   r   __classcell__r   r   r   r
   r      s$   







r   )Zplotly.basedatatypesr   Z_BaseTraceHierarchyTyper   r   r   r   r   r   r
   <module>   s   