This repository has been archived by the owner on Nov 20, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
component---src-pages-index-js-0658751f86d6f814fb8e.js.map
1 lines (1 loc) · 32.3 KB
/
component---src-pages-index-js-0658751f86d6f814fb8e.js.map
1
{"version":3,"sources":["webpack:///./src/components/style.js","webpack:///./src/components/Intro/style.js","webpack:///./src/components/Intro/index.js","webpack:///./src/data/index.js","webpack:///./src/components/Contacts/index.js","webpack:///./src/components/Icons/index.js","webpack:///./src/components/AboutMe/index.js","webpack:///./src/components/Skills/index.js","webpack:///./src/components/Job/style.js","webpack:///./src/components/Job/index.js","webpack:///./src/components/Jobs/index.js","webpack:///./src/components/Education/style.js","webpack:///./src/components/Education/index.js","webpack:///./src/pages/index.js","webpack:///./.cache/public-page-renderer.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./src/components/layout.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./src/images/profile.jpeg"],"names":["Wrapper","styled","div","withConfig","displayName","componentId","Block","BlockTitle","h3","AboutMe","AboutMeTitle","AboutMeInfo","Skill","span","FlexWrapper","Name","h2","Image","img","Intro","react_default","a","createElement","style","marginRight","width","height","src","image","alt","data","contacts","label","link","education","school","title","year","skills","history","employer","date","achievements","ContactLink","Contacts","map","contact","key","href","Search","viewBox","fill","d","cx","cy","r","stroke","strokeLinecap","strokeMiterlimit","strokeWidth","Status","Position","Location","strokeLinejoin","Chevron","Education","props","Object","assign","components_AboutMe","Icons_Location","Icons_Status","Icons_Search","Skills","skill","Info","Employer","Title","Date","Achievements","ul","Job","_props$job","job","style_Wrapper","Icons_Position","style_Date","achievement","index","ExpandButton","button","expanded","css","Expand","Jobs","_useState","useState","jobsCount","setJobsCount","length","slice","components_Job","onClick","Icons_Chevron","School","Year","components_Education","Education_style_Wrapper","Icons_Education","style_Info","style_Title","setConfig","pureSFC","IndexPage","layout","components_Jobs","lib_default","pageId","appId","m","module","exports","require","default","__webpack_require__","__webpack_exports__","graphql","StaticQueryContext","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","_public_page_renderer__WEBPACK_IMPORTED_MODULE_3__","_public_page_renderer__WEBPACK_IMPORTED_MODULE_3___default","_parse_path__WEBPACK_IMPORTED_MODULE_4__","React","createContext","Consumer","staticQueryData","query","render","children","Error","propTypes","PropTypes","object","string","isRequired","func","Layout","_ref","react__WEBPACK_IMPORTED_MODULE_1___default","gatsby__WEBPACK_IMPORTED_MODULE_4__","Fragment","react_helmet__WEBPACK_IMPORTED_MODULE_3___default","site","siteMetadata","meta","name","content","lang","rel","_public_static_d_755544856_json__WEBPACK_IMPORTED_MODULE_0__","node","ProdPageRenderer","location","pageResources","loader","getResourcesForPathnameSync","pathname","InternalPageRenderer","json","shape","p"],"mappings":"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","file":"component---src-pages-index-js-0658751f86d6f814fb8e.js","sourcesContent":["import styled from 'styled-components'\n\nexport const Wrapper = styled.div`\n margin: 50px auto;\n max-width: 960px;\n`\n\nexport const Block = styled.div`\n color: #323141;\n padding: 2rem;\n margin-bottom: 2px;\n position: relative;\n \n &:not(:last-of-type) {\n border-bottom: 1px solid #e6e6e6; \n }\n`\n\nexport const BlockTitle = styled.h3`\n font-size: 14px;\n text-transform: uppercase;\n font-weight: 500;\n margin-bottom: 3rem;\n`\n\nexport const AboutMe = styled.div`\n display: flex;\n padding-bottom: 2rem;\n \n &:last-of-type {\n padding-bottom: 0;\n }\n`\n\nexport const AboutMeTitle = styled.div`\n font-weight: 500;\n margin-bottom: .5rem;\n`\n\nexport const AboutMeInfo = styled.div`\n padding-left: 15px;\n`\n\nexport const Skill = styled.span`\n margin-right: 5px;\n margin-bottom: 5px;\n background-color: #E3E4E6;\n font-weight: 500;\n color: #323141;\n border-radius: 2px;\n display: inline-block;\n line-height: 2rem;\n padding: 0 1rem;\n text-transform: capitalize;\n`\n","import styled from 'styled-components'\n\nexport const FlexWrapper = styled.div`\n display: flex;\n`\n\nexport const Name = styled.h2`\n font-size: 1.8rem;\n font-weight: 500;\n margin: 10px 0;\n`\n\nexport const Image = styled.img`\n border-radius: 100%;\n`\n","import React from 'react'\nimport { Block } from '../style'\nimport image from '../../images/profile.jpeg'\nimport { FlexWrapper, Name, Image } from './style'\n\nexport default () => {\n return (\n <Block>\n <FlexWrapper>\n <div style={{ marginRight: '2rem', width: '80px', height: '80px' }}>\n <Image src={image} alt=\"\" />\n </div>\n\n <div>\n <Name>Massimo Palmieri</Name>\n <div>Lead front-end engineer at Lloyds Bank</div>\n </div>\n </FlexWrapper>\n </Block>\n )\n}\n","export default {\n contacts: [\n {\n label: 'CV',\n link: ''\n },\n {\n label: 'LinkedIn',\n link: 'https://www.linkedin.com/in/massimopalmieri'\n },\n {\n label: 'Email',\n link: 'mailto:[email protected]'\n },\n {\n label: '0782-417-4839',\n link: 'tel:00447824174839'\n },\n ],\n education: [\n {\n school: 'Suor Orsola Benincasa University of Naples',\n title: 'Bachelor degree in Communication Studies',\n year: '2011'\n },\n {\n school: 'Suor Orsola Benincasa University of Naples',\n title: 'Advertising, Visual communication and Marketing Planning workshops'\n }\n ],\n skills: [\n 'JavaScript',\n 'React',\n 'React Native',\n 'Electron.js',\n 'HTML',\n 'CSS',\n 'SASS / Less',\n 'build systems',\n 'front-end architecture',\n 'responsive web design',\n 'UI/UX design',\n 'performance optimisation'\n ],\n history: [\n {\n employer: 'Lloyds Bank',\n title: 'Lead Front-End Engineer',\n date: 'Oct 2017 — present (1 yr, 1 mo)',\n achievements: [\n 'Writing modular, well tested front-end applications that remain easy to maintain as the codebase and business continues to scale',\n 'Setting the strategic direction for how front-end applications are developed within the team',\n 'Ensuring software is built in a way which is consistent with - and exploits where possible - the collective frameworks, patterns and practices that exist across the wider Engineering community',\n 'Understand and apply industry best practices, foster knowledge sharing to provide solutions for complex business problems where no precedent may exist, and ensure implementation of solutions where appropriate',\n 'Mentor and develop more junior front-end engineers, providing clear and constructive feedback and creating opportunities for learning and growth',\n 'Relentless focus on delivering business value through sound engineering methods and principles\\n',\n ],\n },\n {\n employer: 'NeuLion, formerly Saffron Digital',\n title: 'Lead Front-End Developer',\n date: 'Mar 2014 — Oct 2017 (3 yrs, 7 mos)',\n achievements: [\n `building a premium VOD service for Britain's biggest music retailer using React both on client and server, Redux, Webpack, es2015, babeljs`,\n 'implementing a html 5 player to play DRM protected content and extending it to add our own UI and custom functionalities',\n 'splitting up parts of the codebase, when necessary, into a growing number of npm modules',\n 'building films.nolim.fr for Carrefour, a premium VOD service using AngularJs, Bootstrap, Gulp',\n 'building itvessentials.com for ITV, a premium SVOD service using AngularJs, Bootstrap, Gulp',\n 'building ITV Essentials iOS and Android hybrid app using AngularJs, Ionic, Cordova/PhoneGap, Bootstrap, Gulp',\n 'converting an existing Django CMS to a single page Backbone app',\n 'write unit tests with Jasmine and Mocha',\n 'optimise performances',\n 'building internal UI Toolkits for other developers to implement',\n 'providing a ux-design-development bridge',\n 'mentoring and supporting other front-end developers, providing feedback and guidance when required',\n 'helping to define coding standards - HTML, CSS and Sass, JavaScript',\n ],\n },\n {\n employer: 'Karmarama',\n title: 'Senior Front-End Developer',\n date: 'Jun 2012 — Mar 2014 (1 yr, 9 mos)',\n achievements: [\n 'developing high traffic websites for big brands such as BT, Porsche, De Beers, Debeers Forevermark and Plusnet using Html 5, javaScript, Css 3, Sass',\n 'developing a hybrid mobile app for Laithwaites Wines using Phonegap',\n 'developing crowdwish.com and its CMS using Backbone',\n 'building emails for Honda and British Gas',\n ],\n },\n {\n employer: 'SocialGO',\n title: 'Front-End Developer',\n date: 'Apr 2011 — Jun 2012 (1 yr, 2 mos)',\n achievements: [\n `Designing and coding 'house' themes`,\n 'Defining standards, conventions and guidelines around developing themes for the platform',\n 'Planning and executing a broader theme strategy',\n 'Diagnosing browser compatibility issues and running full browser compatibility testing',\n ],\n },\n {\n employer: 'De Pompeis',\n title: 'Front-end Web Developer and Designer',\n date: 'Oct 2010 — Mar 2011 (5 mos)',\n achievements: [\n 'Designing and developing of websites',\n 'Designing logotypes, brand identity, brochures, packaging for several mass retailer',\n ],\n },\n {\n employer: 'Arkadia',\n title: 'Front-end Web Developer and Designer',\n date: 'Mar 2007 — Jul 2010 (3 yrs, 4 mos)',\n achievements: [\n 'Designing and developing the front-end of several web sites, a web app and a custom CMS',\n 'Designed brand identity, brochures, catalogs and packaging for several clients'\n ],\n },\n // {\n // employer: '',\n // title: '',\n // date: '',\n // achievements: [\n // '',\n // ],\n // },\n ],\n}\n","import React from 'react'\nimport styled from 'styled-components'\nimport { Block } from '../style'\nimport data from '../../data'\n\nconst ContactLink = styled.a`\n font-weight: 500;\n display: inline-block;\n margin-right: 20px;\n color: #2B87B1;\n text-decoration: none;\n white-space: nowrap;\n`\n\nexport default () => {\n return (\n <Block>\n {data.contacts.map(contact => (\n <ContactLink key={contact.label} href={contact.link}>{contact.label}</ContactLink>\n ))}\n </Block>\n )\n}\n","import React from 'react'\n\nexport const Search = () => (\n <svg height={25} width={25} viewBox=\"0 0 50 50\">\n <path fill=\"none\" d=\"M0 0h50v50H0z\" />\n <circle\n cx={21}\n cy={20}\n fill=\"none\"\n r={16}\n stroke=\"#000\"\n strokeLinecap=\"round\"\n strokeMiterlimit={10}\n strokeWidth={2}\n />\n <path\n fill=\"none\"\n stroke=\"#000\"\n strokeMiterlimit={10}\n strokeWidth={4}\n d=\"M32.229 32.229L45.5 45.5\"\n />\n </svg>\n)\n\nexport const Status = () => (\n <svg height={25} width={25} viewBox=\"0 0 50 50\">\n <path fill=\"none\" d=\"M0 0h50v50H0z\" />\n <path\n d=\"M25 10V1c13.256 0 24 10.745 24 24 0 13.256-10.744 24-24 24S1 38.256 1 25A23.933 23.933 0 0 1 8.022 8.035\"\n fill=\"none\"\n stroke=\"#000\"\n strokeLinecap=\"round\"\n strokeMiterlimit={10}\n strokeWidth={2}\n />\n <path\n d=\"M27.121 27.122a3 3 0 0 1-4.242 0c-1.172-1.172-10.417-14.66-10.417-14.66s13.487 9.245 14.659 10.417a3 3 0 0 1 0 4.243z\" />\n </svg>\n)\n\nexport const Position = () => (\n <svg height={25} width={25} viewBox=\"0 0 100 100\">\n <title />\n <path\n d=\"M89.13 28.69H67.76v-9.62a4 4 0 0 0-4-4h-27.5a4 4 0 0 0-4 4v9.62H10.87A5.89 5.89 0 0 0 5 34.56V89.1a5.89 5.89 0 0 0 5.87 5.9h78.26A5.89 5.89 0 0 0 95 89.1V34.56a5.89 5.89 0 0 0-5.87-5.87zM35 19.07a1.23 1.23 0 0 1 1.22-1.22h27.5a1.23 1.23 0 0 1 1.22 1.22v9.62H35zM10.87 31.5h78.26a3.06 3.06 0 0 1 3.05 3.05v19H59.84v-2.07A2.81 2.81 0 0 0 57 48.67H43a2.81 2.81 0 0 0-2.81 2.81v2.11H7.81v-19a3.06 3.06 0 0 1 3.06-3.09zM57 51.48v7H43v-7zm32.1 40.67H10.87a3.06 3.06 0 0 1-3.06-3.05V56.41h32.35v2.11A2.81 2.81 0 0 0 43 61.33h14a2.81 2.81 0 0 0 2.81-2.81v-2.11h32.38V89.1a3.06 3.06 0 0 1-3.06 3.06z\" />\n </svg>\n)\n\nexport const Location = () => (\n <svg height={25} width={25} viewBox=\"0 0 50 50\">\n <path fill=\"none\" d=\"M0 0h50v50H0z\" />\n <path\n d=\"M40 17c0 13.604-15 31-15 31S10 30.928 10 17c0-8.285 6.715-15 15-15 8.284 0 15 6.715 15 15z\"\n fill=\"none\"\n stroke=\"#000\"\n strokeLinejoin=\"round\"\n strokeMiterlimit={10}\n strokeWidth={1.765}\n />\n <circle\n cx={25}\n cy={18}\n fill=\"none\"\n r={6}\n stroke=\"#000\"\n strokeLinejoin=\"round\"\n strokeMiterlimit={10}\n strokeWidth={1.765}\n />\n </svg>\n)\n\nexport const Chevron = () => (\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n height={30}\n stroke=\"#000\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n width={30}\n >\n <path d=\"M18 15l-6-6-6 6\" />\n </svg>\n)\n\nexport const Education = props => (\n <svg viewBox=\"0 0 100 100\" {...props}>\n <title />\n <path d=\"M94.09 42.89L51.56 21.62a3.83 3.83 0 0 0-3.13 0L5.91 42.89a1.32 1.32 0 0 0 0 2.51l6.43 3.21H12v35.54a2.8 2.8 0 0 0-1.11 1.17l-2.78 5.62A2.81 2.81 0 0 0 10.62 95h5.63a2.81 2.81 0 0 0 2.52-4.07L16 85.32a2.8 2.8 0 0 0-1.11-1.17V49.86l7 3.52v17.38c0 3.94 3 7.6 8.42 10.31 5.28 2.64 12.28 4.09 19.71 4.09s14.43-1.45 19.71-4.09c5.43-2.71 8.42-6.38 8.42-10.31V53.38l16-8a1.32 1.32 0 0 0 0-2.51zM16.25 92.2h-5.63l2.81-5.62zm59.06-21.44c0 2.82-2.44 5.59-6.86 7.8C63.56 81 57 82.36 50 82.36S36.44 81 31.55 78.56c-4.42-2.21-6.86-5-6.86-7.8v-16l23.74 11.9a3.83 3.83 0 0 0 3.13 0l23.75-11.88zm-25-6.63a1 1 0 0 1-.32 0 1.12 1.12 0 0 1-.31 0l-40-20 40-20a1 1 0 0 1 .32 0 1.12 1.12 0 0 1 .31 0l40 20z\" />\n </svg>\n)\n","import React from 'react'\nimport { AboutMe, AboutMeTitle, AboutMeInfo, BlockTitle, Block } from '../style'\nimport { Search, Status, Location } from '../Icons'\n\nexport default () => {\n return (\n <Block>\n <BlockTitle>about me</BlockTitle>\n\n <AboutMe>\n <Location />\n <AboutMeInfo>\n <AboutMeTitle>Willing to work in or near the following areas (or remote):</AboutMeTitle>\n London, United Kingdom\n </AboutMeInfo>\n </AboutMe>\n\n <AboutMe>\n <Status />\n <AboutMeInfo>\n <AboutMeTitle>Job search status:</AboutMeTitle>\n Open to exploring new opportunities\n </AboutMeInfo>\n </AboutMe>\n\n <AboutMe>\n <Search />\n <AboutMeInfo>\n <AboutMeTitle>What I am looking for in a new position:</AboutMeTitle>\n Modern tech stack, flexible working.\n </AboutMeInfo>\n </AboutMe>\n </Block>\n )\n}\n","import React from 'react'\nimport { Block, BlockTitle, Skill } from '../style'\nimport data from '../../data'\n\nexport default () => {\n return (\n <Block>\n <BlockTitle>primary area of expertise</BlockTitle>\n\n <div>\n {data.skills.map(skill => <Skill key={skill}>{skill}</Skill>)}\n </div>\n </Block>\n )\n}\n","import styled from 'styled-components'\n\nexport const Wrapper = styled.div`\n display: flex;\n padding-bottom: 2rem;\n \n &:last-of-type {\n padding-bottom: 0;\n }\n`\n\nexport const Info = styled.div`\n padding-left: 15px;\n`\n\nexport const Employer = styled.div`\n font-weight: 500;\n margin-bottom: .5rem;\n`\n\nexport const Title = styled.div`\n font-weight: 500;\n margin-bottom: .5rem;\n`\n\nexport const Date = styled.div`\n color: #787985;\n font-size: .8rem\n`\n\nexport const Achievements = styled.ul`\n list-style-position: inside;\n margin-left: 0;\n font-size: .9rem;\n line-height: 1.5rem;\n margin-top: 20px;\n color: #787985;\n`\n","import React from 'react'\nimport { Wrapper, Info, Employer, Title, Achievements, Date } from './style'\nimport { Position } from '../Icons'\n\nconst Job = props => {\n const { employer, title, date, achievements } = props.job\n\n return (\n <Wrapper>\n <div>\n <Position />\n </div>\n <Info>\n <Employer>{employer}</Employer>\n <Title>{title}</Title>\n <Date>{date}</Date>\n\n <Achievements>\n {achievements.map((achievement, index) => <li key={index}>{achievement}</li>)}\n </Achievements>\n </Info>\n </Wrapper>\n )\n}\n\nexport default Job\n","import React, { useState } from 'react'\nimport styled, {css} from 'styled-components'\nimport data from '../../data'\nimport { Chevron } from '../Icons'\nimport Job from '../Job'\nimport { Block, BlockTitle } from '../style'\n\nconst { history } = data\n\nconst ExpandButton = styled.button`\n position: absolute;\n top: 60px;\n width: 40px;\n height: 40px;\n padding: 0;\n outline: none;\n opacity: .3;\n border-radius: 100%;\n border: 1px solid gray;\n line-height: 12px;\n \n &:hover {\n cursor: pointer;\n opacity: 1;\n }\n \n ${props => !props.expanded && css`\n transform: rotate(180deg);\n `}\n`\n\nconst Expand = styled.div`\n display: flex;\n justify-content: center;\n align-content: center;\n position: absolute;\n left: 0;\n right: 0;\n padding-top: 100px;\n bottom: 30px;\n \n ${props => !props.expanded && css`\n background: linear-gradient(0deg, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 100%);\n `}\n`\n\nconst Jobs = () => {\n const [jobsCount, setJobsCount] = useState(2)\n const expanded = jobsCount === history.length\n\n function expand () {\n if (expanded) {\n return setJobsCount(2)\n }\n setJobsCount(history.length)\n }\n\n return (\n <Block>\n <BlockTitle>work history</BlockTitle>\n\n {history.slice(0, jobsCount).map(job => <Job key={job.employer} job={job} />)}\n\n <Expand expanded={expanded}>\n <ExpandButton expanded={expanded} onClick={expand}>\n <Chevron />\n </ExpandButton>\n </Expand>\n </Block>\n )\n}\n\nexport default Jobs\n","import styled from 'styled-components'\n\nexport const Wrapper = styled.div`\n display: flex;\n padding-bottom: 2rem;\n \n &:last-of-type {\n padding-bottom: 0;\n }\n`\n\nexport const Info = styled.div`\n padding-left: 15px;\n`\n\nexport const School = styled.div`\n font-weight: 500;\n font-size: .9rem;\n`\n\nexport const Title = styled.div`\n font-weight: 500;\n font-size: .9rem;\n margin-top: 10px;\n`\n\nexport const Year = styled.div`\n font-weight: 500;\n color: #787985;\n font-size: .8rem;\n margin-top: 10px;\n`\n","import React from 'react'\nimport { Block, BlockTitle } from '../style'\nimport { Education } from '../Icons'\nimport data from '../../data'\nimport { Wrapper, Info, School, Title, Year } from './style'\n\nexport default () => {\n return (\n <Block>\n <BlockTitle>education</BlockTitle>\n\n {data.education.map(education => (\n <Wrapper key={education.title}>\n <div>\n <Education height={30} width={30} />\n </div>\n <Info>\n <School>{education.school}</School>\n <Title>{education.title}</Title>\n <Year>{education.year}</Year>\n </Info>\n </Wrapper>\n ))}\n </Block>\n )\n}\n","import React from 'react'\nimport MessengerCustomerChat from 'react-messenger-customer-chat'\nimport { setConfig } from 'react-hot-loader'\nimport Layout from '../components/layout'\nimport Intro from '../components/Intro'\nimport Contacts from '../components/Contacts'\nimport AboutMe from '../components/AboutMe'\nimport Skills from '../components/Skills'\nimport Jobs from '../components/Jobs'\nimport Education from '../components/Education'\nimport { Wrapper } from '../components/style'\n\nsetConfig({ pureSFC: true })\n\nconst IndexPage = () => (\n <Layout>\n <Wrapper>\n <Intro />\n <Contacts />\n <AboutMe />\n <Skills />\n <Jobs />\n <Education />\n </Wrapper>\n <MessengerCustomerChat pageId=\"127985967891916\" appId=\"263902037430900\" />\n </Layout>\n)\n\nexport default IndexPage\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\"\nimport Link, {\n withPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n} from \"gatsby-link\"\nimport PageRenderer from \"./public-page-renderer\"\nimport parsePath from \"./parse-path\"\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\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}\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport Helmet from 'react-helmet'\nimport { StaticQuery, graphql } from 'gatsby'\n\nimport './layout.css'\n\nconst Layout = ({ children }) => (\n <StaticQuery\n query={graphql`\n query SiteTitleQuery {\n site {\n siteMetadata {\n title\n }\n }\n }\n `}\n render={data => (\n <>\n <Helmet\n title={data.site.siteMetadata.title}\n meta={[\n { name: 'description', content: 'Massimo Palmieri - Front-end developer' },\n { name: 'keywords', content: 'front-end, development, engineer, london, react, javascript' },\n ]}\n >\n <html lang=\"en\" />\n <link href=\"https://fonts.googleapis.com/css?family=Montserrat:300,400,500\" rel=\"stylesheet\" />\n </Helmet>\n\n {children}\n </>\n )}\n />\n)\n\nLayout.propTypes = {\n children: PropTypes.node.isRequired,\n}\n\nexport default Layout\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","module.exports = __webpack_public_path__ + \"static/profile-09f065bb579d51556e6fafacd31d6f61.jpeg\";"],"sourceRoot":""}