
    ue_                        d dl Z d dlZd dlmZmZmZ d dlZd dlZd dlZd dl	Z	d dl
Z
ddlmZ d Zd Zdej        v Zej                            ej                            ej                            e                    d          Z e
j        e          Z e
j        ed	
          Zd                    e          ZddZ	 	 	 	 	 	 	 ddZd ZddZd Z	 	 	 	 	 	 	 	 	 	 	 	 	 ddZ dS )    N)realpathjoindirname   )DECKGL_SEMVERc                  l    	 t                      } |                     d          S # t          $ r Y dS w xY w)NkernelF)get_ipython	has_trait	NameError)ips    .lib/python3.11/site-packages/pydeck/io/html.py
in_jupyterr      sD    ]]||H%%%   uus   "% 
33c                 B    t          |           t          k    r| S | rdndS )Ntruefalse)typebool)py_bools    r   convert_js_boolr      s'    G}})66')    zgoogle.colabz./templates/T)loadertrim_blockszEhttps://cdn.jsdelivr.net/npm/@deck.gl/jupyter-widget@{}/dist/index.jsFc                    t          j        d          }|r8t          d                    |                     d                    |          S | rud}t	          t          t          t                    |          dd          5 }|                                }d d d            n# 1 swxY w Y   d	                    |          S d
                    t                    S )NPYDECK_DEV_PORTzRpydeck running in development mode, expecting @deck.gl/jupyter-widget served at {}z<script type='text/javascript' src='http://localhost:{dev_port}/dist/index.js'></script>
<script type='text/javascript' src='http://localhost:{dev_port}/dist/index.js.map'></script>
)dev_portz../nbextension/static/index.jsrutf-8encodingz*<script type='text/javascript'>{}</script>z<script src='{}'></script>)
osgetenvprintformatopenr   r   __file__readCDN_URL)offliner   RELPATH_TO_BUNDLEfilejss        r   
cdn_pickerr-   &   s   y*++H $biijrsstttm
&(&
#
#	$  G<$wx((*;<<cGTTT 	X\B	 	 	 	 	 	 	 	 	 	 	 	 	 	 	;BB2FFF'..w777s   B&&B*-B*c           
      
   t                               d          }t                               d          }	|	                    |          }
|                    ||| t          |          t	          |          |
||          }|S )Nzindex.j2zstyle.j2)css_background_color)r)   )
mapbox_keygoogle_maps_key
json_inputdeckgl_jupyter_widget_bundletooltipcss_textcustom_librariesconfiguration)j2_envget_templaterenderr-   r   )r2   r0   r1   r4   r/   r6   r7   r)   r,   cssr5   html_strs               r   render_json_to_htmlr=   8   s     
		Z	(	(B


j
)
)Czz/CzDDHyy'%/%@%@%@(()#  	 	H Or   c                     d                     |           }t          j        d           t          j        |           dS )zGConverts HTML into a temporary file and opens it in the system browser.z	file://{}g      ?N)r$   timesleep
webbrowserr%   )filenameurls     r   display_htmlrD   R   s8    


X
&
&CJsOOOOCr   100%  c                 $   t          |t                    rd| d}t          j        |           }d| d| d| d}ddlm} t          j                    5  d}t          j        d	|
            ||          cd d d            S # 1 swxY w Y   d S )N"z#
        <iframe
            width=z
            height=z1
            frameborder="0"
            srcdoc="z"
        ></iframe>
    r   )HTMLz-Consider using IPython.display.IFrame insteadignore)message)	
isinstancestrhtmlescapeIPython.displayrI   warningscatch_warningsfilterwarnings)r<   widthheightsrcdociframerI   msgs          r   iframe_with_srcdocrY   Z   s   % E[""F   
   F %$$$$$		 	"	"  =#6666tF||                 s   #BB	B	c                     ddl m}m} d| d| d}t           ||                     t           ||                      d S )Nr   )rI   
Javascriptz$google.colab.output.setIframeHeight(z, true, {minHeight: z}))rP   rI   r[   display)r<   iframe_heightrI   r[   js_height_snippets        r   render_for_colabr_   p   si    00000000u}uucpuuuJJ())***DDNNr   c           
         t          | |||	||
||          }|rbt          |dd          5 }|                    |           ddd           n# 1 swxY w Y   |r!t          t	          |j                             |t                      }t          rt          ||           dS |s|r|S |rt          |||          S dS )z,Converts deck.gl format JSON to an HTML page)r0   r1   r4   r/   r6   r7   r)   zw+r   r   N)
r=   r%   writerD   r   namer   in_google_colabr_   rY   )	deck_jsonr0   r1   rB   open_browsernotebook_displayr/   r]   iframe_widthr4   r6   r7   	as_stringr)   r<   fs                   r   deck_to_htmlrj   x   s@   " #'1)#	 	 	H  +(D7333 	qGGH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	  	+!&))***%<< I=111t I) I	 I!(L-HHHI Is   AAA)F)NNTNNNF)rE   rF   )NNNFNNrF   rE   TNNFF)!rN   r!   os.pathr   r   r   sysr?   rQ   rA   jinja2frontend_semverr   r   r   modulesrc   pathabspathr&   TEMPLATES_PATHFileSystemLoader	j2_loaderEnvironmentr8   r$   r(   r-   r=   rD   rY   r_   rj    r   r   <module>rw      s    				 + + + + + + + + + + 



        + + + + + +  * * * !CK/ bgoobgooh.G.GHH.YY#F#N33			9$	?	?	?
Q
X
XYf
g
g8 8 8 8(    4     ,   ,I ,I ,I ,I ,I ,Ir   