hspylib-clitt 0.9.125__py3-none-any.whl → 0.9.127__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.

Files changed (84) hide show
  1. clitt/.version +1 -1
  2. clitt/__classpath__.py +1 -1
  3. clitt/__init__.py +2 -2
  4. clitt/__main__.py +1 -1
  5. clitt/addons/__init__.py +2 -2
  6. clitt/addons/appman/__init__.py +2 -2
  7. clitt/addons/appman/appman.py +1 -1
  8. clitt/addons/appman/appman_enums.py +1 -1
  9. clitt/addons/appman/templates/__init__.py +2 -2
  10. clitt/addons/widman/__init__.py +2 -2
  11. clitt/addons/widman/widget.py +1 -1
  12. clitt/addons/widman/widget_entry.py +1 -1
  13. clitt/addons/widman/widgets/__init__.py +2 -2
  14. clitt/addons/widman/widgets/widget_free.py +1 -1
  15. clitt/addons/widman/widgets/widget_punch.py +1 -1
  16. clitt/addons/widman/widgets/widget_send_msg.py +1 -1
  17. clitt/addons/widman/widgets/widget_time_calc.py +1 -1
  18. clitt/addons/widman/widman.py +1 -1
  19. clitt/core/__init__.py +2 -2
  20. clitt/core/exception/__init__.py +2 -2
  21. clitt/core/exception/exceptions.py +1 -1
  22. clitt/core/icons/__init__.py +2 -2
  23. clitt/core/icons/emojis/__init__.py +2 -2
  24. clitt/core/icons/emojis/emojis.py +1 -1
  25. clitt/core/icons/emojis/face_smiling.py +1 -1
  26. clitt/core/icons/font_awesome/__init__.py +2 -2
  27. clitt/core/icons/font_awesome/app_icons.py +1 -1
  28. clitt/core/icons/font_awesome/awesome.py +1 -1
  29. clitt/core/icons/font_awesome/dashboard_icons.py +1 -1
  30. clitt/core/icons/font_awesome/form_icons.py +1 -1
  31. clitt/core/icons/font_awesome/game_icons.py +1 -1
  32. clitt/core/icons/font_awesome/nav_icons.py +1 -1
  33. clitt/core/icons/font_awesome/trickplay_icons.py +1 -1
  34. clitt/core/icons/font_awesome/widget_icons.py +1 -1
  35. clitt/core/preferences.py +1 -1
  36. clitt/core/term/__init__.py +2 -2
  37. clitt/core/term/commons.py +1 -1
  38. clitt/core/term/cursor.py +1 -1
  39. clitt/core/term/screen.py +1 -1
  40. clitt/core/term/terminal.py +1 -1
  41. clitt/core/tui/__init__.py +2 -2
  42. clitt/core/tui/line_input/__init__.py +2 -2
  43. clitt/core/tui/line_input/keyboard_input.py +81 -52
  44. clitt/core/tui/line_input/line_input.py +1 -1
  45. clitt/core/tui/mchoose/__init__.py +2 -2
  46. clitt/core/tui/mchoose/mchoose.py +1 -1
  47. clitt/core/tui/mchoose/menu_choose.py +1 -1
  48. clitt/core/tui/mdashboard/__init__.py +2 -2
  49. clitt/core/tui/mdashboard/dashboard_builder.py +1 -1
  50. clitt/core/tui/mdashboard/dashboard_item.py +1 -1
  51. clitt/core/tui/mdashboard/mdashboard.py +1 -1
  52. clitt/core/tui/mdashboard/menu_dashboard.py +1 -1
  53. clitt/core/tui/menu/__init__.py +2 -2
  54. clitt/core/tui/menu/tui_menu.py +1 -1
  55. clitt/core/tui/menu/tui_menu_action.py +1 -1
  56. clitt/core/tui/menu/tui_menu_factory.py +1 -1
  57. clitt/core/tui/menu/tui_menu_item.py +1 -1
  58. clitt/core/tui/menu/tui_menu_ui.py +1 -1
  59. clitt/core/tui/menu/tui_menu_view.py +1 -1
  60. clitt/core/tui/minput/__init__.py +2 -2
  61. clitt/core/tui/minput/access_type.py +1 -1
  62. clitt/core/tui/minput/field_builder.py +1 -1
  63. clitt/core/tui/minput/form_builder.py +1 -1
  64. clitt/core/tui/minput/form_field.py +1 -1
  65. clitt/core/tui/minput/input_type.py +1 -1
  66. clitt/core/tui/minput/input_validator.py +1 -1
  67. clitt/core/tui/minput/menu_input.py +1 -1
  68. clitt/core/tui/minput/minput.py +1 -1
  69. clitt/core/tui/minput/minput_utils.py +1 -1
  70. clitt/core/tui/mselect/__init__.py +2 -2
  71. clitt/core/tui/mselect/menu_select.py +1 -1
  72. clitt/core/tui/mselect/mselect.py +1 -1
  73. clitt/core/tui/table/__init__.py +2 -2
  74. clitt/core/tui/table/table_enums.py +1 -1
  75. clitt/core/tui/table/table_renderer.py +1 -1
  76. clitt/core/tui/tui_application.py +1 -1
  77. clitt/core/tui/tui_component.py +1 -1
  78. clitt/core/tui/tui_preferences.py +1 -1
  79. clitt/utils/__init__.py +2 -2
  80. {hspylib_clitt-0.9.125.dist-info → hspylib_clitt-0.9.127.dist-info}/METADATA +5 -5
  81. hspylib_clitt-0.9.127.dist-info/RECORD +97 -0
  82. {hspylib_clitt-0.9.125.dist-info → hspylib_clitt-0.9.127.dist-info}/WHEEL +1 -1
  83. hspylib_clitt-0.9.125.dist-info/RECORD +0 -97
  84. {hspylib_clitt-0.9.125.dist-info → hspylib_clitt-0.9.127.dist-info}/top_level.txt +0 -0
