# Исходный код data.environment

    """Модуль environment содержит настройки окружения и URL-адресов.

    Класс Environment предоставляет методы для работы с окружением,
    токенами и URL-адресами API.
    """

    import os
    from typing import Dict

    class Environment:
        """Управление окружением, URL-адресами и токенами.

        Атрибуты класса:
            TEST (str): Константа для тестового окружения.
            DEVELOP (str): Константа для dev-окружения.
            URLS (Dict[str, str]): Словарь URL для разных окружений.
        """

        TEST: str = 'test'
        DEVELOP: str = 'develop'

        URLS: Dict[str, str] = {
            TEST: 'http://192.168.2.76/',
            DEVELOP: 'http://192.168.2.69/'
        }

        def __init__(self) -> None:
            """Инициализирует объект окружения и токены."""

            try:
                self.env: str = os.getenv('ENV', self.TEST)
                self.current_user_credential = {}
            except KeyError:
                self.env: str = self.TEST

        def get_base_url(self) -> str:
            """Возвращает базовый URL для текущего окружения.

            Возвращает:
                str: Базовый URL с путем для теста или без него.
            """

            if self.env in self.URLS:
                # if self.env == self.TEST:
                #     return self.URLS[self.env] + "e-nms-ui/"
                return self.URLS[self.env]
            raise Exception(f"Unknown value of ENV variable {self.env}")

        def get_env_name(self) -> str:
            """Возвращает имя текущего окружения.

            Возвращает:
                str: имя текущего окружения.
            """
            return self.env

        def get_request_url(self) -> str:
            """Возвращает URL для API-запросов.

            Возвращает:
                str: URL для API-запросов.
            """

            if self.env in self.URLS:
                return self.URLS[self.env]
            raise Exception(f"Unknown value of ENV variable {self.env}")

        def set_current_user_credential(self, credential: {}) -> None:
            """Сохраняет учетные данные текущего пользователя.

            Аргументы:
                credential ({}): Учетные данные текущего пользователя.
            """

            self.current_user_credential = credential

        def get_access_token(self) -> str:
            """Возвращает текущий токен доступа.

            Возвращает:
                str: Текущий токен доступа.
            """

            return self.current_user_credential.get("access_token")

        def get_current_user_name(self) -> str:
            """Возвращает имя текущего пользователя.

            Возвращает:
                str: Имя текущего пользователя.
            """

            return self.current_user_credential.get("login")

        def get_current_user_role(self) -> str:
            """Возвращает роль текущего пользователя.

            Возвращает:
                str: Роль текущего пользователя.
            """

            return self.current_user_credential.get("role")

        def get_current_user_id(self) -> str:
            """Возвращает id текущего пользователя.

            Возвращает:
                str: id текущего пользователя.
            """

            return self.current_user_credential.get("$id")

        def get_current_user_credential(self) -> {}:
            """Возвращает учетные данные текущего пользователя."""

            return self.current_user_credential

    host: Environment = Environment()