
    e(                        d dl Z d dlmZ 	 d dlZ eej                  Zn# e$ r dZY nw xY we j        	                    edu d          Z
d dlZd dlZd dlmZ d dlmZmZ ddiZd	d
ddiZd	d
d
diZddid
dddddddddddddddddddgiddddd d!ddd"d#Zd	d
d
d$id%d&id'd(id)d*d+d,d-d.d/d0d1id d2d3d0d1id d2d4d5d)d'd6iid5d7d8Zd	d
d
d$id%d&id'd(id)d*d+d9d-d.d/d0d1id d2d3d0d1id d2d4d5d)d'd6id:gd5d;d<Zdd
d=ddid>d?d@dAdBdCdDdEd dFdid'dGid"d?dHdIdJdKdLdMdNdOdPdQgdPdRgdSdTgdUdVgdWdXgdPdQgggdYdZgd[id\Zd	dd
d$id]d^idDd-d_d`dadbdcdddedfd^dgdJdOdhdigdhdjgdkdjgdkdigdhdigggdYdldmdJdOdhdngdhdogdkdogdkdngdhdngggdYdldpdJdOdqdngdqdogdrdogdrdngdqdngggdYdlgidsZdt Zdu Zdv Zdw Zdx Z dy Z!dz Z"e
d{             Z#e
d|             Z$dS )}    N)Versionzrequires altair)reason)VegaPlot)PaneBaseVega$schema viewi,  i  )continuousHeightcontinuousWidthtooltip)heightwidth)markr
   valuesA   xyB   C   D   E   barordinalr   )typefieldquantitativer   z3https://vega.github.io/schema/vega-lite/v3.2.1.json)configdatar   encodingr   )r   r   urlzJhttps://raw.githubusercontent.com/vega/vega/master/docs/data/penguins.jsonr!   pointbrushSpeciesnominal)	selectionr"   r!   	lightgray)	conditionvaluezBeak Length (mm)zeroF)r"   scaler!   zBeak Depth (mm))colorr   r      intervalz4https://vega.github.io/schema/vega-lite/v4.17.0.json)r$   r%   r   r&   r   r,   r   r   )paramr"   r!   )nameselectz3https://vega.github.io/schema/vega-lite/v5.6.1.json)r$   r%   r   r&   r   paramsr   r   )r   r   )r
   r   z%data-2f2c0ff233b8675aa09202457ebe7506featuresjson)propertyr!   )r6   formatgeoshaper2   zproperties.percent_no_internet	albersUsaFeatureCollection0FeaturezAutauga County, Alabamag*d?gW'?)r6   percent_no_internetpercent_no_internet_normalizedPolygongؼZUgG&jiZ@@gՔd4@@g@rUgLx$,@@gϷKUg؀q+@@g-=Ug_T@@)r!   coordinates)idr!   
propertiesgeometry)r!   r9   )r$   r%   r   r&   
projectionr   datasetsr6   z%data-778223ce4ff5da49611148b060c0cd3dwhite)r!   fillstrokeiX  Tidentity)reflectYr!   i   z3https://vega.github.io/schema/vega-lite/v4.0.0.jsonzSR01-01g      ^@g     @g     @g      4@)bidr!   rH   zSR02-02g     `@g     @zSR03-03g      n@g     a@)r$   r%   r   r   rI   r   r   rJ   c                  J    t          j        t                    t          u sJ d S N)r   get_pane_typevega_exampler        :lib/python3.11/site-packages/panel/tests/pane/test_vega.py!test_get_vega_pane_type_from_dictrX      s$    !,//4777777rV   c                    t          j        t                    }|                    | |          }t	          |t
                    sJ t          t          i           }t          |j        fi t          t          |fi t          k    sJ |j	        d         j        }t          j        |d         t          j        g d                    sJ t          j        |d         t          j        g d                    sJ t          t          d	          }d