@@ -6,14 +6,14 @@
6
6
  @package: main.clitt.core.tui.line_input
7
7
  @file: keyboard_input.py
8
8
  @created: Wed, 17 Jan 2024
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
13
13
  Copyright·(c)·2024,·HSPyLib
14
14
  """
15
15
 
16
- from typing import Optional
16
+ from typing import Optional, Callable, TypeAlias
17
17
 
18
18
  from clitt.core.term.commons import Direction
19
19
  from clitt.core.term.terminal import Terminal
@@ -22,6 +22,8 @@ from hspylib.core.tools.dict_tools import get_or_default
22
22
  from hspylib.modules.cli.keyboard import Keyboard
23
23
  from hspylib.modules.cli.vt100.vt_color import VtColor
24
24
 
25
+ KeyBinding: TypeAlias = dict[Keyboard, Callable[[], None]]
26
+
25
27
 
26
28
  class KeyboardInput(TUIComponent):
27
29
  """Provides a keyboard input for terminal UIs with undo and history."""
@@ -38,6 +40,9 @@ class KeyboardInput(TUIComponent):
38
40
  # Stack containing current input reverts.
39
41
  _REDO_HISTORY: list[str] = []
40
42
 
43
+ # Map containing the custom keybindings.
44
+ _BINDINGS: KeyBinding = {}
45
+
41
46
  @classmethod
42
47
  def preload_history(cls, history: list[str]) -> None:
43
48
  """Preload the input with the provided dictionary.
@@ -106,17 +111,12 @@ class KeyboardInput(TUIComponent):
106
111
  self._suggestion: str = ""
107
112
  self._HISTORY[-1] = ""
108
113
  self._HIST_INDEX = max(0, len(self._HISTORY) - 1)
114
+ self._bindings()
109
115
 
110
116
  @property
111
117
  def length(self) -> int:
112
118
  return len(self._input_text) if self._input_text else 0
113
119
 
114
- def _prepare_render(self, auto_wrap: bool = True, show_cursor: bool = True) -> None:
115
- self.screen.add_watcher(self.invalidate)
116
- Terminal.set_auto_wrap(auto_wrap)
117
- Terminal.set_show_cursor(show_cursor)
118
- self.cursor.save()
119
-
120
120
  def execute(self) -> Optional[str | Keyboard]:
121
121
  self._prepare_render()
