| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 | 
							- import { ReducerRegistry } from '../redux';
 - 
 - import {
 -     LIB_DISPOSED,
 -     LIB_INIT_ERROR,
 -     LIB_INITIALIZED,
 -     SET_CONFIG
 - } from './actionTypes';
 - 
 - /**
 -  * Initial state of 'features/base/lib-jitsi-meet'.
 -  *
 -  * @type {{
 -  *      initializationError: null,
 -  *      initialized: boolean
 -  * }}
 -  */
 - const INITIAL_STATE = {
 -     config: {
 -         // FIXME The support for audio levels in lib-jitsi-meet polls the
 -         // statistics of WebRTC at a short interval multiple times a second.
 -         // Unfortunately, React Native is slow to fetch these statistics from
 -         // the native WebRTC API, through the React Native bridge and eventually
 -         // to JavaScript. Because the audio levels are of no interest to the
 -         // mobile app, it is fastest to merely disable them.
 -         disableAudioLevels: true,
 - 
 -         // FIXME Lib-jitsi-meet uses HTML script elements to asynchronously load
 -         // certain pieces of JavaScript. Unfortunately, the technique doesn't
 -         // work on React Native (because there are no HTML elements in the first
 -         // place). Fortunately, these pieces of JavaScript currently involve
 -         // third parties and we can temporarily disable them (until we implement
 -         // an alternative to async script elements on React Native).
 -         disableThirdPartyRequests: true
 -     },
 -     initializationError: null,
 -     initialized: false
 - };
 - 
 - ReducerRegistry.register(
 -     'features/base/lib-jitsi-meet',
 -     (state = INITIAL_STATE, action) => {
 -         switch (action.type) {
 -         case LIB_DISPOSED:
 -             return INITIAL_STATE;
 - 
 -         case LIB_INIT_ERROR:
 -             return {
 -                 ...state,
 -                 initializationError: action.lib.error,
 -                 initialized: false
 -             };
 - 
 -         case LIB_INITIALIZED:
 -             return {
 -                 ...state,
 -                 initializationError: null,
 -                 initialized: true
 -             };
 - 
 -         case SET_CONFIG:
 -             return _setConfig(state, action);
 - 
 -         default:
 -             return state;
 -         }
 -     });
 - 
 - /**
 -  * Reduces a specific Redux action SET_CONFIG of the feature
 -  * base/lib-jitsi-meet.
 -  *
 -  * @param {Object} state - The Redux state of the feature base/lib-jitsi-meet.
 -  * @param {Action} action - The Redux action SET_CONFIG to reduce.
 -  * @private
 -  * @returns {Object} The new state of the feature base/lib-jitsi-meet after the
 -  * reduction of the specified action.
 -  */
 - function _setConfig(state, action) {
 -     return {
 -         ...state,
 -         config: {
 -             // The final config is the result of augmenting the default config
 -             // with whatever the deployment has chosen to override/overwrite.
 -             ...INITIAL_STATE.config,
 -             ...action.config
 -         }
 -     };
 - }
 
 
  |