File: //home/arjun/projects/env/lib/python3.10/site-packages/wtforms/__pycache__/i18n.cpython-310.pyc
o
"we� � @ sH d dl Z dd� Zddd�Zdefdd�ZG dd � d �ZG d
d� d�ZdS )
� Nc C s6 t j�t�} t j�t j�| �d�}t j�|�sd}|S )zJ
Determine the path to the 'messages' directory as best possible.
�localez/usr/share/locale)�os�path�abspath�__file__�join�dirname�exists)�module_path�locale_path� r �E/home/arjun/projects/env/lib/python3.10/site-packages/wtforms/i18n.py�
messages_path s
r c C s ddl }|�dt� | �S )a
Get a gettext.GNUTranslations object pointing at the
included translation files.
:param languages:
A list of languages to try, in order. If omitted or None, then
gettext will try to use locale information from the environment.
r N�wtforms)�gettext�translationr )� languagesr r r r
�get_builtin_gnu_translations s r c C s || �S )a
Get a WTForms translation object which wraps a low-level translations object.
:param languages:
A sequence of languages to try, in order.
:param getter:
A single-argument callable which returns a low-level translations object.
r )r �getterr r r
�get_translations s r c @ s( e Zd ZdZdd� Zdd� Zdd� ZdS ) �DefaultTranslationszf
A WTForms translations object to wrap translations objects which use
ugettext/ungettext.
c C s
|| _ d S �N)�translations)�selfr r r r
�__init__/ s
zDefaultTranslations.__init__c C s | j �|�S r )r �ugettext�r �stringr r r
r 2 s zDefaultTranslations.gettextc C s | j �|||�S r )r � ungettext�r �singular�plural�nr r r
�ngettext5 s zDefaultTranslations.ngettextN)�__name__�
__module__�__qualname__�__doc__r r r# r r r r
r ) s
r c @ s e Zd ZdZdd� Zdd� ZdS )�DummyTranslationsz�
A translations object which simply returns unmodified strings.
This is typically used when translations are disabled or if no valid
translations provider can be found.
c C s |S r r r r r r
r A s zDummyTranslations.gettextc C s |dkr|S |S )N� r r r r r
r# D s zDummyTranslations.ngettextN)r$ r% r&