UNPKG

backpack-ui

Version:
110 lines (82 loc) 2.7 kB
"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 _classnames = require("classnames"); var _classnames2 = _interopRequireDefault(_classnames); var _colors = require("../../styles/colors"); var _colors2 = _interopRequireDefault(_colors); var _mq = require("../../styles/mq"); var _mq2 = _interopRequireDefault(_mq); var _color = require("../../utils/color"); var _propTypes3 = require("../../utils/propTypes"); var _propTypes4 = _interopRequireDefault(_propTypes3); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var hoverStyles = { default: { ".CoverPhoto": { transform: "scale(1.03) !important" } }, light: { ".Heading": { color: _colors2.default.linkPrimary + " !important" } } }; var styles = { container: { height: "auto", maxWidth: "410px", minWidth: "216px", position: "relative" }, card: (0, _defineProperty3.default)({ boxShadow: "0 0 20px " + (0, _color.rgba)(_colors2.default.shadowPrimary, 0.12) }, "@media (min-width: " + _mq2.default.min[768] + ")", { boxShadow: "0 12px 34px " + (0, _color.rgba)(_colors2.default.shadowPrimary, 0.12) }) }; var Card = function Card(_ref) { var children = _ref.children, layout = _ref.layout, theme = _ref.theme, className = _ref.className, style = _ref.style; return _react2.default.createElement( "div", { className: "" + (0, _classnames2.default)("Card", theme && "Card--" + theme, className), style: [styles.container, layout !== "tile" && styles.card, style] }, _react2.default.createElement(_radium.Style, { scopeSelector: ".Card:hover", rules: hoverStyles.default }), theme === "light" && _react2.default.createElement(_radium.Style, { scopeSelector: ".Card--light:hover", rules: hoverStyles.light }), children ); }; Card.propTypes = { children: _propTypes2.default.node.isRequired, layout: _propTypes2.default.oneOf(["tile", "card"]), theme: _propTypes2.default.oneOf(["light", "dark"]), className: _propTypes2.default.string, style: _propTypes4.default.style }; Card.defaultProps = { layout: "card", theme: "light" }; exports.default = (0, _radium2.default)(Card);