29 lines
830 B
JavaScript
29 lines
830 B
JavaScript
// @flow
|
|
|
|
import { toState } from '../base/redux';
|
|
|
|
declare var interfaceConfig: Object;
|
|
|
|
/**
|
|
* Tells whether or not the notifications are enabled and if there are any
|
|
* notifications to be displayed based on the current Redux state.
|
|
*
|
|
* @param {Object|Function} stateful - The redux store state.
|
|
* @returns {boolean}
|
|
*/
|
|
export function areThereNotifications(stateful: Object | Function) {
|
|
const state = toState(stateful);
|
|
const { enabled, notifications } = state['features/notifications'];
|
|
|
|
return enabled && notifications.length > 0;
|
|
}
|
|
|
|
/**
|
|
* Tells wether join/leave notifications are enabled in interface_config.
|
|
*
|
|
* @returns {boolean}
|
|
*/
|
|
export function joinLeaveNotificationsDisabled() {
|
|
return Boolean(typeof interfaceConfig !== 'undefined' && interfaceConfig?.DISABLE_JOIN_LEAVE_NOTIFICATIONS);
|
|
}
|