-
Notifications
You must be signed in to change notification settings - Fork 0
/
component---src-pages-about-js-03fcdbed4e4faa6b91d6.js.map
1 lines (1 loc) · 68.5 KB
/
component---src-pages-about-js-03fcdbed4e4faa6b91d6.js.map
1
{"version":3,"sources":["webpack:///./src/pages/about.js","webpack:///./src/components/seo.js","webpack:///./src/components/navigation/springLink.js","webpack:///./src/components/navigation/index.js","webpack:///./src/components/homePageSection/index.js","webpack:///./src/components/footer/index.js","webpack:///./src/layouts/page/index.js","webpack:///./src/images/home-animation.mp4","webpack:///./src/images/home-animation.webm","webpack:///./node_modules/gatsby-image/index.js","webpack:///./node_modules/core-js/modules/es6.string.fixed.js","webpack:///./node_modules/core-js/modules/_string-html.js"],"names":["About","data","_public_static_d_1220539015_json__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_1___default","a","createElement","_layouts_page__WEBPACK_IMPORTED_MODULE_5__","_components_seo__WEBPACK_IMPORTED_MODULE_6__","title","react_bootstrap_Container__WEBPACK_IMPORTED_MODULE_2___default","className","react_bootstrap_Row__WEBPACK_IMPORTED_MODULE_3___default","react_bootstrap_Col__WEBPACK_IMPORTED_MODULE_4___default","gatsby_image__WEBPACK_IMPORTED_MODULE_7___default","fluid","portlandImage","childImageSharp","fadeIn","durationFadeIn","style","marginTop","xs","span","sm","offset","role","aria-label","target","href","rel","SEO","_ref","description","lang","meta","site","_public_static_d_2417117884_json__WEBPACK_IMPORTED_MODULE_0__","metaDescription","siteMetadata","react_helmet__WEBPACK_IMPORTED_MODULE_3___default","htmlAttributes","titleTemplate","name","content","property","author","concat","defaultProps","propTypes","PropTypes","string","arrayOf","object","isRequired","__webpack_require__","d","__webpack_exports__","SpringLink","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","gatsby_plugin_transition_link__WEBPACK_IMPORTED_MODULE_1__","gatsby_plugin_transition_link__WEBPACK_IMPORTED_MODULE_1___default","to","children","exit","length","entry","delay","Navigation","props","isHomeStatus","isHome","react_default","Fragment","gatsby_plugin_transition_link","transitionStatus","mount","includes","renderprops","from","paddingTop","paddingBottom","id","join","Container_default","Row_default","Col_default","display","opacity","prop","onClick","window","history","go","navigationStyle","backBtn","index_es","icon","faCaretLeft","size","fontSize","springLink","gatsby_browser_entry","HomePageSection","md","lg","controls","loop","muted","autoPlay","src","HomeAnimationWebm","type","HomeAnimationMp4","scrollchor_default","faLongArrowAltDown","Footer","_useState","useState","setData","useEffect","console","log","axios","get","then","response","catch","error","height","footerStyle","footerItem","faDribbble","faGithub","faLinkedin","Math","round","main","temp","weather","alt","width","marginBottom","Layout","_this","_Component","call","this","state","checkIsHomePage","page","render","_this2","seo","exitStatus","transitionStatusPop","transform","navigation","homePageSection","footer","Component","node","module","exports","p","_interopRequireDefault","require","__esModule","default","io","_inheritsLoose2","_assertThisInitialized2","_objectWithoutPropertiesLoose2","_extends2","_react","_propTypes","convertProps","convertedProps","resolutions","sizes","critical","fixed","loading","groupByMedia","getImageSrcKey","imageCache","Object","create","inImageCache","hasNativeLazyLoadSupport","HTMLImageElement","prototype","isBrowser","hasIOSupport","IntersectionObserver","listeners","WeakMap","generateImageSources","imageVariants","map","_ref2","srcSet","srcSetWebp","media","key","withMedia","without","forEach","variant","push","generateTracedSVGSources","_ref3","tracedSVG","generateBase64Sources","_ref4","base64","generateNoscriptSource","_ref5","isWebp","listenToIntersections","el","cb","observer","entries","has","isIntersecting","intersectionRatio","unobserve","delete","rootMargin","observe","set","noscriptImg","crossOrigin","draggable","Placeholder","_ref6","generateSources","spreadProps","baseImage","Img","forwardRef","ref","onLoad","onError","otherProps","position","top","left","objectFit","objectPosition","func","Image","_React$Component","seenBefore","addNoScript","useIOSupport","isVisible","imgLoaded","imgCached","imageRef","createRef","handleImageLoaded","bind","handleRef","_proto","componentDidMount","onStartLoad","wasCached","img","current","complete","componentWillUnmount","cleanUpListeners","imageInCache","setState","currentSrc","_convertProps","_convertProps$style","_convertProps$imgStyl","imgStyle","_convertProps$placeho","placeholderStyle","placeholderClassName","backgroundColor","Tag","itemProp","shouldReveal","shouldFadeIn","imageStyle","transition","bgColor","delayHideStyle","transitionDelay","imagePlaceholderStyle","placeholderImageProps","image","overflow","JSON","stringify","aspectRatio","bottom","right","dangerouslySetInnerHTML","__html","_imageVariants","_image","divStyle","fixedObject","shape","number","srcWebp","fluidObject","oneOfType","bool","oneOf","_default","createHTML","$export","fails","defined","quot","tag","attribute","value","S","String","p1","replace","NAME","exec","O","P","F","test","toLowerCase","split"],"mappings":"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","file":"component---src-pages-about-js-03fcdbed4e4faa6b91d6.js","sourcesContent":["import React from \"react\"\r\nimport Container from 'react-bootstrap/Container'\r\nimport Row from 'react-bootstrap/Row'\r\nimport Col from 'react-bootstrap/Col'\r\nimport Layout from \"../layouts/page\"\r\nimport SEO from \"../components/seo\"\r\n\r\nimport { useStaticQuery, graphql } from \"gatsby\"\r\nimport Img from \"gatsby-image\"\r\n\r\nconst About = () => {\r\n const data = useStaticQuery(graphql`\r\n query {\r\n portlandImage: file(relativePath: { eq: \"portland-about.jpg\" }) {\r\n childImageSharp {\r\n fluid(\r\n maxWidth: 800\r\n quality: 100\r\n ) {\r\n ...GatsbyImageSharpFluid\r\n }\r\n }\r\n }\r\n noelImage: file(relativePath: { eq: \"noel.jpg\" }) {\r\n childImageSharp {\r\n fluid(\r\n maxWidth: 150\r\n quality: 100\r\n ) {\r\n ...GatsbyImageSharpFluid\r\n }\r\n }\r\n }\r\n }\r\n `)\r\n return(\r\n <Layout>\r\n <SEO title=\"About Noel\" />\r\n <Container className='my-5 text-light'>\r\n <Row>\r\n <Col>\r\n <Img fluid={data.portlandImage.childImageSharp.fluid} fadeIn={true} durationFadeIn={1000} className='mb-5'/>\r\n </Col>\r\n </Row>\r\n <Row style={{marginTop:'-10em'}}>\r\n <Col xs={{span:12}} sm={{span:8, offset:2}}>\r\n <div className=\"px-3 body-bg\">\r\n {/* <Img\r\n fluid={data.noelImage.childImageSharp.fluid} \r\n fadeIn={true} durationFadeIn={1000} \r\n className=\"rounded-circle\"\r\n style={{maxWidth:'100px'}}\r\n /> */}\r\n <h3 className=\"mb-0 py-3\">Hello world!</h3>\r\n <p>Welcome to my portfolio. I am a full-stack designer currently in Portland, Oregon who cares about crafting enjoyable products for <em>people</em>. I've worked in various web design roles from visual design, apparel design, content strategy, 2D animations, UX design, and web development. Through my career I've developed interdisciplinary skillsets which has given me a strong understanding of what good design is and a focus on creating effective, positive interactions driven by data.</p>\r\n \r\n </div>\r\n </Col>\r\n </Row>\r\n <Row>\r\n <Col xs={{span:12}} sm={{span:8, offset:2}}>\r\n <div className=\"px-3\">\r\n \r\n <h5><span role=\"img\" aria-label=\"golfer\">🏌️</span> When I'm not designing:</h5>\r\n <p>Probably golfing! Cold brews and beyond burgers.</p>\r\n \r\n <h5><span role=\"img\" aria-label=\"designers\">👍 </span>Design philosophy:</h5>\r\n <p>It is always in flux. Currently, I've taken to heart a recommendation by my manager to read Steve Krug’s <em>Don’t Make Me Think</em>.</p>\r\n \r\n <h5><span role=\"img\" aria-label=\"artist\">🎨 </span> My creative type:</h5>\r\n <p><a target=\"_blank\" href=\"https://mycreativetype.com/type/producer/\" rel=\"noopener noreferrer\">Producer</a></p>\r\n \r\n <h5><span role=\"img\" aria-label=\"music\">🎵</span> Current jam:</h5>\r\n <p>Awake by Tycho</p>\r\n \r\n </div>\r\n </Col>\r\n </Row>\r\n </Container>\r\n </Layout>\r\n )\r\n}\r\n\r\nexport default About\r\n","/**\r\n * SEO component that queries for data with\r\n * Gatsby's useStaticQuery React hook\r\n *\r\n * See: https://www.gatsbyjs.org/docs/use-static-query/\r\n */\r\n\r\nimport React from \"react\"\r\nimport PropTypes from \"prop-types\"\r\nimport Helmet from \"react-helmet\"\r\nimport { useStaticQuery, graphql } from \"gatsby\"\r\n\r\nfunction SEO({ description, lang, meta, title }) {\r\n const { site } = useStaticQuery(\r\n graphql`\r\n query {\r\n site {\r\n siteMetadata {\r\n title\r\n description\r\n author\r\n }\r\n }\r\n }\r\n `\r\n )\r\n\r\n const metaDescription = description || site.siteMetadata.description\r\n\r\n return (\r\n <Helmet\r\n htmlAttributes={{\r\n lang,\r\n }}\r\n title={title}\r\n titleTemplate={`%s | ${site.siteMetadata.title}`}\r\n meta={[\r\n {\r\n name: `description`,\r\n content: metaDescription,\r\n },\r\n {\r\n property: `og:title`,\r\n content: title,\r\n },\r\n {\r\n property: `og:description`,\r\n content: metaDescription,\r\n },\r\n {\r\n property: `og:type`,\r\n content: `website`,\r\n },\r\n {\r\n name: `twitter:card`,\r\n content: `summary`,\r\n },\r\n {\r\n name: `twitter:creator`,\r\n content: site.siteMetadata.author,\r\n },\r\n {\r\n name: `twitter:title`,\r\n content: title,\r\n },\r\n {\r\n name: `twitter:description`,\r\n content: metaDescription,\r\n },\r\n ].concat(meta)}\r\n />\r\n )\r\n}\r\n\r\nSEO.defaultProps = {\r\n lang: `en`,\r\n meta: [],\r\n description: ``,\r\n}\r\n\r\nSEO.propTypes = {\r\n description: PropTypes.string,\r\n lang: PropTypes.string,\r\n meta: PropTypes.arrayOf(PropTypes.object),\r\n title: PropTypes.string.isRequired,\r\n}\r\n\r\nexport default SEO\r\n","import React from 'react'\r\nimport TransitionLink from 'gatsby-plugin-transition-link'\r\n\r\n\r\nconst SpringLink = ({ to, children }) => (\r\n <TransitionLink \r\n to={to} \r\n exit={{ length:.75 }}\r\n entry={{ delay:.75,length: .75}}\r\n >\r\n {children}\r\n </TransitionLink>\r\n)\r\n\r\nexport { SpringLink }","import React from 'react'\r\nimport { SpringLink } from './springLink'\r\nimport { Spring } from 'react-spring/renderprops'\r\nimport {Link} from 'gatsby'\r\nimport { TransitionState } from 'gatsby-plugin-transition-link'\r\nimport Container from 'react-bootstrap/Container'\r\nimport Row from 'react-bootstrap/Row'\r\nimport Col from 'react-bootstrap/Col'\r\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome'\r\nimport {faCaretLeft} from '@fortawesome/free-solid-svg-icons'\r\n\r\nimport navigationStyle from './navigation.module.css'\r\n\r\nconst Navigation = (props) => {\r\n const isHomeStatus = props.isHome\r\n\r\n return (\r\n <>\r\n <TransitionState>\r\n {({ transitionStatus, exit, entry }) => {\r\n const mount = [ 'entering','entered'].includes(transitionStatus)\r\n // const exitStatus= [ 'exiting','exited'].includes(transitionStatus)\r\n // const seconds = mount ? entry.length : exit.length\r\n // console.log('exit object is', exit)\r\n // console.log('enter object is', entry)\r\n // console.log('exitSttus boolean is', exitStatus)\r\n // console.log('transitionstatus is', transitionStatus)\r\n // console.log('is Home Status is', isHomeStatus)\r\n // console.log('++++++++++++++++++++++++++++++++++++++++++')\r\n\r\n return (\r\n <Spring\r\n from={{\r\n paddingTop: props.isHome && mount ? '8vh' :'2vh',\r\n paddingBottom: props.isHome && mount ? '15vh' :'2vh'\r\n }}\r\n to={{\r\n paddingTop: props.isHome && mount ? '8vh' : !props.isHome && mount ? '2vh' : '2vh',\r\n paddingBottom: props.isHome && mount ? '15vh' : !props.isHome && mount ? '2vh' : '2vh'\r\n }}\r\n >\r\n {props => \r\n <div id='nav' \r\n className={[\"bg-white\", \"d-flex\", \"d-flex-row\", \"flex-wrap\", \"align-items-center\", !isHomeStatus ? \"border-bottom\" : null].join(' ')} style={props}>\r\n <Container>\r\n <Row>\r\n {/* Back, Home, Name and Title */}\r\n <Col className=\"d-flex flex-row align-items-center pl-0 flex-xs-column justify-content-center justify-content-sm-start\" xs={{span:12}} sm={{span:8}}>\r\n \r\n <Spring\r\n from={{\r\n display: mount && isHomeStatus ? 'block' : mount && !isHomeStatus ? 'block':'block',\r\n opacity: mount && isHomeStatus ? 1 : mount && !isHomeStatus ? 1:1\r\n }}\r\n to={{\r\n display:mount && isHomeStatus ? 'none' : mount && !isHomeStatus ? 'block':'block',\r\n opacity: mount && isHomeStatus ? 0 : mount && !isHomeStatus ? 1:1\r\n }}\r\n >{prop=>\r\n <div className=\"p-2\" style={prop}>\r\n <button \r\n title=\"Go back\" \r\n onClick={()=>window.history.go(-1)} \r\n className={['align-items-center','d-flex','px-0',navigationStyle.backBtn].join(' ')}\r\n >\r\n <FontAwesomeIcon icon={faCaretLeft} size=\"lg\" />\r\n </button>\r\n </div>\r\n }\r\n \r\n </Spring> \r\n\r\n {/* Make the golfer logo way large on the home page. */}\r\n <Spring\r\n from={{\r\n fontSize: mount && isHomeStatus ? '2em' : mount && !isHomeStatus ? '1em' :'1em' \r\n }}\r\n to={{\r\n fontSize: mount && isHomeStatus ? '2em' : mount && !isHomeStatus ? '1em' :'1em'\r\n }}\r\n >\r\n {props => \r\n <>\r\n <div className=\"p-2\" style={props}>\r\n <SpringLink to=\"/\">\r\n <span aria-label=\"noletorious\" role='img' className={navigationStyle.n}>🏌️</span>\r\n </SpringLink>\r\n </div>\r\n <div className=\"p-2\" style={props}>\r\n <p className='mb-0 text-light font-weight-bold'>Noel Torres</p>\r\n <h6 className='mb-0 text-light'>Full-stack Designer</h6>\r\n </div>\r\n </>\r\n }\r\n </Spring>\r\n \r\n </Col>\r\n {/* About, Work */}\r\n <Col className=\"d-flex align-items-center nav-items justify-content-center justify-content-sm-start\" xs={{span:12}} sm={{span:4}} style={{fontSize:'120%'}}>\r\n <div className=\"ml-sm-auto py-2\">\r\n <SpringLink to=\"/about\">About</SpringLink>\r\n </div>\r\n {/* <div className=\"p-2\">\r\n <SpringLink to=\"/blog\">Latest</SpringLink>\r\n </div> */}\r\n <div className=\"py-2 pl-4\">\r\n <Link \r\n to=\"/#work\">Work\r\n </Link>\r\n </div>\r\n </Col>\r\n </Row>\r\n </Container>\r\n </div>\r\n }\r\n </Spring>\r\n )\r\n }}\r\n </TransitionState>\r\n </>\r\n )\r\n}\r\n\r\nexport default Navigation","import React from 'react'\r\nimport Container from \"react-bootstrap/Container\"\r\nimport Col from \"react-bootstrap/Col\"\r\nimport Row from \"react-bootstrap/Row\"\r\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome'\r\nimport {faLongArrowAltDown} from '@fortawesome/free-solid-svg-icons'\r\nimport Scrollchor from 'react-scrollchor'\r\nimport HomeAnimationMp4 from '../../images/home-animation.mp4'\r\nimport HomeAnimationWebm from '../../images/home-animation.webm'\r\n\r\nconst HomePageSection = () => {\r\n return(\r\n <>\r\n <Container fluid=\"true\" className={['flex-grow-1'].join(' ')}>\r\n <Row className='h-100 d-flex'>\r\n <Col xs={{span:12}} sm={{span:8,offset:2}} md={{span:10,offset:1}} lg={{span:6, offset:3}} className={['d-flex','align-items-center'].join(' ')}>\r\n <div className={['img-fluid','w-100'].join(' ')} style={{marginTop:'-6em'}}>\r\n <video controls loop muted autoPlay=\"true\" className=\"w-100 h-100\">\r\n <source src={HomeAnimationWebm} type=\"video/webm\" />\r\n <source src={HomeAnimationMp4} type=\"video/mp4\" />\r\n <span className=\"text-light\">Your browser does not support this video.</span>\r\n </video>\r\n </div>\r\n \r\n </Col>\r\n <Col xs={{span:12}} className={['d-flex','justify-content-center','align-items-center','flex-column','text-center','text-light'].join(' ')}>\r\n <h3>My name is Noel, <br />I create digital experiences for people.</h3>\r\n <p>\r\n <Scrollchor to=\"#work\">\r\n <FontAwesomeIcon icon={faLongArrowAltDown} size=\"lg\"/>\r\n </Scrollchor>\r\n </p>\r\n </Col>\r\n \r\n </Row>\r\n </Container>\r\n </>\r\n )\r\n}\r\n\r\nexport default HomePageSection","import React,{useState,useEffect} from \"react\"\r\nimport Col from \"react-bootstrap/Col\"\r\nimport Row from \"react-bootstrap/Row\"\r\nimport Container from \"react-bootstrap/Container\"\r\nimport footerStyle from './footer.module.css'\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\r\nimport { faDribbble, faLinkedin, faGithub } from '@fortawesome/free-brands-svg-icons'\r\nimport axios from 'axios'\r\n \r\nconst Footer = () => {\r\n\r\n const [data, setData] = useState(null)\r\n \r\n\r\n useEffect(() => {\r\n console.log('======useEffect======')\r\n axios.get('https://api.openweathermap.org/data/2.5/weather?id=5746545&units=imperial&appid=9ff3b3252f2b747c427a1c0be7eecc50')\r\n .then(response =>{\r\n setData(response.data)\r\n // console.log(response)\r\n }).catch(error=>{\r\n console.log(error)\r\n })\r\n }, []);\r\n \r\n return(\r\n <footer className={['bg-footer'].join(' ')}>\r\n <Container>\r\n <Row className={['d-flex', 'align-items-center','justify-content-center'].join(' ')} style={{height:'200px'}}>\r\n <Col xs={{span:12}} sm={{span:4}}>\r\n <div className={['d-flex', 'align-items-center','justify-content-center'].join(' ')} >\r\n <ul className={['mb-0','ml-0','list-group','list-group-horizontal'].join(' ')}>\r\n <li className={['list-group-item', footerStyle.footerItem].join(' ')}>\r\n <a href=\"//dribbble.com/noletorious\">\r\n <FontAwesomeIcon icon={faDribbble} size=\"lg\"/> \r\n </a>\r\n </li>\r\n <li className={['list-group-item', footerStyle.footerItem].join(' ')}>\r\n <a href=\"//github.com/noletorious\">\r\n <FontAwesomeIcon icon={faGithub} size=\"lg\"/> \r\n </a>\r\n </li>\r\n <li className={['list-group-item', footerStyle.footerItem].join(' ')}>\r\n <a href=\"//linkedin.com/noletorious\">\r\n <FontAwesomeIcon icon={faLinkedin} size=\"lg\"/> \r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </Col>\r\n <Col xs={{span:12}} sm={{span:4}}>\r\n <div className={['d-flex', 'align-items-center','justify-content-center'].join(' ')}>\r\n <p className={['mb-0','text-white'].join(' ')}>Get in touch? <a href=\"mailto:[email protected]\">Email</a> is a quick way.</p>\r\n </div>\r\n </Col>\r\n <Col xs={{span:12}} sm={{span:4}}>\r\n <div className={['d-flex', 'align-items-center','justify-content-center'].join(' ')}>\r\n <h6 className={['mb-0','text-white','text-mute'].join(' ')}>\r\n {data ?\r\n data.name + \", OR \" + Math.round(data.main.temp)+\"°F\" \r\n : 'Loading weather data...'}\r\n </h6>\r\n <img src={data ? \"http://openweathermap.org/img/w/\" + data.weather[0].icon + \".png\" : null} alt=\"weather icon\" style={{width:'30px',marginBottom:'0'}}/>\r\n </div>\r\n </Col>\r\n </Row>\r\n </Container>\r\n </footer>\r\n )\r\n}\r\n\r\nexport default Footer\r\n","/**\r\n * Layout component that queries for data\r\n * with Gatsby's useStaticQuery component\r\n *\r\n * See: https://www.gatsbyjs.org/docs/use-static-query/\r\n */\r\n\r\nimport React,{Component} from \"react\"\r\nimport PropTypes from \"prop-types\"\r\n\r\nimport Navigation from \"../../components/navigation\"\r\nimport HomePageSection from \"../../components/homePageSection\"\r\nimport Footer from \"../../components/footer\"\r\nimport SEO from '../../components/seo'\r\nimport { Spring } from 'react-spring/renderprops'\r\nimport { TransitionState } from 'gatsby-plugin-transition-link'\r\n\r\nimport \"bootstrap/dist/css/bootstrap.css\"\r\n\r\n\r\nclass Layout extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n checkIsHomePage: this.props.page ? true : false\r\n };\r\n }\r\n\r\n render(){\r\n return (\r\n <>\r\n <SEO title=\"Noel Torres Portfolio\"/>\r\n <TransitionState>\r\n {({ transitionStatus }) => {\r\n const mount = [ 'entering','entered'].includes(transitionStatus)\r\n const exitStatus = [ 'exiting','exited'].includes(transitionStatus)\r\n const transitionStatusPop = transitionStatus === 'POP' ? true : false\r\n return (\r\n <Spring\r\n from={{\r\n opacity: mount ? 0 : 0,\r\n transform: `translateY(${exitStatus ? '10px' : 0})`\r\n }}\r\n to={{\r\n opacity: mount || transitionStatusPop ? 1 : 0,\r\n transform: `translateY(${mount ? 0 : '10px'})`\r\n }}\r\n >\r\n {props =>\r\n <div> \r\n {this.state.checkIsHomePage ? \r\n <div className='vh-100 d-flex flex-column'>\r\n <Navigation isHome = {this.state.checkIsHomePage}/>\r\n <HomePageSection style={props} />\r\n </div>\r\n : <Navigation isHome = {this.state.checkIsHomePage}/>\r\n }\r\n <main className={['d-flex','flex-column'].join(' ')} style={props} >\r\n {this.props.children}\r\n </main>\r\n </div>\r\n }\r\n </Spring>\r\n )\r\n }}\r\n </TransitionState>\r\n <Footer />\r\n </>\r\n )\r\n }\r\n}\r\n\r\nLayout.propTypes = {\r\n children: PropTypes.node.isRequired,\r\n}\r\n\r\nexport default Layout\r\n","module.exports = __webpack_public_path__ + \"static/home-animation-a505995e4e4ff5486735f33614dfbce3.mp4\";","module.exports = __webpack_public_path__ + \"static/home-animation-944a7e972d037f0ab3343f1b85f9da62.webm\";","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar logDeprecationNotice = function logDeprecationNotice(prop, replacement) {\n if (process.env.NODE_ENV === \"production\") {\n return;\n }\n\n console.log(\"\\n The \\\"\" + prop + \"\\\" prop is now deprecated and will be removed in the next major version\\n of \\\"gatsby-image\\\".\\n \");\n\n if (replacement) {\n console.log(\"Please use \" + replacement + \" instead of \\\"\" + prop + \"\\\".\");\n }\n}; // Handle legacy props during their deprecation phase\n\n\nvar convertProps = function convertProps(props) {\n var convertedProps = (0, _extends2.default)({}, props);\n var resolutions = convertedProps.resolutions,\n sizes = convertedProps.sizes,\n critical = convertedProps.critical;\n\n if (resolutions) {\n convertedProps.fixed = resolutions;\n delete convertedProps.resolutions;\n }\n\n if (sizes) {\n convertedProps.fluid = sizes;\n delete convertedProps.sizes;\n }\n\n if (critical) {\n logDeprecationNotice(\"critical\", \"the native \\\"loading\\\" attribute\");\n convertedProps.loading = \"eager\";\n } // convert fluid & fixed to arrays so we only have to work with arrays\n\n\n if (convertedProps.fluid) {\n convertedProps.fluid = groupByMedia([].concat(convertedProps.fluid));\n }\n\n if (convertedProps.fixed) {\n convertedProps.fixed = groupByMedia([].concat(convertedProps.fixed));\n }\n\n return convertedProps;\n};\n/**\n * Find the source of an image to use as a key in the image cache.\n * Use `the first image in either `fixed` or `fluid`\n * @param {{fluid: {src: string}[], fixed: {src: string}[]}} args\n * @return {string}\n */\n\n\nvar getImageSrcKey = function getImageSrcKey(_ref) {\n var fluid = _ref.fluid,\n fixed = _ref.fixed;\n var data = fluid && fluid[0] || fixed && fixed[0];\n return data.src;\n}; // Cache if we've seen an image before so we don't bother with\n// lazy-loading & fading in on subsequent mounts.\n\n\nvar imageCache = Object.create({});\n\nvar inImageCache = function inImageCache(props) {\n var convertedProps = convertProps(props); // Find src\n\n var src = getImageSrcKey(convertedProps);\n return imageCache[src] || false;\n};\n\nvar activateCacheForImage = function activateCacheForImage(props) {\n var convertedProps = convertProps(props); // Find src\n\n var src = getImageSrcKey(convertedProps);\n imageCache[src] = true;\n}; // Native lazy-loading support: https://addyosmani.com/blog/lazy-loading/\n\n\nvar hasNativeLazyLoadSupport = typeof HTMLImageElement !== \"undefined\" && \"loading\" in HTMLImageElement.prototype;\nvar isBrowser = typeof window !== \"undefined\";\nvar hasIOSupport = isBrowser && window.IntersectionObserver;\nvar io;\nvar listeners = new WeakMap();\n\nfunction getIO() {\n if (typeof io === \"undefined\" && typeof window !== \"undefined\" && window.IntersectionObserver) {\n io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (listeners.has(entry.target)) {\n var cb = listeners.get(entry.target); // Edge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(entry.target);\n listeners.delete(entry.target);\n cb();\n }\n }\n });\n }, {\n rootMargin: \"200px\"\n });\n }\n\n return io;\n}\n\nfunction generateImageSources(imageVariants) {\n return imageVariants.map(function (_ref2) {\n var src = _ref2.src,\n srcSet = _ref2.srcSet,\n srcSetWebp = _ref2.srcSetWebp,\n media = _ref2.media,\n sizes = _ref2.sizes;\n return _react.default.createElement(_react.default.Fragment, {\n key: src\n }, srcSetWebp && _react.default.createElement(\"source\", {\n type: \"image/webp\",\n media: media,\n srcSet: srcSetWebp,\n sizes: sizes\n }), _react.default.createElement(\"source\", {\n media: media,\n srcSet: srcSet,\n sizes: sizes\n }));\n });\n} // Return an array ordered by elements having a media prop, does not use\n// native sort, as a stable sort is not guaranteed by all browsers/versions\n\n\nfunction groupByMedia(imageVariants) {\n var withMedia = [];\n var without = [];\n imageVariants.forEach(function (variant) {\n return (variant.media ? withMedia : without).push(variant);\n });\n\n if (without.length > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"We've found \" + without.length + \" sources without a media property. They might be ignored by the browser, see: https://www.gatsbyjs.org/packages/gatsby-image/#art-directing-multiple-images\");\n }\n\n return withMedia.concat(without);\n}\n\nfunction generateTracedSVGSources(imageVariants) {\n return imageVariants.map(function (_ref3) {\n var src = _ref3.src,\n media = _ref3.media,\n tracedSVG = _ref3.tracedSVG;\n return _react.default.createElement(\"source\", {\n key: src,\n media: media,\n srcSet: tracedSVG\n });\n });\n}\n\nfunction generateBase64Sources(imageVariants) {\n return imageVariants.map(function (_ref4) {\n var src = _ref4.src,\n media = _ref4.media,\n base64 = _ref4.base64;\n return _react.default.createElement(\"source\", {\n key: src,\n media: media,\n srcSet: base64\n });\n });\n}\n\nfunction generateNoscriptSource(_ref5, isWebp) {\n var srcSet = _ref5.srcSet,\n srcSetWebp = _ref5.srcSetWebp,\n media = _ref5.media,\n sizes = _ref5.sizes;\n var src = isWebp ? srcSetWebp : srcSet;\n var mediaAttr = media ? \"media=\\\"\" + media + \"\\\" \" : \"\";\n var typeAttr = isWebp ? \"type='image/webp' \" : \"\";\n var sizesAttr = sizes ? \"sizes=\\\"\" + sizes + \"\\\" \" : \"\";\n return \"<source \" + typeAttr + mediaAttr + \"srcset=\\\"\" + src + \"\\\" \" + sizesAttr + \"/>\";\n}\n\nfunction generateNoscriptSources(imageVariants) {\n return imageVariants.map(function (variant) {\n return (variant.srcSetWebp ? generateNoscriptSource(variant, true) : \"\") + generateNoscriptSource(variant);\n }).join(\"\");\n}\n\nvar listenToIntersections = function listenToIntersections(el, cb) {\n var observer = getIO();\n\n if (observer) {\n observer.observe(el);\n listeners.set(el, cb);\n }\n\n return function () {\n observer.unobserve(el);\n listeners.delete(el);\n };\n};\n\nvar noscriptImg = function noscriptImg(props) {\n // Check if prop exists before adding each attribute to the string output below to prevent\n // HTML validation issues caused by empty values like width=\"\" and height=\"\"\n var src = props.src ? \"src=\\\"\" + props.src + \"\\\" \" : \"src=\\\"\\\" \"; // required attribute\n\n var sizes = props.sizes ? \"sizes=\\\"\" + props.sizes + \"\\\" \" : \"\";\n var srcSet = props.srcSet ? \"srcset=\\\"\" + props.srcSet + \"\\\" \" : \"\";\n var title = props.title ? \"title=\\\"\" + props.title + \"\\\" \" : \"\";\n var alt = props.alt ? \"alt=\\\"\" + props.alt + \"\\\" \" : \"alt=\\\"\\\" \"; // required attribute\n\n var width = props.width ? \"width=\\\"\" + props.width + \"\\\" \" : \"\";\n var height = props.height ? \"height=\\\"\" + props.height + \"\\\" \" : \"\";\n var crossOrigin = props.crossOrigin ? \"crossorigin=\\\"\" + props.crossOrigin + \"\\\" \" : \"\";\n var loading = props.loading ? \"loading=\\\"\" + props.loading + \"\\\" \" : \"\";\n var draggable = props.draggable ? \"draggable=\\\"\" + props.draggable + \"\\\" \" : \"\";\n var sources = generateNoscriptSources(props.imageVariants);\n return \"<picture>\" + sources + \"<img \" + loading + width + height + sizes + srcSet + src + alt + title + crossOrigin + draggable + \"style=\\\"position:absolute;top:0;left:0;opacity:1;width:100%;height:100%;object-fit:cover;object-position:center\\\"/></picture>\";\n}; // Earlier versions of gatsby-image during the 2.x cycle did not wrap\n// the `Img` component in a `picture` element. This maintains compatibility\n// until a breaking change can be introduced in the next major release\n\n\nvar Placeholder = function Placeholder(_ref6) {\n var src = _ref6.src,\n imageVariants = _ref6.imageVariants,\n generateSources = _ref6.generateSources,\n spreadProps = _ref6.spreadProps;\n\n var baseImage = _react.default.createElement(Img, (0, _extends2.default)({\n src: src\n }, spreadProps));\n\n return imageVariants.length > 1 ? _react.default.createElement(\"picture\", null, generateSources(imageVariants), baseImage) : baseImage;\n};\n\nvar Img = _react.default.forwardRef(function (props, ref) {\n var sizes = props.sizes,\n srcSet = props.srcSet,\n src = props.src,\n style = props.style,\n onLoad = props.onLoad,\n onError = props.onError,\n loading = props.loading,\n draggable = props.draggable,\n otherProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"sizes\", \"srcSet\", \"src\", \"style\", \"onLoad\", \"onError\", \"loading\", \"draggable\"]);\n return _react.default.createElement(\"img\", (0, _extends2.default)({\n sizes: sizes,\n srcSet: srcSet,\n src: src\n }, otherProps, {\n onLoad: onLoad,\n onError: onError,\n ref: ref,\n loading: loading,\n draggable: draggable,\n style: (0, _extends2.default)({\n position: \"absolute\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n objectPosition: \"center\"\n }, style)\n }));\n});\n\nImg.propTypes = {\n style: _propTypes.default.object,\n onError: _propTypes.default.func,\n onLoad: _propTypes.default.func\n};\n\nvar Image =\n/*#__PURE__*/\nfunction (_React$Component) {\n (0, _inheritsLoose2.default)(Image, _React$Component);\n\n function Image(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // If this image has already been loaded before then we can assume it's\n // already in the browser cache so it's cheap to just show directly.\n\n _this.seenBefore = isBrowser && inImageCache(props);\n _this.addNoScript = !(props.critical && !props.fadeIn);\n _this.useIOSupport = !hasNativeLazyLoadSupport && hasIOSupport && !props.critical && !_this.seenBefore;\n var isVisible = props.critical || isBrowser && (hasNativeLazyLoadSupport || !_this.useIOSupport);\n _this.state = {\n isVisible: isVisible,\n imgLoaded: false,\n imgCached: false,\n fadeIn: !_this.seenBefore && props.fadeIn\n };\n _this.imageRef = _react.default.createRef();\n _this.handleImageLoaded = _this.handleImageLoaded.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));\n return _this;\n }\n\n var _proto = Image.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n if (this.state.isVisible && typeof this.props.onStartLoad === \"function\") {\n this.props.onStartLoad({\n wasCached: inImageCache(this.props)\n });\n }\n\n if (this.props.critical) {\n var img = this.imageRef.current;\n\n if (img && img.complete) {\n this.handleImageLoaded();\n }\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this.cleanUpListeners) {\n this.cleanUpListeners();\n }\n }; // Specific to IntersectionObserver based lazy-load support\n\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.useIOSupport && ref) {\n this.cleanUpListeners = listenToIntersections(ref, function () {\n var imageInCache = inImageCache(_this2.props);\n\n if (!_this2.state.isVisible && typeof _this2.props.onStartLoad === \"function\") {\n _this2.props.onStartLoad({\n wasCached: imageInCache\n });\n } // imgCached and imgLoaded must update after isVisible,\n // Once isVisible is true, imageRef becomes accessible, which imgCached needs access to.\n // imgLoaded and imgCached are in a 2nd setState call to be changed together,\n // avoiding initiating unnecessary animation frames from style changes.\n\n\n _this2.setState({\n isVisible: true\n }, function () {\n return _this2.setState({\n imgLoaded: imageInCache,\n // `currentSrc` should be a string, but can be `undefined` in IE,\n // !! operator validates the value is not undefined/null/\"\"\n imgCached: !!_this2.imageRef.current.currentSrc\n });\n });\n });\n }\n };\n\n _proto.handleImageLoaded = function handleImageLoaded() {\n activateCacheForImage(this.props);\n this.setState({\n imgLoaded: true\n });\n\n if (this.props.onLoad) {\n this.props.onLoad();\n }\n };\n\n _proto.render = function render() {\n var _convertProps = convertProps(this.props),\n title = _convertProps.title,\n alt = _convertProps.alt,\n className = _convertProps.className,\n _convertProps$style = _convertProps.style,\n style = _convertProps$style === void 0 ? {} : _convertProps$style,\n _convertProps$imgStyl = _convertProps.imgStyle,\n imgStyle = _convertProps$imgStyl === void 0 ? {} : _convertProps$imgStyl,\n _convertProps$placeho = _convertProps.placeholderStyle,\n placeholderStyle = _convertProps$placeho === void 0 ? {} : _convertProps$placeho,\n placeholderClassName = _convertProps.placeholderClassName,\n fluid = _convertProps.fluid,\n fixed = _convertProps.fixed,\n backgroundColor = _convertProps.backgroundColor,\n durationFadeIn = _convertProps.durationFadeIn,\n Tag = _convertProps.Tag,\n itemProp = _convertProps.itemProp,\n loading = _convertProps.loading,\n draggable = _convertProps.draggable;\n\n var shouldReveal = this.state.fadeIn === false || this.state.imgLoaded;\n var shouldFadeIn = this.state.fadeIn === true && !this.state.imgCached;\n var imageStyle = (0, _extends2.default)({\n opacity: shouldReveal ? 1 : 0,\n transition: shouldFadeIn ? \"opacity \" + durationFadeIn + \"ms\" : \"none\"\n }, imgStyle);\n var bgColor = typeof backgroundColor === \"boolean\" ? \"lightgray\" : backgroundColor;\n var delayHideStyle = {\n transitionDelay: durationFadeIn + \"ms\"\n };\n var imagePlaceholderStyle = (0, _extends2.default)({\n opacity: this.state.imgLoaded ? 0 : 1\n }, shouldFadeIn && delayHideStyle, imgStyle, placeholderStyle);\n var placeholderImageProps = {\n title: title,\n alt: !this.state.isVisible ? alt : \"\",\n style: imagePlaceholderStyle,\n className: placeholderClassName\n };\n\n if (fluid) {\n var imageVariants = fluid;\n var image = imageVariants[0];\n return _react.default.createElement(Tag, {\n className: (className ? className : \"\") + \" gatsby-image-wrapper\",\n style: (0, _extends2.default)({\n position: \"relative\",\n overflow: \"hidden\"\n }, style),\n ref: this.handleRef,\n key: \"fluid-\" + JSON.stringify(image.srcSet)\n }, _react.default.createElement(Tag, {\n style: {\n width: \"100%\",\n paddingBottom: 100 / image.aspectRatio + \"%\"\n }\n }), bgColor && _react.default.createElement(Tag, {\n title: title,\n style: (0, _extends2.default)({\n backgroundColor: bgColor,\n position: \"absolute\",\n top: 0,\n bottom: 0,\n opacity: !this.state.imgLoaded ? 1 : 0,\n right: 0,\n left: 0\n }, shouldFadeIn && delayHideStyle)\n }), image.base64 && _react.default.createElement(Placeholder, {\n src: image.base64,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateBase64Sources\n }), image.tracedSVG && _react.default.createElement(Placeholder, {\n src: image.tracedSVG,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateTracedSVGSources\n }), this.state.isVisible && _react.default.createElement(\"picture\", null, generateImageSources(imageVariants), _react.default.createElement(Img, {\n alt: alt,\n title: title,\n sizes: image.sizes,\n src: image.src,\n crossOrigin: this.props.crossOrigin,\n srcSet: image.srcSet,\n style: imageStyle,\n ref: this.imageRef,\n onLoad: this.handleImageLoaded,\n onError: this.props.onError,\n itemProp: itemProp,\n loading: loading,\n draggable: draggable\n })), this.addNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title,\n loading: loading\n }, image, {\n imageVariants: imageVariants\n }))\n }\n }));\n }\n\n if (fixed) {\n var _imageVariants = fixed;\n var _image = _imageVariants[0];\n var divStyle = (0, _extends2.default)({\n position: \"relative\",\n overflow: \"hidden\",\n display: \"inline-block\",\n width: _image.width,\n height: _image.height\n }, style);\n\n if (style.display === \"inherit\") {\n delete divStyle.display;\n }\n\n return _react.default.createElement(Tag, {\n className: (className ? className : \"\") + \" gatsby-image-wrapper\",\n style: divStyle,\n ref: this.handleRef,\n key: \"fixed-\" + JSON.stringify(_image.srcSet)\n }, bgColor && _react.default.createElement(Tag, {\n title: title,\n style: (0, _extends2.default)({\n backgroundColor: bgColor,\n width: _image.width,\n opacity: !this.state.imgLoaded ? 1 : 0,\n height: _image.height\n }, shouldFadeIn && delayHideStyle)\n }), _image.base64 && _react.default.createElement(Placeholder, {\n src: _image.base64,\n spreadProps: placeholderImageProps,\n imageVariants: _imageVariants,\n generateSources: generateBase64Sources\n }), _image.tracedSVG && _react.default.createElement(Placeholder, {\n src: _image.tracedSVG,\n spreadProps: placeholderImageProps,\n imageVariants: _imageVariants,\n generateSources: generateTracedSVGSources\n }), this.state.isVisible && _react.default.createElement(\"picture\", null, generateImageSources(_imageVariants), _react.default.createElement(Img, {\n alt: alt,\n title: title,\n width: _image.width,\n height: _image.height,\n sizes: _image.sizes,\n src: _image.src,\n crossOrigin: this.props.crossOrigin,\n srcSet: _image.srcSet,\n style: imageStyle,\n ref: this.imageRef,\n onLoad: this.handleImageLoaded,\n onError: this.props.onError,\n itemProp: itemProp,\n loading: loading,\n draggable: draggable\n })), this.addNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title,\n loading: loading\n }, _image, {\n imageVariants: _imageVariants\n }))\n }\n }));\n }\n\n return null;\n };\n\n return Image;\n}(_react.default.Component);\n\nImage.defaultProps = {\n fadeIn: true,\n durationFadeIn: 500,\n alt: \"\",\n Tag: \"div\",\n // We set it to `lazy` by default because it's best to default to a performant\n // setting and let the user \"opt out\" to `eager`\n loading: \"lazy\"\n};\n\nvar fixedObject = _propTypes.default.shape({\n width: _propTypes.default.number.isRequired,\n height: _propTypes.default.number.isRequired,\n src: _propTypes.default.string.isRequired,\n srcSet: _propTypes.default.string.isRequired,\n base64: _propTypes.default.string,\n tracedSVG: _propTypes.default.string,\n srcWebp: _propTypes.default.string,\n srcSetWebp: _propTypes.default.string,\n media: _propTypes.default.string\n});\n\nvar fluidObject = _propTypes.default.shape({\n aspectRatio: _propTypes.default.number.isRequired,\n src: _propTypes.default.string.isRequired,\n srcSet: _propTypes.default.string.isRequired,\n sizes: _propTypes.default.string.isRequired,\n base64: _propTypes.default.string,\n tracedSVG: _propTypes.default.string,\n srcWebp: _propTypes.default.string,\n srcSetWebp: _propTypes.default.string,\n media: _propTypes.default.string\n});\n\nImage.propTypes = {\n resolutions: fixedObject,\n sizes: fluidObject,\n fixed: _propTypes.default.oneOfType([fixedObject, _propTypes.default.arrayOf(fixedObject)]),\n fluid: _propTypes.default.oneOfType([fluidObject, _propTypes.default.arrayOf(fluidObject)]),\n fadeIn: _propTypes.default.bool,\n durationFadeIn: _propTypes.default.number,\n title: _propTypes.default.string,\n alt: _propTypes.default.string,\n className: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object]),\n // Support Glamor's css prop.\n critical: _propTypes.default.bool,\n crossOrigin: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),\n style: _propTypes.default.object,\n imgStyle: _propTypes.default.object,\n placeholderStyle: _propTypes.default.object,\n placeholderClassName: _propTypes.default.string,\n backgroundColor: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),\n onLoad: _propTypes.default.func,\n onError: _propTypes.default.func,\n onStartLoad: _propTypes.default.func,\n Tag: _propTypes.default.string,\n itemProp: _propTypes.default.string,\n loading: _propTypes.default.oneOf([\"auto\", \"lazy\", \"eager\"]),\n draggable: _propTypes.default.bool\n};\nvar _default = Image;\nexports.default = _default;","'use strict';\n// B.2.3.6 String.prototype.fixed()\nrequire('./_string-html')('fixed', function (createHTML) {\n return function fixed() {\n return createHTML(this, 'tt', '', '');\n };\n});\n","var $export = require('./_export');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '</' + tag + '>';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n"],"sourceRoot":""}