Searches for translations files matching [catalog].[lang].[format]

    Traverses TRANZ_LOCALE_PATHS:
    -
    | TRANZ_LOCALE_PATHS
     +- messages.fr.yml
      | messages.en.yml

    And apps paths if TRANZ_SEARCH_LOCALE_IN_APPS is set to True):
    -
    | app_path
    +- TRANZ_DIR_NAME
     +- messages.fr.yml
      | messages.en.yml

    @rtype: list
    @return: A list of all found translation files

def discover_resources():
    """
    Searches for translations files matching [catalog].[lang].[format]

    Traverses TRANZ_LOCALE_PATHS:
    -
    | TRANZ_LOCALE_PATHS
     +- messages.fr.yml
      | messages.en.yml

    And apps paths if TRANZ_SEARCH_LOCALE_IN_APPS is set to True):
    -
    | app_path
    +- TRANZ_DIR_NAME
     +- messages.fr.yml
      | messages.en.yml

    @rtype: list
    @return: A list of all found translation files
    """
    locale_discovery_paths = list(settings.TRANZ_LOCALE_PATHS)
    if settings.TRANZ_SEARCH_LOCALE_IN_APPS:
        locale_discovery_paths += [os.path.join(app.path, settings.TRANZ_DIR_NAME) for app in list(apps.app_configs.values())]
        
    APP_LANGUAGES = [l[0] for l in settings.TRANZ_LANGUAGES]

    resources = []
    for path in locale_discovery_paths:
        if not os.path.isdir(path):
            continue

        # Try to match direct children or discovery paths
        for file in os.listdir(path):
            if os.path.isfile(os.path.join(path, file)):
                try:
                    domain, lang, format = file.split('.')
                except ValueError as e:
                    continue
                resources.append((format, os.path.join(path, file), lang, domain))
        
        
        # Try to match django's LC_MESSAGES directories
        if settings.TRANZ_REPLACE_DJANGO_TRANSLATIONS:
            for lang in APP_LANGUAGES:
                if os.path.isdir(os.path.join(path, lang)):
                    LC_MESSAGES_PATH = os.path.join(path, lang, 'LC_MESSAGES')
                    if os.path.isdir(LC_MESSAGES_PATH):
                        for file in os.listdir(LC_MESSAGES_PATH):
                            try:
                                domain, format = file.split('.')
                            except ValueError as e:
                                continue
                            resources.append((format, os.path.join(LC_MESSAGES_PATH, file), lang, domain))
    return resources