UNPKG

ruffer-pattern-portfolio

Version:

This is the end result from https://dev.to/swyx/quick-guide-to-setup-your-react--typescript-storybook-design-system-1c51

74 lines (73 loc) 4.29 kB
"use strict"; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); var react_1 = __importStar(require("react")); var react_redux_1 = require("react-redux"); var react_bootstrap_1 = require("react-bootstrap"); var LoadingSection_1 = require("../LoadingSection/LoadingSection"); exports.TeamMemberCard = function (props) { var defaulHeader = { title: "LEE COLEMAN", subtitle: "Chief investment officer", color: '#9ae48f' }; var defaultImage = { src: 'http://placehold.it/200', description: 'Test description' }; var loading = props.loading, _a = props.header, header = _a === void 0 ? defaulHeader : _a, _b = props.image, image = _b === void 0 ? defaultImage : _b, content = props.content, className = props.className, link = props.link, backgroundColor = props.backgroundColor, children = props.children; if (loading) { return (react_1.default.createElement("div", { className: "card flex-row flex-wrap" }, react_1.default.createElement("div", { className: "card-header border-0" }, react_1.default.createElement(LoadingSection_1.LoadingSection, { className: "w-100 h-100", background: "none" })), react_1.default.createElement("div", { className: "card-block px-2" }, react_1.default.createElement(LoadingSection_1.LoadingSection, { className: "w-100 h-50" }), react_1.default.createElement(LoadingSection_1.LoadingSection, { className: "w-100 h-50" }), react_1.default.createElement(LoadingSection_1.LoadingSection, { className: "w-75 h-50" })), react_1.default.createElement("div", { className: "w-100" }))); } // TODO: Render this block in TypeScript var titleColor = '#9ae48f'; var cardTitle; var cardSubTitle; if (header) { if (header.title) { titleColor = header.color ? header.color : titleColor; cardTitle = (react_1.default.createElement(react_bootstrap_1.Card.Title, { style: { textTransform: 'uppercase', color: titleColor, textOverflow: 'ellipsis', overflow: 'hidden', whiteSpace: 'nowrap' } }, header.title)); } if (header.subtitle) { cardSubTitle = (react_1.default.createElement(react_bootstrap_1.Card.Subtitle, { className: "mb-2 text-muted", style: { textOverflow: 'ellipsis' } }, header.subtitle)); } } // var cardBody = ''; // var cardBodyColor = '#000'; // if(body){ // cardBodyColor = body.color ? body.color : cardBodyColor; // cardBody = // (<CardBootstrap.Text style={{fontSize: '45px', color: cardBodyColor }}> // {body.text} // </CardBootstrap.Text>); // } var cardImg = (react_1.default.createElement("img", { src: 'http://placehold.it/200', style: { height: '300px' }, alt: "" })); if (image) { cardImg = (react_1.default.createElement("img", { src: image.src, style: { height: '300px' }, alt: "" })); } var cardContent = (react_1.default.createElement("div", { className: "card flex-row flex-wrap", style: { backgroundColor: backgroundColor } }, react_1.default.createElement("div", { className: "card-header border-0 h-25" }, cardImg), react_1.default.createElement("div", { className: "card-block px-2" }, cardTitle, cardSubTitle, react_1.default.createElement("p", { className: "card-text" }, "Description")), react_1.default.createElement("div", { className: "w-100" }))); return (react_1.default.createElement(react_1.Fragment, null, link ? (react_1.default.createElement("a", { className: className, href: link, style: { textDecoration: 'none' } }, cardContent)) : (react_1.default.createElement("div", { className: className }, cardContent)))); }; exports.default = react_redux_1.connect()(exports.TeamMemberCard);