hspylib-clitt 0.9.117__py3-none-any.whl → 0.9.118__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 +2 -2
- clitt/addons/__init__.py +2 -2
- clitt/addons/appman/__init__.py +2 -2
- clitt/addons/appman/templates/__init__.py +2 -2
- clitt/addons/widman/__init__.py +2 -2
- clitt/addons/widman/widgets/__init__.py +2 -2
- clitt/core/__init__.py +2 -2
- clitt/core/exception/__init__.py +2 -2
- clitt/core/exception/exceptions.py +1 -0
- clitt/core/icons/__init__.py +2 -2
- clitt/core/icons/emojis/__init__.py +2 -2
- clitt/core/icons/font_awesome/__init__.py +2 -2
- clitt/core/term/__init__.py +2 -2
- clitt/core/term/commons.py +33 -8
- clitt/core/term/cursor.py +18 -3
- clitt/core/term/screen.py +15 -0
- clitt/core/term/terminal.py +15 -16
- clitt/core/tui/__init__.py +2 -2
- clitt/core/tui/line_input/__init__.py +2 -2
- clitt/core/tui/line_input/keyboard_input.py +15 -14
- clitt/core/tui/line_input/line_input.py +2 -6
- clitt/core/tui/mchoose/__init__.py +2 -2
- clitt/core/tui/mchoose/mchoose.py +2 -3
- clitt/core/tui/mchoose/menu_choose.py +6 -14
- clitt/core/tui/mdashboard/__init__.py +2 -2
- clitt/core/tui/mdashboard/menu_dashboard.py +2 -8
- clitt/core/tui/menu/__init__.py +2 -2
- clitt/core/tui/minput/__init__.py +2 -2
- clitt/core/tui/mselect/__init__.py +2 -2
- clitt/core/tui/mselect/menu_select.py +2 -3
- clitt/core/tui/table/__init__.py +2 -2
- clitt/core/tui/tui_application.py +4 -5
- clitt/core/tui/tui_component.py +4 -5
- clitt/utils/__init__.py +2 -2
- {hspylib_clitt-0.9.117.dist-info → hspylib_clitt-0.9.118.dist-info}/METADATA +2 -2
- {hspylib_clitt-0.9.117.dist-info → hspylib_clitt-0.9.118.dist-info}/RECORD +39 -39
- {hspylib_clitt-0.9.117.dist-info → hspylib_clitt-0.9.118.dist-info}/WHEEL +0 -0
- {hspylib_clitt-0.9.117.dist-info → hspylib_clitt-0.9.118.dist-info}/top_level.txt +0 -0
clitt/.version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.9.
|
|
1
|
+
0.9.118
|
clitt/__init__.py
CHANGED
clitt/addons/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.addons
|
|
6
6
|
"""Package initialization."""
|
|
@@ -9,4 +9,4 @@ __all__ = [
|
|
|
9
9
|
'appman',
|
|
10
10
|
'widman'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.118'
|
clitt/addons/appman/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.addons.appman
|
|
6
6
|
"""Package initialization."""
|
|
@@ -10,4 +10,4 @@ __all__ = [
|
|
|
10
10
|
'appman_enums',
|
|
11
11
|
'templates'
|
|
12
12
|
]
|
|
13
|
-
__version__ = '0.9.
|
|
13
|
+
__version__ = '0.9.118'
|
clitt/addons/widman/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.addons.widman
|
|
6
6
|
"""Package initialization."""
|
|
@@ -11,4 +11,4 @@ __all__ = [
|
|
|
11
11
|
'widgets',
|
|
12
12
|
'widman'
|
|
13
13
|
]
|
|
14
|
-
__version__ = '0.9.
|
|
14
|
+
__version__ = '0.9.118'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.addons.widman.widgets
|
|
6
6
|
"""Package initialization."""
|
|
@@ -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.118'
|
clitt/core/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core
|
|
6
6
|
"""Package initialization."""
|
|
@@ -12,4 +12,4 @@ __all__ = [
|
|
|
12
12
|
'term',
|
|
13
13
|
'tui'
|
|
14
14
|
]
|
|
15
|
-
__version__ = '0.9.
|
|
15
|
+
__version__ = '0.9.118'
|
clitt/core/exception/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.exception
|
|
6
6
|
"""Package initialization."""
|
|
@@ -8,4 +8,4 @@
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
'exceptions'
|
|
10
10
|
]
|
|
11
|
-
__version__ = '0.9.
|
|
11
|
+
__version__ = '0.9.118'
|
clitt/core/icons/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.icons
|
|
6
6
|
"""Package initialization."""
|
|
@@ -9,4 +9,4 @@ __all__ = [
|
|
|
9
9
|
'emojis',
|
|
10
10
|
'font_awesome'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.118'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.icons.emojis
|
|
6
6
|
"""Package initialization."""
|
|
@@ -9,4 +9,4 @@ __all__ = [
|
|
|
9
9
|
'emojis',
|
|
10
10
|
'face_smiling'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.118'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.icons.font_awesome
|
|
6
6
|
"""Package initialization."""
|
|
@@ -15,4 +15,4 @@ __all__ = [
|
|
|
15
15
|
'trickplay_icons',
|
|
16
16
|
'widget_icons'
|
|
17
17
|
]
|
|
18
|
-
__version__ = '0.9.
|
|
18
|
+
__version__ = '0.9.118'
|
clitt/core/term/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.term
|
|
6
6
|
"""Package initialization."""
|
|
@@ -11,4 +11,4 @@ __all__ = [
|
|
|
11
11
|
'screen',
|
|
12
12
|
'terminal'
|
|
13
13
|
]
|
|
14
|
-
__version__ = '0.9.
|
|
14
|
+
__version__ = '0.9.118'
|
clitt/core/term/commons.py
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
|
|
4
|
+
"""
|
|
5
|
+
@project: hspylib-clitt
|
|
6
|
+
@package: hspylib-clitt.main.clitt.core.term
|
|
7
|
+
@file: commons.py
|
|
8
|
+
@created: Wed, 20 Mar 2024
|
|
9
|
+
@author: "<B>H</B>ugo <B>S</B>aporetti <B>J</B>unior")"
|
|
10
|
+
@site: "https://github.com/yorevs/hspylib")
|
|
11
|
+
@license: MIT - Please refer to <https://opensource.org/licenses/MIT>
|
|
12
|
+
|
|
13
|
+
Copyright 2024, HSPyLib team
|
|
14
|
+
"""
|
|
15
|
+
|
|
1
16
|
from clitt.core.exception.exceptions import NotATerminalError
|
|
2
17
|
from hspylib.core.enums.enumeration import Enumeration
|
|
3
18
|
from hspylib.core.tools.commons import is_debugging
|
|
@@ -20,6 +35,11 @@ EraseDirection : TypeAlias = Union["Direction", "Portion"]
|
|
|
20
35
|
# fmt: on
|
|
21
36
|
|
|
22
37
|
|
|
38
|
+
def is_a_tty() -> bool:
|
|
39
|
+
"""Checks whether we are under a tty environment."""
|
|
40
|
+
return sys.stdout.isatty() and sys.stdin.isatty()
|
|
41
|
+
|
|
42
|
+
|
|
23
43
|
class Direction(Enumeration):
|
|
24
44
|
"""Provide a base class for the cursor direction."""
|
|
25
45
|
|
|
@@ -44,7 +64,7 @@ def get_dimensions(fallback: Tuple[int, int] = (24, 80)) -> Tuple[int, int]:
|
|
|
44
64
|
"""Retrieve the size of the terminal.
|
|
45
65
|
:return lines, columns
|
|
46
66
|
"""
|
|
47
|
-
if not
|
|
67
|
+
if not is_a_tty():
|
|
48
68
|
log.warning(NotATerminalError("get_dimensions:: Requires a terminal (TTY)"))
|
|
49
69
|
return fallback
|
|
50
70
|
dim = get_terminal_size((fallback[1], fallback[0]))
|
|
@@ -55,19 +75,21 @@ def get_cursor_position(fallback: Tuple[int, int] = (0, 0)) -> Tuple[int, int]:
|
|
|
55
75
|
"""Get the terminal cursor position.
|
|
56
76
|
:return line, column
|
|
57
77
|
"""
|
|
58
|
-
pos
|
|
78
|
+
pos = fallback
|
|
59
79
|
|
|
60
|
-
if
|
|
61
|
-
log.warning(NotATerminalError("get_cursor_position:: Requires a terminal (TTY)"))
|
|
80
|
+
if is_debugging():
|
|
62
81
|
return pos
|
|
63
82
|
|
|
64
|
-
if
|
|
83
|
+
if not is_a_tty():
|
|
84
|
+
log.warning(NotATerminalError("get_cursor_position:: Requires a terminal (TTY)"))
|
|
65
85
|
return pos
|
|
66
86
|
|
|
67
|
-
|
|
68
|
-
attrs =
|
|
87
|
+
buf, re_query_resp = "", r"^\x1b\[(\d*);(\d*)R"
|
|
88
|
+
stdin, attrs = None, None
|
|
69
89
|
|
|
70
90
|
try:
|
|
91
|
+
stdin = sys.stdin.fileno() # Get the stdin file descriptor.
|
|
92
|
+
attrs = termios.tcgetattr(stdin) # Save terminal attributes.
|
|
71
93
|
tty.setcbreak(stdin, termios.TCSANOW)
|
|
72
94
|
sys.stdout.write(Vt100.get_cursor_pos())
|
|
73
95
|
sys.stdout.flush()
|
|
@@ -76,7 +98,10 @@ def get_cursor_position(fallback: Tuple[int, int] = (0, 0)) -> Tuple[int, int]:
|
|
|
76
98
|
if matches := re.match(re_query_resp, buf): # If the response is 'Esc[r;cR'
|
|
77
99
|
groups = matches.groups()
|
|
78
100
|
pos = int(groups[0]), int(groups[1])
|
|
101
|
+
except termios.error:
|
|
102
|
+
log.warning(NotATerminalError("get_cursor_position:: Requires a terminal (TTY)"))
|
|
79
103
|
finally:
|
|
80
|
-
|
|
104
|
+
if stdin and attrs:
|
|
105
|
+
termios.tcsetattr(stdin, termios.TCSANOW, attrs) # Reset terminal attributes
|
|
81
106
|
|
|
82
107
|
return pos
|
clitt/core/term/cursor.py
CHANGED
|
@@ -1,4 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
|
|
4
|
+
"""
|
|
5
|
+
@project: hspylib-clitt
|
|
6
|
+
@package: hspylib-clitt.main.clitt.core.term
|
|
7
|
+
@file: cursor.py
|
|
8
|
+
@created: Wed, 20 Mar 2024
|
|
9
|
+
@author: "<B>H</B>ugo <B>S</B>aporetti <B>J</B>unior")"
|
|
10
|
+
@site: "https://github.com/yorevs/hspylib")
|
|
11
|
+
@license: MIT - Please refer to <https://opensource.org/licenses/MIT>
|
|
12
|
+
|
|
13
|
+
Copyright 2024, HSPyLib team
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
from clitt.core.term.commons import Direction, EraseDirection, get_cursor_position, MoveDirection, Portion, Position
|
|
2
17
|
from hspylib.core.metaclass.singleton import Singleton
|
|
3
18
|
from hspylib.core.tools.commons import sysout
|
|
4
19
|
from hspylib.core.tools.text_tools import last_index_of
|
|
@@ -7,7 +22,7 @@ from hspylib.modules.cli.vt100.vt_code import VtCode
|
|
|
7
22
|
from hspylib.modules.cli.vt100.vt_color import VtColor
|
|
8
23
|
from typing import Any
|
|
9
24
|
|
|
10
|
-
|
|
25
|
+
import os
|
|
11
26
|
|
|
12
27
|
|
|
13
28
|
class Cursor(metaclass=Singleton):
|
|
@@ -120,7 +135,7 @@ class Cursor(metaclass=Singleton):
|
|
|
120
135
|
sysout(obj, end=end)
|
|
121
136
|
text = (str(obj) + end).replace("%EOL%", os.linesep)
|
|
122
137
|
text = VtColor.strip_colors(VtCode.strip_codes(text))
|
|
123
|
-
text_offset = len(text[max(0, last_index_of(text, os.linesep)):])
|
|
138
|
+
text_offset = len(text[max(0, last_index_of(text, os.linesep)) :])
|
|
124
139
|
self.position = self.position[0] + text.count(os.linesep), text_offset + (
|
|
125
140
|
self.position[1] if text.count(os.linesep) == 0 else 0
|
|
126
141
|
)
|
clitt/core/term/screen.py
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
|
|
4
|
+
"""
|
|
5
|
+
@project: hspylib-clitt
|
|
6
|
+
@package: hspylib-clitt.main.clitt.core.term
|
|
7
|
+
@file: screen.py
|
|
8
|
+
@created: Wed, 20 Mar 2024
|
|
9
|
+
@author: "<B>H</B>ugo <B>S</B>aporetti <B>J</B>unior")"
|
|
10
|
+
@site: "https://github.com/yorevs/hspylib")
|
|
11
|
+
@license: MIT - Please refer to <https://opensource.org/licenses/MIT>
|
|
12
|
+
|
|
13
|
+
Copyright 2024, HSPyLib team
|
|
14
|
+
"""
|
|
15
|
+
|
|
1
16
|
from clitt.core.term.commons import Dimension, get_dimensions, Portion, Resize_Cb
|
|
2
17
|
from clitt.core.term.cursor import Cursor
|
|
3
18
|
from clitt.core.tui.tui_preferences import TUIPreferences
|
clitt/core/term/terminal.py
CHANGED
|
@@ -12,27 +12,26 @@
|
|
|
12
12
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
|
-
import
|
|
16
|
-
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import select
|
|
20
|
-
import shlex
|
|
21
|
-
import signal
|
|
22
|
-
import sys
|
|
23
|
-
from subprocess import CalledProcessError, Popen, PIPE
|
|
24
|
-
from typing import Any, Optional, Tuple, List, Iterable
|
|
25
|
-
|
|
15
|
+
from clitt.core.exception.exceptions import NotATerminalError
|
|
16
|
+
from clitt.core.term.commons import is_a_tty
|
|
17
|
+
from clitt.core.term.cursor import Cursor
|
|
18
|
+
from clitt.core.term.screen import Screen
|
|
26
19
|
from hspylib.core.enums.charset import Charset
|
|
27
20
|
from hspylib.core.metaclass.singleton import Singleton
|
|
28
21
|
from hspylib.core.tools.commons import sysout
|
|
29
22
|
from hspylib.modules.application.exit_status import ExitStatus
|
|
30
23
|
from hspylib.modules.cli.keyboard import Keyboard
|
|
31
24
|
from hspylib.modules.cli.vt100.vt_100 import Vt100
|
|
25
|
+
from subprocess import CalledProcessError, PIPE, Popen
|
|
26
|
+
from typing import Any, Iterable, List, Optional, Tuple
|
|
32
27
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
28
|
+
import atexit
|
|
29
|
+
import logging as log
|
|
30
|
+
import os
|
|
31
|
+
import platform
|
|
32
|
+
import select
|
|
33
|
+
import shlex
|
|
34
|
+
import signal
|
|
36
35
|
|
|
37
36
|
|
|
38
37
|
class Terminal(metaclass=Singleton):
|
|
@@ -42,7 +41,7 @@ class Terminal(metaclass=Singleton):
|
|
|
42
41
|
|
|
43
42
|
@staticmethod
|
|
44
43
|
def is_a_tty() -> bool:
|
|
45
|
-
return
|
|
44
|
+
return is_a_tty()
|
|
46
45
|
|
|
47
46
|
@staticmethod
|
|
48
47
|
def _chain_pipes(cmd_list: Iterable, **kwargs) -> Popen:
|
|
@@ -55,7 +54,7 @@ class Terminal(metaclass=Singleton):
|
|
|
55
54
|
del kwargs["stderr"]
|
|
56
55
|
if "stdin" in kwargs:
|
|
57
56
|
del kwargs["stdin"]
|
|
58
|
-
commands = map(shlex.split, cmd_list) if
|
|
57
|
+
commands = map(shlex.split, cmd_list) if "shell" not in kwargs else cmd_list
|
|
59
58
|
first_cmd, *rest_cmds = commands
|
|
60
59
|
if len(rest_cmds) > 0:
|
|
61
60
|
procs: List[Popen] = [Popen(first_cmd, stdout=PIPE, stderr=PIPE, **kwargs)]
|
clitt/core/tui/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui
|
|
6
6
|
"""Package initialization."""
|
|
@@ -17,4 +17,4 @@ __all__ = [
|
|
|
17
17
|
'tui_component',
|
|
18
18
|
'tui_preferences'
|
|
19
19
|
]
|
|
20
|
-
__version__ = '0.9.
|
|
20
|
+
__version__ = '0.9.118'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui.line_input
|
|
6
6
|
"""Package initialization."""
|
|
@@ -9,4 +9,4 @@ __all__ = [
|
|
|
9
9
|
'keyboard_input',
|
|
10
10
|
'line_input'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.118'
|
|
@@ -13,15 +13,14 @@
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
15
|
|
|
16
|
-
from typing import Optional, List, Dict
|
|
17
|
-
|
|
18
|
-
import pyperclip
|
|
19
|
-
from hspylib.modules.cli.keyboard import Keyboard
|
|
20
|
-
from hspylib.modules.cli.vt100.vt_color import VtColor
|
|
21
|
-
|
|
22
16
|
from clitt.core.term.commons import Direction
|
|
23
17
|
from clitt.core.term.terminal import Terminal
|
|
24
18
|
from clitt.core.tui.tui_component import TUIComponent
|
|
19
|
+
from hspylib.modules.cli.keyboard import Keyboard
|
|
20
|
+
from hspylib.modules.cli.vt100.vt_color import VtColor
|
|
21
|
+
from typing import Dict, List, Optional
|
|
22
|
+
|
|
23
|
+
import pyperclip
|
|
25
24
|
|
|
26
25
|
|
|
27
26
|
class KeyboardInput(TUIComponent):
|
|
@@ -42,7 +41,8 @@ class KeyboardInput(TUIComponent):
|
|
|
42
41
|
@staticmethod
|
|
43
42
|
def preload_history(history: List[str]) -> None:
|
|
44
43
|
"""Preload the input with the provided dictionary."""
|
|
45
|
-
|
|
44
|
+
rev_history = reversed(history)
|
|
45
|
+
for entry in rev_history:
|
|
46
46
|
KeyboardInput._add_history(entry)
|
|
47
47
|
KeyboardInput._HIST_INDEX = 0
|
|
48
48
|
|
|
@@ -97,10 +97,11 @@ class KeyboardInput(TUIComponent):
|
|
|
97
97
|
return text
|
|
98
98
|
|
|
99
99
|
def __init__(
|
|
100
|
-
self,
|
|
100
|
+
self,
|
|
101
|
+
prompt: str = "",
|
|
101
102
|
prompt_color: VtColor = VtColor.NC,
|
|
102
103
|
text_color: VtColor = VtColor.NC,
|
|
103
|
-
navbar_enable: bool = False
|
|
104
|
+
navbar_enable: bool = False,
|
|
104
105
|
):
|
|
105
106
|
super().__init__(prompt)
|
|
106
107
|
self._prompt_color = prompt_color
|
|
@@ -168,18 +169,18 @@ class KeyboardInput(TUIComponent):
|
|
|
168
169
|
if self._input_index > 0:
|
|
169
170
|
self._input_index = max(0, self._input_index - 1)
|
|
170
171
|
self._update_input(
|
|
171
|
-
self._input_text[: self._input_index] + self._input_text[1 + self._input_index:]
|
|
172
|
+
self._input_text[: self._input_index] + self._input_text[1 + self._input_index :]
|
|
172
173
|
)
|
|
173
174
|
case Keyboard.VK_DELETE:
|
|
174
175
|
self._update_input(
|
|
175
|
-
self._input_text[: self._input_index] + self._input_text[1 + self._input_index:]
|
|
176
|
+
self._input_text[: self._input_index] + self._input_text[1 + self._input_index :]
|
|
176
177
|
)
|
|
177
178
|
case Keyboard.VK_CTRL_F: # Forget history
|
|
178
179
|
self.forget_history()
|
|
179
180
|
case Keyboard.VK_CTRL_P: # Paste from clipboard
|
|
180
|
-
text = (pyperclip.paste() or
|
|
181
|
+
text = (pyperclip.paste() or "").replace("\n", "↵")
|
|
181
182
|
self._update_input(
|
|
182
|
-
self._input_text[: self._input_index] + text + self._input_text[self._input_index:]
|
|
183
|
+
self._input_text[: self._input_index] + text + self._input_text[self._input_index :]
|
|
183
184
|
)
|
|
184
185
|
self._input_index += len(text)
|
|
185
186
|
case Keyboard.VK_CTRL_R: # Reset contents
|
|
@@ -201,7 +202,7 @@ class KeyboardInput(TUIComponent):
|
|
|
201
202
|
self._input_index = self.length
|
|
202
203
|
case _ as key if key.val.isprintable():
|
|
203
204
|
self._update_input(
|
|
204
|
-
self._input_text[: self._input_index] + key.val + self._input_text[self._input_index:]
|
|
205
|
+
self._input_text[: self._input_index] + key.val + self._input_text[self._input_index :]
|
|
205
206
|
)
|
|
206
207
|
self._input_index += 1
|
|
207
208
|
case _ as key if key in Keyboard.break_keys():
|
|
@@ -12,18 +12,14 @@
|
|
|
12
12
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
|
+
from clitt.core.tui.line_input.keyboard_input import KeyboardInput
|
|
15
16
|
from hspylib.modules.cli.keyboard import Keyboard
|
|
16
17
|
from hspylib.modules.cli.vt100.vt_color import VtColor
|
|
17
18
|
from typing import Optional
|
|
18
19
|
|
|
19
|
-
from clitt.core.tui.line_input.keyboard_input import KeyboardInput
|
|
20
|
-
|
|
21
20
|
|
|
22
21
|
def line_input(
|
|
23
|
-
prompt: str = "",
|
|
24
|
-
prompt_color: VtColor = VtColor.NC,
|
|
25
|
-
text_color: VtColor = VtColor.NC,
|
|
26
|
-
navbar_enable: bool = False
|
|
22
|
+
prompt: str = "", prompt_color: VtColor = VtColor.NC, text_color: VtColor = VtColor.NC, navbar_enable: bool = False
|
|
27
23
|
) -> Optional[str | Keyboard]:
|
|
28
24
|
"""Read a string from standard input.
|
|
29
25
|
:param prompt: The message to be displayed to the user.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui.mchoose
|
|
6
6
|
"""Package initialization."""
|
|
@@ -9,4 +9,4 @@ __all__ = [
|
|
|
9
9
|
'mchoose',
|
|
10
10
|
'menu_choose'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.118'
|
|
@@ -12,11 +12,10 @@
|
|
|
12
12
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
|
+
from clitt.core.tui.mchoose.menu_choose import MenuChoose
|
|
15
16
|
from hspylib.core.enums.charset import Charset
|
|
16
17
|
from typing import List, Optional, TypeVar
|
|
17
18
|
|
|
18
|
-
from clitt.core.tui.mchoose.menu_choose import MenuChoose
|
|
19
|
-
|
|
20
19
|
T = TypeVar("T")
|
|
21
20
|
|
|
22
21
|
|
|
@@ -24,7 +23,7 @@ def mchoose(
|
|
|
24
23
|
items: List[T],
|
|
25
24
|
checked: bool | List[bool] = False,
|
|
26
25
|
title: str = "Please choose among the options",
|
|
27
|
-
output: str = None
|
|
26
|
+
output: str = None,
|
|
28
27
|
) -> Optional[List[T]]:
|
|
29
28
|
"""
|
|
30
29
|
Terminal UI menu choose input method.
|
|
@@ -12,14 +12,13 @@
|
|
|
12
12
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
|
-
from hspylib.modules.cli.keyboard import Keyboard
|
|
16
|
-
from hspylib.core.tools.commons import to_bool
|
|
17
|
-
from hspylib.core.tools.dict_tools import get_or_default
|
|
18
|
-
from typing import List, Optional, TypeAlias, TypeVar
|
|
19
|
-
|
|
20
15
|
from clitt.core.icons.font_awesome.nav_icons import NavIcons
|
|
21
16
|
from clitt.core.term.commons import Direction, Portion
|
|
22
17
|
from clitt.core.tui.tui_component import TUIComponent
|
|
18
|
+
from hspylib.core.tools.commons import to_bool
|
|
19
|
+
from hspylib.core.tools.dict_tools import get_or_default
|
|
20
|
+
from hspylib.modules.cli.keyboard import Keyboard
|
|
21
|
+
from typing import List, Optional, TypeAlias, TypeVar
|
|
23
22
|
|
|
24
23
|
T = TypeVar("T")
|
|
25
24
|
|
|
@@ -35,11 +34,7 @@ class MenuChoose(TUIComponent):
|
|
|
35
34
|
|
|
36
35
|
MIN_ROWS = 3
|
|
37
36
|
|
|
38
|
-
def __init__(
|
|
39
|
-
self,
|
|
40
|
-
title: str,
|
|
41
|
-
items: MChooseItems,
|
|
42
|
-
checked: bool | List[bool] = False):
|
|
37
|
+
def __init__(self, title: str, items: MChooseItems, checked: bool | List[bool] = False):
|
|
43
38
|
|
|
44
39
|
super().__init__(title)
|
|
45
40
|
self.items = items
|
|
@@ -62,10 +57,7 @@ class MenuChoose(TUIComponent):
|
|
|
62
57
|
self._prepare_render()
|
|
63
58
|
keypress = self._loop()
|
|
64
59
|
|
|
65
|
-
return (
|
|
66
|
-
[op for idx, op in enumerate(self.items) if self.sel_options[idx]]
|
|
67
|
-
if keypress.isEnter() else None
|
|
68
|
-
)
|
|
60
|
+
return [op for idx, op in enumerate(self.items) if self.sel_options[idx]] if keypress.isEnter() else None
|
|
69
61
|
|
|
70
62
|
def render(self) -> None:
|
|
71
63
|
length = len(self.items)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui.mdashboard
|
|
6
6
|
"""Package initialization."""
|
|
@@ -11,4 +11,4 @@ __all__ = [
|
|
|
11
11
|
'mdashboard',
|
|
12
12
|
'menu_dashboard'
|
|
13
13
|
]
|
|
14
|
-
__version__ = '0.9.
|
|
14
|
+
__version__ = '0.9.118'
|
|
@@ -82,9 +82,7 @@ class MenuDashBoard(TUIComponent):
|
|
|
82
82
|
self.writeln(f"{self.prefs.title_color.placeholder}{self.title}%EOL%%NC%")
|
|
83
83
|
|
|
84
84
|
for idx, item in enumerate(self._items):
|
|
85
|
-
self._draw_item(
|
|
86
|
-
idx, item, MenuDashBoard.CELL_TPL if self._tab_index != idx else MenuDashBoard.SEL_CELL_TPL
|
|
87
|
-
)
|
|
85
|
+
self._draw_item(idx, item, MenuDashBoard.CELL_TPL if self._tab_index != idx else MenuDashBoard.SEL_CELL_TPL)
|
|
88
86
|
|
|
89
87
|
self.cursor.erase(Portion.LINE)
|
|
90
88
|
self.cursor.move_to(column=1)
|
|
@@ -117,11 +115,7 @@ class MenuDashBoard(TUIComponent):
|
|
|
117
115
|
|
|
118
116
|
return keypress
|
|
119
117
|
|
|
120
|
-
def _draw_item(
|
|
121
|
-
self,
|
|
122
|
-
item_idx: int,
|
|
123
|
-
item: DashboardItem,
|
|
124
|
-
cell_template: DashboardMatrix) -> None:
|
|
118
|
+
def _draw_item(self, item_idx: int, item: DashboardItem, cell_template: DashboardMatrix) -> None:
|
|
125
119
|
"""Print the specified dashboard item at the given index.
|
|
126
120
|
:param item_idx: the item index.
|
|
127
121
|
:param item: the dashboard item.
|
clitt/core/tui/menu/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui.menu
|
|
6
6
|
"""Package initialization."""
|
|
@@ -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.118'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui.minput
|
|
6
6
|
"""Package initialization."""
|
|
@@ -16,4 +16,4 @@ __all__ = [
|
|
|
16
16
|
'minput',
|
|
17
17
|
'minput_utils'
|
|
18
18
|
]
|
|
19
|
-
__version__ = '0.9.
|
|
19
|
+
__version__ = '0.9.118'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui.mselect
|
|
6
6
|
"""Package initialization."""
|
|
@@ -9,4 +9,4 @@ __all__ = [
|
|
|
9
9
|
'menu_select',
|
|
10
10
|
'mselect'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.118'
|
|
@@ -12,12 +12,11 @@
|
|
|
12
12
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
|
-
from hspylib.modules.cli.keyboard import Keyboard
|
|
16
|
-
from typing import List, Optional, TypeAlias, TypeVar
|
|
17
|
-
|
|
18
15
|
from clitt.core.icons.font_awesome.nav_icons import NavIcons
|
|
19
16
|
from clitt.core.term.commons import Direction, Portion
|
|
20
17
|
from clitt.core.tui.tui_component import TUIComponent
|
|
18
|
+
from hspylib.modules.cli.keyboard import Keyboard
|
|
19
|
+
from typing import List, Optional, TypeAlias, TypeVar
|
|
21
20
|
|
|
22
21
|
T = TypeVar("T")
|
|
23
22
|
|
clitt/core/tui/table/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# _*_ coding: utf-8 _*_
|
|
2
2
|
#
|
|
3
|
-
# hspylib-clitt v0.9.
|
|
3
|
+
# hspylib-clitt v0.9.118
|
|
4
4
|
#
|
|
5
5
|
# Package: main.clitt.core.tui.table
|
|
6
6
|
"""Package initialization."""
|
|
@@ -9,4 +9,4 @@ __all__ = [
|
|
|
9
9
|
'table_enums',
|
|
10
10
|
'table_renderer'
|
|
11
11
|
]
|
|
12
|
-
__version__ = '0.9.
|
|
12
|
+
__version__ = '0.9.118'
|
|
@@ -12,17 +12,16 @@
|
|
|
12
12
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
|
|
15
|
+
from clitt.core.term.screen import screen
|
|
16
|
+
from clitt.core.term.terminal import terminal
|
|
18
17
|
from hspylib.core.metaclass.classpath import AnyPath
|
|
19
18
|
from hspylib.core.metaclass.singleton import AbstractSingleton
|
|
20
19
|
from hspylib.modules.application.application import Application
|
|
21
20
|
from hspylib.modules.application.exit_status import ExitStatus
|
|
22
21
|
from hspylib.modules.application.version import Version
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
import os
|
|
24
|
+
import sys
|
|
26
25
|
|
|
27
26
|
|
|
28
27
|
class TUIApplication(Application, metaclass=AbstractSingleton):
|
clitt/core/tui/tui_component.py
CHANGED
|
@@ -13,16 +13,15 @@
|
|
|
13
13
|
Copyright·(c)·2024,·HSPyLib
|
|
14
14
|
"""
|
|
15
15
|
from abc import ABC, abstractmethod
|
|
16
|
-
from hspylib.core.tools.text_tools import elide_text
|
|
17
|
-
from hspylib.modules.cli.keyboard import Keyboard
|
|
18
|
-
from typing import Any, List, Optional, TypeVar
|
|
19
|
-
|
|
20
16
|
from clitt.core.icons.font_awesome.awesome import Awesome
|
|
21
17
|
from clitt.core.term.commons import Direction
|
|
22
18
|
from clitt.core.term.cursor import Cursor
|
|
23
19
|
from clitt.core.term.screen import Screen
|
|
24
20
|
from clitt.core.term.terminal import Terminal
|
|
25
21
|
from clitt.core.tui.tui_preferences import TUIPreferences
|
|
22
|
+
from hspylib.core.tools.text_tools import elide_text
|
|
23
|
+
from hspylib.modules.cli.keyboard import Keyboard
|
|
24
|
+
from typing import Any, List, Optional, TypeVar
|
|
26
25
|
|
|
27
26
|
T = TypeVar("T", bound=Any)
|
|
28
27
|
|
|
@@ -90,7 +89,7 @@ class TUIComponent(ABC):
|
|
|
90
89
|
self.cursor.end()
|
|
91
90
|
self.cursor.erase(Direction.DOWN)
|
|
92
91
|
self.cursor.reset_mode()
|
|
93
|
-
self.cursor.writeln(
|
|
92
|
+
self.cursor.writeln("\n")
|
|
94
93
|
|
|
95
94
|
return keypress
|
|
96
95
|
|
clitt/utils/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: hspylib-clitt
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.118
|
|
4
4
|
Summary: HsPyLib - CLI Terminal Tools
|
|
5
5
|
Home-page: https://github.com/yorevs/hspylib
|
|
6
6
|
Author: Hugo Saporetti Junior
|
|
@@ -35,7 +35,7 @@ Requires-Dist: urllib3 <2.0.0
|
|
|
35
35
|
## Create professional CLI applications
|
|
36
36
|
|
|
37
37
|
[](LICENSE.md)
|
|
38
|
-
[](CHANGELOG.md#unreleased)
|
|
39
39
|
[](https://pypi.org/project/hspylib-clitt)
|
|
40
40
|
[](https://github.com/yorevs/hspylib)
|
|
41
41
|
[](https://gitter.im/hspylib/community)
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
clitt/.version,sha256=
|
|
1
|
+
clitt/.version,sha256=Krzdxlo2NW9b4TWVaUeG6RwXJtyuiaxKRCrx2zoDLUw,8
|
|
2
2
|
clitt/__classpath__.py,sha256=_woVRfXoFlEHBbtg-we43FJOrIlvdyumxsUV2IloHhE,884
|
|
3
|
-
clitt/__init__.py,sha256=
|
|
3
|
+
clitt/__init__.py,sha256=Z-kEDIkWyt6VlsAZCaQB4VJgzIFiOvKld0suKDJOXfY,184
|
|
4
4
|
clitt/__main__.py,sha256=43Ugh79L57yhShIvtVqQwrQvsLy2rOtYgVm6g9Nsz_o,5321
|
|
5
5
|
clitt/welcome.txt,sha256=z72ySJw-1VQHvWmd8pZ95P6t4zEkIWGbqTRT83P2hJw,169
|
|
6
|
-
clitt/addons/__init__.py,sha256=
|
|
7
|
-
clitt/addons/appman/__init__.py,sha256=
|
|
6
|
+
clitt/addons/__init__.py,sha256=0wV7XE19yjGaAyGouFbO2BsbG-JHMJOj9Ogsw4cBlas,179
|
|
7
|
+
clitt/addons/appman/__init__.py,sha256=UFiZWihtf13wbz2SCar3VUMPk9p-O_4swlaog2Yehe8,210
|
|
8
8
|
clitt/addons/appman/appman.py,sha256=m3cUZzeNuZtky6U26q5way7xMNcLxKeQEdfpGXzboL8,13154
|
|
9
9
|
clitt/addons/appman/appman_enums.py,sha256=DL99b1gQXdTF-u0VkyknMQDqROHomzN4J570B1NYbqs,874
|
|
10
|
-
clitt/addons/appman/templates/__init__.py,sha256=
|
|
10
|
+
clitt/addons/appman/templates/__init__.py,sha256=VYapgKbMlzSIgvzdkHaZKDWVXyCs9ymcrAci_b3xjKI,173
|
|
11
11
|
clitt/addons/appman/templates/build.gradle.tpl,sha256=VQKs4r41xPr7P14PtQPt3alYCmNuXaGraaXbKB_FKkM,1817
|
|
12
12
|
clitt/addons/appman/templates/classpath.py.tpl,sha256=R60uLvVxeJ7nJCXCvav_9LAnDe5VOfJqWO-T1QAlwAc,397
|
|
13
13
|
clitt/addons/appman/templates/dependencies.hspd.tpl,sha256=bbVNU6XBm5QT28lvH7Bp_4nlXvoD-LwX5kGQ-CPhOEA,764
|
|
@@ -20,24 +20,24 @@ clitt/addons/appman/templates/run.sh.tpl,sha256=2xpuHjZP9-7j14dAA2CqPm4G2xtnuenf
|
|
|
20
20
|
clitt/addons/appman/templates/test_main.py.tpl,sha256=y5Bo0ku6FP67WjHfYUF4Kt9tdQ67MSlN6LgoF_NUm-U,1241
|
|
21
21
|
clitt/addons/appman/templates/usage.txt.tpl,sha256=R0e48HCeD7PDbWnX6HGIjz6gr_hBdp-zK6V42U1Aexw,217
|
|
22
22
|
clitt/addons/appman/templates/widget.py.tpl,sha256=-4q8hYP1Xdx8ttexeHuFnjMH_DoBANEoN9f59jzHDR4,1670
|
|
23
|
-
clitt/addons/widman/__init__.py,sha256=
|
|
23
|
+
clitt/addons/widman/__init__.py,sha256=9IpOrmyoW4UxaTbgpTZqam5Aur9CfWzWDxik2V68w-0,223
|
|
24
24
|
clitt/addons/widman/widget.py,sha256=mOTpd1O3Cf37Ulz_nKSw9sU_gkE5X6wD28mIupOfVSM,1922
|
|
25
25
|
clitt/addons/widman/widget_entry.py,sha256=jFvfV2xX_0-Qdj3dDp_UdDtWoy5YkJr0x84X629_iGY,1358
|
|
26
26
|
clitt/addons/widman/widman.py,sha256=-PGBiWHxK7YJE632DRXisrUumVKES8U_Pemb_7xsFGM,5274
|
|
27
|
-
clitt/addons/widman/widgets/__init__.py,sha256=
|
|
27
|
+
clitt/addons/widman/widgets/__init__.py,sha256=pUJdV9zpxIyNTlPE5tm40nyynNAy1RmkAxPDY-t-ue8,254
|
|
28
28
|
clitt/addons/widman/widgets/widget_free.py,sha256=z_4-1cZG0l_LUEDvtjU5dLbCG2XzqD_Rnw49T45_awc,3995
|
|
29
29
|
clitt/addons/widman/widgets/widget_punch.py,sha256=L8nIrQGtMsEOr6o3t2-BlSBhca3rB0b_hKuYQrYyeTU,10607
|
|
30
30
|
clitt/addons/widman/widgets/widget_send_msg.py,sha256=SjK3w36uvsVoOeVs5JiKmlqO9GhQn5dYvIqmbNdkFaQ,11058
|
|
31
31
|
clitt/addons/widman/widgets/widget_time_calc.py,sha256=kfwwDzp8E-4uE2jt3v_DIZA8RSbK9vQWVOqqTpOvYYo,5037
|
|
32
|
-
clitt/core/__init__.py,sha256=
|
|
32
|
+
clitt/core/__init__.py,sha256=9xKVRxps-f73RDh6FUyH37NKAvaYbWlUkSZkdMK4X9g,224
|
|
33
33
|
clitt/core/preferences.py,sha256=-A5fewJQY0rOqUIrlNKycdW5rpf60-GniHUE03jNWgY,3142
|
|
34
|
-
clitt/core/exception/__init__.py,sha256=
|
|
35
|
-
clitt/core/exception/exceptions.py,sha256=
|
|
36
|
-
clitt/core/icons/__init__.py,sha256=
|
|
37
|
-
clitt/core/icons/emojis/__init__.py,sha256=
|
|
34
|
+
clitt/core/exception/__init__.py,sha256=XKzaDbfWQEfW3ClyhFOqcSs8OXE_7xZHZtKJkR9A0es,176
|
|
35
|
+
clitt/core/exception/exceptions.py,sha256=WBY5vDokKkrrdc4UjJZdEhxzdYjtFo-HuAx3EmXwanA,478
|
|
36
|
+
clitt/core/icons/__init__.py,sha256=V-tUryXE5939UjzBdJSl_cVPXHR0ypdkKVNGEXFKID4,189
|
|
37
|
+
clitt/core/icons/emojis/__init__.py,sha256=awWpTLcYBV3nDN0Uyn08kvmXxiUUu-YlzYKay0hz0HI,196
|
|
38
38
|
clitt/core/icons/emojis/emojis.py,sha256=pNh3lEk-dNZlDS8hReK4FMyZq0Pz9zU1BXT-C2QyNno,1111
|
|
39
39
|
clitt/core/icons/emojis/face_smiling.py,sha256=rpMozq6ahAh6sw-7xVOUL3-ViIZsquamDrdvvwUtacU,1271
|
|
40
|
-
clitt/core/icons/font_awesome/__init__.py,sha256=
|
|
40
|
+
clitt/core/icons/font_awesome/__init__.py,sha256=6mWe_SLeKtdYIMpF7BL-r8je-7KpU_d8BrJIRDK6-hU,325
|
|
41
41
|
clitt/core/icons/font_awesome/app_icons.py,sha256=6Voo5dDbyeYN8ZLawm6jUQwq62Cfe669bQ1HOtAYB4A,1702
|
|
42
42
|
clitt/core/icons/font_awesome/awesome.py,sha256=sR7H2U2TQSDf9ZtmRsU5EOef-gYboEmsob1TG3VYRQE,2243
|
|
43
43
|
clitt/core/icons/font_awesome/dashboard_icons.py,sha256=iaAHme-DBlcvER5-R33w80x5vOOBDvebp332B6ql5zA,3122
|
|
@@ -46,34 +46,34 @@ clitt/core/icons/font_awesome/game_icons.py,sha256=veZuoz3Dz7ubzH3hoAoNzD9WLkuSu
|
|
|
46
46
|
clitt/core/icons/font_awesome/nav_icons.py,sha256=D75lokoZUHAIH4WLb0Xj0DWvGLoOoXTNKpteQpL4iPk,1183
|
|
47
47
|
clitt/core/icons/font_awesome/trickplay_icons.py,sha256=NGItIGhqYBamyxNT5kJmqV1jjrD5rXPT-DRsy3jKwCE,1081
|
|
48
48
|
clitt/core/icons/font_awesome/widget_icons.py,sha256=YO3eMOjAeBszLNkH998G0rMjTuUfJ3t3t3T_KqYOeQc,1026
|
|
49
|
-
clitt/core/term/__init__.py,sha256=
|
|
50
|
-
clitt/core/term/commons.py,sha256=
|
|
51
|
-
clitt/core/term/cursor.py,sha256=
|
|
52
|
-
clitt/core/term/screen.py,sha256=
|
|
53
|
-
clitt/core/term/terminal.py,sha256=
|
|
54
|
-
clitt/core/tui/__init__.py,sha256=
|
|
55
|
-
clitt/core/tui/tui_application.py,sha256=
|
|
56
|
-
clitt/core/tui/tui_component.py,sha256=
|
|
49
|
+
clitt/core/term/__init__.py,sha256=F68yAoFSEjKMkmhPzRHJ7eoeUv2j22SJG3cFdK-TYak,215
|
|
50
|
+
clitt/core/term/commons.py,sha256=rrDFYDgwivfMzZucRgumq4fJgwzZWGuV70OPkDrF_Zw,3390
|
|
51
|
+
clitt/core/term/cursor.py,sha256=OC3j24mrKsz73lD6zmwec9ICdxIxfpWGBr96pzupmnk,6326
|
|
52
|
+
clitt/core/term/screen.py,sha256=1lj8iwoko741favNBik9Ue6K-OCe2nrv2mprs_c9YRo,3331
|
|
53
|
+
clitt/core/term/terminal.py,sha256=NBdant1M4SbwVddA2CNtLt-6gw00-XNgMUSWSX0j5GE,7724
|
|
54
|
+
clitt/core/tui/__init__.py,sha256=hOjiU0_uzFINO11bUM7GpKtRumars36A-8LYOXUJkug,333
|
|
55
|
+
clitt/core/tui/tui_application.py,sha256=jD2_RbiUAnWtEOC6NndniFziHrhguIHx4i9T1_PuYgo,1653
|
|
56
|
+
clitt/core/tui/tui_component.py,sha256=qIeGF_Dog6JuKYIaYy4sRDTDz3ai8WHSturYuh5Iy7w,4880
|
|
57
57
|
clitt/core/tui/tui_preferences.py,sha256=7GbnlhjbSQjzwixbMb4HHX913dpJCPnMaryLdY7TJuI,3110
|
|
58
|
-
clitt/core/tui/line_input/__init__.py,sha256=
|
|
59
|
-
clitt/core/tui/line_input/keyboard_input.py,sha256=
|
|
60
|
-
clitt/core/tui/line_input/line_input.py,sha256=
|
|
61
|
-
clitt/core/tui/mchoose/__init__.py,sha256=
|
|
62
|
-
clitt/core/tui/mchoose/mchoose.py,sha256=
|
|
63
|
-
clitt/core/tui/mchoose/menu_choose.py,sha256=
|
|
64
|
-
clitt/core/tui/mdashboard/__init__.py,sha256=
|
|
58
|
+
clitt/core/tui/line_input/__init__.py,sha256=68H5_qLl_j4Lxuk_EzLUuGWYe6mFBID869ZsZJBGv_A,204
|
|
59
|
+
clitt/core/tui/line_input/keyboard_input.py,sha256=iMTBw8Zl8bmk0_c51Uj0lOPW1UOXdrcaXhNuz2uqnB4,8403
|
|
60
|
+
clitt/core/tui/line_input/line_input.py,sha256=_-TiKg0YlKnXDSi4w8rWSv2jDJB5b8-1SoT0ui2tdVA,1144
|
|
61
|
+
clitt/core/tui/mchoose/__init__.py,sha256=il2xeQiiMdvXGtoImixw371P7YoZ0py5CKlmcoAHgfQ,195
|
|
62
|
+
clitt/core/tui/mchoose/mchoose.py,sha256=iqfyRYKLAslfFsQuZnra0lcMfx2GjZ8r4KuQrPSzAf0,1284
|
|
63
|
+
clitt/core/tui/mchoose/menu_choose.py,sha256=4kRvZCFpQxFPskUS7LcpPg4FgneKxnMe8z9DLzRsqMg,7136
|
|
64
|
+
clitt/core/tui/mdashboard/__init__.py,sha256=hbCFL9McWq9uFGHzDPug-M60IaA2WoO0tztlkcgwJ24,253
|
|
65
65
|
clitt/core/tui/mdashboard/dashboard_builder.py,sha256=RJm_XnrNJX8jE-G_a9dFEa3DDWLNxN2Xnc6HVvQV1FE,1660
|
|
66
66
|
clitt/core/tui/mdashboard/dashboard_item.py,sha256=AhQm1IAj4RlHhj9AH4CHEIqX4SjrOZsGEUkwqiUs3js,888
|
|
67
67
|
clitt/core/tui/mdashboard/mdashboard.py,sha256=VWzNw_bQf8sQGRXrIqvNdIxauOmYiZ_ZnX0PTr0i5-M,892
|
|
68
|
-
clitt/core/tui/mdashboard/menu_dashboard.py,sha256=
|
|
69
|
-
clitt/core/tui/menu/__init__.py,sha256=
|
|
68
|
+
clitt/core/tui/mdashboard/menu_dashboard.py,sha256=GxJnq_AeZJmNySoLUX3wSSfPYW3B5ip3tI4zSFNo1KQ,5612
|
|
69
|
+
clitt/core/tui/menu/__init__.py,sha256=WpDMt24FYnkMi3P7h4giK921oronwrSQ5QLNWnQhM4g,286
|
|
70
70
|
clitt/core/tui/menu/tui_menu.py,sha256=Yro2ug3MSRWA9mJiqq3Jm2FCRVZI-gc_YyxX0Fc4g4g,3574
|
|
71
71
|
clitt/core/tui/menu/tui_menu_action.py,sha256=20ZfmIkKKuf_y_hBPUQRx_QPtjNvTxV-3ui9opn74Yo,1537
|
|
72
72
|
clitt/core/tui/menu/tui_menu_factory.py,sha256=tsQiYJqQdAZjs5aNxlXgwHT3EueSs9mbV4-Ec9HqtRM,4590
|
|
73
73
|
clitt/core/tui/menu/tui_menu_item.py,sha256=5IcDZ8MSy47WHlpTnDLty2fHjOr13CDvTGWsHU_briE,7442
|
|
74
74
|
clitt/core/tui/menu/tui_menu_ui.py,sha256=BdebIp3kmycTgrcPyDk20fS1kNQwqed_hQl7TiHx9Z4,3255
|
|
75
75
|
clitt/core/tui/menu/tui_menu_view.py,sha256=eGoaw_krAR5WQhqYu7fAnmuzz4ouYdWe8wUopBiZE1I,1922
|
|
76
|
-
clitt/core/tui/minput/__init__.py,sha256=
|
|
76
|
+
clitt/core/tui/minput/__init__.py,sha256=quAJf2MTbTO6gtJHCG_-kMZKuaJkMdspAUSun1O172A,338
|
|
77
77
|
clitt/core/tui/minput/access_type.py,sha256=xNW-Qq0T4Je9WXG69BiTY2piFKCgAd87djam6zJeQ6Q,638
|
|
78
78
|
clitt/core/tui/minput/field_builder.py,sha256=TJEoZ2X1RH3uy0zaipL_yFfAy0j7rNU-PORPZvjqAfQ,4373
|
|
79
79
|
clitt/core/tui/minput/form_builder.py,sha256=XDKnDLz7UeYn9UHYCOrAFwjyR59BWnJ7XQVNdy4gf6w,2867
|
|
@@ -83,15 +83,15 @@ clitt/core/tui/minput/input_validator.py,sha256=yLnuDS5at1_COGNhljpeCkiQQpVOS5ws
|
|
|
83
83
|
clitt/core/tui/minput/menu_input.py,sha256=JVHVVgzwpwW237FnBgd-Pc9sUAWBIareiH1SfXQAnk4,12883
|
|
84
84
|
clitt/core/tui/minput/minput.py,sha256=qWG5ykYd5GU_50lANJ7egrCALvxh1aGVnq9JlJKsXdE,1609
|
|
85
85
|
clitt/core/tui/minput/minput_utils.py,sha256=J9iuX9lbw5RWKoEIkMMkRjfm0RcOpjZfEAQTeizwzMc,5267
|
|
86
|
-
clitt/core/tui/mselect/__init__.py,sha256=
|
|
87
|
-
clitt/core/tui/mselect/menu_select.py,sha256=
|
|
86
|
+
clitt/core/tui/mselect/__init__.py,sha256=2wRxFdktbqXLs-OFQ8ZXQRKaQTR96oXSu4PbFTl93wY,195
|
|
87
|
+
clitt/core/tui/mselect/menu_select.py,sha256=BWodSGtjaU-5jBZ8AqEbWGBZ4M71is6GDsWHG3n-yl8,6177
|
|
88
88
|
clitt/core/tui/mselect/mselect.py,sha256=9O9-OKSNwCnZGYzvXhoLyT-2Ssoyg4x8N6REELdt0P8,1116
|
|
89
|
-
clitt/core/tui/table/__init__.py,sha256=
|
|
89
|
+
clitt/core/tui/table/__init__.py,sha256=VFKOg60T9fiz2ib1SV4Tb6p1PJWtN5OVan3OdlUVw5A,200
|
|
90
90
|
clitt/core/tui/table/table_enums.py,sha256=bTIr5h8dWBUfVJTagdd2cxie6KyPJleTgcaS-t7ioX4,1282
|
|
91
91
|
clitt/core/tui/table/table_renderer.py,sha256=gzvXQ7GtE1gqsLsGCcUAidv-DnS8uRUm-ksjqkmoMQs,12800
|
|
92
|
-
clitt/utils/__init__.py,sha256=
|
|
92
|
+
clitt/utils/__init__.py,sha256=9i2uu7wMJTgkqFVzPhVgFJOVe8bV2j27enxnwCFCzj0,166
|
|
93
93
|
clitt/utils/git_utils.py,sha256=B-QZtRpxAXa3Cw3im5qhJTla0LrlWQouMq_-GR8SOHU,2392
|
|
94
|
-
hspylib_clitt-0.9.
|
|
95
|
-
hspylib_clitt-0.9.
|
|
96
|
-
hspylib_clitt-0.9.
|
|
97
|
-
hspylib_clitt-0.9.
|
|
94
|
+
hspylib_clitt-0.9.118.dist-info/METADATA,sha256=etmrlFYQM82lEJ3OUvXpuZuKBtv0U_M2JYOMGsE3MKM,1855
|
|
95
|
+
hspylib_clitt-0.9.118.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
96
|
+
hspylib_clitt-0.9.118.dist-info/top_level.txt,sha256=4aPEfxPvYp14dwV0l6cjCd90nbDutt1Yr27ZqCunZLI,11
|
|
97
|
+
hspylib_clitt-0.9.118.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|