o
    d	                     @   s>   d d Z dd Zdd Zdd Zdd	 ZdddZdd ZdS )c                 C      | dv S )N)nodeelement valuer   r   d/var/www/html/visualizacion-main/env/lib/python3.10/site-packages/dash/development/_collect_nodes.pyis_node      r   c                 C   r   )Nshapeexactr   r   r   r   r   is_shape   r	   r   c                 C   s~   | d }t |r|| |S |dv rt| d |d |}|S |dkr/t| d |d |}|S |dkr=t| d |d |}|S )Nnamer
   r   []unionobjectOf)r   appendcollect_nodescollect_unioncollect_object)a_valuebasenodesa_typer   r   r   collect_array	   s   
r   c                 C   s~   | D ]:}t |d r|| qt|d rt|d ||}q|d dkr.t|d ||}q|d dkr<t|d ||}q|S )Nr   r   arrayOfr   )r   r   r   r   r   r   )	type_listr   r   tr   r   r   r      s   r   c                 C   s~   |  d}|d }t|r|| |S t|r$t|  di ||}|S |dkr3t|  d||}|S |dkr=t| ||}|S )Nr   {}r   r   r   )getr   r   r   r   r   r   )o_valuer   r   o_nameo_keyr   r   r   r   #   s   

r    Nc           
      C   s   |pg }|   D ]`\}}|d|}|d}|r!| d| }n|}t|r-|| q|dkr>|d|}t|||}qt|rKt|d ||}q|dkrXt|d ||}q|dkrh|di }	t|	||}q|S )Ntyper   .r   r   r   r   )	itemsr   r   r   r   r   r   r   r   )
metadatar   r   	prop_namer   t_valuep_typekeyr   r    r   r   r   r   1   s*   
r   c                 C   s   dd | D S )Nc                    s&   g | ] t  fd ddD s qS )c                 3   s    | ]}| v V  qd S )Nr   ).0enr   r   	<genexpr>N   s    z/filter_base_nodes.<locals>.<listcomp>.<genexpr>)r   r%   r   )any)r,   r   r.   r   
<listcomp>N   s   & z%filter_base_nodes.<locals>.<listcomp>r   )r   r   r   r   filter_base_nodesM   s   r3   )r#   N)r   r   r   r   r   r   r3   r   r   r   r   <module>   s    
