Handle QUIT messages
This commit is contained in:
parent
8d2632ad9c
commit
44b1f28cb6
2 changed files with 23 additions and 1 deletions
|
@ -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);
|
this.createBuffer(bufName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -342,6 +342,23 @@ export default class App extends Component {
|
||||||
});
|
});
|
||||||
this.addMessage(channel, msg);
|
this.addMessage(channel, msg);
|
||||||
break;
|
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":
|
case "NICK":
|
||||||
var newNick = msg.params[0];
|
var newNick = msg.params[0];
|
||||||
|
|
||||||
|
|
|
@ -71,6 +71,11 @@ function LogLine(props) {
|
||||||
${createNick(msg.prefix.name)} has left
|
${createNick(msg.prefix.name)} has left
|
||||||
`;
|
`;
|
||||||
break;
|
break;
|
||||||
|
case "QUIT":
|
||||||
|
content = html`
|
||||||
|
${createNick(msg.prefix.name)} has quit
|
||||||
|
`;
|
||||||
|
break;
|
||||||
case "NICK":
|
case "NICK":
|
||||||
var newNick = msg.params[0];
|
var newNick = msg.params[0];
|
||||||
content = html`
|
content = html`
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue