You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

middleware.web.js 1015B

123456789101112131415161718192021222324252627282930313233
  1. // @flow
  2. import { setPrejoinPageVisibility, setSkipPrejoinOnReload } from '../../prejoin';
  3. import { PREJOIN_SCREEN_STATES } from '../../prejoin/constants';
  4. import { JitsiConferenceErrors } from '../lib-jitsi-meet';
  5. import { MiddlewareRegistry } from '../redux';
  6. import { CONFERENCE_FAILED, CONFERENCE_JOINED } from './actionTypes';
  7. import './middleware.any';
  8. MiddlewareRegistry.register(({ dispatch, getState }) => next => action => {
  9. const { enableForcedReload } = getState()['features/base/config'];
  10. switch (action.type) {
  11. case CONFERENCE_JOINED: {
  12. if (enableForcedReload) {
  13. dispatch(setPrejoinPageVisibility(PREJOIN_SCREEN_STATES.HIDDEN));
  14. dispatch(setSkipPrejoinOnReload(false));
  15. }
  16. break;
  17. }
  18. case CONFERENCE_FAILED: {
  19. enableForcedReload
  20. && action.error?.name === JitsiConferenceErrors.CONFERENCE_RESTARTED
  21. && dispatch(setSkipPrejoinOnReload(true));
  22. break;
  23. }
  24. }
  25. return next(action);
  26. });