From 09c40978a1c6b3e9a019509ff553d68f6c7a884d Mon Sep 17 00:00:00 2001 From: kolo Date: Wed, 12 Mar 2025 13:01:15 +0300 Subject: [PATCH] fix --- README.md | 19 +++++++++---------- argenta/app/entity.py | 1 - argenta/command/flag/flags_group/entity.py | 2 +- argenta/router/entity.py | 2 +- mock/mock_app/handlers/routers.py | 2 +- 5 files changed, 12 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 97207c7..eedc748 100644 --- a/README.md +++ b/README.md @@ -60,12 +60,11 @@ from argenta.command.flag import FlagsGroup, Flag router = Router() -registered_flags = FlagsGroup([ +registered_flags = FlagsGroup( Flag(flag_name='host', flag_prefix='--', possible_flag_values=re.compile(r'^192.168.\d{1,3}.\d{1,3}$')), - Flag('port', '---', re.compile(r'^[0-9]{1,4}$')) -]) + Flag('port', '--', re.compile(r'^[0-9]{1,4}$'))) @router.command(Command("hello")) @@ -365,8 +364,7 @@ Command(trigger: str, ```python Flag(flag_name: str, flag_prefix: typing.Literal['-', '--', '---'] = '-', - ignore_flag_value_register: bool = False, - possible_flag_values: list[str] | typing.Pattern[str] = False) + possible_flag_values: list[str] | typing.Pattern[str] | False = True) ``` --- @@ -375,9 +373,10 @@ Flag(flag_name: str, - **name : mean** - `flag_name` (`str`): Имя флага - `flag_prefix` (`Literal['-', '--', '---']`): Префикс команды, допустимым значением является от одного до трёх минусов -- `ignore_flag_value_register` (`bool`): Будет ли игнорироваться регистр значения введённого флага -- `possible_flag_values` (`list[str] | Pattern[str]`): Множество допустимых значений флага, может быть задано -списком с допустимыми значениями или регулярным выражением (рекомендуется `re.compile(r'example exspression')`) +- `possible_flag_values` (`list[str] | Pattern[str] | bool`): Множество допустимых значений флага, может быть задано +списком с допустимыми значениями или регулярным выражением (рекомендуется `re.compile(r'example exspression')`), при значении +аргумента `False` у введённого флага не может быть значения, иначе будет вызвано исключение и обработано соответствующим +еррор-хэндлером --- @@ -410,14 +409,14 @@ Flag(flag_name: str, ### Конструктор ```python -FlagsGroup(flags: list[Flag] = None) +FlagsGroup(*flagы: Flag) ``` --- **Аргументы:** - **name : mean** -- `flags` (`list[Flag]`): Список флагов, которые будут объединены в одну группу +- `*flags` (`Flag`): Неограниченное количество передаваемых флагов --- diff --git a/argenta/app/entity.py b/argenta/app/entity.py index 07489d6..b9c5e98 100644 --- a/argenta/app/entity.py +++ b/argenta/app/entity.py @@ -1,4 +1,3 @@ -from pprint import pprint from typing import Callable from inspect import getfullargspec import re diff --git a/argenta/command/flag/flags_group/entity.py b/argenta/command/flag/flags_group/entity.py index 0c9960a..6c72a21 100644 --- a/argenta/command/flag/flags_group/entity.py +++ b/argenta/command/flag/flags_group/entity.py @@ -1,4 +1,4 @@ -from argenta.command.flag.entity import Flag +from argenta.command.flag import Flag class FlagsGroup: diff --git a/argenta/router/entity.py b/argenta/router/entity.py index 696d731..c55f756 100644 --- a/argenta/router/entity.py +++ b/argenta/router/entity.py @@ -23,7 +23,7 @@ class Router: self._command_entities: list[dict[str, Callable[[], None] | Command]] = [] self._ignore_command_register: bool = False - self._not_valid_flag_handler: Callable[[Flag], None] = lambda flag: print(f"Undefined or incorrect input flag: '{flag.get_string_entity()} {flag.get_value()}'") + self._not_valid_flag_handler: Callable[[Flag], None] = lambda flag: print(f"Undefined or incorrect input flag: {flag.get_string_entity()} {flag.get_value() if flag.get_value() else ''}") def command(self, command: Command) -> Callable[[Any], Any]: diff --git a/mock/mock_app/handlers/routers.py b/mock/mock_app/handlers/routers.py index 36840e4..6bfebcd 100644 --- a/mock/mock_app/handlers/routers.py +++ b/mock/mock_app/handlers/routers.py @@ -10,7 +10,7 @@ from .handlers_implementation.help_command import help_command work_router: Router = Router(title='Work nts:') -work_router.set_invalid_input_flag_handler(lambda flag: print(f'Invalid input flag: "{flag.get_string_entity()} {flag.get_value() if flag.get_value() else ''}"')) +work_router.set_invalid_input_flag_handler(lambda flag: print(f'Invalid input flag: {flag.get_string_entity()} {flag.get_value() if flag.get_value() else ''}')) settings_router: Router = Router(title='Settings points:')