backpack-ui
Version:
Lonely Planet's Components
131 lines (103 loc) • 3.08 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 _mq = require("../../styles/mq");
var _mq2 = _interopRequireDefault(_mq);
var _timing = require("../../styles/timing");
var _timing2 = _interopRequireDefault(_timing);
var _propTypes3 = require("../../utils/propTypes");
var _propTypes4 = _interopRequireDefault(_propTypes3);
var _card = require("../card");
var _heading2 = require("../heading");
var _heading3 = _interopRequireDefault(_heading2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mediaQuery = "@media (max-width: " + _mq2.default.max[768] + ")";
var styles = {
container: {
maxWidth: "300px"
},
anchor: (0, _defineProperty3.default)({
paddingBottom: "4px",
paddingTop: "27px"
}, mediaQuery, {
paddingBottom: "4px",
paddingTop: "19px"
}),
heading: (0, _defineProperty3.default)({
display: "-webkit-box",
fontSize: "20px",
lineHeight: 28 / 20,
maxHeight: "60px",
overflow: "hidden",
textOverflow: "ellipsis",
transition: "color " + _timing2.default.fast + " ease-in-out",
WebkitBoxOrient: "vertical",
WebkitLineClamp: 2
}, mediaQuery, {
fontSize: "14px",
lineHeight: 18 / 14,
maxHeight: "36px"
})
};
var TileVideoPoster = function TileVideoPoster(_ref) {
var href = _ref.href,
imageSrc = _ref.imageSrc,
heading = _ref.heading,
description = _ref.description,
style = _ref.style;
return _react2.default.createElement(
_card.Card,
{
layout: "tile",
style: [styles.container, style]
},
_react2.default.createElement(_card.CardImage, {
href: href,
src: imageSrc,
aspectRatio: "poster"
}),
_react2.default.createElement(
_card.CardText,
null,
_react2.default.createElement(
_card.CardAnchor,
{
href: href,
layout: "tile",
style: styles.anchor
},
_react2.default.createElement(
_heading3.default,
{
level: 3,
weight: "thick",
override: styles.heading
},
heading
),
description && _react2.default.createElement(
_card.CardDescription,
null,
description
)
)
)
);
};
TileVideoPoster.propTypes = {
href: _propTypes2.default.string.isRequired,
imageSrc: _propTypes2.default.string.isRequired,
heading: _propTypes2.default.string.isRequired,
description: _propTypes2.default.string,
style: _propTypes4.default.style
};
exports.default = (0, _radium2.default)(TileVideoPoster);