123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- // @flow
-
- import { TOOLBAR_BUTTONS } from './constants';
-
- export * from './functions.any';
-
- /**
- * Removes all analytics related options from the given configuration, in case of a libre build.
- *
- * @param {*} config - The configuration which needs to be cleaned up.
- * @returns {void}
- */
- export function _cleanupConfig(config: Object) { // eslint-disable-line no-unused-vars
- }
-
- /**
- * Returns the dial out url.
- *
- * @param {Object} state - The state of the app.
- * @returns {string}
- */
- export function getDialOutStatusUrl(state: Object): string {
- return state['features/base/config'].guestDialOutStatusUrl;
- }
-
- /**
- * Returns the dial out status url.
- *
- * @param {Object} state - The state of the app.
- * @returns {string}
- */
- export function getDialOutUrl(state: Object): string {
- return state['features/base/config'].guestDialOutUrl;
- }
-
- /**
- * Returns the replaceParticipant config.
- *
- * @param {Object} state - The state of the app.
- * @returns {boolean}
- */
- export function getReplaceParticipant(state: Object): string {
- return state['features/base/config'].replaceParticipant;
- }
-
- /**
- * Returns the list of enabled toolbar buttons.
- *
- * @param {Object} state - The redux state.
- * @returns {Array<string>} - The list of enabled toolbar buttons.
- */
- export function getToolbarButtons(state: Object): Array<string> {
- const { toolbarButtons } = state['features/base/config'];
-
- return Array.isArray(toolbarButtons) ? toolbarButtons : TOOLBAR_BUTTONS;
- }
-
- /**
- * Checks if the specified button is enabled.
- *
- * @param {string} buttonName - The name of the button.
- * {@link interfaceConfig}.
- * @param {Object|Array<string>} state - The redux state or the array with the enabled buttons.
- * @returns {boolean} - True if the button is enabled and false otherwise.
- */
- export function isToolbarButtonEnabled(buttonName: string, state: Object | Array<string>) {
- const buttons = Array.isArray(state) ? state : getToolbarButtons(state);
-
- return buttons.includes(buttonName);
- }
-
- /**
- * Returns whether audio level measurement is enabled or not.
- *
- * @param {Object} state - The state of the app.
- * @returns {boolean}
- */
- export function areAudioLevelsEnabled(state: Object): boolean {
- // Default to false for React Native as audio levels are of no interest to the mobile app.
- return navigator.product !== 'ReactNative' && !state['features/base/config'].disableAudioLevels;
- }
|