use futures::channel::mpsc::UnboundedSender; use leptos::prelude::*; use crate::app::{NetCommand, Screen}; use crate::i18n::*; #[component] pub fn LobbyPage() -> impl IntoView { let i18n = use_i18n(); let (room_name, set_room_name) = signal(String::new()); let screen = use_context::>().expect("Screen context not found"); let cmd_tx = use_context::>() .expect("UnboundedSender not found in context"); let cmd_tx_create = cmd_tx.clone(); let cmd_tx_join = cmd_tx.clone(); let cmd_tx_bot = cmd_tx; // Extract connection error from screen state. let error = move || match screen.get() { Screen::Login { error } => error, _ => None, }; view! {
} }