{"version":3,"sources":["webpack:///./src/components/Button.js","webpack:///./src/templates/index-page.js","webpack:///./src/components/BlogRoll.js"],"names":["useStyles","createUseStyles","theme","button","appearance","backgroundColor","border","borderColor","palette","borderRadius","radius1","color","padding","spacing","width","font","lineHeight","cursor","outline","Button","_ref","className","children","classes","React","createElement","type","defaultProps","root","fontFamily","fontSize","image","height","backgroundSize","backgroundRepeat","backgroundPosition","display","justifyContent","alignItems","title","maxWidth","heading","content","margin","buttonRow","marginTop","IndexPageTemplate","props","contentComponent","mainText","secondaryText","PageContent","Content","PreviewCompatibleImage","imageInfo","Link","to","BlogRoll","limit","featured","IndexPage","path","data","frontmatter","markdownRemark","Layout","HTMLContent","fields","blogRoll","flexFlow","textAlign","roll","flexWrap","blogBox","flex","boxShadow","radius3","link","textDecoration","postTitle","fontWeight","date","description","moreButton","position","bottom","BlogRollComponent","edges","allMarkdownRemark","filter","edge","node","featuredpost","map","key","slug","Date","toLocaleDateString","year","month","day","slice","StaticQuery","query","render"],"mappings":"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","file":"component---src-templates-index-page-js-db0324f9ed84ecae9ebc.js","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {createUseStyles} from \"react-jss\";\n\nconst useStyles = createUseStyles(theme => ({\n button: {\n appearance: \"none\",\n backgroundColor: \"white\",\n border: \"1px solid\",\n borderColor: theme.palette[\"primary-500\"],\n borderRadius: theme.borderRadius.radius1,\n color: theme.palette[\"primary-500\"],\n padding: `${theme.spacing[4]} ${theme.spacing[16]}`,\n width: \"fit-content\",\n font: \"inherit\",\n lineHeight: theme.font.lineHeight,\n \"&:hover\": {\n cursor: \"pointer\"\n },\n \"&:focus\": {\n outline: \"none\"\n }\n }\n}));\n\nconst Button = ({className, children}) => {\n const classes = useStyles();\n return (\n \n );\n};\n\nButton.defaultProps = {\n className: null,\n children: null\n}\n\nButton.propTypes = {\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element,\n PropTypes.arrayOf(PropTypes.element)\n ])\n};\n\nexport default Button;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {Link, graphql} from \"gatsby\";\nimport {createUseStyles} from \"react-jss\";\nimport Layout from \"../components/Layout\";\nimport Content, {HTMLContent} from \"../components/Content\";\nimport PreviewCompatibleImage from \"../components/PreviewCompatibleImage\";\nimport Button from \"../components/Button\";\nimport BlogRoll from \"../components/BlogRoll\";\n\nexport const useStyles = createUseStyles(theme => ({\n root: {\n fontFamily: theme.font.fontFamily,\n fontSize: theme.font.fontSize,\n lineHeight: theme.font.lineHeight\n },\n image: {\n width: \"100%\",\n height: \"600px\",\n backgroundColor: theme.palette[\"neutral-100\"],\n backgroundSize: \"cover\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\"\n },\n title: {\n color: \"white\",\n width: \"90%\",\n maxWidth: \"500px\"\n },\n heading: {\n fontSize: theme.fontSize[\"32\"],\n \"@media (min-width: 768px)\": {\n fontSize: theme.fontSize[\"48\"]\n }\n },\n content: {\n width: \"90%\",\n maxWidth: \"720px\",\n margin: `${theme.spacing[\"96\"]} auto`,\n \"& > div\": {\n margin: `${theme.spacing[\"96\"]} 0`\n }\n },\n buttonRow: {\n display: \"flex\",\n justifyContent: \"space-around\",\n \"& a\": {\n marginTop: `-${theme.spacing[\"32\"]}`\n }\n }\n}));\n\nexport const IndexPageTemplate = props => {\n const {contentComponent, heading, image, mainText, secondaryText} = props;\n const classes = useStyles(image);\n const PageContent = contentComponent || Content;\n\n return (\n
\n \n
\n

{heading}

\n
\n \n
\n \n
\n \n \n \n \n \n \n
\n \n \n
\n
\n );\n};\n\nIndexPageTemplate.propTypes = {\n heading: PropTypes.string.isRequired,\n image: PropTypes.oneOfType([PropTypes.object, PropTypes.string]).isRequired,\n contentComponent: PropTypes.func.isRequired,\n mainText: PropTypes.string.isRequired,\n secondaryText: PropTypes.string.isRequired\n};\n\nconst IndexPage = ({path, data}) => {\n const {frontmatter} = data.markdownRemark;\n return (\n
\n \n \n \n
\n );\n};\n\nIndexPage.propTypes = {\n path: PropTypes.string.isRequired,\n data: PropTypes.objectOf(PropTypes.object).isRequired\n}\n\nexport default IndexPage;\n\nexport const pageQuery = graphql`\n query IndexPageTemplate {\n markdownRemark(frontmatter: {templateKey: {eq: \"index-page\"}}) {\n frontmatter {\n heading\n image {\n childImageSharp {\n fluid(maxWidth: 2048, quality: 90) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n fields {\n mainText\n secondaryText\n }\n }\n }\n`;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {Link, graphql, StaticQuery} from \"gatsby\";\nimport {createUseStyles} from \"react-jss\";\nimport Button from \"./Button\";\n\nconst useStyles = createUseStyles(theme => ({\n blogRoll: {\n display: \"flex\",\n flexFlow: \"column\",\n justifyContent: \"center\",\n alignItems: \"center\",\n maxWidth: props => props.maxWidth\n },\n title: {\n width: \"100%\",\n textAlign: \"left\",\n color: theme.palette[\"neutral-800\"]\n },\n roll: {\n width: `calc(100% + ${theme.spacing[\"16\"]})`,\n display: \"flex\",\n flexWrap: \"wrap\",\n justifyContent: \"flex-start\",\n margin: `0 -${theme.spacing[\"8\"]}`\n },\n blogBox: {\n flex: \"0 0 auto\",\n padding: theme.spacing[\"32\"],\n maxWidth: \"calc(50% - 16px)\",\n backgroundColor: \"white\",\n border: `1px solid ${theme.palette[\"neutral-050\"]}`,\n boxShadow:\n \"0 3px 5px hsla(0, 0%, 0%, 0.1), 0 5px 15px hsla(0, 0%, 0%, 0.05)\",\n borderRadius: theme.borderRadius.radius3,\n display: \"flex\",\n flexFlow: \"column\",\n justifyContent: \"space-between\",\n margin: theme.spacing[\"8\"],\n \"@media (max-width: 720px)\": {\n maxWidth: \"calc(100% - 16px)\"\n }\n },\n link: {\n textDecoration: \"none\"\n },\n postTitle: {\n margin: \"0\",\n color: theme.palette[\"primary-500\"],\n fontWeight: \"700\"\n },\n date: {\n color: theme.palette[\"neutral-400\"],\n fontSize: theme.fontSize[\"14\"]\n },\n description: {\n margin: \"0\",\n color: theme.palette[\"neutral-600\"]\n },\n moreButton: {\n marginTop: theme.spacing[\"16\"],\n appearance: \"none\",\n position: \"relative\",\n bottom: \"0\"\n }\n}));\n\nconst BlogRollComponent = props => {\n const {data, limit, title, featured} = props;\n const classes = useStyles(props);\n const {edges} = data.allMarkdownRemark;\n\n const formatDate = date => {\n const d = new Date(date);\n return d.toLocaleDateString(\"nb-NO\", {\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\"\n });\n };\n\n\n return (\n
\n

{title}

\n
\n {edges\n .filter(edge =>\n featured ? edge.node.frontmatter.featuredpost : true\n )\n .map(edge => (\n \n
\n \n

\n {edge.node.frontmatter.title}\n

\n \n

\n {formatDate(edge.node.frontmatter.date)}\n

\n

\n {edge.node.frontmatter.description}\n

\n
\n \n \n \n
\n ))\n .slice(0, limit)}\n
\n \n );\n};\n\n\nBlogRollComponent.propTypes = {\n data: PropTypes.objectOf(PropTypes.objectOf(PropTypes.array)).isRequired,\n limit: PropTypes.number.isRequired,\n title: PropTypes.string.isRequired,\n featured: PropTypes.bool.isRequired\n};\n\nconst BlogRoll = ({limit, title, featured}) => (\n (\n \n )}\n />\n);\n\nBlogRoll.defaultProps = {\n limit: 99,\n featured: false\n};\n\nBlogRoll.propTypes = {\n limit: PropTypes.number,\n title: PropTypes.string.isRequired,\n featured: PropTypes.bool\n};\n\nexport default BlogRoll;\n"],"sourceRoot":""}