{"version":3,"sources":["webpack:///./node_modules/semantic-ui-react/dist/es/elements/List/ListDescription.js","webpack:///./node_modules/semantic-ui-react/dist/es/elements/List/ListHeader.js","webpack:///./node_modules/semantic-ui-react/dist/es/elements/List/ListContent.js","webpack:///./node_modules/semantic-ui-react/dist/es/elements/List/ListIcon.js","webpack:///./node_modules/semantic-ui-react/dist/es/elements/List/ListItem.js","webpack:///./node_modules/semantic-ui-react/dist/es/elements/List/ListList.js","webpack:///./node_modules/semantic-ui-react/dist/es/elements/List/List.js","webpack:///./src/components/TagsCard/TagsCard.tsx","webpack:///./src/components/BlogPagination/BlogPagination.tsx","webpack:///./src/pages/blog.tsx"],"names":["ListDescription","props","children","className","content","classes","rest","getUnhandledProps","ElementType","getElementType","createElement","isNil","handledProps","propTypes","create","ListHeader","ListContent","description","floated","header","verticalAlign","ListIcon","Icon","name","_Component","ListItem","_getPrototypeOf2","_this","this","_len","arguments","length","args","Array","_key","call","apply","concat","e","disabled","key","value","_this$props","active","icon","image","valueProp","role","onClick","handleClick","iconElement","autoGenerateKey","imageElement","Image","defaultProps","headerElement","descriptionElement","ListList","List","predefinedProps","itemProps","_this2","animated","bulleted","celled","divided","horizontal","inverted","items","link","ordered","relaxed","selection","size","item","overrideProps","handleItemOverrides","Card","Content","Header","tags","map","tag","isActive","fieldValue","tagLink","Item","as","color","style","fontWeight","Link","to","totalCount","pageCount","activeItem","pathname","startsWith","split","Menu","pagination","times","index","pageIndex","toString","rangeStep","isInRange","isLastPage","cursor","withLayout","data","group","posts","edges","location","Math","ceil","Posts","Container","node","frontmatter","timeToRead","slug","fields","excerpt","avatar","author","cover","get","extra","Comment","Group","Avatar","src","fixed","srcSet","Author","id","Metadata","margin","updatedDate","Description","fluid","title","BlogTitle","Segment","vertical","Grid","padded","justifyContent","maxWidth","textAlign","BlogPagination","TagsCard","pageContext","pageQuery"],"mappings":"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","file":"component---src-pages-blog-tsx-f503acc1e66094400d28.js","sourcesContent":["import _extends from \"@babel/runtime/helpers/extends\";\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { childrenUtils, createShorthandFactory, customPropTypes, getElementType, getUnhandledProps } from '../../lib';\n/**\n * A list item can contain a description.\n */\n\nfunction ListDescription(props) {\n var children = props.children,\n className = props.className,\n content = props.content;\n var classes = cx(className, 'description');\n var rest = getUnhandledProps(ListDescription, props);\n var ElementType = getElementType(ListDescription, props);\n return React.createElement(ElementType, _extends({}, rest, {\n className: classes\n }), childrenUtils.isNil(children) ? content : children);\n}\n\nListDescription.handledProps = [\"as\", \"children\", \"className\", \"content\"];\nListDescription.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /** An element type to render as (string or function). */\n as: customPropTypes.as,\n\n /** Primary content. */\n children: PropTypes.node,\n\n /** Additional classes. */\n className: PropTypes.string,\n\n /** Shorthand for primary content. */\n content: customPropTypes.contentShorthand\n} : {};\nListDescription.create = createShorthandFactory(ListDescription, function (content) {\n return {\n content: content\n };\n});\nexport default ListDescription;","import _extends from \"@babel/runtime/helpers/extends\";\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { childrenUtils, createShorthandFactory, customPropTypes, getElementType, getUnhandledProps } from '../../lib';\n/**\n * A list item can contain a header.\n */\n\nfunction ListHeader(props) {\n var children = props.children,\n className = props.className,\n content = props.content;\n var classes = cx('header', className);\n var rest = getUnhandledProps(ListHeader, props);\n var ElementType = getElementType(ListHeader, props);\n return React.createElement(ElementType, _extends({}, rest, {\n className: classes\n }), childrenUtils.isNil(children) ? content : children);\n}\n\nListHeader.handledProps = [\"as\", \"children\", \"className\", \"content\"];\nListHeader.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /** An element type to render as (string or function). */\n as: customPropTypes.as,\n\n /** Primary content. */\n children: PropTypes.node,\n\n /** Additional classes. */\n className: PropTypes.string,\n\n /** Shorthand for primary content. */\n content: customPropTypes.contentShorthand\n} : {};\nListHeader.create = createShorthandFactory(ListHeader, function (content) {\n return {\n content: content\n };\n});\nexport default ListHeader;","import _extends from \"@babel/runtime/helpers/extends\";\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { childrenUtils, createShorthandFactory, customPropTypes, getElementType, getUnhandledProps, SUI, useValueAndKey, useVerticalAlignProp } from '../../lib';\nimport ListDescription from './ListDescription';\nimport ListHeader from './ListHeader';\n/**\n * A list item can contain a content.\n */\n\nfunction ListContent(props) {\n var children = props.children,\n className = props.className,\n content = props.content,\n description = props.description,\n floated = props.floated,\n header = props.header,\n verticalAlign = props.verticalAlign;\n var classes = cx(useValueAndKey(floated, 'floated'), useVerticalAlignProp(verticalAlign), 'content', className);\n var rest = getUnhandledProps(ListContent, props);\n var ElementType = getElementType(ListContent, props);\n\n if (!childrenUtils.isNil(children)) {\n return React.createElement(ElementType, _extends({}, rest, {\n className: classes\n }), children);\n }\n\n return React.createElement(ElementType, _extends({}, rest, {\n className: classes\n }), ListHeader.create(header), ListDescription.create(description), content);\n}\n\nListContent.handledProps = [\"as\", \"children\", \"className\", \"content\", \"description\", \"floated\", \"header\", \"verticalAlign\"];\nListContent.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /** An element type to render as (string or function). */\n as: customPropTypes.as,\n\n /** Primary content. */\n children: PropTypes.node,\n\n /** Additional classes. */\n className: PropTypes.string,\n\n /** Shorthand for primary content. */\n content: customPropTypes.contentShorthand,\n\n /** Shorthand for ListDescription. */\n description: customPropTypes.itemShorthand,\n\n /** An list content can be floated left or right. */\n floated: PropTypes.oneOf(SUI.FLOATS),\n\n /** Shorthand for ListHeader. */\n header: customPropTypes.itemShorthand,\n\n /** An element inside a list can be vertically aligned. */\n verticalAlign: PropTypes.oneOf(SUI.VERTICAL_ALIGNMENTS)\n} : {};\nListContent.create = createShorthandFactory(ListContent, function (content) {\n return {\n content: content\n };\n});\nexport default ListContent;","import _extends from \"@babel/runtime/helpers/extends\";\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { createShorthandFactory, getUnhandledProps, SUI, useVerticalAlignProp } from '../../lib';\nimport Icon from '../Icon/Icon';\n/**\n * A list item can contain an icon.\n */\n\nfunction ListIcon(props) {\n var className = props.className,\n verticalAlign = props.verticalAlign;\n var classes = cx(useVerticalAlignProp(verticalAlign), className);\n var rest = getUnhandledProps(ListIcon, props);\n return React.createElement(Icon, _extends({}, rest, {\n className: classes\n }));\n}\n\nListIcon.handledProps = [\"className\", \"verticalAlign\"];\nListIcon.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /** Additional classes. */\n className: PropTypes.string,\n\n /** An element inside a list can be vertically aligned. */\n verticalAlign: PropTypes.oneOf(SUI.VERTICAL_ALIGNMENTS)\n} : {};\nListIcon.create = createShorthandFactory(ListIcon, function (name) {\n return {\n name: name\n };\n});\nexport default ListIcon;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _isPlainObject from \"lodash/isPlainObject\";\nimport _invoke from \"lodash/invoke\";\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport React, { Component, isValidElement } from 'react';\nimport { childrenUtils, createShorthandFactory, customPropTypes, getElementType, getUnhandledProps, useKeyOnly } from '../../lib';\nimport Image from '../Image';\nimport ListContent from './ListContent';\nimport ListDescription from './ListDescription';\nimport ListHeader from './ListHeader';\nimport ListIcon from './ListIcon';\n/**\n * A list item can contain a set of items.\n */\n\nvar ListItem =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(ListItem, _Component);\n\n function ListItem() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, ListItem);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(ListItem)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"handleClick\", function (e) {\n var disabled = _this.props.disabled;\n if (!disabled) _invoke(_this.props, 'onClick', e, _this.props);\n });\n\n return _this;\n }\n\n _createClass(ListItem, [{\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n active = _this$props.active,\n children = _this$props.children,\n className = _this$props.className,\n content = _this$props.content,\n description = _this$props.description,\n disabled = _this$props.disabled,\n header = _this$props.header,\n icon = _this$props.icon,\n image = _this$props.image,\n value = _this$props.value;\n var ElementType = getElementType(ListItem, this.props);\n var classes = cx(useKeyOnly(active, 'active'), useKeyOnly(disabled, 'disabled'), useKeyOnly(ElementType !== 'li', 'item'), className);\n var rest = getUnhandledProps(ListItem, this.props);\n var valueProp = ElementType === 'li' ? {\n value: value\n } : {\n 'data-value': value\n };\n\n if (!childrenUtils.isNil(children)) {\n return React.createElement(ElementType, _extends({}, valueProp, {\n role: \"listitem\",\n className: classes,\n onClick: this.handleClick\n }, rest), children);\n }\n\n var iconElement = ListIcon.create(icon, {\n autoGenerateKey: false\n });\n var imageElement = Image.create(image, {\n autoGenerateKey: false\n }); // See description of `content` prop for explanation about why this is necessary.\n\n if (!isValidElement(content) && _isPlainObject(content)) {\n return React.createElement(ElementType, _extends({}, valueProp, {\n role: \"listitem\",\n className: classes,\n onClick: this.handleClick\n }, rest), iconElement || imageElement, ListContent.create(content, {\n autoGenerateKey: false,\n defaultProps: {\n header: header,\n description: description\n }\n }));\n }\n\n var headerElement = ListHeader.create(header, {\n autoGenerateKey: false\n });\n var descriptionElement = ListDescription.create(description, {\n autoGenerateKey: false\n });\n\n if (iconElement || imageElement) {\n return React.createElement(ElementType, _extends({}, valueProp, {\n role: \"listitem\",\n className: classes,\n onClick: this.handleClick\n }, rest), iconElement || imageElement, (content || headerElement || descriptionElement) && React.createElement(ListContent, null, headerElement, descriptionElement, content));\n }\n\n return React.createElement(ElementType, _extends({}, valueProp, {\n role: \"listitem\",\n className: classes,\n onClick: this.handleClick\n }, rest), headerElement, descriptionElement, content);\n }\n }]);\n\n return ListItem;\n}(Component);\n\n_defineProperty(ListItem, \"handledProps\", [\"active\", \"as\", \"children\", \"className\", \"content\", \"description\", \"disabled\", \"header\", \"icon\", \"image\", \"onClick\", \"value\"]);\n\nListItem.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /** An element type to render as (string or function). */\n as: customPropTypes.as,\n\n /** A list item can active. */\n active: PropTypes.bool,\n\n /** Primary content. */\n children: PropTypes.node,\n\n /** Additional classes. */\n className: PropTypes.string,\n\n /**\n * Shorthand for primary content.\n *\n * Heads up!\n *\n * This is handled slightly differently than the typical `content` prop since\n * the wrapping ListContent is not used when there's no icon or image.\n *\n * If you pass content as:\n * - an element/literal, it's treated as the sibling node to\n * header/description (whether wrapped in Item.Content or not).\n * - a props object, it forces the presence of Item.Content and passes those\n * props to it. If you pass a content prop within that props object, it\n * will be treated as the sibling node to header/description.\n */\n content: customPropTypes.itemShorthand,\n\n /** Shorthand for ListDescription. */\n description: customPropTypes.itemShorthand,\n\n /** A list item can disabled. */\n disabled: PropTypes.bool,\n\n /** Shorthand for ListHeader. */\n header: customPropTypes.itemShorthand,\n\n /** Shorthand for ListIcon. */\n icon: customPropTypes.every([customPropTypes.disallow(['image']), customPropTypes.itemShorthand]),\n\n /** Shorthand for Image. */\n image: customPropTypes.every([customPropTypes.disallow(['icon']), customPropTypes.itemShorthand]),\n\n /** A ListItem can be clicked */\n onClick: PropTypes.func,\n\n /** A value for an ordered list. */\n value: PropTypes.string\n} : {};\nListItem.create = createShorthandFactory(ListItem, function (content) {\n return {\n content: content\n };\n});\nexport default ListItem;","import _extends from \"@babel/runtime/helpers/extends\";\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { childrenUtils, customPropTypes, getElementType, getUnhandledProps, useKeyOnly } from '../../lib';\n/**\n * A list can contain a sub list.\n */\n\nfunction ListList(props) {\n var children = props.children,\n className = props.className,\n content = props.content;\n var rest = getUnhandledProps(ListList, props);\n var ElementType = getElementType(ListList, props);\n var classes = cx(useKeyOnly(ElementType !== 'ul' && ElementType !== 'ol', 'list'), className);\n return React.createElement(ElementType, _extends({}, rest, {\n className: classes\n }), childrenUtils.isNil(children) ? content : children);\n}\n\nListList.handledProps = [\"as\", \"children\", \"className\", \"content\"];\nListList.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /** An element type to render as (string or function). */\n as: customPropTypes.as,\n\n /** Primary content. */\n children: PropTypes.node,\n\n /** Additional classes. */\n className: PropTypes.string,\n\n /** Shorthand for primary content. */\n content: customPropTypes.contentShorthand\n} : {};\nexport default ListList;","import \"core-js/modules/es6.string.link\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _map from \"lodash/map\";\nimport _invoke from \"lodash/invoke\";\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport React, { Component } from 'react';\nimport { childrenUtils, customPropTypes, getElementType, getUnhandledProps, SUI, useKeyOnly, useKeyOrValueAndKey, useValueAndKey, useVerticalAlignProp } from '../../lib';\nimport ListContent from './ListContent';\nimport ListDescription from './ListDescription';\nimport ListHeader from './ListHeader';\nimport ListIcon from './ListIcon';\nimport ListItem from './ListItem';\nimport ListList from './ListList';\n/**\n * A list groups related content.\n */\n\nvar List =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(List, _Component);\n\n function List() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, List);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(List)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemOverrides\", function (predefinedProps) {\n return {\n onClick: function onClick(e, itemProps) {\n _invoke(predefinedProps, 'onClick', e, itemProps);\n\n _invoke(_this.props, 'onItemClick', e, itemProps);\n }\n };\n });\n\n return _this;\n }\n\n _createClass(List, [{\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var _this$props = this.props,\n animated = _this$props.animated,\n bulleted = _this$props.bulleted,\n celled = _this$props.celled,\n children = _this$props.children,\n className = _this$props.className,\n content = _this$props.content,\n divided = _this$props.divided,\n floated = _this$props.floated,\n horizontal = _this$props.horizontal,\n inverted = _this$props.inverted,\n items = _this$props.items,\n link = _this$props.link,\n ordered = _this$props.ordered,\n relaxed = _this$props.relaxed,\n selection = _this$props.selection,\n size = _this$props.size,\n verticalAlign = _this$props.verticalAlign;\n var classes = cx('ui', size, useKeyOnly(animated, 'animated'), useKeyOnly(bulleted, 'bulleted'), useKeyOnly(celled, 'celled'), useKeyOnly(divided, 'divided'), useKeyOnly(horizontal, 'horizontal'), useKeyOnly(inverted, 'inverted'), useKeyOnly(link, 'link'), useKeyOnly(ordered, 'ordered'), useKeyOnly(selection, 'selection'), useKeyOrValueAndKey(relaxed, 'relaxed'), useValueAndKey(floated, 'floated'), useVerticalAlignProp(verticalAlign), 'list', className);\n var rest = getUnhandledProps(List, this.props);\n var ElementType = getElementType(List, this.props);\n\n if (!childrenUtils.isNil(children)) {\n return React.createElement(ElementType, _extends({\n role: \"list\",\n className: classes\n }, rest), children);\n }\n\n if (!childrenUtils.isNil(content)) {\n return React.createElement(ElementType, _extends({\n role: \"list\",\n className: classes\n }, rest), content);\n }\n\n return React.createElement(ElementType, _extends({\n role: \"list\",\n className: classes\n }, rest), _map(items, function (item) {\n return ListItem.create(item, {\n overrideProps: _this2.handleItemOverrides\n });\n }));\n }\n }]);\n\n return List;\n}(Component);\n\n_defineProperty(List, \"Content\", ListContent);\n\n_defineProperty(List, \"Description\", ListDescription);\n\n_defineProperty(List, \"Header\", ListHeader);\n\n_defineProperty(List, \"Icon\", ListIcon);\n\n_defineProperty(List, \"Item\", ListItem);\n\n_defineProperty(List, \"List\", ListList);\n\n_defineProperty(List, \"handledProps\", [\"animated\", \"as\", \"bulleted\", \"celled\", \"children\", \"className\", \"content\", \"divided\", \"floated\", \"horizontal\", \"inverted\", \"items\", \"link\", \"onItemClick\", \"ordered\", \"relaxed\", \"selection\", \"size\", \"verticalAlign\"]);\n\nList.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /** An element type to render as (string or function). */\n as: customPropTypes.as,\n\n /** A list can animate to set the current item apart from the list. */\n animated: PropTypes.bool,\n\n /** A list can mark items with a bullet. */\n bulleted: PropTypes.bool,\n\n /** A list can divide its items into cells. */\n celled: PropTypes.bool,\n\n /** Primary content. */\n children: PropTypes.node,\n\n /** Additional classes. */\n className: PropTypes.string,\n\n /** Shorthand for primary content. */\n content: customPropTypes.contentShorthand,\n\n /** A list can show divisions between content. */\n divided: PropTypes.bool,\n\n /** An list can be floated left or right. */\n floated: PropTypes.oneOf(SUI.FLOATS),\n\n /** A list can be formatted to have items appear horizontally. */\n horizontal: PropTypes.bool,\n\n /** A list can be inverted to appear on a dark background. */\n inverted: PropTypes.bool,\n\n /** Shorthand array of props for ListItem. */\n items: customPropTypes.collectionShorthand,\n\n /** A list can be specially formatted for navigation links. */\n link: PropTypes.bool,\n\n /**\n * onClick handler for ListItem. Mutually exclusive with children.\n *\n * @param {SyntheticEvent} event - React's original SyntheticEvent.\n * @param {object} data - All item props.\n */\n onItemClick: customPropTypes.every([customPropTypes.disallow(['children']), PropTypes.func]),\n\n /** A list can be ordered numerically. */\n ordered: PropTypes.bool,\n\n /** A list can relax its padding to provide more negative space. */\n relaxed: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['very'])]),\n\n /** A selection list formats list items as possible choices. */\n selection: PropTypes.bool,\n\n /** A list can vary in size. */\n size: PropTypes.oneOf(SUI.SIZES),\n\n /** An element inside a list can be vertically aligned. */\n verticalAlign: PropTypes.oneOf(SUI.VERTICAL_ALIGNMENTS)\n} : {};\nexport default List;","import * as React from \"react\";\nimport { GatsbyLinkProps } from \"gatsby-link\";\nimport { Card, List } from \"semantic-ui-react\";\nimport { MarkdownRemarkGroupConnection } from \"../../graphql-types\";\n\ninterface TagsCardProps extends React.HTMLProps {\n tags: MarkdownRemarkGroupConnection[];\n Link: React.ComponentClass>;\n tag?: string;\n}\n\nexport default (props: TagsCardProps) => {\n return (\n \n \n \n Tags\n \n \n \n \n {props.tags.map((tag) => {\n const isActive = tag.fieldValue === props.tag;\n const activeStyle = {\n fontWeight: \"700\",\n };\n const tagLink = isActive ? `/blog` : `/blog/tags/${tag.fieldValue}/`;\n return (\n \n \n \n \n {tag.fieldValue} ({tag.totalCount})\n \n \n \n );\n })}\n \n \n \n );\n};\n","import * as React from \"react\";\nimport { GatsbyLinkProps } from \"gatsby-link\";\nimport { Menu } from \"semantic-ui-react\";\nimport { times } from \"lodash\";\n\ninterface BlogPaginationProps extends React.HTMLProps {\n pathname: string;\n Link: React.ComponentClass>;\n pageCount: number;\n}\n\nexport default (props: BlogPaginationProps) => {\n if (props.pageCount === 1) { return null; }\n const activeItem = props.pathname.startsWith(\"/blog/page/\")\n ? props.pathname.split(\"/\")[3]\n : \"1\";\n\n return (\n \n {times(props.pageCount, (index) => {\n const pageIndex = (index + 1).toString();\n\n const rangeStep = props.pageCount < 10 ? 5 : 3;\n const isInRange = (+pageIndex - rangeStep < +activeItem && +pageIndex + rangeStep > +activeItem);\n const isLastPage = (+pageIndex === props.pageCount);\n const isFirstPage = (+pageIndex === 1);\n if (isInRange || isFirstPage || isLastPage) {\n return (\n \n );\n } else {\n return (+pageIndex === props.pageCount - 1 || +pageIndex === 2)\n ? ...\n : null;\n }\n })}\n \n );\n};\n","import * as React from \"react\";\nimport { Link } from \"gatsby\";\nimport { StaticQuery, graphql } from \"gatsby\";\nimport { Header, Grid, Card, List, Container, Feed, Segment, Comment } from \"semantic-ui-react\";\nimport { MarkdownRemarkConnection, ImageSharp } from \"../graphql-types\";\nimport BlogTitle from \"../components/BlogTitle\";\nimport TagsCard from \"../components/TagsCard/TagsCard\";\nimport BlogPagination from \"../components/BlogPagination/BlogPagination\";\nimport { get } from \"lodash\";\nimport {withLayout, LayoutProps} from \"../components/Layout\";\nimport { MarkdownRemark } from \"../graphql-types\";\n\ninterface BlogProps extends LayoutProps {\n data: {\n tags: MarkdownRemarkConnection;\n posts: MarkdownRemarkConnection;\n };\n pageContext: {\n tag?: string; // only set into `templates/tags-pages.tsx`\n };\n}\n\nconst BlogPage = (props: BlogProps) => {\n const tags = props.data.tags.group;\n const posts = props.data.posts.edges;\n const { pathname } = props.location;\n const pageCount = Math.ceil(props.data.posts.totalCount / 10);\n\n // TODO export posts in a proper component\n const Posts = (\n \n {posts.map(({ node }: {node: MarkdownRemark}) => {\n const { frontmatter, timeToRead, fields: { slug }, excerpt } = node;\n const avatar = frontmatter.author.avatar.children[0] as ImageSharp;\n const cover = get(frontmatter, \"image.children.0.fixed\", {});\n\n const extra = (\n \n \n \n \n \n {frontmatter.author.id}\n \n \n {frontmatter.updatedDate} - {timeToRead} min read\n \n \n \n \n );\n\n const description = (\n \n {excerpt}\n
\n Read moreā€¦\n
\n );\n\n return (\n \n );\n })}\n
\n );\n\n return (\n \n {/* Title */}\n \n\n {/* Content */}\n \n \n
\n {Posts}\n \n \n \n
\n
\n \n
\n
\n
\n
\n );\n};\n\nexport default withLayout(BlogPage);\n\nexport const pageQuery = graphql`\nquery PageBlog {\n # Get tags\n tags: allMarkdownRemark(filter: {frontmatter: {draft: {ne: true}}}) {\n group(field: frontmatter___tags) {\n fieldValue\n totalCount\n }\n }\n\n # Get posts\n posts: allMarkdownRemark(\n sort: { order: DESC, fields: [frontmatter___updatedDate] },\n filter: {\n frontmatter: { draft: { ne: true } },\n fileAbsolutePath: { regex: \"/blog/\" }\n },\n limit: 10\n ) {\n totalCount\n edges {\n node {\n excerpt\n timeToRead\n fields {\n slug\n }\n frontmatter {\n title\n updatedDate(formatString: \"DD MMMM, YYYY\")\n image {\n \tchildren {\n ... on ImageSharp {\n fixed(width: 700, height: 100) {\n src\n srcSet\n }\n }\n }\n }\n author {\n id\n avatar {\n children {\n ... on ImageSharp {\n fixed(width: 35, height: 35) {\n src\n srcSet\n }\n }\n }\n }\n }\n }\n }\n }\n }\n}\n`;\n"],"sourceRoot":""}