apeman-react-jumbotron
Version:
apeman react components for jumbotron
154 lines (130 loc) • 11.6 kB
JavaScript
/**
* Style for ApJumbotron.
* @class ApJumbotronStyle
*/
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _apemanReactStyle = require('apeman-react-style');
var _acolor = require('acolor');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
/** @lends ApJumbotronStyle */
var ApJumbotronStyle = function (_Component) {
_inherits(ApJumbotronStyle, _Component);
function ApJumbotronStyle() {
_classCallCheck(this, ApJumbotronStyle);
return _possibleConstructorReturn(this, Object.getPrototypeOf(ApJumbotronStyle).apply(this, arguments));
}
_createClass(ApJumbotronStyle, [{
key: 'render',
value: function render() {
var s = this;
var props = s.props;
var _ApJumbotronStyle$sty = ApJumbotronStyle.styleData(props);
var all = _ApJumbotronStyle$sty.all;
var small = _ApJumbotronStyle$sty.small;
var medium = _ApJumbotronStyle$sty.medium;
var large = _ApJumbotronStyle$sty.large;
return _react2.default.createElement(
_apemanReactStyle.ApStyle,
{ data: Object.assign(all, props.style),
smallMediaData: small,
mediumMediaData: medium,
largeMediaData: large
},
props.children
);
}
}]);
return ApJumbotronStyle;
}(_react.Component);
Object.assign(ApJumbotronStyle, {
propTypes: {
style: _react.PropTypes.object,
highlightColor: _react.PropTypes.string,
backgroundColor: _react.PropTypes.string,
titleSize: _react.PropTypes.number
},
defaultProps: {
style: {},
titleSize: 54,
highlightColor: _apemanReactStyle.ApStyle.DEFAULT_HIGHLIGHT_COLOR,
backgroundColor: _apemanReactStyle.ApStyle.DEFAULT_BACKGROUND_COLOR
},
styleData: function styleData(config) {
var titleSize = config.titleSize;
var highlightColor = config.highlightColor;
var backgroundColor = config.backgroundColor;
return {
all: {
'.ap-jumbotron': {
display: 'block',
boxSizing: 'border-box',
width: '100%',
padding: '32px',
margin: '0 0 32px',
position: 'relative',
color: backgroundColor
},
'.ap-jumbotron-inner': {
position: 'relative'
},
'.ap-jumbotron .ap-image': {
backgroundColor: highlightColor
},
'.ap-jumbotron h1, .ap-jumbotron-title': {
fontSize: titleSize + 'px',
lineHeight: titleSize + 'px',
margin: '8px 0',
fontWeight: '100',
wordWrap: 'break-word'
},
'.ap-jumbotron p, .ap-jumbotron-text': {
margin: '4px 0'
},
'.ap-jumbotron-img-container': {
position: 'absolute',
left: 0,
top: 0,
right: 0,
bottom: 0
},
'.ap-jumbotron-img': {
width: '100% !important',
height: '100% !important'
},
'.ap-jumbotron-img .ap-spinner': {
display: 'none'
},
'.ap-jumbotron-img .ap-image': {
opacity: 0.1,
transition: 'opacity 100ms'
},
'.ap-jumbotron-img-ready .ap-image': {
opacity: 1
},
'.ap-jumbotron-filter': {
position: 'absolute',
left: 0,
top: 0,
right: 0,
bottom: 0,
pointerEvents: 'none',
backgroundColor: (0, _acolor.alpha)(highlightColor, 0.78)
}
},
small: {},
medium: {},
large: {}
};
}
});
exports.default = ApJumbotronStyle;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwX2p1bWJvdHJvbl9zdHlsZS5qc3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0FBS0E7Ozs7Ozs7O0FBRUE7Ozs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBO0lBQ00sZ0I7Ozs7Ozs7Ozs7OzZCQUNNO0FBQ1IsVUFBTSxJQUFJLElBQVY7QUFEUSxVQUVGLEtBRkUsR0FFUSxDQUZSLENBRUYsS0FGRTs7QUFBQSxrQ0FJNEIsaUJBQWlCLFNBQWpCLENBQTJCLEtBQTNCLENBSjVCOztBQUFBLFVBSUYsR0FKRSx5QkFJRixHQUpFO0FBQUEsVUFJRyxLQUpILHlCQUlHLEtBSkg7QUFBQSxVQUlVLE1BSlYseUJBSVUsTUFKVjtBQUFBLFVBSWtCLEtBSmxCLHlCQUlrQixLQUpsQjs7O0FBTVIsYUFDRTtBQUFBO0FBQUEsVUFBUyxNQUFPLE9BQU8sTUFBUCxDQUFjLEdBQWQsRUFBbUIsTUFBTSxLQUF6QixDQUFoQjtBQUNTLDBCQUFpQixLQUQxQjtBQUVTLDJCQUFrQixNQUYzQjtBQUdTLDBCQUFpQjtBQUgxQjtBQUlHLGNBQU07QUFKVCxPQURGO0FBT0Q7Ozs7OztBQUdILE9BQU8sTUFBUCxDQUFjLGdCQUFkLEVBQWdDO0FBQzlCLGFBQVc7QUFDVCxXQUFPLGlCQUFNLE1BREo7QUFFVCxvQkFBZ0IsaUJBQU0sTUFGYjtBQUdULHFCQUFpQixpQkFBTSxNQUhkO0FBSVQsZUFBVyxpQkFBTTtBQUpSLEdBRG1CO0FBTzlCLGdCQUFjO0FBQ1osV0FBTyxFQURLO0FBRVosZUFBVyxFQUZDO0FBR1osb0JBQWdCLDBCQUFRLHVCQUhaO0FBSVoscUJBQWlCLDBCQUFRO0FBSmIsR0FQZ0I7QUFhOUIsV0FiOEIscUJBYW5CLE1BYm1CLEVBYVg7QUFBQSxRQUNYLFNBRFcsR0FDb0MsTUFEcEMsQ0FDWCxTQURXO0FBQUEsUUFDQSxjQURBLEdBQ29DLE1BRHBDLENBQ0EsY0FEQTtBQUFBLFFBQ2dCLGVBRGhCLEdBQ29DLE1BRHBDLENBQ2dCLGVBRGhCOzs7QUFHakIsV0FBTztBQUNMLFdBQUs7QUFDSCx5QkFBaUI7QUFDZixtQkFBUyxPQURNO0FBRWYscUJBQVcsWUFGSTtBQUdmLGlCQUFPLE1BSFE7QUFJZixtQkFBUyxNQUpNO0FBS2Ysa0JBQVEsVUFMTztBQU1mLG9CQUFVLFVBTks7QUFPZixpQkFBTztBQVBRLFNBRGQ7QUFVSCwrQkFBdUI7QUFDckIsb0JBQVU7QUFEVyxTQVZwQjtBQWFILG1DQUEyQjtBQUN6QiwyQkFBaUI7QUFEUSxTQWJ4QjtBQWdCSCxpREFBeUM7QUFDdkMsb0JBQWEsU0FBYixPQUR1QztBQUV2QyxzQkFBZSxTQUFmLE9BRnVDO0FBR3ZDLGtCQUFRLE9BSCtCO0FBSXZDLHNCQUFZLEtBSjJCO0FBS3ZDLG9CQUFVO0FBTDZCLFNBaEJ0QztBQXVCSCwrQ0FBdUM7QUFDckMsa0JBQVE7QUFENkIsU0F2QnBDO0FBMEJILHVDQUErQjtBQUM3QixvQkFBVSxVQURtQjtBQUU3QixnQkFBTSxDQUZ1QjtBQUc3QixlQUFLLENBSHdCO0FBSTdCLGlCQUFPLENBSnNCO0FBSzdCLGtCQUFRO0FBTHFCLFNBMUI1QjtBQWlDSCw2QkFBcUI7QUFDbkIsaUJBQU8saUJBRFk7QUFFbkIsa0JBQVE7QUFGVyxTQWpDbEI7QUFxQ0gseUNBQWlDO0FBQy9CLG1CQUFTO0FBRHNCLFNBckM5QjtBQXdDSCx1Q0FBK0I7QUFDN0IsbUJBQVMsR0FEb0I7QUFFN0Isc0JBQVk7QUFGaUIsU0F4QzVCO0FBNENILDZDQUFxQztBQUNuQyxtQkFBUztBQUQwQixTQTVDbEM7QUErQ0gsZ0NBQXdCO0FBQ3RCLG9CQUFVLFVBRFk7QUFFdEIsZ0JBQU0sQ0FGZ0I7QUFHdEIsZUFBSyxDQUhpQjtBQUl0QixpQkFBTyxDQUplO0FBS3RCLGtCQUFRLENBTGM7QUFNdEIseUJBQWUsTUFOTztBQU90QiwyQkFBaUIsbUJBQU0sY0FBTixFQUFzQixJQUF0QjtBQVBLO0FBL0NyQixPQURBO0FBMERMLGFBQU8sRUExREY7QUEyREwsY0FBUSxFQTNESDtBQTRETCxhQUFPO0FBNURGLEtBQVA7QUE4REQ7QUE5RTZCLENBQWhDOztrQkFpRmUsZ0IiLCJmaWxlIjoiYXBfanVtYm90cm9uX3N0eWxlLmpzeCIsInNvdXJjZVJvb3QiOiJsaWIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFN0eWxlIGZvciBBcEp1bWJvdHJvbi5cbiAqIEBjbGFzcyBBcEp1bWJvdHJvblN0eWxlXG4gKi9cblxuJ3VzZSBzdHJpY3QnXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudCwgUHJvcFR5cGVzIGFzIHR5cGVzfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7QXBTdHlsZX0gZnJvbSAnYXBlbWFuLXJlYWN0LXN0eWxlJ1xuaW1wb3J0IHthbHBoYX0gZnJvbSAnYWNvbG9yJ1xuXG4vKiogQGxlbmRzIEFwSnVtYm90cm9uU3R5bGUgKi9cbmNsYXNzIEFwSnVtYm90cm9uU3R5bGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICByZW5kZXIgKCkge1xuICAgIGNvbnN0IHMgPSB0aGlzXG4gICAgbGV0IHsgcHJvcHMgfSA9IHNcblxuICAgIGxldCB7IGFsbCwgc21hbGwsIG1lZGl1bSwgbGFyZ2UgfSA9IEFwSnVtYm90cm9uU3R5bGUuc3R5bGVEYXRhKHByb3BzKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxBcFN0eWxlIGRhdGE9eyBPYmplY3QuYXNzaWduKGFsbCwgcHJvcHMuc3R5bGUpIH1cbiAgICAgICAgICAgICAgIHNtYWxsTWVkaWFEYXRhPXsgc21hbGwgfVxuICAgICAgICAgICAgICAgbWVkaXVtTWVkaWFEYXRhPXsgbWVkaXVtIH1cbiAgICAgICAgICAgICAgIGxhcmdlTWVkaWFEYXRhPXsgbGFyZ2UgfVxuICAgICAgPnsgcHJvcHMuY2hpbGRyZW4gfTwvQXBTdHlsZT5cbiAgICApXG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihBcEp1bWJvdHJvblN0eWxlLCB7XG4gIHByb3BUeXBlczoge1xuICAgIHN0eWxlOiB0eXBlcy5vYmplY3QsXG4gICAgaGlnaGxpZ2h0Q29sb3I6IHR5cGVzLnN0cmluZyxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHR5cGVzLnN0cmluZyxcbiAgICB0aXRsZVNpemU6IHR5cGVzLm51bWJlclxuICB9LFxuICBkZWZhdWx0UHJvcHM6IHtcbiAgICBzdHlsZToge30sXG4gICAgdGl0bGVTaXplOiA1NCxcbiAgICBoaWdobGlnaHRDb2xvcjogQXBTdHlsZS5ERUZBVUxUX0hJR0hMSUdIVF9DT0xPUixcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IEFwU3R5bGUuREVGQVVMVF9CQUNLR1JPVU5EX0NPTE9SXG4gIH0sXG4gIHN0eWxlRGF0YSAoY29uZmlnKSB7XG4gICAgbGV0IHsgdGl0bGVTaXplLCBoaWdobGlnaHRDb2xvciwgYmFja2dyb3VuZENvbG9yIH0gPSBjb25maWdcblxuICAgIHJldHVybiB7XG4gICAgICBhbGw6IHtcbiAgICAgICAgJy5hcC1qdW1ib3Ryb24nOiB7XG4gICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJyxcbiAgICAgICAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIHBhZGRpbmc6ICczMnB4JyxcbiAgICAgICAgICBtYXJnaW46ICcwIDAgMzJweCcsXG4gICAgICAgICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgICAgICAgY29sb3I6IGJhY2tncm91bmRDb2xvclxuICAgICAgICB9LFxuICAgICAgICAnLmFwLWp1bWJvdHJvbi1pbm5lcic6IHtcbiAgICAgICAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJ1xuICAgICAgICB9LFxuICAgICAgICAnLmFwLWp1bWJvdHJvbiAuYXAtaW1hZ2UnOiB7XG4gICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBoaWdobGlnaHRDb2xvclxuICAgICAgICB9LFxuICAgICAgICAnLmFwLWp1bWJvdHJvbiBoMSwgLmFwLWp1bWJvdHJvbi10aXRsZSc6IHtcbiAgICAgICAgICBmb250U2l6ZTogYCR7dGl0bGVTaXplfXB4YCxcbiAgICAgICAgICBsaW5lSGVpZ2h0OiBgJHt0aXRsZVNpemV9cHhgLFxuICAgICAgICAgIG1hcmdpbjogJzhweCAwJyxcbiAgICAgICAgICBmb250V2VpZ2h0OiAnMTAwJyxcbiAgICAgICAgICB3b3JkV3JhcDogJ2JyZWFrLXdvcmQnXG4gICAgICAgIH0sXG4gICAgICAgICcuYXAtanVtYm90cm9uIHAsIC5hcC1qdW1ib3Ryb24tdGV4dCc6IHtcbiAgICAgICAgICBtYXJnaW46ICc0cHggMCdcbiAgICAgICAgfSxcbiAgICAgICAgJy5hcC1qdW1ib3Ryb24taW1nLWNvbnRhaW5lcic6IHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICByaWdodDogMCxcbiAgICAgICAgICBib3R0b206IDBcbiAgICAgICAgfSxcbiAgICAgICAgJy5hcC1qdW1ib3Ryb24taW1nJzoge1xuICAgICAgICAgIHdpZHRoOiAnMTAwJSAhaW1wb3J0YW50JyxcbiAgICAgICAgICBoZWlnaHQ6ICcxMDAlICFpbXBvcnRhbnQnXG4gICAgICAgIH0sXG4gICAgICAgICcuYXAtanVtYm90cm9uLWltZyAuYXAtc3Bpbm5lcic6IHtcbiAgICAgICAgICBkaXNwbGF5OiAnbm9uZSdcbiAgICAgICAgfSxcbiAgICAgICAgJy5hcC1qdW1ib3Ryb24taW1nIC5hcC1pbWFnZSc6IHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjEsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMTAwbXMnXG4gICAgICAgIH0sXG4gICAgICAgICcuYXAtanVtYm90cm9uLWltZy1yZWFkeSAuYXAtaW1hZ2UnOiB7XG4gICAgICAgICAgb3BhY2l0eTogMVxuICAgICAgICB9LFxuICAgICAgICAnLmFwLWp1bWJvdHJvbi1maWx0ZXInOiB7XG4gICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgcmlnaHQ6IDAsXG4gICAgICAgICAgYm90dG9tOiAwLFxuICAgICAgICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGFscGhhKGhpZ2hsaWdodENvbG9yLCAwLjc4KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgc21hbGw6IHt9LFxuICAgICAgbWVkaXVtOiB7fSxcbiAgICAgIGxhcmdlOiB7fVxuICAgIH1cbiAgfVxufSlcblxuZXhwb3J0IGRlZmF1bHQgQXBKdW1ib3Ryb25TdHlsZVxuIl19