mirror of
https://codeberg.org/emersion/gamja
synced 2025-03-15 00:47:46 +01:00
Handle QUIT messages
This commit is contained in:
parent
8d2632ad9c
commit
44b1f28cb6
@ -206,7 +206,7 @@ export default class App extends Component {
|
||||
}
|
||||
}
|
||||
|
||||
if (msg.prefix.name != this.client.nick && msg.command != "PART") {
|
||||
if (msg.prefix.name != this.client.nick && (msg.command != "PART" && msg.comand != "QUIT")) {
|
||||
this.createBuffer(bufName);
|
||||
}
|
||||
|
||||
@ -342,6 +342,23 @@ export default class App extends Component {
|
||||
});
|
||||
this.addMessage(channel, msg);
|
||||
break;
|
||||
case "QUIT":
|
||||
var affectedBuffers = [];
|
||||
this.setState((state) => {
|
||||
var buffers = new Map(state.buffers);
|
||||
state.buffers.forEach((buf) => {
|
||||
if (!buf.members.has(msg.prefix.name) && buf.name != msg.prefix.name) {
|
||||
return;
|
||||
}
|
||||
var members = new Map(buf.members);
|
||||
members.delete(msg.prefix.name);
|
||||
buffers.set(buf.name, { ...buf, members });
|
||||
affectedBuffers.push(buf.name);
|
||||
});
|
||||
return { buffers };
|
||||
});
|
||||
affectedBuffers.forEach((name) => this.addMessage(name, msg));
|
||||
break;
|
||||
case "NICK":
|
||||
var newNick = msg.params[0];
|
||||
|
||||
|
@ -71,6 +71,11 @@ function LogLine(props) {
|
||||
${createNick(msg.prefix.name)} has left
|
||||
`;
|
||||
break;
|
||||
case "QUIT":
|
||||
content = html`
|
||||
${createNick(msg.prefix.name)} has quit
|
||||
`;
|
||||
break;
|
||||
case "NICK":
|
||||
var newNick = msg.params[0];
|
||||
content = html`
|
||||
|
Loading…
x
Reference in New Issue
Block a user