import { CONFERENCE_JOINED, CONFERENCE_LEFT } from '../conference'; import { MiddlewareRegistry } from '../redux'; import { localParticipantIdChanged } from './actions'; import { LOCAL_PARTICIPANT_DEFAULT_ID } from './constants'; /** * Middleware that captures CONFERENCE_JOINED and CONFERENCE_LEFT actions and * updates respectively ID of local participant. * * @param {Store} store - Redux store. * @returns {Function} */ MiddlewareRegistry.register(store => next => action => { switch (action.type) { case CONFERENCE_JOINED: store.dispatch(localParticipantIdChanged(action.conference.myUserId())); break; case CONFERENCE_LEFT: store.dispatch(localParticipantIdChanged(LOCAL_PARTICIPANT_DEFAULT_ID)); break; } return next(action); });