summaryrefslogtreecommitdiff
path: root/webapp/src/components
diff options
context:
space:
mode:
authorKjetil Orbekk <kj@orbekk.com>2022-09-22 20:26:26 -0400
committerKjetil Orbekk <kj@orbekk.com>2022-09-22 20:39:51 -0400
commit507a81f25dc6e38df91dce2eed63a8b7d282184f (patch)
tree6f2653409c7d528a0f85eccbb579c71429ecef6e /webapp/src/components
parent6a11eedc3df00c88bdf5fcb004f2afd4fa3dc49f (diff)
Add component to show tricks played
Diffstat (limited to 'webapp/src/components')
-rw-r--r--webapp/src/components/game.rs5
-rw-r--r--webapp/src/components/tricks_played.rs16
2 files changed, 18 insertions, 3 deletions
diff --git a/webapp/src/components/game.rs b/webapp/src/components/game.rs
index 91b3022..b42f912 100644
--- a/webapp/src/components/game.rs
+++ b/webapp/src/components/game.rs
@@ -2,7 +2,7 @@ use crate::bridge_engine::{self, Contract, Player, DealInPlay, DealInPlayResult}
use crate::card;
use crate::card::Deal;
use crate::card::Suit;
-use crate::components::{Bidding, Hand, ShowBid, TrickInPlay};
+use crate::components::{Bidding, Hand, ShowBid, TrickInPlay, TricksPlayed};
use log::{error, info};
use yew::prelude::*;
@@ -115,7 +115,7 @@ pub fn game() -> Html {
} => {
html! {
<>
- <p>{ "Time to play" }</p>
+ <TricksPlayed tricks={ playing_deal.tricks().clone() } />
<TrickInPlay in_progress={ playing_deal.trick_in_play().clone() } />
</>
}
@@ -129,7 +129,6 @@ pub fn game() -> Html {
if let GameState::Play { contract, bidding, .. } = &*state {
<ShowBid contract={contract.clone()} bidding={bidding.clone()}/>
}
- <p>{ format!("Phase: {:?}", &*state) }</p>
<button onclick={shuffle}>{ "Shuffle" }</button>
</div>
<div class="center">
diff --git a/webapp/src/components/tricks_played.rs b/webapp/src/components/tricks_played.rs
new file mode 100644
index 0000000..352a030
--- /dev/null
+++ b/webapp/src/components/tricks_played.rs
@@ -0,0 +1,16 @@
+use yew::prelude::*;
+use crate::bridge_engine::Trick;
+
+#[function_component(TricksPlayed)]
+pub fn tricks_played(props: &TricksPlayedProperties) -> Html {
+ html! {
+ <>
+ <p>{ format!("{} tricks played", props.tricks.len()) }</p>
+ </>
+ }
+}
+
+#[derive(PartialEq, Properties, Clone)]
+pub struct TricksPlayedProperties {
+ pub tricks: Vec<Trick>,
+}