summaryrefslogtreecommitdiff
path: root/ui/lib/store.js
diff options
context:
space:
mode:
Diffstat (limited to 'ui/lib/store.js')
-rw-r--r--ui/lib/store.js77
1 files changed, 0 insertions, 77 deletions
diff --git a/ui/lib/store.js b/ui/lib/store.js
deleted file mode 100644
index 57b5cce..0000000
--- a/ui/lib/store.js
+++ /dev/null
@@ -1,77 +0,0 @@
-import { writable } from 'svelte/store';
-import { browser } from '$app/environment';
-import { Channels, ChannelsMeta } from '$lib/store/channels.svelte.js';
-import { Messages } from '$lib/store/messages.svelte.js';
-import { Logins } from '$lib/store/logins';
-import { STORE_KEY_CHANNELS_DATA } from '$lib/constants';
-
-// Get channelsList content from the local storage
-const channelsMetaData =
- (browser && JSON.parse(localStorage.getItem(STORE_KEY_CHANNELS_DATA))) || {};
-
-export const currentUser = writable(null);
-export const logins = writable(new Logins());
-export const channelsMetaList = writable(new ChannelsMeta({ channelsMetaData }));
-export const channelsList = writable(new Channels({ channelsMetaList }));
-export const messages = writable(new Messages());
-
-export function onEvent(event) {
- switch (event.type) {
- case 'login':
- onLoginEvent(event);
- break;
- case 'channel':
- onChannelEvent(event);
- break;
- case 'message':
- onMessageEvent(event);
- break;
- }
-}
-
-onEvent.fromJson = (event) => {
- const parsed = JSON.parse(event);
- return onEvent(parsed);
-};
-
-onEvent.fromMessage = (message) => {
- const data = message.data;
- return onEvent.fromJson(data);
-};
-
-function onLoginEvent(event) {
- switch (event.event) {
- case 'created':
- logins.update((value) => value.addLogin(event.id, event.name));
- break;
- }
-}
-
-function onChannelEvent(event) {
- switch (event.event) {
- case 'created':
- channelsList.update((value) => value.addChannel(event.id, event.name));
- break;
- case 'deleted':
- channelsList.update((value) => value.deleteChannel(event.id));
- messages.update((value) => value.deleteChannel(event.id));
- break;
- }
-}
-
-function onMessageEvent(event) {
- switch (event.event) {
- case 'sent':
- messages.update((value) =>
- value.addMessage(event.channel, event.id, {
- at: event.at,
- sender: event.sender,
- body: event.body
- })
- );
- break;
- case 'deleted':
- messages.update((value) => value.deleteMessage(event.id));
- break;
- }
-}