-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-pages-blog-jsx-61bcb10705f89b321c35.js.map
1 lines (1 loc) · 48.7 KB
/
component---src-pages-blog-jsx-61bcb10705f89b321c35.js.map
1
{"version":3,"sources":["webpack:///./node_modules/gatsby-image/index.js","webpack:///./src/components/image.jsx","webpack:///./src/pages/blog lazy ^\\.\\/.*$ namespace object","webpack:///./src/utils/importBlogs.js","webpack:///./node_modules/core-js/modules/es6.array.find-index.js","webpack:///./src/components/blogList.jsx","webpack:///./src/pages/blog sync \\.mdx$","webpack:///./src/pages/blog/helloworld.mdx","webpack:///./src/pages/blog.jsx"],"names":["_interopRequireDefault","require","exports","__esModule","default","io","_assertThisInitialized2","_inheritsLoose2","_objectWithoutPropertiesLoose2","_extends2","_react","_propTypes","convertProps","props","convertedProps","resolutions","sizes","critical","fixed","fluid","loading","groupByMedia","concat","matchesMedia","_ref","media","isBrowser","window","matchMedia","matches","getImageSrcKey","_ref2","getCurrentSrcData","src","currentData","Array","isArray","some","image","hasArtDirectionSupport","foundMedia","findIndex","imageCache","Object","create","inImageCache","hasNativeLazyLoadSupport","HTMLImageElement","prototype","hasIOSupport","IntersectionObserver","listeners","WeakMap","generateImageSources","imageVariants","map","_ref3","srcSet","srcSetWebp","createElement","Fragment","key","type","withMedia","without","forEach","variant","push","generateTracedSVGSources","_ref4","tracedSVG","generateBase64Sources","_ref5","base64","generateNoscriptSource","_ref6","isWebp","listenToIntersections","el","cb","observer","entries","entry","has","target","get","isIntersecting","intersectionRatio","unobserve","delete","rootMargin","observe","set","noscriptImg","title","alt","width","height","crossOrigin","draggable","join","Placeholder","_ref7","generateSources","spreadProps","ariaHidden","baseImage","Img","length","forwardRef","ref","style","onLoad","onError","otherProps","position","top","left","objectFit","objectPosition","propTypes","object","func","Image","_React$Component","_this","call","this","seenBefore","isCritical","addNoScript","fadeIn","useIOSupport","isVisible","state","imgLoaded","imgCached","imageRef","createRef","handleImageLoaded","bind","handleRef","_proto","componentDidMount","onStartLoad","wasCached","img","current","complete","componentWillUnmount","cleanUpListeners","_this2","imageInCache","setState","currentSrc","render","_convertProps","className","_convertProps$style","_convertProps$imgStyl","imgStyle","_convertProps$placeho","placeholderStyle","placeholderClassName","backgroundColor","durationFadeIn","Tag","itemProp","shouldReveal","shouldFadeIn","imageStyle","opacity","transition","bgColor","delayHideStyle","transitionDelay","imagePlaceholderStyle","placeholderImageProps","overflow","JSON","stringify","paddingBottom","aspectRatio","bottom","right","dangerouslySetInnerHTML","__html","_imageVariants","_image","divStyle","display","Component","defaultProps","fixedObject","shape","number","isRequired","string","srcWebp","fluidObject","oneOfType","arrayOf","bool","oneOf","_default","node","childImageSharp","webpackAsyncContext","req","Promise","resolve","then","__webpack_require__","o","e","Error","code","keys","id","module","importBlogs","setBlogsCallback","x","blog","substring","indexOf","res","$export","$find","KEY","forced","P","F","callbackfn","arguments","undefined","BlogList","blogs","elementsPerRow","data","reducedBlogs","reduce","acc","cur","index","xi","y","yi","images","edges","find","n","relativePath","includes","_frontmatter","to","path","intro","webpackContext","webpackContextResolve","layoutProps","MDXContent","components","mdxType","children","isMDXComponent","Blog","sort","a","b","Date","meta","date"],"mappings":"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","file":"component---src-pages-blog-jsx-61bcb10705f89b321c35.js","sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar logDeprecationNotice = function logDeprecationNotice(prop, replacement) {\n if (process.env.NODE_ENV === \"production\") {\n return;\n }\n\n console.log(\"\\n The \\\"\" + prop + \"\\\" prop is now deprecated and will be removed in the next major version\\n of \\\"gatsby-image\\\".\\n \");\n\n if (replacement) {\n console.log(\"Please use \" + replacement + \" instead of \\\"\" + prop + \"\\\".\");\n }\n}; // Handle legacy props during their deprecation phase\n\n\nvar convertProps = function convertProps(props) {\n var convertedProps = (0, _extends2.default)({}, props);\n var resolutions = convertedProps.resolutions,\n sizes = convertedProps.sizes,\n critical = convertedProps.critical;\n\n if (resolutions) {\n convertedProps.fixed = resolutions;\n delete convertedProps.resolutions;\n }\n\n if (sizes) {\n convertedProps.fluid = sizes;\n delete convertedProps.sizes;\n }\n\n if (critical) {\n logDeprecationNotice(\"critical\", \"the native \\\"loading\\\" attribute\");\n convertedProps.loading = \"eager\";\n } // convert fluid & fixed to arrays so we only have to work with arrays\n\n\n if (convertedProps.fluid) {\n convertedProps.fluid = groupByMedia([].concat(convertedProps.fluid));\n }\n\n if (convertedProps.fixed) {\n convertedProps.fixed = groupByMedia([].concat(convertedProps.fixed));\n }\n\n return convertedProps;\n};\n/**\n * Checks if fluid or fixed are art-direction arrays.\n *\n * @param currentData {{media?: string}[]} The props to check for images.\n * @return {boolean}\n */\n\n\nvar hasArtDirectionSupport = function hasArtDirectionSupport(currentData) {\n return !!currentData && Array.isArray(currentData) && currentData.some(function (image) {\n return typeof image.media !== \"undefined\";\n });\n};\n/**\n * Tries to detect if a media query matches the current viewport.\n * @property media {{media?: string}} A media query string.\n * @return {boolean}\n */\n\n\nvar matchesMedia = function matchesMedia(_ref) {\n var media = _ref.media;\n return media ? isBrowser && !!window.matchMedia(media).matches : false;\n};\n/**\n * Find the source of an image to use as a key in the image cache.\n * Use `the first image in either `fixed` or `fluid`\n * @param {{fluid: {src: string, media?: string}[], fixed: {src: string, media?: string}[]}} args\n * @return {string}\n */\n\n\nvar getImageSrcKey = function getImageSrcKey(_ref2) {\n var fluid = _ref2.fluid,\n fixed = _ref2.fixed;\n var data = fluid ? getCurrentSrcData(fluid) : getCurrentSrcData(fixed);\n return data.src;\n};\n/**\n * Returns the current src - Preferably with art-direction support.\n * @param currentData {{media?: string}[]} The fluid or fixed image array.\n * @return {{src: string, media?: string}}\n */\n\n\nvar getCurrentSrcData = function getCurrentSrcData(currentData) {\n if (isBrowser && hasArtDirectionSupport(currentData)) {\n // Do we have an image for the current Viewport?\n var foundMedia = currentData.findIndex(matchesMedia);\n\n if (foundMedia !== -1) {\n return currentData[foundMedia];\n }\n } // Else return the first image.\n\n\n return currentData[0];\n}; // Cache if we've seen an image before so we don't bother with\n// lazy-loading & fading in on subsequent mounts.\n\n\nvar imageCache = Object.create({});\n\nvar inImageCache = function inImageCache(props) {\n var convertedProps = convertProps(props); // Find src\n\n var src = getImageSrcKey(convertedProps);\n return imageCache[src] || false;\n};\n\nvar activateCacheForImage = function activateCacheForImage(props) {\n var convertedProps = convertProps(props); // Find src\n\n var src = getImageSrcKey(convertedProps);\n imageCache[src] = true;\n}; // Native lazy-loading support: https://addyosmani.com/blog/lazy-loading/\n\n\nvar hasNativeLazyLoadSupport = typeof HTMLImageElement !== \"undefined\" && \"loading\" in HTMLImageElement.prototype;\nvar isBrowser = typeof window !== \"undefined\";\nvar hasIOSupport = isBrowser && window.IntersectionObserver;\nvar io;\nvar listeners = new WeakMap();\n\nfunction getIO() {\n if (typeof io === \"undefined\" && typeof window !== \"undefined\" && window.IntersectionObserver) {\n io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (listeners.has(entry.target)) {\n var cb = listeners.get(entry.target); // Edge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(entry.target);\n listeners.delete(entry.target);\n cb();\n }\n }\n });\n }, {\n rootMargin: \"200px\"\n });\n }\n\n return io;\n}\n\nfunction generateImageSources(imageVariants) {\n return imageVariants.map(function (_ref3) {\n var src = _ref3.src,\n srcSet = _ref3.srcSet,\n srcSetWebp = _ref3.srcSetWebp,\n media = _ref3.media,\n sizes = _ref3.sizes;\n return _react.default.createElement(_react.default.Fragment, {\n key: src\n }, srcSetWebp && _react.default.createElement(\"source\", {\n type: \"image/webp\",\n media: media,\n srcSet: srcSetWebp,\n sizes: sizes\n }), _react.default.createElement(\"source\", {\n media: media,\n srcSet: srcSet,\n sizes: sizes\n }));\n });\n} // Return an array ordered by elements having a media prop, does not use\n// native sort, as a stable sort is not guaranteed by all browsers/versions\n\n\nfunction groupByMedia(imageVariants) {\n var withMedia = [];\n var without = [];\n imageVariants.forEach(function (variant) {\n return (variant.media ? withMedia : without).push(variant);\n });\n\n if (without.length > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"We've found \" + without.length + \" sources without a media property. They might be ignored by the browser, see: https://www.gatsbyjs.org/packages/gatsby-image/#art-directing-multiple-images\");\n }\n\n return [].concat(withMedia, without);\n}\n\nfunction generateTracedSVGSources(imageVariants) {\n return imageVariants.map(function (_ref4) {\n var src = _ref4.src,\n media = _ref4.media,\n tracedSVG = _ref4.tracedSVG;\n return _react.default.createElement(\"source\", {\n key: src,\n media: media,\n srcSet: tracedSVG\n });\n });\n}\n\nfunction generateBase64Sources(imageVariants) {\n return imageVariants.map(function (_ref5) {\n var src = _ref5.src,\n media = _ref5.media,\n base64 = _ref5.base64;\n return _react.default.createElement(\"source\", {\n key: src,\n media: media,\n srcSet: base64\n });\n });\n}\n\nfunction generateNoscriptSource(_ref6, isWebp) {\n var srcSet = _ref6.srcSet,\n srcSetWebp = _ref6.srcSetWebp,\n media = _ref6.media,\n sizes = _ref6.sizes;\n var src = isWebp ? srcSetWebp : srcSet;\n var mediaAttr = media ? \"media=\\\"\" + media + \"\\\" \" : \"\";\n var typeAttr = isWebp ? \"type='image/webp' \" : \"\";\n var sizesAttr = sizes ? \"sizes=\\\"\" + sizes + \"\\\" \" : \"\";\n return \"<source \" + typeAttr + mediaAttr + \"srcset=\\\"\" + src + \"\\\" \" + sizesAttr + \"/>\";\n}\n\nfunction generateNoscriptSources(imageVariants) {\n return imageVariants.map(function (variant) {\n return (variant.srcSetWebp ? generateNoscriptSource(variant, true) : \"\") + generateNoscriptSource(variant);\n }).join(\"\");\n}\n\nvar listenToIntersections = function listenToIntersections(el, cb) {\n var observer = getIO();\n\n if (observer) {\n observer.observe(el);\n listeners.set(el, cb);\n }\n\n return function () {\n observer.unobserve(el);\n listeners.delete(el);\n };\n};\n\nvar noscriptImg = function noscriptImg(props) {\n // Check if prop exists before adding each attribute to the string output below to prevent\n // HTML validation issues caused by empty values like width=\"\" and height=\"\"\n var src = props.src ? \"src=\\\"\" + props.src + \"\\\" \" : \"src=\\\"\\\" \"; // required attribute\n\n var sizes = props.sizes ? \"sizes=\\\"\" + props.sizes + \"\\\" \" : \"\";\n var srcSet = props.srcSet ? \"srcset=\\\"\" + props.srcSet + \"\\\" \" : \"\";\n var title = props.title ? \"title=\\\"\" + props.title + \"\\\" \" : \"\";\n var alt = props.alt ? \"alt=\\\"\" + props.alt + \"\\\" \" : \"alt=\\\"\\\" \"; // required attribute\n\n var width = props.width ? \"width=\\\"\" + props.width + \"\\\" \" : \"\";\n var height = props.height ? \"height=\\\"\" + props.height + \"\\\" \" : \"\";\n var crossOrigin = props.crossOrigin ? \"crossorigin=\\\"\" + props.crossOrigin + \"\\\" \" : \"\";\n var loading = props.loading ? \"loading=\\\"\" + props.loading + \"\\\" \" : \"\";\n var draggable = props.draggable ? \"draggable=\\\"\" + props.draggable + \"\\\" \" : \"\";\n var sources = generateNoscriptSources(props.imageVariants);\n return \"<picture>\" + sources + \"<img \" + loading + width + height + sizes + srcSet + src + alt + title + crossOrigin + draggable + \"style=\\\"position:absolute;top:0;left:0;opacity:1;width:100%;height:100%;object-fit:cover;object-position:center\\\"/></picture>\";\n}; // Earlier versions of gatsby-image during the 2.x cycle did not wrap\n// the `Img` component in a `picture` element. This maintains compatibility\n// until a breaking change can be introduced in the next major release\n\n\nvar Placeholder = function Placeholder(_ref7) {\n var src = _ref7.src,\n imageVariants = _ref7.imageVariants,\n generateSources = _ref7.generateSources,\n spreadProps = _ref7.spreadProps,\n ariaHidden = _ref7.ariaHidden;\n\n var baseImage = _react.default.createElement(Img, (0, _extends2.default)({\n src: src\n }, spreadProps, {\n ariaHidden: ariaHidden\n }));\n\n return imageVariants.length > 1 ? _react.default.createElement(\"picture\", null, generateSources(imageVariants), baseImage) : baseImage;\n};\n\nvar Img = _react.default.forwardRef(function (props, ref) {\n var sizes = props.sizes,\n srcSet = props.srcSet,\n src = props.src,\n style = props.style,\n onLoad = props.onLoad,\n onError = props.onError,\n loading = props.loading,\n draggable = props.draggable,\n ariaHidden = props.ariaHidden,\n otherProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"sizes\", \"srcSet\", \"src\", \"style\", \"onLoad\", \"onError\", \"loading\", \"draggable\", \"ariaHidden\"]);\n return _react.default.createElement(\"img\", (0, _extends2.default)({\n \"aria-hidden\": ariaHidden,\n sizes: sizes,\n srcSet: srcSet,\n src: src\n }, otherProps, {\n onLoad: onLoad,\n onError: onError,\n ref: ref,\n loading: loading,\n draggable: draggable,\n style: (0, _extends2.default)({\n position: \"absolute\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n objectPosition: \"center\"\n }, style)\n }));\n});\n\nImg.propTypes = {\n style: _propTypes.default.object,\n onError: _propTypes.default.func,\n onLoad: _propTypes.default.func\n};\n\nvar Image =\n/*#__PURE__*/\nfunction (_React$Component) {\n (0, _inheritsLoose2.default)(Image, _React$Component);\n\n function Image(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // If this image has already been loaded before then we can assume it's\n // already in the browser cache so it's cheap to just show directly.\n\n _this.seenBefore = isBrowser && inImageCache(props);\n _this.isCritical = props.loading === \"eager\" || props.critical;\n _this.addNoScript = !(_this.isCritical && !props.fadeIn);\n _this.useIOSupport = !hasNativeLazyLoadSupport && hasIOSupport && !_this.isCritical && !_this.seenBefore;\n var isVisible = _this.isCritical || isBrowser && (hasNativeLazyLoadSupport || !_this.useIOSupport);\n _this.state = {\n isVisible: isVisible,\n imgLoaded: false,\n imgCached: false,\n fadeIn: !_this.seenBefore && props.fadeIn\n };\n _this.imageRef = _react.default.createRef();\n _this.handleImageLoaded = _this.handleImageLoaded.bind((0, _assertThisInitialized2.default)(_this));\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n var _proto = Image.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n if (this.state.isVisible && typeof this.props.onStartLoad === \"function\") {\n this.props.onStartLoad({\n wasCached: inImageCache(this.props)\n });\n }\n\n if (this.isCritical) {\n var img = this.imageRef.current;\n\n if (img && img.complete) {\n this.handleImageLoaded();\n }\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this.cleanUpListeners) {\n this.cleanUpListeners();\n }\n } // Specific to IntersectionObserver based lazy-load support\n ;\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.useIOSupport && ref) {\n this.cleanUpListeners = listenToIntersections(ref, function () {\n var imageInCache = inImageCache(_this2.props);\n\n if (!_this2.state.isVisible && typeof _this2.props.onStartLoad === \"function\") {\n _this2.props.onStartLoad({\n wasCached: imageInCache\n });\n } // imgCached and imgLoaded must update after isVisible,\n // Once isVisible is true, imageRef becomes accessible, which imgCached needs access to.\n // imgLoaded and imgCached are in a 2nd setState call to be changed together,\n // avoiding initiating unnecessary animation frames from style changes.\n\n\n _this2.setState({\n isVisible: true\n }, function () {\n return _this2.setState({\n imgLoaded: imageInCache,\n // `currentSrc` should be a string, but can be `undefined` in IE,\n // !! operator validates the value is not undefined/null/\"\"\n imgCached: !!_this2.imageRef.current.currentSrc\n });\n });\n });\n }\n };\n\n _proto.handleImageLoaded = function handleImageLoaded() {\n activateCacheForImage(this.props);\n this.setState({\n imgLoaded: true\n });\n\n if (this.props.onLoad) {\n this.props.onLoad();\n }\n };\n\n _proto.render = function render() {\n var _convertProps = convertProps(this.props),\n title = _convertProps.title,\n alt = _convertProps.alt,\n className = _convertProps.className,\n _convertProps$style = _convertProps.style,\n style = _convertProps$style === void 0 ? {} : _convertProps$style,\n _convertProps$imgStyl = _convertProps.imgStyle,\n imgStyle = _convertProps$imgStyl === void 0 ? {} : _convertProps$imgStyl,\n _convertProps$placeho = _convertProps.placeholderStyle,\n placeholderStyle = _convertProps$placeho === void 0 ? {} : _convertProps$placeho,\n placeholderClassName = _convertProps.placeholderClassName,\n fluid = _convertProps.fluid,\n fixed = _convertProps.fixed,\n backgroundColor = _convertProps.backgroundColor,\n durationFadeIn = _convertProps.durationFadeIn,\n Tag = _convertProps.Tag,\n itemProp = _convertProps.itemProp,\n loading = _convertProps.loading,\n draggable = _convertProps.draggable;\n\n var shouldReveal = this.state.fadeIn === false || this.state.imgLoaded;\n var shouldFadeIn = this.state.fadeIn === true && !this.state.imgCached;\n var imageStyle = (0, _extends2.default)({\n opacity: shouldReveal ? 1 : 0,\n transition: shouldFadeIn ? \"opacity \" + durationFadeIn + \"ms\" : \"none\"\n }, imgStyle);\n var bgColor = typeof backgroundColor === \"boolean\" ? \"lightgray\" : backgroundColor;\n var delayHideStyle = {\n transitionDelay: durationFadeIn + \"ms\"\n };\n var imagePlaceholderStyle = (0, _extends2.default)({\n opacity: this.state.imgLoaded ? 0 : 1\n }, shouldFadeIn && delayHideStyle, {}, imgStyle, {}, placeholderStyle);\n var placeholderImageProps = {\n title: title,\n alt: !this.state.isVisible ? alt : \"\",\n style: imagePlaceholderStyle,\n className: placeholderClassName,\n itemProp: itemProp\n };\n\n if (fluid) {\n var imageVariants = fluid;\n var image = getCurrentSrcData(fluid);\n return _react.default.createElement(Tag, {\n className: (className ? className : \"\") + \" gatsby-image-wrapper\",\n style: (0, _extends2.default)({\n position: \"relative\",\n overflow: \"hidden\"\n }, style),\n ref: this.handleRef,\n key: \"fluid-\" + JSON.stringify(image.srcSet)\n }, _react.default.createElement(Tag, {\n \"aria-hidden\": true,\n style: {\n width: \"100%\",\n paddingBottom: 100 / image.aspectRatio + \"%\"\n }\n }), bgColor && _react.default.createElement(Tag, {\n \"aria-hidden\": true,\n title: title,\n style: (0, _extends2.default)({\n backgroundColor: bgColor,\n position: \"absolute\",\n top: 0,\n bottom: 0,\n opacity: !this.state.imgLoaded ? 1 : 0,\n right: 0,\n left: 0\n }, shouldFadeIn && delayHideStyle)\n }), image.base64 && _react.default.createElement(Placeholder, {\n ariaHidden: true,\n src: image.base64,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateBase64Sources\n }), image.tracedSVG && _react.default.createElement(Placeholder, {\n ariaHidden: true,\n src: image.tracedSVG,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateTracedSVGSources\n }), this.state.isVisible && _react.default.createElement(\"picture\", null, generateImageSources(imageVariants), _react.default.createElement(Img, {\n alt: alt,\n title: title,\n sizes: image.sizes,\n src: image.src,\n crossOrigin: this.props.crossOrigin,\n srcSet: image.srcSet,\n style: imageStyle,\n ref: this.imageRef,\n onLoad: this.handleImageLoaded,\n onError: this.props.onError,\n itemProp: itemProp,\n loading: loading,\n draggable: draggable\n })), this.addNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title,\n loading: loading\n }, image, {\n imageVariants: imageVariants\n }))\n }\n }));\n }\n\n if (fixed) {\n var _imageVariants = fixed;\n\n var _image = getCurrentSrcData(fixed);\n\n var divStyle = (0, _extends2.default)({\n position: \"relative\",\n overflow: \"hidden\",\n display: \"inline-block\",\n width: _image.width,\n height: _image.height\n }, style);\n\n if (style.display === \"inherit\") {\n delete divStyle.display;\n }\n\n return _react.default.createElement(Tag, {\n className: (className ? className : \"\") + \" gatsby-image-wrapper\",\n style: divStyle,\n ref: this.handleRef,\n key: \"fixed-\" + JSON.stringify(_image.srcSet)\n }, bgColor && _react.default.createElement(Tag, {\n \"aria-hidden\": true,\n title: title,\n style: (0, _extends2.default)({\n backgroundColor: bgColor,\n width: _image.width,\n opacity: !this.state.imgLoaded ? 1 : 0,\n height: _image.height\n }, shouldFadeIn && delayHideStyle)\n }), _image.base64 && _react.default.createElement(Placeholder, {\n ariaHidden: true,\n src: _image.base64,\n spreadProps: placeholderImageProps,\n imageVariants: _imageVariants,\n generateSources: generateBase64Sources\n }), _image.tracedSVG && _react.default.createElement(Placeholder, {\n ariaHidden: true,\n src: _image.tracedSVG,\n spreadProps: placeholderImageProps,\n imageVariants: _imageVariants,\n generateSources: generateTracedSVGSources\n }), this.state.isVisible && _react.default.createElement(\"picture\", null, generateImageSources(_imageVariants), _react.default.createElement(Img, {\n alt: alt,\n title: title,\n width: _image.width,\n height: _image.height,\n sizes: _image.sizes,\n src: _image.src,\n crossOrigin: this.props.crossOrigin,\n srcSet: _image.srcSet,\n style: imageStyle,\n ref: this.imageRef,\n onLoad: this.handleImageLoaded,\n onError: this.props.onError,\n itemProp: itemProp,\n loading: loading,\n draggable: draggable\n })), this.addNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title,\n loading: loading\n }, _image, {\n imageVariants: _imageVariants\n }))\n }\n }));\n }\n\n return null;\n };\n\n return Image;\n}(_react.default.Component);\n\nImage.defaultProps = {\n fadeIn: true,\n durationFadeIn: 500,\n alt: \"\",\n Tag: \"div\",\n // We set it to `lazy` by default because it's best to default to a performant\n // setting and let the user \"opt out\" to `eager`\n loading: \"lazy\"\n};\n\nvar fixedObject = _propTypes.default.shape({\n width: _propTypes.default.number.isRequired,\n height: _propTypes.default.number.isRequired,\n src: _propTypes.default.string.isRequired,\n srcSet: _propTypes.default.string.isRequired,\n base64: _propTypes.default.string,\n tracedSVG: _propTypes.default.string,\n srcWebp: _propTypes.default.string,\n srcSetWebp: _propTypes.default.string,\n media: _propTypes.default.string\n});\n\nvar fluidObject = _propTypes.default.shape({\n aspectRatio: _propTypes.default.number.isRequired,\n src: _propTypes.default.string.isRequired,\n srcSet: _propTypes.default.string.isRequired,\n sizes: _propTypes.default.string.isRequired,\n base64: _propTypes.default.string,\n tracedSVG: _propTypes.default.string,\n srcWebp: _propTypes.default.string,\n srcSetWebp: _propTypes.default.string,\n media: _propTypes.default.string\n}); // If you modify these propTypes, please don't forget to update following files as well:\n// https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-image/index.d.ts\n// https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-image/README.md#gatsby-image-props\n// https://github.com/gatsbyjs/gatsby/blob/master/docs/docs/gatsby-image.md#gatsby-image-props\n\n\nImage.propTypes = {\n resolutions: fixedObject,\n sizes: fluidObject,\n fixed: _propTypes.default.oneOfType([fixedObject, _propTypes.default.arrayOf(fixedObject)]),\n fluid: _propTypes.default.oneOfType([fluidObject, _propTypes.default.arrayOf(fluidObject)]),\n fadeIn: _propTypes.default.bool,\n durationFadeIn: _propTypes.default.number,\n title: _propTypes.default.string,\n alt: _propTypes.default.string,\n className: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object]),\n // Support Glamor's css prop.\n critical: _propTypes.default.bool,\n crossOrigin: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),\n style: _propTypes.default.object,\n imgStyle: _propTypes.default.object,\n placeholderStyle: _propTypes.default.object,\n placeholderClassName: _propTypes.default.string,\n backgroundColor: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),\n onLoad: _propTypes.default.func,\n onError: _propTypes.default.func,\n onStartLoad: _propTypes.default.func,\n Tag: _propTypes.default.string,\n itemProp: _propTypes.default.string,\n loading: _propTypes.default.oneOf([\"auto\", \"lazy\", \"eager\"]),\n draggable: _propTypes.default.bool\n};\nvar _default = Image;\nexports.default = _default;","import React from 'react';\r\nimport Img from 'gatsby-image';\r\n\r\nconst Image = ({ image, alt }) => {\r\n return <Img sizes={image.node.childImageSharp.sizes} alt={alt} />;\r\n};\r\n\r\nexport default Image;\r\n","var map = {\n\t\"./helloworld\": \"u2lm\",\n\t\"./helloworld.mdx\": \"u2lm\"\n};\n\nfunction webpackAsyncContext(req) {\n\treturn Promise.resolve().then(function() {\n\t\tif(!__webpack_require__.o(map, req)) {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t}\n\n\t\tvar id = map[req];\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"HRk+\";\nmodule.exports = webpackAsyncContext;","const importBlogs = (setBlogsCallback) => {\r\n const importAll = (r) => {\r\n r.keys().forEach(x => {\r\n var blog = x.substring(2, x.indexOf('.mdx'));\r\n\r\n import(`../pages/blog/${blog}`).then(res => {\r\n setBlogsCallback(res)\r\n })\r\n });\r\n }\r\n\r\n return importAll(require.context('../pages/blog/', true, /\\.mdx$/));\r\n}\r\n\r\nexport default importBlogs;","'use strict';\n// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)\nvar $export = require('./_export');\nvar $find = require('./_array-methods')(6);\nvar KEY = 'findIndex';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\nrequire('./_add-to-unscopables')(KEY);\n","import React from 'react';\r\nimport { Link } from '@reach/router';\r\nimport { useStaticQuery, graphql } from 'gatsby';\r\nimport Image from './image';\r\n\r\nconst BlogList = ({ blogs, elementsPerRow = 3 }) => {\r\n\tconst data = useStaticQuery(graphql`\r\n\t\t\t\t\t query {\r\n\t\t\t\t\t\timages: allFile(filter: { extension: { eq: \"jpg\" } }) {\r\n\t\t\t\t\t\t edges {\r\n\t\t\t\t\t\t\tnode {\r\n\t\t\t\t\t\t\t relativePath\r\n\t\t\t\t\t\t\t name\r\n\t\t\t\t\t\t\t childImageSharp {\r\n\t\t\t\t\t\t\t\tsizes(maxWidth: 600) {\r\n\t\t\t\t\t\t\t\t ...GatsbyImageSharpSizes\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t }\r\n\t\t\t\t\t `);\r\n\tconst reducedBlogs = blogs.reduce((acc, cur) => {\r\n\t\tconst index = Object.keys(acc).length || 1;\r\n\t\tif (!acc[index]) {\r\n\t\t\tacc[index] = [cur];\r\n\t\t} else if (acc[index].length === elementsPerRow) {\r\n\t\t\tacc[index + 1] = [cur];\r\n\t\t} else {\r\n\t\t\tacc[index] = acc[index].concat([cur]);\r\n\t\t}\r\n\t\treturn acc;\r\n\t}, {});\r\n\treturn (\r\n\t\t<div className=\"container vrc__blogListContainer\">\r\n\t\t\t{Object.keys(reducedBlogs).map((x, xi) => (\r\n\t\t\t\t<div className=\"row vrc__blogListRow\" key={xi}>\r\n\t\t\t\t\t{reducedBlogs[x].map((y, yi) => {\r\n\t\t\t\t\t\tconst image = data.images.edges.find(n => {\r\n\t\t\t\t\t\t\treturn n.node.relativePath.includes(y._frontmatter.image);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tif (!image) {\r\n\t\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t<div className={`col-md-${12 / elementsPerRow} vrc__blogListCol`} key={yi}>\r\n\t\t\t\t\t\t\t\t<div className=\"vrc__blogListCard\">\r\n\t\t\t\t\t\t\t\t\t<Link to={y._frontmatter.path}>\r\n\t\t\t\t\t\t\t\t\t\t<Image\r\n\t\t\t\t\t\t\t\t\t\t\timage={image}\r\n\t\t\t\t\t\t\t\t\t\t\talt={y._frontmatter.title}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t<div className=\"vrc__blogCardBody\">\r\n\t\t\t\t\t\t\t\t\t\t\t<h2>{y._frontmatter.title}</h2>\r\n\t\t\t\t\t\t\t\t\t\t\t<span>{y._frontmatter.intro}</span>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</Link>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t})}\r\n\t\t\t\t</div>\r\n\t\t\t))}\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default BlogList;\r\n","var map = {\n\t\"./helloworld.mdx\": \"u2lm\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"sZcJ\";","import React from 'react'\n /* @jsx mdx */\nimport { mdx } from '@mdx-js/react';\n/* @jsx mdx */\n\nimport ContainerLayout from '../../components/containerLayout';\nexport const _frontmatter = {\n \"title\": \"Hello World\",\n \"path\": \"/blog/helloworld\",\n \"date\": \"2019-05-04\",\n \"image\": \"blog/home.jpg\"\n};\n\nconst makeShortcode = name => function MDXDefaultShortcode(props) {\n console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n return <div {...props} />;\n};\n\nconst layoutProps = {\n _frontmatter\n};\nconst MDXLayout = \"wrapper\";\nexport default function MDXContent({\n components,\n ...props\n}) {\n return <MDXLayout {...layoutProps} {...props} components={components} mdxType=\"MDXLayout\">\n\n <ContainerLayout mdxType=\"ContainerLayout\">\n <h1 children={_frontmatter.title} />\n <p>{`It's Corona Virus time here in Italy.`}</p>\n <p>{`All of us have a lot of time to think and relax.`}</p>\n <p>{`During this time, I would like to experiment how far can I go.`}</p>\n <p>{`So I spend a little working with Gatsby and MDX, experimenting their power.`}</p>\n <p>{`This site is the result of there tests.`}</p>\n <p>{`How you will enjoy.`}</p>\n <p>{`Stefano`}</p>\n </ContainerLayout>\n\n </MDXLayout>;\n}\n;\nMDXContent.isMDXComponent = true;\n ","import React, { Component } from 'react';\r\nimport ContainerLayout from '../components/containerLayout';\r\nimport BlogList from '../components/blogList';\r\nimport importBlogs from '../utils/importBlogs';\r\n\r\nclass Blog extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tblogs: [],\r\n\t\t};\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\timportBlogs((blog) => {\r\n\t\t\tthis.setState((state) => ({\r\n\t\t\t\tblogs: state.blogs\r\n\t\t\t\t\t.concat([blog])\r\n\t\t\t\t\t.sort((a, b) => new Date(b.meta.date) - new Date(a.meta.date)),\r\n\t\t\t}));\r\n\t\t});\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst { blogs } = this.state;\r\n\t\treturn (\r\n\t\t\t<ContainerLayout>\r\n\t\t\t\t<br />\r\n\t\t\t\t<h1>Blog</h1>\r\n\t\t\t\t<br />\r\n\t\t\t\t<BlogList blogs={blogs} />\r\n\t\t\t</ContainerLayout>\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default Blog;\r\n"],"sourceRoot":""}