{"version":3,"sources":["webpack:///./node_modules/@material-ui/core/esm/Card/Card.js","webpack:///./node_modules/@material-ui/core/esm/CardHeader/CardHeader.js","webpack:///./src/components/blog/index.tsx","webpack:///./src/templates/blog.tsx"],"names":["props","ref","classes","className","_props$raised","raised","other","Paper","root","elevation","withStyles","overflow","name","action","avatar","_props$component","component","Component","_props$disableTypogra","disableTypography","subheaderProp","subheader","subheaderTypographyProps","titleProp","title","titleTypographyProps","type","Typography","variant","display","color","content","alignItems","padding","flex","marginRight","alignSelf","marginTop","useStyles","makeStyles","theme","createStyles","flexGrow","justifyContent","spacing","position","fluid","minHeight","height","maxHeight","width","fontSize","typography","h4","subtitle","h6","h5","palette","primary","contrastText","backgroundColor","main","authorContainer","margin","timeContainer","time","subtitle2","timeIcon","author","card","marginBottom","maxWidth","boxShadow","textAlign","lineHeight","borderBottom","fontWeight","borderTop","Blog","node","tags","frontmatter","showSocial","socials","Container","description","Avatar","alt","charAt","timeToRead","dangerouslySetInnerHTML","__html","html","Divider","light","postNode","postPath","fields","slug","coverContainer","data","pageContext","suggestions","categories","suggestionCards","map","suggestion","thumbnail","link","showAuthor","showDescription","showTags","config","showBottom","markdownRemark","post","showCommments","comments","showSuggestions","id","category_id","rel","href","path","SEO","postSEO","cards","Disqus"],"mappings":"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","file":"component---src-templates-blog-tsx-9709c87055e7f044eaf0.js","sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport Paper from '../Paper';\nimport withStyles from '../styles/withStyles';\nexport var styles = {\n /* Styles applied to the root element. */\n root: {\n overflow: 'hidden'\n }\n};\nvar Card = /*#__PURE__*/React.forwardRef(function Card(props, ref) {\n var classes = props.classes,\n className = props.className,\n _props$raised = props.raised,\n raised = _props$raised === void 0 ? false : _props$raised,\n other = _objectWithoutProperties(props, [\"classes\", \"className\", \"raised\"]);\n\n return /*#__PURE__*/React.createElement(Paper, _extends({\n className: clsx(classes.root, className),\n elevation: raised ? 8 : 1,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? void 0 : void 0;\nexport default withStyles(styles, {\n name: 'MuiCard'\n})(Card);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nimport Typography from '../Typography';\nexport var styles = {\n /* Styles applied to the root element. */\n root: {\n display: 'flex',\n alignItems: 'center',\n padding: 16\n },\n\n /* Styles applied to the avatar element. */\n avatar: {\n flex: '0 0 auto',\n marginRight: 16\n },\n\n /* Styles applied to the action element. */\n action: {\n flex: '0 0 auto',\n alignSelf: 'flex-start',\n marginTop: -8,\n marginRight: -8\n },\n\n /* Styles applied to the content wrapper element. */\n content: {\n flex: '1 1 auto'\n },\n\n /* Styles applied to the title Typography element. */\n title: {},\n\n /* Styles applied to the subheader Typography element. */\n subheader: {}\n};\nvar CardHeader = /*#__PURE__*/React.forwardRef(function CardHeader(props, ref) {\n var action = props.action,\n avatar = props.avatar,\n classes = props.classes,\n className = props.className,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n _props$disableTypogra = props.disableTypography,\n disableTypography = _props$disableTypogra === void 0 ? false : _props$disableTypogra,\n subheaderProp = props.subheader,\n subheaderTypographyProps = props.subheaderTypographyProps,\n titleProp = props.title,\n titleTypographyProps = props.titleTypographyProps,\n other = _objectWithoutProperties(props, [\"action\", \"avatar\", \"classes\", \"className\", \"component\", \"disableTypography\", \"subheader\", \"subheaderTypographyProps\", \"title\", \"titleTypographyProps\"]);\n\n var title = titleProp;\n\n if (title != null && title.type !== Typography && !disableTypography) {\n title = /*#__PURE__*/React.createElement(Typography, _extends({\n variant: avatar ? 'body2' : 'h5',\n className: classes.title,\n component: \"span\",\n display: \"block\"\n }, titleTypographyProps), title);\n }\n\n var subheader = subheaderProp;\n\n if (subheader != null && subheader.type !== Typography && !disableTypography) {\n subheader = /*#__PURE__*/React.createElement(Typography, _extends({\n variant: avatar ? 'body2' : 'body1',\n className: classes.subheader,\n color: \"textSecondary\",\n component: \"span\",\n display: \"block\"\n }, subheaderTypographyProps), subheader);\n }\n\n return /*#__PURE__*/React.createElement(Component, _extends({\n className: clsx(classes.root, className),\n ref: ref\n }, other), avatar && /*#__PURE__*/React.createElement(\"div\", {\n className: classes.avatar\n }, avatar), /*#__PURE__*/React.createElement(\"div\", {\n className: classes.content\n }, title, subheader), action && /*#__PURE__*/React.createElement(\"div\", {\n className: classes.action\n }, action));\n});\nprocess.env.NODE_ENV !== \"production\" ? void 0 : void 0;\nexport default withStyles(styles, {\n name: 'MuiCardHeader'\n})(CardHeader);","import * as React from \"react\";\nimport { createStyles, makeStyles, Theme } from '@material-ui/core/styles';\nimport Paper from '@material-ui/core/Paper';\nimport Tags from '../tags';\nimport Container from '@material-ui/core/Container';\nimport Social from '../social';\nimport Divider from '@material-ui/core/Divider';\nimport Typography from '@material-ui/core/Typography';\nimport Avatar from '@material-ui/core/Avatar';\nimport Card from '@material-ui/core/Card';\nimport CardHeader from '@material-ui/core/CardHeader';\nimport Cover from '../cover';\nimport './blog.scss';\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n root: {\n flexGrow: 1,\n justifyContent: 'space-between',\n padding: theme.spacing(3, 2),\n // zIndex: 3,\n position: 'relative',\n // marginTop: '20px'\n },\n fluid: {\n minHeight: '360px',\n height: 'auto',\n maxHeight: '60vh',\n width: '100%',\n position: 'relative'\n },\n title: {\n fontSize: theme.typography.h4.fontSize,\n padding: theme.spacing(1),\n },\n subtitle: {\n fontSize: theme.typography.h6.fontSize,\n padding: theme.spacing(1),\n color: theme.typography.h5.color,\n },\n avatar: {\n color: theme.palette.primary.contrastText,\n backgroundColor: theme.palette.primary.main,\n width: '3rem',\n height: '3rem',\n fontSize: '2rem'\n },\n authorContainer: {\n margin: theme.spacing(2),\n },\n timeContainer: {\n width: 'auto',\n },\n time: {\n fontSize: theme.typography.subtitle2.fontSize,\n display: 'flex',\n alignItems: 'center'\n },\n timeIcon: {\n fontSize: theme.typography.subtitle2.fontSize,\n marginRight: theme.spacing(1)\n // padding: theme.spacing(0.5),\n },\n author: {\n fontSize: '0.7rem'\n },\n card: {\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(4)\n },\n content: {\n maxWidth: '100%',\n '& blockquote': {\n color: 'slategrey',\n },\n '& img': {\n width: '100%',\n boxShadow: 'none !important',\n },\n '& a': {\n color: '#2e9fff',\n },\n '& > h1, > h2, > h3, > h4, > h5, > h6': {\n marginTop: '20px',\n marginBottom: '20px !important',\n },\n '& l1': {\n marginTop: '15px',\n },\n '& table': {\n width: '100%',\n maxWidth: '100%',\n marginBottom: '20px',\n },\n '& table > thead > tr > th, table > tbody > tr > th, table > tfoot > tr > th': {\n textAlign: 'left',\n },\n '& table > thead > tr > th, table > thead > tr > td, table > tbody > tr > th, table > tbody > tr > td, table > tfoot > tr > th, table > tfoot > tr > td': {\n padding: '10px',\n lineHeight: 1.429,\n },\n '& table > thead > tr > th': {\n borderBottom: '2px solid rgba(0, 0, 0, 0.12)',\n fontWeight: 700,\n },\n '& table > tbody + tbody': {\n borderTop: '2px solid rgba(0, 0, 0, 0.12)'\n },\n '& table > tbody > tr > td': {\n borderBottom: '1px solid rgba(0, 0, 0, 0.12)',\n }\n },\n }),\n);\n\nconst Blog = (props) => {\n const classes = useStyles(props);\n const {node} = props;\n const tags = node.frontmatter.tags;\n const showSocial = node.frontmatter.socials !== null && node.frontmatter.socials !== false;\n\n return (\n \n \n {node.frontmatter.title}\n {node.frontmatter.description}\n \n \n {/* \n \n {node.frontmatter.author.charAt(0)}\n \n \n \n {node.frontmatter.author}\n \n \n {node.frontmatter.time} min read\n \n \n \n */}\n \n {node.frontmatter.author.charAt(0)}\n }\n title={node.frontmatter.author}\n subheader={`☕ ${node.timeToRead} min read`}\n />\n \n \n {/* \n \n */}\n \n \n {\n // tslint:disable:react-no-dangerous-html\n \n // tslint:enable:react-no-dangerous-html\n }\n \n {tags && (<>\n \n \n \n >)}\n \n \n \n {showSocial && (<>\n \n >)}\n \n );\n}\n\nexport default Blog;","import * as React from \"react\"\nimport { graphql } from \"gatsby\"\nimport PostLayout from '../components/layouts/post-layout';\nimport ProductContainer from '../components/product-container/container';\nimport Container from '@material-ui/core/Container';\nimport { createStyles, makeStyles, Theme } from '@material-ui/core/styles';\nimport Blog from '../components/blog';\nimport Disqus from '../components/Disqus';\nimport Card3 from '../components/cards/card3';\nimport * as config from '../../config/SiteConfig.js';\nimport Helmet from \"react-helmet\";\nimport SEO from \"../components/SEO\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n coverContainer: {\n padding: 0,\n marginTop: 0,\n marginBottom: 0\n }\n }),\n);\n\n export default (props) => {\n const classes = useStyles(props);\n const {data, pageContext} = props;\n const {suggestions, categories} = pageContext;\n const suggestionCards = suggestions.map((suggestion) => ({\n title: suggestion.node.frontmatter.title,\n thumbnail: suggestion.node.frontmatter.thumbnail,\n link: `${suggestion.node.fields.type !== 'page' ? `/${suggestion.node.fields.type}` : ''}${suggestion.node.fields.slug}`,\n showAuthor: true,\n showDescription: false,\n showTags: false,\n author: suggestion.node.frontmatter.author || config.postDefaultAuthor,\n showBottom: true,\n timeToRead: suggestion.node.timeToRead,\n }));\n const node = data.markdownRemark;\n const post = node.frontmatter;\n const showCommments = post.comments !== null && post.comments !== false;\n const showSuggestions = post.suggestion !== null && post.suggestion !== false;\n \n if (!post.id) {\n post.id = node.fields.slug;\n }\n if (!post.category_id) {\n post.category_id = config.postDefaultCategoryID;\n }\n if(!post.author) {\n post.author = config.postDefaultAuthor;\n }\n \n return (\n \n \n {post.title}\n \n \n \n {/* \n \n */}\n \n \n \n {showSuggestions && \n \n }\n {showCommments && \n \n }\n \n )\n }\n \n export const query = graphql`\n query BlogPostBySlug($slug: String!) {\n markdownRemark(fields: { slug: { eq: $slug } }) {\n html\n timeToRead\n excerpt\n frontmatter {\n title\n page_cover\n date\n thumbnail\n category\n tags\n comments\n suggestion\n socials\n }\n fields {\n slug\n date\n type\n }\n }\n }\n `;"],"sourceRoot":""}