2021-01-25 21:55:46 +00:00
|
|
|
import React from "react";
|
|
|
|
import { Provider } from "react-redux";
|
|
|
|
import Shell from "./Shell";
|
|
|
|
import store from "./store/store";
|
|
|
|
|
|
|
|
import "./custom.scss";
|
|
|
|
|
|
|
|
const App = () => (
|
|
|
|
<Provider store={store}>
|
|
|
|
<Shell />
|
|
|
|
</Provider>
|
|
|
|
);
|
|
|
|
|
|
|
|
export default App;
|
|
|
|
|
|
|
|
// import React, { Suspense, lazy } from "react";
|
|
|
|
// import { Router, Route, Switch } from "react-router-dom";
|
|
|
|
// import { connect } from "react-redux";
|
2021-01-29 13:39:00 +00:00
|
|
|
// import {
|
|
|
|
// store as CommonStore,
|
|
|
|
// history,
|
|
|
|
// PrivateRoute,
|
|
|
|
// PublicRoute,
|
|
|
|
// Login,
|
|
|
|
// Error404,
|
|
|
|
// Offline,
|
|
|
|
// ComingSoon,
|
|
|
|
// NavMenu,
|
|
|
|
// Main,
|
|
|
|
// utils,
|
|
|
|
// toastr,
|
|
|
|
// Layout,
|
|
|
|
// ScrollToTop,
|
|
|
|
// } from "asc-web-common";
|
2021-01-25 21:55:46 +00:00
|
|
|
// import Home from "./components/pages/Home";
|
|
|
|
|
|
|
|
// const About = lazy(() => import("./components/pages/About"));
|
|
|
|
// const Confirm = lazy(() => import("./components/pages/Confirm"));
|
|
|
|
// const Settings = lazy(() => import("./components/pages/Settings"));
|
|
|
|
// const Wizard = lazy(() => import("./components/pages/Wizard"));
|
|
|
|
// const Payments = lazy(() => import("./components/pages/Payments"));
|
|
|
|
// const ThirdPartyResponse = lazy(() => import("./components/pages/ThirdParty"));
|
|
|
|
// const {
|
|
|
|
// setIsLoaded,
|
|
|
|
// getUser,
|
|
|
|
// getPortalSettings,
|
|
|
|
// getModules,
|
|
|
|
// getIsAuthenticated,
|
|
|
|
// } = CommonStore.auth.actions;
|
|
|
|
|
|
|
|
// class App extends React.Component {
|
|
|
|
// constructor(props) {
|
|
|
|
// super(props);
|
|
|
|
|
|
|
|
// const pathname = window.location.pathname.toLowerCase();
|
|
|
|
// this.isThirdPartyResponse = pathname.indexOf("thirdparty") !== -1;
|
|
|
|
// }
|
|
|
|
// componentDidMount() {
|
|
|
|
// const {
|
|
|
|
// getPortalSettings,
|
|
|
|
// getUser,
|
|
|
|
// getModules,
|
|
|
|
// setIsLoaded,
|
|
|
|
// getIsAuthenticated,
|
|
|
|
// } = this.props;
|
|
|
|
|
|
|
|
// getIsAuthenticated()
|
|
|
|
// .then((isAuthenticated) => {
|
|
|
|
// if (isAuthenticated) utils.updateTempContent(isAuthenticated);
|
|
|
|
|
|
|
|
// if (this.isThirdPartyResponse) {
|
|
|
|
// setIsLoaded();
|
|
|
|
// return;
|
|
|
|
// }
|
|
|
|
|
2021-01-29 13:39:00 +00:00
|
|
|
// const requests = [];
|
2021-01-25 21:55:46 +00:00
|
|
|
// if (!isAuthenticated) {
|
2021-01-29 13:39:00 +00:00
|
|
|
// requests.push(getPortalSettings());
|
2021-01-25 21:55:46 +00:00
|
|
|
// } else if (
|
|
|
|
// !window.location.pathname.includes("confirm/EmailActivation")
|
|
|
|
// ) {
|
2021-01-29 13:39:00 +00:00
|
|
|
// requests.push(getUser());
|
|
|
|
// requests.push(getPortalSettings());
|
|
|
|
// requests.push(getModules());
|
|
|
|
// }
|
2021-01-25 21:55:46 +00:00
|
|
|
|
2021-01-29 13:39:00 +00:00
|
|
|
// Promise.all(requests)
|
|
|
|
// .catch((e) => {
|
|
|
|
// toastr.error(e);
|
|
|
|
// })
|
|
|
|
// .finally(() => {
|
2021-01-25 21:55:46 +00:00
|
|
|
// utils.updateTempContent();
|
2021-01-29 13:39:00 +00:00
|
|
|
// setIsLoaded();
|
|
|
|
// });
|
2021-01-25 21:55:46 +00:00
|
|
|
// })
|
|
|
|
// .catch((err) => toastr.error(err));
|
|
|
|
// }
|
|
|
|
|
|
|
|
// render() {
|
|
|
|
// return navigator.onLine ? (
|
2021-01-29 13:39:00 +00:00
|
|
|
// <Layout>
|
|
|
|
// <Router history={history}>
|
|
|
|
// <ScrollToTop />
|
|
|
|
// {!this.isThirdPartyResponse && <NavMenu />}
|
|
|
|
// <Main>
|
|
|
|
// <Suspense fallback={null}>
|
|
|
|
// <Switch>
|
|
|
|
// <Route exact path="/wizard" component={Wizard} />
|
|
|
|
// <PublicRoute
|
|
|
|
// exact
|
|
|
|
// path={[
|
|
|
|
// "/login",
|
|
|
|
// "/login/error=:error",
|
|
|
|
// "/login/confirmed-email=:confirmedEmail",
|
|
|
|
// ]}
|
|
|
|
// component={Login}
|
|
|
|
// />
|
|
|
|
// <Route path="/confirm" component={Confirm} />
|
|
|
|
// <PrivateRoute
|
|
|
|
// path={`/thirdparty/:provider`}
|
|
|
|
// component={ThirdPartyResponse}
|
|
|
|
// />
|
|
|
|
// <PrivateRoute
|
|
|
|
// exact
|
|
|
|
// path={["/", "/error=:error"]}
|
|
|
|
// component={Home}
|
|
|
|
// />
|
|
|
|
// <PrivateRoute exact path="/about" component={About} />
|
|
|
|
// <PrivateRoute
|
|
|
|
// restricted
|
|
|
|
// path="/settings"
|
|
|
|
// component={Settings}
|
|
|
|
// />
|
|
|
|
// <PrivateRoute
|
|
|
|
// exact
|
|
|
|
// path={["/coming-soon"]}
|
|
|
|
// component={ComingSoon}
|
|
|
|
// />
|
|
|
|
// <PrivateRoute path="/payments" component={Payments} />
|
|
|
|
// <PrivateRoute component={Error404} />
|
|
|
|
// </Switch>
|
|
|
|
// </Suspense>
|
|
|
|
// </Main>
|
|
|
|
// </Router>
|
|
|
|
// </Layout>
|
2021-01-25 21:55:46 +00:00
|
|
|
// ) : (
|
|
|
|
// <Offline />
|
|
|
|
// );
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
// const mapStateToProps = (state) => {
|
|
|
|
// const { modules, isLoaded, settings } = state.auth;
|
|
|
|
// const { organizationName } = settings;
|
|
|
|
// return {
|
|
|
|
// modules,
|
|
|
|
// isLoaded,
|
|
|
|
// organizationName,
|
|
|
|
// };
|
|
|
|
// };
|
|
|
|
|
|
|
|
// const mapDispatchToProps = (dispatch) => {
|
|
|
|
// return {
|
|
|
|
// getIsAuthenticated: () => getIsAuthenticated(dispatch),
|
|
|
|
// getPortalSettings: () => getPortalSettings(dispatch),
|
|
|
|
// getUser: () => getUser(dispatch),
|
|
|
|
// getModules: () => getModules(dispatch),
|
|
|
|
// setIsLoaded: () => dispatch(setIsLoaded(true)),
|
|
|
|
// };
|
|
|
|
// };
|
|
|
|
|
|
|
|
// export default connect(mapStateToProps, mapDispatchToProps)(App);
|