summaryrefslogtreecommitdiff
path: root/hi-ui/src/lib/store/messages.js
diff options
context:
space:
mode:
authorOwen Jacobson <owen@grimoire.ca>2024-10-10 21:05:48 -0400
committerOwen Jacobson <owen@grimoire.ca>2024-10-10 21:05:48 -0400
commit4401dce2b5545ce8117818812d8e3c8919f5f7fd (patch)
treedf04478e6094a2a8cdd14ecd31b77caacff78de6 /hi-ui/src/lib/store/messages.js
parent999996961e6e8ebcde125ff0022df875d62817b3 (diff)
Remove redundancy in `hi-ui` directory name.
Diffstat (limited to 'hi-ui/src/lib/store/messages.js')
-rw-r--r--hi-ui/src/lib/store/messages.js44
1 files changed, 0 insertions, 44 deletions
diff --git a/hi-ui/src/lib/store/messages.js b/hi-ui/src/lib/store/messages.js
deleted file mode 100644
index 931b8fb..0000000
--- a/hi-ui/src/lib/store/messages.js
+++ /dev/null
@@ -1,44 +0,0 @@
-export class Messages {
- constructor() {
- this.channels = {};
- }
-
- inChannel(channel) {
- return this.channels[channel] = (this.channels[channel] || []);
- }
-
- addMessage(channel, id, at, sender, body) {
- this.updateChannel(channel, (messages) => [...messages, { id, at, sender, body }]);
- return this;
- }
-
- setMessages(messages) {
- this.channels = {};
- for (let { channel, id, at, sender, body } of messages) {
- this.inChannel(channel).push({ id, at, sender, body, });
- }
- for (let channel in this.channels) {
- this.channels[channel].sort((a, b) => a.at - b.at);
- }
- return this;
- }
-
-
- deleteMessage(message) {
- for (let channel in this.channels) {
- this.updateChannel(channel, (messages) => messages.filter((msg) => msg.id != message));
- }
- return this;
- }
-
- deleteChannel(id) {
- delete this.channels[id];
- return this;
- }
-
- updateChannel(channel, callback) {
- let messages = callback(this.inChannel(channel));
- messages.sort((a, b) => a.at - b.at);
- this.channels[channel] = messages;
- }
-}