qwikstart.utils.input_types module

Low-level input types using prompt_toolkit to request input.

Higher-level functionality should be put in prompt module.

class qwikstart.utils.input_types.BoolInput(**kwargs: Any)

Bases: qwikstart.utils.input_types.InputType

cast(input_text: str) → bool
default_prefix: str = ' (y/n): '
error_msg: str = "Response must be 'y' or 'n'"
is_valid(text: str) → bool
raw_prompt(message: str, suffix: Optional[str] = None, **prompt_kwargs: Any) → str

Prompt user for input and return string input from user.

class qwikstart.utils.input_types.InputType(**kwargs: Any)

Bases: typing.Generic

cast(input_text: str) → T
completer: Optional[prompt_toolkit.completion.base.Completer] = None
default_prefix: str = ': '
error_msg: str = 'Input does not pass validation'
abstract is_valid(text: str) → bool
prompt(message: str, **prompt_kwargs: Any) → T

Prompt user for input and return input cast to appropriate data type.

raw_prompt(message: str, suffix: Optional[str] = None, **prompt_kwargs: Any) → str

Prompt user for input and return string input from user.

property validator
class qwikstart.utils.input_types.IntegerInput(**kwargs: Any)

Bases: qwikstart.utils.input_types.InputType

cast(input_text: str) → int
is_valid(text: str) → bool
raw_prompt(message: str, suffix: Optional[str] = None, **prompt_kwargs: Any) → str

Prompt user for input and return string input from user.

class qwikstart.utils.input_types.NumberRange(min_value: int, max_value: int, **kwargs: Any)

Bases: qwikstart.utils.input_types.IntegerInput

is_valid(text: str) → bool
class qwikstart.utils.input_types.PathInput(allow_empty: bool = False, **kwargs: Any)

Bases: qwikstart.utils.input_types.StringInput

completer = <prompt_toolkit.completion.filesystem.PathCompleter object>
class qwikstart.utils.input_types.StringInput(allow_empty: bool = False, **kwargs: Any)

Bases: qwikstart.utils.input_types.InputType

error_msg: str = 'Input cannot be empty'
is_valid(text: str) → bool