@afiniti/footer
Advanced tools
Comparing version 0.0.3 to 0.0.4
{ | ||
"name": "@afiniti/footer", | ||
"version": "0.0.3", | ||
"version": "0.0.4", | ||
"description": "React component for footer", | ||
@@ -16,4 +16,2 @@ "license": "MIT", | ||
"footer-package", | ||
"lazy load", | ||
"lazy loader", | ||
"graphcms", | ||
@@ -20,0 +18,0 @@ "graph-cms", |
// Packages | ||
import React from 'react'; | ||
// Components | ||
import Icon from './Icon.jsx'; | ||
// Styles | ||
import styles from '../css/social.scss'; | ||
const SOCIAL = [ | ||
{ | ||
icon: 'twitter.svg', | ||
url: 'https://twitter.com/afiniti' | ||
}, | ||
{ | ||
icon: 'facebook.svg', | ||
url: 'https://www.facebook.com/afinitiai' | ||
}, | ||
{ | ||
icon: 'linkedin.svg', | ||
url: 'https://www.linkedin.com/company/afiniti-com' | ||
} | ||
]; | ||
const Nav = ({ href, type }) => ( | ||
<a | ||
className={styles.item} | ||
href={href} | ||
target="_blank" | ||
rel="noopener noreferrer" | ||
> | ||
{type === 'twitter' && ( | ||
<svg width="12" height="10" xmlns="http://www.w3.org/2000/svg"> | ||
<path | ||
fill="currentColor" | ||
d="M12 1.18c-.45.204-.926.338-1.413.397.513-.315.897-.81 1.08-1.394a4.836 4.836 0 0 1-1.564.611A2.42 2.42 0 0 0 7.404.177a2.526 2.526 0 0 0-1.557 2.344c-.001.193.02.386.063.574A6.943 6.943 0 0 1 .833.459c-.651 1.155-.317 2.63.764 3.37A2.42 2.42 0 0 1 .48 3.516v.031c0 1.202.827 2.238 1.977 2.475-.212.06-.43.09-.65.089a2.378 2.378 0 0 1-.474-.045c.322 1.03 1.247 1.735 2.3 1.754A4.892 4.892 0 0 1 0 8.865 6.848 6.848 0 0 0 3.773 10c4.53 0 7-3.846 7-7.179V2.48c.481-.355.896-.795 1.227-1.3" | ||
fill="#FFF" | ||
fill-rule="nonzero" | ||
/> | ||
</svg> | ||
)} | ||
const Nav = ({ className, active, handleClick, theme }) => ( | ||
<nav | ||
className={`${styles.social} ${ | ||
theme === 'light' ? styles.light : styles.dark | ||
}`} | ||
> | ||
{SOCIAL.map((s, i) => ( | ||
<a | ||
className={styles.item} | ||
href={s.url} | ||
key={i} | ||
target="_blank" | ||
rel="noopener noreferrer" | ||
> | ||
<Icon glyph={require(`../images/${s.icon}`)} /> | ||
</a> | ||
))} | ||
</nav> | ||
{type === 'facebook' && ( | ||
<svg width="5" height="12" xmlns="http://www.w3.org/2000/svg"> | ||
<path | ||
fill="currentColor" | ||
d="M0 3.972h1.06V2.769c0-.533 0-1.352.346-1.859.386-.613 1.017-.954 1.672-.903A5.868 5.868 0 0 1 5 .231l-.268 1.835a3.165 3.165 0 0 0-.865-.15c-.417 0-.79.173-.79.667v1.389H4.79L4.67 5.767H3.078V12H1.06V5.767H0V3.972z" | ||
fill="#FFF" | ||
fill-rule="nonzero" | ||
/> | ||
</svg> | ||
)} | ||
{type === 'linkedin' && ( | ||
<svg width="12" height="11" xmlns="http://www.w3.org/2000/svg"> | ||
<path | ||
fill="currentColor" | ||
d="M2.643 11H.31V3.53h2.333V11zm-1.23-8.404h-.016a1.302 1.302 0 0 1-.983-.344A1.294 1.294 0 0 1 0 1.3C0 .562.563.004 1.43.004a1.31 1.31 0 0 1 .99.34 1.3 1.3 0 0 1 .42.956c0 .724-.55 1.296-1.427 1.296zM12 11H9.333V7.135c0-.997-.413-1.701-1.333-1.701-.576 0-1.087.368-1.267.914a1.686 1.686 0 0 0-.056.608V11H4.07s.033-6.845 0-7.467h2.627v1.183c.156-.512 1-1.243 2.333-1.243 1.667 0 2.97 1.074 2.97 3.387V11z" | ||
fill="#FFF" | ||
fill-rule="nonzero" | ||
/> | ||
</svg> | ||
)} | ||
</a> | ||
); | ||
export default Nav; | ||
const SocialShare = ({ facebook, twitter, linkedin, theme }) => { | ||
return ( | ||
<nav | ||
className={`${styles.social} ${ | ||
theme === 'light' ? styles.light : styles.dark | ||
}`} | ||
> | ||
{facebook && ( | ||
<Nav href={`https://www.facebook.com/afinitiai`} type={'facebook'} /> | ||
)} | ||
{twitter && <Nav href={`https://twitter.com/afiniti`} type={'twitter'} />} | ||
{linkedin && ( | ||
<Nav | ||
href={`https://www.linkedin.com/company/afiniti-com`} | ||
type={'linkedin'} | ||
/> | ||
)} | ||
</nav> | ||
); | ||
}; | ||
SocialShare.propTypes = { | ||
facebook: PropTypes.bool, | ||
twitter: PropTypes.bool, | ||
linkedin: PropTypes.bool | ||
}; | ||
SocialShare.defaultProps = { | ||
facebook: true, | ||
twitter: true, | ||
linkedin: true | ||
}; | ||
export default SocialShare; |
65944
959
32