U
    aR…f¹  ã                   @   s@   d dl mZ d dlmZ d dlmZ dd„ Zdd„ Zdd	„ Zd
S )é    ©ÚPath)ÚLocal)Úappsc                 C   s   | j  d¡S )z7Return True if the given module is nested under Django.zdjango.)Ú__name__Ú
startswith)Úmodule© r	   úE/tmp/pip-unpacked-wheel-h5u0nwyp/django/utils/translation/reloader.pyÚ_is_django_module   s    r   c                 K   sd   ddl m} |jr`tdƒg}| dd„ t ¡ D ƒ¡ | dd„ |jD ƒ¡ |D ]}|  |d¡ qNdS )	z?Register file watchers for .mo files in potential locale paths.r   )ÚsettingsÚlocalec                 s   s&   | ]}t |jƒst|jƒd  V  qdS )r   N)r   r   r   Úpath)Ú.0Úconfigr	   r	   r
   Ú	<genexpr>   s   
þz0watch_for_translation_changes.<locals>.<genexpr>c                 s   s   | ]}t |ƒV  qd S )Nr   )r   Úpr	   r	   r
   r      s     z**/*.moN)	Zdjango.confr   ZUSE_I18Nr   Úextendr   Zget_app_configsZLOCALE_PATHSZ	watch_dir)ÚsenderÚkwargsr   Údirectoriesr   r	   r	   r
   Úwatch_for_translation_changes   s    

þr   c                 K   s@   |j dkr<ddl}ddlm} i |_i |_d|_tƒ |_dS dS )z@Clear the internal translations cache if a .mo file is modified.z.mor   N)Ú
trans_realT)ÚsuffixÚgettextZdjango.utils.translationr   Ú_translationsÚ_defaultr   Ú_active)r   Ú	file_pathr   r   r   r	   r	   r
   Útranslation_file_changed   s    
r   N)	Úpathlibr   Zasgiref.localr   Zdjango.appsr   r   r   r   r	   r	   r	   r
   Ú<module>   s
   