-
Notifications
You must be signed in to change notification settings - Fork 0
/
component---src-templates-blog-post-js-10a4ae19b9665aa76db1.js.map
1 lines (1 loc) · 54.2 KB
/
component---src-templates-blog-post-js-10a4ae19b9665aa76db1.js.map
1
{"version":3,"sources":["webpack:///./src/templates/blog-post.js","webpack:///./src/utils/typography.js","webpack:///./.cache/public-page-renderer.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./node_modules/core-js/modules/es6.string.fixed.js","webpack:///./src/components/layout.js","webpack:///./src/components/seo.js","webpack:///./src/components/bio.js","webpack:///./node_modules/core-js/modules/_string-html.js","webpack:///./node_modules/gatsby-image/index.js"],"names":["BlogPostTemplate","render","post","this","props","data","markdownRemark","siteTitle","site","siteMetadata","title","_this$props$pageConte","pageContext","previous","next","react__WEBPACK_IMPORTED_MODULE_1___default","a","createElement","_components_layout__WEBPACK_IMPORTED_MODULE_4__","location","_components_seo__WEBPACK_IMPORTED_MODULE_5__","frontmatter","description","excerpt","style","marginTop","rhythm","marginBottom","Object","assign","scale","display","date","dangerouslySetInnerHTML","__html","html","_components_bio__WEBPACK_IMPORTED_MODULE_3__","flexWrap","justifyContent","listStyle","padding","gatsby__WEBPACK_IMPORTED_MODULE_2__","to","fields","slug","rel","React","Component","pageQuery","__webpack_require__","d","__webpack_exports__","typography__WEBPACK_IMPORTED_MODULE_0__","typography__WEBPACK_IMPORTED_MODULE_0___default","n","typography_theme_wordpress_2016__WEBPACK_IMPORTED_MODULE_1__","typography_theme_wordpress_2016__WEBPACK_IMPORTED_MODULE_1___default","Wordpress2016","overrideThemeStyles","a.gatsby-resp-image-link","boxShadow","googleFonts","typography","Typography","m","module","exports","require","default","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","gatsby_link__WEBPACK_IMPORTED_MODULE_1__","gatsby_link__WEBPACK_IMPORTED_MODULE_1___default","loader","enqueue","createContext","ProdPageRenderer","_ref","pageResources","InternalPageRenderer","json","createHTML","Layout","header","_this$props","children","pathname","textDecoration","color","fontFamily","marginLeft","marginRight","maxWidth","Date","getFullYear","href","SEO","lang","meta","_public_static_d_2417117884_json__WEBPACK_IMPORTED_MODULE_0__","metaDescription","react_helmet__WEBPACK_IMPORTED_MODULE_2___default","htmlAttributes","titleTemplate","name","content","property","author","concat","defaultProps","Bio","_public_static_d_1509195349_json__WEBPACK_IMPORTED_MODULE_1__","_data$site$siteMetada","social","react__WEBPACK_IMPORTED_MODULE_2___default","gatsby_image__WEBPACK_IMPORTED_MODULE_3___default","fixed","avatar","childImageSharp","alt","minWidth","borderRadius","imgStyle","$export","fails","defined","quot","string","tag","attribute","value","S","String","p1","replace","NAME","exec","O","P","F","test","toLowerCase","split","length","_interopRequireDefault","__esModule","io","_inheritsLoose2","_assertThisInitialized2","_objectWithoutPropertiesLoose2","_extends2","_react","_propTypes","convertProps","convertedProps","resolutions","sizes","critical","fluid","loading","groupByMedia","getImageSrcKey","src","imageCache","create","inImageCache","hasNativeLazyLoadSupport","HTMLImageElement","prototype","isBrowser","window","hasIOSupport","IntersectionObserver","listeners","WeakMap","generateImageSources","imageVariants","map","_ref2","srcSet","srcSetWebp","media","Fragment","key","type","withMedia","without","forEach","variant","push","generateTracedSVGSources","_ref3","tracedSVG","generateBase64Sources","_ref4","base64","generateNoscriptSource","_ref5","isWebp","listenToIntersections","el","cb","observer","entries","entry","has","target","get","isIntersecting","intersectionRatio","unobserve","delete","rootMargin","observe","set","noscriptImg","width","height","crossOrigin","draggable","join","Placeholder","_ref6","generateSources","spreadProps","baseImage","Img","forwardRef","ref","onLoad","onError","otherProps","position","top","left","objectFit","objectPosition","propTypes","object","func","Image","_React$Component","_this","call","seenBefore","addNoScript","fadeIn","useIOSupport","isVisible","state","imgLoaded","imgCached","imageRef","createRef","handleImageLoaded","bind","handleRef","_proto","componentDidMount","onStartLoad","wasCached","img","current","complete","componentWillUnmount","cleanUpListeners","_this2","imageInCache","setState","currentSrc","_convertProps","className","_convertProps$style","_convertProps$imgStyl","_convertProps$placeho","placeholderStyle","placeholderClassName","backgroundColor","durationFadeIn","Tag","itemProp","shouldReveal","shouldFadeIn","imageStyle","opacity","transition","bgColor","delayHideStyle","transitionDelay","imagePlaceholderStyle","placeholderImageProps","image","overflow","JSON","stringify","paddingBottom","aspectRatio","bottom","right","_imageVariants","_image","divStyle","fixedObject","shape","number","isRequired","srcWebp","fluidObject","oneOfType","arrayOf","bool","oneOf","_default"],"mappings":"oNAQMA,kLACJC,OAAA,WACE,IAAMC,EAAOC,KAAKC,MAAMC,KAAKC,eACvBC,EAAYJ,KAAKC,MAAMC,KAAKG,KAAKC,aAAaC,MAF7CC,EAGoBR,KAAKC,MAAMQ,YAA9BC,EAHDF,EAGCE,SAAUC,EAHXH,EAGWG,KAElB,OACEC,EAAAC,EAAAC,cAACC,EAAA,EAAD,CAAQC,SAAUhB,KAAKC,MAAMe,SAAUT,MAAOH,GAC5CQ,EAAAC,EAAAC,cAACG,EAAA,EAAD,CACEV,MAAOR,EAAKmB,YAAYX,MACxBY,YAAapB,EAAKmB,YAAYC,aAAepB,EAAKqB,UAEpDR,EAAAC,EAAAC,cAAA,MACEO,MAAO,CACLC,UAAWC,YAAO,GAClBC,aAAc,IAGfzB,EAAKmB,YAAYX,OAEpBK,EAAAC,EAAAC,cAAA,KACEO,MAAKI,OAAAC,OAAA,GACAC,aAAM,IADN,CAEHC,QAAO,QACPJ,aAAcD,YAAO,MAGtBxB,EAAKmB,YAAYW,MAEpBjB,EAAAC,EAAAC,cAAA,OAAKgB,wBAAyB,CAAEC,OAAQhC,EAAKiC,QAC7CpB,EAAAC,EAAAC,cAAA,MACEO,MAAO,CACLG,aAAcD,YAAO,MAGzBX,EAAAC,EAAAC,cAACmB,EAAA,EAAD,MAEArB,EAAAC,EAAAC,cAAA,MACEO,MAAO,CACLO,QAAO,OACPM,SAAQ,OACRC,eAAc,gBACdC,UAAS,OACTC,QAAS,IAGXzB,EAAAC,EAAAC,cAAA,UACGJ,GACCE,EAAAC,EAAAC,cAACwB,EAAA,EAAD,CAAMC,GAAI7B,EAAS8B,OAAOC,KAAMC,IAAI,QAApC,KACKhC,EAASQ,YAAYX,QAI9BK,EAAAC,EAAAC,cAAA,UACGH,GACCC,EAAAC,EAAAC,cAACwB,EAAA,EAAD,CAAMC,GAAI5B,EAAK6B,OAAOC,KAAMC,IAAI,QAC7B/B,EAAKO,YAAYX,MADpB,aAvDiBoC,IAAMC,WAkEtB/C,YAER,IAAMgD,EAAS,+CC5EtBC,EAAAC,EAAAC,EAAA,sBAAAzB,IAAAuB,EAAAC,EAAAC,EAAA,sBAAArB,IAAA,IAAAsB,EAAAH,EAAA,KAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,KAAAO,EAAAP,EAAAK,EAAAC,GAGAE,IAAcC,oBAAsB,WAClC,MAAO,CACLC,2BAA4B,CAC1BC,UAAS,iBAKRH,IAAcI,YAErB,IAAMC,EAAa,IAAIC,IAAWN,KAOnBK,IACFpC,EAASoC,EAAWpC,OACpBI,EAAQgC,EAAWhC,2BCtBhC,IAAsBkC,EAKpBC,EAAOC,SALaF,EAKWG,EAAQ,OALRH,EAAEI,SAAYJ,oCCA/C,IAAAK,EAAApB,EAAA,GAAAqB,EAAArB,EAAAK,EAAAe,GAAAE,EAAAtB,EAAA,IAAAuB,EAAAvB,EAAAK,EAAAiB,GAAAtB,EAAAC,EAAAC,EAAA,sBAAAqB,EAAAxD,IAAAiC,EAAA,KAAAA,EAAA,GAcyBwB,QAAOC,QAEL5B,IAAM6B,cAAc,+ECMhCC,UAjBU,SAAAC,GAAiC,IAA9B1D,EAA8B0D,EAA9B1D,SAAU2D,EAAoBD,EAApBC,cACpC,OAAKA,EAGEhC,IAAM7B,cAAc8D,IAApBnD,OAAAC,OAAA,CACLV,WACA2D,iBACGA,EAAcE,OALV,wCCLX/B,EAAQ,IAARA,CAAwB,iBAAAgC,GACxB,kBACA,OAAAA,EAAA9E,KAAA,iGCCM+E,kLACJjF,OAAA,WAAS,IAGHkF,EAHGC,EAC+BjF,KAAKC,MAAnCe,EADDiE,EACCjE,SAAUT,EADX0E,EACW1E,MAAO2E,EADlBD,EACkBC,SA8CzB,OAzCEF,EAJY,MAGVhE,EAASmE,SAETvE,EAAAC,EAAAC,cAAA,MACEO,MAAKI,OAAAC,OAAA,GACAC,YAAM,KADN,CAEHH,aAAcD,YAAO,KACrBD,UAAW,KAGbV,EAAAC,EAAAC,cAACwB,EAAA,EAAD,CACEjB,MAAO,CACLoC,UAAS,OACT2B,eAAc,OACdC,MAAK,WAEP9C,GAAE,KAEDhC,IAMLK,EAAAC,EAAAC,cAAA,MACEO,MAAO,CACLiE,WAAU,yBACVhE,UAAW,IAGbV,EAAAC,EAAAC,cAACwB,EAAA,EAAD,CACEjB,MAAO,CACLoC,UAAS,OACT2B,eAAc,OACdC,MAAK,WAEP9C,GAAE,KAEDhC,IAMPK,EAAAC,EAAAC,cAAA,OACEO,MAAO,CACLkE,WAAU,OACVC,YAAW,OACXC,SAAUlE,YAAO,IACjBc,QAAYd,YAAO,KAAZ,IAAoBA,YAAO,OAGpCX,EAAAC,EAAAC,cAAA,cAASkE,GACTpE,EAAAC,EAAAC,cAAA,YAAOoE,GACPtE,EAAAC,EAAAC,cAAA,oBACK,IAAI4E,MAAOC,cADhB,mBAGE/E,EAAAC,EAAAC,cAAA,KAAG8E,KAAK,4BAAR,gBA9DWjD,IAAMC,WAqEZmC,uFC9Df,SAASc,EAATnB,GAAiD,IAAlCvD,EAAkCuD,EAAlCvD,YAAa2E,EAAqBpB,EAArBoB,KAAMC,EAAerB,EAAfqB,KAAMxF,EAASmE,EAATnE,MAC9BF,EADuC2F,EAAA9F,KACvCG,KAcF4F,EAAkB9E,GAAed,EAAKC,aAAaa,YAEzD,OACEP,EAAAC,EAAAC,cAACoF,EAAArF,EAAD,CACEsF,eAAgB,CACdL,QAEFvF,MAAOA,EACP6F,cAAa,QAAU/F,EAAKC,aAAaC,MACzCwF,KAAM,CACJ,CACEM,KAAI,cACJC,QAASL,GAEX,CACEM,SAAQ,WACRD,QAAS/F,GAEX,CACEgG,SAAQ,iBACRD,QAASL,GAEX,CACEM,SAAQ,UACRD,QAAO,WAET,CACED,KAAI,eACJC,QAAO,WAET,CACED,KAAI,kBACJC,QAASjG,EAAKC,aAAakG,QAE7B,CACEH,KAAI,gBACJC,QAAS/F,GAEX,CACE8F,KAAI,sBACJC,QAASL,IAEXQ,OAAOV,KAKfF,EAAIa,aAAe,CACjBZ,KAAI,KACJC,KAAM,GACN5E,YAAW,IAUE0E,mNC3BAc,IA/CH,WACV,IAAMzG,EAAI0G,EAAA1G,KADM2G,EAkBW3G,EAAKG,KAAKC,aAA7BkG,EAlBQK,EAkBRL,OAlBQK,EAkBAC,OAChB,OACEC,EAAAlG,EAAAC,cAAA,OACEO,MAAO,CACLO,QAAO,OACPJ,aAAcD,YAAO,OAGvBwF,EAAAlG,EAAAC,cAACkG,EAAAnG,EAAD,CACEoG,MAAO/G,EAAKgH,OAAOC,gBAAgBF,MACnCG,IAAKZ,EACLnF,MAAO,CACLmE,YAAajE,YAAO,IACpBC,aAAc,EACd6F,SAAU,GACVC,aAAY,QAEdC,SAAU,CACRD,aAAY,SAGhBP,EAAAlG,EAAAC,cAAA,SACEiG,EAAAlG,EAAAC,cAAA,cAAS0F,GADX,2FCpDN,IAAAgB,EAAc1E,EAAQ,GACtB2E,EAAY3E,EAAQ,GACpB4E,EAAc5E,EAAQ,IACtB6E,EAAA,KAEA7C,EAAA,SAAA8C,EAAAC,EAAAC,EAAAC,GACA,IAAAC,EAAAC,OAAAP,EAAAE,IACAM,EAAA,IAAAL,EAEA,MADA,KAAAC,IAAAI,GAAA,IAAAJ,EAAA,KAAAG,OAAAF,GAAAI,QAAAR,EAAA,UAA0F,KAC1FO,EAAA,IAAAF,EAAA,KAAAH,EAAA,KAEA/D,EAAAC,QAAA,SAAAqE,EAAAC,GACA,IAAAC,EAAA,GACAA,EAAAF,GAAAC,EAAAvD,GACA0C,IAAAe,EAAAf,EAAAgB,EAAAf,EAAA,WACA,IAAAgB,EAAA,GAAAL,GAAA,KACA,OAAAK,MAAAC,eAAAD,EAAAE,MAAA,KAAAC,OAAA,IACG,SAAAN,04CCfH,IAAIO,EAAyB7E,EAAQ,IAErCD,EAAQ+E,YAAa,EACrB/E,EAAQE,aAAU,EAElB,IA8FI8E,EA9FAC,EAAkBH,EAAuB7E,EAAQ,KAEjDiF,EAA0BJ,EAAuB7E,EAAQ,KAEzDkF,EAAiCL,EAAuB7E,EAAQ,MAEhEmF,EAAYN,EAAuB7E,EAAQ,MAE3CoF,EAASP,EAAuB7E,EAAQ,IAExCqF,EAAaR,EAAuB7E,EAAQ,KAe5CsF,EAAe,SAAsBrJ,GACvC,IAAIsJ,GAAiB,EAAIJ,EAAUlF,SAAS,GAAIhE,GAC5CuJ,EAAcD,EAAeC,YAC7BC,EAAQF,EAAeE,MACvBC,EAAWH,EAAeG,SA0B9B,OAxBIF,IACFD,EAAetC,MAAQuC,SAChBD,EAAeC,aAGpBC,IACFF,EAAeI,MAAQF,SAChBF,EAAeE,OAGpBC,IAEFH,EAAeK,QAAU,SAIvBL,EAAeI,QACjBJ,EAAeI,MAAQE,EAAa,GAAGpD,OAAO8C,EAAeI,SAG3DJ,EAAetC,QACjBsC,EAAetC,MAAQ4C,EAAa,GAAGpD,OAAO8C,EAAetC,SAGxDsC,GAULO,EAAiB,SAAwBpF,GAC3C,IAAIiF,EAAQjF,EAAKiF,MACb1C,EAAQvC,EAAKuC,MAEjB,OADW0C,GAASA,EAAM,IAAM1C,GAASA,EAAM,IACnC8C,KAKVC,EAAavI,OAAOwI,OAAO,IAE3BC,EAAe,SAAsBjK,GACvC,IAAIsJ,EAAiBD,EAAarJ,GAE9B8J,EAAMD,EAAeP,GACzB,OAAOS,EAAWD,KAAQ,GAWxBI,EAAuD,oBAArBC,kBAAoC,YAAaA,iBAAiBC,UACpGC,EAA8B,oBAAXC,OACnBC,EAAeF,GAAaC,OAAOE,qBAEnCC,EAAY,IAAIC,QAwBpB,SAASC,EAAqBC,GAC5B,OAAOA,EAAcC,IAAI,SAAUC,GACjC,IAAIhB,EAAMgB,EAAMhB,IACZiB,EAASD,EAAMC,OACfC,EAAaF,EAAME,WACnBC,EAAQH,EAAMG,MACdzB,EAAQsB,EAAMtB,MAClB,OAAOL,EAAOnF,QAAQnD,cAAcsI,EAAOnF,QAAQkH,SAAU,CAC3DC,IAAKrB,GACJkB,GAAc7B,EAAOnF,QAAQnD,cAAc,SAAU,CACtDuK,KAAM,aACNH,MAAOA,EACPF,OAAQC,EACRxB,MAAOA,IACLL,EAAOnF,QAAQnD,cAAc,SAAU,CACzCoK,MAAOA,EACPF,OAAQA,EACRvB,MAAOA,OAOb,SAASI,EAAagB,GACpB,IAAIS,EAAY,GACZC,EAAU,GASd,OARAV,EAAcW,QAAQ,SAAUC,GAC9B,OAAQA,EAAQP,MAAQI,EAAYC,GAASG,KAAKD,KAO7CH,EAAU7E,OAAO8E,GAG1B,SAASI,EAAyBd,GAChC,OAAOA,EAAcC,IAAI,SAAUc,GACjC,IAAI7B,EAAM6B,EAAM7B,IACZmB,EAAQU,EAAMV,MACdW,EAAYD,EAAMC,UACtB,OAAOzC,EAAOnF,QAAQnD,cAAc,SAAU,CAC5CsK,IAAKrB,EACLmB,MAAOA,EACPF,OAAQa,MAKd,SAASC,EAAsBjB,GAC7B,OAAOA,EAAcC,IAAI,SAAUiB,GACjC,IAAIhC,EAAMgC,EAAMhC,IACZmB,EAAQa,EAAMb,MACdc,EAASD,EAAMC,OACnB,OAAO5C,EAAOnF,QAAQnD,cAAc,SAAU,CAC5CsK,IAAKrB,EACLmB,MAAOA,EACPF,OAAQgB,MAKd,SAASC,EAAuBC,EAAOC,GACrC,IAAInB,EAASkB,EAAMlB,OACfC,EAAaiB,EAAMjB,WACnBC,EAAQgB,EAAMhB,MACdzB,EAAQyC,EAAMzC,MAKlB,MAAO,YAFQ0C,EAAS,qBAAuB,KAD/BjB,EAAQ,UAAaA,EAAQ,KAAQ,IAGV,YAJjCiB,EAASlB,EAAaD,GAI+B,MAD/CvB,EAAQ,UAAaA,EAAQ,KAAQ,IAC8B,KASrF,IAAI2C,EAAwB,SAA+BC,EAAIC,GAC7D,IAAIC,QAxGc,IAAPxD,GAAwC,oBAAXwB,QAA0BA,OAAOE,uBACvE1B,EAAK,IAAIwB,OAAOE,qBAAqB,SAAU+B,GAC7CA,EAAQhB,QAAQ,SAAUiB,GACxB,GAAI/B,EAAUgC,IAAID,EAAME,QAAS,CAC/B,IAAIL,EAAK5B,EAAUkC,IAAIH,EAAME,SAEzBF,EAAMI,gBAAkBJ,EAAMK,kBAAoB,KACpD/D,EAAGgE,UAAUN,EAAME,QACnBjC,EAAUsC,OAAOP,EAAME,QACvBL,SAIL,CACDW,WAAY,WAITlE,GA6FP,OALIwD,IACFA,EAASW,QAAQb,GACjB3B,EAAUyC,IAAId,EAAIC,IAGb,WACLC,EAASQ,UAAUV,GACnB3B,EAAUsC,OAAOX,KAIjBe,EAAc,SAAqBnN,GAGrC,IAAI8J,EAAM9J,EAAM8J,IAAM,QAAW9J,EAAM8J,IAAM,KAAQ,UAEjDN,EAAQxJ,EAAMwJ,MAAQ,UAAaxJ,EAAMwJ,MAAQ,KAAQ,GACzDuB,EAAS/K,EAAM+K,OAAS,WAAc/K,EAAM+K,OAAS,KAAQ,GAC7DzK,EAAQN,EAAMM,MAAQ,UAAaN,EAAMM,MAAQ,KAAQ,GACzD6G,EAAMnH,EAAMmH,IAAM,QAAWnH,EAAMmH,IAAM,KAAQ,UAEjDiG,EAAQpN,EAAMoN,MAAQ,UAAapN,EAAMoN,MAAQ,KAAQ,GACzDC,EAASrN,EAAMqN,OAAS,WAAcrN,EAAMqN,OAAS,KAAQ,GAC7DC,EAActN,EAAMsN,YAAc,gBAAmBtN,EAAMsN,YAAc,KAAQ,GACjF3D,EAAU3J,EAAM2J,QAAU,YAAe3J,EAAM2J,QAAU,KAAQ,GACjE4D,EAAYvN,EAAMuN,UAAY,cAAiBvN,EAAMuN,UAAY,KAAQ,GAE7E,MAAO,YAD+BvN,EAAM4K,cAlCvBC,IAAI,SAAUW,GACjC,OAAQA,EAAQR,WAAagB,EAAuBR,GAAS,GAAQ,IAAMQ,EAAuBR,KACjGgC,KAAK,IAiCuB,QAAU7D,EAAUyD,EAAQC,EAAS7D,EAAQuB,EAASjB,EAAM3C,EAAM7G,EAAQgN,EAAcC,EAAY,+HAMjIE,EAAc,SAAqBC,GACrC,IAAI5D,EAAM4D,EAAM5D,IACZc,EAAgB8C,EAAM9C,cACtB+C,EAAkBD,EAAMC,gBACxBC,EAAcF,EAAME,YAEpBC,EAAY1E,EAAOnF,QAAQnD,cAAciN,GAAK,EAAI5E,EAAUlF,SAAS,CACvE8F,IAAKA,GACJ8D,IAEH,OAAOhD,EAAcjC,OAAS,EAAIQ,EAAOnF,QAAQnD,cAAc,UAAW,KAAM8M,EAAgB/C,GAAgBiD,GAAaA,GAG3HC,EAAM3E,EAAOnF,QAAQ+J,WAAW,SAAU/N,EAAOgO,GACnD,IAAIxE,EAAQxJ,EAAMwJ,MACduB,EAAS/K,EAAM+K,OACfjB,EAAM9J,EAAM8J,IACZ1I,EAAQpB,EAAMoB,MACd6M,EAASjO,EAAMiO,OACfC,EAAUlO,EAAMkO,QAChBvE,EAAU3J,EAAM2J,QAChB4D,EAAYvN,EAAMuN,UAClBY,GAAa,EAAIlF,EAA+BjF,SAAShE,EAAO,CAAC,QAAS,SAAU,MAAO,QAAS,SAAU,UAAW,UAAW,cACxI,OAAOmJ,EAAOnF,QAAQnD,cAAc,OAAO,EAAIqI,EAAUlF,SAAS,CAChEwF,MAAOA,EACPuB,OAAQA,EACRjB,IAAKA,GACJqE,EAAY,CACbF,OAAQA,EACRC,QAASA,EACTF,IAAKA,EACLrE,QAASA,EACT4D,UAAWA,EACXnM,OAAO,EAAI8H,EAAUlF,SAAS,CAC5BoK,SAAU,WACVC,IAAK,EACLC,KAAM,EACNlB,MAAO,OACPC,OAAQ,OACRkB,UAAW,QACXC,eAAgB,UACfpN,QAIP0M,EAAIW,UAAY,CACdrN,MAAOgI,EAAWpF,QAAQ0K,OAC1BR,QAAS9E,EAAWpF,QAAQ2K,KAC5BV,OAAQ7E,EAAWpF,QAAQ2K,MAG7B,IAAIC,EAEJ,SAAUC,GAGR,SAASD,EAAM5O,GACb,IAAI8O,GAEJA,EAAQD,EAAiBE,KAAKhP,KAAMC,IAAUD,MAGxCiP,WAAa3E,GAAaJ,EAAajK,GAC7C8O,EAAMG,cAAgBjP,EAAMyJ,WAAazJ,EAAMkP,QAC/CJ,EAAMK,cAAgBjF,GAA4BK,IAAiBvK,EAAMyJ,WAAaqF,EAAME,WAC5F,IAAII,EAAYpP,EAAMyJ,UAAYY,IAAcH,IAA6B4E,EAAMK,cAUnF,OATAL,EAAMO,MAAQ,CACZD,UAAWA,EACXE,WAAW,EACXC,WAAW,EACXL,QAASJ,EAAME,YAAchP,EAAMkP,QAErCJ,EAAMU,SAAWrG,EAAOnF,QAAQyL,YAChCX,EAAMY,kBAAoBZ,EAAMY,kBAAkBC,MAAK,EAAI3G,EAAwBhF,UAAS,EAAIgF,EAAwBhF,SAAS8K,KACjIA,EAAMc,UAAYd,EAAMc,UAAUD,MAAK,EAAI3G,EAAwBhF,UAAS,EAAIgF,EAAwBhF,SAAS8K,KAC1GA,GArBT,EAAI/F,EAAgB/E,SAAS4K,EAAOC,GAwBpC,IAAIgB,EAASjB,EAAMxE,UAkPnB,OAhPAyF,EAAOC,kBAAoB,WAOzB,GANI/P,KAAKsP,MAAMD,WAA+C,mBAA3BrP,KAAKC,MAAM+P,aAC5ChQ,KAAKC,MAAM+P,YAAY,CACrBC,UAAW/F,EAAalK,KAAKC,SAI7BD,KAAKC,MAAMyJ,SAAU,CACvB,IAAIwG,EAAMlQ,KAAKyP,SAASU,QAEpBD,GAAOA,EAAIE,UACbpQ,KAAK2P,sBAKXG,EAAOO,qBAAuB,WACxBrQ,KAAKsQ,kBACPtQ,KAAKsQ,oBAKTR,EAAOD,UAAY,SAAmB5B,GACpC,IAAIsC,EAASvQ,KAETA,KAAKoP,cAAgBnB,IACvBjO,KAAKsQ,iBAAmBlE,EAAsB6B,EAAK,WACjD,IAAIuC,EAAetG,EAAaqG,EAAOtQ,OAElCsQ,EAAOjB,MAAMD,WAAiD,mBAA7BkB,EAAOtQ,MAAM+P,aACjDO,EAAOtQ,MAAM+P,YAAY,CACvBC,UAAWO,IAQfD,EAAOE,SAAS,CACdpB,WAAW,GACV,WACD,OAAOkB,EAAOE,SAAS,CACrBlB,UAAWiB,EAGXhB,YAAae,EAAOd,SAASU,QAAQO,mBAO/CZ,EAAOH,kBAAoB,WAhSD,IAA+B1P,EACrDsJ,EAEAQ,EAHqD9J,EAiSjCD,KAAKC,MAhSzBsJ,EAAiBD,EAAarJ,GAE9B8J,EAAMD,EAAeP,GACzBS,EAAWD,IAAO,EA8RhB/J,KAAKyQ,SAAS,CACZlB,WAAW,IAGTvP,KAAKC,MAAMiO,QACblO,KAAKC,MAAMiO,UAIf4B,EAAOhQ,OAAS,WACd,IAAI6Q,EAAgBrH,EAAatJ,KAAKC,OAClCM,EAAQoQ,EAAcpQ,MACtB6G,EAAMuJ,EAAcvJ,IACpBwJ,EAAYD,EAAcC,UAC1BC,EAAsBF,EAActP,MACpCA,OAAgC,IAAxBwP,EAAiC,GAAKA,EAC9CC,EAAwBH,EAAcpJ,SACtCA,OAAqC,IAA1BuJ,EAAmC,GAAKA,EACnDC,EAAwBJ,EAAcK,iBACtCA,OAA6C,IAA1BD,EAAmC,GAAKA,EAC3DE,EAAuBN,EAAcM,qBACrCtH,EAAQgH,EAAchH,MACtB1C,EAAQ0J,EAAc1J,MACtBiK,EAAkBP,EAAcO,gBAChCC,EAAiBR,EAAcQ,eAC/BC,EAAMT,EAAcS,IACpBC,EAAWV,EAAcU,SACzBzH,EAAU+G,EAAc/G,QACxB4D,EAAYmD,EAAcnD,UAE1B8D,GAAqC,IAAtBtR,KAAKsP,MAAMH,QAAoBnP,KAAKsP,MAAMC,UACzDgC,GAAqC,IAAtBvR,KAAKsP,MAAMH,SAAoBnP,KAAKsP,MAAME,UACzDgC,GAAa,EAAIrI,EAAUlF,SAAS,CACtCwN,QAASH,EAAe,EAAI,EAC5BI,WAAYH,EAAe,WAAaJ,EAAiB,KAAO,QAC/D5J,GACCoK,EAAqC,kBAApBT,EAAgC,YAAcA,EAC/DU,EAAiB,CACnBC,gBAAiBV,EAAiB,MAEhCW,GAAwB,EAAI3I,EAAUlF,SAAS,CACjDwN,QAASzR,KAAKsP,MAAMC,UAAY,EAAI,GACnCgC,GAAgBK,EAAgBrK,EAAUyJ,GACzCe,EAAwB,CAC1BxR,MAAOA,EACP6G,IAAMpH,KAAKsP,MAAMD,UAAkB,GAANjI,EAC7B/F,MAAOyQ,EACPlB,UAAWK,GAGb,GAAItH,EAAO,CACT,IAAIkB,EAAgBlB,EAChBqI,EAAQnH,EAAc,GAC1B,OAAOzB,EAAOnF,QAAQnD,cAAcsQ,EAAK,CACvCR,WAAYA,GAAwB,IAAM,wBAC1CvP,OAAO,EAAI8H,EAAUlF,SAAS,CAC5BoK,SAAU,WACV4D,SAAU,UACT5Q,GACH4M,IAAKjO,KAAK6P,UACVzE,IAAK,SAAW8G,KAAKC,UAAUH,EAAMhH,SACpC5B,EAAOnF,QAAQnD,cAAcsQ,EAAK,CACnC/P,MAAO,CACLgM,MAAO,OACP+E,cAAe,IAAMJ,EAAMK,YAAc,OAEzCV,GAAWvI,EAAOnF,QAAQnD,cAAcsQ,EAAK,CAC/C7Q,MAAOA,EACPc,OAAO,EAAI8H,EAAUlF,SAAS,CAC5BiN,gBAAiBS,EACjBtD,SAAU,WACVC,IAAK,EACLgE,OAAQ,EACRb,QAAUzR,KAAKsP,MAAMC,UAAgB,EAAJ,EACjCgD,MAAO,EACPhE,KAAM,GACLgD,GAAgBK,KACjBI,EAAMhG,QAAU5C,EAAOnF,QAAQnD,cAAc4M,EAAa,CAC5D3D,IAAKiI,EAAMhG,OACX6B,YAAakE,EACblH,cAAeA,EACf+C,gBAAiB9B,IACfkG,EAAMnG,WAAazC,EAAOnF,QAAQnD,cAAc4M,EAAa,CAC/D3D,IAAKiI,EAAMnG,UACXgC,YAAakE,EACblH,cAAeA,EACf+C,gBAAiBjC,IACf3L,KAAKsP,MAAMD,WAAajG,EAAOnF,QAAQnD,cAAc,UAAW,KAAM8J,EAAqBC,GAAgBzB,EAAOnF,QAAQnD,cAAciN,EAAK,CAC/I3G,IAAKA,EACL7G,MAAOA,EACPkJ,MAAOuI,EAAMvI,MACbM,IAAKiI,EAAMjI,IACXwD,YAAavN,KAAKC,MAAMsN,YACxBvC,OAAQgH,EAAMhH,OACd3J,MAAOmQ,EACPvD,IAAKjO,KAAKyP,SACVvB,OAAQlO,KAAK2P,kBACbxB,QAASnO,KAAKC,MAAMkO,QACpBkD,SAAUA,EACVzH,QAASA,EACT4D,UAAWA,KACRxN,KAAKkP,aAAe9F,EAAOnF,QAAQnD,cAAc,WAAY,CAChEgB,wBAAyB,CACvBC,OAAQqL,GAAY,EAAIjE,EAAUlF,SAAS,CACzCmD,IAAKA,EACL7G,MAAOA,EACPqJ,QAASA,GACRoI,EAAO,CACRnH,cAAeA,SAMvB,GAAI5D,EAAO,CACT,IAAIuL,EAAiBvL,EACjBwL,EAASD,EAAe,GACxBE,GAAW,EAAIvJ,EAAUlF,SAAS,CACpCoK,SAAU,WACV4D,SAAU,SACVrQ,QAAS,eACTyL,MAAOoF,EAAOpF,MACdC,OAAQmF,EAAOnF,QACdjM,GAMH,MAJsB,YAAlBA,EAAMO,gBACD8Q,EAAS9Q,QAGXwH,EAAOnF,QAAQnD,cAAcsQ,EAAK,CACvCR,WAAYA,GAAwB,IAAM,wBAC1CvP,MAAOqR,EACPzE,IAAKjO,KAAK6P,UACVzE,IAAK,SAAW8G,KAAKC,UAAUM,EAAOzH,SACrC2G,GAAWvI,EAAOnF,QAAQnD,cAAcsQ,EAAK,CAC9C7Q,MAAOA,EACPc,OAAO,EAAI8H,EAAUlF,SAAS,CAC5BiN,gBAAiBS,EACjBtE,MAAOoF,EAAOpF,MACdoE,QAAUzR,KAAKsP,MAAMC,UAAgB,EAAJ,EACjCjC,OAAQmF,EAAOnF,QACdiE,GAAgBK,KACjBa,EAAOzG,QAAU5C,EAAOnF,QAAQnD,cAAc4M,EAAa,CAC7D3D,IAAK0I,EAAOzG,OACZ6B,YAAakE,EACblH,cAAe2H,EACf5E,gBAAiB9B,IACf2G,EAAO5G,WAAazC,EAAOnF,QAAQnD,cAAc4M,EAAa,CAChE3D,IAAK0I,EAAO5G,UACZgC,YAAakE,EACblH,cAAe2H,EACf5E,gBAAiBjC,IACf3L,KAAKsP,MAAMD,WAAajG,EAAOnF,QAAQnD,cAAc,UAAW,KAAM8J,EAAqB4H,GAAiBpJ,EAAOnF,QAAQnD,cAAciN,EAAK,CAChJ3G,IAAKA,EACL7G,MAAOA,EACP8M,MAAOoF,EAAOpF,MACdC,OAAQmF,EAAOnF,OACf7D,MAAOgJ,EAAOhJ,MACdM,IAAK0I,EAAO1I,IACZwD,YAAavN,KAAKC,MAAMsN,YACxBvC,OAAQyH,EAAOzH,OACf3J,MAAOmQ,EACPvD,IAAKjO,KAAKyP,SACVvB,OAAQlO,KAAK2P,kBACbxB,QAASnO,KAAKC,MAAMkO,QACpBkD,SAAUA,EACVzH,QAASA,EACT4D,UAAWA,KACRxN,KAAKkP,aAAe9F,EAAOnF,QAAQnD,cAAc,WAAY,CAChEgB,wBAAyB,CACvBC,OAAQqL,GAAY,EAAIjE,EAAUlF,SAAS,CACzCmD,IAAKA,EACL7G,MAAOA,EACPqJ,QAASA,GACR6I,EAAQ,CACT5H,cAAe2H,SAMvB,OAAO,MAGF3D,EA3QT,CA4QEzF,EAAOnF,QAAQrB,WAEjBiM,EAAMnI,aAAe,CACnByI,QAAQ,EACRgC,eAAgB,IAChB/J,IAAK,GACLgK,IAAK,MAGLxH,QAAS,QAGX,IAAI+I,EAActJ,EAAWpF,QAAQ2O,MAAM,CACzCvF,MAAOhE,EAAWpF,QAAQ4O,OAAOC,WACjCxF,OAAQjE,EAAWpF,QAAQ4O,OAAOC,WAClC/I,IAAKV,EAAWpF,QAAQ2D,OAAOkL,WAC/B9H,OAAQ3B,EAAWpF,QAAQ2D,OAAOkL,WAClC9G,OAAQ3C,EAAWpF,QAAQ2D,OAC3BiE,UAAWxC,EAAWpF,QAAQ2D,OAC9BmL,QAAS1J,EAAWpF,QAAQ2D,OAC5BqD,WAAY5B,EAAWpF,QAAQ2D,OAC/BsD,MAAO7B,EAAWpF,QAAQ2D,SAGxBoL,EAAc3J,EAAWpF,QAAQ2O,MAAM,CACzCP,YAAahJ,EAAWpF,QAAQ4O,OAAOC,WACvC/I,IAAKV,EAAWpF,QAAQ2D,OAAOkL,WAC/B9H,OAAQ3B,EAAWpF,QAAQ2D,OAAOkL,WAClCrJ,MAAOJ,EAAWpF,QAAQ2D,OAAOkL,WACjC9G,OAAQ3C,EAAWpF,QAAQ2D,OAC3BiE,UAAWxC,EAAWpF,QAAQ2D,OAC9BmL,QAAS1J,EAAWpF,QAAQ2D,OAC5BqD,WAAY5B,EAAWpF,QAAQ2D,OAC/BsD,MAAO7B,EAAWpF,QAAQ2D,SAG5BiH,EAAMH,UAAY,CAChBlF,YAAamJ,EACblJ,MAAOuJ,EACP/L,MAAOoC,EAAWpF,QAAQgP,UAAU,CAACN,EAAatJ,EAAWpF,QAAQiP,QAAQP,KAC7EhJ,MAAON,EAAWpF,QAAQgP,UAAU,CAACD,EAAa3J,EAAWpF,QAAQiP,QAAQF,KAC7E7D,OAAQ9F,EAAWpF,QAAQkP,KAC3BhC,eAAgB9H,EAAWpF,QAAQ4O,OACnCtS,MAAO8I,EAAWpF,QAAQ2D,OAC1BR,IAAKiC,EAAWpF,QAAQ2D,OACxBgJ,UAAWvH,EAAWpF,QAAQgP,UAAU,CAAC5J,EAAWpF,QAAQ2D,OAAQyB,EAAWpF,QAAQ0K,SAEvFjF,SAAUL,EAAWpF,QAAQkP,KAC7B5F,YAAalE,EAAWpF,QAAQgP,UAAU,CAAC5J,EAAWpF,QAAQ2D,OAAQyB,EAAWpF,QAAQkP,OACzF9R,MAAOgI,EAAWpF,QAAQ0K,OAC1BpH,SAAU8B,EAAWpF,QAAQ0K,OAC7BqC,iBAAkB3H,EAAWpF,QAAQ0K,OACrCsC,qBAAsB5H,EAAWpF,QAAQ2D,OACzCsJ,gBAAiB7H,EAAWpF,QAAQgP,UAAU,CAAC5J,EAAWpF,QAAQ2D,OAAQyB,EAAWpF,QAAQkP,OAC7FjF,OAAQ7E,EAAWpF,QAAQ2K,KAC3BT,QAAS9E,EAAWpF,QAAQ2K,KAC5BoB,YAAa3G,EAAWpF,QAAQ2K,KAChCwC,IAAK/H,EAAWpF,QAAQ2D,OACxByJ,SAAUhI,EAAWpF,QAAQ2D,OAC7BgC,QAASP,EAAWpF,QAAQmP,MAAM,CAAC,OAAQ,OAAQ,UACnD5F,UAAWnE,EAAWpF,QAAQkP,MAEhC,IAAIE,EAAWxE,EACf9K,EAAQE,QAAUoP","file":"component---src-templates-blog-post-js-10a4ae19b9665aa76db1.js","sourcesContent":["import React from \"react\"\nimport { Link, graphql } from \"gatsby\"\n\nimport Bio from \"../components/bio\"\nimport Layout from \"../components/layout\"\nimport SEO from \"../components/seo\"\nimport { rhythm, scale } from \"../utils/typography\"\n\nclass BlogPostTemplate extends React.Component {\n render() {\n const post = this.props.data.markdownRemark\n const siteTitle = this.props.data.site.siteMetadata.title\n const { previous, next } = this.props.pageContext\n\n return (\n <Layout location={this.props.location} title={siteTitle}>\n <SEO\n title={post.frontmatter.title}\n description={post.frontmatter.description || post.excerpt}\n />\n <h1\n style={{\n marginTop: rhythm(1),\n marginBottom: 0,\n }}\n >\n {post.frontmatter.title}\n </h1>\n <p\n style={{\n ...scale(-1 / 5),\n display: `block`,\n marginBottom: rhythm(1),\n }}\n >\n {post.frontmatter.date}\n </p>\n <div dangerouslySetInnerHTML={{ __html: post.html }} />\n <hr\n style={{\n marginBottom: rhythm(1),\n }}\n />\n <Bio />\n\n <ul\n style={{\n display: `flex`,\n flexWrap: `wrap`,\n justifyContent: `space-between`,\n listStyle: `none`,\n padding: 0,\n }}\n >\n <li>\n {previous && (\n <Link to={previous.fields.slug} rel=\"prev\">\n ← {previous.frontmatter.title}\n </Link>\n )}\n </li>\n <li>\n {next && (\n <Link to={next.fields.slug} rel=\"next\">\n {next.frontmatter.title} →\n </Link>\n )}\n </li>\n </ul>\n </Layout>\n )\n }\n}\n\nexport default BlogPostTemplate\n\nexport const pageQuery = graphql`\n query BlogPostBySlug($slug: String!) {\n site {\n siteMetadata {\n title\n author\n }\n }\n markdownRemark(fields: { slug: { eq: $slug } }) {\n id\n excerpt(pruneLength: 160)\n html\n frontmatter {\n title\n date(formatString: \"MMMM DD, YYYY\")\n }\n }\n }\n`\n","import Typography from \"typography\"\nimport Wordpress2016 from \"typography-theme-wordpress-2016\"\n\nWordpress2016.overrideThemeStyles = () => {\n return {\n \"a.gatsby-resp-image-link\": {\n boxShadow: `none`,\n },\n }\n}\n\ndelete Wordpress2016.googleFonts\n\nconst typography = new Typography(Wordpress2016)\n\n// Hot reload typography in development.\nif (process.env.NODE_ENV !== `production`) {\n typography.injectStyles()\n}\n\nexport default typography\nexport const rhythm = typography.rhythm\nexport const scale = typography.scale\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 withAssetPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n parsePath,\n} from \"gatsby-link\"\nimport PageRenderer from \"./public-page-renderer\"\nimport loader from \"./loader\"\n\nconst prefetchPathname = loader.enqueue\n\nconst StaticQueryContext = React.createContext({})\n\nfunction StaticQueryDataRenderer({ staticQueryData, data, query, render }) {\n const finalData = data\n ? data.data\n : staticQueryData[query] && staticQueryData[query].data\n\n return (\n <React.Fragment>\n {finalData && render(finalData)}\n {!finalData && <div>Loading (StaticQuery)</div>}\n </React.Fragment>\n )\n}\n\nconst StaticQuery = props => {\n const { data, query, render, children } = props\n\n return (\n <StaticQueryContext.Consumer>\n {staticQueryData => (\n <StaticQueryDataRenderer\n data={data}\n query={query}\n render={render || children}\n staticQueryData={staticQueryData}\n />\n )}\n </StaticQueryContext.Consumer>\n )\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 withAssetPrefix,\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 prefetchPathname,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport InternalPageRenderer from \"./page-renderer\"\n\nconst ProdPageRenderer = ({ location, pageResources }) => {\n if (!pageResources) {\n return null\n }\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","'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","import React from \"react\"\nimport { Link } from \"gatsby\"\n\nimport { rhythm, scale } from \"../utils/typography\"\n\nclass Layout extends React.Component {\n render() {\n const { location, title, children } = this.props\n const rootPath = `${__PATH_PREFIX__}/`\n let header\n\n if (location.pathname === rootPath) {\n header = (\n <h1\n style={{\n ...scale(1.5),\n marginBottom: rhythm(1.5),\n marginTop: 0,\n }}\n >\n <Link\n style={{\n boxShadow: `none`,\n textDecoration: `none`,\n color: `inherit`,\n }}\n to={`/`}\n >\n {title}\n </Link>\n </h1>\n )\n } else {\n header = (\n <h3\n style={{\n fontFamily: `Montserrat, sans-serif`,\n marginTop: 0,\n }}\n >\n <Link\n style={{\n boxShadow: `none`,\n textDecoration: `none`,\n color: `inherit`,\n }}\n to={`/`}\n >\n {title}\n </Link>\n </h3>\n )\n }\n return (\n <div\n style={{\n marginLeft: `auto`,\n marginRight: `auto`,\n maxWidth: rhythm(24),\n padding: `${rhythm(1.5)} ${rhythm(3 / 4)}`,\n }}\n >\n <header>{header}</header>\n <main>{children}</main>\n <footer>\n © {new Date().getFullYear()}, Built with\n {` `}\n <a href=\"https://www.gatsbyjs.org\">Gatsby</a>\n </footer>\n </div>\n )\n }\n}\n\nexport default Layout\n","/**\n * SEO component that queries for data with\n * Gatsby's useStaticQuery React hook\n *\n * See: https://www.gatsbyjs.org/docs/use-static-query/\n */\n\nimport React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Helmet from \"react-helmet\"\nimport { useStaticQuery, graphql } from \"gatsby\"\n\nfunction SEO({ description, lang, meta, title }) {\n const { site } = useStaticQuery(\n graphql`\n query {\n site {\n siteMetadata {\n title\n description\n author\n }\n }\n }\n `\n )\n\n const metaDescription = description || site.siteMetadata.description\n\n return (\n <Helmet\n htmlAttributes={{\n lang,\n }}\n title={title}\n titleTemplate={`%s | ${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: site.siteMetadata.author,\n },\n {\n name: `twitter:title`,\n content: title,\n },\n {\n name: `twitter:description`,\n content: metaDescription,\n },\n ].concat(meta)}\n />\n )\n}\n\nSEO.defaultProps = {\n lang: `en`,\n meta: [],\n description: ``,\n}\n\nSEO.propTypes = {\n description: PropTypes.string,\n lang: PropTypes.string,\n meta: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string.isRequired,\n}\n\nexport default SEO\n","/**\n * Bio component that queries for data\n * with Gatsby's useStaticQuery component\n *\n * See: https://www.gatsbyjs.org/docs/use-static-query/\n */\n\nimport React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport Image from \"gatsby-image\"\n\nimport { rhythm } from \"../utils/typography\"\n\nconst Bio = () => {\n const data = useStaticQuery(graphql`\n query BioQuery {\n avatar: file(absolutePath: { regex: \"/profile-pic.jpg/\" }) {\n childImageSharp {\n fixed(width: 50, height: 50) {\n ...GatsbyImageSharpFixed\n }\n }\n }\n site {\n siteMetadata {\n author\n }\n }\n }\n `)\n\n const { author, social } = data.site.siteMetadata\n return (\n <div\n style={{\n display: `flex`,\n marginBottom: rhythm(2.5),\n }}\n >\n <Image\n fixed={data.avatar.childImageSharp.fixed}\n alt={author}\n style={{\n marginRight: rhythm(1 / 2),\n marginBottom: 0,\n minWidth: 50,\n borderRadius: `100%`,\n }}\n imgStyle={{\n borderRadius: `50%`,\n }}\n />\n <p>\n <strong>{author}</strong> works as a software consultant.\n He twiddles morse in his sleep.\n </p>\n </div>\n )\n}\n\nexport default Bio\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","\"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;"],"sourceRoot":""}