
    2yi                       d dl mZ d dlZd dlZd dlmZmZ d dlmZm	Z	 d dl
mZ erd dlZ	 d dlmZmZ d dlmZmZ dZ ej,                  e      Zej2                  j5                  ej2                  j7                  e            Z G d
 de	      ZddZ	 	 	 	 	 	 	 	 ddZ 	 	 	 	 	 	 	 	 ddZ!y# e$ r d dlmZmZ d	ZY w xY w)    )annotationsN)TYPE_CHECKINGSequence)	ExtensionInternationalizationExtension)ValidationError)LocaleUnknownLocaleError)NullTranslationsTranslationsTFc                      e Zd Zd Zy)NoBabelExtensionc                j    t        j                  | |       |j                  | j                  d       y )NF)install_null_translationsnewstyle_gettext)r   __init__extend_install_null)selfenvironments     U/var/www/html/content_weaver/venv/lib/python3.12/site-packages/mkdocs/localization.pyr   zNoBabelExtension.__init__   s1    4-&*&8&8" 	 	
    N)__name__
__module____qualname__r    r   r   r   r      s    
r   r   c                    	 t        j                  | d      S # t        t        t        f$ r}t        d|       d }~ww xY w)N_)sepzInvalid value for locale: )r	   parse
ValueErrorr
   	TypeErrorr   )localees     r   parse_localer%   &   sF    @||F,,*I6 @ :1#>??@s    A ;A c                2   t         rl| j                  d       t        |d|      }|| j                  |       y | j	                          |j
                  dk7  rt        j                  d| d       y y | j                  t               | j	                          y )Nzjinja2.ext.i18nlocalesenz/No translations could be found for the locale 'z'. Defaulting to English.)		has_babeladd_extension_get_merged_translationsinstall_gettext_translationsr   languagelogwarningr   )envr#   
theme_dirstranslationss       r   install_translationsr3   -   s     +,/
IvN#,,\:))+$&EfX N- - ' 	*+%%'r   c                   d }t         j                  d| d       |j                  r|j                   d|j                   }n|j                  }t	        |       D ]  }t
        j                  j                  ||      }t        j                  ||g      }t        |      t        u rt         j                  d| d       et        rt        |t              sJ t         j                  d| d       ||}|j                  |        |S )Nz%Looking for translations for locale ''r   zNo translations found here: 'zTranslations found here: ')r.   debug	territoryr-   reversedospathjoinr   loadtyper   r   
isinstancemerge)r1   locales_dirr#   merged_translations
locale_str	theme_dirdirnamer2   s           r   r+   r+   B   s     04II5fXQ?@(&*:*:);<
__
j) 4	'',,y+6#((:,?!11II5gYa@AlL999		.wiq9:&".%%l34  r   )r#   strreturnr	   )r0   zjinja2.Environmentr#   r	   r1   Sequence[str]rF   None)r1   rG   r@   rE   r#   r	   rF   zTranslations | None)"
__future__r   loggingr9   typingr   r   
jinja2.extr   r   mkdocs.config.baser   jinja2
babel.corer	   r
   babel.supportr   r   r)   ImportErrormkdocs.utils.babel_stub	getLoggerr   r.   r:   rD   abspath__file__	base_pathr   r%   r3   r+   r   r   r   <module>rW      s    "  	 * ? .5<I g!GGOOBGGOOH56	
4 
@(	(%+(9F(	(*,/9?_  BIs   B, ,B>=B>