hardlounge/client/js/socket-events/join.ts
Max Leiter dd05ee3a65
TypeScript and Vue 3 (#4559)
Co-authored-by: Eric Nemchik <eric@nemchik.com>
Co-authored-by: Pavel Djundik <xPaw@users.noreply.github.com>
2022-06-18 17:25:21 -07:00

30 lines
687 B
TypeScript

import socket from "../socket";
import {store} from "../store";
import {switchToChannel} from "../router";
socket.on("join", function (data) {
store.getters.initChannel(data.chan);
const network = store.getters.findNetwork(data.network);
if (!network) {
return;
}
network.channels.splice(data.index || -1, 0, data.chan);
// Queries do not automatically focus, unless the user did a whois
if (data.chan.type === "query" && !data.shouldOpen) {
return;
}
const chan = store.getters.findChannel(data.chan.id);
if (chan) {
switchToChannel(chan.channel);
} else {
// eslint-disable-next-line no-console
console.error("Could not find channel", data.chan.id);
}
});