Spaces:
Sleeping
Sleeping
| import time | |
| from typing import List | |
| from textual.containers import Horizontal | |
| from textual.widgets import Label, OptionList | |
| from cli_textual.core.command import SlashCommand | |
| class SelectCommand(SlashCommand): | |
| name = "/select" | |
| description = "Show model selection" | |
| requires_permission = True | |
| async def execute(self, app, args: List[str]): | |
| container = app.query_one("#interaction-container") | |
| container.add_class("visible") | |
| container.query("*").remove() | |
| unique_id = f"sel-{int(time.time()*1000)}" | |
| option_list = OptionList("gpt-4o", "claude-3.5", id=unique_id) | |
| container.mount(Horizontal(Label("Select model:"), Label("(Esc to cancel)", classes="cancel-note"))) | |
| container.mount(option_list) | |
| app.call_after_refresh(option_list.focus) | |