
    Xh                    T   d dl mZ d dlmZ 	 d dlmZ 	 d dlmZmZm	Z	 d Z G d dej                   e      Z G d	 d
ej$                  e      Z G d dej(                  e      Z G d dej,                  e      ZeeeedZy# e
$ r	 exZxZ	ZY pw xY w# e
$ r d dlmZ d dlmZ	 Y w xY w)    )annotations)frontend)Command)	BaseErrorOptionError
SetupError)DistutilsSetupErrorc                H    |dk(  sJ t        |t              st        d      y)ag  Validate the ``message_extractors`` keyword argument to ``setup()``.

    :param dist: the distutils/setuptools ``Distribution`` object
    :param name: the name of the keyword argument (should always be
                 "message_extractors")
    :param value: the value of the keyword argument
    :raise `DistutilsSetupError`: if the value is not valid
    message_extractorszDthe value of the "message_extractors" parameter must be a dictionaryN)
isinstancedictr   )distnamevalues      V/var/www/html/myenv/lib/python3.12/site-packages/babel/messages/setuptools_frontend.pycheck_message_extractorsr      s2     ''''eT"R
 	
 #    c                      e Zd ZdZy)compile_cataloga  Catalog compilation command for use in ``setup.py`` scripts.

    If correctly installed, this command is available to Setuptools-using
    setup scripts automatically. For projects using plain old ``distutils``,
    the command needs to be registered explicitly in ``setup.py``::

        from babel.messages.setuptools_frontend import compile_catalog

        setup(
            ...
            cmdclass = {'compile_catalog': compile_catalog}
        )

    .. versionadded:: 0.9
    N__name__
__module____qualname____doc__ r   r   r   r   #       r   r   c                      e Zd ZdZy)extract_messagesa  Message extraction command for use in ``setup.py`` scripts.

    If correctly installed, this command is available to Setuptools-using
    setup scripts automatically. For projects using plain old ``distutils``,
    the command needs to be registered explicitly in ``setup.py``::

        from babel.messages.setuptools_frontend import extract_messages

        setup(
            ...
            cmdclass = {'extract_messages': extract_messages}
        )
    Nr   r   r   r   r   r   5       r   r   c                      e Zd ZdZy)init_cataloga  New catalog initialization command for use in ``setup.py`` scripts.

    If correctly installed, this command is available to Setuptools-using
    setup scripts automatically. For projects using plain old ``distutils``,
    the command needs to be registered explicitly in ``setup.py``::

        from babel.messages.setuptools_frontend import init_catalog

        setup(
            ...
            cmdclass = {'init_catalog': init_catalog}
        )
    Nr   r   r   r   r!   r!   E   r   r   r!   c                      e Zd ZdZy)update_cataloga  Catalog merging command for use in ``setup.py`` scripts.

    If correctly installed, this command is available to Setuptools-using
    setup scripts automatically. For projects using plain old ``distutils``,
    the command needs to be registered explicitly in ``setup.py``::

        from babel.messages.setuptools_frontend import update_catalog

        setup(
            ...
            cmdclass = {'update_catalog': update_catalog}
        )

    .. versionadded:: 0.9
    Nr   r   r   r   r#   r#   U   r   r   r#   )r   r   r!   r#   N)
__future__r   babel.messagesr   
setuptoolsr   setuptools.errorsr   r   r   ImportError	Exceptiondistutils.cmddistutils.errorsr	   r   CompileCatalogr   ExtractMessagesr   InitCatalogr!   UpdateCatalogr#   COMMANDSr   r   r   <module>r1      s    " #C"9HH
 h--w $x//  8''  X++W & '( $	y  9/888j99  C%BCs.   B 
B BB BB B'&B'