improved updating of items
Build and Push Image / build-and-push (push) Successful in 5m7s

This commit is contained in:
2026-04-13 15:02:15 -04:00
parent a6e2156d97
commit 14a6e18966
+6 -9
View File
@@ -34,12 +34,12 @@ pub fn MediaItem(props: MediaItemProps) -> Element
let id = item.id.unwrap().value; let id = item.id.unwrap().value;
let thumb = item.thumb_url; let thumb = item.thumb_url;
let class = item.class; let class = item.class;
let mut class_signal = use_signal(|| match class let class_string = match class
{ {
1 => "blur", 1 => "blur",
2 => "secret", 2 => "secret",
_ => "", _ => "",
}); };
let url = item.media_url; let url = item.media_url;
let download = format!("{HOST}{url}"); let download = format!("{HOST}{url}");
@@ -47,7 +47,7 @@ pub fn MediaItem(props: MediaItemProps) -> Element
ContextMenu{ ContextMenu{
ContextMenuTrigger{ ContextMenuTrigger{
a { a {
class: "mediaItem {class_signal()}", class: "mediaItem {class_string}",
href: "{HOST}{url}", href: "{HOST}{url}",
target: "_blank", target: "_blank",
"data-id" : id.clone(), "data-id" : id.clone(),
@@ -93,14 +93,13 @@ pub fn MediaItem(props: MediaItemProps) -> Element
} }
}, },
{ {
if class_signal() != "" { if class != 0 {
rsx!{ContextMenuItem { rsx!{ContextMenuItem {
index: 2 as usize, index: 2 as usize,
value: "{id}", value: "{id}",
on_select: move |id: String|{ on_select: move |id: String|{
spawn(async move { spawn(async move {
if let Ok(_) = set_class(&id, 0).await{ if let Ok(_) = set_class(&id, 0).await{
class_signal.set("");
if let Some(handler) = props.on_class_changed{ if let Some(handler) = props.on_class_changed{
handler.call(MediaClassChangeEvent { id, class: 0 }); handler.call(MediaClassChangeEvent { id, class: 0 });
} }
@@ -118,14 +117,13 @@ pub fn MediaItem(props: MediaItemProps) -> Element
}else{rsx!{}} }else{rsx!{}}
} }
{ {
if class_signal() != "blur" { if class != 1 {
rsx!{ContextMenuItem { rsx!{ContextMenuItem {
index: 3 as usize, index: 3 as usize,
value: "{id}", value: "{id}",
on_select: move |id: String|{ on_select: move |id: String|{
spawn(async move { spawn(async move {
if let Ok(_) = set_class(&id, 1).await{ if let Ok(_) = set_class(&id, 1).await{
class_signal.set("blur");
if let Some(handler) = props.on_class_changed{ if let Some(handler) = props.on_class_changed{
handler.call(MediaClassChangeEvent { id, class: 1 }); handler.call(MediaClassChangeEvent { id, class: 1 });
} }
@@ -143,14 +141,13 @@ pub fn MediaItem(props: MediaItemProps) -> Element
}else{rsx!{}} }else{rsx!{}}
} }
{ {
if class_signal() != "secret" { if class != 3 {
rsx!{ContextMenuItem { rsx!{ContextMenuItem {
index: 4 as usize, index: 4 as usize,
value: "{id}", value: "{id}",
on_select: move |id: String|{ on_select: move |id: String|{
spawn(async move { spawn(async move {
if let Ok(_) = set_class(&id, 2).await{ if let Ok(_) = set_class(&id, 2).await{
class_signal.set("secret");
if let Some(handler) = props.on_class_changed{ if let Some(handler) = props.on_class_changed{
handler.call(MediaClassChangeEvent { id, class: 2 }); handler.call(MediaClassChangeEvent { id, class: 2 });
} }