-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-templates-blog-post-js-f9c8a99131968f1c31d7.js.map
1 lines (1 loc) · 45.9 KB
/
component---src-templates-blog-post-js-f9c8a99131968f1c31d7.js.map
1
{"version":3,"sources":["webpack:///./node_modules/smooth-scroll/dist/smooth-scroll.min.js","webpack:///./src/utils/scroll.js","webpack:///./node_modules/core-js/modules/_string-html.js","webpack:///./node_modules/react-disqus-comments/build/main.js","webpack:///./node_modules/react-disqus-comments/build/components/DisqusThread.js","webpack:///./node_modules/core-js/modules/es6.string.anchor.js","webpack:///./src/components/elements/hr/index.jsx","webpack:///./src/components/post-title/index.jsx","webpack:///./src/components/post-container/index.jsx","webpack:///./src/components/social-share/facebook-icon/index.jsx","webpack:///./src/components/social-share/twitter-icon/index.jsx","webpack:///./src/components/social-share/index.jsx","webpack:///./src/utils/share.js","webpack:///./src/components/post-navigator/index.jsx","webpack:///./src/components/disqus/index.jsx","webpack:///./src/components/utterances/index.jsx","webpack:///./src/components/orderbar/index.jsx","webpack:///./src/templates/blog-post.js"],"names":["e","global","window","this","C","L","ignore","header","topOnEmptyHash","speed","speedAsDuration","durationMax","durationMin","clip","offset","easing","customEasing","updateURL","popstate","emitEvents","H","n","Array","prototype","forEach","call","arguments","t","hasOwnProperty","r","charAt","substr","String","o","length","a","i","charCodeAt","InvalidCharacterError","toString","q","Math","max","document","body","scrollHeight","documentElement","offsetHeight","clientHeight","Q","CustomEvent","bubbles","detail","anchor","toggle","dispatchEvent","M","I","A","w","cancelAnimationFrame","s","cancelScroll","c","u","Object","tagName","l","pageYOffset","querySelector","d","f","m","h","p","parseInt","getComputedStyle","height","offsetTop","x","g","offsetParent","min","innerHeight","y","v","S","E","abs","scrollTo","history","pushState","smoothScroll","JSON","stringify","id","title","matchMedia","matches","floor","requestAnimationFrame","O","focus","activeElement","setAttribute","style","outline","b","defaultPrevented","button","metaKey","ctrlKey","shiftKey","target","closest","toLowerCase","hostname","location","pathname","test","href","hash","preventDefault","replaceState","state","animateScroll","destroy","removeEventListener","Element","addEventListener","scroll","init","SmoothScroll","Error","go","dest","$export","fails","defined","quot","createHTML","string","tag","attribute","value","p1","replace","module","exports","NAME","exec","P","F","split","defineProperty","_extends","assign","source","key","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","Constructor","protoProps","staticProps","_react2","_interopRequireDefault","_propTypes2","obj","__esModule","_classCallCheck","instance","TypeError","_possibleConstructorReturn","self","ReferenceError","DISQUS_CONFIG","__disqusAdded","copyProps","context","onNewComment","language","rest","keys","indexOf","_objectWithoutProperties","prop","page","callbacks","DisqusThread","_React$Component","__proto__","getPrototypeOf","apply","subClass","superClass","create","constructor","setPrototypeOf","_inherits","loadDisqus","nextProps","nextState","identifier","_this2","reduce","memo","some","config","_defineProperty","createElement","child","disqus","parent","getElementsByTagName","async","type","src","shortname","appendChild","_this3","DISQUS","reset","reload","url","disqus_config","addDisqusScript","Component","displayName","propTypes","isRequired","category_id","func","defaultProps","name","Hr","className","PostTitle","PostContainer","html","dangerouslySetInnerHTML","__html","FacebookIcon","onClick","rel","aria-label","aria-hidden","xmlns","viewBox","TwitterIcon","SocialShare","text","FB","ui","method","mobile_iframe","quote","shareToFacebook","open","encodeURI","shareToTwitter","PostNavigator","pageContext","previous","next","to","fields","slug","frontmatter","Disqus","toasts","notifyAboutComment","bind","onSnackbarDismiss","setState","slice","push","render","post","shortName","siteUrl","Utterences","repo","rootElm","React","createRef","useEffect","utterances","utterancesConfig","branch","crossorigin","configKey","current","ref","Orderbar","naverOrder","coupangOrder","role","margin","rhythm","data","ScrollManager","markdownRemark","metaData","site","siteMetadata","comment","author","disqusShortName","description","excerpt","keywords","tags","pageQuery"],"mappings":"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","file":"component---src-templates-blog-post-js-f9c8a99131968f1c31d7.js","sourcesContent":["require(\"core-js/modules/es6.string.anchor\");\n\nrequire(\"core-js/modules/es6.regexp.to-string\");\n\nrequire(\"core-js/modules/es6.date.to-string\");\n\nrequire(\"core-js/modules/es6.object.to-string\");\n\nrequire(\"core-js/modules/es6.array.for-each\");\n\n/*! smooth-scroll v16.1.0 | (c) 2019 Chris Ferdinandi | MIT License | http://github.com/cferdinandi/smooth-scroll */\n!function (e, t) {\n \"function\" == typeof define && define.amd ? define([], function () {\n return t(e);\n }) : \"object\" == typeof exports ? module.exports = t(e) : e.SmoothScroll = t(e);\n}(\"undefined\" != typeof global ? global : \"undefined\" != typeof window ? window : this, function (C) {\n \"use strict\";\n\n var L = {\n ignore: \"[data-scroll-ignore]\",\n header: null,\n topOnEmptyHash: !0,\n speed: 500,\n speedAsDuration: !1,\n durationMax: null,\n durationMin: null,\n clip: !0,\n offset: 0,\n easing: \"easeInOutCubic\",\n customEasing: null,\n updateURL: !0,\n popstate: !0,\n emitEvents: !0\n },\n H = function H() {\n var n = {};\n return Array.prototype.forEach.call(arguments, function (e) {\n for (var t in e) {\n if (!e.hasOwnProperty(t)) return;\n n[t] = e[t];\n }\n }), n;\n },\n r = function r(e) {\n \"#\" === e.charAt(0) && (e = e.substr(1));\n\n for (var t, n = String(e), o = n.length, a = -1, r = \"\", i = n.charCodeAt(0); ++a < o;) {\n if (0 === (t = n.charCodeAt(a))) throw new InvalidCharacterError(\"Invalid character: the input contains U+0000.\");\n 1 <= t && t <= 31 || 127 == t || 0 === a && 48 <= t && t <= 57 || 1 === a && 48 <= t && t <= 57 && 45 === i ? r += \"\\\\\" + t.toString(16) + \" \" : r += 128 <= t || 45 === t || 95 === t || 48 <= t && t <= 57 || 65 <= t && t <= 90 || 97 <= t && t <= 122 ? n.charAt(a) : \"\\\\\" + n.charAt(a);\n }\n\n return \"#\" + r;\n },\n q = function q() {\n return Math.max(document.body.scrollHeight, document.documentElement.scrollHeight, document.body.offsetHeight, document.documentElement.offsetHeight, document.body.clientHeight, document.documentElement.clientHeight);\n },\n x = function x(e) {\n return e ? (t = e, parseInt(C.getComputedStyle(t).height, 10) + e.offsetTop) : 0;\n var t;\n },\n Q = function Q(e, t, n, o) {\n if (t.emitEvents && \"function\" == typeof C.CustomEvent) {\n var a = new CustomEvent(e, {\n bubbles: !0,\n detail: {\n anchor: n,\n toggle: o\n }\n });\n document.dispatchEvent(a);\n }\n };\n\n return function (o, e) {\n var M,\n a,\n I,\n A,\n w = {};\n w.cancelScroll = function (e) {\n cancelAnimationFrame(A), A = null, e || Q(\"scrollCancel\", M);\n }, w.animateScroll = function (i, s, e) {\n w.cancelScroll();\n var c = H(M || L, e || {}),\n u = \"[object Number]\" === Object.prototype.toString.call(i),\n t = u || !i.tagName ? null : i;\n\n if (u || t) {\n var l = C.pageYOffset;\n c.header && !I && (I = document.querySelector(c.header));\n\n var n,\n o,\n a,\n d,\n r,\n f,\n m,\n h,\n p = x(I),\n g = u ? i : function (e, t, n, o) {\n var a = 0;\n if (e.offsetParent) for (; a += e.offsetTop, e = e.offsetParent;) {\n ;\n }\n return a = Math.max(a - t - n, 0), o && (a = Math.min(a, q() - C.innerHeight)), a;\n }(t, p, parseInt(\"function\" == typeof c.offset ? c.offset(i, s) : c.offset, 10), c.clip),\n y = g - l,\n v = q(),\n S = 0,\n E = (n = y, a = (o = c).speedAsDuration ? o.speed : Math.abs(n / 1e3 * o.speed), o.durationMax && a > o.durationMax ? o.durationMax : o.durationMin && a < o.durationMin ? o.durationMin : parseInt(a, 10)),\n b = function b(e, t) {\n var n,\n o,\n a,\n r = C.pageYOffset;\n if (e == t || r == t || (l < t && C.innerHeight + r) >= v) return w.cancelScroll(!0), o = t, a = u, 0 === (n = i) && document.body.focus(), a || (n.focus(), document.activeElement !== n && (n.setAttribute(\"tabindex\", \"-1\"), n.focus(), n.style.outline = \"none\"), C.scrollTo(0, o)), Q(\"scrollStop\", c, i, s), !(A = d = null);\n },\n O = function O(e) {\n var t, n, o;\n d || (d = e), S += e - d, f = l + y * (n = r = 1 < (r = 0 === E ? 0 : S / E) ? 1 : r, \"easeInQuad\" === (t = c).easing && (o = n * n), \"easeOutQuad\" === t.easing && (o = n * (2 - n)), \"easeInOutQuad\" === t.easing && (o = n < .5 ? 2 * n * n : (4 - 2 * n) * n - 1), \"easeInCubic\" === t.easing && (o = n * n * n), \"easeOutCubic\" === t.easing && (o = --n * n * n + 1), \"easeInOutCubic\" === t.easing && (o = n < .5 ? 4 * n * n * n : (n - 1) * (2 * n - 2) * (2 * n - 2) + 1), \"easeInQuart\" === t.easing && (o = n * n * n * n), \"easeOutQuart\" === t.easing && (o = 1 - --n * n * n * n), \"easeInOutQuart\" === t.easing && (o = n < .5 ? 8 * n * n * n * n : 1 - 8 * --n * n * n * n), \"easeInQuint\" === t.easing && (o = n * n * n * n * n), \"easeOutQuint\" === t.easing && (o = 1 + --n * n * n * n * n), \"easeInOutQuint\" === t.easing && (o = n < .5 ? 16 * n * n * n * n * n : 1 + 16 * --n * n * n * n * n), t.customEasing && (o = t.customEasing(n)), o || n), C.scrollTo(0, Math.floor(f)), b(f, g) || (A = C.requestAnimationFrame(O), d = e);\n };\n\n 0 === C.pageYOffset && C.scrollTo(0, 0), m = i, h = c, u || history.pushState && h.updateURL && history.pushState({\n smoothScroll: JSON.stringify(h),\n anchor: m.id\n }, document.title, m === document.documentElement ? \"#top\" : \"#\" + m.id), \"matchMedia\" in C && C.matchMedia(\"(prefers-reduced-motion)\").matches ? C.scrollTo(0, Math.floor(g)) : (Q(\"scrollStart\", c, i, s), w.cancelScroll(!0), C.requestAnimationFrame(O));\n }\n };\n\n var t = function t(e) {\n if (!e.defaultPrevented && !(0 !== e.button || e.metaKey || e.ctrlKey || e.shiftKey) && \"closest\" in e.target && (a = e.target.closest(o)) && \"a\" === a.tagName.toLowerCase() && !e.target.closest(M.ignore) && a.hostname === C.location.hostname && a.pathname === C.location.pathname && /#/.test(a.href)) {\n var t,\n n = r(a.hash);\n\n if (\"#\" === n) {\n if (!M.topOnEmptyHash) return;\n t = document.documentElement;\n } else t = document.querySelector(n);\n\n (t = t || \"#top\" !== n ? t : document.documentElement) && (e.preventDefault(), function (e) {\n if (history.replaceState && e.updateURL && !history.state) {\n var t = C.location.hash;\n t = t || \"\", history.replaceState({\n smoothScroll: JSON.stringify(e),\n anchor: t || C.pageYOffset\n }, document.title, t || C.location.href);\n }\n }(M), w.animateScroll(t, a));\n }\n },\n n = function n(e) {\n if (null !== history.state && history.state.smoothScroll && history.state.smoothScroll === JSON.stringify(M)) {\n var t = history.state.anchor;\n \"string\" == typeof t && t && !(t = document.querySelector(r(history.state.anchor))) || w.animateScroll(t, null, {\n updateURL: !1\n });\n }\n };\n\n w.destroy = function () {\n M && (document.removeEventListener(\"click\", t, !1), C.removeEventListener(\"popstate\", n, !1), w.cancelScroll(), A = I = a = M = null);\n };\n\n return function () {\n if (!(\"querySelector\" in document && \"addEventListener\" in C && \"requestAnimationFrame\" in C && \"closest\" in C.Element.prototype)) throw \"Smooth Scroll: This browser does not support the required JavaScript methods and browser APIs.\";\n w.destroy(), M = H(L, e || {}), I = M.header ? document.querySelector(M.header) : null, document.addEventListener(\"click\", t, !1), M.updateURL && M.popstate && C.addEventListener(\"popstate\", n, !1);\n }(), w;\n };\n});","import SmoothScroll from 'smooth-scroll/dist/smooth-scroll.min'\n\nlet scroll\n\nexport function init() {\n scroll = new SmoothScroll('a[href*=\"#\"]', {\n speed: 500,\n speedAsDuration: true,\n })\n return scroll\n}\n\nexport function destroy() {\n if (!scroll) throw Error('Not founded SmoothScroll instance')\n\n scroll.destroy()\n scroll = null\n\n return scroll\n}\n\nexport function go(dest) {\n if (!scroll) throw Error('Not founded SmoothScroll instance')\n\n scroll.animateScroll(dest)\n\n return scroll\n}\n","var $export = require('./_export');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '</' + tag + '>';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n","'use strict';\n\nmodule.exports = require('./components/DisqusThread');","'use strict';\n\nrequire(\"core-js/modules/es6.regexp.replace\");\n\nrequire(\"core-js/modules/es6.array.for-each\");\n\nrequire(\"core-js/modules/es6.array.some\");\n\nrequire(\"core-js/modules/web.dom.iterable\");\n\nrequire(\"core-js/modules/es6.array.iterator\");\n\nrequire(\"core-js/modules/es6.object.to-string\");\n\nrequire(\"core-js/modules/es6.object.keys\");\n\nrequire(\"core-js/modules/es6.array.reduce\");\n\nrequire(\"core-js/modules/es6.array.index-of\");\n\nrequire(\"core-js/modules/es6.object.set-prototype-of\");\n\nrequire(\"core-js/modules/es6.object.create\");\n\nrequire(\"core-js/modules/es6.object.assign\");\n\nrequire(\"core-js/modules/es6.object.define-property\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nfunction _objectWithoutProperties(obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n}\n\nvar DISQUS_CONFIG = ['shortname', 'identifier', 'title', 'url', 'category_id', 'onNewComment', 'language'];\nvar __disqusAdded = false;\n\nfunction copyProps(context, props) {\n var onNewComment = props.onNewComment,\n language = props.language,\n rest = _objectWithoutProperties(props, ['onNewComment', 'language']);\n\n for (var prop in rest) {\n context.page[prop] = rest[prop];\n } // Setting the language - if none is provided, the default one is used\n\n\n context.language = language;\n\n if (onNewComment) {\n context.callbacks = {\n onNewComment: [onNewComment]\n };\n }\n}\n\nvar DisqusThread = function (_React$Component) {\n _inherits(DisqusThread, _React$Component);\n\n function DisqusThread() {\n _classCallCheck(this, DisqusThread);\n\n return _possibleConstructorReturn(this, (DisqusThread.__proto__ || Object.getPrototypeOf(DisqusThread)).apply(this, arguments));\n }\n\n _createClass(DisqusThread, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.loadDisqus();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n this.loadDisqus();\n }\n }, {\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate(nextProps, nextState) {\n return nextProps.identifier !== this.props.identifier;\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var props = Object.keys(this.props).reduce(function (memo, key) {\n return DISQUS_CONFIG.some(function (config) {\n return config === key;\n }) ? memo : _extends({}, memo, _defineProperty({}, key, _this2.props[key]));\n }, {});\n return _react2[\"default\"].createElement('div', props, _react2[\"default\"].createElement('div', {\n id: 'disqus_thread'\n }));\n }\n }, {\n key: 'addDisqusScript',\n value: function addDisqusScript() {\n if (__disqusAdded) {\n return;\n }\n\n var child = this.disqus = document.createElement('script');\n var parent = document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0];\n child.async = true;\n child.type = 'text/javascript';\n child.src = '//' + this.props.shortname + '.disqus.com/embed.js';\n parent.appendChild(child);\n __disqusAdded = true;\n }\n }, {\n key: 'loadDisqus',\n value: function loadDisqus() {\n var _this3 = this;\n\n var props = {}; // Extract Disqus props that were supplied to this component\n\n DISQUS_CONFIG.forEach(function (prop) {\n // prop \"shortname\" is only necessary for loading the script, not for the config itself\n if (prop !== 'shortname' && !!_this3.props[prop]) {\n props[prop] = _this3.props[prop];\n }\n }); // If Disqus has already been added, reset it\n\n if (typeof DISQUS !== 'undefined') {\n DISQUS.reset({\n reload: true,\n config: function config() {\n copyProps(this, props); // Disqus needs hashbang URL, see https://help.disqus.com/customer/portal/articles/472107\n\n this.page.url = this.page.url.replace(/#/, '') + '#!newthread';\n }\n });\n } else {\n // Otherwise add Disqus to the page\n window.disqus_config = function () {\n copyProps(this, props);\n };\n\n this.addDisqusScript();\n }\n }\n }]);\n\n return DisqusThread;\n}(_react2[\"default\"].Component);\n\nDisqusThread.displayName = 'DisqusThread';\nDisqusThread.propTypes = {\n id: _propTypes2[\"default\"].string,\n\n /**\n * `shortname` tells the Disqus service your forum's shortname,\n * which is the unique identifier for your website as registered\n * on Disqus. If undefined , the Disqus embed will not load.\n */\n shortname: _propTypes2[\"default\"].string.isRequired,\n\n /**\n * `identifier` tells the Disqus service how to identify the\n * current page. When the Disqus embed is loaded, the identifier\n * is used to look up the correct thread. If disqus_identifier\n * is undefined, the page's URL will be used. The URL can be\n * unreliable, such as when renaming an article slug or changing\n * domains, so we recommend using your own unique way of\n * identifying a thread.\n */\n identifier: _propTypes2[\"default\"].string,\n\n /**\n * `title` tells the Disqus service the title of the current page.\n * This is used when creating the thread on Disqus for the first time.\n * If undefined, Disqus will use the <title> attribute of the page.\n * If that attribute could not be used, Disqus will use the URL of the page.\n */\n title: _propTypes2[\"default\"].string,\n\n /**\n * `url` tells the Disqus service the URL of the current page.\n * If undefined, Disqus will take the window.location.href.\n * This URL is used to look up or create a thread if disqus_identifier\n * is undefined. In addition, this URL is always saved when a thread is\n * being created so that Disqus knows what page a thread belongs to.\n */\n url: _propTypes2[\"default\"].string,\n\n /**\n * `category_id` tells the Disqus service the category to be used for\n * the current page. This is used when creating the thread on Disqus\n * for the first time.\n */\n category_id: _propTypes2[\"default\"].string,\n\n /**\n * `onNewComment` function accepts one parameter `comment` which is a\n * JavaScript object with comment `id` and `text`. This allows you to track\n * user comments and replies and run a script after a comment is posted.\n */\n onNewComment: _propTypes2[\"default\"].func,\n\n /**\n * `language` tells the Disqus service which language should be used.\n * Please refer to https://www.transifex.com/disqus/disqus/ on which languages can be used\n * If undefined, English is used as default one\n */\n language: _propTypes2[\"default\"].string\n};\nDisqusThread.defaultProps = {\n url: typeof window === 'undefined' ? null : window.location.href\n};\nexports[\"default\"] = DisqusThread;","'use strict';\n// B.2.3.2 String.prototype.anchor(name)\nrequire('./_string-html')('anchor', function (createHTML) {\n return function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n };\n});\n","import React from 'react'\n\nimport './index.scss'\n\nexport const Hr = () => <hr className=\"custom-hr\" />\n","import React from 'react'\n\nexport const PostTitle = ({ title }) => <h1>{title}</h1>\n","import React from 'react'\n\nimport './index.scss'\n\nexport const PostContainer = ({ html }) => (\n <div dangerouslySetInnerHTML={{ __html: html }} />\n)\n","import React from 'react'\n\nimport './index.scss'\n\nexport const FacebookIcon = ({ onClick }) => (\n <a\n className=\"resp-sharing-button__link\"\n href=\"#\"\n target=\"_blank\"\n rel=\"noopener\"\n aria-label=\"Share on Facebook\"\n onClick={onClick}\n >\n <div className=\"resp-sharing-button resp-sharing-button--facebook resp-sharing-button--large\">\n <div\n aria-hidden=\"true\"\n className=\"resp-sharing-button__icon resp-sharing-button__icon--solid\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"M18.77 7.46H14.5v-1.9c0-.9.6-1.1 1-1.1h3V.5h-4.33C10.24.5 9.5 3.44 9.5 5.32v2.15h-3v4h3v12h5v-12h3.85l.42-4z\" />\n </svg>\n </div>\n <span className=\"service-label\">Share on Facebook</span>\n </div>\n </a>\n)\n","import React from 'react'\n\nimport './index.scss'\n\nexport const TwitterIcon = ({ onClick }) => (\n <a\n className=\"resp-sharing-button__link\"\n href=\"#\"\n rel=\"noopener\"\n aria-label=\"Share on Twitter\"\n onClick={onClick}\n >\n <div className=\"resp-sharing-button resp-sharing-button--twitter resp-sharing-button--large\">\n <div\n aria-hidden=\"true\"\n className=\"resp-sharing-button__icon resp-sharing-button__icon--solid\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"M23.44 4.83c-.8.37-1.5.38-2.22.02.93-.56.98-.96 1.32-2.02-.88.52-1.86.9-2.9 1.1-.82-.88-2-1.43-3.3-1.43-2.5 0-4.55 2.04-4.55 4.54 0 .36.03.7.1 1.04-3.77-.2-7.12-2-9.36-4.75-.4.67-.6 1.45-.6 2.3 0 1.56.8 2.95 2 3.77-.74-.03-1.44-.23-2.05-.57v.06c0 2.2 1.56 4.03 3.64 4.44-.67.2-1.37.2-2.06.08.58 1.8 2.26 3.12 4.25 3.16C5.78 18.1 3.37 18.74 1 18.46c2 1.3 4.4 2.04 6.97 2.04 8.35 0 12.92-6.92 12.92-12.93 0-.2 0-.4-.02-.6.9-.63 1.96-1.22 2.56-2.14z\" />\n </svg>\n </div>\n <span className=\"service-label\">Share on Twitter</span>\n </div>\n </a>\n)\n","import React from 'react'\nimport { FacebookIcon } from './facebook-icon'\nimport { TwitterIcon } from './twitter-icon'\nimport { shareToTwitter, shareToFacebook } from '../../utils/share'\n\nimport './index.scss'\n\nexport const SocialShare = ({ title }) => {\n const text = `${title}`\n\n const onClickTwitterIcon = e => {\n e.preventDefault()\n return shareToTwitter(window.location.href, text)\n }\n\n const onClickFacebookIcon = e => {\n e.preventDefault()\n return shareToFacebook(window.location.href, text)\n }\n\n return (\n <div className=\"social-share\">\n <FacebookIcon onClick={onClickFacebookIcon} />\n <TwitterIcon onClick={onClickTwitterIcon} />\n </div>\n )\n}\n","export const shareToFacebook = (href, text) => {\n window.FB.ui({\n method: 'share',\n mobile_iframe: true,\n href,\n quote: text,\n })\n}\n\nexport const shareToTwitter = (href, text) => {\n window.open(\n `https://twitter.com/share?url=${encodeURI(encodeURI(href))}&text=${text}`,\n 'sharer',\n 'toolbar=0,status=0,width=626,height=436'\n )\n}\n","import React from 'react'\nimport { Link } from 'gatsby'\n\nimport './index.scss'\n\nexport const PostNavigator = ({ pageContext, location }) => {\n const { previous, next } = pageContext\n\n return (\n <ul className=\"navigator\">\n <li>\n {previous && (\n <Link to={previous.fields.slug} rel=\"prev\">\n ← {previous.frontmatter.title}\n </Link>\n )}\n </li>\n <li>\n <Link to={location.pathname.replace('bookstore', '')}>맨 위로</Link>\n </li>\n <li>\n {next && (\n <Link to={next.fields.slug} rel=\"next\">\n {next.frontmatter.title} →\n </Link>\n )}\n </li>\n </ul>\n )\n}\n","import React, { Component } from 'react'\nimport ReactDisqusComments from 'react-disqus-comments'\n\nexport class Disqus extends Component {\n constructor(props) {\n super(props)\n this.state = { toasts: [] }\n this.notifyAboutComment = this.notifyAboutComment.bind(this)\n this.onSnackbarDismiss = this.onSnackbarDismiss.bind(this)\n }\n\n onSnackbarDismiss() {\n const [, ...toasts] = this.state.toasts\n this.setState({ toasts })\n }\n\n notifyAboutComment() {\n const toasts = this.state.toasts.slice()\n toasts.push({ text: 'New comment available!!' })\n this.setState({ toasts })\n }\n\n render() {\n const { post, shortName, siteUrl, slug } = this.props\n const url = siteUrl + slug\n\n return (\n <ReactDisqusComments\n shortname={shortName}\n identifier={post.frontmatter.title}\n title={post.frontmatter.title}\n url={url}\n category_id={post.frontmatter.category_id}\n onNewComment={this.notifyAboutComment}\n />\n )\n }\n}\n","import React, { useEffect } from 'react'\n\nconst src = 'https://utteranc.es/client.js'\nconst branch = 'master'\n\nexport const Utterences = ({ repo }) => {\n const rootElm = React.createRef()\n\n useEffect(() => {\n const utterances = document.createElement('script')\n const utterancesConfig = {\n src,\n repo,\n branch,\n async: true,\n 'issue-term': 'pathname',\n crossorigin: 'anonymous',\n }\n\n Object.keys(utterancesConfig).forEach(configKey => {\n utterances.setAttribute(configKey, utterancesConfig[configKey])\n })\n rootElm.current.appendChild(utterances)\n }, [])\n\n return <div className=\"utterences\" ref={rootElm} />\n}\n","import React from 'react'\n\nimport { rhythm } from '../../utils/typography'\n\nimport './index.scss'\n\nexport const Orderbar = ({ naverOrder, coupangOrder }) => {\n return (\n <ul\n className=\"orderbar-container\"\n role=\"tablist\"\n id=\"orderbar\"\n style={{\n margin: `0 -${rhythm(3 / 4)}`,\n }}\n >\n {naverOrder && (\n <li className=\"item\" role=\"tab\">\n <a href={naverOrder} target=\"_blank\">\n 네이버에서 주문\n </a>\n </li>\n )}\n {coupangOrder && (\n <li className=\"item\" role=\"tab\">\n <a href={coupangOrder} target=\"_blank\">\n 쿠팡에서 주문\n </a>\n </li>\n )}\n </ul>\n )\n}\n","import React, { useEffect } from 'react'\nimport { graphql } from 'gatsby'\n\nimport * as Elements from '../components/elements'\nimport { Layout } from '../layout'\nimport { Head } from '../components/head'\n\nimport { PostTitle } from '../components/post-title'\nimport { PostContainer } from '../components/post-container'\nimport { SocialShare } from '../components/social-share'\nimport { PostNavigator } from '../components/post-navigator'\nimport { Disqus } from '../components/disqus'\nimport { Utterences } from '../components/utterances'\nimport { Orderbar } from '../components/orderbar'\n\nimport * as ScrollManager from '../utils/scroll'\n\nimport '../styles/code.scss'\n\nexport default ({ data, pageContext, location }) => {\n useEffect(() => {\n ScrollManager.init()\n return () => ScrollManager.destroy()\n }, [])\n\n const post = data.markdownRemark\n const metaData = data.site.siteMetadata\n const { title, comment, siteUrl, author } = metaData\n const { disqusShortName, utterances } = comment\n\n return (\n <Layout location={location} title={title}>\n <Head\n title={post.frontmatter.title}\n description={post.excerpt}\n keywords={post.frontmatter.tags}\n />\n <PostTitle title={post.frontmatter.title} />\n <PostContainer html={post.html} />\n <Elements.Hr />\n <SocialShare title={post.frontmatter.title} author={author} />\n <PostNavigator pageContext={pageContext} location={location} />\n {!!disqusShortName && (\n <Disqus\n post={post}\n shortName={disqusShortName}\n siteUrl={siteUrl}\n slug={pageContext.slug}\n />\n )}\n {!!utterances && <Utterences repo={utterances} />}\n <Orderbar\n naverOrder={post.frontmatter.naverOrder}\n coupangOrder={post.frontmatter.coupangOrder}\n />\n </Layout>\n )\n}\n\nexport const pageQuery = graphql`\n query BlogPostBySlug($slug: String!) {\n site {\n siteMetadata {\n title\n author\n siteUrl\n comment {\n disqusShortName\n utterances\n }\n }\n }\n markdownRemark(fields: { slug: { eq: $slug } }) {\n id\n excerpt(pruneLength: 280)\n html\n frontmatter {\n title\n tags\n naverOrder\n coupangOrder\n date(formatString: \"YYYY.MM.DD\")\n }\n }\n }\n`\n"],"sourceRoot":""}