54 lines
1.2 KiB
Python
54 lines
1.2 KiB
Python
|
|
"""hatch_menu — modular muse.ai settings-menu navigation + toggles.
|
||
|
|
|
||
|
|
One module per part so a site change means patching one file:
|
||
|
|
mouse.py trusted input primitives (real click, escape, close)
|
||
|
|
dialog.py settings dialog open / tab nav / rows / back / text
|
||
|
|
controls.py generic radio/switch primitives (verify-then-fallback)
|
||
|
|
toggles.py toggle registry + sessions over controls and tabs
|
||
|
|
tabs/ one module per settings tab (uniform describe())
|
||
|
|
|
||
|
|
invite.py consumes this package; `box chromebox` exposes toggles.
|
||
|
|
"""
|
||
|
|
|
||
|
|
from hatch_menu.dialog import (
|
||
|
|
TAB_NAMES,
|
||
|
|
TABS,
|
||
|
|
click_row,
|
||
|
|
close_settings,
|
||
|
|
describe_rows,
|
||
|
|
dialog_present,
|
||
|
|
dialog_text,
|
||
|
|
go_back,
|
||
|
|
goto_tab,
|
||
|
|
open_settings,
|
||
|
|
)
|
||
|
|
from hatch_menu.mouse import MouseError, close, escape, real_click
|
||
|
|
from hatch_menu.toggles import (
|
||
|
|
MenuError,
|
||
|
|
describe_tab,
|
||
|
|
get_toggle,
|
||
|
|
list_toggles,
|
||
|
|
set_toggle,
|
||
|
|
)
|
||
|
|
|
||
|
|
__all__ = [
|
||
|
|
"TAB_NAMES",
|
||
|
|
"TABS",
|
||
|
|
"MenuError",
|
||
|
|
"MouseError",
|
||
|
|
"click_row",
|
||
|
|
"close",
|
||
|
|
"close_settings",
|
||
|
|
"describe_rows",
|
||
|
|
"describe_tab",
|
||
|
|
"dialog_present",
|
||
|
|
"dialog_text",
|
||
|
|
"escape",
|
||
|
|
"get_toggle",
|
||
|
|
"go_back",
|
||
|
|
"goto_tab",
|
||
|
|
"list_toggles",
|
||
|
|
"open_settings",
|
||
|
|
"real_click",
|
||
|
|
]
|