voidx-cli 3.5.2__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.
Files changed (1324) hide show
  1. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  2. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  3. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  4. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  5. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  6. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  7. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  8. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  9. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  10. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  11. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  12. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  13. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  14. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  15. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  16. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  17. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  18. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  19. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  20. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  21. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  22. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  23. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  24. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  25. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  26. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  27. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  28. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  29. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  30. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  31. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  32. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  33. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  34. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  35. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  36. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  37. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  38. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  39. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  40. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  41. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  42. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  43. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  44. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  45. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  46. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  47. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  48. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  49. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  50. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  51. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  52. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  53. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  54. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  55. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  56. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  57. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  58. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  59. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  60. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  61. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  62. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  63. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  64. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  65. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  66. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  67. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  68. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  69. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  70. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  71. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  72. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  73. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  74. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  75. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  76. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  77. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  78. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  79. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  80. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  81. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  82. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  83. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  84. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  85. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  86. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  87. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  88. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  89. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  90. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  91. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  92. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  93. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  94. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  95. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  96. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  97. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  98. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  99. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  100. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  101. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  102. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  103. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  104. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  105. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  106. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  107. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  108. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  109. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  110. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  111. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  112. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  113. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  114. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  115. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  116. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  117. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  118. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  119. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  120. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  121. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  122. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  123. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  124. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  125. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  126. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  127. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  128. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  129. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  130. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  131. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  132. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  133. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  134. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  135. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  136. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  137. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  138. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  139. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  140. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  141. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  142. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  143. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  144. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  145. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  146. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  147. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  148. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  149. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  150. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  151. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  152. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  153. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  154. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  155. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  156. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  157. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  158. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  159. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  160. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  161. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  162. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  163. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  164. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  165. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  166. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  167. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  168. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  169. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  170. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  171. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  172. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  173. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  174. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  175. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  176. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  177. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  178. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  179. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  180. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  181. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  182. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  183. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  184. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  185. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  186. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  187. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  188. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  189. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  190. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  191. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  192. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  193. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  194. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  195. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  196. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  197. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  198. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  199. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  200. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  201. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  202. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  203. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  204. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  205. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  206. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  207. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  208. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  209. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  210. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  211. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  212. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  213. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  214. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  215. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  216. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  217. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  218. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  219. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  220. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  221. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  222. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  223. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  224. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  225. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  226. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  227. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  228. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  229. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  230. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  231. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  232. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  233. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  234. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  235. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  236. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  237. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  238. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  239. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  240. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  241. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  242. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  243. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  244. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  245. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  246. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  247. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  248. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  249. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  250. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  251. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  252. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  253. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  254. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  255. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  256. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  257. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  258. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  259. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  260. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  261. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  262. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  263. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  264. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  265. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  266. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  267. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  268. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  269. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  270. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  271. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  272. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  273. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  274. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  275. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  276. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  277. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  278. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  279. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  280. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  281. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  282. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  283. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  284. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  285. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  286. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  287. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  288. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  289. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  290. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  291. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  292. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  293. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  294. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  295. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  296. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  297. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  298. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  299. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  300. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  301. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  302. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  303. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  304. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  305. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  306. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  307. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  308. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  309. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  310. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  311. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  312. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  313. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  314. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  315. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  316. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  317. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  318. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  319. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  320. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  321. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  322. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  323. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  324. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  325. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  326. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  327. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  328. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  329. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  330. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  331. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  332. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  333. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  334. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  335. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  336. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  337. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  338. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  339. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  340. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  341. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  342. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  343. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  344. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  345. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  346. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  347. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  348. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  349. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  350. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  351. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  352. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  353. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  354. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  355. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  356. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  357. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  358. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  359. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  360. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  361. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  362. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  363. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  364. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  365. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  366. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  367. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  368. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  369. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  370. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  371. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  372. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  373. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  374. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  375. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  376. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  377. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  378. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  379. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  380. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  381. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  382. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  383. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  384. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  385. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  386. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  387. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  388. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  389. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  390. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  391. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  392. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  393. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  394. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  395. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  396. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  397. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  398. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  399. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  400. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  401. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  402. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  403. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  404. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  405. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  406. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  407. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  408. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  409. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  410. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  411. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  412. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  413. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  414. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  415. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  416. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  417. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  418. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  419. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  420. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  421. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  422. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  423. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  424. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  425. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  426. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  427. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  428. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  429. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  430. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  431. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  432. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  433. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  434. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  435. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  436. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  437. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  438. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  439. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  440. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  441. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  442. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  443. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  444. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  445. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  446. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  447. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  448. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  449. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  450. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  451. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  452. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  453. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  454. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  455. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  456. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  457. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  458. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  459. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  460. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  461. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  462. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  463. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  464. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  465. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  466. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  467. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  468. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  469. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  470. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  471. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  472. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  473. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  474. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  475. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  476. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  477. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  478. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  479. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  480. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  481. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  482. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  483. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  484. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  485. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  486. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  487. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  488. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  489. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  490. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  491. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  492. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  493. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  494. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  495. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  496. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  497. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  498. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  499. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  500. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  501. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  502. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  503. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  504. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  505. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  506. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  507. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  508. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  509. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  510. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  511. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  512. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  513. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  514. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  515. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  516. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  517. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  518. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  519. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  520. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  521. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  522. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  523. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  524. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  525. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  526. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  527. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  528. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  529. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  530. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  531. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  532. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  533. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  534. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  535. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  536. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  537. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  538. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  539. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  540. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  541. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  542. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  543. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  544. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  545. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  546. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  547. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  548. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  549. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  550. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  551. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  552. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  553. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  554. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  555. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  556. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  557. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  558. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  559. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  560. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  561. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  562. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  563. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  564. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  565. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  566. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  567. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  568. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  569. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  570. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  571. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  572. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  573. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  574. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  575. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  576. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  577. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  578. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  579. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  580. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  581. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  582. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  583. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  584. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  585. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  586. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  587. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  588. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  589. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  590. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  591. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  592. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  593. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  594. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  595. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  596. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  597. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  598. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  599. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  600. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  601. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  602. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  603. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  604. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  605. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  606. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  607. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  608. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  609. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  610. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  611. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  612. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  613. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  614. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  615. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  616. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  617. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  618. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  619. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  620. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  621. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  622. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  623. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  624. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  625. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  626. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  627. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  628. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  629. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  630. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  631. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  632. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  633. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  634. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  635. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  636. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  637. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  638. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  639. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  640. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  641. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  642. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  643. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  644. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  645. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  646. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  647. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  648. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  649. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  650. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  651. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  652. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  653. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  654. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  655. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  656. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  657. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  658. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  659. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  660. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  661. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  662. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  663. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  664. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  665. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  666. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  667. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  668. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  669. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  670. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  671. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  672. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  673. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  674. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  675. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  676. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  677. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  678. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  679. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  680. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  681. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  682. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  683. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  684. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  685. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  686. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  687. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  688. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  689. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  690. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  691. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  692. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  693. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  694. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  695. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  696. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  697. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  698. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  699. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  700. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  701. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  702. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  703. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  704. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  705. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  706. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  707. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  708. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  709. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  710. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  711. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  712. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  713. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  714. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  715. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  716. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  717. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  718. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  719. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  720. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  721. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  722. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  723. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  724. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  725. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  726. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  727. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  728. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  729. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  730. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  731. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  732. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  733. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  734. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  735. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  736. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  737. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  738. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  739. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  740. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  741. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  742. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  743. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  744. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  745. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  746. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  747. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  748. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  749. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  750. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  751. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  752. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  753. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  754. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  755. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  756. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  757. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  758. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  759. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  760. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  761. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  762. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  763. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  764. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  765. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  766. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  767. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  768. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  769. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  770. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  771. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  772. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  773. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  774. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  775. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  776. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  777. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  778. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  779. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  780. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  781. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  782. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  783. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  784. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  785. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  786. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  787. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  788. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  789. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  790. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  791. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  792. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  793. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  794. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  795. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  796. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  797. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  798. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  799. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  800. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  801. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  802. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  803. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  804. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  805. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  806. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  807. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  808. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  809. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  810. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  811. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  812. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  813. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  814. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  815. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  816. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  817. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  818. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  819. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  820. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  821. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  822. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  823. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  824. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  825. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  826. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  827. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  828. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  829. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  830. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  831. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  832. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  833. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  834. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  835. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  836. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  837. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  838. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  839. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  840. build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  841. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  842. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  843. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  844. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  845. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  846. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  847. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  848. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  849. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  850. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  851. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  852. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  853. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  854. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  855. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  856. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  857. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  858. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  859. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  860. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  861. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  862. build/lib/build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  863. build/lib/build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  864. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  865. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  866. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  867. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  868. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  869. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  870. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  871. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  872. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  873. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  874. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  875. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  876. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  877. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  878. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  879. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  880. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  881. build/lib/build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  882. build/lib/build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  883. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  884. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  885. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  886. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  887. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  888. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  889. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  890. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  891. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  892. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  893. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  894. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  895. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  896. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  897. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  898. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  899. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  900. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  901. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  902. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  903. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  904. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  905. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  906. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  907. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  908. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  909. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  910. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  911. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  912. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  913. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  914. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  915. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  916. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  917. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  918. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  919. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  920. build/lib/build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  921. build/lib/build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  922. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  923. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  924. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  925. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  926. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  927. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  928. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  929. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  930. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  931. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  932. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  933. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  934. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  935. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  936. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  937. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  938. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  939. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  940. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  941. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  942. build/lib/build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  943. build/lib/build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  944. build/lib/build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  945. build/lib/build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  946. build/lib/build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  947. build/lib/build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  948. build/lib/build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  949. build/lib/build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  950. build/lib/build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  951. build/lib/build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  952. build/lib/build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  953. build/lib/build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  954. build/lib/build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  955. build/lib/build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  956. build/lib/build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  957. build/lib/build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  958. build/lib/build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  959. build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  960. build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  961. build/lib/build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  962. build/lib/build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  963. build/lib/build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  964. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  965. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  966. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  967. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  968. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  969. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  970. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  971. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  972. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  973. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  974. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  975. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  976. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  977. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  978. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  979. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  980. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  981. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  982. build/lib/build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  983. build/lib/build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  984. build/lib/build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  985. build/lib/build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  986. build/lib/build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  987. build/lib/build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  988. build/lib/build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  989. build/lib/build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  990. build/lib/build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  991. build/lib/build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  992. build/lib/build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  993. build/lib/build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  994. build/lib/build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  995. build/lib/build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  996. build/lib/build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  997. build/lib/build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  998. build/lib/build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  999. build/lib/build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  1000. build/lib/build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  1001. build/lib/build/lib/build/lib/tests/__init__.py +0 -0
  1002. build/lib/build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  1003. build/lib/build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  1004. build/lib/build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  1005. build/lib/build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  1006. build/lib/build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  1007. build/lib/build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  1008. build/lib/build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  1009. build/lib/build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  1010. build/lib/build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  1011. build/lib/build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  1012. build/lib/build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  1013. build/lib/build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  1014. build/lib/build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  1015. build/lib/build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  1016. build/lib/build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  1017. build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  1018. build/lib/build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  1019. build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  1020. build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  1021. build/lib/build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  1022. build/lib/build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  1023. build/lib/build/lib/build/lib/tests/conftest.py +4 -0
  1024. build/lib/build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  1025. build/lib/build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  1026. build/lib/build/lib/build/lib/tests/test_headless.py +71 -0
  1027. build/lib/build/lib/build/lib/tests/test_input_advanced.py +446 -0
  1028. build/lib/build/lib/build/lib/tests/test_input_handling.py +459 -0
  1029. build/lib/build/lib/build/lib/tests/test_output_paste.py +242 -0
  1030. build/lib/build/lib/build/lib/tests/test_output_stream.py +130 -0
  1031. build/lib/build/lib/build/lib/tests/test_output_tools.py +271 -0
  1032. build/lib/build/lib/build/lib/tests/test_output_tree.py +378 -0
  1033. build/lib/build/lib/build/lib/tests/test_paste_handling.py +364 -0
  1034. build/lib/build/lib/build/lib/tests/test_startup.py +60 -0
  1035. build/lib/build/lib/build/lib/tests/test_status_activity.py +640 -0
  1036. build/lib/build/lib/build/lib/tests/test_status_layout.py +145 -0
  1037. build/lib/build/lib/build/lib/tests/test_terminal_input.py +437 -0
  1038. build/lib/build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  1039. build/lib/build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  1040. build/lib/build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  1041. build/lib/build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  1042. build/lib/build/lib/build/lib/tests/tui_helpers.py +70 -0
  1043. build/lib/build/lib/build/lib/voidx_cli/__init__.py +6 -0
  1044. build/lib/build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  1045. build/lib/build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  1046. build/lib/build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  1047. build/lib/build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  1048. build/lib/build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  1049. build/lib/build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  1050. build/lib/build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  1051. build/lib/build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  1052. build/lib/build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  1053. build/lib/build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  1054. build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  1055. build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  1056. build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  1057. build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  1058. build/lib/build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  1059. build/lib/build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  1060. build/lib/build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  1061. build/lib/build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  1062. build/lib/build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  1063. build/lib/build/lib/build/lib/voidx_cli/activity.py +64 -0
  1064. build/lib/build/lib/build/lib/voidx_cli/app.py +650 -0
  1065. build/lib/build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  1066. build/lib/build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  1067. build/lib/build/lib/build/lib/voidx_cli/helpers.py +144 -0
  1068. build/lib/build/lib/build/lib/voidx_cli/input.py +370 -0
  1069. build/lib/build/lib/build/lib/voidx_cli/overlays.py +157 -0
  1070. build/lib/build/lib/build/lib/voidx_cli/panels.py +347 -0
  1071. build/lib/build/lib/build/lib/voidx_cli/parser.py +531 -0
  1072. build/lib/build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  1073. build/lib/build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  1074. build/lib/build/lib/build/lib/voidx_cli/render_input.py +154 -0
  1075. build/lib/build/lib/build/lib/voidx_cli/render_status.py +266 -0
  1076. build/lib/build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  1077. build/lib/build/lib/build/lib/voidx_cli/renderer.py +24 -0
  1078. build/lib/build/lib/build/lib/voidx_cli/state.py +254 -0
  1079. build/lib/build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  1080. build/lib/build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  1081. build/lib/build/lib/tests/__init__.py +0 -0
  1082. build/lib/build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  1083. build/lib/build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  1084. build/lib/build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  1085. build/lib/build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  1086. build/lib/build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  1087. build/lib/build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  1088. build/lib/build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  1089. build/lib/build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  1090. build/lib/build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  1091. build/lib/build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  1092. build/lib/build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  1093. build/lib/build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  1094. build/lib/build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  1095. build/lib/build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  1096. build/lib/build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  1097. build/lib/build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  1098. build/lib/build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  1099. build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  1100. build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  1101. build/lib/build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  1102. build/lib/build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  1103. build/lib/build/lib/tests/conftest.py +4 -0
  1104. build/lib/build/lib/tests/test_frame_advanced.py +293 -0
  1105. build/lib/build/lib/tests/test_frame_rendering.py +429 -0
  1106. build/lib/build/lib/tests/test_headless.py +71 -0
  1107. build/lib/build/lib/tests/test_input_advanced.py +446 -0
  1108. build/lib/build/lib/tests/test_input_handling.py +459 -0
  1109. build/lib/build/lib/tests/test_output_paste.py +242 -0
  1110. build/lib/build/lib/tests/test_output_stream.py +130 -0
  1111. build/lib/build/lib/tests/test_output_tools.py +271 -0
  1112. build/lib/build/lib/tests/test_output_tree.py +378 -0
  1113. build/lib/build/lib/tests/test_paste_handling.py +364 -0
  1114. build/lib/build/lib/tests/test_startup.py +60 -0
  1115. build/lib/build/lib/tests/test_status_activity.py +640 -0
  1116. build/lib/build/lib/tests/test_status_layout.py +145 -0
  1117. build/lib/build/lib/tests/test_terminal_input.py +437 -0
  1118. build/lib/build/lib/tests/test_terminal_panels.py +439 -0
  1119. build/lib/build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  1120. build/lib/build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  1121. build/lib/build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  1122. build/lib/build/lib/tests/tui_helpers.py +70 -0
  1123. build/lib/build/lib/voidx_cli/__init__.py +6 -0
  1124. build/lib/build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  1125. build/lib/build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  1126. build/lib/build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  1127. build/lib/build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  1128. build/lib/build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  1129. build/lib/build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  1130. build/lib/build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  1131. build/lib/build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  1132. build/lib/build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  1133. build/lib/build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  1134. build/lib/build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  1135. build/lib/build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  1136. build/lib/build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  1137. build/lib/build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  1138. build/lib/build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  1139. build/lib/build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  1140. build/lib/build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  1141. build/lib/build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  1142. build/lib/build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  1143. build/lib/build/lib/voidx_cli/activity.py +64 -0
  1144. build/lib/build/lib/voidx_cli/app.py +650 -0
  1145. build/lib/build/lib/voidx_cli/choice_mixin.py +59 -0
  1146. build/lib/build/lib/voidx_cli/clipboard_mixin.py +83 -0
  1147. build/lib/build/lib/voidx_cli/helpers.py +144 -0
  1148. build/lib/build/lib/voidx_cli/input.py +370 -0
  1149. build/lib/build/lib/voidx_cli/overlays.py +157 -0
  1150. build/lib/build/lib/voidx_cli/panels.py +347 -0
  1151. build/lib/build/lib/voidx_cli/parser.py +531 -0
  1152. build/lib/build/lib/voidx_cli/render_activity.py +217 -0
  1153. build/lib/build/lib/voidx_cli/render_frame.py +615 -0
  1154. build/lib/build/lib/voidx_cli/render_input.py +154 -0
  1155. build/lib/build/lib/voidx_cli/render_status.py +266 -0
  1156. build/lib/build/lib/voidx_cli/render_todo.py +79 -0
  1157. build/lib/build/lib/voidx_cli/renderer.py +24 -0
  1158. build/lib/build/lib/voidx_cli/state.py +254 -0
  1159. build/lib/build/lib/voidx_cli/terminal_mixin.py +95 -0
  1160. build/lib/build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  1161. build/lib/tests/__init__.py +0 -0
  1162. build/lib/tests/__pycache__/__init__.cpython-312.pyc +0 -0
  1163. build/lib/tests/__pycache__/conftest.cpython-312.pyc +0 -0
  1164. build/lib/tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  1165. build/lib/tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  1166. build/lib/tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  1167. build/lib/tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  1168. build/lib/tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  1169. build/lib/tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  1170. build/lib/tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  1171. build/lib/tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  1172. build/lib/tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  1173. build/lib/tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  1174. build/lib/tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  1175. build/lib/tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  1176. build/lib/tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  1177. build/lib/tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  1178. build/lib/tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  1179. build/lib/tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  1180. build/lib/tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  1181. build/lib/tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  1182. build/lib/tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  1183. build/lib/tests/conftest.py +4 -0
  1184. build/lib/tests/test_frame_advanced.py +293 -0
  1185. build/lib/tests/test_frame_rendering.py +429 -0
  1186. build/lib/tests/test_headless.py +71 -0
  1187. build/lib/tests/test_input_advanced.py +446 -0
  1188. build/lib/tests/test_input_handling.py +459 -0
  1189. build/lib/tests/test_output_paste.py +242 -0
  1190. build/lib/tests/test_output_stream.py +130 -0
  1191. build/lib/tests/test_output_tools.py +271 -0
  1192. build/lib/tests/test_output_tree.py +378 -0
  1193. build/lib/tests/test_paste_handling.py +364 -0
  1194. build/lib/tests/test_startup.py +60 -0
  1195. build/lib/tests/test_status_activity.py +640 -0
  1196. build/lib/tests/test_status_layout.py +145 -0
  1197. build/lib/tests/test_terminal_input.py +437 -0
  1198. build/lib/tests/test_terminal_panels.py +439 -0
  1199. build/lib/tests/test_win32_paste_drain_integration.py +154 -0
  1200. build/lib/tests/test_win32_paste_drain_regression.py +495 -0
  1201. build/lib/tests/test_win32_paste_drain_unit.py +140 -0
  1202. build/lib/tests/tui_helpers.py +70 -0
  1203. build/lib/voidx_cli/__init__.py +6 -0
  1204. build/lib/voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  1205. build/lib/voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  1206. build/lib/voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  1207. build/lib/voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  1208. build/lib/voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  1209. build/lib/voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  1210. build/lib/voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  1211. build/lib/voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  1212. build/lib/voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  1213. build/lib/voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  1214. build/lib/voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  1215. build/lib/voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  1216. build/lib/voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  1217. build/lib/voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  1218. build/lib/voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  1219. build/lib/voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  1220. build/lib/voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  1221. build/lib/voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  1222. build/lib/voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  1223. build/lib/voidx_cli/activity.py +64 -0
  1224. build/lib/voidx_cli/app.py +650 -0
  1225. build/lib/voidx_cli/choice_mixin.py +59 -0
  1226. build/lib/voidx_cli/clipboard_mixin.py +83 -0
  1227. build/lib/voidx_cli/helpers.py +144 -0
  1228. build/lib/voidx_cli/input.py +370 -0
  1229. build/lib/voidx_cli/overlays.py +157 -0
  1230. build/lib/voidx_cli/panels.py +347 -0
  1231. build/lib/voidx_cli/parser.py +531 -0
  1232. build/lib/voidx_cli/render_activity.py +217 -0
  1233. build/lib/voidx_cli/render_frame.py +615 -0
  1234. build/lib/voidx_cli/render_input.py +154 -0
  1235. build/lib/voidx_cli/render_status.py +266 -0
  1236. build/lib/voidx_cli/render_todo.py +79 -0
  1237. build/lib/voidx_cli/renderer.py +24 -0
  1238. build/lib/voidx_cli/state.py +254 -0
  1239. build/lib/voidx_cli/terminal_mixin.py +95 -0
  1240. build/lib/voidx_cli/text_prompt_mixin.py +49 -0
  1241. tests/__init__.py +0 -0
  1242. tests/__pycache__/__init__.cpython-312.pyc +0 -0
  1243. tests/__pycache__/conftest.cpython-312.pyc +0 -0
  1244. tests/__pycache__/test_frame_advanced.cpython-312.pyc +0 -0
  1245. tests/__pycache__/test_frame_rendering.cpython-312.pyc +0 -0
  1246. tests/__pycache__/test_headless.cpython-312.pyc +0 -0
  1247. tests/__pycache__/test_input_advanced.cpython-312.pyc +0 -0
  1248. tests/__pycache__/test_input_handling.cpython-312.pyc +0 -0
  1249. tests/__pycache__/test_output_paste.cpython-312.pyc +0 -0
  1250. tests/__pycache__/test_output_stream.cpython-312.pyc +0 -0
  1251. tests/__pycache__/test_output_tools.cpython-312.pyc +0 -0
  1252. tests/__pycache__/test_output_tree.cpython-312.pyc +0 -0
  1253. tests/__pycache__/test_paste_handling.cpython-312.pyc +0 -0
  1254. tests/__pycache__/test_startup.cpython-312.pyc +0 -0
  1255. tests/__pycache__/test_status_activity.cpython-312.pyc +0 -0
  1256. tests/__pycache__/test_status_layout.cpython-312.pyc +0 -0
  1257. tests/__pycache__/test_terminal_input.cpython-312.pyc +0 -0
  1258. tests/__pycache__/test_terminal_panels.cpython-312.pyc +0 -0
  1259. tests/__pycache__/test_win32_paste_drain_integration.cpython-312.pyc +0 -0
  1260. tests/__pycache__/test_win32_paste_drain_regression.cpython-312.pyc +0 -0
  1261. tests/__pycache__/test_win32_paste_drain_unit.cpython-312.pyc +0 -0
  1262. tests/__pycache__/tui_helpers.cpython-312.pyc +0 -0
  1263. tests/conftest.py +4 -0
  1264. tests/test_frame_advanced.py +293 -0
  1265. tests/test_frame_rendering.py +429 -0
  1266. tests/test_headless.py +71 -0
  1267. tests/test_input_advanced.py +446 -0
  1268. tests/test_input_handling.py +459 -0
  1269. tests/test_output_paste.py +242 -0
  1270. tests/test_output_stream.py +130 -0
  1271. tests/test_output_tools.py +271 -0
  1272. tests/test_output_tree.py +378 -0
  1273. tests/test_paste_handling.py +364 -0
  1274. tests/test_startup.py +60 -0
  1275. tests/test_status_activity.py +640 -0
  1276. tests/test_status_layout.py +145 -0
  1277. tests/test_terminal_input.py +437 -0
  1278. tests/test_terminal_panels.py +439 -0
  1279. tests/test_win32_paste_drain_integration.py +154 -0
  1280. tests/test_win32_paste_drain_regression.py +495 -0
  1281. tests/test_win32_paste_drain_unit.py +140 -0
  1282. tests/tui_helpers.py +70 -0
  1283. voidx_cli/__init__.py +6 -0
  1284. voidx_cli/__pycache__/__init__.cpython-312.pyc +0 -0
  1285. voidx_cli/__pycache__/activity.cpython-312.pyc +0 -0
  1286. voidx_cli/__pycache__/app.cpython-312.pyc +0 -0
  1287. voidx_cli/__pycache__/choice_mixin.cpython-312.pyc +0 -0
  1288. voidx_cli/__pycache__/clipboard_mixin.cpython-312.pyc +0 -0
  1289. voidx_cli/__pycache__/helpers.cpython-312.pyc +0 -0
  1290. voidx_cli/__pycache__/input.cpython-312.pyc +0 -0
  1291. voidx_cli/__pycache__/overlays.cpython-312.pyc +0 -0
  1292. voidx_cli/__pycache__/panels.cpython-312.pyc +0 -0
  1293. voidx_cli/__pycache__/parser.cpython-312.pyc +0 -0
  1294. voidx_cli/__pycache__/render_activity.cpython-312.pyc +0 -0
  1295. voidx_cli/__pycache__/render_frame.cpython-312.pyc +0 -0
  1296. voidx_cli/__pycache__/render_input.cpython-312.pyc +0 -0
  1297. voidx_cli/__pycache__/render_status.cpython-312.pyc +0 -0
  1298. voidx_cli/__pycache__/render_todo.cpython-312.pyc +0 -0
  1299. voidx_cli/__pycache__/renderer.cpython-312.pyc +0 -0
  1300. voidx_cli/__pycache__/state.cpython-312.pyc +0 -0
  1301. voidx_cli/__pycache__/terminal_mixin.cpython-312.pyc +0 -0
  1302. voidx_cli/__pycache__/text_prompt_mixin.cpython-312.pyc +0 -0
  1303. voidx_cli/activity.py +64 -0
  1304. voidx_cli/app.py +650 -0
  1305. voidx_cli/choice_mixin.py +59 -0
  1306. voidx_cli/clipboard_mixin.py +83 -0
  1307. voidx_cli/helpers.py +144 -0
  1308. voidx_cli/input.py +370 -0
  1309. voidx_cli/overlays.py +157 -0
  1310. voidx_cli/panels.py +347 -0
  1311. voidx_cli/parser.py +531 -0
  1312. voidx_cli/render_activity.py +217 -0
  1313. voidx_cli/render_frame.py +615 -0
  1314. voidx_cli/render_input.py +154 -0
  1315. voidx_cli/render_status.py +266 -0
  1316. voidx_cli/render_todo.py +79 -0
  1317. voidx_cli/renderer.py +24 -0
  1318. voidx_cli/state.py +254 -0
  1319. voidx_cli/terminal_mixin.py +95 -0
  1320. voidx_cli/text_prompt_mixin.py +49 -0
  1321. voidx_cli-3.5.2.dist-info/METADATA +9 -0
  1322. voidx_cli-3.5.2.dist-info/RECORD +1324 -0
  1323. voidx_cli-3.5.2.dist-info/WHEEL +5 -0
  1324. voidx_cli-3.5.2.dist-info/top_level.txt +4 -0
