-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-pages-index-js-56bedc0bf0649b44b63c.js.map
1 lines (1 loc) · 37.5 KB
/
component---src-pages-index-js-56bedc0bf0649b44b63c.js.map
1
{"version":3,"sources":["webpack:///./src/components/about/about.js","webpack:///./src/components/skills/skill-bar.js","webpack:///./src/components/skills/skills.js","webpack:///./src/components/timeline/timeline.js","webpack:///./src/components/loader/loader.js","webpack:///./src/components/repositories/repositories.js","webpack:///./src/pages/index.js","webpack:///./data/siteConfig.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./.cache/public-page-renderer.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./src/components/header/header.js","webpack:///./src/components/layout/layout.js","webpack:///./src/components/layout/index.js","webpack:///./src/components/hero/hero.js","webpack:///./src/components/hero/index.js","webpack:///./src/components/wrapper/wrapper.js","webpack:///./src/components/wrapper/index.js","webpack:///./src/components/SEO/seo.js","webpack:///./src/components/SEO/index.js"],"names":["about","_ref","_ref$title","title","react_default","a","createElement","react","href","rel","target","SkillBar","className","name","level","htmlFor","id","displaName","styled","withConfig","displayName","componentId","p","skills_skills","_ref$skills","skills","map","skill","skill_bar","key","siteConfig","jobs","job","begin","month","year","occupation","duration","company","description","config","media","_templateObject","endpoint","githubUsername","Repositories","props","_this","_React$Component","call","this","state","repos","status","componentDidMount","_callee","regenerator_default","wrap","_context","prev","next","jsonFetch","sent","json","length","setState","stop","render","loader","Fragment","repo","html_url","Date","updated_at","toUTCString","stargazers_count","React","Component","Separator","hr","Home","layout","location","SEO","keywords","hero","heroImg","siteCover","wrapper","react_awesome_styled_grid_cjs","fluid","xs","src","alt","height","social","github","fa","size","linkedin","twitter","email","sm","timeline","repositories","module","exports","siteTitle","siteDescription","authorName","twitterUsername","authorAvatar","siteUrl","background_color","theme_color","display","icon","headerLinks","label","url","__webpack_require__","d","__webpack_exports__","StaticQuery","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","prop_types__WEBPACK_IMPORTED_MODULE_1__","prop_types__WEBPACK_IMPORTED_MODULE_1___default","gatsby_link__WEBPACK_IMPORTED_MODULE_2__","gatsby_link__WEBPACK_IMPORTED_MODULE_2___default","StaticQueryContext","createContext","Consumer","staticQueryData","data","query","children","propTypes","PropTypes","object","string","isRequired","func","m","require","default","ProdPageRenderer","pageResources","getResourcesForPathnameSync","pathname","InternalPageRenderer","Object","assign","shape","HeaderWrapper","header","HeaderNav","nav","HeaderLinkGroup","div","HeaderLink","Link","GithubLink","Header","headerLink","i","to","Layout","node","layout_layout","HeroContainer","TitleContainer","HeroTitle","h1","Hero","_this$props","withPrefix","Wrapper","main","attrs","role","lang","meta","gatsby_browser_entry","detailsQuery","metaDescription","site","siteMetadata","Helmet_default","htmlAttributes","titleTemplate","content","property","author","concat","join","_1025518380","defaultProps","array","arrayOf","seo"],"mappings":"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","file":"component---src-pages-index-js-56bedc0bf0649b44b63c.js","sourcesContent":["import React, { Fragment } from 'react'\n\nexport default ({ title = 'about'}) => {\n return (\n <Fragment>\n <h1>{title}</h1>\n <p>Frontend Developer, out-of-the-box passionate about what the projects I am involved with.</p>\n <p>I currently work as a Sr. Lead Frontend Developer with a small team deploying an<br/>\n e-commerce solution written in <strong>React.</strong></p>\n <p>Get a glimpse into my coding style here: <a href=\"https://sourcerer.io/jacebot\" rel=\"noopener noreferrer\" target=\"_blank\">Sourcerer Profile</a></p>\n </Fragment>\n )\n}\n","import React from 'react'\nimport styled from 'styled-components'\n\nconst SkillBar = ({ className, name, level }) => {\n return (\n <div className={className}>\n <label htmlFor={`${name}-bar`}>{name}</label>\n <div id={`${name}-bar`} className='skill__bar'>\n <div className='skill__level'></div>\n </div>\n </div>\n )\n}\n\nSkillBar.displaName = 'SkillBar'\n\nexport default styled(SkillBar)`\n \n .skill__bar {\n height: 10px;\n background-color: lightgrey;\n padding: 1px;\n }\n .skill__level {\n background-color: #25303B;\n width: ${p => p.level || 0}%;\n height: 8px;\n }\n`\n","import React, { Fragment } from 'react'\nimport SkillBar from './skill-bar'\n\nexport default ({ title = 'Skills', skills = [] }) => {\n return (\n <Fragment>\n <h1>{title}</h1>\n {skills.map(skill => (\n <SkillBar key={skill.name} name={skill.name} level={skill.level} />\n ))}\n </Fragment>\n )\n}\n","import React from 'react'\nimport styled from 'styled-components'\nimport { config } from 'react-awesome-styled-grid'\nimport siteConfig from '../../../data/siteConfig'\n\nconst Timeline = ({ className }) => {\n return (\n <div className={className}>\n <h1>Experience</h1>\n {siteConfig.jobs && siteConfig.jobs.map(job => (\n <article key={job.begin.month + job.begin.year} className='timeline__item'>\n <div className=\"inner\">\n <span className=\"timeline__date\">\n <span className=\"timeline__month\">{job.begin.month}</span>\n <span className=\"timeline__year\">{job.begin.year}</span>\n </span>\n <h2 className='timeline__title'>{job.occupation} <br /><small className='timeline__title--small'>({job.duration || 'present'})</small><br/>\n <span className=\"h3\">@ {job.company} <br /></span>\n </h2>\n <p>{job.description}</p>\n </div>\n </article>\n ))}\n </div>\n )\n}\n\nexport default styled(Timeline)`\n\n position: relative;\n :before {\n content: '';\n display: block;\n position: absolute;\n left: 50%;\n top: 0;\n margin: 70px 0 0 -1px;\n width: 1px;\n height: calc(100% - 70px);\n background: #25303B;\n }\n .timeline__item {\n width: 100%;\n margin: 0 0 20px 0;\n position: relative;\n }\n .timeline__item:after {\n content: '';\n display: block;\n clear: both;\n }\n .timeline__item div.inner {\n width: 100%;\n float: left;\n margin: 85px 0 0 0;\n border-radius: 6px;\n border: 1px solid #25303B;\n }\n .timeline__date {\n display: block;\n width: 60px;\n padding: 3px 5px;\n position: absolute;\n top: 0;\n left: 50%;\n margin: 0 0 0 -30px;\n border-radius: 100%;\n font-size: 12px;\n font-weight: 900;\n text-transform: uppercase;\n background: #25303B;\n color: #fff;\n box-shadow: 0 0 0 7px #fff;\n }\n .timeline__date span {\n display: block;\n text-align: center;\n }\n .timeline__month {\n font-size: 18px;\n padding-top: 4px;\n }\n .timeline__year {\n font-size: 10px;\n }\n .timeline__title {\n padding: 15px;\n margin: 0;\n color: #fff;\n font-size: 20px;\n text-transform: uppercase;\n border-radius: 3px 3px 0 0;\n position: relative;\n }\n .timeline__title:after {\n content: '';\n position: absolute;\n top: -5px;\n left: 30%;\n width: 10px; \n height: 10px;\n transform: rotate(-45deg);\n }\n .timeline__item div.inner p {\n padding: 15px;\n margin: 0;\n font-size: 14px;\n background: #fff;\n color: #656565;\n border-radius: 0 0 6px 6px;\n }\n .timeline__item:nth-child(2n+2) div.inner {\n float: right;\n }\n .timeline__title {\n background: #25303B;\n }\n .timeline__title:after {\n background: #25303B;\n }\n\n .timeline__title--small {\n font-size: 10px;\n }\n\n ${p => config().media['sm']`\n .timeline__item div.inner {\n width: 40%;\n margin: 5px 0 0 0;\n }\n\n .timeline__item div.inner h2:after {\n top: 20px;\n left: unset;\n right: -5px;\n }\n .timeline__item:nth-child(2n+2) div.inner h2:after {\n left: -5px;\n }\n\n `}\n`\n","import React from 'react'\nimport styled from 'styled-components'\n\nconst Loader = ({className}) => {\n return (\n <div className={className}>\n <div></div>\n <div></div>\n <div></div>\n <div></div>\n </div>\n )\n}\n\nexport default styled(Loader)`\n display: inline-block;\n position: relative;\n width: 64px;\n height: 64px;\n margin: 0 auto;\n div {\n box-sizing: border-box;\n display: block;\n position: absolute;\n width: 51px;\n height: 51px;\n margin: 6px;\n border: 6px solid #25303B;\n border-radius: 50%;\n animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;\n border-color: #25303B transparent transparent transparent;\n }\n div:nth-child(1) {\n animation-delay: -0.45s;\n }\n div:nth-child(2) {\n animation-delay: -0.3s;\n }\n div:nth-child(3) {\n animation-delay: -0.15s;\n }\n @keyframes lds-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n\n`","import React from \"react\";\nimport jsonFetch from \"simple-json-fetch\";\nimport styled from 'styled-components'\nimport siteConfig from '../../../data/siteConfig'\n\nimport Loader from '../loader'\n\nconst endpoint =\n `https://api.github.com/users/${siteConfig.githubUsername}/repos?type=owner&sort=updated&per_page=3&page=1`\n\n\nclass Repositories extends React.Component {\n constructor(props) {\n super(props)\n this.state = {\n repos: [],\n status: 'loading'\n }\n }\n async componentDidMount () {\n const repos = await jsonFetch(endpoint);\n if (repos.json && repos.json.length) {\n this.setState({ repos: repos.json, status: 'ready' })\n }\n }\n render () {\n const { status } = this.state\n return (\n <div className={this.props.className}>\n <h2>Latest repositories on Github</h2>\n {status === \"loading\" && <div className='repositories__loader'><Loader /></div>}\n {status === \"ready\" &&\n this.state.repos && (\n <React.Fragment>\n <div className=\"repositories__content\">\n {this.state.repos.map(repo => (\n <React.Fragment key={repo.name}>\n <div className=\"repositories__repo\">\n <a className='repositories__repo-link' href={repo.html_url}>\n <strong>{repo.name}</strong>\n </a>\n <div>{repo.description}</div>\n <div className=\"repositories__repo-date\">\n Updated: {new Date(repo.updated_at).toUTCString()}\n </div>\n <div className=\"repositories__repo-star\">\n ★ {repo.stargazers_count}\n </div>\n </div>\n <hr />\n </React.Fragment>\n ))}\n </div>\n </React.Fragment>\n )}\n </div>\n )\n }\n}\n\nexport default styled(Repositories)`\n position: relative;\n .repositories__content {\n margin-bottom: 40px;\n }\n\n .repositories__repo {\n position: relative;\n }\n\n .repositories__repo-link {\n text-decoration: none;\n color: #25303B;\n }\n\n .repositories__repo-date {\n color: #bbb;\n font-size: 10px;\n }\n\n .repositories__repo-star {\n position: absolute;\n top: 0;\n right: 0;\n }\n\n .repositories__loader {\n display: flex;\n }\n\n hr {\n margin-top: 16px;\n }\n\n`\n\n","import React from 'react'\nimport styled from 'styled-components'\nimport { Container, Row, Col } from 'react-awesome-styled-grid'\nimport { FaGithub, FaLinkedin, FaEnvelope, FaTwitter } from \"react-icons/fa\"\nimport siteConfig from '../../data/siteConfig'\n\nimport Layout from '../components/layout'\nimport Hero from '../components/hero'\nimport SEO from '../components/SEO'\nimport Wrapper from '../components/wrapper'\nimport About from '../components/about'\nimport Skills from '../components/skills'\nimport Timeline from '../components/timeline'\nimport Repositories from '../components/repositories'\n\nconst Separator = styled.hr`\n margin-top: 24px;\n margin-bottom: 16px;\n`\n\nclass Home extends React.Component {\n render () {\n const title = 'Hello, I\\'m Jace.'\n return (\n <Layout location={this.props.location}>\n <SEO\n title={title}\n keywords={['gatsbyjs', 'react', 'curriculum']}\n />\n\n <Hero\n heroImg={siteConfig.siteCover}\n title={title}\n />\n\n <Wrapper className={this.props.className} >\n <Container className=\"page-content\" fluid>\n <Row>\n <Col xs={4} className='avatar'>\n <img\n className='avatar__image'\n src='/images/avatar.jpeg'\n alt='user avatar'\n />\n <div className=\"social\">\n <a className=\"social-link sourcerer\" href=\"https://sourcerer.io/jacebot\">\n <img className=\"social-icon \" src=\"https://sourcerer.io/icons/logo-sharing.svg\" height=\"32px\" alt=\"Sourcerer\"/>\n </a>\n {siteConfig.social.github && <a className=\"social-link github\" href={siteConfig.social.github}>\n <FaGithub className=\"social-icon\" size=\"32\" />\n </a>}\n {siteConfig.social.linkedin && <a className=\"social-link linkedin\" href={siteConfig.social.linkedin}>\n <FaLinkedin className=\"social-icon\" size=\"32\" />\n </a>}\n {siteConfig.social.twitter && <a className=\"social-link twitter\" href={siteConfig.social.twitter}>\n <FaTwitter className=\"social-icon\" size=\"32\" />\n </a>}\n {siteConfig.social.email && <a className=\"social-link email\" href={`mailto:${siteConfig.social.email}`}>\n <FaEnvelope className=\"social-icon\" size=\"32\" />\n </a>}\n </div>\n </Col>\n </Row>\n <Row>\n <Col xs={4} sm={4}>\n <About title='About'/>\n </Col>\n <Col xs={4} sm={4}>\n <Skills title='Skills' skills={siteConfig.skills} />\n </Col>\n </Row>\n <Separator />\n <Timeline />\n <Separator />\n <Repositories />\n </Container>\n </Wrapper>\n </Layout>\n )\n }\n}\n\nexport default styled(Home)`\n .page-content {\n max-width: 100%;\n margin-bottom: 40px;\n }\n\n .avatar {\n align-items: center;\n margin-bottom: 24px;\n }\n\n .avatar__image {\n box-shadow: 3px 3px 15px 0px rgba(0,0,0,0.75);\n max-width: 200px;\n border-radius: 100px;\n margin: 0 auto 24px;\n }\n\n .social {\n margin-top: 12px;\n margin-bottom: 12px;\n }\n\n .social-link {\n padding: 8px;\n color: #555;\n }\n\n .sourcerer img {\n margin-bottom: 0;\n }\n\n a.social-link.twitter:hover {\n color: #1da1f2;\n }\n\n a.social-link.github:hover {\n color: #24292e;\n }\n\n a.social-link.linkedin:hover {\n color: #0077B5;\n }\n\n a.social-link.email:hover {\n color: #c23a2b;\n }\n`\n","module.exports = {\n siteTitle: 'Jace Whitten',\n siteDescription: `Jace Whitten - Frontend Developer`,\n authorName: 'Jace Whitten',\n twitterUsername: 'jacewhitten',\n githubUsername: 'jacebot',\n authorAvatar: '/images/avatar.jpeg',\n skills: [\n {\n name: 'HTML',\n level: 90\n },\n {\n name: 'CSS/SASS/SCSS/LESS',\n level: 90\n },\n {\n name: 'Javascript',\n level: 90\n },\n {\n name: 'React/Redux',\n level: 80\n },\n {\n name: 'Node / Python / Ruby',\n level: 70\n },\n {\n name: 'Database',\n level: 60\n },\n {\n name: 'Git',\n level: 80\n }\n ],\n jobs: [\n {\n company: \"MainStem\",\n begin: {\n month: 'Dec',\n year: '2016'\n },\n duration: \"Current\",\n occupation: \"Sr. Lead Frontend developer\",\n description: \"Making the 'Amazon' of the cannabis industry at GoMainStem.com\"\n \n },{\n company: \"Full Spectrum Laser\",\n begin: {\n month: 'Feb',\n year: '2016'\n },\n duration: \"1 yr\",\n occupation: \"Lead Frontend developer\",\n description: \"Helped create the partner product for the Dremel Laser cutter IoT device. Took concept jpegs to working app in less than a year. A majority of this work was autonomous.\"\n \n }, {\n company: \"GreenMed.us\",\n begin: {\n month: 'Jan',\n year: '2014'\n },\n duration: \"5 mo\",\n occupation: \"Co-founder/ Frontend developer\",\n description: \"I closed my web development firm to create SaaS model applications for the Cannabis industry. Would later be acquired by a company in Vancouver,Wa\"\n \n }, {\n company: \"Jovian Business\",\n begin: {\n month: 'Dec',\n year: '2012'\n },\n duration: '2 yr',\n occupation: \"Co-owner/ Co-hustler\",\n description: \"Co-founded a web firm with 2 other colleagues.\"\n }, {\n company: \"Accounts.com\",\n begin: {\n month: 'June',\n year: '2008'\n },\n duration: '2 yr & 6 mo',\n occupation: \"Pioneer/ Graphic Design\",\n description: \"Flipping MMORPG/WoW accounts up until about 2008 I became interested in web development through necessity. Help created what we now know as loot boxes and virtual goods.\"\n \n },\n /* ... */\n ],\n social: {\n linkedin: \"https://www.linkedin.com/in/jacewhitten\",\n github: \"https://github.com/jacebot\",\n },\n siteUrl: 'https://jacebot.github.io/',\n //pathPrefix: '/', // Note: it must *not* have a trailing slash.\n siteCover: '/images/cover.jpeg',\n //googleAnalyticsId: 'UA-131359385-1',\n background_color: '#ffffff',\n theme_color: '#25303B',\n display: 'minimal-ui',\n icon: 'src/assets/gatsby-icon.png',\n headerLinks: [\n {\n label: 'Jace Whitten',\n url: '/',\n }\n ]\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Link, {\n withPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n parsePath,\n} from \"gatsby-link\"\nimport PageRenderer from \"./public-page-renderer\"\n\nconst StaticQueryContext = React.createContext({})\n\nconst StaticQuery = props => (\n <StaticQueryContext.Consumer>\n {staticQueryData => {\n if (\n props.data ||\n (staticQueryData[props.query] && staticQueryData[props.query].data)\n ) {\n return (props.render || props.children)(\n props.data ? props.data.data : staticQueryData[props.query].data\n )\n } else {\n return <div>Loading (StaticQuery)</div>\n }\n }}\n </StaticQueryContext.Consumer>\n)\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n const context = React.useContext(StaticQueryContext)\n if (context[query] && context[query].data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away,. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n.` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport {\n Link,\n withPrefix,\n graphql,\n parsePath,\n navigate,\n push, // TODO replace for v3\n replace, // TODO remove replace for v3\n navigateTo, // TODO: remove navigateTo for v3\n StaticQueryContext,\n StaticQuery,\n PageRenderer,\n useStaticQuery,\n}\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport InternalPageRenderer from \"./page-renderer\"\nimport loader from \"./loader\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.getResourcesForPathnameSync(location.pathname)\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","import React from 'react'\nimport { Link } from 'gatsby'\nimport styled from 'styled-components'\nimport { FaGithub } from \"react-icons/fa\"\nimport siteConfig from '../../../data/siteConfig'\n\nconst HeaderWrapper = styled.header`\n position: fixed;\n top: 0;\n left: 0;\n margin: 0 auto;\n display: block;\n width: 100%;\n z-index: 1000;\n background-color: #25303B;\n`\n\nconst HeaderNav = styled.nav`\n margin-left: auto;\n margin-right: auto;\n height: 60px;\n display: flex;\n flex-direction: row;\n max-width: 960px;\n z-index: 1000;\n justify-content: space-between;\n overflow-x: auto;\n overflow-y: hidden;\n background-color: #25303B;\n`\n\nconst HeaderLinkGroup = styled.div`\n display: flex;\n flex-direction: row;\n` \n\nconst HeaderLink = styled(Link)`\n position: relative;\n text-decoration: none;\n display: flex;\n align-items: center;\n color: #fff;\n border: 0;\n margin: 0;\n margin-right: 0.5rem;\n padding-left: 20px;\n padding-right: 20px;\n min-width: 42px;\n z-index: 10;\n`\nconst GithubLink = styled(({ className }) => (\n <a \n className={className}\n href={`https://github.com/${siteConfig.githubUsername}`}\n target='_blank'\n rel=\"noopener noreferrer\"\n >\n <FaGithub size={32} />\n </a>\n))`\n position: relative;\n display: flex;\n align-items: center;\n color: #fff;\n border: 0;\n margin: 0;\n margin-right: 0.5rem;\n padding-left: 20px;\n padding-right: 20px;\n min-width: 42px;\n z-index: 10;\n`\n\nclass Header extends React.Component {\n render () {\n const { headerLinks } = siteConfig\n\n return (\n <HeaderWrapper>\n <HeaderNav>\n <HeaderLinkGroup>\n {headerLinks.map((headerLink, i) => (\n <HeaderLink to={headerLink.url} key={`header-link-${i}`}>\n {headerLink.label}\n </HeaderLink>\n ))}\n </HeaderLinkGroup>\n <GithubLink />\n </HeaderNav>\n </HeaderWrapper>\n )\n }\n}\n\nexport default Header","import React from 'react'\nimport PropTypes from 'prop-types'\nimport siteConfig from '../../../data/siteConfig'\n\nimport Header from '../header'\nimport './layout.css'\n\nconst Layout = ({ children }) => (\n <React.Fragment>\n <Header headerLinks={siteConfig.headerLinks} />\n <div>{children}</div>\n </React.Fragment>\n)\n\nLayout.propTypes = {\n children: PropTypes.node.isRequired,\n}\n\nexport default Layout\n","export { default } from './layout'\n","import React from 'react'\nimport { withPrefix } from 'gatsby'\nimport siteConfig from '../../../data/siteConfig'\nimport styled from 'styled-components'\n\nconst HeroContainer = styled.div`\n position: relative;\n display: table;\n width: 100%;\n overflow: hidden;\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n`\n\nconst TitleContainer = styled.div`\n display: table-cell;\n vertical-align: middle;\n text-align: center;\n width: 100%;\n`\n\nconst HeroTitle = styled.h1`\n font-weight: 700;\n font-size: 3rem;\n margin: 10px 60px;\n color: #fff;\n text-shadow: 1px 1px 4px rgba(34, 34, 34, 0.6);\n`\n\nclass Hero extends React.Component {\n render() {\n const { title, className } = this.props\n\n return (\n <HeroContainer className={className}>\n <TitleContainer>\n <HeroTitle>{title}</HeroTitle>\n </TitleContainer>\n </HeroContainer>\n )\n }\n}\n\nexport default styled(Hero)`\n \n ${p => `background-image: url(${p.heroImg || withPrefix(siteConfig.siteCover)});`}\n height: 70vh;\n background-attachment: fixed;\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n`\n","export { default } from './hero'\n","import styled from 'styled-components'\n\nconst Wrapper = styled.main.attrs({\n role: 'main',\n})`\n position: relative;\n border-radius: 3px;\n width: 80%;\n max-width: 960px;\n border-bottom: 1px solid #ebf2f6;\n word-wrap: break-word;\n background-color: #fff;\n margin: 0px auto 30px auto;\n top: -100px;\n padding: 50px;\n box-shadow: 0 0 0 0, 0 6px 12px rgba(0, 0, 0, 0.1);\n min-height: 150px;\n\n @media (max-width: 780px) {\n width: 90%;\n padding: 25px;\n }\n`\n\nexport default Wrapper\n","export { default } from './wrapper'\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport Helmet from 'react-helmet'\nimport { StaticQuery, graphql } from 'gatsby'\n\nfunction SEO({ description, lang, meta, keywords, title }) {\n return (\n <StaticQuery\n query={detailsQuery}\n render={data => {\n const metaDescription =\n description || data.site.siteMetadata.description\n return (\n <Helmet\n htmlAttributes={{\n lang,\n }}\n title={title}\n titleTemplate={`%s | ${data.site.siteMetadata.title}`}\n meta={[\n {\n name: `description`,\n content: metaDescription,\n },\n {\n property: `og:title`,\n content: title,\n },\n {\n property: `og:description`,\n content: metaDescription,\n },\n {\n property: `og:type`,\n content: `website`,\n },\n {\n name: `twitter:card`,\n content: `summary`,\n },\n {\n name: `twitter:creator`,\n content: data.site.siteMetadata.author,\n },\n {\n name: `twitter:title`,\n content: title,\n },\n {\n name: `twitter:description`,\n content: metaDescription,\n },\n ]\n .concat(\n keywords.length > 0\n ? {\n name: `keywords`,\n content: keywords.join(`, `),\n }\n : []\n )\n .concat(meta)}\n />\n )\n }}\n />\n )\n}\n\nSEO.defaultProps = {\n lang: `en`,\n meta: [],\n keywords: [],\n}\n\nSEO.propTypes = {\n description: PropTypes.string,\n lang: PropTypes.string,\n meta: PropTypes.array,\n keywords: PropTypes.arrayOf(PropTypes.string),\n title: PropTypes.string.isRequired,\n}\n\nexport default SEO\n\nconst detailsQuery = graphql`\n query DefaultSEOQuery {\n site {\n siteMetadata {\n title\n description\n author\n }\n }\n }\n`\n","export { default } from './seo'\n"],"sourceRoot":""}