Files
nearle_console/src/App.js
2026-05-13 17:48:36 +05:30

65 lines
1.6 KiB
JavaScript

// project import
import Routes from 'routes';
import ThemeCustomization from 'themes';
import Locales from 'components/Locales';
// import RTLLayout from 'components/RTLLayout';
import ScrollTop from 'components/ScrollTop';
import Snackbar from 'components/@extended/Snackbar';
import Notistack from 'components/third-party/Notistack';
import { useNavigate } from 'react-router';
import { useEffect } from 'react';
import { generateToken, initFirebaseNotificationListener } from 'firebase_notification/notification';
import InternetStatus from 'components/updateNetworkStatus';
// auth-provider
// import { JWTProvider as AuthProvider } from 'contexts/JWTContext';
// ==============================|| APP - THEME, ROUTER, LOCAL ||============================== //
const App = () => {
const navigate = useNavigate();
useEffect(() => {
if (!localStorage.getItem('authname')) {
navigate('/login');
}
}, [navigate]);
const AppContent = () => {
useEffect(() => {
generateToken();
initFirebaseNotificationListener();
}, []);
return (
<>
<Routes />
<Snackbar />
</>
);
};
return (
<>
<ThemeCustomization>
<InternetStatus />
{/* <RTLLayout> */}
<Locales>
<ScrollTop>
{/* <AuthProvider> */}
<>
<Notistack>
{/* <Routes />
<Snackbar /> */}
<AppContent />
</Notistack>
</>
{/* </AuthProvider> */}
</ScrollTop>
</Locales>
{/* </RTLLayout> */}
</ThemeCustomization>
</>
);
};
export default App;