feat: make toasts available on all routes
This commit is contained in:
1 parent
865410b6f2
commit
de7b8633ff
4 files changed
+121
-96
No files matched your search
@@ -4,6 +4,7 @@ use crate::components::toasts::toast::Toast;
|
||||
#[derive(Clone, Debug)]
|
||||
pub struct Toast {
|
||||
id: String,
|
||||
header: String,
|
||||
message: String,
|
||||
}
|
||||
|
||||
@@ -11,10 +12,16 @@ impl Toast {
|
||||
pub fn new() -> Self {
|
||||
Toast {
|
||||
id: "".to_owned(),
|
||||
header: "".to_owned(),
|
||||
message: "".to_owned(),
|
||||
}
|
||||
}
|
||||
|
||||
pub fn header(mut self, header: impl Into<String>) -> Self {
|
||||
self.header = header.into();
|
||||
self
|
||||
}
|
||||
|
||||
pub fn msg(mut self, msg: impl Into<String>) -> Self {
|
||||
self.message = msg.into();
|
||||
self
|
||||
@@ -61,11 +68,11 @@ pub fn ToastList(
|
||||
<For
|
||||
each=move || context.messages.get()
|
||||
key=|toast| toast.id.clone()
|
||||
let(Toast { id, message })
|
||||
let(Toast { id, header, message })
|
||||
>
|
||||
<Toast
|
||||
message=message
|
||||
title="Testing Toast"
|
||||
title=header
|
||||
on_close=move || {
|
||||
context.messages.update(|list|
|
||||
list.retain(|v| v.id != id)
|
||||
|
||||
Reference in new issue
Block a user