UNPKG

cspace-ui

Version:
94 lines (91 loc) 3.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireWildcard(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _reactIntl = require("react-intl"); var _reactRedux = require("react-redux"); var _reactRouter = require("react-router"); var _reactRouterDom = require("react-router-dom"); var _ConfigProvider = _interopRequireDefault(require("./config/ConfigProvider")); var _RootPage = _interopRequireDefault(require("./pages/RootPage")); var _withClassName = _interopRequireDefault(require("../enhancers/withClassName")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } const propTypes = { store: _propTypes.default.shape({ subscribe: _propTypes.default.func.isRequired, dispatch: _propTypes.default.func.isRequired, getState: _propTypes.default.func.isRequired }).isRequired, config: _propTypes.default.shape({ basename: _propTypes.default.string, className: _propTypes.default.string, index: _propTypes.default.string, locale: _propTypes.default.string, messages: _propTypes.default.object, prettyUrls: _propTypes.default.bool }).isRequired, router: _propTypes.default.func, openModal: _propTypes.default.func }; class App extends _react.Component { constructor() { super(); this.showConfirmNavigationModal = this.showConfirmNavigationModal.bind(this); } showConfirmNavigationModal(message, callback) { const { openModal } = this.props; if (openModal) { openModal(message, callback); } } render() { const { config, store, router } = this.props; const { basename, className, index, locale, messages, prettyUrls } = config; // Allow a router to be supplied as a prop. This is used for tests. let Router = router; if (!Router) { Router = prettyUrls ? _reactRouterDom.BrowserRouter : _reactRouterDom.HashRouter; } return /*#__PURE__*/_react.default.createElement(_reactIntl.IntlProvider, { locale: locale, defaultLocale: "en-US", messages: messages }, /*#__PURE__*/_react.default.createElement(_reactRedux.Provider, { store: store }, /*#__PURE__*/_react.default.createElement(_ConfigProvider.default, { config: config }, /*#__PURE__*/_react.default.createElement(Router, { basename: basename, getUserConfirmation: this.showConfirmNavigationModal }, /*#__PURE__*/_react.default.createElement(_reactRouter.Switch, null, /*#__PURE__*/_react.default.createElement(_reactRouter.Redirect, { exact: true, path: "/", to: index }), /*#__PURE__*/_react.default.createElement(_reactRouter.Redirect, { exact: true, path: "/login", to: "/welcome" }), /*#__PURE__*/_react.default.createElement(_reactRouter.Route, { component: (0, _withClassName.default)(_RootPage.default, className) })))))); } } exports.default = App; App.propTypes = propTypes;