1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { ComponentType } from 'react';
-
- import { IState } from '../../app/types';
- import { IStateful } from '../app/types';
- // eslint-disable-next-line lines-around-comment
- // @ts-ignore
- import { ColorSchemeRegistry } from '../color-scheme';
- import { toState } from '../redux/functions';
-
- /**
- * Checks if any {@code Dialog} is currently open.
- *
- * @param {IStateful} stateful - The redux store, the redux
- * {@code getState} function, or the redux state itself.
- * @returns {boolean}
- */
- export function isAnyDialogOpen(stateful: IStateful) {
- return Boolean(toState(stateful)['features/base/dialog'].component);
- }
-
- /**
- * Checks if a {@code Dialog} with a specific {@code component} is currently
- * open.
- *
- * @param {IStateful} stateful - The redux store, the redux
- * {@code getState} function, or the redux state itself.
- * @param {React.Component} component - The {@code component} of a
- * {@code Dialog} to be checked.
- * @returns {boolean}
- */
- export function isDialogOpen(stateful: IStateful, component: ComponentType) {
- return toState(stateful)['features/base/dialog'].component === component;
- }
-
- /**
- * Maps part of the Redux state to the props of any Dialog based component.
- *
- * @param {IState} state - The Redux state.
- * @returns {{
- * _dialogStyles: StyleType
- * }}
- */
- export function _abstractMapStateToProps(state: IState) {
- return {
- _dialogStyles: ColorSchemeRegistry.get(state, 'Dialog')
- };
- }
|