def resolve_user_available_components_version()

in modular_api/index.py [0:0]


def resolve_user_available_components_version(allowed_commands: dict):
    modules_path = Path(__file__).parent / MODULES_PATH
    components_versions = {}
    for module in modules_path.iterdir():
        api_file_path = module / API_MODULE_FILE
        if not module.is_dir() or not api_file_path.exists():
            continue
        with open(api_file_path, 'r') as file:
            module_descriptor = json.load(file)
        if module_descriptor[MOUNT_POINT_KEY] in allowed_commands:
            module_name = module_descriptor[MODULE_NAME_KEY]
            components_versions[module_name] = lib_version(module_name)
    return components_versions