-/**\r
- * ============LICENSE_START========================================================================\r
- * ONAP : ccsdk feature sdnr wt odlux\r
- * =================================================================================================\r
- * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.\r
- * =================================================================================================\r
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except\r
- * in compliance with the License. You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * Unless required by applicable law or agreed to in writing, software distributed under the License\r
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\r
- * or implied. See the License for the specific language governing permissions and limitations under\r
- * the License.\r
- * ============LICENSE_END==========================================================================\r
- */\r
-import * as React from 'react';\r
-import { HashRouter as Router, Route, Redirect, Switch } from 'react-router-dom';\r
-\r
-import { withStyles, WithStyles, createStyles, Theme } from '@material-ui/core/styles';\r
-import { faHome, faAddressBook, faSignInAlt, faCog } from '@fortawesome/free-solid-svg-icons';\r
-\r
-import { SnackbarProvider } from 'notistack';\r
-import { ConfirmProvider } from 'material-ui-confirm';\r
-\r
-import AppFrame from '../components/routing/appFrame';\r
-import TitleBar from '../components/titleBar';\r
-import Menu from '../components/navigationMenu';\r
-import ErrorDisplay from '../components/errorDisplay';\r
-import SnackDisplay from '../components/material-ui/snackDisplay';\r
-\r
-import Home from '../views/home';\r
-import Login from '../views/login';\r
-import About from '../views/about';\r
-import Test from '../views/test';\r
-import UserSettings from '../views/settings';\r
-\r
-import applicationService from '../services/applicationManager';\r
-\r
-\r
-const styles = (theme: Theme) => createStyles({\r
- root: {\r
- flexGrow: 1,\r
- height: '100%',\r
- zIndex: 1,\r
- overflow: 'hidden',\r
- position: 'relative',\r
- display: 'flex',\r
- },\r
- content: {\r
- flexGrow: 1,\r
- display: "flex",\r
- flexDirection: "column",\r
- backgroundColor: theme.palette.background.default,\r
- padding: theme.spacing(3),\r
- minWidth: 0, // So the Typography noWrap works\r
- },\r
- toolbar: theme.mixins.toolbar as any\r
-});\r
-\r
-\r
-\r
-type FrameProps = WithStyles<typeof styles>;\r
-\r
-class FrameComponent extends React.Component<FrameProps>{\r
-\r
- render() {\r
- const registrations = applicationService.applications;\r
- const { classes } = this.props;\r
- return (\r
- <ConfirmProvider>\r
- <SnackbarProvider maxSnack={3}>\r
- <Router>\r
- <div className={classes.root}>\r
- <SnackDisplay />\r
- <ErrorDisplay />\r
- <TitleBar />\r
- <Menu />\r
- <main className={classes.content}>\r
- {\r
- <div className={classes.toolbar} /> //needed for margins, don't remove!\r
- }\r
- <Switch>\r
- <Route exact path="/" component={() => (\r
- <AppFrame title={"Home"} icon={faHome} >\r
- <Home />\r
- </AppFrame>\r
- )} />\r
- <Route path="/about" component={() => (\r
- <AppFrame title={"About"} icon={faAddressBook} >\r
- <About />\r
- </AppFrame>\r
- )} />\r
- <Route path="/settings" component={() => (\r
- <AppFrame title={"Settings"} icon={faCog} >\r
- <UserSettings />\r
- </AppFrame>\r
- )} />\r
- {process.env.NODE_ENV === "development" ? <Route path="/test" component={() => (\r
- <AppFrame title={"Test"} icon={faAddressBook} >\r
- <Test />\r
- </AppFrame>\r
- )} /> : null}\r
- <Route path="/login" component={() => (\r
- <AppFrame title={"Login"} icon={faSignInAlt} >\r
- <Login />\r
- </AppFrame>\r
- )} />\r
- { Object.keys(registrations).map(p => {\r
- const application = registrations[p];\r
- return (<Route key={application.name} path={application.path || `/${application.name}`} component={() => (\r
- <AppFrame title={application.title || (typeof application.menuEntry === 'string' && application.menuEntry) || application.name} icon={application.icon} appId={application.name} >\r
- <application.rootComponent />\r
- </AppFrame>\r
- )} />)\r
- })}\r
- <Redirect to="/" />\r
- </Switch>\r
- </main>\r
- </div>\r
- </Router>\r
- </SnackbarProvider>\r
- </ConfirmProvider> \r
- );\r
- }\r
-}\r
-\r
-export const Frame = withStyles(styles)(FrameComponent);\r
-export default Frame;\r
+/**
+ * ============LICENSE_START========================================================================
+ * ONAP : ccsdk feature sdnr wt odlux
+ * =================================================================================================
+ * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
+ * =================================================================================================
+ * 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.
+ * ============LICENSE_END==========================================================================
+ */
+import * as React from 'react';
+import { HashRouter as Router, Route, Redirect, Switch } from 'react-router-dom';
+
+import { Theme } from '@mui/material/styles';
+import { WithStyles } from '@mui/styles';
+import withStyles from '@mui/styles/withStyles';
+import createStyles from '@mui/styles/createStyles';
+import { faHome, faAddressBook, faSignInAlt, faCog } from '@fortawesome/free-solid-svg-icons';
+
+import { SnackbarProvider } from 'notistack';
+import { ConfirmProvider } from 'material-ui-confirm';
+
+import AppFrame from '../components/routing/appFrame';
+import TitleBar from '../components/titleBar';
+import Menu from '../components/navigationMenu';
+import ErrorDisplay from '../components/errorDisplay';
+import SnackDisplay from '../components/material-ui/snackDisplay';
+
+import Home from '../views/home';
+import Login from '../views/login';
+import About from '../views/about';
+import Test from '../views/test';
+import UserSettings from '../views/settings';
+
+import applicationService from '../services/applicationManager';
+
+
+const styles = (theme: Theme) => createStyles({
+ root: {
+ flexGrow: 1,
+ height: '100%',
+ zIndex: 1,
+ overflow: 'hidden',
+ position: 'relative',
+ display: 'flex',
+ },
+ content: {
+ flexGrow: 1,
+ display: "flex",
+ flexDirection: "column",
+ backgroundColor: '#fafafa',
+ padding: theme.spacing(3),
+ minWidth: 0, // So the Typography noWrap works
+ },
+ toolbar: theme.mixins.toolbar as any
+});
+
+
+
+type FrameProps = WithStyles<typeof styles>;
+
+class FrameComponent extends React.Component<FrameProps>{
+
+ render() {
+ const registrations = applicationService.applications;
+ const { classes } = this.props;
+ return (
+ <ConfirmProvider>
+ <SnackbarProvider maxSnack={3}>
+ <Router>
+ <div className={classes.root}>
+ <SnackDisplay />
+ <ErrorDisplay />
+ <TitleBar />
+ <Menu />
+ <main className={classes.content}>
+ {
+ <div className={classes.toolbar} /> //needed for margins, don't remove!
+ }
+ <Switch>
+ <Route exact path="/" component={() => (
+ <AppFrame title={"Home"} icon={faHome} >
+ <Home />
+ </AppFrame>
+ )} />
+ <Route path="/about" component={() => (
+ <AppFrame title={"About"} icon={faAddressBook} >
+ <About />
+ </AppFrame>
+ )} />
+ <Route path="/settings" component={() => (
+ <AppFrame title={"Settings"} icon={faCog} >
+ <UserSettings />
+ </AppFrame>
+ )} />
+ {process.env.NODE_ENV === "development" ? <Route path="/test" component={() => (
+ <AppFrame title={"Test"} icon={faAddressBook} >
+ <Test />
+ </AppFrame>
+ )} /> : null}
+ <Route path="/login" component={() => (
+ <AppFrame title={"Login"} icon={faSignInAlt} >
+ <Login />
+ </AppFrame>
+ )} />
+ { Object.keys(registrations).map(p => {
+ const application = registrations[p];
+ return (<Route key={application.name} path={application.path || `/${application.name}`} component={() => (
+ <AppFrame title={application.title || (typeof application.menuEntry === 'string' && application.menuEntry) || application.name} icon={application.icon} appId={application.name} >
+ <application.rootComponent />
+ </AppFrame>
+ )} />)
+ })}
+ <Redirect to="/" />
+ </Switch>
+ </main>
+ </div>
+ </Router>
+ </SnackbarProvider>
+ </ConfirmProvider>
+ );
+ }
+}
+
+export const Frame = withStyles(styles)(FrameComponent);
+export default Frame;