hspylib-clitt 0.9.119__py3-none-any.whl → 0.9.121__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of hspylib-clitt might be problematic. Click here for more details.
- clitt/.version +1 -1
- clitt/__init__.py +3 -3
- clitt/addons/__init__.py +3 -3
- clitt/addons/appman/__init__.py +3 -3
- clitt/addons/appman/templates/__init__.py +3 -3
- clitt/addons/widman/__init__.py +3 -3
- clitt/addons/widman/widgets/__init__.py +3 -3
- clitt/core/__init__.py +3 -3
- clitt/core/exception/__init__.py +3 -3
- clitt/core/icons/__init__.py +3 -3
- clitt/core/icons/emojis/__init__.py +3 -3
- clitt/core/icons/font_awesome/__init__.py +3 -3
- clitt/core/term/__init__.py +3 -3
- clitt/core/tui/__init__.py +3 -3
- clitt/core/tui/line_input/__init__.py +3 -3
- clitt/core/tui/line_input/keyboard_input.py +85 -78
- clitt/core/tui/mchoose/__init__.py +3 -3
- clitt/core/tui/mdashboard/__init__.py +3 -3
- clitt/core/tui/menu/__init__.py +3 -3
- clitt/core/tui/minput/__init__.py +3 -3
- clitt/core/tui/minput/menu_input.py +7 -15
- clitt/core/tui/mselect/__init__.py +3 -3
- clitt/core/tui/table/__init__.py +3 -3
- clitt/utils/__init__.py +3 -3
- {hspylib_clitt-0.9.119.dist-info → hspylib_clitt-0.9.121.dist-info}/METADATA +2 -2
- hspylib_clitt-0.9.121.dist-info/RECORD +97 -0
- {hspylib_clitt-0.9.119.dist-info → hspylib_clitt-0.9.121.dist-info}/top_level.txt +0 -1
- build/lib/build/lib/build/lib/build/lib/clitt/__classpath__.py +0 -28
- build/lib/build/lib/build/lib/build/lib/clitt/__init__.py +0 -13
- build/lib/build/lib/build/lib/build/lib/clitt/__main__.py +0 -139
- build/lib/build/lib/build/lib/build/lib/clitt/addons/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/clitt/addons/appman/__init__.py +0 -13
- build/lib/build/lib/build/lib/build/lib/clitt/addons/appman/appman.py +0 -305
- build/lib/build/lib/build/lib/build/lib/clitt/addons/appman/appman_enums.py +0 -39
- build/lib/build/lib/build/lib/build/lib/clitt/addons/appman/templates/__init__.py +0 -11
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/__init__.py +0 -14
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widget.py +0 -70
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widget_entry.py +0 -54
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widgets/__init__.py +0 -14
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_free.py +0 -110
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_punch.py +0 -246
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_send_msg.py +0 -272
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_time_calc.py +0 -146
- build/lib/build/lib/build/lib/build/lib/clitt/addons/widman/widman.py +0 -123
- build/lib/build/lib/build/lib/build/lib/clitt/core/__init__.py +0 -15
- build/lib/build/lib/build/lib/build/lib/clitt/core/exception/__init__.py +0 -11
- build/lib/build/lib/build/lib/build/lib/clitt/core/exception/exceptions.py +0 -19
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/emojis/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/emojis/emojis.py +0 -41
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/emojis/face_smiling.py +0 -40
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/__init__.py +0 -18
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/app_icons.py +0 -55
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/awesome.py +0 -76
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/dashboard_icons.py +0 -93
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/form_icons.py +0 -69
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/game_icons.py +0 -59
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/nav_icons.py +0 -42
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/trickplay_icons.py +0 -39
- build/lib/build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/widget_icons.py +0 -37
- build/lib/build/lib/build/lib/build/lib/clitt/core/preferences.py +0 -87
- build/lib/build/lib/build/lib/build/lib/clitt/core/term/__init__.py +0 -14
- build/lib/build/lib/build/lib/build/lib/clitt/core/term/commons.py +0 -106
- build/lib/build/lib/build/lib/build/lib/clitt/core/term/cursor.py +0 -174
- build/lib/build/lib/build/lib/build/lib/clitt/core/term/screen.py +0 -106
- build/lib/build/lib/build/lib/build/lib/clitt/core/term/terminal.py +0 -202
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/__init__.py +0 -20
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/line_input/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/line_input/keyboard_input.py +0 -229
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/line_input/line_input.py +0 -31
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mchoose/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mchoose/mchoose.py +0 -43
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mchoose/menu_choose.py +0 -192
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/__init__.py +0 -14
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/dashboard_builder.py +0 -54
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/dashboard_item.py +0 -31
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/mdashboard.py +0 -26
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/menu_dashboard.py +0 -148
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/menu/__init__.py +0 -16
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu.py +0 -111
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_action.py +0 -47
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_factory.py +0 -117
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_item.py +0 -196
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_ui.py +0 -98
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_view.py +0 -57
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/__init__.py +0 -19
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/access_type.py +0 -26
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/field_builder.py +0 -117
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/form_builder.py +0 -72
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/form_field.py +0 -180
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/input_type.py +0 -30
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/input_validator.py +0 -98
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/menu_input.py +0 -292
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/minput.py +0 -44
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/minput/minput_utils.py +0 -156
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mselect/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mselect/menu_select.py +0 -170
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/mselect/mselect.py +0 -36
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/table/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/table/table_enums.py +0 -47
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/table/table_renderer.py +0 -339
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/tui_application.py +0 -52
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/tui_component.py +0 -154
- build/lib/build/lib/build/lib/build/lib/clitt/core/tui/tui_preferences.py +0 -103
- build/lib/build/lib/build/lib/build/lib/clitt/utils/__init__.py +0 -11
- build/lib/build/lib/build/lib/build/lib/clitt/utils/git_utils.py +0 -66
- build/lib/build/lib/build/lib/clitt/__classpath__.py +0 -28
- build/lib/build/lib/build/lib/clitt/__init__.py +0 -13
- build/lib/build/lib/build/lib/clitt/__main__.py +0 -139
- build/lib/build/lib/build/lib/clitt/addons/__init__.py +0 -12
- build/lib/build/lib/build/lib/clitt/addons/appman/__init__.py +0 -13
- build/lib/build/lib/build/lib/clitt/addons/appman/appman.py +0 -305
- build/lib/build/lib/build/lib/clitt/addons/appman/appman_enums.py +0 -39
- build/lib/build/lib/build/lib/clitt/addons/appman/templates/__init__.py +0 -11
- build/lib/build/lib/build/lib/clitt/addons/widman/__init__.py +0 -14
- build/lib/build/lib/build/lib/clitt/addons/widman/widget.py +0 -70
- build/lib/build/lib/build/lib/clitt/addons/widman/widget_entry.py +0 -54
- build/lib/build/lib/build/lib/clitt/addons/widman/widgets/__init__.py +0 -14
- build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_free.py +0 -110
- build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_punch.py +0 -246
- build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_send_msg.py +0 -272
- build/lib/build/lib/build/lib/clitt/addons/widman/widgets/widget_time_calc.py +0 -146
- build/lib/build/lib/build/lib/clitt/addons/widman/widman.py +0 -123
- build/lib/build/lib/build/lib/clitt/core/__init__.py +0 -15
- build/lib/build/lib/build/lib/clitt/core/exception/__init__.py +0 -11
- build/lib/build/lib/build/lib/clitt/core/exception/exceptions.py +0 -19
- build/lib/build/lib/build/lib/clitt/core/icons/__init__.py +0 -12
- build/lib/build/lib/build/lib/clitt/core/icons/emojis/__init__.py +0 -12
- build/lib/build/lib/build/lib/clitt/core/icons/emojis/emojis.py +0 -41
- build/lib/build/lib/build/lib/clitt/core/icons/emojis/face_smiling.py +0 -40
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/__init__.py +0 -18
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/app_icons.py +0 -55
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/awesome.py +0 -76
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/dashboard_icons.py +0 -93
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/form_icons.py +0 -69
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/game_icons.py +0 -59
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/nav_icons.py +0 -42
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/trickplay_icons.py +0 -39
- build/lib/build/lib/build/lib/clitt/core/icons/font_awesome/widget_icons.py +0 -37
- build/lib/build/lib/build/lib/clitt/core/preferences.py +0 -87
- build/lib/build/lib/build/lib/clitt/core/term/__init__.py +0 -14
- build/lib/build/lib/build/lib/clitt/core/term/commons.py +0 -106
- build/lib/build/lib/build/lib/clitt/core/term/cursor.py +0 -174
- build/lib/build/lib/build/lib/clitt/core/term/screen.py +0 -106
- build/lib/build/lib/build/lib/clitt/core/term/terminal.py +0 -202
- build/lib/build/lib/build/lib/clitt/core/tui/__init__.py +0 -20
- build/lib/build/lib/build/lib/clitt/core/tui/line_input/__init__.py +0 -12
- build/lib/build/lib/build/lib/clitt/core/tui/line_input/keyboard_input.py +0 -229
- build/lib/build/lib/build/lib/clitt/core/tui/line_input/line_input.py +0 -31
- build/lib/build/lib/build/lib/clitt/core/tui/mchoose/__init__.py +0 -12
- build/lib/build/lib/build/lib/clitt/core/tui/mchoose/mchoose.py +0 -43
- build/lib/build/lib/build/lib/clitt/core/tui/mchoose/menu_choose.py +0 -192
- build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/__init__.py +0 -14
- build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/dashboard_builder.py +0 -54
- build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/dashboard_item.py +0 -31
- build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/mdashboard.py +0 -26
- build/lib/build/lib/build/lib/clitt/core/tui/mdashboard/menu_dashboard.py +0 -148
- build/lib/build/lib/build/lib/clitt/core/tui/menu/__init__.py +0 -16
- build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu.py +0 -111
- build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_action.py +0 -47
- build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_factory.py +0 -117
- build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_item.py +0 -196
- build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_ui.py +0 -98
- build/lib/build/lib/build/lib/clitt/core/tui/menu/tui_menu_view.py +0 -57
- build/lib/build/lib/build/lib/clitt/core/tui/minput/__init__.py +0 -19
- build/lib/build/lib/build/lib/clitt/core/tui/minput/access_type.py +0 -26
- build/lib/build/lib/build/lib/clitt/core/tui/minput/field_builder.py +0 -117
- build/lib/build/lib/build/lib/clitt/core/tui/minput/form_builder.py +0 -72
- build/lib/build/lib/build/lib/clitt/core/tui/minput/form_field.py +0 -180
- build/lib/build/lib/build/lib/clitt/core/tui/minput/input_type.py +0 -30
- build/lib/build/lib/build/lib/clitt/core/tui/minput/input_validator.py +0 -98
- build/lib/build/lib/build/lib/clitt/core/tui/minput/menu_input.py +0 -292
- build/lib/build/lib/build/lib/clitt/core/tui/minput/minput.py +0 -44
- build/lib/build/lib/build/lib/clitt/core/tui/minput/minput_utils.py +0 -156
- build/lib/build/lib/build/lib/clitt/core/tui/mselect/__init__.py +0 -12
- build/lib/build/lib/build/lib/clitt/core/tui/mselect/menu_select.py +0 -170
- build/lib/build/lib/build/lib/clitt/core/tui/mselect/mselect.py +0 -36
- build/lib/build/lib/build/lib/clitt/core/tui/table/__init__.py +0 -12
- build/lib/build/lib/build/lib/clitt/core/tui/table/table_enums.py +0 -47
- build/lib/build/lib/build/lib/clitt/core/tui/table/table_renderer.py +0 -339
- build/lib/build/lib/build/lib/clitt/core/tui/tui_application.py +0 -52
- build/lib/build/lib/build/lib/clitt/core/tui/tui_component.py +0 -154
- build/lib/build/lib/build/lib/clitt/core/tui/tui_preferences.py +0 -103
- build/lib/build/lib/build/lib/clitt/utils/__init__.py +0 -11
- build/lib/build/lib/build/lib/clitt/utils/git_utils.py +0 -66
- build/lib/build/lib/clitt/__classpath__.py +0 -28
- build/lib/build/lib/clitt/__init__.py +0 -13
- build/lib/build/lib/clitt/__main__.py +0 -139
- build/lib/build/lib/clitt/addons/__init__.py +0 -12
- build/lib/build/lib/clitt/addons/appman/__init__.py +0 -13
- build/lib/build/lib/clitt/addons/appman/appman.py +0 -305
- build/lib/build/lib/clitt/addons/appman/appman_enums.py +0 -39
- build/lib/build/lib/clitt/addons/appman/templates/__init__.py +0 -11
- build/lib/build/lib/clitt/addons/widman/__init__.py +0 -14
- build/lib/build/lib/clitt/addons/widman/widget.py +0 -70
- build/lib/build/lib/clitt/addons/widman/widget_entry.py +0 -54
- build/lib/build/lib/clitt/addons/widman/widgets/__init__.py +0 -14
- build/lib/build/lib/clitt/addons/widman/widgets/widget_free.py +0 -110
- build/lib/build/lib/clitt/addons/widman/widgets/widget_punch.py +0 -246
- build/lib/build/lib/clitt/addons/widman/widgets/widget_send_msg.py +0 -272
- build/lib/build/lib/clitt/addons/widman/widgets/widget_time_calc.py +0 -146
- build/lib/build/lib/clitt/addons/widman/widman.py +0 -123
- build/lib/build/lib/clitt/core/__init__.py +0 -15
- build/lib/build/lib/clitt/core/exception/__init__.py +0 -11
- build/lib/build/lib/clitt/core/exception/exceptions.py +0 -19
- build/lib/build/lib/clitt/core/icons/__init__.py +0 -12
- build/lib/build/lib/clitt/core/icons/emojis/__init__.py +0 -12
- build/lib/build/lib/clitt/core/icons/emojis/emojis.py +0 -41
- build/lib/build/lib/clitt/core/icons/emojis/face_smiling.py +0 -40
- build/lib/build/lib/clitt/core/icons/font_awesome/__init__.py +0 -18
- build/lib/build/lib/clitt/core/icons/font_awesome/app_icons.py +0 -55
- build/lib/build/lib/clitt/core/icons/font_awesome/awesome.py +0 -76
- build/lib/build/lib/clitt/core/icons/font_awesome/dashboard_icons.py +0 -93
- build/lib/build/lib/clitt/core/icons/font_awesome/form_icons.py +0 -69
- build/lib/build/lib/clitt/core/icons/font_awesome/game_icons.py +0 -59
- build/lib/build/lib/clitt/core/icons/font_awesome/nav_icons.py +0 -42
- build/lib/build/lib/clitt/core/icons/font_awesome/trickplay_icons.py +0 -39
- build/lib/build/lib/clitt/core/icons/font_awesome/widget_icons.py +0 -37
- build/lib/build/lib/clitt/core/preferences.py +0 -87
- build/lib/build/lib/clitt/core/term/__init__.py +0 -14
- build/lib/build/lib/clitt/core/term/commons.py +0 -106
- build/lib/build/lib/clitt/core/term/cursor.py +0 -174
- build/lib/build/lib/clitt/core/term/screen.py +0 -106
- build/lib/build/lib/clitt/core/term/terminal.py +0 -202
- build/lib/build/lib/clitt/core/tui/__init__.py +0 -20
- build/lib/build/lib/clitt/core/tui/line_input/__init__.py +0 -12
- build/lib/build/lib/clitt/core/tui/line_input/keyboard_input.py +0 -229
- build/lib/build/lib/clitt/core/tui/line_input/line_input.py +0 -31
- build/lib/build/lib/clitt/core/tui/mchoose/__init__.py +0 -12
- build/lib/build/lib/clitt/core/tui/mchoose/mchoose.py +0 -43
- build/lib/build/lib/clitt/core/tui/mchoose/menu_choose.py +0 -192
- build/lib/build/lib/clitt/core/tui/mdashboard/__init__.py +0 -14
- build/lib/build/lib/clitt/core/tui/mdashboard/dashboard_builder.py +0 -54
- build/lib/build/lib/clitt/core/tui/mdashboard/dashboard_item.py +0 -31
- build/lib/build/lib/clitt/core/tui/mdashboard/mdashboard.py +0 -26
- build/lib/build/lib/clitt/core/tui/mdashboard/menu_dashboard.py +0 -148
- build/lib/build/lib/clitt/core/tui/menu/__init__.py +0 -16
- build/lib/build/lib/clitt/core/tui/menu/tui_menu.py +0 -111
- build/lib/build/lib/clitt/core/tui/menu/tui_menu_action.py +0 -47
- build/lib/build/lib/clitt/core/tui/menu/tui_menu_factory.py +0 -117
- build/lib/build/lib/clitt/core/tui/menu/tui_menu_item.py +0 -196
- build/lib/build/lib/clitt/core/tui/menu/tui_menu_ui.py +0 -98
- build/lib/build/lib/clitt/core/tui/menu/tui_menu_view.py +0 -57
- build/lib/build/lib/clitt/core/tui/minput/__init__.py +0 -19
- build/lib/build/lib/clitt/core/tui/minput/access_type.py +0 -26
- build/lib/build/lib/clitt/core/tui/minput/field_builder.py +0 -117
- build/lib/build/lib/clitt/core/tui/minput/form_builder.py +0 -72
- build/lib/build/lib/clitt/core/tui/minput/form_field.py +0 -180
- build/lib/build/lib/clitt/core/tui/minput/input_type.py +0 -30
- build/lib/build/lib/clitt/core/tui/minput/input_validator.py +0 -98
- build/lib/build/lib/clitt/core/tui/minput/menu_input.py +0 -292
- build/lib/build/lib/clitt/core/tui/minput/minput.py +0 -44
- build/lib/build/lib/clitt/core/tui/minput/minput_utils.py +0 -156
- build/lib/build/lib/clitt/core/tui/mselect/__init__.py +0 -12
- build/lib/build/lib/clitt/core/tui/mselect/menu_select.py +0 -170
- build/lib/build/lib/clitt/core/tui/mselect/mselect.py +0 -36
- build/lib/build/lib/clitt/core/tui/table/__init__.py +0 -12
- build/lib/build/lib/clitt/core/tui/table/table_enums.py +0 -47
- build/lib/build/lib/clitt/core/tui/table/table_renderer.py +0 -339
- build/lib/build/lib/clitt/core/tui/tui_application.py +0 -52
- build/lib/build/lib/clitt/core/tui/tui_component.py +0 -154
- build/lib/build/lib/clitt/core/tui/tui_preferences.py +0 -103
- build/lib/build/lib/clitt/utils/__init__.py +0 -11
- build/lib/build/lib/clitt/utils/git_utils.py +0 -66
- build/lib/clitt/__classpath__.py +0 -28
- build/lib/clitt/__init__.py +0 -13
- build/lib/clitt/__main__.py +0 -139
- build/lib/clitt/addons/__init__.py +0 -12
- build/lib/clitt/addons/appman/__init__.py +0 -13
- build/lib/clitt/addons/appman/appman.py +0 -305
- build/lib/clitt/addons/appman/appman_enums.py +0 -39
- build/lib/clitt/addons/appman/templates/__init__.py +0 -11
- build/lib/clitt/addons/widman/__init__.py +0 -14
- build/lib/clitt/addons/widman/widget.py +0 -70
- build/lib/clitt/addons/widman/widget_entry.py +0 -54
- build/lib/clitt/addons/widman/widgets/__init__.py +0 -14
- build/lib/clitt/addons/widman/widgets/widget_free.py +0 -110
- build/lib/clitt/addons/widman/widgets/widget_punch.py +0 -246
- build/lib/clitt/addons/widman/widgets/widget_send_msg.py +0 -272
- build/lib/clitt/addons/widman/widgets/widget_time_calc.py +0 -146
- build/lib/clitt/addons/widman/widman.py +0 -123
- build/lib/clitt/core/__init__.py +0 -15
- build/lib/clitt/core/exception/__init__.py +0 -11
- build/lib/clitt/core/exception/exceptions.py +0 -19
- build/lib/clitt/core/icons/__init__.py +0 -12
- build/lib/clitt/core/icons/emojis/__init__.py +0 -12
- build/lib/clitt/core/icons/emojis/emojis.py +0 -41
- build/lib/clitt/core/icons/emojis/face_smiling.py +0 -40
- build/lib/clitt/core/icons/font_awesome/__init__.py +0 -18
- build/lib/clitt/core/icons/font_awesome/app_icons.py +0 -55
- build/lib/clitt/core/icons/font_awesome/awesome.py +0 -76
- build/lib/clitt/core/icons/font_awesome/dashboard_icons.py +0 -93
- build/lib/clitt/core/icons/font_awesome/form_icons.py +0 -69
- build/lib/clitt/core/icons/font_awesome/game_icons.py +0 -59
- build/lib/clitt/core/icons/font_awesome/nav_icons.py +0 -42
- build/lib/clitt/core/icons/font_awesome/trickplay_icons.py +0 -39
- build/lib/clitt/core/icons/font_awesome/widget_icons.py +0 -37
- build/lib/clitt/core/preferences.py +0 -87
- build/lib/clitt/core/term/__init__.py +0 -14
- build/lib/clitt/core/term/commons.py +0 -106
- build/lib/clitt/core/term/cursor.py +0 -174
- build/lib/clitt/core/term/screen.py +0 -106
- build/lib/clitt/core/term/terminal.py +0 -202
- build/lib/clitt/core/tui/__init__.py +0 -20
- build/lib/clitt/core/tui/line_input/__init__.py +0 -12
- build/lib/clitt/core/tui/line_input/keyboard_input.py +0 -229
- build/lib/clitt/core/tui/line_input/line_input.py +0 -31
- build/lib/clitt/core/tui/mchoose/__init__.py +0 -12
- build/lib/clitt/core/tui/mchoose/mchoose.py +0 -43
- build/lib/clitt/core/tui/mchoose/menu_choose.py +0 -192
- build/lib/clitt/core/tui/mdashboard/__init__.py +0 -14
- build/lib/clitt/core/tui/mdashboard/dashboard_builder.py +0 -54
- build/lib/clitt/core/tui/mdashboard/dashboard_item.py +0 -31
- build/lib/clitt/core/tui/mdashboard/mdashboard.py +0 -26
- build/lib/clitt/core/tui/mdashboard/menu_dashboard.py +0 -148
- build/lib/clitt/core/tui/menu/__init__.py +0 -16
- build/lib/clitt/core/tui/menu/tui_menu.py +0 -111
- build/lib/clitt/core/tui/menu/tui_menu_action.py +0 -47
- build/lib/clitt/core/tui/menu/tui_menu_factory.py +0 -117
- build/lib/clitt/core/tui/menu/tui_menu_item.py +0 -196
- build/lib/clitt/core/tui/menu/tui_menu_ui.py +0 -98
- build/lib/clitt/core/tui/menu/tui_menu_view.py +0 -57
- build/lib/clitt/core/tui/minput/__init__.py +0 -19
- build/lib/clitt/core/tui/minput/access_type.py +0 -26
- build/lib/clitt/core/tui/minput/field_builder.py +0 -117
- build/lib/clitt/core/tui/minput/form_builder.py +0 -72
- build/lib/clitt/core/tui/minput/form_field.py +0 -180
- build/lib/clitt/core/tui/minput/input_type.py +0 -30
- build/lib/clitt/core/tui/minput/input_validator.py +0 -98
- build/lib/clitt/core/tui/minput/menu_input.py +0 -292
- build/lib/clitt/core/tui/minput/minput.py +0 -44
- build/lib/clitt/core/tui/minput/minput_utils.py +0 -156
- build/lib/clitt/core/tui/mselect/__init__.py +0 -12
- build/lib/clitt/core/tui/mselect/menu_select.py +0 -170
- build/lib/clitt/core/tui/mselect/mselect.py +0 -36
- build/lib/clitt/core/tui/table/__init__.py +0 -12
- build/lib/clitt/core/tui/table/table_enums.py +0 -47
- build/lib/clitt/core/tui/table/table_renderer.py +0 -339
- build/lib/clitt/core/tui/tui_application.py +0 -52
- build/lib/clitt/core/tui/tui_component.py +0 -154
- build/lib/clitt/core/tui/tui_preferences.py +0 -103
- build/lib/clitt/utils/__init__.py +0 -11
- build/lib/clitt/utils/git_utils.py +0 -66
- hspylib_clitt-0.9.119.dist-info/RECORD +0 -413
- {hspylib_clitt-0.9.119.dist-info → hspylib_clitt-0.9.121.dist-info}/WHEEL +0 -0
clitt/.version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.9.
|
|
1
|
+
0.9.121
|
clitt/__init__.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -10,4 +10,4 @@ __all__ = [
|
|
|
10
10
|
'core',
|
|
11
11
|
'utils'
|
|
12
12
|
]
|
|
13
|
-
__version__ = '0.9.
|
|
13
|
+
__version__ = '0.9.121'
|
clitt/addons/__init__.py
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.addons
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'appman',
|
|
10
10
|
'widman'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.121'
|
clitt/addons/appman/__init__.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.addons.appman
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -10,4 +10,4 @@ __all__ = [
|
|
|
10
10
|
'appman_enums',
|
|
11
11
|
'templates'
|
|
12
12
|
]
|
|
13
|
-
__version__ = '0.9.
|
|
13
|
+
__version__ = '0.9.121'
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.addons.appman.templates
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
|
|
10
10
|
]
|
|
11
|
-
__version__ = '0.9.
|
|
11
|
+
__version__ = '0.9.121'
|
clitt/addons/widman/__init__.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.addons.widman
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -11,4 +11,4 @@ __all__ = [
|
|
|
11
11
|
'widgets',
|
|
12
12
|
'widman'
|
|
13
13
|
]
|
|
14
|
-
__version__ = '0.9.
|
|
14
|
+
__version__ = '0.9.121'
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.addons.widman.widgets
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -11,4 +11,4 @@ __all__ = [
|
|
|
11
11
|
'widget_send_msg',
|
|
12
12
|
'widget_time_calc'
|
|
13
13
|
]
|
|
14
|
-
__version__ = '0.9.
|
|
14
|
+
__version__ = '0.9.121'
|
clitt/core/__init__.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -12,4 +12,4 @@ __all__ = [
|
|
|
12
12
|
'term',
|
|
13
13
|
'tui'
|
|
14
14
|
]
|
|
15
|
-
__version__ = '0.9.
|
|
15
|
+
__version__ = '0.9.121'
|
clitt/core/exception/__init__.py
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.exception
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'exceptions'
|
|
10
10
|
]
|
|
11
|
-
__version__ = '0.9.
|
|
11
|
+
__version__ = '0.9.121'
|
clitt/core/icons/__init__.py
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.icons
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'emojis',
|
|
10
10
|
'font_awesome'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.121'
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.icons.emojis
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'emojis',
|
|
10
10
|
'face_smiling'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.121'
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.icons.font_awesome
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -15,4 +15,4 @@ __all__ = [
|
|
|
15
15
|
'trickplay_icons',
|
|
16
16
|
'widget_icons'
|
|
17
17
|
]
|
|
18
|
-
__version__ = '0.9.
|
|
18
|
+
__version__ = '0.9.121'
|
clitt/core/term/__init__.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.term
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -11,4 +11,4 @@ __all__ = [
|
|
|
11
11
|
'screen',
|
|
12
12
|
'terminal'
|
|
13
13
|
]
|
|
14
|
-
__version__ = '0.9.
|
|
14
|
+
__version__ = '0.9.121'
|
clitt/core/tui/__init__.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -17,4 +17,4 @@ __all__ = [
|
|
|
17
17
|
'tui_component',
|
|
18
18
|
'tui_preferences'
|
|
19
19
|
]
|
|
20
|
-
__version__ = '0.9.
|
|
20
|
+
__version__ = '0.9.121'
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui.line_input
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'keyboard_input',
|
|
10
10
|
'line_input'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.121'
|
|
@@ -13,14 +13,14 @@
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
15
|
|
|
16
|
+
from typing import Optional
|
|
17
|
+
|
|
16
18
|
from clitt.core.term.commons import Direction
|
|
17
19
|
from clitt.core.term.terminal import Terminal
|
|
18
20
|
from clitt.core.tui.tui_component import TUIComponent
|
|
21
|
+
from hspylib.core.tools.dict_tools import get_or_default
|
|
19
22
|
from hspylib.modules.cli.keyboard import Keyboard
|
|
20
23
|
from hspylib.modules.cli.vt100.vt_color import VtColor
|
|
21
|
-
from typing import Dict, List, Optional
|
|
22
|
-
|
|
23
|
-
import pyperclip
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
class KeyboardInput(TUIComponent):
|
|
@@ -30,57 +30,47 @@ class KeyboardInput(TUIComponent):
|
|
|
30
30
|
_HIST_INDEX: int = 0
|
|
31
31
|
|
|
32
32
|
# Dict containing all previously accepted inputs.
|
|
33
|
-
_HISTORY:
|
|
33
|
+
_HISTORY: list[str] = [""]
|
|
34
34
|
|
|
35
35
|
# Stack containing current input changes.
|
|
36
|
-
_UNDO_HISTORY:
|
|
36
|
+
_UNDO_HISTORY: list[str] = []
|
|
37
37
|
|
|
38
38
|
# Stack containing current input reverts.
|
|
39
|
-
_REDO_HISTORY:
|
|
40
|
-
|
|
41
|
-
@
|
|
42
|
-
def preload_history(history:
|
|
43
|
-
"""Preload the input with the provided dictionary.
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
39
|
+
_REDO_HISTORY: list[str] = []
|
|
40
|
+
|
|
41
|
+
@classmethod
|
|
42
|
+
def preload_history(cls, history: list[str]) -> None:
|
|
43
|
+
"""Preload the input with the provided dictionary.
|
|
44
|
+
:param history: The history keyboard inputs.
|
|
45
|
+
"""
|
|
46
|
+
for entry in reversed(history):
|
|
47
|
+
cls._add_history(entry)
|
|
48
|
+
cls._HIST_INDEX = max(0, len(cls._HISTORY) - 1)
|
|
49
|
+
|
|
50
|
+
@classmethod
|
|
51
|
+
def forget_history(cls) -> None:
|
|
51
52
|
"""Forget all input history entries."""
|
|
52
|
-
tmp: str =
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
tmp: str = cls._HISTORY[-1]
|
|
54
|
+
cls._HISTORY.clear()
|
|
55
|
+
cls._HISTORY.append(tmp)
|
|
55
56
|
|
|
56
|
-
@
|
|
57
|
-
def history() ->
|
|
57
|
+
@classmethod
|
|
58
|
+
def history(cls) -> list[str]:
|
|
58
59
|
"""Return the actual input history."""
|
|
59
|
-
return list(filter(lambda v: v,
|
|
60
|
+
return list(filter(lambda v: v, cls._HISTORY))
|
|
60
61
|
|
|
61
|
-
@
|
|
62
|
-
def _add_history(input_text: str) -> None:
|
|
62
|
+
@classmethod
|
|
63
|
+
def _add_history(cls, input_text: str) -> None:
|
|
63
64
|
"""Add the following input to the history set.
|
|
64
65
|
:param input_text: The input text to add to the history.
|
|
65
66
|
"""
|
|
66
|
-
if input_text and input_text not in list(
|
|
67
|
-
idx: int = max(1, len(
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
index = min(len(cls._HISTORY) - 1, cls._HIST_INDEX + 1)
|
|
74
|
-
text = cls._HISTORY.get(index, "")
|
|
75
|
-
cls._HIST_INDEX = index
|
|
76
|
-
return text or cls._HISTORY[0]
|
|
77
|
-
|
|
78
|
-
@classmethod
|
|
79
|
-
def _prev_in_history(cls) -> Optional[str]:
|
|
80
|
-
index = max(0, cls._HIST_INDEX - 1)
|
|
81
|
-
text = cls._HISTORY.get(index, "")
|
|
82
|
-
cls._HIST_INDEX = index
|
|
83
|
-
return text or cls._HISTORY[0]
|
|
67
|
+
if input_text and input_text not in list(cls._HISTORY)[1:]:
|
|
68
|
+
idx: int = max(1, len(cls._HISTORY))
|
|
69
|
+
if input_text not in cls._HISTORY:
|
|
70
|
+
cls._HISTORY.insert(idx - 1, input_text)
|
|
71
|
+
else:
|
|
72
|
+
cls._HISTORY = cls._HISTORY[1:-1] + cls._HISTORY[:1] + cls._HISTORY[-1:]
|
|
73
|
+
cls._HIST_INDEX = idx
|
|
84
74
|
|
|
85
75
|
@classmethod
|
|
86
76
|
def _undo(cls) -> Optional[str]:
|
|
@@ -104,43 +94,29 @@ class KeyboardInput(TUIComponent):
|
|
|
104
94
|
navbar_enable: bool = False,
|
|
105
95
|
):
|
|
106
96
|
super().__init__(prompt)
|
|
107
|
-
self._prompt_color = prompt_color
|
|
108
|
-
self._text_color = text_color
|
|
109
|
-
self._navbar_enable = navbar_enable
|
|
110
|
-
self._input_index = 0
|
|
97
|
+
self._prompt_color: VtColor = prompt_color
|
|
98
|
+
self._text_color: VtColor = text_color
|
|
99
|
+
self._navbar_enable: bool = navbar_enable
|
|
100
|
+
self._input_index: int = 0
|
|
111
101
|
self._input_text: str = ""
|
|
112
|
-
self._HISTORY[
|
|
102
|
+
self._HISTORY[-1] = ""
|
|
113
103
|
|
|
114
104
|
@property
|
|
115
105
|
def length(self) -> int:
|
|
116
106
|
return len(self._input_text) if self._input_text else 0
|
|
117
107
|
|
|
118
108
|
def _prepare_render(self, auto_wrap: bool = True, show_cursor: bool = True) -> None:
|
|
109
|
+
self.screen.add_watcher(self.invalidate)
|
|
119
110
|
Terminal.set_auto_wrap(auto_wrap)
|
|
120
111
|
Terminal.set_show_cursor(show_cursor)
|
|
121
112
|
self.cursor.save()
|
|
122
113
|
|
|
123
|
-
def _loop(self, break_keys: List[Keyboard] = None) -> Keyboard:
|
|
124
|
-
break_keys = break_keys or Keyboard.break_keys()
|
|
125
|
-
keypress = Keyboard.VK_NONE
|
|
126
|
-
|
|
127
|
-
# Wait for user interaction
|
|
128
|
-
while not self._done and keypress and keypress not in break_keys:
|
|
129
|
-
# Menu Renderization
|
|
130
|
-
if self._re_render:
|
|
131
|
-
self.render()
|
|
132
|
-
# Navigation input
|
|
133
|
-
keypress = self.handle_keypress()
|
|
134
|
-
|
|
135
|
-
return keypress
|
|
136
|
-
|
|
137
114
|
def execute(self) -> Optional[str | Keyboard]:
|
|
138
|
-
self.write(f"{self._prompt_color.placeholder}{self.title}{self._text_color.placeholder}")
|
|
139
115
|
self._prepare_render()
|
|
140
116
|
keypress = self._loop() or Keyboard.VK_ESC
|
|
141
117
|
|
|
142
118
|
if keypress.isEnter():
|
|
143
|
-
self.
|
|
119
|
+
self._HISTORY.append('')
|
|
144
120
|
self._UNDO_HISTORY.clear()
|
|
145
121
|
self._REDO_HISTORY.clear()
|
|
146
122
|
elif keypress == Keyboard.VK_ESC:
|
|
@@ -150,11 +126,31 @@ class KeyboardInput(TUIComponent):
|
|
|
150
126
|
|
|
151
127
|
return self._input_text
|
|
152
128
|
|
|
129
|
+
def reset(self) -> None:
|
|
130
|
+
"""Reset the contents of the input."""
|
|
131
|
+
self._input_index = 0
|
|
132
|
+
self._update_input("")
|
|
133
|
+
|
|
134
|
+
def _loop(self, break_keys: list[Keyboard] = None) -> Keyboard:
|
|
135
|
+
break_keys = break_keys or Keyboard.break_keys()
|
|
136
|
+
keypress = Keyboard.VK_NONE
|
|
137
|
+
|
|
138
|
+
# Wait for user interaction
|
|
139
|
+
while not self._done and keypress and keypress not in break_keys:
|
|
140
|
+
# Menu Renderization
|
|
141
|
+
if self._re_render:
|
|
142
|
+
self.render()
|
|
143
|
+
# Navigation input
|
|
144
|
+
keypress = self.handle_keypress()
|
|
145
|
+
|
|
146
|
+
return keypress
|
|
147
|
+
|
|
153
148
|
def render(self) -> None:
|
|
154
149
|
Terminal.set_show_cursor(False)
|
|
155
150
|
self.cursor.restore()
|
|
151
|
+
self.write(f"{self._prompt_color.placeholder}{self.title}{self._text_color.placeholder}")
|
|
156
152
|
self.write(self._input_text)
|
|
157
|
-
self._terminal.cursor.erase(Direction.
|
|
153
|
+
self._terminal.cursor.erase(Direction.DOWN)
|
|
158
154
|
self._re_render = False
|
|
159
155
|
self._set_cursor_pos()
|
|
160
156
|
Terminal.set_show_cursor()
|
|
@@ -175,26 +171,19 @@ class KeyboardInput(TUIComponent):
|
|
|
175
171
|
self._update_input(
|
|
176
172
|
self._input_text[: self._input_index] + self._input_text[1 + self._input_index :]
|
|
177
173
|
)
|
|
178
|
-
case Keyboard.
|
|
174
|
+
case Keyboard.VK_CTRL_R:
|
|
175
|
+
self.reset()
|
|
176
|
+
case Keyboard.VK_CTRL_F:
|
|
179
177
|
self.forget_history()
|
|
180
|
-
case Keyboard.VK_CTRL_P: # Paste from clipboard
|
|
181
|
-
text = (pyperclip.paste() or "").replace("\n", "↵")
|
|
182
|
-
self._update_input(
|
|
183
|
-
self._input_text[: self._input_index] + text + self._input_text[self._input_index :]
|
|
184
|
-
)
|
|
185
|
-
self._input_index += len(text)
|
|
186
|
-
case Keyboard.VK_CTRL_R: # Reset contents
|
|
187
|
-
self._input_index = 0
|
|
188
|
-
self._update_input("")
|
|
189
178
|
case Keyboard.VK_LEFT:
|
|
190
179
|
self._input_index = max(0, self._input_index - 1)
|
|
191
180
|
case Keyboard.VK_RIGHT:
|
|
192
181
|
self._input_index = min(self.length, self._input_index + 1)
|
|
193
182
|
case Keyboard.VK_UP:
|
|
194
|
-
self._input_text = self.
|
|
183
|
+
self._input_text = self._prev_in_history()
|
|
195
184
|
self._input_index = self.length
|
|
196
185
|
case Keyboard.VK_DOWN:
|
|
197
|
-
self._input_text = self.
|
|
186
|
+
self._input_text = self._next_in_history()
|
|
198
187
|
self._input_index = self.length
|
|
199
188
|
case Keyboard.VK_HOME:
|
|
200
189
|
self._input_index = 0
|
|
@@ -224,6 +213,24 @@ class KeyboardInput(TUIComponent):
|
|
|
224
213
|
:param text: The text to be set.
|
|
225
214
|
"""
|
|
226
215
|
self._UNDO_HISTORY.append(self._input_text)
|
|
227
|
-
self._HISTORY[
|
|
216
|
+
self._HISTORY[-1] = text if text not in self._HISTORY else self._input_text
|
|
228
217
|
self._input_text = text
|
|
229
218
|
return text
|
|
219
|
+
|
|
220
|
+
def _next_in_history(self) -> str:
|
|
221
|
+
"""Return the next input in history."""
|
|
222
|
+
edt_text: str = self._HISTORY[-1]
|
|
223
|
+
filtered: list[str] = list(filter(lambda h: h.startswith(edt_text), self._HISTORY))
|
|
224
|
+
index = min(len(filtered) - 1, self._HIST_INDEX + 1)
|
|
225
|
+
text = get_or_default(filtered, index, "")
|
|
226
|
+
self._HIST_INDEX = index
|
|
227
|
+
return text or filtered[-1]
|
|
228
|
+
|
|
229
|
+
def _prev_in_history(self) -> str:
|
|
230
|
+
"""Return the previous input in history."""
|
|
231
|
+
edt_text: str = self._HISTORY[-1]
|
|
232
|
+
filtered: list[str] = list(filter(lambda h: h.lower().startswith(edt_text.lower()), self._HISTORY))
|
|
233
|
+
index = max(0, min(len(filtered) - 2, self._HIST_INDEX - 1))
|
|
234
|
+
text = get_or_default(filtered, index, "")
|
|
235
|
+
self._HIST_INDEX = index
|
|
236
|
+
return text or filtered[-1]
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui.mchoose
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'mchoose',
|
|
10
10
|
'menu_choose'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.121'
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui.mdashboard
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -11,4 +11,4 @@ __all__ = [
|
|
|
11
11
|
'mdashboard',
|
|
12
12
|
'menu_dashboard'
|
|
13
13
|
]
|
|
14
|
-
__version__ = '0.9.
|
|
14
|
+
__version__ = '0.9.121'
|
clitt/core/tui/menu/__init__.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui.menu
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -13,4 +13,4 @@ __all__ = [
|
|
|
13
13
|
'tui_menu_ui',
|
|
14
14
|
'tui_menu_view'
|
|
15
15
|
]
|
|
16
|
-
__version__ = '0.9.
|
|
16
|
+
__version__ = '0.9.121'
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui.minput
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
@@ -16,4 +16,4 @@ __all__ = [
|
|
|
16
16
|
'minput',
|
|
17
17
|
'minput_utils'
|
|
18
18
|
]
|
|
19
|
-
__version__ = '0.9.
|
|
19
|
+
__version__ = '0.9.121'
|
|
@@ -12,6 +12,12 @@
|
|
|
12
12
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
|
+
import re
|
|
16
|
+
from functools import reduce
|
|
17
|
+
from operator import add
|
|
18
|
+
from time import sleep
|
|
19
|
+
from typing import List, Optional
|
|
20
|
+
|
|
15
21
|
from clitt.core.icons.font_awesome.form_icons import FormIcons
|
|
16
22
|
from clitt.core.icons.font_awesome.nav_icons import NavIcons
|
|
17
23
|
from clitt.core.term.commons import Direction, get_cursor_position
|
|
@@ -22,17 +28,10 @@ from clitt.core.tui.minput.form_field import FormField
|
|
|
22
28
|
from clitt.core.tui.minput.input_type import InputType
|
|
23
29
|
from clitt.core.tui.minput.minput_utils import MASK_SYMBOLS, VALUE_SEPARATORS
|
|
24
30
|
from clitt.core.tui.tui_component import TUIComponent
|
|
25
|
-
from functools import reduce
|
|
26
31
|
from hspylib.core.exception.exceptions import InvalidInputError, InvalidStateError
|
|
27
32
|
from hspylib.core.namespace import Namespace
|
|
28
33
|
from hspylib.core.tools.text_tools import xstr
|
|
29
34
|
from hspylib.modules.cli.keyboard import Keyboard
|
|
30
|
-
from operator import add
|
|
31
|
-
from time import sleep
|
|
32
|
-
from typing import List, Optional
|
|
33
|
-
|
|
34
|
-
import pyperclip
|
|
35
|
-
import re
|
|
36
35
|
|
|
37
36
|
|
|
38
37
|
class MenuInput(TUIComponent):
|
|
@@ -100,7 +99,7 @@ class MenuInput(TUIComponent):
|
|
|
100
99
|
f"%EOL%{NavIcons.POINTER} %GREEN%{self.cur_field.tooltip or f'the {self.cur_field.label.lower()}'}%NC%"
|
|
101
100
|
f"%EOL%{self.prefs.navbar_color.placeholder}%EOL%"
|
|
102
101
|
f"[Enter] Submit [{self.NAV_ICONS}] "
|
|
103
|
-
f"Navigate [{NavIcons.TAB}] Next [Space] Toggle [
|
|
102
|
+
f"Navigate [{NavIcons.TAB}] Next [Space] Toggle [Esc] Quit %NC%"
|
|
104
103
|
)
|
|
105
104
|
|
|
106
105
|
def handle_keypress(self) -> Keyboard:
|
|
@@ -119,8 +118,6 @@ class MenuInput(TUIComponent):
|
|
|
119
118
|
self._display_error("This field is read only !")
|
|
120
119
|
else:
|
|
121
120
|
self._handle_backspace()
|
|
122
|
-
case Keyboard.VK_CTRL_P:
|
|
123
|
-
self._handle_ctrl_p()
|
|
124
121
|
case Keyboard.VK_ENTER:
|
|
125
122
|
return self._handle_enter()
|
|
126
123
|
case _ as key if key.isalnum() or key.ispunct() or key == Keyboard.VK_SPACE:
|
|
@@ -201,11 +198,6 @@ class MenuInput(TUIComponent):
|
|
|
201
198
|
elif not self.cur_field.can_write():
|
|
202
199
|
self._display_error("This field is read only !")
|
|
203
200
|
|
|
204
|
-
def _handle_ctrl_p(self) -> None:
|
|
205
|
-
"""Handle 'ctrl + p' press. Paste content from clipboard."""
|
|
206
|
-
for c in pyperclip.paste():
|
|
207
|
-
self._handle_input(Keyboard.of_value(c))
|
|
208
|
-
|
|
209
201
|
def _set_cursor_pos(self) -> None:
|
|
210
202
|
"""Set the cursor at the right position according to the ATB index."""
|
|
211
203
|
pos = self.positions[self.tab_index]
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui.mselect
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'menu_select',
|
|
10
10
|
'mselect'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.121'
|
clitt/core/tui/table/__init__.py
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.core.tui.table
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'table_enums',
|
|
10
10
|
'table_renderer'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.121'
|
clitt/utils/__init__.py
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.121
|
|
4
4
|
#
|
|
5
|
-
# Package: main.
|
|
5
|
+
# Package: main.clitt.utils
|
|
6
6
|
"""Package initialization."""
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'git_utils'
|
|
10
10
|
]
|
|
11
|
-
__version__ = '0.9.
|
|
11
|
+
__version__ = '0.9.121'
|