react-openfin-mat-impl
Version:
Materialize UI implementation of react-openfin
56 lines • 4.39 kB
JavaScript
"use strict";
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const react_1 = require("react");
const react_openfin_1 = require("react-openfin");
const init_1 = require("react-openfin/init");
const react_router_dom_1 = require("react-router-dom");
const classnames_1 = require("classnames");
const Snackbar_1 = require("@material-ui/core/Snackbar");
const styles_1 = require("@material-ui/styles");
const components_1 = require("../../components");
const jss_1 = require("../../assets/jss");
const useStyles = styles_1.makeStyles(jss_1.dashboardLayoutStyle);
const DashbardLayout = (_a) => {
var { routes, sidebarBgUrl, menuItems, hideSwitchToLaunchbar, headerPrefixElements, headerSuffixElements } = _a, rest = __rest(_a, ["routes", "sidebarBgUrl", "menuItems", "hideSwitchToLaunchbar", "headerPrefixElements", "headerSuffixElements"]);
const classes = useStyles({});
const { state: { offline, drawerOpen, snackBarOpen, snackBarMsgInfo, windowsState, }, actions: { onDrawerToggle, onSnackBarClose, onSnackBarCloseBtnClick, onSnackBarExited, onLaunchBarToggle, onMinimize, onToggleWinState, onWinClose, onWinForceClose, } } = react_1.useContext(react_openfin_1.ApplicationContext);
const { config: { application: { theme } } } = react_1.useContext(react_openfin_1.ConfigContext);
return (React.createElement(React.Fragment, null,
React.createElement(components_1.Header, Object.assign({ routes: routes, windowsState: windowsState, handleDrawerToggle: onDrawerToggle, open: drawerOpen, color: 'primary', docked: false, onSwitchToLaunchBar: hideSwitchToLaunchbar ? null : onLaunchBarToggle, headerPrefixElements: headerPrefixElements, headerSuffixElements: headerSuffixElements, onMinimize: onMinimize, onMaximize: onToggleWinState, onClose: onWinClose }, rest)),
React.createElement("div", { className: classnames_1.default(classes.wrapper, classes.wrapperPrimary) },
React.createElement(components_1.Sidebar, Object.assign({ routes: routes, open: drawerOpen, menuItems: menuItems, color: "primary", image: sidebarBgUrl ? sidebarBgUrl : init_1.default.config.publicUrl + '/img/sidebar-1.jpg' }, rest)),
React.createElement("div", { className: classnames_1.default(classes.mainPanel, {
[classes.mainPanelShift]: !drawerOpen
}) },
React.createElement("div", { className: classes.container },
React.createElement("div", { className: classnames_1.default(classes.content, {
[classes.lightBoxShaddow]: theme === react_openfin_1.MuiTheme.LIGHT
}) },
React.createElement(react_router_dom_1.Switch, null, routes.map((prop, key) => {
if (prop.redirect)
return React.createElement(react_router_dom_1.Redirect, { from: prop.path, to: prop.to, key: key });
return React.createElement(react_router_dom_1.Route, { path: prop.path, component: prop.component, key: key });
})))))),
React.createElement(Snackbar_1.default, { key: snackBarMsgInfo.key, anchorOrigin: {
vertical: snackBarMsgInfo.vertical ? snackBarMsgInfo.vertical : 'bottom',
horizontal: snackBarMsgInfo.horizontal ? snackBarMsgInfo.horizontal : 'center',
}, open: snackBarOpen, autoHideDuration: 6000, onClose: onSnackBarClose, onExited: onSnackBarExited },
React.createElement(components_1.SnackbarContent, { onClose: onSnackBarCloseBtnClick, variant: snackBarMsgInfo.variant, message: snackBarMsgInfo.message })),
offline ?
React.createElement(components_1.OfflineOverlay, { onClose: onWinForceClose })
: null));
};
exports.default = DashbardLayout;
//# sourceMappingURL=Dashboard.js.map