diff options
Diffstat (limited to 'src/components/message.rs')
-rw-r--r-- | src/components/message.rs | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/components/message.rs b/src/components/message.rs index 5deccdd..f55c5f7 100644 --- a/src/components/message.rs +++ b/src/components/message.rs @@ -8,11 +8,8 @@ use super::icon::Delivery; #[component] pub fn Message(message: MacawMessage, major: bool, r#final: bool) -> impl IntoView { - let message_message: Store<filamento::chat::Message> = - <ArcStore<filamento::chat::Message> as Clone>::clone(&message.get()).into(); - let message_user = <ArcStore<filamento::user::User> as Clone>::clone(&message.user.get()).into(); - let avatar = LocalResource::new(move || get_avatar(message_user)); - let name = move || get_name(message_user, false); + let avatar = LocalResource::new(move || get_avatar(message.user.get().into())); + let name = move || get_name(message.user.get().into(), false); // TODO: chrono-humanize? // TODO: if final, show delivery not only on hover. @@ -28,23 +25,23 @@ pub fn Message(message: MacawMessage, major: bool, r#final: bool) -> impl IntoVi <div class="middle"> <div class="message-info"> <div class="message-user-name">{name}</div> - <div class="message-timestamp">{move || message_message.timestamp().read().format("%H:%M").to_string()}</div> + <div class="message-timestamp">{move || message.get().timestamp().read().format("%H:%M").to_string()}</div> </div> <div class="message-text"> - {move || message_message.body().read().body.clone()} + {move || message.get().body().read().body.clone()} </div> </div> - <div class="right message-delivery">{move || message_message.delivery().get().map(|delivery| view! { <Delivery class:light=true delivery /> } ) }</div> + <div class="right message-delivery">{move || message.get().delivery().get().map(|delivery| view! { <Delivery class:light=true delivery /> } ) }</div> </div> }.into_any() } else { view! { <div class:final=r#final class="chat-message minor"> <div class="left message-timestamp"> - {move || message_message.timestamp().read().format("%H:%M").to_string()} + {move || message.get().timestamp().read().format("%H:%M").to_string()} </div> - <div class="middle message-text">{move || message_message.body().read().body.clone()}</div> - <div class="right message-delivery">{move || message_message.delivery().get().map(|delivery| view! { <Delivery delivery /> } ) }</div> + <div class="middle message-text">{move || message.get().body().read().body.clone()}</div> + <div class="right message-delivery">{move || message.get().delivery().get().map(|delivery| view! { <Delivery delivery /> } ) }</div> </div> }.into_any() } |