34 lines
1.1 KiB
Rust
34 lines
1.1 KiB
Rust
use leptos::prelude::*;
|
|
use lib::*;
|
|
|
|
#[component]
|
|
pub fn BlackCard() -> impl IntoView {
|
|
let game_meta = expect_context::<ReadSignal<Option<GameStateMeta>>>();
|
|
view! {
|
|
<Show when=move || { game_meta().is_some() }>
|
|
<div class="relative m-2 w-40 h-60 text-white bg-black rounded-lg shadow-black shadow-md">
|
|
<p class="p-4">{game_meta().unwrap().black.0}</p>
|
|
<p class="absolute right-4 bottom-4">Pick: {game_meta().unwrap().black.1}</p>
|
|
</div>
|
|
</Show>
|
|
}
|
|
}
|
|
|
|
#[component]
|
|
pub fn WhiteCard(card_data: WhiteCardMeta) -> impl IntoView {
|
|
let set_card_clicked = expect_context::<WriteSignal<String>>();
|
|
|
|
view! {
|
|
<div class="relative m-2 w-40 h-60 text-black bg-white rounded-lg shadow-black drop-shadow-lg">
|
|
<p class="p-4">{card_data.text}</p>
|
|
<button
|
|
class="absolute w-full h-full opacity-10 left-0 top-0"
|
|
type="button"
|
|
value=card_data.uuid.clone()
|
|
on:click=move |e| {
|
|
set_card_clicked(event_target_value(&e));
|
|
}
|
|
></button>
|
|
</div>
|
|
}
|
|
}
|