mirror of
https://gitcode.com/GitHub_Trending/ji/jitsi-meet.git
synced 2025-12-30 11:22:31 +00:00
39 lines
860 B
TypeScript
39 lines
860 B
TypeScript
import { AppStateStatus } from 'react-native';
|
|
|
|
import ReducerRegistry from '../../base/redux/ReducerRegistry';
|
|
|
|
import {
|
|
APP_STATE_CHANGED,
|
|
_SET_APP_STATE_LISTENER
|
|
} from './actionTypes';
|
|
|
|
export interface IBackgroundState {
|
|
appState: string;
|
|
appStateListener?: (state: AppStateStatus) => void;
|
|
}
|
|
|
|
/**
|
|
* The default/initial redux state of the feature background.
|
|
*/
|
|
const DEFAULT_STATE = {
|
|
appState: 'active'
|
|
};
|
|
|
|
ReducerRegistry.register<IBackgroundState>('features/background', (state = DEFAULT_STATE, action): IBackgroundState => {
|
|
switch (action.type) {
|
|
case _SET_APP_STATE_LISTENER:
|
|
return {
|
|
...state,
|
|
appStateListener: action.listener
|
|
};
|
|
|
|
case APP_STATE_CHANGED:
|
|
return {
|
|
...state,
|
|
appState: action.appState
|
|
};
|
|
}
|
|
|
|
return state;
|
|
});
|