Promote bridge, demo, craft_client to core birdcage package
Move bridge.py, demo.py, craft_client.py from tui/src/birdcage_tui/ to src/birdcage/ so both TUI and MCP server can share the device layer without a circular dependency on textual.
This commit is contained in:
parent
3013eeee4c
commit
16ca4892b3
7 changed files with 38 additions and 22 deletions
|
|
@ -102,15 +102,14 @@ class BirdcageApp(App):
|
|||
def _setup_device(self) -> None:
|
||||
"""Create device (demo or real) and hand it to each screen."""
|
||||
if self.demo_mode:
|
||||
from birdcage_tui.demo import DemoDevice
|
||||
from birdcage.demo import DemoDevice
|
||||
|
||||
self.device = DemoDevice()
|
||||
self.device.connect()
|
||||
else:
|
||||
from birdcage.bridge import SerialBridge
|
||||
from birdcage.protocol import get_protocol
|
||||
|
||||
from birdcage_tui.bridge import SerialBridge
|
||||
|
||||
protocol = get_protocol(self.firmware_name)
|
||||
self.device = SerialBridge(protocol)
|
||||
self.device.connect(self.serial_port)
|
||||
|
|
@ -142,11 +141,11 @@ class BirdcageApp(App):
|
|||
def _setup_craft_client(self) -> None:
|
||||
"""Create a Craft API client and hand it to the control screen."""
|
||||
if self.demo_mode:
|
||||
from birdcage_tui.demo import DemoCraftClient
|
||||
from birdcage.demo import DemoCraftClient
|
||||
|
||||
client = DemoCraftClient()
|
||||
else:
|
||||
from birdcage_tui.craft_client import CraftClient
|
||||
from birdcage.craft_client import CraftClient
|
||||
|
||||
client = CraftClient(base_url=self.craft_url)
|
||||
try:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue