/
component---src-pages-index-js-e18677ba8aa355c4ff72.js.map
1 lines (1 loc) · 25 KB
/
component---src-pages-index-js-e18677ba8aa355c4ff72.js.map
1
{"version":3,"sources":["webpack:///./node_modules/core-js/modules/_string-ws.js","webpack:///./src/components/projects.module.css","webpack:///./src/components/layout.js","webpack:///./node_modules/react-icons/lib/esm/iconsManifest.js","webpack:///./node_modules/react-icons/lib/esm/iconContext.js","webpack:///./node_modules/react-icons/lib/esm/iconBase.js","webpack:///./src/components/timeline.js","webpack:///./src/components/projects.js","webpack:///./src/pages/index.js","webpack:///./src/components/timeline.module.css","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./.cache/public-page-renderer.js","webpack:///./node_modules/core-js/modules/_string-trim.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./node_modules/core-js/modules/es6.number.constructor.js"],"names":["module","exports","Layout","children","data","className","to","id","site","siteMetadata","title","DefaultContext","color","undefined","size","style","attr","IconContext","__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__rest","e","indexOf","getOwnPropertySymbols","GenIcon","props","IconBase","Tree2Element","tree","map","node","tag","key","child","elem","conf","computedSize","svgProps","stroke","fill","strokeWidth","height","width","xmlns","Consumer","Timeline","JSONData","index","timelineStyles","header","role","href","url","target","rel","org","years","location","desc","bullet","Projects","projectStyles","section","items","name","Home","loader","enqueue","React","createContext","m","require","default","$export","defined","fails","spaces","space","ltrim","RegExp","rtrim","exporter","KEY","exec","ALIAS","exp","FORCE","fn","trim","P","F","string","TYPE","String","replace","ProdPageRenderer","pageResources","createElement","InternalPageRenderer","json","global","has","cof","inheritIfRequired","toPrimitive","gOPN","f","gOPD","dP","$trim","$Number","Base","proto","BROKEN_COF","TRIM","toNumber","argument","it","third","radix","maxCode","first","charCodeAt","NaN","code","digits","slice","l","parseInt","value","that","valueOf","keys","split","j","constructor"],"mappings":"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","file":"component---src-pages-index-js-e18677ba8aa355c4ff72.js","sourcesContent":["module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"header\":\"projects-module--header--3rHIp\"};","import React from \"react\"\nimport { graphql, useStaticQuery, Link } from \"gatsby\"\nimport \"../styles/global.scss\"\n\nexport default function Layout({ children }) {\n const data = useStaticQuery(\n graphql`\n query {\n site {\n siteMetadata {\n title\n }\n }\n }\n `\n )\n return (\n <div className=\"container\">\n <Link to={`/`}>\n <h1 id=\"site-title\">\n {data.site.siteMetadata.title}\n </h1>\n </Link>\n {children}\n </div>\n )\n }","export var IconsManifest = [{\n \"id\": \"fa\",\n \"name\": \"Font Awesome\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n}, {\n \"id\": \"io\",\n \"name\": \"Ionicons\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n}, {\n \"id\": \"md\",\n \"name\": \"Material Design icons\",\n \"projectUrl\": \"http://google.github.io/material-design-icons/\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"https://github.com/google/material-design-icons/blob/master/LICENSE\"\n}, {\n \"id\": \"ti\",\n \"name\": \"Typicons\",\n \"projectUrl\": \"http://s-ings.com/typicons/\",\n \"license\": \"CC BY-SA 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by-sa/3.0/\"\n}, {\n \"id\": \"go\",\n \"name\": \"Github Octicons icons\",\n \"projectUrl\": \"https://octicons.github.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/primer/octicons/blob/master/LICENSE\"\n}, {\n \"id\": \"fi\",\n \"name\": \"Feather\",\n \"projectUrl\": \"https://feathericons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/feathericons/feather/blob/master/LICENSE\"\n}, {\n \"id\": \"gi\",\n \"name\": \"Game Icons\",\n \"projectUrl\": \"https://game-icons.net/\",\n \"license\": \"CC BY 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/3.0/\"\n}, {\n \"id\": \"wi\",\n \"name\": \"Weather Icons\",\n \"projectUrl\": \"https://erikflowers.github.io/weather-icons/\",\n \"license\": \"SIL OFL 1.1\",\n \"licenseUrl\": \"http://scripts.sil.org/OFL\"\n}, {\n \"id\": \"di\",\n \"name\": \"Devicons\",\n \"projectUrl\": \"https://vorillaz.github.io/devicons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n}, {\n \"id\": \"ai\",\n \"name\": \"Ant Design Icons\",\n \"projectUrl\": \"https://github.com/ant-design/ant-design-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n}, {\n \"id\": \"bs\",\n \"name\": \"Bootstrap Icons\",\n \"projectUrl\": \"https://github.com/twbs/icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n}, {\n \"id\": \"ri\",\n \"name\": \"Remix Icon\",\n \"projectUrl\": \"https://github.com/Remix-Design/RemixIcon\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n}, {\n \"id\": \"fc\",\n \"name\": \"Flat Color Icons\",\n \"projectUrl\": \"https://github.com/icons8/flat-color-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n}, {\n \"id\": \"gr\",\n \"name\": \"Grommet-Icons\",\n \"projectUrl\": \"https://github.com/grommet/grommet-icons\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n}];","import * as React from 'react';\nexport var DefaultContext = {\n color: undefined,\n size: undefined,\n className: undefined,\n style: undefined,\n attr: undefined\n};\nexport var IconContext = React.createContext && React.createContext(DefaultContext);","import \"core-js/modules/es6.array.map\";\nimport \"core-js/modules/es6.symbol\";\nimport \"core-js/modules/es6.array.index-of\";\nimport \"core-js/modules/es6.object.assign\";\n\nvar __assign = this && this.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n }\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nimport * as React from 'react';\nimport { IconContext, DefaultContext } from './iconContext';\n\nfunction Tree2Element(tree) {\n return tree && tree.map(function (node, i) {\n return React.createElement(node.tag, __assign({\n key: i\n }, node.attr), Tree2Element(node.child));\n });\n}\n\nexport function GenIcon(data) {\n return function (props) {\n return React.createElement(IconBase, __assign({\n attr: __assign({}, data.attr)\n }, props), Tree2Element(data.child));\n };\n}\nexport function IconBase(props) {\n var elem = function elem(conf) {\n var computedSize = props.size || conf.size || \"1em\";\n var className;\n if (conf.className) className = conf.className;\n if (props.className) className = (className ? className + ' ' : '') + props.className;\n\n var attr = props.attr,\n title = props.title,\n svgProps = __rest(props, [\"attr\", \"title\"]);\n\n return React.createElement(\"svg\", __assign({\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\"\n }, conf.attr, attr, svgProps, {\n className: className,\n style: __assign({\n color: props.color || conf.color\n }, conf.style, props.style),\n height: computedSize,\n width: computedSize,\n xmlns: \"http://www.w3.org/2000/svg\"\n }), title && React.createElement(\"title\", null, title), props.children);\n };\n\n return IconContext !== undefined ? React.createElement(IconContext.Consumer, null, function (conf) {\n return elem(conf);\n }) : elem(DefaultContext);\n}","import React from \"react\"\nimport timelineStyles from \"./timeline.module.css\"\nimport JSONData from \"../data/timeline.json\"\n\nexport default function Timeline() {\n return(\n <div className=\"timeline\">\n {/* {console.log(JSONData)} */}\n {JSONData.map((data, index) => {\n return(\n <div key={index} className=\"timelineItem\">\n <h3 className={timelineStyles.header}>{data.role}, <a href={data.url} target=\"_blank\" rel=\"noopener noreferrer\">{data.org}</a></h3>\n <p>{data.years} | {data.location}</p>\n <ul>\n {data.desc.map((bullet, index) => <li key={index}>{bullet}</li> )}\n </ul>\n </div>\n )\n })}\n <hr />\n </div>\n )\n}\n","import React from \"react\"\nimport projectStyles from \"./projects.module.css\"\nimport JSONData from \"../data/projects.json\"\n\nexport default function Projects() {\n return(\n <div className=\"projects\">\n {/* {console.log(JSONData)} */}\n {JSONData.map((data, index) => {\n return(\n <div key={index} className=\"projectItem\">\n <h3 className={projectStyles.header}>{data.section}</h3>\n <ul>\n {data.items.map((bullet, index) => <li key={index}><a href={bullet.url} target=\"_blank\" rel=\"noopener noreferrer\">{bullet.name}</a></li> )}\n </ul>\n </div>\n )\n })}\n <hr />\n </div>\n )\n}\n","import React from \"react\"\nimport Layout from \"../components/layout\"\nimport Timeline from \"../components/timeline\"\nimport Projects from \"../components/projects\"\n// https://github.com/react-icons/react-icons\nimport { FaTwitter, FaGithub, FaLinkedin } from 'react-icons/fa';\nimport \"../styles/global.scss\"\n\nexport default function Home() {\n return (\n <Layout>\n <article>\n <section id=\"intro\">\n <h2>Hi there.</h2>\n <p>My name is Rob and my background is in visual communication and digital production.</p>\n <p>For most of my career, I've worked for newspapers doing website development, content production and building digital tools. I'm also interested in data analysis and supporting local journalism.</p>\n <p>When I'm not working, you can find me exporing the outdoors or trying to learn something new.</p>\n <p>For more on my professional background, see my resume below. You can also follow me on social media for updates.</p>\n <div className=\"contact-icons\">\n <a href=\"https://twitter.com/robertrdenton\"><FaTwitter className=\"contact-icon\" /></a>\n <a href=\"https://linkedin.com/in/robertrdenton\"><FaLinkedin className=\"contact-icon\" /></a>\n <a href=\"https://github.com/robertdenton\"><FaGithub className=\"contact-icon\" /></a>\n </div>\n </section>\n <hr/>\n <section id=\"timeline\">\n <h2>My work</h2>\n <Timeline />\n </section>\n <section id=\"projects\">\n <h2>Past projects</h2>\n <Projects />\n </section>\n </article>\n </Layout>\n )\n}\n\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"header\":\"timeline-module--header--1wvex\"};","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\n // query is a stringified number like `3303882` when wrapped with graphql, If a user forgets\n // to wrap the query in a grqphql, then casting it to a Number results in `NaN` allowing us to\n // catch the misuse of the API and give proper direction\n if (isNaN(Number(query))) {\n throw new Error(`useStaticQuery was called with a string but expects to be called using \\`graphql\\`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql\\`${query}\\`);\n`)\n }\n\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","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","var $export = require('./_export');\nvar defined = require('./_defined');\nvar fails = require('./_fails');\nvar spaces = require('./_string-ws');\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\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';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n"],"sourceRoot":""}