
    2yi                        d dl mZ d dlmZmZmZ erd dlZd dlmZ 	 d dl	m
Z d dlmZ erd dlmZ d d	lmZ d d
lmZ d dlmZ d dlmZ  G d de      Zedd       Zedd       Zy# e$ r	 d dl	mZ Y Qw xY w)    )annotations)TYPE_CHECKINGSequence	TypedDictN)Markup)pass_context)contextfilter)normalize_url)ExtraScriptValue)MkDocsConfig)File)
Navigation)Pagec                  h    e Zd ZU ded<   ded<   ded<   ded<   ded	<   ded
<   ded<   ded<   ded<   y)TemplateContextr   navzSequence[File]pagesstrbase_urlzSequence[str]	extra_cssextra_javascriptmkdocs_versionzdatetime.datetimebuild_date_utcr   configzPage | NonepageN)__name__
__module____qualname____annotations__     X/var/www/html/content_weaver/venv/lib/python3.12/site-packages/mkdocs/utils/templates.pyr   r      s6    	OM##%%
r!   r   c                <    t        t        |      | d   | d         S )z$A Template filter to normalize URLs.r   r   )r   base)r
   r   )contextvalues     r"   
url_filterr'   %   s      U'&/
@STTr!   c                    d}t        |t              s3|j                  r|dz  }|j                  r|dz  }|j                  r|dz  }|dz  }t        |      j                  t        | t        |            |      S )z;Converts an ExtraScript value to an HTML <script> tag line.z<script src="{0}"z type="{1.type}"z deferz asyncz
></script>)
isinstancer   typedeferasync_r   formatr'   )r%   extra_scripthtmls      r"   script_tag_filterr0   +   sz     DlC(&&DHDHDLD$<z'3|3DE|TTr!   )r%   r   r&   r   returnr   )r%   r   r.   r   r1   r   )
__future__r   typingr   r   r   datetime
markupsafer   jinja2r   r	   ImportErrormkdocs.utilsr
   mkdocs.config.config_optionsr   mkdocs.config.defaultsr   mkdocs.structure.filesr   mkdocs.structure.navr   mkdocs.structure.pagesr   r   r'   r0   r    r!   r"   <module>r>      s    " 5 5 %4 '=3+/+	i 	 U U
 U UA  %$%s   A( (A65A6