Add IRC connection status indicator

This commit is contained in:
Ken-Håvard Lieng 2016-01-13 18:53:54 +01:00
parent 83aef5df7b
commit f429a528ba
11 changed files with 124 additions and 38 deletions

View file

@ -1,10 +1,12 @@
import { Map, Record } from 'immutable';
import createReducer from '../util/createReducer';
import * as actions from '../actions';
import forEach from 'lodash/collection/forEach';
const Server = Record({
nick: null,
name: null
name: null,
connected: false
});
export default createReducer(Map(), {
@ -42,5 +44,13 @@ export default createReducer(Map(), {
s.set(server.address, new Server(server));
});
});
},
[actions.SOCKET_CONNECTION_UPDATE](state, action) {
return state.withMutations(s => forEach(action, (connected, server) => {
if (s.has(server)) {
s.setIn([server, 'connected'], connected);
}
}));
}
});