122
122
  keypress = self._loop() or Keyboard.VK_ESC
@@ -142,19 +142,18 @@ class KeyboardInput(TUIComponent):
142
142
  self._input_index = 0
143
143
  self._update_input("")
144
144
 
145
- def _loop(self, break_keys: list[Keyboard] = None) -> Keyboard:
146
- break_keys = break_keys or Keyboard.break_keys()
147
- keypress = Keyboard.VK_NONE
145
+ def home(self) -> None:
146
+ """Place the cursor at the start of the input text."""
147
+ self._input_index = 0
148
148
 
149
- # Wait for user interaction
150
- while not self._done and keypress and keypress not in break_keys:
151
- # Menu Renderization
152
- if self._re_render:
153
- self.render()
154
- # Navigation input
155
- keypress = self.handle_keypress()
149
+ def end(self) -> None:
150
+ """Place the cursor at the end of the input text."""
151
+ self._input_index = self.length
156
152
 
157
- return keypress
153
+ def complete(self) -> None:
154
+ """Complete the input text with the suggested text."""
155
+ self._update_input(self._input_text + self._suggestion)
156
+ self._input_index = self.length
158
157
 
159
158
  def render(self) -> None:
160
159
  Terminal.set_show_cursor(False)
@@ -163,7 +162,7 @@ class KeyboardInput(TUIComponent):
163
162
  self.write(f"{self._prompt_color.placeholder}{self.title}{self._text_color.placeholder}")
164
163
  if self._input_text:
165
164
  self.write(self._input_text)
166
- self._write_suggestion()
165
+ self._render_suggestions()
167
166
  else:
168
167
  self.write(f"%GRAY%{self._placeholder}%NC%")
169
168
  self._terminal.cursor.erase(Direction.DOWN)
@@ -178,6 +177,7 @@ class KeyboardInput(TUIComponent):
178
177
  def handle_keypress(self) -> Keyboard:
179
178
  if keypress := Keyboard.wait_keystroke():
180
179
  match keypress:
180
+ # Default key bindings.
181
181
  case Keyboard.VK_BACKSPACE:
182
182
  if self._input_index > 0:
183
183
  self._input_index = max(0, self._input_index - 1)
@@ -188,10 +188,6 @@ class KeyboardInput(TUIComponent):
188
188
  self._update_input(
189
189
  self._input_text[: self._input_index] + self._input_text[1 + self._input_index:]
190
190
  )
191
- case Keyboard.VK_CTRL_R:
192
- self.reset()
193
- case Keyboard.VK_CTRL_F:
194
- self.forget_history()
195
191
  case Keyboard.VK_LEFT:
196
192
  self._input_index = max(0, self._input_index - 1)
197
193
  case Keyboard.VK_RIGHT:
@@ -202,13 +198,12 @@ class KeyboardInput(TUIComponent):
202
198
  case Keyboard.VK_DOWN:
203
199
  self._input_text = self._next_in_history()
204
200
  self._input_index = self.length
205
- case Keyboard.VK_HOME:
206
- self._input_index = 0
207
- case Keyboard.VK_END:
208
- self._input_index = self.length
209
- case Keyboard.VK_TAB:
210
- self._update_input(self._input_text + self._suggestion)
211
- self._input_index = self.length
201
+ # Customizable key bindings.
202
+ case _ as key if key in self._BINDINGS:
203
+ fn: Callable = self._BINDINGS[key]
204
+ if fn and isinstance(fn, Callable):
205
+ fn()
206
+ # Printable characters
212
207
  case _ as key if key.val.isprintable():
213
208
  text: str = key.val
214
209
  while (key := Keyboard.wait_keystroke(False)) != Keyboard.VK_NONE:
@@ -217,6 +212,7 @@ class KeyboardInput(TUIComponent):
217
212
  self._update_input(
218
213
  self._input_text[: self._input_index] + text + self._input_text[self._input_index:])
219
214
  self._input_index += len(text)
215
+ # Loop breaking characters
220
216
  case _ as key if key in Keyboard.break_keys():
221
217
  self._done = True
222
218
  case _:
@@ -226,6 +222,39 @@ class KeyboardInput(TUIComponent):
226
222
 
