-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-pages-tags-jsx-e3a9b833411cdafa403c.js.map
1 lines (1 loc) · 32 KB
/
component---src-pages-tags-jsx-e3a9b833411cdafa403c.js.map
1
{"version":3,"sources":["webpack:///./src/theme/containers/TagListContainer.js","webpack:///./src/pages/tags.jsx","webpack:///./src/utils/changeColor.js","webpack:///./src/theme/variables.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./src/utils/media.js","webpack:///./.cache/public-page-renderer.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./src/theme/reset.js","webpack:///./src/theme/typography.js","webpack:///./src/theme/prism.js","webpack:///./src/theme/background.js","webpack:///./src/theme/global.js","webpack:///./src/theme/containers/BodyContainer.js","webpack:///./src/components/Line.js","webpack:///./src/theme/containers/NavContainer.js","webpack:///./src/components/Nav.jsx","webpack:///./src/theme/containers/FooterContainer.js","webpack:///./src/components/Footer.jsx","webpack:///./src/components/Layout.jsx","webpack:///./src/components/SEO.jsx","webpack:///./src/theme/containers/HeaderContainer.js","webpack:///./src/components/Header.jsx","webpack:///./node_modules/core-js/modules/es6.array.sort.js","webpack:///./node_modules/core-js/modules/_strict-method.js"],"names":["styled","div","withConfig","displayName","componentId","media","tablet","_templateObject","phone","_templateObject2","Tags","_ref","data","_data$site$siteMetada","site","siteMetadata","title","siteName","allTags","allMarkdownRemark","group","hashMap","forEach","_ref2","fieldValue","totalCount","toLowerCase","cleanTags","Object","entries","map","_ref3","react_default","a","createElement","Layout","SEO","keywords","Header","subtitle","TagListContainer","sort","b","tag","gatsby_browser_entry","key","to","s","replace","defaultProps","propTypes","PropTypes","shape","string","number","tagspageQuery","changeColor","color","num","slice","lastIndexOf","parseFloat","__webpack_require__","d","__webpack_exports__","Colors","Fonts","h","p","border","code","background","linkHover","link","subNav","basic","r","graphql","StaticQueryContext","StaticQuery","useStaticQuery","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","prop_types__WEBPACK_IMPORTED_MODULE_1__","prop_types__WEBPACK_IMPORTED_MODULE_1___default","gatsby_link__WEBPACK_IMPORTED_MODULE_2__","gatsby_link__WEBPACK_IMPORTED_MODULE_2___default","_public_page_renderer__WEBPACK_IMPORTED_MODULE_3__","_public_page_renderer__WEBPACK_IMPORTED_MODULE_3___default","_parse_path__WEBPACK_IMPORTED_MODULE_4__","React","createContext","props","Consumer","staticQueryData","query","render","children","useContext","context","Error","object","isRequired","func","sizes","monitor","desktop","tiny","none","keys","reduce","acc","label","css","apply","arguments","m","module","exports","require","default","ProdPageRenderer","location","pageResources","loader","getResourcesForPathnameSync","pathname","InternalPageRenderer","assign","json","theme_reset","typography","prism","createGlobalStyle","resets","BodyContainer_templateObject","Wrapper","Line","Component","activeClassName","PATHS","Li","locationSlug","length","split","Nav","NavContainer","path","Nav_Li","footer","FooterContainer_templateObject","Footer","FooterContainer","name","rel","target","href","_4011262072","Fragment","global","Line_Line","BodyContainer","description","lang","meta","react__WEBPACK_IMPORTED_MODULE_1___default","gatsby__WEBPACK_IMPORTED_MODULE_4__","metaDescription","react_helmet__WEBPACK_IMPORTED_MODULE_3___default","htmlAttributes","titleTemplate","content","property","author","concat","join","_public_static_d_1667383364_json__WEBPACK_IMPORTED_MODULE_0__","arrayOf","header","HeaderContainer","$export","aFunction","toObject","fails","$sort","test","P","F","undefined","comparefn","call","this","method","arg"],"mappings":"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","file":"component---src-pages-tags-jsx-e3a9b833411cdafa403c.js","sourcesContent":["import styled from 'styled-components';\nimport media from 'utils/media';\n\nexport default styled.div`\n display: flex;\n flex-wrap: wrap;\n font-weight: 600;\n a {\n width: 33.333%;\n ${media.tablet`\n width: 50%;\n text-align: left;\n `}\n ${media.phone`\n width: 50%;\n text-align: left;\n // text-align: center;\n `};\n }\n`;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link, graphql } from 'gatsby';\n\nimport TagListContainer from 'theme/containers/TagListContainer';\n\nimport Header from 'components/Header';\nimport Layout from 'components/Layout';\nimport SEO from 'components/SEO';\n\nconst getKebab = s =>\n s\n .replace(/([a-z])([A-Z])/g, '$1-$2')\n .replace(/\\s+/g, '-')\n .toLowerCase();\n\nconst Tags = ({ data }) => {\n const { title, siteName } = data.site.siteMetadata;\n const allTags = data.allMarkdownRemark.group;\n\n const hashMap = {};\n allTags.forEach(({ fieldValue, totalCount }) => {\n if (hashMap[fieldValue.toLowerCase()]) {\n hashMap[fieldValue.toLowerCase()] += totalCount;\n } else {\n hashMap[fieldValue.toLowerCase()] = totalCount;\n }\n });\n const cleanTags = Object.entries(hashMap).map(([key, value]) => ({\n fieldValue: key,\n totalCount: value,\n }));\n\n return (\n <Layout>\n <SEO title={title} keywords={['blog', 'gatsby', 'javascript', 'react']} />\n <Header title=\"Tags\" subtitle={`All Tags from ${siteName}`} />\n <TagListContainer>\n {cleanTags\n .sort((a, b) => b.totalCount - a.totalCount)\n .map(tag => (\n <Link\n key={tag.fieldValue}\n to={`/tags/${getKebab(tag.fieldValue)}/`}\n >\n {tag.fieldValue} ({tag.totalCount})\n </Link>\n ))}\n </TagListContainer>\n </Layout>\n );\n};\n\nTags.defaultProps = {\n data: {\n site: {\n siteMetadata: {\n title: '',\n siteName: '',\n },\n },\n allMarkdownRemark: {\n group: {\n fieldValue: '',\n totalCount: 0,\n },\n },\n },\n};\n\nTags.propTypes = {\n data: PropTypes.shape({\n site: PropTypes.shape({\n siteMetadata: PropTypes.shape({\n title: PropTypes.string,\n siteName: PropTypes.string,\n }),\n }),\n allMarkdownRemark: PropTypes.shape({\n group: PropTypes.shape({\n fieldValue: PropTypes.string,\n totalCount: PropTypes.number,\n }),\n }),\n }),\n};\n\nexport default Tags;\n\n// eslint-disable-next-line\nexport const tagspageQuery = graphql`\n query {\n site {\n siteMetadata {\n title\n siteName\n }\n }\n allMarkdownRemark(limit: 2000) {\n group(field: frontmatter___tags) {\n fieldValue\n totalCount\n }\n }\n }\n`;\n","export default (color, num) =>\n `${color.slice(0, color.lastIndexOf(','))}, ${parseFloat(\n color.slice(color.lastIndexOf(',') + 1, color.lastIndexOf(')'))\n ) * num})`;\n","import changeColor from 'utils/changeColor';\n\nconst h = 'hsla(0, 0%, 0%, 1)';\nconst background = 'hsla(0, 0%, 100%, 1)';\nconst linkHover = 'hsla(192, 100%, 50%, 1)';\n\nexport const Colors = {\n h,\n p: changeColor(h, 0.8),\n border: changeColor(h, 0.15),\n code: changeColor(h, 0.1),\n background,\n linkHover,\n link: changeColor(h, 0.35),\n subNav: changeColor(h, 0.2),\n};\n\nexport const Fonts = {\n basic:\n '-apple-system, BlinkMacSystemFont, \"Helvetica Neue\", Arial, sans-serif, Georgia, serif, sans-serif',\n code: \"'Source Code Pro', monospace\",\n};\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Link, {\n withPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n} from \"gatsby-link\"\nimport PageRenderer from \"./public-page-renderer\"\nimport parsePath from \"./parse-path\"\n\nconst StaticQueryContext = React.createContext({})\n\nconst StaticQuery = props => (\n <StaticQueryContext.Consumer>\n {staticQueryData => {\n if (\n props.data ||\n (staticQueryData[props.query] && staticQueryData[props.query].data)\n ) {\n return (props.render || props.children)(\n props.data ? props.data.data : staticQueryData[props.query].data\n )\n } else {\n return <div>Loading (StaticQuery)</div>\n }\n }}\n </StaticQueryContext.Consumer>\n)\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n const context = React.useContext(StaticQueryContext)\n if (context[query] && context[query].data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away,. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n.` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport {\n Link,\n withPrefix,\n graphql,\n parsePath,\n navigate,\n push, // TODO replace for v3\n replace, // TODO remove replace for v3\n navigateTo, // TODO: remove navigateTo for v3\n StaticQueryContext,\n StaticQuery,\n PageRenderer,\n useStaticQuery,\n}\n","import { css } from 'styled-components';\n\nconst sizes = {\n monitor: 1600,\n desktop: 992,\n tablet: 700,\n phone: 425,\n tiny: 340,\n none: 320,\n};\n\n// Iterate through the sizes and create a media template\nexport default Object.keys(sizes).reduce((acc, label) => {\n acc[label] = (...args) => css`\n @media (max-width: ${sizes[label]}px) {\n ${css(...args)};\n }\n `;\n return acc;\n}, {});\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport InternalPageRenderer from \"./page-renderer\"\nimport loader from \"./loader\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.getResourcesForPathnameSync(location.pathname)\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","import { Colors, Fonts } from 'theme/variables';\n\nexport default `\n * {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n\n html {\n font-family: ${Fonts.basic};\n font-size: 100%;\n text-size-adjust: none;\n text-rendering: optimizelegibility;\n image-rendering: optimizequality;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n body {\n transition: all .2s ease;\n }\n\n nav,\n header,\n footer,\n section {\n display: block;\n }\n\n del {\n text-decoration: line-through;\n }\n\n button,\n input,\n select[multiple],\n textarea {\n background-image: none;\n }\n\n img {\n border: 0;\n }\n\n button {\n appearance: none;\n cursor: pointer;\n background: none;\n border: none;\n outline: none;\n margin-top: .5em;\n }\n\n header {\n clear: both;\n }\n\n a {\n text-decoration: none;\n color: ${Colors.h};\n }\n\n .gatsby-resp-image-link,\n img {\n width: 100%;\n }\n\n .gatsby-resp-image-wrapper {\n z-index: 10;\n margin: 0!important;\n }\n\n input {\n background: ${Colors.background};\n font-size: 3em;\n display: block;\n width: 50%;\n border: none;\n border-bottom: 2px solid ${Colors.background}\n }\n\n input:focus,\n select:focus,\n textarea:focus,\n button:focus {\n outline: none;\n background: ${Colors.background};\n font-size: 3em;\n display: block;\n width: 50%;\n border: none;\n border-bottom: 2px solid ${Colors.background}\n }\n\n hr {\n border: none;\n display: block;\n margin: 2em 0 1em;\n font-size: .9rem;\n :before {\n display: block;\n content: '';\n width: 3px;\n height: 3px;\n margin: 2em 2em 2em;\n border-radius: 50%;\n background: black;\n box-shadow: calc(3px*8) 0 0 0 black, calc(3px*-8) 0 0 0 black;\n }\n }\n`;\n","import { Colors } from './variables';\n\nexport default `\n html,\n body {\n font-size: 17px;\n @media screen and (max-width: 700px) {\n font-size: 15px;\n }\n @media screen and (min-width: 1600px) {\n font-size: 19px;\n }\n }\n\n h1,\n h2,\n h3,\n h4 {\n color: ${Colors.h};\n line-height: 1.25;\n font-weight: 600;\n text-rendering: optimizeLegibility;\n margin-top: 2.8em;\n margin-bottom: 1.2em;\n @media screen and (max-width: 700px) {\n // text-align: center;\n }\n }\n\n h4 {\n margin-top: 2.2em;\n font-size: .966em;\n }\n\n h5 {\n font-size: 1em;\n }\n\n h6 {\n font-size: 0.72em;\n }\n\n p,\n .message {\n color: ${Colors.p};\n margin: 0 auto 1.2em;\n line-height: 1.5;\n letter-spacing: normal;\n }\n\n .gatsby-resp-image-link,\n img,\n video,\n iframe,\n figure {\n display: block;\n margin: 1.1em 0;\n }\n\n table {\n margin-top: 2.8em;\n color: ${Colors.h};\n margin-bottom: 2.2em;\n max-width: 100%;\n }\n\n th, td {\n text-align: left;\n padding-bottom: 1em;\n padding-right: 1em;\n }\n\n`;\n","import { Colors } from 'theme/variables';\n\nexport default `\n /*\n @author Song Wang\n */\n\n .token.comment,\n .token.block-comment,\n .token.prolog,\n .token.doctype,\n .token.cdata {\n // color: #7D8B99;\n }\n\n .token.punctuation {\n // color: #5F6364;\n }\n\n .token.property,\n .token.tag,\n .token.boolean,\n .token.number,\n .token.function-name,\n .token.constant,\n .token.symbol,\n .token.deleted {\n // color: #c92c2c;\n }\n\n .token.selector,\n .token.attr-name,\n .token.string,\n .token.char,\n .token.function,\n .token.builtin,\n .token.inserted {\n // color: #2f9c0a;\n }\n\n .token.operator,\n .token.entity,\n .token.url,\n .token.variable {\n // color: ${Colors.h};\n }\n\n .token.atrule,\n .token.attr-value,\n .token.keyword,\n .token.class-name {\n color: ${Colors.p};\n font-weight: 600;\n }\n\n .token.regex,\n .token.important {\n // color: #e90;\n }\n\n .language-css .token.string,\n .style .token.string {\n // color: #a67f59;\n }\n\n .token.important {\n font-weight: normal;\n }\n\n .token.bold {\n font-weight: bold;\n }\n .token.italic {\n font-style: italic;\n }\n\n .token.entity {\n cursor: help;\n }\n\n .namespace {\n opacity: .7;\n }\n\n /* Plugin styles */\n .token.tab:not(:empty):before,\n .token.cr:before,\n .token.lf:before {\n // color: #e0d7d1;\n }\n\n /* Plugin styles: Line Numbers */\n pre[class*=\"language-\"].line-numbers {\n padding-left: 0;\n }\n\n pre[class*=\"language-\"].line-numbers code {\n padding-left: 3.8em;\n }\n\n pre[class*=\"language-\"].line-numbers .line-numbers-rows {\n left: 0;\n }\n\n /* Plugin styles: Line Highlight */\n pre[class*=\"language-\"][data-line] {\n padding-top: 0;\n padding-bottom: 0;\n padding-left: 0;\n }\n pre[data-line] code {\n position: relative;\n padding-left: 4em;\n }\n pre .line-highlight {\n margin-top: 0;\n }\n`;\n","import { Colors } from 'theme/variables';\n\nexport default `\n position: fixed;\n width: 100%;\n height: 100%;\n z-index: -1000;\n background-color: ${Colors.background};\n`;\n","import { createGlobalStyle } from 'styled-components';\nimport resets from 'theme/reset';\nimport typography from 'theme/typography';\nimport prism from 'theme/prism';\nimport background from 'theme/background';\n\nexport default createGlobalStyle`\n ${resets}\n ${typography}\n ${prism}\n ${background}\n`;\n","import styled from 'styled-components';\nimport media from 'utils/media';\n\nexport default styled.div`\n width: 650px;\n height: 100%;\n margin: 0 auto;\n ${media.tablet`\n width: 88%;\n `} @media screen and (min-width: 1600px) {\n width: 900px;\n }\n`;\n","import React, { Component } from 'react';\nimport styled from 'styled-components';\n\nconst Wrapper = styled.div`\n background: #289eda;\n height: 2px;\n`;\n\nexport default class Line extends Component {\n render() {\n return <Wrapper />;\n }\n}\n","import styled from 'styled-components';\nimport { Colors } from 'theme/variables';\n\nexport default styled.div`\n display: block;\n font-size: 0.8em;\n font-weight: 600;\n letter-spacing: 0.25em;\n text-transform: uppercase;\n ul {\n overflow: auto;\n li:first-child {\n float: left;\n padding-left: 0em;\n }\n li:nth-child(2) {\n padding-right: 0em;\n }\n li {\n float: right;\n display: block;\n vertical-align: middle;\n line-height: 1;\n list-style: none;\n padding: 0.7em;\n margin: 0em;\n\n a {\n text-transform: uppercase;\n color: ${Colors.h};\n text-decoration: none;\n display: block;\n // line-height: 1.9;\n transition: opacity 0.5s ease-in;\n :hover,\n :active,\n :focus {\n filter: invert(40%);\n }\n\n &.${props => props.activeClassName} {\n }\n &.home {\n }\n }\n }\n }\n`;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'gatsby';\nimport NavContainer from 'theme/containers/NavContainer';\n\nconst PATHS = ['/', '/search/', '/about/', '/blog/'];\nconst getLinkName = locationSlug => {\n if (locationSlug.length === 1) {\n return 'Devall';\n }\n\n return locationSlug.split('/')[1];\n};\n\nconst Li = ({ location }) => (\n <li>\n <Link to={location}>{getLinkName(location)}</Link>\n </li>\n);\n\nLi.defaultProps = {\n location: '',\n};\n\nLi.propTypes = {\n location: PropTypes.string,\n};\n\nexport default () => (\n <NavContainer>\n <ul>\n {PATHS.map(path => (\n <Li key={path} location={path} />\n ))}\n </ul>\n </NavContainer>\n);\n","import styled from 'styled-components';\nimport media from 'utils/media';\n\nexport default styled.footer`\n font-size: .9em;\n margin-top: 4em;\n ul {\n overflow: auto;\n margin-bottom: 2em;\n float: right;\n ${media.tablet`\n width: 100%;\n text-align: center;\n `} li {\n display: inline-block;\n padding: 1em;\n a {\n position: relative;\n\n li::after {\n content: ' \\\\ ';\n }\n }\n }\n`;\n","import React from 'react';\nimport { StaticQuery, graphql } from 'gatsby';\nimport FooterContainer from 'theme/containers/FooterContainer';\n\nconst footerQuery = graphql`\n query {\n site {\n siteMetadata {\n github\n linkedin\n }\n }\n }\n`;\n\nexport default () => (\n <StaticQuery\n query={footerQuery}\n render={data => (\n <FooterContainer>\n <ul>\n {Object.entries(data.site.siteMetadata).map(([name, link]) => (\n <li key={name}>\n <a rel=\"noopener noreferrer\" target=\"__blank\" href={link}>\n {name}\n </a>\n </li>\n ))}\n </ul>\n </FooterContainer>\n )}\n />\n);\n","import React from 'react';\nimport 'typeface-source-code-pro';\nimport GlobalStyle from 'theme/global';\nimport BodyContainer from 'theme/containers/BodyContainer';\nimport Line from 'components/Line';\nimport Nav from 'components/Nav';\nimport Footer from 'components/Footer';\n\nexport default ({ children }) => (\n <>\n <GlobalStyle />\n <Line />\n <BodyContainer>\n <Nav />\n {children}\n <Footer />\n </BodyContainer>\n </>\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Helmet from 'react-helmet';\nimport { StaticQuery, graphql } from 'gatsby';\n\nconst detailsQuery = graphql`\n query {\n site {\n siteMetadata {\n title\n description\n author\n }\n }\n }\n`;\n\nconst SEO = ({ description, lang, meta, keywords, title }) => (\n <StaticQuery\n query={detailsQuery}\n render={data => {\n const metaDescription = description || data.site.siteMetadata.description;\n return (\n <Helmet\n htmlAttributes={{\n lang,\n }}\n title={title}\n titleTemplate={`%s | ${data.site.siteMetadata.title}`}\n meta={[\n {\n name: 'description',\n content: metaDescription,\n },\n {\n property: 'og:title',\n content: title,\n },\n {\n property: 'og:description',\n content: metaDescription,\n },\n {\n property: 'og:type',\n content: 'website',\n },\n {\n name: 'twitter:card',\n content: 'summary',\n },\n {\n name: 'twitter:creator',\n content: data.site.siteMetadata.author,\n },\n {\n name: 'twitter:title',\n content: title,\n },\n {\n name: 'twitter:description',\n content: metaDescription,\n },\n ]\n .concat(\n keywords.length > 0\n ? {\n name: 'keywords',\n content: keywords.join(', '),\n }\n : []\n )\n .concat(meta)}\n />\n );\n }}\n />\n);\n\nSEO.defaultProps = {\n description: '',\n lang: 'en',\n meta: [],\n keywords: [],\n};\n\nSEO.propTypes = {\n description: PropTypes.string,\n lang: PropTypes.string,\n keywords: PropTypes.arrayOf(PropTypes.string),\n meta: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n content: PropTypes.string,\n })\n ),\n title: PropTypes.string.isRequired,\n};\n\nexport default SEO;\n","import styled from 'styled-components';\nimport { Colors } from 'theme/variables';\n\nexport default styled.header`\n max-width: 700px;\n margin-top: 150px;\n margin-bottom: 150px;\n text-align: left;\n @media screen and (min-width: 1600px) {\n margin-top: 200px;\n margin-bottom: 200px;\n }\n @media screen and (max-width: 700px) {\n // text-align: center;\n }\n @media screen and (max-width: 440px) {\n display: flex;\n margin:0;\n flex-direction: column;\n justify-content: center;\n min-height: 92vh;\n }\n div {\n h1 {\n letter-spacing: .01em;\n font-size: 2.7em;\n margin-top: 0em;\n margin-bottom: 0;\n\n @media screen and (max-width: 440px) {\n font-size: 2em;\n }\n span {\n opacity: .85;\n font-size: 80%;\n }\n }\n small {\n display: block;\n color: ${Colors.p}\n margin-left: .3em;\n margin-top: .5em;\n }\n\n p {\n margin-top: 1em;\n font-size: 1.4em;\n color: ${Colors.h};\n @media screen and (max-width: 540px) {\n font-size: 1.3em;\n }\n }\n }\n`;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport HeaderContainer from 'theme/containers/HeaderContainer';\n\nconst Header = ({ title, subtitle }) => (\n <HeaderContainer>\n <div>\n <h1>{title}</h1>\n <p>{subtitle}</p>\n </div>\n </HeaderContainer>\n);\n\nHeader.defaultProps = {\n title: '',\n subtitle: '',\n};\n\nHeader.propTypes = {\n title: PropTypes.string,\n subtitle: PropTypes.string,\n};\n\nexport default Header;\n","'use strict';\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar toObject = require('./_to-object');\nvar fails = require('./_fails');\nvar $sort = [].sort;\nvar test = [1, 2, 3];\n\n$export($export.P + $export.F * (fails(function () {\n // IE8-\n test.sort(undefined);\n}) || !fails(function () {\n // V8 bug\n test.sort(null);\n // Old WebKit\n}) || !require('./_strict-method')($sort)), 'Array', {\n // 22.1.3.25 Array.prototype.sort(comparefn)\n sort: function sort(comparefn) {\n return comparefn === undefined\n ? $sort.call(toObject(this))\n : $sort.call(toObject(this), aFunction(comparefn));\n }\n});\n","'use strict';\nvar fails = require('./_fails');\n\nmodule.exports = function (method, arg) {\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call\n arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);\n });\n};\n"],"sourceRoot":""}