{"version":3,"sources":["webpack:///./src/css/header.module.css","webpack:///./node_modules/react-bootstrap/esm/Image.js","webpack:///./node_modules/react-bootstrap/esm/Row.js","webpack:///./node_modules/react-bootstrap/esm/Col.js","webpack:///./src/components/header.js","webpack:///./src/components/module-preview.js","webpack:///./src/templates/category.js","webpack:///./src/css/module-preview.module.css"],"names":["module","exports","Image","string","bool","forwardRef","_ref","ref","bsPrefix","className","fluid","rounded","roundedCircle","thumbnail","props","classes","createElement","displayName","defaultProps","DEVICE_SIZES","Row","noGutters","_ref$as","as","Component","decoratedBsPrefix","sizePrefix","forEach","brkPoint","cols","propValue","infix","push","apply","concat","Col","prefix","spans","span","offset","order","_propValue$span","length","Header","render","this","image","bgImage","text","alt","applyGradient","styles","hero","heroGradient","heroSolid","animationIn","animationOut","heroImage","src","heroImageGradient","heroImageGradientBlurred","heroOverlayText","heroText","React","ModulePreview","to","category","slug","previewBackground","title","previewImg","previewTitle","previewBody","dangerouslySetInnerHTML","__html","description","childMarkdownRemark","html","previewDetails","author","map","x","firstName","lastName","join","body","timeToRead","CategoryTemplate","get","modules","tagline","location","node","key","md"],"mappings":"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","file":"component---src-templates-category-js-6ed71dd106416863da24.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"hero\":\"header-module--hero--1dQuu\",\"heroGradient\":\"header-module--heroGradient--1K-fK\",\"gradient\":\"header-module--gradient--1jRmb\",\"heroSolid\":\"header-module--heroSolid--1M9Ho\",\"heroImage\":\"header-module--heroImage--2cYRB\",\"heroImageGradient\":\"header-module--heroImageGradient--37OGi\",\"heroImageGradientBlurred\":\"header-module--heroImageGradientBlurred--3cR9v\",\"heroOverlayText\":\"header-module--heroOverlayText--FUF6M\",\"heroText\":\"header-module--heroText--2vE9y\"};","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { useBootstrapPrefix } from './ThemeProvider';\nexport var propTypes = {\n /**\n * @default 'img'\n */\n bsPrefix: PropTypes.string,\n\n /**\n * Sets image as fluid image.\n */\n fluid: PropTypes.bool,\n\n /**\n * Sets image shape as rounded.\n */\n rounded: PropTypes.bool,\n\n /**\n * Sets image shape as circle.\n */\n roundedCircle: PropTypes.bool,\n\n /**\n * Sets image shape as thumbnail.\n */\n thumbnail: PropTypes.bool\n};\nvar defaultProps = {\n fluid: false,\n rounded: false,\n roundedCircle: false,\n thumbnail: false\n};\nvar Image = React.forwardRef(function (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n className = _ref.className,\n fluid = _ref.fluid,\n rounded = _ref.rounded,\n roundedCircle = _ref.roundedCircle,\n thumbnail = _ref.thumbnail,\n props = _objectWithoutPropertiesLoose(_ref, [\"bsPrefix\", \"className\", \"fluid\", \"rounded\", \"roundedCircle\", \"thumbnail\"]);\n\n bsPrefix = useBootstrapPrefix(bsPrefix, 'img');\n var classes = classNames(fluid && bsPrefix + \"-fluid\", rounded && \"rounded\", roundedCircle && \"rounded-circle\", thumbnail && bsPrefix + \"-thumbnail\");\n return /*#__PURE__*/React.createElement(\"img\", _extends({\n // eslint-disable-line jsx-a11y/alt-text\n ref: ref\n }, props, {\n className: classNames(className, classes)\n }));\n});\nImage.displayName = 'Image';\nImage.defaultProps = defaultProps;\nexport default Image;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nvar DEVICE_SIZES = ['xl', 'lg', 'md', 'sm', 'xs'];\nvar defaultProps = {\n noGutters: false\n};\nvar Row = React.forwardRef(function (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n className = _ref.className,\n noGutters = _ref.noGutters,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n props = _objectWithoutPropertiesLoose(_ref, [\"bsPrefix\", \"className\", \"noGutters\", \"as\"]);\n\n var decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'row');\n var sizePrefix = decoratedBsPrefix + \"-cols\";\n var classes = [];\n DEVICE_SIZES.forEach(function (brkPoint) {\n var propValue = props[brkPoint];\n delete props[brkPoint];\n var cols;\n\n if (propValue != null && typeof propValue === 'object') {\n cols = propValue.cols;\n } else {\n cols = propValue;\n }\n\n var infix = brkPoint !== 'xs' ? \"-\" + brkPoint : '';\n if (cols != null) classes.push(\"\" + sizePrefix + infix + \"-\" + cols);\n });\n return /*#__PURE__*/React.createElement(Component, _extends({\n ref: ref\n }, props, {\n className: classNames.apply(void 0, [className, decoratedBsPrefix, noGutters && 'no-gutters'].concat(classes))\n }));\n});\nRow.displayName = 'Row';\nRow.defaultProps = defaultProps;\nexport default Row;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nvar DEVICE_SIZES = ['xl', 'lg', 'md', 'sm', 'xs'];\nvar Col = React.forwardRef( // Need to define the default \"as\" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595\nfunction (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n className = _ref.className,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n props = _objectWithoutPropertiesLoose(_ref, [\"bsPrefix\", \"className\", \"as\"]);\n\n var prefix = useBootstrapPrefix(bsPrefix, 'col');\n var spans = [];\n var classes = [];\n DEVICE_SIZES.forEach(function (brkPoint) {\n var propValue = props[brkPoint];\n delete props[brkPoint];\n var span;\n var offset;\n var order;\n\n if (typeof propValue === 'object' && propValue != null) {\n var _propValue$span = propValue.span;\n span = _propValue$span === void 0 ? true : _propValue$span;\n offset = propValue.offset;\n order = propValue.order;\n } else {\n span = propValue;\n }\n\n var infix = brkPoint !== 'xs' ? \"-\" + brkPoint : '';\n if (span) spans.push(span === true ? \"\" + prefix + infix : \"\" + prefix + infix + \"-\" + span);\n if (order != null) classes.push(\"order\" + infix + \"-\" + order);\n if (offset != null) classes.push(\"offset\" + infix + \"-\" + offset);\n });\n\n if (!spans.length) {\n spans.push(prefix); // plain 'col'\n }\n\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n ref: ref,\n className: classNames.apply(void 0, [className].concat(spans, classes))\n }));\n});\nCol.displayName = 'Col';\nexport default Col;","// Sets up React stuff.\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\n// Sets up stuff for header images.\nimport Img from 'gatsby-image';\nimport Image from 'react-bootstrap/Image';\n\n// Brings in stuff needed for css.\nimport {Animated} from 'react-animated-css';\nimport styles from '../css/header.module.css';\n\n/**\n * The class that represents the header component.\n */\nclass Header extends React.Component {\n /**\n * Returns the headere content that is supposed to be rendered by a\n * user's browser.\n * @return {*} The content of the header component that is rendered\n * by a browser\n */\n render() {\n const {image, bgImage, text, alt, applyGradient} = this.props;\n\n return (\n
\n By {module.author.map(x => x.firstName + \" \" + x.lastName).join(\", \")} · \n {module.body.childMarkdownRemark.timeToRead} min read\n
\n \n );\n }\n}\n\n// Defines the propTypes of ModulePreview.\nModulePreview.propTypes = {\n module: PropTypes.shape({\n module: PropTypes.shape({\n slug: PropTypes.any,\n }),\n description: PropTypes.any,\n heroImage: PropTypes.shape({\n fluid: PropTypes.any,\n }),\n slug: PropTypes.any,\n title: PropTypes.any,\n }),\n};\n\nexport default ModulePreview;\n","import { graphql } from 'gatsby';\nimport get from 'lodash/get';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { Col, Row } from 'react-bootstrap';\nimport Header from '../components/header';\nimport Layout from '../components/layout';\nimport ModulePreview from '../components/module-preview';\n\n/**\n * The class that represents the template for a category page.\n */\nclass CategoryTemplate extends React.Component {\n /**\n * Returns the category page content that is supposed to be rendered\n * by a user's browser inside a Layout component.\n * @return {*} The a category page content that is supposed to\n * be rendered by a browser.\n */\n render() {\n const category = get(this.props, 'data.contentfulCategory');\n const modules = get(this.props, 'data.allContentfulModule.edges');\n\n return (\n