thelounge/server/plugins/inputs/quit.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

32 lines
632 B
TypeScript

import _ from "lodash";
import {PluginInputHandler} from "./index";
import ClientCertificate from "../clientCertificate";
const commands = ["quit"];
const allowDisconnected = true;
const input: PluginInputHandler = function (network, chan, cmd, args) {
const client = this;
client.networks = _.without(client.networks, network);
network.destroy();
client.save();
client.emit("quit", {
network: network.uuid,
});
const quitMessage = args[0] ? args.join(" ") : undefined;
network.quit(quitMessage);
ClientCertificate.remove(network.uuid);
return true;
};
export default {
commands,
input,
allowDisconnected,
};