UNPKG

backpack-ui

Version:
214 lines (162 loc) 5.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require("babel-runtime/helpers/extends"); var _extends3 = _interopRequireDefault(_extends2); var _defineProperty2 = require("babel-runtime/helpers/defineProperty"); var _defineProperty3 = _interopRequireDefault(_defineProperty2); var _callout; 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 _colors = require("../../styles/colors"); var _colors2 = _interopRequireDefault(_colors); var _dimensions = require("../../styles/dimensions"); var _dimensions2 = _interopRequireDefault(_dimensions); var _mq = require("../../styles/mq"); var _mq2 = _interopRequireDefault(_mq); var _spacing = require("../../styles/spacing"); var _spacing2 = _interopRequireDefault(_spacing); var _zIndex = require("../../styles/zIndex"); var _zIndex2 = _interopRequireDefault(_zIndex); var _color = require("../../utils/color"); var _font = require("../../utils/font"); var _font2 = _interopRequireDefault(_font); var _grid = require("../../utils/grid"); var _propTypes3 = require("../../utils/propTypes"); var _propTypes4 = _interopRequireDefault(_propTypes3); var _container = require("../container"); var _container2 = _interopRequireDefault(_container); var _featuredCallout = require("../featuredCallout"); var _featuredCallout2 = _interopRequireDefault(_featuredCallout); var _featuredSectionHeading = require("../featuredSectionHeading"); var _featuredSectionHeading2 = _interopRequireDefault(_featuredSectionHeading); var _gradientOverlay = require("../gradientOverlay"); var _gradientOverlay2 = _interopRequireDefault(_gradientOverlay); var _heroImageContainer = require("../heroImageContainer"); var _heroImageContainer2 = _interopRequireDefault(_heroImageContainer); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var styles = { container: { default: (0, _defineProperty3.default)({ fontFamily: (0, _font2.default)("benton"), height: "100vh", marginLeft: "auto", marginRight: "auto", position: "relative" }, "@media (max-width: " + _mq2.default.max[720] + ")", { maxHeight: "592px" }), constrained: (0, _defineProperty3.default)({ height: "80vh", maxHeight: "720px", maxWidth: _dimensions2.default.maxWidth + "px", minHeight: "592px" }, "@media (max-width: " + _mq2.default.max[720] + ")", { maxHeight: "none" }) }, sectionHeading: { marginTop: "56px", textShadow: "0 0 130px rgba(" + (0, _color.rgb)(_colors2.default.shadowPrimary) + ", .5)" }, callout: (_callout = { bottom: "76px", left: 0, position: "absolute", right: 0, width: "100%" }, (0, _defineProperty3.default)(_callout, "@media (max-width: " + _mq2.default.max[480] + ")", { paddingLeft: _spacing2.default.gutterHalf + "px", paddingRight: _spacing2.default.gutterHalf + "px" }), (0, _defineProperty3.default)(_callout, "@media (min-width: " + _mq2.default.min[1024] + ")", { marginLeft: (0, _grid.add)([(0, _grid.span)(1), (0, _grid.gutter)()]), marginRight: (0, _grid.add)([(0, _grid.span)(1), (0, _grid.gutter)()]), width: (0, _grid.span)(10) }), _callout), scoped: { ".FeaturedSectionHeading": { left: 0, position: "absolute", right: 0, top: "32px" }, mediaQueries: (0, _defineProperty3.default)({}, "(min-width: " + _mq2.default.min[720] + ")", { ".FeaturedSectionHeading": { top: "56px" } }) } }; var FeaturedArticle = function FeaturedArticle(_ref) { var article = _ref.article, constrained = _ref.constrained, style = _ref.style, qaHook = _ref.qaHook; return _react2.default.createElement( "div", { className: "FeaturedArticle", style: [styles.container.default, constrained && styles.container.constrained, style] }, _react2.default.createElement(_radium.Style, { scopeSelector: ".FeaturedArticle", rules: styles.scoped }), _react2.default.createElement( _heroImageContainer2.default, { imagePath: article.image }, _react2.default.createElement( _container2.default, { style: { height: "100%", position: "relative", zIndex: _zIndex2.default.default + 1 } }, article.sectionHeading && _react2.default.createElement( _featuredSectionHeading2.default, { style: styles.sectionHeading }, article.sectionHeading ), _react2.default.createElement( "div", { className: "FeaturedArticle-callout", style: styles.callout }, _react2.default.createElement(_featuredCallout2.default, (0, _extends3.default)({}, article, { qaHook: qaHook, hideLinkBreakpoint: 720 })) ) ), _react2.default.createElement(_gradientOverlay2.default, { gradientType: "leftCorner" }) ) ); }; FeaturedArticle.propTypes = { article: _propTypes2.default.shape({ sectionHeading: _propTypes2.default.string, category: _propTypes2.default.string, image: _propTypes2.default.string, title: _propTypes2.default.string, link: _propTypes2.default.shape({ text: _propTypes2.default.string, href: _propTypes2.default.string }) }).isRequired, constrained: _propTypes2.default.bool, style: _propTypes4.default.style, qaHook: _propTypes2.default.bool }; FeaturedArticle.defaultProps = { constrained: false, qaHook: false }; exports.default = (0, _radium2.default)(FeaturedArticle);