From f7d984f84ea96cfb07ac1a99b000109f530abc0e Mon Sep 17 00:00:00 2001 From: Thomas Mathews Date: Wed, 21 Dec 2022 10:02:53 -0800 Subject: [PATCH] web: fixed reactions not updating --- web/js/model.js | 11 +++++++---- web/js/ui/state.js | 1 + 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/web/js/model.js b/web/js/model.js index 95a6025..8437df8 100644 --- a/web/js/model.js +++ b/web/js/model.js @@ -85,10 +85,10 @@ function model_process_event_reaction(model, ev) { */ function model_process_event_deletion(model, ev) { for (const tag of ev.tags) { - if (tag.length >= 2 && tag[0] === "e") { - const evid = tag[1]; + if (tag.length >= 2 && tag[0] === "e" && tag[1]) { + let evid = tag[1]; model.invalidated.push(evid); - model_remove_reaction(model, ev, evid); + model_remove_reaction(model, evid); if (model.deleted[evid]) continue; let ds = model.deletions[evid] = @@ -108,7 +108,10 @@ function model_remove_reaction(model, evid) { if (!target_ev) return; const reaction = event_parse_reaction(target_ev); - model.reactions_to[reaction.e].remove(target_ev.id); + if (!reaction) + return; + if (model.reactions_to[reaction.e]) + model.reactions_to[reaction.e].delete(target_ev.id); view_timeline_update_reaction(model, target_ev); } diff --git a/web/js/ui/state.js b/web/js/ui/state.js index d278d9b..91f7267 100644 --- a/web/js/ui/state.js +++ b/web/js/ui/state.js @@ -234,6 +234,7 @@ function view_timeline_update_reaction(model, ev) { el = find_node(`.reactions`, root); el.innerHTML = render_reactions_inner(model, model.all_events[ev_id]); + // Update like button if (ev.pubkey == model.pubkey) { const reaction = model_get_reacts_to(model, model.pubkey, ev_id, R_HEART); const liked = !!reaction;