
    fg|                         d dl mZmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
mZmZmZ g dZd Ze ed	       G d
 d                    Ze ed	       G d d                    Ze ed	       G d d                    Zy)    )	dataclassfield)Any)flatatt)static)format_html	html_safejson_script	mark_safe)CSSJSJSONr   c                 >    | j                  d      r| S t        |       S )N)zhttp://zhttps:///)
startswithr   )paths    E/var/www/rossjtaylor/venv/lib/python3.12/site-packages/js_asset/js.pystatic_if_relativer      s    ??#?@4RfTlR    T)eqc                   B    e Zd ZU eed<    edd      Zeed<   d Zd Z	y)	r   srcFTdefaultkw_onlyinlinec                 4    t        | j                               S Nhash__str__selfs    r   __hash__zCSS.__hash__       DLLN##r   c                     | j                   rt        d| j                        S t        dt        | j                              S )Nz<style>{}</style>z!<link rel="stylesheet" href="{}">)r   r   r   r   r"   s    r   r!   zCSS.__str__   s7    ;;2DHH==/1CDHH1M
 	
r   N)
__name__
__module____qualname__str__annotations__r   r   boolr$   r!    r   r   r   r      s$     
H5FD5$
r   r   c                   J    e Zd ZU eed<    ee      Zeeef   ed<   d Z	d Z
y)r   r   )default_factoryattrsc                 4    t        | j                               S r   r   r"   s    r   r$   zJS.__hash__'   r%   r   c           	      z    t        dt        | j                        t        t	        | j
                                    S )Nz<script src="{}"{}></script>)r   r   r   r   r   r0   r"   s    r   r!   z
JS.__str__*   s/    *txx(gdjj)*
 	
r   N)r'   r(   r)   r*   r+   r   dictr0   r   r$   r!   r-   r   r   r   r   !   s*     
H!$7E4S>7$
r   r   c                   R    e Zd ZU eeef   ed<    edd      Zedz  ed<   d Z	d Z
y)	r   data Tr   Nidc                 4    t        | j                               S r   r   r"   s    r   r$   zJSON.__hash__8   r%   r   c                 B    t        | j                  | j                        S r   )r
   r5   r7   r"   s    r   r!   zJSON.__str__;   s    499dgg..r   )r'   r(   r)   r3   r*   r   r+   r   r7   r$   r!   r-   r   r   r   r   2   s1     sCx.2t4Bd
4$/r   r   N)dataclassesr   r   typingr   django.forms.utilsr   django.templatetags.staticr   django.utils.htmlr   r	   r
   r   __all__r   r   r   r   r-   r   r   <module>r@      s    (  & - L L *S 
d
 
  
 
d
 
  
 
d/ /  /r   