Merge pull request #534 from PR0M3TH3AN/codex/add-color-categories-and-notification-helper

Add notification drainage and new color scheme categories
This commit is contained in:
thePR0M3TH3AN
2025-07-14 11:21:36 -04:00
committed by GitHub
2 changed files with 21 additions and 0 deletions

View File

@@ -27,6 +27,7 @@ from utils import (
pause,
clear_and_print_fingerprint,
)
import queue
from local_bip85.bip85 import Bip85Error
@@ -100,6 +101,22 @@ def confirm_action(prompt: str) -> bool:
print(colored("Please enter 'Y' or 'N'.", "red"))
def drain_notifications(pm: PasswordManager) -> None:
"""Display all queued notifications."""
queue_obj = getattr(pm, "notifications", None)
if queue_obj is None:
return
while True:
try:
note = queue_obj.get_nowait()
except queue.Empty:
break
category = note.level.lower()
if category not in ("info", "warning", "error"):
category = "info"
print(color_text(note.message, category))
def handle_switch_fingerprint(password_manager: PasswordManager):
"""
Handles switching the active fingerprint.
@@ -932,6 +949,7 @@ def display_menu(
for handler in logging.getLogger().handlers:
handler.flush()
print(color_text(menu, "menu"))
drain_notifications(password_manager)
try:
choice = timed_input(
"Enter your choice (1-8) or press Enter to exit: ",

View File

@@ -20,6 +20,9 @@ _COLOR_MAP = {
"index": "yellow",
"menu": "cyan",
"stats": "green",
"info": "cyan",
"warning": "yellow",
"error": "red",
"default": "white",
}