@@ -0,0 +1,439 @@
1
+ from tui_helpers import * # noqa: F403
2
+
3
+ import os
4
+ import re
5
+ import shutil
6
+ import sys
7
+ from types import SimpleNamespace
8
+
9
+ from rich.cells import cell_len
10
+ from rich.console import Console
11
+
12
+ from voidx.ui.commands import COMMANDS
13
+ from voidx.ui.output.dock import dock
14
+ import voidx_cli.terminal_mixin as terminal_mixin
15
+ from voidx_cli import (
16
+ PureTui,
17
+ _ENTER_TERMINAL_SEQUENCE,
18
+ _EXIT_TERMINAL_SEQUENCE,
19
+ _rendered_row_count,
20
+ )
21
+
22
+ def test_terminal_sequences_stay_on_normal_buffer():
23
+ # Alternate screen NOT used — terminal handles scrollback natively
24
+ assert "\x1b[?1049h" not in _ENTER_TERMINAL_SEQUENCE
25
+ assert "\x1b[?1049l" not in _EXIT_TERMINAL_SEQUENCE
26
+ assert "\x1b[?1000l" in _ENTER_TERMINAL_SEQUENCE
27
+ assert "\x1b[?1006l" in _EXIT_TERMINAL_SEQUENCE
28
+
29
+
30
+ class _FakeKernel32:
31
+ def __init__(
32
+ self,
33
+ mode: int = 0,
34
+ *,
35
+ get_ok: bool = True,
36
+ set_ok: bool = True,
37
+ ) -> None:
38
+ self.mode = mode
39
+ self.get_ok = get_ok
40
+ self.set_ok = set_ok
41
+ self.handles: list[int] = []
42
+ self.set_modes: list[int] = []
43
+
44
+ def GetStdHandle(self, handle: int) -> int:
45
+ self.handles.append(handle)
46
+ return 123
47
+
48
+ def GetConsoleMode(self, handle: int, mode_ptr) -> int:
49
+ if not self.get_ok:
50
+ return 0
51
+ mode_ptr._obj.value = self.mode
52
+ return 1
53
+
54
+ def SetConsoleMode(self, handle: int, mode: int) -> int:
55
+ if not self.set_ok:
56
+ return 0
57
+ self.set_modes.append(int(mode))
58
+ self.mode = int(mode)
59
+ return 1
60
+
61
+
62
+ def test_windows_enable_virtual_terminal_processing_sets_mode():
63
+ kernel32 = _FakeKernel32(mode=0)
64
+
65
+ original = terminal_mixin._enable_windows_virtual_terminal_processing(kernel32)
66
+
67
+ assert original == 0
68
+ assert kernel32.handles == [terminal_mixin._STD_OUTPUT_HANDLE]
69
+ assert kernel32.set_modes == [
70
+ terminal_mixin._ENABLE_VIRTUAL_TERMINAL_PROCESSING
71
+ ]
72
+
73
+
74
+ def test_windows_enable_virtual_terminal_processing_keeps_existing_mode():
75
+ mode = terminal_mixin._ENABLE_VIRTUAL_TERMINAL_PROCESSING | 0x0001
76
+ kernel32 = _FakeKernel32(mode=mode)
77
+
78
+ original = terminal_mixin._enable_windows_virtual_terminal_processing(kernel32)
79
+
80
+ assert original == mode
81
+ assert kernel32.set_modes == []
82
+
83
+
84
+ def test_windows_restore_console_mode_restores_original_mode():
85
+ kernel32 = _FakeKernel32(mode=0)
86
+
87
+ restored = terminal_mixin._restore_windows_console_mode(7, kernel32)
88
+
89
+ assert restored is True
90
+ assert kernel32.set_modes == [7]
91
+
92
+
93
+ def test_windows_console_mode_helpers_ignore_non_console():
94
+ assert (
95
+ terminal_mixin._enable_windows_virtual_terminal_processing(
96
+ _FakeKernel32(get_ok=False)
97
+ )
98
+ is None
99
+ )
100
+ assert (
101
+ terminal_mixin._enable_windows_virtual_terminal_processing(
102
+ _FakeKernel32(set_ok=False)
103
+ )
104
+ is None
105
+ )
106
+ assert terminal_mixin._restore_windows_console_mode(None, _FakeKernel32()) is False
107
+
108
+
109
+ def test_non_windows_terminal_setup_still_uses_termios(tmp_path, monkeypatch):
110
+ class FakeTermios:
111
+ ECHO = 0x0001
112
+ ICANON = 0x0002
113
+ ISIG = 0x0004
114
+ IEXTEN = 0x0008
115
+ IGNBRK = 0x0010
116
+ ICRNL = 0x0020
117
+ BRKINT = 0x0040
118
+ VMIN = 0
119
+ VTIME = 1
120
+ VLNEXT = 2
121
+ TCSADRAIN = 0
122
+
123
+ def __init__(self) -> None:
124
+ self.set_attrs: list[list] = []
125
+
126
+ def tcgetattr(self, fd: int) -> list:
127
+ return [
128
+ self.IGNBRK | self.ICRNL,
129
+ 0,
130
+ 0,
131
+ self.ECHO | self.ICANON | self.ISIG | self.IEXTEN,
132
+ 0,
133
+ 0,
134
+ [0, 0, 1],
135
+ ]
136
+
137
+ def tcsetattr(self, fd: int, when: int, attrs: list) -> None:
138
+ self.set_attrs.append(attrs)
139
+
140
+ fake_termios = FakeTermios()
141
+ monkeypatch.setattr(terminal_mixin, "termios", fake_termios)
142
+ monkeypatch.setattr(terminal_mixin.os, "isatty", lambda fd: True)
143
+ tui = _tui(tmp_path)
144
+ tui._stdin_fd = 99
145
+
146
+ tui._setup_terminal()
147
+
148
+ assert tui._old_termios is not None
149
+ assert len(fake_termios.set_attrs) == 1
150
+ assert fake_termios.set_attrs[0][6][fake_termios.VMIN] == 1
151
+ assert fake_termios.set_attrs[0][6][fake_termios.VTIME] == 0
152
+
153
+
154
+ def test_dock_clear_screen_request_is_consumed_publicly():
155
+ dock.reset()
156
+
157
+ assert dock.consume_clear_screen_request() is True
158
+ assert dock.consume_clear_screen_request() is False
159
+
160
+
161
+ def test_rendered_row_count_tracks_terminal_cursor_rows():
162
+ assert _rendered_row_count("") == 0
163
+ assert _rendered_row_count("one") == 1
164
+ assert _rendered_row_count("one\n") == 2
165
+ assert _rendered_row_count("one\ntwo\n") == 3
166
+
167
+
168
+ def test_render_impl_clips_transcript_to_visible_tail(tmp_path):
169
+ tui = _tui(tmp_path)
170
+ tui._console = Console(file=None, force_terminal=True, width=80, height=10, _environ={})
171
+ for index in range(20):
172
+ dock.tree.new_node(
173
+ parent=dock.tree.root,
174
+ node_type="message",
175
+ header=f"line {index:02d}",
176
+ collapsed=False,
177
+ )
178
+
179
+ lines = _render_lines(tui, width=80)
180
+ rendered = "\n".join(lines)
181
+
182
+ assert len(lines) <= 10
183
+ assert "line 12" not in rendered
184
+ if sys.platform != "win32":
185
+ assert "line 13" in rendered
186
+ assert "line 19" in rendered
187
+
188
+
189
+ def test_frame_top_positioning_uses_terminal_height_for_absolute_row(tmp_path, monkeypatch):
190
+ """Frame rendering calculates start_row from terminal height so
191
+ the frame always renders at the bottom without scrollback pollution."""
192
+ monkeypatch.setattr(
193
+ shutil, "get_terminal_size",
194
+ lambda fallback=None: os.terminal_size((80, 30)),
195
+ )
196
+ tui = _tui(tmp_path)
197
+ tui._tty = True
198
+ tui._has_rendered_frame = True
199
+
200
+ # _move_to_frame_top_sequence is no longer called in the render path;
201
+ # absolute positioning is computed directly from terminal height.
202
+ # The old method still exists but is dead code.
203
+ tui._last_frame_rows = 5
204
+ assert tui._move_to_frame_top_sequence() == "\x1b[5A"
205
+
206
+
207
+ def test_frame_end_sequence_returns_from_input_cursor_to_frame_end(tmp_path):
208
+ tui = _tui(tmp_path)
209
+ tui._has_rendered_frame = True
210
+ tui._last_frame_rows = 30
211
+ tui._cursor_to_frame_end_lines = 4
212
+
213
+ assert tui._move_to_frame_end_sequence() == "\r\x1b[4B\r"
214
+
215
+
216
+ def test_dock_turn_spacing_is_root_level_blank_line(tmp_path):
217
+ dock.deactivate()
218
+ dock.reset()
219
+ dock.begin_capture()
220
+ try:
221
+ first = dock.start_turn("one")
222
+ dock.start_turn("two")
223
+
224
+ lines = dock.tree.render(100)
225
+ assert "one" in lines[0]
226
+ assert lines[1] == ""
227
+ assert "two" in lines[2]
228
+ assert first.body_lines == []
229
+ finally:
230
+ dock.deactivate()
231
+ dock.reset()
232
+
233
+
234
+ def test_dock_turn_and_assistant_response_have_root_level_gap(tmp_path):
235
+ dock.deactivate()
236
+ dock.reset()
237
+ dock.begin_capture()
238
+ try:
239
+ dock.start_turn("one")
240
+ dock.set_stream("answer")
241
+ dock.commit_stream()
242
+
243
+ lines = dock.tree.render(100)
244
+ assert "one" in lines[0]
245
+ assert lines[1] == ""
246
+ assert "answer" in lines[2]
247
+ finally:
248
+ dock.deactivate()
249
+ dock.reset()
250
+
251
+
252
+ def test_dock_multiline_turn_body_aligns_under_prompt(tmp_path):
253
+ dock.deactivate()
254
+ dock.reset()
255
+ dock.begin_capture()
256
+ try:
257
+ turn = dock.start_turn("1、你\n2、好\n3、你是谁")
258
+
259
+ lines = dock.tree.render(100)
260
+ plain_lines = [_rich_plain(line) for line in lines[:3]]
261
+ assert [line.rstrip() for line in plain_lines] == ["❯ 1、你", " 2、好", " 3、你是谁"]
262
+ assert all(cell_len(line) == 100 for line in plain_lines)
263
+ assert turn.body_lines == ["2、好", "3、你是谁"]
264
+ finally:
265
+ dock.deactivate()
266
+ dock.reset()
267
+
268
+
269
+ def test_dock_turn_preserves_long_single_line_input(tmp_path):
270
+ dock.deactivate()
271
+ dock.reset()
272
+ dock.begin_capture()
273
+ try:
274
+ text = "long-input-" + ("x" * 240) + "-tail"
275
+ turn = dock.start_turn(text)
276
+
277
+ rendered = "\n".join(dock.tree.render(80))
278
+
279
+ assert text in rendered
280
+ assert "tail" in rendered
281
+ assert turn.body_lines == []
282
+ finally:
283
+ dock.deactivate()
284
+ dock.reset()
285
+
286
+
287
+ def test_dock_turn_preserves_long_multiline_input(tmp_path):
288
+ dock.deactivate()
289
+ dock.reset()
290
+ dock.begin_capture()
291
+ try:
292
+ second = "second-" + ("y" * 180)
293
+ third = "third-tail"
294
+ turn = dock.start_turn(f"first\n{second}\n{third}")
295
+
296
+ rendered = "\n".join(dock.tree.render(100))
297
+
298
+ assert second in rendered
299
+ assert third in rendered
300
+ assert turn.body_lines == [second, third]
301
+ finally:
302
+ dock.deactivate()
303
+ dock.reset()
304
+
305
+
306
+ def test_dock_tool_header_uses_raw_args_without_rich_markup(tmp_path):
307
+ dock.deactivate()
308
+ dock.reset()
309
+ dock.begin_capture()
310
+ try:
311
+ tool = dock.start_tool(
312
+ "Reading",
313
+ 'file_path="[cyan]src/voidx/ui/dock.py[/cyan]"',
314
+ tool_name="read",
315
+ raw_args={"file_path": "src/voidx/ui/dock.py"},
316
+ )
317
+ dock.finish_tool_node(tool, "read", 0.0, True)
318
+
319
+ rendered = "\n".join(_rich_plain(line) for line in dock.tree.render(120))
320
+ assert 'Read("src/voidx/ui/dock.py")' in rendered
321
+ assert "[cyan]" not in rendered
322
+ assert "(0.0s)" not in rendered
323
+ assert "Reading file_path" not in rendered
324
+ finally:
325
+ dock.deactivate()
326
+ dock.reset()
327
+
328
+
329
+ def test_dock_tool_collapsed_summary_does_not_duplicate_elapsed(tmp_path):
330
+ dock.deactivate()
331
+ dock.reset()
332
+ dock.begin_capture()
333
+ try:
334
+ tool = dock.start_tool(
335
+ "Reading",
336
+ "",
337
+ tool_name="read",
338
+ raw_args={"file_path": "src/app.py"},
339
+ )
340
+ dock.finish_tool_node(tool, "read", 2.5, True)
341
+
342
+ rendered = "\n".join(_rich_plain(line) for line in dock.tree.render(120))
343
+ assert rendered.count("(2.5s)") == 1
344
+ finally:
345
+ dock.deactivate()
346
+ dock.reset()
347
+
348
+
349
+ def test_dock_tool_summary_does_not_replace_tool_header(tmp_path):
350
+ dock.deactivate()
351
+ dock.reset()
352
+ dock.begin_capture()
353
+ try:
354
+ tool = dock.start_tool(
355
+ "Running",
356
+ "",
357
+ tool_name="bash",
358
+ raw_args={"command": "git status --short"},
359
+ )
360
+ dock.finish_tool_node(tool, "bash", 0.1, True, "exit 0")
361
+
362
+ rendered_lines = [_rich_plain(line).strip() for line in dock.tree.render(120)]
363
+ rendered = "\n".join(rendered_lines)
364
+
365
+ assert 'Bash("git status --short")' in rendered
366
+ assert "exit 0" in rendered
367
+ assert "exit 0" not in rendered_lines
368
+ finally:
369
+ dock.deactivate()
370
+ dock.reset()
371
+
372
+
373
+ def test_dock_git_tool_header_shows_args_not_path(tmp_path):
374
+ """git tool header should display the args value, not the path field."""
375
+ dock.deactivate()
376
+ dock.reset()
377
+ dock.begin_capture()
378
+ try:
379
+ tool = dock.start_tool(
380
+ "Git",
381
+ "",
382
+ tool_name="git",
383
+ raw_args={"path": ".", "args": "log --oneline -5"},
384
+ )
385
+ dock.finish_tool_node(tool, "git", 0.1, True)
386
+
387
+ rendered = "\n".join(_rich_plain(line) for line in dock.tree.render(120))
388
+ assert 'Git("log --oneline -5")' in rendered
389
+ assert 'Git(".")' not in rendered
390
+ finally:
391
+ dock.deactivate()
392
+ dock.reset()
393
+
394
+
395
+ def test_dock_git_tool_finish_detail_no_command_prefix(tmp_path):
396
+ """git finish detail should not duplicate the command name from header."""
397
+ dock.deactivate()
398
+ dock.reset()
399
+ dock.begin_capture()
400
+ try:
401
+ tool = dock.start_tool(
402
+ "Git",
403
+ "",
404
+ tool_name="git",
405
+ raw_args={"path": "", "args": "status --porcelain"},
406
+ )
407
+ dock.finish_tool_node(tool, "git", 0.1, True, "ok")
408
+
409
+ rendered = "\n".join(_rich_plain(line) for line in dock.tree.render(120))
410
+ assert 'Git("status --porcelain")' in rendered
411
+ assert "git status" not in rendered
412
+ finally:
413
+ dock.deactivate()
414
+ dock.reset()
415
+
416
+
417
+ def test_input_cursor_position_counts_wide_chinese_cells(tmp_path, monkeypatch):
418
+ class FakeStdout:
419
+ def __init__(self) -> None:
420
+ self.text = ""
421
+
422
+ def write(self, value: str) -> int:
423
+ self.text += value
424
+ return len(value)
425
+
426
+ fake_stdout = FakeStdout()
427
+ monkeypatch.setattr(sys, "stdout", fake_stdout)
428
+ tui = _tui(tmp_path)
429
+ tui._input_lines = ["你好i zai"]
430
+ tui._cursor_row = 0
431
+ tui._cursor_col = 2
432
+ tui._console = Console(file=None, force_terminal=True, width=80, height=24, _environ={})
433
+
434
+ tui._position_input_cursor()
435
+
436
+ assert fake_stdout.text.startswith("\x1b[1A")
437
+ assert "\x1b[7G" in fake_stdout.text
438
+
439
+
@@ -0,0 +1,154 @@
1
+ from tui_helpers import * # noqa: F403
2
+
3
+ import sys
4
+ import types
5
+
6
+ import pytest
7
+
8
+
9
+ class _FakeMsvcrt:
10
+ """Fake msvcrt module with a scripted character queue."""
11
+
12
+ def __init__(self, chars: list[str]) -> None:
13
+ self._chars = list(chars)
14
+ self._consumed: list[str] = []
15
+
16
+ def kbhit(self) -> bool:
17
+ return bool(self._chars)
18
+
19
+ def getwch(self) -> str:
20
+ if not self._chars:
21
+ raise AssertionError("getwch called on empty buffer")
22
+ ch = self._chars.pop(0)
23
+ self._consumed.append(ch)
24
+ return ch
25
+
26
+
27
+ def _install_fake_msvcrt(monkeypatch, chars: list[str]) -> _FakeMsvcrt:
28
+ fake = _FakeMsvcrt(chars)
29
+ monkeypatch.setitem(sys.modules, "msvcrt", fake)
30
+ return fake
31
+
32
+
33
+ # ── _read_input_raw_win32 integration ──────────────────────────────────
34
+
35
+
36
+ @pytest.mark.asyncio
37
+ async def test_read_input_raw_win32_multiline_paste_produces_bracketed(tmp_path, monkeypatch):
38
+ """Full _read_input_raw_win32: first char \\r triggers drain → bracketed paste."""
39
+ _install_fake_msvcrt(monkeypatch, ["\r", "\n", "l", "i", "n", "e", "2"])
40
+ tui = _tui(tmp_path)
41
+
42
+ result = await tui._read_input_raw_win32()
43
+
44
+ assert result.startswith(b"\x1b[200~")
45
+ assert result.endswith(b"\x1b[201~")
46
+
47
+
48
+ @pytest.mark.asyncio
49
+ async def test_read_input_raw_win32_single_enter_returns_cr(tmp_path, monkeypatch):
50
+ """Full _read_input_raw_win32: single Enter with no follow-up → raw \\r."""
51
+ _install_fake_msvcrt(monkeypatch, ["\r"])
52
+ tui = _tui(tmp_path)
53
+
54
+ result = await tui._read_input_raw_win32()
55
+
56
+ assert result == b"\r"
57
+
58
+
59
+ @pytest.mark.asyncio
60
+ async def test_read_input_raw_win32_regular_char_unchanged(tmp_path, monkeypatch):
61
+ """Full _read_input_raw_win32: regular char → unchanged."""
62
+ _install_fake_msvcrt(monkeypatch, ["a"])
63
+ tui = _tui(tmp_path)
64
+
65
+ result = await tui._read_input_raw_win32()
66
+
67
+ assert result == b"a"
68
+
69
+
70
+ @pytest.mark.asyncio
71
+ async def test_read_input_raw_win32_function_key_unchanged(tmp_path, monkeypatch):
72
+ """Full _read_input_raw_win32: function key (0x00 prefix) → mapped escape."""
73
+ _install_fake_msvcrt(monkeypatch, ["\x00", "H"])
74
+ tui = _tui(tmp_path)
75
+
76
+ # First char is 0x00, second is 'H' (Up arrow)
77
+ result = await tui._read_input_raw_win32()
78
+
79
+ assert result == b"\x1b[A"
80
+
81
+
82
+ # ── End-to-end: drain → _process_input → _insert_pasted_text ──────────
83
+
84
+
85
+ @pytest.mark.asyncio
86
+ async def test_e2e_multiline_paste_preserves_all_lines(tmp_path, monkeypatch):
87
+ """E2E: drain produces bracketed paste → _process_input inserts all lines."""
88
+ # Simulate Windows Terminal injecting "line1\r\nline2\r\nline3"
89
+ # First char 'l' is read by getwch, then \r triggers drain
90
+ _install_fake_msvcrt(monkeypatch, ["\r", "\n", "l", "i", "n", "e", "2", "\r", "\n", "l", "i", "n", "e", "3"])
91
+ tui = _tui(tmp_path)
92
+ tui._tty = True
93
+ tui._input_lines = [""]
94
+ tui._cursor_col = 0
95
+
96
+ # Read raw input (first char 'l' — not a newline, so no drain)
97
+ # We need to simulate the full flow: first 'l','i','n','e','1' are read
98
+ # one at a time, then '\r' triggers drain.
99
+ # For E2E test, let's start with \r as first char (empty first line paste)
100
+ _install_fake_msvcrt(monkeypatch, ["\n", "l", "i", "n", "e", "1", "\r", "\n", "l", "i", "n", "e", "2"])
101
+ raw = await tui._read_input_raw_win32()
102
+
103
+ # Should be a bracketed paste sequence
104
+ assert raw.startswith(b"\x1b[200~")
105
+ assert raw.endswith(b"\x1b[201~")
106
+
107
+ # Process it through _process_input
108
+ tui._process_input(raw)
109
+
110
+ # All lines should be collapsed into a paste token
111
+ assert tui._get_input_text() == "[Pasted text #1 +2 lines]"
112
+ assert tui._paste_entries[0]["expanded"] == "\nline1\nline2"
113
+ assert tui._queue.empty()
114
+
115
+
116
+ @pytest.mark.asyncio
117
+ async def test_e2e_large_paste_collapses_to_token(tmp_path, monkeypatch):
118
+ """E2E: large paste (>3 lines) collapses to [Pasted text #N +M lines] token."""
119
+ # Simulate a 5-line paste starting with \r
120
+ chars = list("\nline1\r\nline2\r\nline3\r\nline4\r\nline5")
121
+ _install_fake_msvcrt(monkeypatch, chars)
122
+ tui = _tui(tmp_path)
123
+ tui._tty = True
124
+
125
+ raw = await tui._read_input_raw_win32()
126
+ assert raw.startswith(b"\x1b[200~")
127
+
128
+ tui._process_input(raw)
129
+
130
+ # Should collapse to token (6 lines: empty + 5 lines > 3)
131
+ text = tui._get_input_text()
132
+ assert "[Pasted text #1" in text
133
+ assert tui._queue.empty()
134
+
135
+
136
+ @pytest.mark.asyncio
137
+ async def test_e2e_single_enter_does_not_submit_prematurely(tmp_path, monkeypatch):
138
+ """E2E: single Enter with no follow-up → raw \r → submit (not paste)."""
139
+ _install_fake_msvcrt(monkeypatch, ["\r"])
140
+ tui = _tui(tmp_path)
141
+ tui._tty = True
142
+ tui._input_lines = ["hello"]
143
+ tui._cursor_col = 5
144
+
145
+ raw = await tui._read_input_raw_win32()
146
+ assert raw == b"\r"
147
+
148
+ tui._process_input(raw)
149
+
150
+ # Should submit, not paste
151
+ assert not tui._queue.empty()
152
+ assert tui._queue.get_nowait() == "hello"
153
+
154
+