o
    NK&h                     @   s`   d dl mZmZ d dlmZmZmZ d dlmZ	 d dl
mZ d dlmZ G dd deedZd	S )
    )ABCabstractmethod)HTMLBuilderDocument)__version__)SVG_LOGO_SIMPLECSSc                   @   s   e Zd ZU dZdZdZeed< eed< dde	ddfd	d
Z
edefddZdefddZdddZdddZedddZdddZdS )BasePagezBase page for Sanic pages.SanicNr
   docTdebugreturnc                 C   s
   || _ d S N)r   )selfr    r   C/var/www/html/venv/lib/python3.10/site-packages/sanic/pages/base.py__init__   s   
zBasePage.__init__c                 C   s   | j S )z_Returns the CSS for the page.

        Returns:
            str: The CSS for the page.
        r	   r   r   r   r   style   s   zBasePage.stylec                 C   s4   t | jddd| _|   |   |   t| jS )zPRenders the page.

        Returns:
            str: The rendered page.
        ensanic)langid)r   TITLEr   _head_body_footstrr   r   r   r   render   s
   
zBasePage.renderc                 C   sT   | j t| j | j j | j | jp| j W d    d S 1 s#w   Y  d S r   )r   r   r   headerdivHEADINGr   r   r   r   r   r   *   s   
"zBasePage._headc              	   C   s  | j js | j d | j j |   W d    n1 sw   Y  | jro| j dt  | j j& tdD ]\}\}}|dkrG|  d | j j||ddd q8W d    n1 s\w   Y  | j d	 W d    d S W d    d S 1 szw   Y  d S )
Nz
powered byzVersion ))Docshttps://sanic.dev)Helpzhttps://sanic.dev/en/help.html)GitHubz"https://github.com/sanic-org/sanicr   z | _blankno-referrerhreftargetreferrerpolicyz
DEBUG mode)r   footerr"   _sanic_logor   VERSION	enumeratea)r   idxtitler+   r   r   r   r   /   s2   




"zBasePage._footc                 C   s   d S r   r   r   r   r   r   r   H   s   zBasePage._bodyc                 C   s   | j jttdddd d S )Nr%   r(   r)   r*   )r   r2   r   r   r   r   r   r   r/   K   s   
zBasePage._sanic_logo)T)r   N)__name__
__module____qualname____doc__r   r#   r   __annotations__r   boolr   propertyr   r    r   r   r   r   r/   r   r   r   r   r   
   s   
 

r   )	metaclassN)abcr   r   html5taggerr   r   r   r   r   r0   sanic.application.logor   sanic.pages.cssr
   r   r   r   r   r   <module>   s    