a
    ¢7&bÂ  ã                   @   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h d£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 )ÚTilingZiciclezicicle.tiling>   ÚflipÚpadÚorientationc                 C   s   | d S )aS  
        Determines if the positions obtained from solver are flipped on
        each axis.
    
        The 'flip' property is a flaglist and may be specified
        as a string containing:
          - Any combination of ['x', 'y'] joined with '+' characters
            (e.g. 'x+y')

        Returns
        -------
        Any
        r   © ©Úselfr   r   ú?lib/python3.9/site-packages/plotly/graph_objs/icicle/_tiling.pyr      s    zTiling.flipc                 C   s   || d< d S )Nr   r   ©r	   Úvalr   r   r
   r       s    c                 C   s   | d S )aö  
        When set in conjunction with `tiling.flip`, determines on which
        side the root nodes are drawn in the chart. If
        `tiling.orientation` is "v" and `tiling.flip` is "", the root
        nodes appear at the top. If `tiling.orientation` is "v" and
        `tiling.flip` is "y", the root nodes appear at the bottom. If
        `tiling.orientation` is "h" and `tiling.flip` is "", the root
        nodes appear at the left. If `tiling.orientation` is "h" and
        `tiling.flip` is "x", the root nodes appear at the right.
    
        The 'orientation' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['v', 'h']

        Returns
        -------
        Any
        r   r   r   r   r   r
   r   &   s    zTiling.orientationc                 C   s   || d< d S )Nr   r   r   r   r   r
   r   <   s    c                 C   s   | d S )zÞ
        Sets the inner padding (in px).
    
        The 'pad' property is a number and may be specified as:
          - An int or float in the interval [0, inf]

        Returns
        -------
        int|float
        r   r   r   r   r   r
   r   B   s    z
Tiling.padc                 C   s   || d< d S )Nr   r   r   r   r   r
   r   P   s    c                 C   s   dS )Na          flip
            Determines if the positions obtained from solver are
            flipped on each axis.
        orientation
            When set in conjunction with `tiling.flip`, determines
            on which side the root nodes are drawn in the chart. If
            `tiling.orientation` is "v" and `tiling.flip` is "",
            the root nodes appear at the top. If
            `tiling.orientation` is "v" and `tiling.flip` is "y",
            the root nodes appear at the bottom. If
            `tiling.orientation` is "h" and `tiling.flip` is "",
            the root nodes appear at the left. If
            `tiling.orientation` is "h" and `tiling.flip` is "x",
            the root nodes appear at the right.
        pad
            Sets the inner padding (in px).
        r   r   r   r   r
   Ú_prop_descriptionsV   s    zTiling._prop_descriptionsNc                    s0  t t| ƒ d¡ d|v r&|d | _dS |du r4i }n4t|| jƒrJ| ¡ }nt|tƒr`t 	|¡}nt
dƒ‚| dd¡| _| dd¡| _| d	d¡}|durœ|n|}|dur°|| d	< | d
d¡}|durÈ|n|}|durÜ|| d
< | dd¡}|durô|n|}|dur
|| d< | jf i t|fi |¤Ž¤Ž d| _dS )a1  
        Construct a new Tiling object
        
        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of :class:`plotly.graph_objs.icicle.Tiling`
        flip
            Determines if the positions obtained from solver are
            flipped on each axis.
        orientation
            When set in conjunction with `tiling.flip`, determines
            on which side the root nodes are drawn in the chart. If
            `tiling.orientation` is "v" and `tiling.flip` is "",
            the root nodes appear at the top. If
            `tiling.orientation` is "v" and `tiling.flip` is "y",
            the root nodes appear at the bottom. If
            `tiling.orientation` is "h" and `tiling.flip` is "",
            the root nodes appear at the left. If
            `tiling.orientation` is "h" and `tiling.flip` is "x",
            the root nodes appear at the right.
        pad
            Sets the inner padding (in px).

        Returns
        -------
        Tiling
        ZtilingÚ_parentNz‘The first argument to the plotly.graph_objs.icicle.Tiling 
constructor must be a dict or 
an instance of :class:`plotly.graph_objs.icicle.Tiling`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   k   s:    


ÿ	
zTiling.__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   