mirror of
https://github.com/thelounge/thelounge
synced 2024-11-29 07:20:25 +00:00
30 lines
780 B
TypeScript
30 lines
780 B
TypeScript
import socket from "../socket";
|
|
import {store} from "../store";
|
|
import {switchToChannel} from "../router";
|
|
import {ClientChan} from "../types";
|
|
import {toClientChan} from "../chan";
|
|
|
|
socket.on("join", function (data) {
|
|
const network = store.getters.findNetwork(data.network);
|
|
|
|
if (!network) {
|
|
return;
|
|
}
|
|
|
|
const clientChan: ClientChan = toClientChan(data.chan);
|
|
network.channels.splice(data.index || -1, 0, clientChan);
|
|
|
|
// 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);
|
|
}
|
|
});
|