1234567891011121314151617181920212223242526272829303132333435363738394041 |
-
- import {
- setPrejoinPageVisibility,
- setSkipPrejoinOnReload
- } from '../../prejoin';
- import { JitsiConferenceErrors } from '../lib-jitsi-meet';
- import { MiddlewareRegistry } from '../redux';
-
- import { CONFERENCE_FAILED, CONFERENCE_JOINED, CONFERENCE_JOIN_IN_PROGRESS } from './actionTypes';
- import './middleware.any';
-
- MiddlewareRegistry.register(store => next => action => {
- const { dispatch, getState } = store;
- const { enableForcedReload } = getState()['features/base/config'];
-
- switch (action.type) {
- case CONFERENCE_JOIN_IN_PROGRESS: {
- dispatch(setPrejoinPageVisibility(false));
-
- break;
- }
- case CONFERENCE_JOINED: {
- if (enableForcedReload) {
- dispatch(setSkipPrejoinOnReload(false));
- }
-
- break;
- }
- case CONFERENCE_FAILED: {
- const errorName = action.error?.name;
-
- if (enableForcedReload && errorName === JitsiConferenceErrors.CONFERENCE_RESTARTED) {
- dispatch(setSkipPrejoinOnReload(true));
- }
-
- break;
- }
- }
-
- return next(action);
- });
|