use yew::prelude::*; use protocol::card::Suit; mod hand_diagram; mod app_context_provider; mod bidding; mod bidding_box; mod bidding_table; mod card; mod error_info; mod hand; mod show_bid; mod table; mod trick_in_play; mod tricks_played; pub use self::app_context_provider::*; pub use self::bidding::*; pub use self::bidding_box::*; pub use self::bidding_table::*; pub use self::card::*; pub use self::error_info::*; pub use self::hand::*; pub use self::show_bid::*; pub use self::table::*; pub use self::trick_in_play::*; pub use self::tricks_played::*; pub use self::hand_diagram::*; #[derive(Clone, Default, PartialEq, Properties)] pub struct HandProps { #[prop_or_default] pub cards: Vec, pub on_card_clicked: Callback, } pub fn suit_css_class(suit: Suit) -> &'static str { match suit { Suit::Club => "suit-club", Suit::Diamond => "suit-diamond", Suit::Heart => "suit-heart", Suit::Spade => "suit-spade", } } pub fn bid_css_class(suit: Option) -> &'static str { match suit { None => "suit-notrump", Some(x) => suit_css_class(x), } }