227
223
  return keypress
228
224
 
225
+ def _bindings(self) -> None:
226
+ """TODO"""
227
+ if not KeyboardInput._BINDINGS:
228
+ KeyboardInput._BINDINGS.update({
229
+ Keyboard.VK_CTRL_A: self.home,
230
+ Keyboard.VK_CTRL_E: self.end,
231
+ Keyboard.VK_CTRL_R: self.reset,
232
+ Keyboard.VK_CTRL_F: self.forget_history,
233
+ Keyboard.VK_HOME: self.home,
234
+ Keyboard.VK_END: self.end,
235
+ Keyboard.VK_TAB: self.complete
236
+ })
237
+
238
+ def _prepare_render(self, auto_wrap: bool = True, show_cursor: bool = True) -> None:
239
+ self.screen.add_watcher(self.invalidate)
240
+ Terminal.set_auto_wrap(auto_wrap)
241
+ Terminal.set_show_cursor(show_cursor)
242
+ self.cursor.save()
243
+
244
+ def _loop(self, break_keys: list[Keyboard] = None) -> Keyboard:
245
+ break_keys = break_keys or Keyboard.break_keys()
246
+ keypress = Keyboard.VK_NONE
247
+
248
+ # Wait for user interaction
249
+ while not self._done and keypress and keypress not in break_keys:
250
+ # Menu Renderization
251
+ if self._re_render:
252
+ self.render()
253
+ # Navigation input
254
+ keypress = self.handle_keypress()
255
+
256
+ return keypress
257
+
229
258
  def _set_cursor_pos(self):
230
259
  """Set the cursor position on the input."""
231
260
  index_offset = max(0, self.length - self._input_index)
@@ -241,6 +270,27 @@ class KeyboardInput(TUIComponent):
241
270
  self._HIST_INDEX = max(0, len(self._HISTORY) - 1)
242
271
  return text
243
272
 
273
+ def _render_suggestions(self) -> None:
274
+ """Render the input suggestions."""
275
+ edt_text: str = self._input_text
276
+ filtered: list[str] = list(filter(lambda h: h.startswith(edt_text), self._HISTORY))
277
+ hint: str = ''
278
+
279
+ if edt_text and edt_text in filtered:
280
+ edt_idx = filtered.index(edt_text) - 1
281
+ index = max(0, min(edt_idx, self._HIST_INDEX))
282
+ hint: str = get_or_default(filtered, index, '') or filtered[-1]
283
+ if hint and (hint := hint[len(edt_text):]):
284
+ self.write(f"%GRAY%{hint}%NC%")
285
+ self._terminal.cursor.erase(Direction.DOWN)
286
+ self.cursor.move(len(hint), Direction.LEFT)
287
+ else:
288
+ self._terminal.cursor.erase(Direction.DOWN)
289
+ else:
290
+ self._terminal.cursor.erase(Direction.DOWN)
291
+
292
+ self._suggestion = hint
293
+
244
294
  def _next_in_history(self) -> str:
245
295
  """Return the next input in history."""
246
296
  edt_text: str = self._HISTORY[-1]
@@ -264,24 +314,3 @@ class KeyboardInput(TUIComponent):
264
314
  self._HIST_INDEX = filtered.index(text)
265
315
  return text
266
316
  return edt_text
267
-
268
- def _write_suggestion(self) -> None:
269
- """TODO """
270
- edt_text: str = self._input_text
271
- filtered: list[str] = list(filter(lambda h: h.startswith(edt_text), self._HISTORY))
272
- hint: str = ''
273
-
274
- if edt_text and edt_text in filtered:
275
- edt_idx = filtered.index(edt_text) - 1
276
- index = max(0, min(edt_idx, self._HIST_INDEX))
277
- hint: str = get_or_default(filtered, index, '') or filtered[-1]
278
- if hint and (hint := hint[len(edt_text):]):
279
- self.write(f"%GRAY%{hint}%NC%")
280
- self._terminal.cursor.erase(Direction.DOWN)
281
- self.cursor.move(len(hint), Direction.LEFT)
282
- else:
283
- self._terminal.cursor.erase(Direction.DOWN)
284
- else:
285
- self._terminal.cursor.erase(Direction.DOWN)
286
-
287
- self._suggestion = hint
@@ -6,7 +6,7 @@
6
6
  @package: main.clitt.core.tui.line_input
