summaryrefslogtreecommitdiff
path: root/webapp/src
diff options
context:
space:
mode:
authorKjetil Orbekk <kj@orbekk.com>2022-10-06 19:47:58 -0400
committerKjetil Orbekk <kj@orbekk.com>2022-10-06 19:47:58 -0400
commitb10b534ab6507ed2c2d1a62d61f3213397a288e5 (patch)
treea4b51714e0fe7744ae4d550c1a84e48d81f0fcaa /webapp/src
parent806faef4b75173892ecea4ccd4a14178320c89a4 (diff)
Run `cargo fmt`
Diffstat (limited to 'webapp/src')
-rw-r--r--webapp/src/bridge_engine.rs6
-rw-r--r--webapp/src/components.rs18
-rw-r--r--webapp/src/components/bidding.rs23
-rw-r--r--webapp/src/components/bidding_box.rs38
-rw-r--r--webapp/src/components/bidding_table.rs17
-rw-r--r--webapp/src/components/card.rs2
-rw-r--r--webapp/src/components/game.rs4
-rw-r--r--webapp/src/components/hand.rs2
-rw-r--r--webapp/src/components/show_bid.rs20
-rw-r--r--webapp/src/components/trick_in_play.rs14
-rw-r--r--webapp/src/components/tricks_played.rs2
11 files changed, 70 insertions, 76 deletions
diff --git a/webapp/src/bridge_engine.rs b/webapp/src/bridge_engine.rs
index a411c1c..ecd4554 100644
--- a/webapp/src/bridge_engine.rs
+++ b/webapp/src/bridge_engine.rs
@@ -80,7 +80,11 @@ impl TurnInPlay {
}
pub fn suit(&self) -> Option<Suit> {
- self.trick.cards_played.iter().next().map(|&Card(suit, _)| suit)
+ self.trick
+ .cards_played
+ .iter()
+ .next()
+ .map(|&Card(suit, _)| suit)
}
pub fn leader(&self) -> Player {
diff --git a/webapp/src/components.rs b/webapp/src/components.rs
index 2bc8ff8..80b5a91 100644
--- a/webapp/src/components.rs
+++ b/webapp/src/components.rs
@@ -1,24 +1,24 @@
use crate::card::Suit;
+mod bidding;
+mod bidding_box;
+mod bidding_table;
mod card;
+mod game;
mod hand;
-mod bidding_table;
-mod bidding_box;
-mod bidding;
mod show_bid;
-mod game;
mod trick_in_play;
mod tricks_played;
-pub use self::trick_in_play::*;
-pub use self::tricks_played::*;
-pub use self::card::*;
+pub use self::bidding::*;
pub use self::bidding_box::*;
pub use self::bidding_table::*;
-pub use self::bidding::*;
-pub use self::show_bid::*;
+pub use self::card::*;
pub use self::game::*;
pub use self::hand::*;
+pub use self::show_bid::*;
+pub use self::trick_in_play::*;
+pub use self::tricks_played::*;
pub fn suit_css_class(suit: Suit) -> &'static str {
match suit {
diff --git a/webapp/src/components/bidding.rs b/webapp/src/components/bidding.rs
index a7e1e43..2825cbd 100644
--- a/webapp/src/components/bidding.rs
+++ b/webapp/src/components/bidding.rs
@@ -1,9 +1,8 @@
use crate::bridge_engine::{self, BiddingResult, Contract, Player};
use crate::components::{BiddingBox, BiddingTable};
-use log::{error};
+use log::error;
use yew::prelude::*;
-
#[derive(PartialEq, Properties, Clone)]
pub struct BiddingProperties {
pub dealer: Player,
@@ -29,17 +28,15 @@ pub fn bidding(props: &BiddingProperties) -> Html {
let on_bid = {
let bidding = bidding.clone();
let on_contract = props.on_contract.clone();
- Callback::from(move |bid| {
- match (*bidding).clone().bid(bid) {
- Ok(BiddingResult::Contract(contract, bidding)) => {
- on_contract.emit((contract, bidding));
- },
- Ok(BiddingResult::InProgress(new_bidding)) => {
- bidding.set(new_bidding);
- }
- Err(err) => {
- error!("Failed to place bid: {:?}", err);
- }
+ Callback::from(move |bid| match (*bidding).clone().bid(bid) {
+ Ok(BiddingResult::Contract(contract, bidding)) => {
+ on_contract.emit((contract, bidding));
+ }
+ Ok(BiddingResult::InProgress(new_bidding)) => {
+ bidding.set(new_bidding);
+ }
+ Err(err) => {
+ error!("Failed to place bid: {:?}", err);
}
})
};
diff --git a/webapp/src/components/bidding_box.rs b/webapp/src/components/bidding_box.rs
index 04f82f9..1d12369 100644
--- a/webapp/src/components/bidding_box.rs
+++ b/webapp/src/components/bidding_box.rs
@@ -1,28 +1,26 @@
-use yew::prelude::*;
use crate::bridge_engine::{Bid, Raise};
use crate::components::bid_css_class;
+use yew::prelude::*;
#[function_component(BiddingBox)]
pub fn bidding_box(props: &BiddingBoxProps) -> Html {
- let bids = Raise::all_raises()
- .into_iter()
- .map(|raise| {
- let mut class = if Some(raise) <= props.current_bid {
- classes!("disabled")
- } else {
- classes!("enabled")
- };
- class.extend(classes!(bid_css_class(raise.suit)));
- let onclick = {
- let on_bid = props.on_bid.clone();
- Callback::from(move |_| on_bid.emit(Bid::Raise(raise)))
- };
- html! {
- <div class={class} {onclick}>
- { raise.level }
- </div>
- }
- });
+ let bids = Raise::all_raises().into_iter().map(|raise| {
+ let mut class = if Some(raise) <= props.current_bid {
+ classes!("disabled")
+ } else {
+ classes!("enabled")
+ };
+ class.extend(classes!(bid_css_class(raise.suit)));
+ let onclick = {
+ let on_bid = props.on_bid.clone();
+ Callback::from(move |_| on_bid.emit(Bid::Raise(raise)))
+ };
+ html! {
+ <div class={class} {onclick}>
+ { raise.level }
+ </div>
+ }
+ });
let onclick = |bid| {
let on_bid = props.on_bid.clone();
diff --git a/webapp/src/components/bidding_table.rs b/webapp/src/components/bidding_table.rs
index f4b692a..8576ed6 100644
--- a/webapp/src/components/bidding_table.rs
+++ b/webapp/src/components/bidding_table.rs
@@ -1,25 +1,20 @@
-use yew::prelude::*;
use crate::bridge_engine::{Bid, Bidding, Player};
use crate::components::bid_css_class;
+use yew::prelude::*;
#[function_component(BiddingTable)]
pub fn bidding_table(props: &BiddingTableProps) -> Html {
let bid = |bid: &Bid| match bid.as_raise() {
- None => html!{ <div class="bid">{ bid }</div> },
- Some(raise) => html!{
+ None => html! { <div class="bid">{ bid }</div> },
+ Some(raise) => html! {
<div class="bid">
{ raise.level }
<div class={ bid_css_class(raise.suit) }/>
</div>
},
};
- let bids: Html = props
- .bidding
- .bids
- .iter()
- .map(|b| { bid(b) })
- .collect();
- let padding : Html = padding(props.bidding.dealer);
+ let bids: Html = props.bidding.bids.iter().map(|b| bid(b)).collect();
+ let padding: Html = padding(props.bidding.dealer);
html! {
<div class="bidding-table">
<div class="header">{ "West" }</div>
@@ -33,7 +28,7 @@ pub fn bidding_table(props: &BiddingTableProps) -> Html {
}
fn padding(dealer: Player) -> Html {
- let mut padding : Vec<Html> = vec![];
+ let mut padding: Vec<Html> = vec![];
let mut player = Player::West;
while player != dealer {
padding.push(html! { <div/> });
diff --git a/webapp/src/components/card.rs b/webapp/src/components/card.rs
index d5aee36..ff321e1 100644
--- a/webapp/src/components/card.rs
+++ b/webapp/src/components/card.rs
@@ -1,6 +1,6 @@
-use yew::prelude::*;
use crate::card;
use crate::components::suit_css_class;
+use yew::prelude::*;
#[function_component(Card)]
pub fn ccard(props: &CardProps) -> Html {
diff --git a/webapp/src/components/game.rs b/webapp/src/components/game.rs
index b42f912..34e073c 100644
--- a/webapp/src/components/game.rs
+++ b/webapp/src/components/game.rs
@@ -1,4 +1,4 @@
-use crate::bridge_engine::{self, Contract, Player, DealInPlay, DealInPlayResult};
+use crate::bridge_engine::{self, Contract, DealInPlay, DealInPlayResult, Player};
use crate::card;
use crate::card::Deal;
use crate::card::Suit;
@@ -119,7 +119,7 @@ pub fn game() -> Html {
<TrickInPlay in_progress={ playing_deal.trick_in_play().clone() } />
</>
}
- },
+ }
GameState::PassedOut { .. } => html! { <p>{ "Everyone passed" }</p> },
};
diff --git a/webapp/src/components/hand.rs b/webapp/src/components/hand.rs
index 411a173..4a01508 100644
--- a/webapp/src/components/hand.rs
+++ b/webapp/src/components/hand.rs
@@ -1,5 +1,5 @@
-use crate::components::card::{Card};
use crate::card;
+use crate::components::card::Card;
use yew::prelude::*;
#[function_component(Hand)]
diff --git a/webapp/src/components/show_bid.rs b/webapp/src/components/show_bid.rs
index 2ab2d5c..5914710 100644
--- a/webapp/src/components/show_bid.rs
+++ b/webapp/src/components/show_bid.rs
@@ -9,14 +9,14 @@ pub struct ShowBidProps {
#[function_component(ShowBid)]
pub fn show_bid(props: &ShowBidProps) -> Html {
-html! {
- <>
- <p>{
- match props.contract {
- None => "Passed".to_string(),
- Some(c) => format!("{}", c),
- }
- }</p>
- </>
-}
+ html! {
+ <>
+ <p>{
+ match props.contract {
+ None => "Passed".to_string(),
+ Some(c) => format!("{}", c),
+ }
+ }</p>
+ </>
+ }
}
diff --git a/webapp/src/components/trick_in_play.rs b/webapp/src/components/trick_in_play.rs
index c034d20..720fec0 100644
--- a/webapp/src/components/trick_in_play.rs
+++ b/webapp/src/components/trick_in_play.rs
@@ -1,6 +1,6 @@
-use yew::prelude::*;
use crate::bridge_engine::TurnInPlay;
use crate::components::Card;
+use yew::prelude::*;
#[function_component(TrickInPlay)]
pub fn trick_in_play(props: &TrickInPlayProps) -> Html {
@@ -9,12 +9,12 @@ pub fn trick_in_play(props: &TrickInPlayProps) -> Html {
<Card card={ card.clone() } />
}
});
-html! {
- <>
- <p>{ format!("Leader: {:?}", props.in_progress.leader()) }</p>
- { for cards }
- </>
-}
+ html! {
+ <>
+ <p>{ format!("Leader: {:?}", props.in_progress.leader()) }</p>
+ { for cards }
+ </>
+ }
}
#[derive(PartialEq, Properties, Clone)]
diff --git a/webapp/src/components/tricks_played.rs b/webapp/src/components/tricks_played.rs
index 352a030..97a7cd1 100644
--- a/webapp/src/components/tricks_played.rs
+++ b/webapp/src/components/tricks_played.rs
@@ -1,5 +1,5 @@
-use yew::prelude::*;
use crate::bridge_engine::Trick;
+use yew::prelude::*;
#[function_component(TricksPlayed)]
pub fn tricks_played(props: &TricksPlayedProperties) -> Html {