portfolio/src/components/organisms/Footer.jsx

56 lines
1.3 KiB
React
Raw Normal View History

import React from 'react'
2019-04-16 03:59:21 +02:00
import PropTypes from 'prop-types'
import { graphql, useStaticQuery } from 'gatsby'
2018-05-13 00:42:59 +02:00
import Vcard from '../atoms/Vcard'
2018-09-15 19:51:10 +02:00
import LogoUnit from '../molecules/LogoUnit'
2018-05-12 22:58:16 +02:00
import Networks from '../molecules/Networks'
2018-06-11 19:48:38 +02:00
import styles from './Footer.module.scss'
2019-11-11 21:46:14 +01:00
import { useMeta } from '../../hooks/use-meta'
2018-04-02 23:22:48 +02:00
const query = graphql`
query {
# the package.json file
portfolioJson {
bugs
}
}
`
const FooterMarkup = ({ pkg, meta, year }) => (
<footer className={`h-card ${styles.footer}`}>
<LogoUnit minimal />
2019-11-12 22:20:34 +01:00
<Networks small />
<p className={styles.actions}>
<Vcard />
<a className="u-key" href={meta.gpg}>
PGP/GPG key
</a>
<a href={pkg.bugs}>Found a bug?</a>
</p>
<p className={styles.copyright}>
<small>
&copy; {year}{' '}
<a className="u-url" href={meta.url}>
{meta.title}
</a>{' '}
&mdash; All Rights Reserved
</small>
</p>
</footer>
)
2019-04-16 03:59:21 +02:00
FooterMarkup.propTypes = {
pkg: PropTypes.object.isRequired,
meta: PropTypes.object.isRequired,
year: PropTypes.number.isRequired
}
export default function Footer() {
2019-11-11 21:46:14 +01:00
const metaYaml = useMeta()
const { portfolioJson } = useStaticQuery(query)
const year = new Date().getFullYear()
2018-06-23 17:19:45 +02:00
2019-11-10 14:40:45 +01:00
return <FooterMarkup year={year} pkg={portfolioJson} meta={metaYaml} />
2018-04-02 23:22:48 +02:00
}