123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- // @flow
-
- import { equals, ReducerRegistry } from '../redux';
-
- import { SET_JWT } from './actionTypes';
-
- /**
- * The default/initial redux state of the feature jwt.
- *
- * @private
- * @type {{
- * isGuest: boolean
- * }}
- */
- const DEFAULT_STATE = {
- /**
- * The indicator which determines whether the local participant is a guest
- * in the conference.
- *
- * @type {boolean}
- */
- isGuest: true
- };
-
- /**
- * Reduces redux actions which affect the JSON Web Token (JWT) stored in the
- * redux store.
- *
- * @param {Object} state - The current redux state.
- * @param {Object} action - The redux action to reduce.
- * @returns {Object} The next redux state which is the result of reducing the
- * specified {@code action}.
- */
- ReducerRegistry.register(
- 'features/base/jwt',
- (state = DEFAULT_STATE, action) => {
- switch (action.type) {
- case SET_JWT: {
- // eslint-disable-next-line no-unused-vars
- const { type, ...payload } = action;
- const nextState = {
- ...DEFAULT_STATE,
- ...payload
- };
-
- return equals(state, nextState) ? state : nextState;
- }
- }
-
- return state;
- });
|