import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { faFacebookSquare, faGithub, faHackerNewsSquare, faRedditSquare, faTwitter, faTwitterSquare } from '@fortawesome/free-brands-svg-icons' import { getContributionUrl } from "lib/guide"; import { getTwitterUrl, getTwitterShareUrl, getFacebookShareUrl, getRedditShareUrl, getHnShareUrl } from "lib/url"; import { AuthorBio, AuthorImg, AuthorInfoWrap, AuthorMeta, ContributeIcon, FooterBg, FooterContainer, FooterWrap, ShareIcons, ShareWrap } from './style'; const GuideFooter = ({ guide, guide: { author = {} } = {} }) => ( <FooterWrap> <FooterBg className="border-top"> <FooterContainer> <ShareWrap> <ContributeIcon> <a href={ getContributionUrl(guide) } target="_blank"> <span className="d-none d-sm-none d-md-inline d-lg-inline d-xl-inline">Improve this Guide </span> <span className="d-inline d-sm-inline d-md-none d-lg-none d-xl-none">Contribute </span> <FontAwesomeIcon icon={faGithub}/> </a> </ContributeIcon> <ContributeIcon hasMargins> <a href={ getTwitterUrl(author.twitter) } target="_blank"> <span className="d-none d-sm-none d-md-inline d-lg-inline d-xl-inline">Follow the author </span> <span className="d-inline d-sm-inline d-md-none d-lg-none d-xl-none">Author </span> <FontAwesomeIcon icon={faTwitter}/> </a> </ContributeIcon> <ShareIcons> <span className="d-none d-sm-none d-md-none d-lg-inline d-xl-inline">Help spread the word</span> <span className="d-inline d-sm-inline d-md-inline d-lg-none d-xl-none">Share</span> <a href={ getTwitterShareUrl({ text: `${guide.title} by @${author.twitter}`, url: guide.url })} target="_blank"> <FontAwesomeIcon icon={faTwitterSquare}/> </a> <a href={ getFacebookShareUrl({ text: guide.title, url: guide.url }) } target="_blank"> <FontAwesomeIcon icon={faFacebookSquare}/> </a> <a href={ getRedditShareUrl({ text: guide.title, url: guide.url })} target="_blank"> <FontAwesomeIcon icon={faRedditSquare}/> </a> <a href={ getHnShareUrl({ text: guide.title, url: guide.url })} target="_blank"> <FontAwesomeIcon icon={faHackerNewsSquare}/> </a> </ShareIcons> </ShareWrap> </FooterContainer> </FooterBg> <FooterBg className="border-top"> <FooterContainer> <AuthorInfoWrap> <AuthorImg src={ author.picture } alt={ author.name }/> <AuthorMeta> <h4><a href={ getTwitterUrl(author.twitter) } target="_blank">{ author.name }</a></h4> <AuthorBio>{ author.bio }</AuthorBio> </AuthorMeta> </AuthorInfoWrap> </FooterContainer> </FooterBg> </FooterWrap> ); export default GuideFooter;