backpack-ui
Version:
Lonely Planet's Components
110 lines (83 loc) • 2.5 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _defineProperty2 = require("babel-runtime/helpers/defineProperty");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
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 _link = require("../link");
var _link2 = _interopRequireDefault(_link);
var _mq = require("../../styles/mq");
var _mq2 = _interopRequireDefault(_mq);
var _propTypes3 = require("../../utils/propTypes");
var _propTypes4 = _interopRequireDefault(_propTypes3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mediaQuery = "@media (max-width: " + _mq2.default.max[768] + ")";
var styles = {
default: {
color: "inherit",
display: "block"
},
normal: (0, _defineProperty3.default)({
paddingBottom: "34px",
paddingTop: "32px"
}, mediaQuery, {
paddingBottom: "11px",
paddingTop: "19px"
}),
compact: {
paddingTop: "16px",
paddingBottom: "16px"
},
card: (0, _defineProperty3.default)({
paddingLeft: "22px",
paddingRight: "22px"
}, mediaQuery, {
paddingLeft: "11px",
paddingRight: "11px"
})
};
var CardAnchor = function CardAnchor(_ref) {
var children = _ref.children,
href = _ref.href,
onClick = _ref.onClick,
tabIndex = _ref.tabIndex,
layout = _ref.layout,
spacing = _ref.spacing,
style = _ref.style;
return _react2.default.createElement(
_link2.default,
{
to: href,
onClick: onClick,
className: "Card-anchor",
tabIndex: tabIndex
},
_react2.default.createElement(
"span",
{
style: [styles.default, spacing === "normal" && styles.normal || styles.compact, layout !== "tile" && styles.card, style]
},
children
)
);
};
CardAnchor.propTypes = {
children: _propTypes2.default.node.isRequired,
href: _propTypes2.default.string,
onClick: _propTypes2.default.func,
tabIndex: _propTypes2.default.number,
layout: _propTypes2.default.oneOf(["tile", "card"]),
spacing: _propTypes2.default.oneOf(["normal", "compact"]),
style: _propTypes4.default.style
};
CardAnchor.defaultProps = {
layout: "card",
spacing: "normal"
};
exports.default = (0, _radium2.default)(CardAnchor);