UNPKG

@cimpress/react-components

Version:
86 lines (83 loc) 3.2 kB
"use strict"; var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Card = void 0; const react_1 = __importDefault(require("react")); const css_1 = require("@emotion/css"); const cvar_1 = __importDefault(require("./theme/cvar")); const cardBase = (0, css_1.css) ` position: relative; display: flex; flex-direction: column; background-color: ${(0, cvar_1.default)('color-background')}; border: 1px solid ${(0, cvar_1.default)('color-border-default')}; border-radius: ${(0, cvar_1.default)('spacing-4')}; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.1); `; const cardHeader = (0, css_1.css) ` padding: ${(0, cvar_1.default)('spacing-16')} ${(0, cvar_1.default)('spacing-16')}; margin-bottom: 0; background-color: ${(0, cvar_1.default)('color-background-light')}; border-bottom: none; background-image: none; color: ${(0, cvar_1.default)('color-text-default')}; &:first-child { border-radius: 3px 3px 0 0; } > h5 { font-size: 15px; font-weight: 500; } `; const cardMinimal = (0, css_1.css) ` .crc-card-header { background-color: ${(0, cvar_1.default)('color-background')}; border-bottom: 1px solid ${(0, cvar_1.default)('color-border-light')}; } `; const cardLayout = (0, css_1.css) ` background-color: ${(0, cvar_1.default)('color-background')}; border: none; border-radius: 2px; box-shadow: none; .crc-card-header { background-color: ${(0, cvar_1.default)('color-background')}; } `; const cardBlock = (0, css_1.css) ` flex: 1 1 auto; padding: ${(0, cvar_1.default)('spacing-16')}; p { margin-bottom: 20px; } `; const cardTitle = (0, css_1.css) ` margin: 0; `; const Card = (_a) => { // isMinimal should take priority here for backwards compatibility var { children, header = undefined, isMinimal = false, className = '', variant } = _a, rest = __rest(_a, ["children", "header", "isMinimal", "className", "variant"]); const cardClassName = (0, css_1.cx)('crc-card', cardBase, className, { [cardMinimal]: isMinimal || variant === 'minimal', [cardLayout]: !isMinimal && variant === 'layout', }); return (react_1.default.createElement("div", Object.assign({ className: cardClassName }, rest), header && (react_1.default.createElement("div", { className: (0, css_1.cx)(cardHeader, 'crc-card-header') }, react_1.default.createElement("h5", { className: cardTitle }, header))), react_1.default.createElement("div", { className: cardBlock }, children))); }; exports.Card = Card; //# sourceMappingURL=Card.js.map