add: chat message reactions
This commit is contained in:
parent
a4298f95f6
commit
a37312fecf
20 changed files with 557 additions and 25 deletions
|
@ -204,6 +204,47 @@
|
|||
});
|
||||
});
|
||||
|
||||
self.define("message_react", async (_, element, message, emoji) => {
|
||||
await trigger("atto::debounce", ["reactions::toggle"]);
|
||||
fetch("/api/v1/message_reactions", {
|
||||
method: "POST",
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify({
|
||||
message,
|
||||
emoji,
|
||||
}),
|
||||
})
|
||||
.then((res) => res.json())
|
||||
.then((res) => {
|
||||
trigger("atto::toast", [
|
||||
res.ok ? "success" : "error",
|
||||
res.message,
|
||||
]);
|
||||
|
||||
if (res.ok) {
|
||||
if (res.message.includes("created")) {
|
||||
const x = element.querySelector(
|
||||
`[ui_ident=emoji_${emoji.replaceAll(":", "\\:")}]`,
|
||||
);
|
||||
|
||||
if (x) {
|
||||
x.classList.remove("lowered");
|
||||
}
|
||||
} else {
|
||||
const x = element.querySelector(
|
||||
`[ui_ident=emoji_${emoji.replaceAll(":", "\\:")}]`,
|
||||
);
|
||||
|
||||
if (x) {
|
||||
x.classList.add("lowered");
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
self.define("remove_notification", (_, id) => {
|
||||
fetch(`/api/v1/notifications/${id}`, {
|
||||
method: "DELETE",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue