U
    Qe                     @  s8   d Z ddlmZ ddlZddlZG dd dejjZ	dS )zA Tornado UI module for a terminal backed by terminado.

See the Tornado docs for information on UI modules:
http://www.tornadoweb.org/en/stable/guide/templates.html#ui-modules
    )annotationsNc                   @  sB   e Zd ZdZddddddddZd	d
ddZdd
ddZdS )TerminalzA terminal UI module.P      strint)ws_urlcolsrowsreturnc                 C  s   d| d| d| dS )zRender the module.z.<div class="terminado-container" data-ws-url="z" data-rows="z" data-cols="z"/> )selfr   r	   r
   r   r   1lib/python3.8/site-packages/terminado/uimodule.pyrender   s    zTerminal.renderz	list[str])r   c                 C  s   ddgS )z$Get the list of JS files to include.z/xstatic/termjs/term.jsz/static/terminado.jsr   )r   r   r   r   javascript_files   s    zTerminal.javascript_filesc              
   C  s>   t jt jtd}t|}| W  5 Q R  S Q R X dS )z(Get the embedded JS content as a string.zuimod_embed.jsN)ospathjoindirname__file__openread)r   filefr   r   r   embedded_javascript    s    
zTerminal.embedded_javascriptN)r   r   )__name__
__module____qualname____doc__r   r   r   r   r   r   r   r      s   r   )
r   Z
__future__r   Zos.pathr   Ztornado.webZtornadoZwebZUIModuler   r   r   r   r   <module>   s   