7
7
  @file: line_input.py
8
8
  @created: Wed, 17 Jan 2024
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -1,6 +1,6 @@
1
1
  # _*_ coding: utf-8 _*_
2
2
  #
3
- # hspylib-clitt v0.9.125
3
+ # hspylib-clitt v0.9.127
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.125'
12
+ __version__ = '0.9.127'
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mchoose
7
7
  @file: mchoose.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mchoose
7
7
  @file: menu_choose.py
8
8
  @created: Wed, 17 May 2023
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -1,6 +1,6 @@
1
1
  # _*_ coding: utf-8 _*_
2
2
  #
3
- # hspylib-clitt v0.9.125
3
+ # hspylib-clitt v0.9.127
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.125'
14
+ __version__ = '0.9.127'
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mdashboard
7
7
  @file: dashboard_builder.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mdashboard
7
7
  @file: dashboard_item.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mdashboard
7
7
  @file: mdashboard.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mdashboard
7
7
  @file: menu_dashboard.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -1,6 +1,6 @@
1
1
  # _*_ coding: utf-8 _*_
2
2
  #
3
- # hspylib-clitt v0.9.125
3
+ # hspylib-clitt v0.9.127
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.125'
16
+ __version__ = '0.9.127'
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.menu
7
7
  @file: tui_menu.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.menu
7
7
  @file: tui_menu_action.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.menu
7
7
  @file: tui_menu_factory.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.menu
7
7
  @file: tui_menu_item.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.menu
7
7
  @file: tui_menu_ui.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.menu
7
7
  @file: tui_menu_view.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -1,6 +1,6 @@
1
1
  # _*_ coding: utf-8 _*_
2
2
  #
3
- # hspylib-clitt v0.9.125
3
+ # hspylib-clitt v0.9.127
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.125'
19
+ __version__ = '0.9.127'
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: access_type.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: field_builder.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: form_builder.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: form_field.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: input_type.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: input_validator.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: menu_input.py
8
8
  @created: Wed, 17 May 2023
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: minput.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.minput
7
7
  @file: minput_utils.py
8
8
  @created: Thu, 20 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -1,6 +1,6 @@
1
1
  # _*_ coding: utf-8 _*_
2
2
  #
3
- # hspylib-clitt v0.9.125
3
+ # hspylib-clitt v0.9.127
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.125'
12
+ __version__ = '0.9.127'
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mselect
7
7
  @file: menu_select.py
8
8
  @created: Wed, 17 May 2023
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.mselect
7
7
  @file: mselect.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -1,6 +1,6 @@
1
1
  # _*_ coding: utf-8 _*_
2
2
  #
3
- # hspylib-clitt v0.9.125
3
+ # hspylib-clitt v0.9.127
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.125'
12
+ __version__ = '0.9.127'
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.table
7
7
  @file: table_enums.py
8
8
  @created: Tue, 4 Jul 2023
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui.table
7
7
  @file: table_renderer.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui
7
7
  @file: tui_application.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui
7
7
  @file: tui_component.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
@@ -6,7 +6,7 @@
6
6
  @package: clitt.core.tui
7
7
  @file: tui_preferences.py
8
8
  @created: Tue, 4 May 2021
9
- @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior"
9
+ @author: <B>H</B>ugo <B>S</B>aporetti <B>J</B>unior
10
10
  @site: https://github.com/yorevs/hspylib
11
11
  @license: MIT - Please refer to <https://opensource.org/licenses/MIT>
12
12
 
clitt/utils/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # _*_ coding: utf-8 _*_
2
2
  #
3
- # hspylib-clitt v0.9.125
3
+ # hspylib-clitt v0.9.127
4
4
  #
5
5
  # Package: main.clitt.utils
6
6
  """Package initialization."""
@@ -8,4 +8,4 @@
8
8
  __all__ = [
9
9
  'git_utils'
10
10
  ]
11
- __version__ = '0.9.125'
11
+ __version__ = '0.9.127'