UNPKG

backpack-ui

Version:
119 lines (88 loc) 3.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require("babel-runtime/helpers/extends"); var _extends3 = _interopRequireDefault(_extends2); var _objectWithoutProperties2 = require("babel-runtime/helpers/objectWithoutProperties"); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _react = require("react"); var _react2 = _interopRequireDefault(_react); var _propTypes = require("prop-types"); var _propTypes2 = _interopRequireDefault(_propTypes); var _radium = require("radium"); var _radium2 = _interopRequireDefault(_radium); var _container = require("../container"); var _container2 = _interopRequireDefault(_container); var _colors = require("../../styles/colors"); var _colors2 = _interopRequireDefault(_colors); var _zIndex = require("../../styles/zIndex"); var _zIndex2 = _interopRequireDefault(_zIndex); var _propTypes3 = require("../../utils/propTypes"); var _propTypes4 = _interopRequireDefault(_propTypes3); var _createQAHook = require("../../utils/createQAHook"); var _createQAHook2 = _interopRequireDefault(_createQAHook); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var styles = { nav: { backgroundColor: _colors2.default.bgPrimary, position: "relative", textAlign: "center", transform: "translateZ(0)", zIndex: _zIndex2.default.globalHeader - 1 }, container: { borderBottom: "1px solid " + _colors2.default.borderPrimary, overflow: "hidden" }, scroller: { overflowX: "auto", overflowY: "hidden", whiteSpace: "nowrap" } }; var Navigation = function Navigation(props) { var children = props.children, qaHook = props.qaHook, height = props.height, sticky = props.sticky, style = props.style, properties = (0, _objectWithoutProperties3.default)(props, ["children", "qaHook", "height", "sticky", "style"]); return _react2.default.createElement( "nav", (0, _extends3.default)({ className: "Navigation", "data-testid": qaHook ? (0, _createQAHook2.default)(qaHook, "Navigation", "nav") : null, style: [styles.nav, sticky && { position: "sticky", top: 0 }, style] }, properties), _react2.default.createElement( _container2.default, { style: [styles.container, { height: height + 1 + "px" }] }, _react2.default.createElement( "div", { style: [styles.scroller, { height: height + 15 + "px" }] }, _react2.default.createElement( "div", { style: { height: height + "px" } }, children ) ) ) ); }; Navigation.propTypes = { children: _propTypes2.default.arrayOf(_propTypes2.default.node).isRequired, height: _propTypes2.default.number, sticky: _propTypes2.default.bool, style: _propTypes4.default.style, qaHook: _propTypes2.default.bool }; Navigation.defaultProps = { height: 80, qaHook: false }; exports.default = (0, _radium2.default)(Navigation);