{"version":3,"sources":["webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./src/components/search/searchBlogPost.ts","webpack:///./src/components/common/tag-checklist/index.tsx","webpack:///./src/components/search/index.tsx","webpack:///./src/pages/blog.tsx","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./src/components/search/search.module.scss","webpack:///./node_modules/core-js/modules/es.array.flat-map.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/core-js/modules/es.array.unscopables.flat-map.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/flatten-into-array.js","webpack:///./src/components/common/tag-checklist/tag-checklist.module.scss","webpack:///./node_modules/core-js/internals/well-known-symbol.js"],"names":["NATIVE_SYMBOL","module","exports","Symbol","sham","iterator","toSearchBlogPost","curry","post","searchTitle","title","toLowerCase","searchByKeyword","keyword","blogPosts","filter","blogPost","indexOf","isContainKeyword","filterByTags","tags","length","__typename","reduce","s","tag","includes","haveTag","TagButton","parentSetChecked","useState","checked","setChecked","handleClick","useCallback","e","onClick","className","styles","tagButton","TagButtonMemorized","memo","Component","onUpdate","selectedTags","setSelectedTags","isChecked","updatedTags","concat","selectedTag","map","key","TagChecklist","Array","from","Set","flatMap","setKeyword","results","setResults","useEffect","search","pipe","searchForm","onSubmit","preventDefault","type","name","searchInput","onChange","target","value","placeholder","autoComplete","autoFocus","searchButton","icon","faSearch","tagFilterDropdown","Search","BlogPage","data","feedPosts","toFeedPostList","site","siteMetadata","posts","maybePost","Boolean","searchBlogPosts","edges","toBlogPostList","filterDraftPostList","sortPostList","allMdx","description","role","style","width","bio","commonSidebar","internalObjectKeys","enumBugKeys","Object","keys","O","classof","isArray","arg","aFunction","fn","that","undefined","call","a","b","c","apply","arguments","getBuiltIn","DESCRIPTORS","definePropertyModule","anObject","objectKeys","defineProperties","Properties","index","f","wellKnownSymbol","create","UNSCOPABLES","ArrayPrototype","prototype","configurable","fails","getOwnPropertySymbols","String","$","flattenIntoArray","toObject","toLength","arraySpeciesCreate","proto","callbackfn","A","this","sourceLen","isObject","SPECIES","originalArray","C","constructor","addToUnscopables","activeXDocument","hiddenKeys","html","documentCreateElement","sharedKey","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObject","document","domain","ActiveXObject","error","iframeDocument","iframe","write","close","temp","parentWindow","NullProtoObjectViaActiveX","display","appendChild","src","contentWindow","open","F","result","bind","original","source","start","depth","mapper","thisArg","element","targetIndex","sourceIndex","mapFn","TypeError","global","shared","has","uid","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter"],"mappings":"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","file":"component---src-pages-blog-tsx-ec4fda8686a9a002745d.js","sourcesContent":["var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n /* global Symbol -- safe */\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","import { curry } from \"ramda\"\n\nimport type { BlogPost, FeedPost } from \"~/service/entities/post\"\n\nexport type SearchBlogPost = (BlogPost | FeedPost) & {\n searchTitle: string\n}\n\nexport const toSearchBlogPost = curry(\n (post: BlogPost | FeedPost): SearchBlogPost => ({\n ...post,\n searchTitle: post.title.toLowerCase(),\n })\n)\n\nconst isContainKeyword = (blogPost: SearchBlogPost, keyword: string): boolean =>\n blogPost.searchTitle.indexOf(keyword.toLowerCase()) > -1\n\nexport const searchByKeyword = curry(\n (keyword: string, blogPosts: SearchBlogPost[]): SearchBlogPost[] =>\n keyword === ``\n ? blogPosts\n : blogPosts.filter((blogPost) => isContainKeyword(blogPost, keyword))\n)\n\nconst haveTag = (blogPost: SearchBlogPost, tags: string[]): boolean =>\n blogPost.__typename === `BlogPost`\n ? tags.reduce(\n (s: boolean, tag: string) => s || blogPost.tags.includes(tag),\n false\n )\n : false\n\nexport const filterByTags = curry(\n (tags: string[], blogPosts: SearchBlogPost[]): SearchBlogPost[] =>\n tags.length === 0\n ? blogPosts\n : blogPosts.filter((blogPost) => haveTag(blogPost, tags))\n)\n","import React, { useState, memo, useCallback } from \"react\"\n\nimport styles from \"./tag-checklist.module.scss\"\nimport { Tag } from \"~/components/atoms/tag\"\n\ninterface TagButtonProps {\n tag: string\n parentSetChecked: (tag: string, isChecked: boolean) => void\n}\n\nconst TagButton: React.VFC = ({\n tag,\n parentSetChecked,\n}: TagButtonProps) => {\n const [checked, setChecked] = useState(false)\n\n const handleClick = useCallback(\n (e: React.MouseEvent): void => {\n console.log(e)\n setChecked(!checked)\n parentSetChecked(tag, !checked)\n },\n [checked, parentSetChecked]\n )\n\n return (\n \n )\n}\n\nconst TagButtonMemorized = memo(TagButton)\n\ninterface TagChecklistProps {\n tags: string[]\n onUpdate: (selectedTags: string[]) => void\n}\n\nconst Component: React.VFC = ({\n tags,\n onUpdate,\n}: TagChecklistProps) => {\n const [selectedTags, setSelectedTags] = useState([])\n\n const handleClick = useCallback(\n (tag: string, isChecked: boolean): void => {\n let updatedTags\n if (isChecked) {\n updatedTags = selectedTags.concat([tag])\n } else {\n updatedTags = selectedTags.filter((selectedTag) => selectedTag !== tag)\n }\n onUpdate(updatedTags)\n setSelectedTags(updatedTags)\n },\n [onUpdate, selectedTags]\n )\n\n return (\n
    \n {tags.map((tag) => (\n
  • \n \n
  • \n ))}\n
\n )\n}\n\nexport const TagChecklist = memo(Component)\n","import React, { useState, useEffect, memo } from \"react\"\nimport { pipe } from \"ramda\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faSearch } from \"@fortawesome/free-solid-svg-icons\"\n\nimport { SearchBlogPost, searchByKeyword, filterByTags } from \"./searchBlogPost\"\nimport { TagChecklist } from \"~/components/common/tag-checklist\"\nimport { BlogPostList } from \"~/components/common/blog-post-list\"\nimport styles from \"./search.module.scss\"\n\ninterface SearchProps {\n blogPosts: SearchBlogPost[]\n className?: string\n}\n\nconst Component: React.VFC = ({\n blogPosts,\n className,\n}: SearchProps) => {\n const tags = Array.from(\n new Set(\n blogPosts.flatMap((blogPost) =>\n blogPost.__typename === `BlogPost` ? blogPost.tags : []\n )\n )\n )\n\n // State\n const [keyword, setKeyword] = useState(``)\n const [selectedTags, setSelectedTags] = useState([])\n const [results, setResults] = useState(blogPosts)\n\n // キーワード更新 & タグの更新 (選択 / 選択解除)\n useEffect(() => {\n const search = searchByKeyword(keyword)\n const filter = filterByTags(selectedTags)\n pipe(search, filter, setResults)(blogPosts)\n }, [keyword, selectedTags])\n\n return (\n
\n e.preventDefault()}\n >\n setKeyword(e.target.value)}\n value={keyword}\n placeholder=\"記事を検索する\"\n autoComplete=\"off\"\n autoFocus={true}\n />\n \n \n\n
\n タグで絞り込む\n setSelectedTags(tags)}\n />\n
\n\n \n
\n )\n}\n\nexport const Search = memo(Component)\n","import React from \"react\"\nimport { graphql, PageProps } from \"gatsby\"\nimport { pipe } from \"ramda\"\n\nimport type {\n BlogPageQuery,\n MdxEdge,\n SiteSiteMetadataPosts,\n} from \"@graphql-types\"\nimport type { BlogPost, FeedPost } from \"~/service/entities/post\"\nimport { toBlogPostList, toFeedPostList } from \"~/service/gateways/post\"\nimport { filterDraftPostList, sortPostList } from \"~/service/presenters/post\"\nimport { toSearchBlogPost } from \"~/components/search/searchBlogPost\"\nimport { Head } from \"~/components/common/head\"\nimport { Layout } from \"~/components/layout\"\nimport { Sidebar } from \"~/components/sidebar\"\nimport { Search } from \"~/components/search\"\n\ninterface BlogProps extends PageProps {\n data: BlogPageQuery\n}\n\nconst BlogPage: React.VFC = ({ data }: BlogProps) => {\n const title = `ブログ`\n const description = `記事の一覧を確認できます。タグやタイトルから記事を検索することができます。`\n\n const feedPosts = toFeedPostList(\n (\n data.site?.siteMetadata?.posts || []\n ).filter((maybePost): maybePost is SiteSiteMetadataPosts =>\n Boolean(maybePost)\n )\n )\n\n const searchBlogPosts = pipe(\n (edges: BlogPageQuery[\"allMdx\"][\"edges\"]) =>\n edges.filter((e): e is MdxEdge => typeof e !== `undefined`),\n toBlogPostList,\n (blogPosts: BlogPost[]) => [...blogPosts, ...feedPosts],\n (blogPosts: (BlogPost | FeedPost)[]) => blogPosts.map(toSearchBlogPost),\n filterDraftPostList,\n sortPostList\n )(data.allMdx.edges)\n\n return (\n <>\n \n \n
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n \n )\n}\n\nexport default BlogPage\n\nexport const pageQuery = graphql`\n query BlogPage {\n allMdx(\n filter: { fields: { slug: { regex: \"//blog/\" } } }\n sort: { fields: [frontmatter___date], order: DESC }\n ) {\n edges {\n node {\n excerpt\n fields {\n slug\n }\n frontmatter {\n title\n description\n date\n draft\n category\n tags\n thumbnail {\n childImageSharp {\n fluid(maxHeight: 90, traceSVG: { background: \"#333846\" }) {\n aspectRatio\n base64\n sizes\n src\n srcSet\n srcWebp\n srcSetWebp\n tracedSVG\n }\n }\n }\n }\n }\n }\n }\n site {\n siteMetadata {\n posts {\n isoDate\n link\n title\n site {\n feedUrl\n name\n }\n }\n }\n }\n }\n`\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n /* global Symbol -- required for testing */\n return !String(Symbol());\n});\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"searchForm\":\"search-module--searchForm--2I1X1\",\"searchInput\":\"search-module--searchInput--237cC\",\"searchButton\":\"search-module--searchButton--18ezQ\",\"tagFilterDropdown\":\"search-module--tagFilterDropdown--2xfyw\"};","'use strict';\nvar $ = require('../internals/export');\nvar flattenIntoArray = require('../internals/flatten-into-array');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar aFunction = require('../internals/a-function');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.flatMap` method\n// https://tc39.es/ecma262/#sec-array.prototype.flatmap\n$({ target: 'Array', proto: true }, {\n flatMap: function flatMap(callbackfn /* , thisArg */) {\n var O = toObject(this);\n var sourceLen = toLength(O.length);\n var A;\n aFunction(callbackfn);\n A = arraySpeciesCreate(O, 0);\n A.length = flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n return A;\n }\n});\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","// this method was added to unscopables after implementation\n// in popular engines, so it's moved to a separate module\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('flatMap');\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject -- old IE */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\n\n// `FlattenIntoArray` abstract operation\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? bind(mapper, thisArg, 3) : false;\n var element;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n if (depth > 0 && isArray(element)) {\n targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;\n } else {\n if (targetIndex >= 0x1FFFFFFFFFFFFF) throw TypeError('Exceed the acceptable array length');\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n};\n\nmodule.exports = flattenIntoArray;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tagButton\":\"tag-checklist-module--tagButton--3QQ_x\"};","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n"],"sourceRoot":""}