Files

26 lines
808 B
TypeScript

import { NativeStackNavigationProp } from '@react-navigation/native-stack';
import { settingsStore } from '../stores/Stores';
const protectedNavigation = async (
navigation: NativeStackNavigationProp<any, any>,
route: string,
disactivatePOS?: boolean,
routeParams?: any
) => {
const { posStatus, settings, setPosStatus } = settingsStore;
const loginRequired = settings && (settings.passphrase || settings.pin);
const posEnabled = posStatus === 'active';
if (posEnabled && loginRequired) {
navigation.navigate('Lockscreen', {
pendingNavigation: { screen: route, params: routeParams }
});
} else {
if (disactivatePOS) setPosStatus('inactive');
navigation.navigate(route, routeParams);
}
};
export { protectedNavigation };