|d         d         d         d<   ||_        t          |i           }|j        |k    sJ |j	        d         j        }t          j        |d         t          j        g d                    sJ t          j        |d         t          j        g d                    sJ |                    |           |j        i k    sJ d S )Ncommr%   r%   r   r   r   r   r   r   r   r   r   r   r   r   r(   )r   r   r   r   r   r   r   r   r   )pnpanelrT   get_root
isinstancer   dictr%   blank_schemadata_sourcesnparray_equalarrayobject_cleanup_models)documentr[   panemodelexpectedcds_datapoint_examples          rW   test_vega_paners      s   8L!!D MM(M..EeX&&&&&Lr***H
++l++tH/M/M/M/MMMMM!&).H>(3-2K2K2K)L)LMMMMM>(3-///)B)BCCCCCG444M.1M&(#A&s+DKR000M:&&&&!&).H>(3-2K2K2K)L)LMMMMM>(3-///)B)BCCCCCMM%<2rV   c                     t          j        t                    }|                    | |          }t	          |t
                    sJ |j        i k    sJ d S NrZ   )r`   ra   gdf_examplerb   rc   r   rf   rm   r[   rn   ro   s       rW   test_vega_geometry_datarx      sZ    8K  D MM(M..EeX&&&&& ######rV   c                 V   t          j        t                    }|                    | |          }t	          |t
                    sJ t          |j        fi t          t          t          fi t          k    sJ |j	        i k    sJ |
                    |           |j        i k    sJ d S ru   )r`   ra   vega_inline_examplerb   rc   r   rd   r%   re   rf   rk   rl   rw   s       rW   test_vega_pane_inliner{      s    8'((D MM(M..EeX&&&&&
++l++t4G/X/X</X/XXXXX####MM%<2rV   c                 L    t          t                    }|j        ddik    sJ d S Nr)   r4   )r   vega4_selection_example_selectionsrm   r[   vegas      rW   test_vega_lite_4_selection_specr      /    '((D4444444rV   c                 L    t          t                    }|j        ddik    sJ d S r}   )r   vega5_selection_exampler   r   s      rW   test_vega_lite_5_selection_specr      r   rV   c            	          dd l }  | j        dddddddddd	d
ddddg          } | j        |                                                              dd          }|S )Nr   r   r   r   r   r   r   r   r   r   r   r   )r   zx:Ozy:Q)altairDataChartmark_barencode)altr%   charts      rW   altair_exampler     s    38#A.."%A.."%A.."%A.."%A..	0 1 1 1D
 CIdOO$$&&--

 .  E LrV   c                  X    t          j        t                                t          u sJ d S rR   )r   rS   r   r   rU   rV   rW   #test_get_vega_pane_type_from_altairr     s*    !."2"233t;;;;;;rV   c                 L   t          t                                }|                    | |          }t          |t                    sJ t          t          i           }t          t          d          k    rddi|d<   t          |d<   n"t          t          d          k    r
t          |d<   t          |j        fi t          t          |fi t          k    sJ |j        d	         j        }t          j        |d
         t          j        g d                    sJ t          j        |d         t          j        g d                    sJ t                      }d|_        d|j        j        d         d
<   ||_        t          t          i d          }t          t          d          k    rddi|d<   t          |d<   n"t          t          d          k    r
t          |d<   t          |j        fi t          t          |fi t          k    sJ |j        d	         j        }t          j        |d
         t          j        g d                    sJ t          j        |d         t          j        g d                    sJ |                    |           |j        i k    sJ d S )NrZ   r\   z5.0.0rc1r!   r   r   r$   z4.0.0r%   r   r]   r   r^   r(   r   r   )r%   r   r_   )r   r   rb   rc   r   rd   rT   altair_versionr   vega5_configvega4_configr%   re   rf   rg   rh   ri   r   r   rj   rk   rl   )rm   r[   rn   ro   rp   rq   r   rr   s           rW   test_altair_paner     s     !!D MM(M..EeX&&&&&Lr***H,,,,"E?)	77++	+	+)
++l++tH/M/M/M/MMMMM!&).H>(3-2K2K2K)L)LMMMMM>(3-///)B)BCCCCCEEJ #EJaDKBg>>>M,,,,!' 1f".h	77++	+	+".h
++l++tM/R/R\/R/RRRRR!&).H>(3-2K2K2K)L)LMMMMM>(3-///)B)BCCCCCMM%<2rV   )%pytestpackaging.versionr   r   r   __version__r   	Exceptionr   skipifaltair_availablenumpyrg   ra   r`   panel.models.vegar   
panel.paner   r   re   r   r   rT   r~   r   rz   rv   rX   rs   rx   r{   r   r   r   r   r   rU   rV   rW   <module>r      s    % % % % % %WS_--NN   
CCC ;%%cTk:K%LL          & & & & & & % % % % % % % %2SSIIJSSIIJ D!--  c**!**!**!**!**	, -
 (377-<<> >D " 3CHHI`aW %"! 
 !" " (e_"
 
 'e_"$ $ $ FJ/0E3  : 3CHHI`aW !"! 
 !" " (e_"
 
 'e_"$ $ $ FJ+?@@AD3  < --D!# # =$.??A A"5
 
 ;'D/'"6,>7I K  K
 ''19&='19&='19&='19&='19&='19&=&? %@  2
 2
& & R 3CHHI<=HH#Z88D/ !%	)$	 	  !!%	)$	 	  !!%	)$	 	 ;+2
-6 6p8 8 8  6$ $ $  5 5 55 5 5   < < < # # # # #s   ! ++