UNPKG

backpack-ui

Version:

Lonely Planet's Components

199 lines (168 loc) 4.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _react = require("react"); var _react2 = _interopRequireDefault(_react); var _radium = require("radium"); var _radium2 = _interopRequireDefault(_radium); var _settings = require("../../../settings.json"); var _icon = require("../icon"); var _icon2 = _interopRequireDefault(_icon); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var styles = { container: { base: { backgroundColor: _settings.color.white, borderTop: "1px solid " + _settings.color.gray, fontSize: "11px", overflow: "hidden" } }, breadcrumbs: { base: { float: "left", lineHeight: 1, width: "55%" } }, buttons: { base: { float: "right", lineHeight: 1, marginTop: "-1px", overflow: "hidden", textAlign: "right", width: "45%" } }, button: { base: { display: "inline-block", position: "relative" }, notFirstChild: { marginLeft: "1px" }, lastChild: { paddingRight: _settings.spacing.mobile } }, anchor: { base: { display: "block", overflow: "hidden", padding: "23px " + _settings.spacing.mobile + " 20px", textOverflow: "ellipsis", whiteSpace: "nowrap", width: "100%" } }, divider: { base: { backgroundColor: _settings.color.gray, display: "block", height: "10px", right: "-1px", position: "absolute", top: "24px", width: "1px" } }, icon: { base: { marginRight: "9px", verticalAlign: "baseline", top: "-1px" } } }; function MobileToolbar(_ref) { var children = _ref.children; var location = _ref.location; var locationUrl = _ref.locationUrl; var selectedDates = _ref.selectedDates; var style = _ref.style; return _react2.default.createElement( "div", { className: "MobileToolbar", style: [styles.container.base, style] }, (selectedDates || location) && _react2.default.createElement( "div", { className: "MobileToolbar-breadcrumbs", style: styles.breadcrumbs.base }, selectedDates && _react2.default.createElement( "span", null, _react2.default.createElement( "time", { style: { fontWeight: 600 } }, selectedDates ), " in" ), " ", location && locationUrl && _react2.default.createElement( "a", { style: styles.anchor.base, href: "//lonelyplanet.com" + locationUrl }, _react2.default.createElement(_icon2.default, { name: "chevron-left", size: "tiny", inline: "before", style: styles.icon.base }), location ) ), _react2.default.createElement( "div", { className: "MobileToolbar-buttons", style: styles.buttons.base }, children.map(function (child, index) { return _react2.default.createElement( "div", { className: "MobileToolbar-button", style: [styles.button.base, index !== 0 && styles.button.notFirstChild], key: "MobileToolbar-part" + index }, child, index !== 1 && _react2.default.createElement("span", { className: "Divider", style: styles.divider.base, "aria-hidden": "true" }) ); }) ) ); } MobileToolbar.propTypes = { /** * Contents of toolbar */ children: _react.PropTypes.node.isRequired, /** * Location name for breadcrumb link */ location: _react.PropTypes.string.isRequired, /** * Location URL for breadcrumb link */ locationUrl: _react.PropTypes.string.isRequired, /** * Selected dates of POI booking */ selectedDates: _react.PropTypes.string, /** * Style object to add or override container styles */ style: _react.PropTypes.objectOf(_react2.default.PropTypes.string, _react2.default.PropTypes.number) }; MobileToolbar.defaultProps = { children: null, location: "", locationUrl: "", selectedDates: "", style: {} }; exports.default = (0, _radium2.default)(MobileToolbar);