Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | 1x 1x 1x 1x 1x 2x 1x | /* * Copyright (C) 2010 - 2025 VREM Software Development <VREMSoftwareDevelopment@gmail.com> * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http: //www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * Bandwidth Monitor */ import React from 'react'; import PropTypes from 'prop-types'; import { HashRouter } from 'react-router'; import { DateTime } from 'luxon'; import theme from './theme'; import { ThemeProvider, CssBaseline } from '@mui/material'; import { ErrorBoundary } from 'react-error-boundary'; import ErrorDisplay from './components/main/ErrorDisplay'; import Header from './components/main/Header'; import Footer from './components/main/Footer'; import Navigation from './components/navigation/Navigation'; import BWMonRoutes from './components/navigation/BWMonRoutes'; import menu from './menu/Menu'; import { createBrowserHistory } from 'history'; export const history = createBrowserHistory({ basename: import.meta.env.BASE_URL }); const appName = import.meta.env.VITE_DESCRIPTION || 'Bandwidth Monitor'; const appVersion = import.meta.env.VITE_VERSION; const appTime = DateTime.local().toLocaleString(DateTime.DATETIME_FULL_WITH_SECONDS); const App = ({ name = appName, version = appVersion, currentTime = appTime }) => { return ( <HashRouter> <ThemeProvider theme={theme}> <CssBaseline /> <Header name={name} version={version} /> <Navigation menu={menu} /> <ErrorBoundary onError={ErrorDisplay}> <BWMonRoutes menu={menu} /> <Footer currentTime={currentTime} /> </ErrorBoundary> </ThemeProvider> </HashRouter> ); }; App.propTypes = { name: PropTypes.string, version: PropTypes.string, currentTime: PropTypes.string }; export default App; |