@bootstrap-styled/ra-ui
Version:
UI components for react-admin
101 lines (77 loc) • 4.07 kB
JavaScript
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _react = _interopRequireWildcard(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _reactRedux = require("react-redux");
var _classnames = _interopRequireDefault(require("classnames"));
var _H = _interopRequireDefault(require("@bootstrap-styled/v4/lib/H2"));
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _Menu = _interopRequireDefault(require("@material-ui/icons/Menu"));
var _compose = _interopRequireDefault(require("recompose/compose"));
var _raCore = require("ra-core");
var _withWidth = _interopRequireDefault(require("../extendMui/withWidth"));
var _AppBar = _interopRequireDefault(require("../extendMui/AppBar"));
var _LoadingIndicator = _interopRequireDefault(require("./LoadingIndicator"));
var _UserMenu = _interopRequireDefault(require("./UserMenu"));
var _Headroom = _interopRequireDefault(require("./Headroom"));
var MenuButton = _styledComponents.default.button.withConfig({
displayName: "AppBar__MenuButton",
componentId: "sc-5e5d4v-0"
})(["cursor:pointer;color:inherit;margin:0;border:0;outline:none;user-select:none;text-decoration:none;background-color:transparent;flex:0 0 auto;width:48px;height:48px;padding:0;font-size:1.5rem;text-align:center;justify-content:center;display:inline-flex;align-items:center;"]);
var AppBarUnstyled = function AppBarUnstyled(_ref) {
var children = _ref.children,
className = _ref.className,
logout = _ref.logout,
open = _ref.open,
title = _ref.title,
toggleSidebar = _ref.toggleSidebar,
userMenu = _ref.userMenu,
width = _ref.width,
rest = (0, _objectWithoutProperties2.default)(_ref, ["children", "className", "logout", "open", "title", "toggleSidebar", "userMenu", "width"]);
return _react.default.createElement(_Headroom.default, null, _react.default.createElement(_AppBar.default, (0, _extends2.default)({
className: (0, _classnames.default)(className, 'appbar p-0')
}, rest), _react.default.createElement(MenuButton, {
"aria-label": "open drawer",
className: "mr-3 ml-1",
onClick: toggleSidebar
}, _react.default.createElement(_Menu.default, null)), _react.Children.count(children) === 0 ? _react.default.createElement(_H.default, {
className: "appbar-title my-0",
id: "react-admin-title"
}) : children, _react.default.createElement(_LoadingIndicator.default, null), (0, _react.cloneElement)(userMenu, {
logout: logout
})));
};
AppBarUnstyled.propTypes = {
children: _propTypes.default.node,
className: _propTypes.default.string,
logout: _propTypes.default.element,
open: _propTypes.default.bool,
title: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.element]).isRequired,
toggleSidebar: _propTypes.default.func.isRequired,
userMenu: _propTypes.default.node,
width: _propTypes.default.string
};
AppBarUnstyled.defaultProps = {
userMenu: _react.default.createElement(_UserMenu.default, null)
};
var AppBar = (0, _styledComponents.default)(AppBarUnstyled).withConfig({
displayName: "AppBar",
componentId: "sc-5e5d4v-1"
})(["&.appbar{.appbar-title{flex:1;}.appbar-nav{.nav{height:100%;.nav-link{height:100%;width:100%;display:flex;align-items:center;padding:0 .5rem;}.dropdown-item{width:auto;}}}}"]);
var enhance = (0, _compose.default)((0, _reactRedux.connect)(function (state) {
return {
locale: state.i18n.locale
};
}, {
toggleSidebar: _raCore.toggleSidebar
}), (0, _withWidth.default)());
var _default = enhance(AppBar);
exports.default = _default;
module.exports = exports.default;