diff --git a/cirro/cli/interactive/common_args.py b/cirro/cli/interactive/common_args.py index 27bc1ec8..e7e1ccc2 100644 --- a/cirro/cli/interactive/common_args.py +++ b/cirro/cli/interactive/common_args.py @@ -1,17 +1,22 @@ from typing import List from cirro.api.models.project import Project -from cirro.cli.interactive.utils import prompt_wrapper +from cirro.cli.interactive.utils import ask def ask_project(projects: List[Project], input_value: str) -> str: - project_names = [project.name for project in projects] - project_prompt = { - 'type': 'list', - 'name': 'project', - 'message': 'What project is this dataset associated with?', - 'choices': project_names, - 'default': input_value if input_value in project_names else None - } - answers = prompt_wrapper(project_prompt) - return answers['project'] + project_names = sorted([project.name for project in projects]) + if len(project_names) <= 10: + return ask( + 'select', + 'What project is this dataset associated with?', + choices=project_names, + default=input_value if input_value in project_names else None + ) + else: + return ask( + 'autocomplete', + 'What project is this dataset associated with? (use TAB to display options)', + choices=project_names, + default=input_value if input_value in project_names else '' + ) diff --git a/pyproject.toml b/pyproject.toml index 6b53c925..72a66eae 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "cirro" -version = "0.6.9" +version = "0.6.10" description = "CLI tool and SDK for interacting with the Cirro platform" authors = ["Fred Hutch "] license = "MIT"