-
Notifications
You must be signed in to change notification settings - Fork 0
/
component---src-templates-tag-template-js-53a922c749043ab65e50.js.map
1 lines (1 loc) · 23.1 KB
/
component---src-templates-tag-template-js-53a922c749043ab65e50.js.map
1
{"version":3,"sources":["webpack:///./src/components/Sidebar/Author/Author.js","webpack:///./src/components/Icon/Icon.js","webpack:///./src/components/Sidebar/Contacts/Contacts.js","webpack:///./src/components/Sidebar/Copyright/Copyright.js","webpack:///./src/components/Sidebar/Menu/Menu.js","webpack:///./src/components/Sidebar/Categories/Categories.js","webpack:///./src/components/Sidebar/Sidebar.js","webpack:///./src/components/Feed/Feed.module.scss","webpack:///./src/components/Feed/Feed.js","webpack:///./src/components/Sidebar/Copyright/Copyright.module.scss","webpack:///./src/components/Page/Page.module.scss","webpack:///./src/components/Page/Page.js","webpack:///./src/components/Sidebar/Sidebar.module.scss","webpack:///./src/components/Pagination/Pagination.module.scss","webpack:///./node_modules/classnames/bind.js","webpack:///./src/components/Sidebar/Contacts/Contacts.module.scss","webpack:///./src/components/Icon/Icon.module.scss","webpack:///./src/templates/tag-template.js","webpack:///./src/components/Sidebar/Author/Author.module.scss","webpack:///./src/components/Sidebar/Menu/Menu.module.scss","webpack:///./src/components/Sidebar/Categories/Menu.module.scss","webpack:///./src/components/Pagination/Pagination.js"],"names":["Author","author","isIndex","className","styles","to","src","width","height","alt","name","bio","Icon","icon","viewBox","d","path","Contacts","contacts","Object","keys","map","key","href","getContactHref","rel","target","getIcon","Copyright","copyright","Menu","menu","item","activeClassName","label","Categories","fieldValue","Sidebar","useSiteMetadata","useTagsList","module","exports","Feed","edges","edge","node","fields","slug","dateTime","Date","frontmatter","date","toLocaleDateString","year","month","day","categorySlug","category","title","description","Page","children","pageRef","useRef","useEffect","current","scrollIntoView","ref","hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","this","Array","isArray","apply","toString","prototype","call","join","default","TagTemplate","data","pageContext","siteTitle","siteSubtitle","subtitle","tag","currentPage","prevPagePath","nextPagePath","hasPrevPage","hasNextPage","allMarkdownRemark","pageTitle","cx","bind","Pagination","prevClassName","nextClassName","PAGINATION","PREV_PAGE","NEXT_PAGE"],"mappings":"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","file":"component---src-templates-tag-template-js-53a922c749043ab65e50.js","sourcesContent":["// @flow strict\r\nimport React from 'react';\r\nimport { withPrefix, Link } from 'gatsby';\r\nimport styles from './Author.module.scss';\r\n\r\ntype Props = {\r\n author: {\r\n name: string,\r\n bio: string,\r\n photo: string\r\n },\r\n isIndex: ?boolean\r\n};\r\n\r\nconst Author = ({ author, isIndex }: Props) => (\r\n <div className={styles['author']}>\r\n <Link to=\"/\">\r\n <img\r\n src='https://avatars2.githubusercontent.com/u/59504386?s=460&u=eac3cb2397dc38bed71de6a7ba77bc12396977d9&v=4'\r\n className={styles['author__photo']}\r\n width=\"200\"\r\n height=\"200\"\r\n alt={author.name}\r\n />\r\n </Link>\r\n\r\n { isIndex === true ? (\r\n <h1 className={styles['author__title']}>\r\n <Link className={styles['author__title-link']} to=\"/\">{author.name}</Link>\r\n </h1>\r\n ) : (\r\n <h2 className={styles['author__title']}>\r\n <Link className={styles['author__title-link']} to=\"/\">{author.name}</Link>\r\n </h2>\r\n )}\r\n <p className={styles['author__subtitle']}>{author.bio}</p>\r\n </div>\r\n);\r\n\r\nexport default Author;\r\n","// @flow strict\r\nimport React from 'react';\r\nimport styles from './Icon.module.scss';\r\n\r\ntype Props = {\r\n name: string,\r\n icon: {\r\n viewBox?: string,\r\n path?: string\r\n }\r\n};\r\n\r\nconst Icon = ({ name, icon }: Props) => (\r\n <svg className={styles['icon']} viewBox={icon.viewBox}>\r\n <title>{name}</title>\r\n <path d={icon.path} />\r\n </svg>\r\n);\r\n\r\nexport default Icon;\r\n","// @flow strict\r\nimport React from 'react';\r\nimport { getContactHref, getIcon } from '../../../utils';\r\nimport Icon from '../../Icon';\r\nimport styles from './Contacts.module.scss';\r\n\r\ntype Props = {\r\n contacts: {\r\n [string]: string,\r\n },\r\n};\r\n\r\nconst Contacts = ({ contacts }: Props) => (\r\n <div className={styles['contacts']}>\r\n <ul className={styles['contacts__list']}>\r\n {Object.keys(contacts).map((name) => (!contacts[name] ? null : (\r\n <li className={styles['contacts__list-item']} key={name}>\r\n <a\r\n className={styles['contacts__list-item-link']}\r\n href={getContactHref(name, contacts[name])}\r\n rel=\"noopener noreferrer\"\r\n target=\"_blank\"\r\n >\r\n <Icon name={name} icon={getIcon(name)} />\r\n </a>\r\n </li>\r\n )))}\r\n </ul>\r\n </div>\r\n);\r\n\r\nexport default Contacts;\r\n","// @flow strict\r\nimport React from 'react';\r\nimport styles from './Copyright.module.scss';\r\n\r\ntype Props = {\r\n copyright: string\r\n};\r\n\r\nconst Copyright = ({ copyright }: Props) => (\r\n <div className={styles['copyright']}>\r\n {copyright}\r\n </div>\r\n);\r\n\r\nexport default Copyright;\r\n","// @flow strict\r\nimport React from 'react';\r\nimport { Link } from 'gatsby';\r\nimport styles from './Menu.module.scss';\r\n\r\ntype Props = {\r\n menu: {\r\n label: string,\r\n path: string\r\n }[]\r\n};\r\n\r\nconst Menu = ({ menu }: Props) => (\r\n <nav className={styles['menu']}>\r\n <ul className={styles['menu__list']}>\r\n {menu.map((item) => (\r\n <li className={styles['menu__list-item']} key={item.path}>\r\n <Link\r\n to={item.path}\r\n className={styles['menu__list-item-link']}\r\n activeClassName={styles['menu__list-item-link--active']}\r\n >\r\n {item.label}\r\n </Link>\r\n </li>\r\n ))}\r\n </ul>\r\n </nav>\r\n);\r\n\r\nexport default Menu;\r\n","// @flow strict\r\nimport React from 'react';\r\nimport { Link } from 'gatsby';\r\nimport styles from './Menu.module.scss';\r\n\r\ntype Props = {\r\n fieldValue: {\r\n label: string,\r\n // path: string\r\n }[]\r\n};\r\n\r\nconst Categories = ({ fieldValue }: Props) => (\r\n <nav className={styles['tag']}>\r\n <ul className={styles['tag__list']}>\r\n {/* {categories.map((item) => ( */}\r\n <li className={styles['tag__list-item']}>\r\n {/* <li className={styles['tag__list-item']} key={item.path}> */}\r\n <Link\r\n // to={item.path}\r\n className={styles['tag__list-item-link']}\r\n activeClassName={styles['tag__list-item-link--active']}\r\n >\r\n {fieldValue}\r\n </Link>\r\n </li>\r\n {/* ))} */}\r\n </ul>\r\n </nav>\r\n);\r\n\r\nexport default Categories;\r\n","// @flow strict\r\nimport React from 'react';\r\nimport Author from './Author';\r\nimport Contacts from './Contacts';\r\nimport Copyright from './Copyright';\r\nimport Menu from './Menu';\r\nimport styles from './Sidebar.module.scss';\r\nimport { useSiteMetadata ,useTagsList } from '../../hooks';\r\nimport Categories from './Categories';\r\n\r\ntype Props = {\r\n isIndex?: boolean,\r\n};\r\n\r\nconst Sidebar = ({ isIndex }: Props) => {\r\n const { author, copyright, menu } = useSiteMetadata();\r\n const { fieldValue } = useTagsList();\r\n\r\n return (\r\n <div className={styles['sidebar']}>\r\n <div className={styles['sidebar__inner']}>\r\n <Author author={author} isIndex={isIndex} />\r\n <Menu menu={menu} />\r\n <Categories fieldValue={fieldValue} />\r\n <Contacts contacts={author.contacts} />\r\n <Copyright copyright={copyright} />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Sidebar;\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"feed__item\":\"Feed-module--feed__item--Bm0MP\",\"feed__item-title\":\"Feed-module--feed__item-title--34sOw\",\"feed__item-title-link\":\"Feed-module--feed__item-title-link--2qfTF\",\"feed__item-description\":\"Feed-module--feed__item-description--2_Zuy\",\"feed__item-meta-time\":\"Feed-module--feed__item-meta-time--3hc6b\",\"feed__item-meta-divider\":\"Feed-module--feed__item-meta-divider--2GeAw\",\"feed__item-meta-category-link\":\"Feed-module--feed__item-meta-category-link--lAu1I\",\"feed__item-readmore\":\"Feed-module--feed__item-readmore--rMfbv\"};","// @flow strict\r\nimport React from 'react';\r\nimport { Link } from 'gatsby';\r\nimport type { Edges } from '../../types';\r\nimport styles from './Feed.module.scss';\r\n\r\ntype Props = {\r\n edges: Edges\r\n};\r\n\r\nconst Feed = ({ edges }: Props) => (\r\n <div className={styles['feed']}>\r\n {edges.map((edge) => (\r\n <div className={styles['feed__item']} key={edge.node.fields.slug}>\r\n <div className={styles['feed__item-meta']}>\r\n <time className={styles['feed__item-meta-time']} dateTime={ new Date(edge.node.frontmatter.date).toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' })}>\r\n { new Date(edge.node.frontmatter.date).toLocaleDateString('en-US', { year: 'numeric', month: 'long' })}\r\n </time>\r\n <span className={styles['feed__item-meta-divider']} />\r\n <span className={styles['feed__item-meta-category']}>\r\n <Link to={edge.node.fields.categorySlug} className={styles['feed__item-meta-category-link']}>{edge.node.frontmatter.category}</Link>\r\n </span>\r\n </div>\r\n <h2 className={styles['feed__item-title']}>\r\n <Link className={styles['feed__item-title-link']} to={edge.node.fields.slug}>{edge.node.frontmatter.title}</Link>\r\n </h2>\r\n <p className={styles['feed__item-description']}>{edge.node.frontmatter.description}</p>\r\n <Link className={styles['feed__item-readmore']} to={edge.node.fields.slug}>Read</Link>\r\n </div>\r\n ))}\r\n </div>\r\n);\r\n\r\nexport default Feed;\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"copyright\":\"Copyright-module--copyright--1YLES\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"page\":\"Page-module--page--V2155\",\"page__inner\":\"Page-module--page__inner--3xzwp\",\"page__title\":\"Page-module--page__title--t1zKX\",\"page__body\":\"Page-module--page__body--1A7TB\"};","import React, { useRef, useEffect } from 'react';\r\nimport styles from './Page.module.scss';\r\n\r\ntype Props = {\r\n title?: string,\r\n children: React.Node\r\n};\r\n\r\nconst Page = ({ title, children }: Props) => {\r\n const pageRef = useRef();\r\n\r\n useEffect(() => {\r\n pageRef.current.scrollIntoView();\r\n });\r\n\r\n return (\r\n <div ref={pageRef} className={styles['page']}>\r\n <div className={styles['page__inner']}>\r\n { title && <h1 className={styles['page__title']}>{title}</h1>}\r\n <div className={styles['page__body']}>\r\n {children}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Page;","// extracted by mini-css-extract-plugin\nmodule.exports = {\"sidebar\":\"Sidebar-module--sidebar--1zM7S\",\"sidebar__inner\":\"Sidebar-module--sidebar__inner--2Tprz\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"pagination\":\"Pagination-module--pagination--3T_m0\",\"pagination__prev\":\"Pagination-module--pagination__prev--3tRFv\",\"pagination__prev-link\":\"Pagination-module--pagination__prev-link--2vesn\",\"pagination__prev-link--disable\":\"Pagination-module--pagination__prev-link--disable--1Fxw2\",\"pagination__next\":\"Pagination-module--pagination__next--19bJd\",\"pagination__next-link\":\"Pagination-module--pagination__next-link--3ln7y\",\"pagination__next-link--disable\":\"Pagination-module--pagination__next-link--disable--AsM50\"};","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n\n/* global define */\n(function () {\n 'use strict';\n\n var hasOwn = {}.hasOwnProperty;\n\n function classNames() {\n var classes = [];\n\n for (var i = 0; i < arguments.length; i++) {\n var arg = arguments[i];\n if (!arg) continue;\n var argType = typeof arg;\n\n if (argType === 'string' || argType === 'number') {\n classes.push(this && this[arg] || arg);\n } else if (Array.isArray(arg)) {\n classes.push(classNames.apply(this, arg));\n } else if (argType === 'object') {\n if (arg.toString === Object.prototype.toString) {\n for (var key in arg) {\n if (hasOwn.call(arg, key) && arg[key]) {\n classes.push(this && this[key] || key);\n }\n }\n } else {\n classes.push(arg.toString());\n }\n }\n }\n\n return classes.join(' ');\n }\n\n if (typeof module !== 'undefined' && module.exports) {\n classNames.default = classNames;\n module.exports = classNames;\n } else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n // register as 'classnames', consistent with npm package name\n define('classnames', [], function () {\n return classNames;\n });\n } else {\n window.classNames = classNames;\n }\n})();","// extracted by mini-css-extract-plugin\nmodule.exports = {\"contacts\":\"Contacts-module--contacts--3fb7G\",\"contacts__list\":\"Contacts-module--contacts__list--27zok\",\"contacts__list-item\":\"Contacts-module--contacts__list-item--1Adud\",\"contacts__list-item-link\":\"Contacts-module--contacts__list-item-link--2L60c\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"icon\":\"Icon-module--icon--1T2h2\"};","// @flow strict\r\nimport React from 'react';\r\nimport { graphql } from 'gatsby';\r\nimport Layout from '../components/Layout';\r\nimport Sidebar from '../components/Sidebar';\r\nimport Feed from '../components/Feed';\r\nimport Page from '../components/Page';\r\nimport Pagination from '../components/Pagination';\r\nimport { useSiteMetadata } from '../hooks';\r\nimport type { AllMarkdownRemark, PageContext } from '../types';\r\n\r\ntype Props = {\r\n data: AllMarkdownRemark,\r\n pageContext: PageContext\r\n};\r\n\r\nconst TagTemplate = ({ data, pageContext }: Props) => {\r\n const { title: siteTitle, subtitle: siteSubtitle } = useSiteMetadata();\r\n\r\n const {\r\n tag,\r\n currentPage,\r\n prevPagePath,\r\n nextPagePath,\r\n hasPrevPage,\r\n hasNextPage\r\n } = pageContext;\r\n\r\n const { edges } = data.allMarkdownRemark;\r\n const pageTitle = currentPage > 0 ? `All Posts tagged as \"${tag}\" - Page ${currentPage} - ${siteTitle}` : `All Posts tagged as \"${tag}\" - ${siteTitle}`;\r\n\r\n return (\r\n <Layout title={pageTitle} description={siteSubtitle}>\r\n <Sidebar />\r\n <Page title={tag}>\r\n <Feed edges={edges} />\r\n <Pagination\r\n prevPagePath={prevPagePath}\r\n nextPagePath={nextPagePath}\r\n hasPrevPage={hasPrevPage}\r\n hasNextPage={hasNextPage}\r\n />\r\n </Page>\r\n </Layout>\r\n );\r\n};\r\n\r\nexport const query = graphql`\r\n query TagPage($tag: String, $postsLimit: Int!, $postsOffset: Int!) {\r\n site {\r\n siteMetadata {\r\n title\r\n subtitle\r\n }\r\n }\r\n allMarkdownRemark(\r\n limit: $postsLimit,\r\n skip: $postsOffset,\r\n filter: { frontmatter: { tags: { in: [$tag] }, template: { eq: \"post\" }, draft: { ne: true } } },\r\n sort: { order: DESC, fields: [frontmatter___date] }\r\n ){\r\n edges {\r\n node {\r\n fields {\r\n slug\r\n categorySlug\r\n }\r\n frontmatter {\r\n title\r\n date\r\n category\r\n description\r\n }\r\n }\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport default TagTemplate;\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"author__photo\":\"Author-module--author__photo--HnDWV\",\"author__title\":\"Author-module--author__title--ZztQd\",\"author__title-link\":\"Author-module--author__title-link--BY7f8\",\"author__subtitle\":\"Author-module--author__subtitle--3hbMX\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"menu\":\"Menu-module--menu--2aN3O\",\"menu__list\":\"Menu-module--menu__list--1uKDu\",\"menu__list-item\":\"Menu-module--menu__list-item--27cxj\",\"menu__list-item-link\":\"Menu-module--menu__list-item-link--29Sd-\",\"menu__list-item-link--active\":\"Menu-module--menu__list-item-link--active--2HzKy\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"menu\":\"Menu-module--menu--2yJX4\",\"menu__list\":\"Menu-module--menu__list--WqLkH\",\"menu__list-item\":\"Menu-module--menu__list-item--3dldx\",\"menu__list-item-link\":\"Menu-module--menu__list-item-link--1XD1N\",\"menu__list-item-link--active\":\"Menu-module--menu__list-item-link--active--3K5T5\"};","// @flow strict\r\nimport React from 'react';\r\nimport classNames from 'classnames/bind';\r\nimport { Link } from 'gatsby';\r\nimport { PAGINATION } from '../../constants';\r\nimport styles from './Pagination.module.scss';\r\n\r\ntype Props = {\r\n prevPagePath: string,\r\n nextPagePath: string,\r\n hasNextPage: boolean,\r\n hasPrevPage: boolean\r\n};\r\n\r\nconst cx = classNames.bind(styles);\r\n\r\nconst Pagination = ({\r\n prevPagePath,\r\n nextPagePath,\r\n hasNextPage,\r\n hasPrevPage\r\n}: Props) => {\r\n const prevClassName = cx({\r\n 'pagination__prev-link': true,\r\n 'pagination__prev-link--disable': !hasPrevPage\r\n });\r\n\r\n const nextClassName = cx({\r\n 'pagination__next-link': true,\r\n 'pagination__next-link--disable': !hasNextPage\r\n });\r\n\r\n return (\r\n <div className={styles['pagination']}>\r\n <div className={styles['pagination__prev']}>\r\n <Link rel=\"prev\" to={hasPrevPage ? prevPagePath : '/'} className={prevClassName}>{PAGINATION.PREV_PAGE}</Link>\r\n </div>\r\n <div className={styles['pagination__next']}>\r\n <Link rel=\"next\" to={hasNextPage ? nextPagePath : '/'} className={nextClassName}>{PAGINATION.NEXT_PAGE}</Link>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Pagination;\r\n"],"sourceRoot":""}