import * as _ from 'lodash';
import * as React from 'react';
import {ProfileInfo, Styles} from 'ts/types';
import {colors} from 'ts/utils/colors';
const IMAGE_DIMENSION = 149;
const styles: Styles = {
subheader: {
textTransform: 'uppercase',
fontSize: 32,
margin: 0,
},
imageContainer: {
width: IMAGE_DIMENSION,
height: IMAGE_DIMENSION,
boxShadow: 'rgba(0, 0, 0, 0.19) 2px 5px 10px',
},
};
interface ProfileProps {
colSize: number;
profileInfo: ProfileInfo;
}
export function Profile(props: ProfileProps) {
return (
{props.profileInfo.name}
{!_.isUndefined(props.profileInfo.title) &&
{props.profileInfo.title.toUpperCase()}
}
{props.profileInfo.description}
{renderSocialMediaIcons(props.profileInfo)}
);
}
function renderSocialMediaIcons(profileInfo: ProfileInfo) {
const icons = [
renderSocialMediaIcon('zmdi-github-box', profileInfo.github),
renderSocialMediaIcon('zmdi-linkedin-box', profileInfo.linkedIn),
renderSocialMediaIcon('zmdi-twitter-box', profileInfo.twitter),
];
return icons;
}
function renderSocialMediaIcon(iconName: string, url: string) {
if (_.isEmpty(url)) {
return null;
}
return (
);
}