-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path10-a195d325e8bf1986491d.js.map
1 lines (1 loc) · 69.3 KB
/
10-a195d325e8bf1986491d.js.map
1
{"version":3,"sources":["webpack:///./node_modules/react-waypoint/es/index.js","webpack:///./node_modules/consolidated-events/lib/index.esm.js","webpack:///./node_modules/react-is/index.js","webpack:///./node_modules/react-is/cjs/react-is.production.min.js","webpack:///./node_modules/gatsby-image/index.js"],"names":["global","react__WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","react__WEBPACK_IMPORTED_MODULE_0___default","n","consolidated_events__WEBPACK_IMPORTED_MODULE_1__","prop_types__WEBPACK_IMPORTED_MODULE_2__","prop_types__WEBPACK_IMPORTED_MODULE_2___default","react_is__WEBPACK_IMPORTED_MODULE_3__","computeOffsetPixels","offset","contextHeight","str","pixelOffset","isNaN","parseFloat","isFinite","slice","percentOffset","parseOffsetAsPercentage","constants","above","inside","below","invisible","errorMessage","ensureChildrenIsValid","children","a","Children","only","e","Error","isDOMElement","Component","type","errorMessage$1","timeout","timeoutQueue","onNextTick","cb","push","setTimeout","item","shift","isSubscribed","index","indexOf","splice","length","clearTimeout","_createClass","defineProperties","target","props","i","descriptor","enumerable","configurable","writable","Object","defineProperty","key","Constructor","protoProps","staticProps","prototype","defaultProps","topOffset","bottomOffset","horizontal","onEnter","onLeave","onPositionChange","fireOnRapidScroll","BaseClass","PureComponent","Waypoint","_BaseClass","instance","TypeError","_classCallCheck","this","_this","self","call","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","refElement","_ref","subClass","superClass","create","constructor","value","setPrototypeOf","_inherits","_this2","getWindow","cancelOnNextTick","ref","ensureRefIsProvidedByChild","_handleScroll","bind","scrollableAncestor","_findScrollableAncestor","scrollEventListenerUnsubscribe","passive","resizeEventListenerUnsubscribe","window","newProps","_this3","_props","resolveScrollableAncestorProp","node","parentNode","document","body","style","getComputedStyle","overflow","getPropertyValue","event","bounds","_getBounds","currentPosition","viewportBottom","viewportTop","waypointTop","waypointBottom","getCurrentPosition","previousPosition","_previousPosition","callbackArg","isRapidScrollDown","isRapidScrollUp","_ref$getBoundingClien","getBoundingClientRect","left","top","right","bottom","contextScrollTop","innerWidth","innerHeight","offsetWidth","offsetHeight","_props2","_this4","createElement","fontSize","current","cloneElement","innerRef","propTypes","debug","bool","func","any","oneOfType","string","number","displayName","__webpack_exports__","d","addEventListener","CAN_USE_DOM","memoized","canUsePassiveEventListeners","undefined","removeEventListener","supportsPassiveOption","opts","get","noop","testPassiveEventListeners","ensureCanMutateNextEventHandlers","eventHandlers","handlers","nextHandlers","TargetEventHandlers","events","getEventHandlers","eventName","options","normalizedEventOptions","String","capture","once","handleEvent","forEach","handler","add","listener","EVENT_HANDLERS_KEY","eventOptions","normalizeEventOptions","module","exports","b","Symbol","for","c","f","g","h","k","l","m","p","q","r","t","u","$$typeof","v","typeOf","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Fragment","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","isValidElementType","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","_interopRequireDefault","__esModule","default","io","_inheritsLoose2","_assertThisInitialized2","_objectWithoutPropertiesLoose2","_extends2","_react","_propTypes","convertProps","convertedProps","resolutions","fixed","sizes","fluid","imageCache","inImageCache","src","listeners","WeakMap","listenToIntersections","el","observer","IntersectionObserver","entries","entry","has","isIntersecting","intersectionRatio","unobserve","delete","rootMargin","observe","set","noscriptImg","srcSetWebp","srcSet","title","alt","width","height","crossOrigin","Img","forwardRef","onLoad","onError","otherProps","position","objectFit","objectPosition","object","Image","_React$Component","isVisible","IOSupported","fadeIn","seenBefore","critical","hasNoScript","state","imgLoaded","imgCached","imageRef","createRef","handleImageLoaded","handleRef","_proto","componentDidMount","onStartLoad","wasCached","img","complete","componentWillUnmount","cleanUpListeners","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","image","JSON","stringify","paddingBottom","aspectRatio","base64","tracedSVG","dangerouslySetInnerHTML","__html","_image","divStyle","display","fixedObject","shape","isRequired","srcWebp","fluidObject","_default"],"mappings":"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","file":"10-a195d325e8bf1986491d.js","sourcesContent":["import React from 'react';\nimport { addEventListener } from 'consolidated-events';\nimport PropTypes from 'prop-types';\nimport { isForwardRef } from 'react-is';\n\n/**\n * Attempts to parse the offset provided as a prop as a percentage. For\n * instance, if the component has been provided with the string \"20%\" as\n * a value of one of the offset props. If the value matches, then it returns\n * a numeric version of the prop. For instance, \"20%\" would become `0.2`.\n * If `str` isn't a percentage, then `undefined` will be returned.\n *\n * @param {string} str The value of an offset prop to be converted to a\n * number.\n * @return {number|undefined} The numeric version of `str`. Undefined if `str`\n * was not a percentage.\n */\nfunction parseOffsetAsPercentage(str) {\n if (str.slice(-1) === '%') {\n return parseFloat(str.slice(0, -1)) / 100;\n }\n}\n\n/**\n * Attempts to parse the offset provided as a prop as a pixel value. If\n * parsing fails, then `undefined` is returned. Three examples of values that\n * will be successfully parsed are:\n * `20`\n * \"20px\"\n * \"20\"\n *\n * @param {string|number} str A string of the form \"{number}\" or \"{number}px\",\n * or just a number.\n * @return {number|undefined} The numeric version of `str`. Undefined if `str`\n * was neither a number nor string ending in \"px\".\n */\nfunction parseOffsetAsPixels(str) {\n if (!isNaN(parseFloat(str)) && isFinite(str)) {\n return parseFloat(str);\n } else if (str.slice(-2) === 'px') {\n return parseFloat(str.slice(0, -2));\n }\n}\n\n/**\n * @param {string|number} offset\n * @param {number} contextHeight\n * @return {number} A number representing `offset` converted into pixels.\n */\nfunction computeOffsetPixels(offset, contextHeight) {\n var pixelOffset = parseOffsetAsPixels(offset);\n\n if (typeof pixelOffset === 'number') {\n return pixelOffset;\n }\n\n var percentOffset = parseOffsetAsPercentage(offset);\n if (typeof percentOffset === 'number') {\n return percentOffset * contextHeight;\n }\n}\n\nvar constants = {\n above: 'above',\n inside: 'inside',\n below: 'below',\n invisible: 'invisible'\n};\n\nfunction debugLog() {\n if (process.env.NODE_ENV !== 'production') {\n console.log(arguments); // eslint-disable-line no-console\n }\n}\n\nvar errorMessage = '<Waypoint> expected to receive a single React element child.\\n\\n' + 'See https://goo.gl/LrBNgw for more info.';\n\n/**\n * Raise an error if more that one child was provided to \"children\"\n *\n * @param {?React.element} children\n * @return {undefined}\n */\nfunction ensureChildrenIsValid(children) {\n if (children) {\n try {\n React.Children.only(children);\n } catch (e) {\n throw new Error(errorMessage);\n }\n }\n}\n\n/**\n * When an element's type is a string, it represents a DOM node with that tag name\n * https://facebook.github.io/react/blog/2015/12/18/react-components-elements-and-instances.html#dom-elements\n *\n * @param {React.element} Component\n * @return {bool} Whether the component is a DOM Element\n */\nfunction isDOMElement(Component) {\n return typeof Component.type === 'string';\n}\n\nvar errorMessage$1 = '<Waypoint> needs a DOM element to compute boundaries. The child you passed is neither a ' + 'DOM element (e.g. <div>) nor does it use the innerRef prop.\\n\\n' + 'See https://goo.gl/LrBNgw for more info.';\n\n/**\n * Raise an error if \"children\" is not a DOM Element and there is no ref provided to Waypoint\n *\n * @param {?React.element} children\n * @param {?HTMLElement} ref\n * @return {undefined}\n */\nfunction ensureRefIsProvidedByChild(children, ref) {\n if (children && !isDOMElement(children) && !ref) {\n throw new Error(errorMessage$1);\n }\n}\n\n/**\n * @param {object} bounds An object with bounds data for the waypoint and\n * scrollable parent\n * @return {string} The current position of the waypoint in relation to the\n * visible portion of the scrollable parent. One of `constants.above`,\n * `constants.below`, or `constants.inside`.\n */\nfunction getCurrentPosition(bounds) {\n if (bounds.viewportBottom - bounds.viewportTop === 0) {\n return constants.invisible;\n }\n\n // top is within the viewport\n if (bounds.viewportTop <= bounds.waypointTop && bounds.waypointTop <= bounds.viewportBottom) {\n return constants.inside;\n }\n\n // bottom is within the viewport\n if (bounds.viewportTop <= bounds.waypointBottom && bounds.waypointBottom <= bounds.viewportBottom) {\n return constants.inside;\n }\n\n // top is above the viewport and bottom is below the viewport\n if (bounds.waypointTop <= bounds.viewportTop && bounds.viewportBottom <= bounds.waypointBottom) {\n return constants.inside;\n }\n\n if (bounds.viewportBottom < bounds.waypointTop) {\n return constants.below;\n }\n\n if (bounds.waypointTop < bounds.viewportTop) {\n return constants.above;\n }\n\n return constants.invisible;\n}\n\nvar timeout = void 0;\nvar timeoutQueue = [];\n\nfunction onNextTick(cb) {\n timeoutQueue.push(cb);\n\n if (!timeout) {\n timeout = setTimeout(function () {\n timeout = null;\n\n // Drain the timeoutQueue\n var item = void 0;\n // eslint-disable-next-line no-cond-assign\n while (item = timeoutQueue.shift()) {\n item();\n }\n }, 0);\n }\n\n var isSubscribed = true;\n\n return function () {\n function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n isSubscribed = false;\n\n var index = timeoutQueue.indexOf(cb);\n if (index === -1) {\n return;\n }\n\n timeoutQueue.splice(index, 1);\n\n if (!timeoutQueue.length && timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n }\n\n return unsubscribe;\n }();\n}\n\nfunction resolveScrollableAncestorProp(scrollableAncestor) {\n // When Waypoint is rendered on the server, `window` is not available.\n // To make Waypoint easier to work with, we allow this to be specified in\n // string form and safely convert to `window` here.\n if (scrollableAncestor === 'window') {\n return global.window;\n }\n\n return scrollableAncestor;\n}\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar defaultProps = {\n topOffset: '0px',\n bottomOffset: '0px',\n horizontal: false,\n onEnter: function () {\n function onEnter() {}\n\n return onEnter;\n }(),\n onLeave: function () {\n function onLeave() {}\n\n return onLeave;\n }(),\n onPositionChange: function () {\n function onPositionChange() {}\n\n return onPositionChange;\n }(),\n\n fireOnRapidScroll: true\n};\n\n// React.PureComponent was added in React 15.3.0\nvar BaseClass = typeof React.PureComponent !== 'undefined' ? React.PureComponent : React.Component;\n\n// Calls a function when you scroll to the element.\n\nvar Waypoint = function (_BaseClass) {\n _inherits(Waypoint, _BaseClass);\n\n function Waypoint(props) {\n _classCallCheck(this, Waypoint);\n\n var _this = _possibleConstructorReturn(this, (Waypoint.__proto__ || Object.getPrototypeOf(Waypoint)).call(this, props));\n\n _this.refElement = function (e) {\n return _this._ref = e;\n };\n return _this;\n }\n\n _createClass(Waypoint, [{\n key: 'componentWillMount',\n value: function () {\n function componentWillMount() {\n ensureChildrenIsValid(this.props.children);\n }\n\n return componentWillMount;\n }()\n }, {\n key: 'componentDidMount',\n value: function () {\n function componentDidMount() {\n var _this2 = this;\n\n if (!Waypoint.getWindow()) {\n return;\n }\n\n // this._ref may occasionally not be set at this time. To help ensure that\n // this works smoothly and to avoid layout thrashing, we want to delay the\n // initial execution until the next tick.\n this.cancelOnNextTick = onNextTick(function () {\n _this2.cancelOnNextTick = null;\n\n // Berofe doing anything, we want to check that this._ref is avaliable in Waypoint\n ensureRefIsProvidedByChild(_this2.props.children, _this2._ref);\n\n _this2._handleScroll = _this2._handleScroll.bind(_this2);\n _this2.scrollableAncestor = _this2._findScrollableAncestor();\n\n if (process.env.NODE_ENV !== 'production' && _this2.props.debug) {\n debugLog('scrollableAncestor', _this2.scrollableAncestor);\n }\n\n _this2.scrollEventListenerUnsubscribe = addEventListener(_this2.scrollableAncestor, 'scroll', _this2._handleScroll, { passive: true });\n\n _this2.resizeEventListenerUnsubscribe = addEventListener(window, 'resize', _this2._handleScroll, { passive: true });\n\n _this2._handleScroll(null);\n });\n }\n\n return componentDidMount;\n }()\n }, {\n key: 'componentWillReceiveProps',\n value: function () {\n function componentWillReceiveProps(newProps) {\n ensureChildrenIsValid(newProps.children);\n }\n\n return componentWillReceiveProps;\n }()\n }, {\n key: 'componentDidUpdate',\n value: function () {\n function componentDidUpdate() {\n var _this3 = this;\n\n if (!Waypoint.getWindow()) {\n return;\n }\n\n if (!this.scrollableAncestor) {\n // The Waypoint has not yet initialized.\n return;\n }\n\n // The element may have moved, so we need to recompute its position on the\n // page. This happens via handleScroll in a way that forces layout to be\n // computed.\n //\n // We want this to be deferred to avoid forcing layout during render, which\n // causes layout thrashing. And, if we already have this work enqueued, we\n // can just wait for that to happen instead of enqueueing again.\n if (this.cancelOnNextTick) {\n return;\n }\n\n this.cancelOnNextTick = onNextTick(function () {\n _this3.cancelOnNextTick = null;\n _this3._handleScroll(null);\n });\n }\n\n return componentDidUpdate;\n }()\n }, {\n key: 'componentWillUnmount',\n value: function () {\n function componentWillUnmount() {\n if (!Waypoint.getWindow()) {\n return;\n }\n\n if (this.scrollEventListenerUnsubscribe) {\n this.scrollEventListenerUnsubscribe();\n }\n if (this.resizeEventListenerUnsubscribe) {\n this.resizeEventListenerUnsubscribe();\n }\n\n if (this.cancelOnNextTick) {\n this.cancelOnNextTick();\n }\n }\n\n return componentWillUnmount;\n }()\n\n /**\n * Traverses up the DOM to find an ancestor container which has an overflow\n * style that allows for scrolling.\n *\n * @return {Object} the closest ancestor element with an overflow style that\n * allows for scrolling. If none is found, the `window` object is returned\n * as a fallback.\n */\n\n }, {\n key: '_findScrollableAncestor',\n value: function () {\n function _findScrollableAncestor() {\n var _props = this.props,\n horizontal = _props.horizontal,\n scrollableAncestor = _props.scrollableAncestor;\n\n\n if (scrollableAncestor) {\n return resolveScrollableAncestorProp(scrollableAncestor);\n }\n\n var node = this._ref;\n\n while (node.parentNode) {\n node = node.parentNode;\n\n if (node === document.body) {\n // We've reached all the way to the root node.\n return window;\n }\n\n var style = window.getComputedStyle(node);\n var overflowDirec = horizontal ? style.getPropertyValue('overflow-x') : style.getPropertyValue('overflow-y');\n var overflow = overflowDirec || style.getPropertyValue('overflow');\n\n if (overflow === 'auto' || overflow === 'scroll') {\n return node;\n }\n }\n\n // A scrollable ancestor element was not found, which means that we need to\n // do stuff on window.\n return window;\n }\n\n return _findScrollableAncestor;\n }()\n\n /**\n * @param {Object} event the native scroll event coming from the scrollable\n * ancestor, or resize event coming from the window. Will be undefined if\n * called by a React lifecyle method\n */\n\n }, {\n key: '_handleScroll',\n value: function () {\n function _handleScroll(event) {\n if (!this._ref) {\n // There's a chance we end up here after the component has been unmounted.\n return;\n }\n\n var bounds = this._getBounds();\n var currentPosition = getCurrentPosition(bounds);\n var previousPosition = this._previousPosition;\n\n if (process.env.NODE_ENV !== 'production' && this.props.debug) {\n debugLog('currentPosition', currentPosition);\n debugLog('previousPosition', previousPosition);\n }\n\n // Save previous position as early as possible to prevent cycles\n this._previousPosition = currentPosition;\n\n if (previousPosition === currentPosition) {\n // No change since last trigger\n return;\n }\n\n var callbackArg = {\n currentPosition: currentPosition,\n previousPosition: previousPosition,\n event: event,\n waypointTop: bounds.waypointTop,\n waypointBottom: bounds.waypointBottom,\n viewportTop: bounds.viewportTop,\n viewportBottom: bounds.viewportBottom\n };\n this.props.onPositionChange.call(this, callbackArg);\n\n if (currentPosition === constants.inside) {\n this.props.onEnter.call(this, callbackArg);\n } else if (previousPosition === constants.inside) {\n this.props.onLeave.call(this, callbackArg);\n }\n\n var isRapidScrollDown = previousPosition === constants.below && currentPosition === constants.above;\n var isRapidScrollUp = previousPosition === constants.above && currentPosition === constants.below;\n\n if (this.props.fireOnRapidScroll && (isRapidScrollDown || isRapidScrollUp)) {\n // If the scroll event isn't fired often enough to occur while the\n // waypoint was visible, we trigger both callbacks anyway.\n this.props.onEnter.call(this, {\n currentPosition: constants.inside,\n previousPosition: previousPosition,\n event: event,\n waypointTop: bounds.waypointTop,\n waypointBottom: bounds.waypointBottom,\n viewportTop: bounds.viewportTop,\n viewportBottom: bounds.viewportBottom\n });\n this.props.onLeave.call(this, {\n currentPosition: currentPosition,\n previousPosition: constants.inside,\n event: event,\n waypointTop: bounds.waypointTop,\n waypointBottom: bounds.waypointBottom,\n viewportTop: bounds.viewportTop,\n viewportBottom: bounds.viewportBottom\n });\n }\n }\n\n return _handleScroll;\n }()\n }, {\n key: '_getBounds',\n value: function () {\n function _getBounds() {\n var horizontal = this.props.horizontal;\n\n var _ref$getBoundingClien = this._ref.getBoundingClientRect(),\n left = _ref$getBoundingClien.left,\n top = _ref$getBoundingClien.top,\n right = _ref$getBoundingClien.right,\n bottom = _ref$getBoundingClien.bottom;\n\n var waypointTop = horizontal ? left : top;\n var waypointBottom = horizontal ? right : bottom;\n\n var contextHeight = void 0;\n var contextScrollTop = void 0;\n if (this.scrollableAncestor === window) {\n contextHeight = horizontal ? window.innerWidth : window.innerHeight;\n contextScrollTop = 0;\n } else {\n contextHeight = horizontal ? this.scrollableAncestor.offsetWidth : this.scrollableAncestor.offsetHeight;\n contextScrollTop = horizontal ? this.scrollableAncestor.getBoundingClientRect().left : this.scrollableAncestor.getBoundingClientRect().top;\n }\n\n if (process.env.NODE_ENV !== 'production' && this.props.debug) {\n debugLog('waypoint top', waypointTop);\n debugLog('waypoint bottom', waypointBottom);\n debugLog('scrollableAncestor height', contextHeight);\n debugLog('scrollableAncestor scrollTop', contextScrollTop);\n }\n\n var _props2 = this.props,\n bottomOffset = _props2.bottomOffset,\n topOffset = _props2.topOffset;\n\n var topOffsetPx = computeOffsetPixels(topOffset, contextHeight);\n var bottomOffsetPx = computeOffsetPixels(bottomOffset, contextHeight);\n var contextBottom = contextScrollTop + contextHeight;\n\n return {\n waypointTop: waypointTop,\n waypointBottom: waypointBottom,\n viewportTop: contextScrollTop + topOffsetPx,\n viewportBottom: contextBottom - bottomOffsetPx\n };\n }\n\n return _getBounds;\n }()\n\n /**\n * @return {Object}\n */\n\n }, {\n key: 'render',\n value: function () {\n function render() {\n var _this4 = this;\n\n var children = this.props.children;\n\n\n if (!children) {\n // We need an element that we can locate in the DOM to determine where it is\n // rendered relative to the top of its context.\n return React.createElement('span', { ref: this.refElement, style: { fontSize: 0 } });\n }\n\n if (isDOMElement(children) || isForwardRef(children.type)) {\n var ref = function () {\n function ref(node) {\n _this4.refElement(node);\n if (children.ref) {\n if (typeof children.ref === 'function') {\n children.ref(node);\n } else {\n children.ref.current = node;\n }\n }\n }\n\n return ref;\n }();\n\n return React.cloneElement(children, { ref: ref });\n }\n\n return React.cloneElement(children, { innerRef: this.refElement });\n }\n\n return render;\n }()\n }]);\n\n return Waypoint;\n}(BaseClass);\n\n\nWaypoint.propTypes = {\n children: PropTypes.node,\n debug: PropTypes.bool,\n onEnter: PropTypes.func,\n onLeave: PropTypes.func,\n onPositionChange: PropTypes.func,\n fireOnRapidScroll: PropTypes.bool,\n scrollableAncestor: PropTypes.any,\n horizontal: PropTypes.bool,\n\n // `topOffset` can either be a number, in which case its a distance from the\n // top of the container in pixels, or a string value. Valid string values are\n // of the form \"20px\", which is parsed as pixels, or \"20%\", which is parsed\n // as a percentage of the height of the containing element.\n // For instance, if you pass \"-20%\", and the containing element is 100px tall,\n // then the waypoint will be triggered when it has been scrolled 20px beyond\n // the top of the containing element.\n topOffset: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n // `bottomOffset` is like `topOffset`, but for the bottom of the container.\n bottomOffset: PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n};\n\nWaypoint.above = constants.above;\nWaypoint.below = constants.below;\nWaypoint.inside = constants.inside;\nWaypoint.invisible = constants.invisible;\nWaypoint.getWindow = function () {\n if (typeof window !== 'undefined') {\n return window;\n }\n};\nWaypoint.defaultProps = defaultProps;\nWaypoint.displayName = 'Waypoint';\n\nexport default Waypoint;\n","var CAN_USE_DOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\n// Adapted from Modernizr\n// https://github.com/Modernizr/Modernizr/blob/acb3f0d9/feature-detects/dom/passiveeventlisteners.js#L26-L37\nfunction testPassiveEventListeners() {\n if (!CAN_USE_DOM) {\n return false;\n }\n\n if (!window.addEventListener || !window.removeEventListener || !Object.defineProperty) {\n return false;\n }\n\n var supportsPassiveOption = false;\n try {\n var opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line getter-return\n get: function () {\n function get() {\n supportsPassiveOption = true;\n }\n\n return get;\n }()\n });\n var noop = function noop() {};\n window.addEventListener('testPassiveEventSupport', noop, opts);\n window.removeEventListener('testPassiveEventSupport', noop, opts);\n } catch (e) {\n // do nothing\n }\n\n return supportsPassiveOption;\n}\n\nvar memoized = void 0;\n\nfunction canUsePassiveEventListeners() {\n if (memoized === undefined) {\n memoized = testPassiveEventListeners();\n }\n return memoized;\n}\n\nfunction normalizeEventOptions(eventOptions) {\n if (!eventOptions) {\n return undefined;\n }\n\n if (!canUsePassiveEventListeners()) {\n // If the browser does not support the passive option, then it is expecting\n // a boolean for the options argument to specify whether it should use\n // capture or not. In more modern browsers, this is passed via the `capture`\n // option, so let's just hoist that value up.\n return !!eventOptions.capture;\n }\n\n return eventOptions;\n}\n\n/* eslint-disable no-bitwise */\n\n/**\n * Generate a unique key for any set of event options\n */\nfunction eventOptionsKey(normalizedEventOptions) {\n if (!normalizedEventOptions) {\n return 0;\n }\n\n // If the browser does not support passive event listeners, the normalized\n // event options will be a boolean.\n if (normalizedEventOptions === true) {\n return 100;\n }\n\n // At this point, the browser supports passive event listeners, so we expect\n // the event options to be an object with possible properties of capture,\n // passive, and once.\n //\n // We want to consistently return the same value, regardless of the order of\n // these properties, so let's use binary maths to assign each property to a\n // bit, and then add those together (with an offset to account for the\n // booleans at the beginning of this function).\n var capture = normalizedEventOptions.capture << 0;\n var passive = normalizedEventOptions.passive << 1;\n var once = normalizedEventOptions.once << 2;\n return capture + passive + once;\n}\n\nfunction ensureCanMutateNextEventHandlers(eventHandlers) {\n if (eventHandlers.handlers === eventHandlers.nextHandlers) {\n // eslint-disable-next-line no-param-reassign\n eventHandlers.nextHandlers = eventHandlers.handlers.slice();\n }\n}\n\nfunction TargetEventHandlers(target) {\n this.target = target;\n this.events = {};\n}\n\nTargetEventHandlers.prototype.getEventHandlers = function () {\n function getEventHandlers(eventName, options) {\n var key = String(eventName) + ' ' + String(eventOptionsKey(options));\n\n if (!this.events[key]) {\n this.events[key] = {\n handlers: [],\n handleEvent: undefined\n };\n this.events[key].nextHandlers = this.events[key].handlers;\n }\n\n return this.events[key];\n }\n\n return getEventHandlers;\n}();\n\nTargetEventHandlers.prototype.handleEvent = function () {\n function handleEvent(eventName, options, event) {\n var eventHandlers = this.getEventHandlers(eventName, options);\n eventHandlers.handlers = eventHandlers.nextHandlers;\n eventHandlers.handlers.forEach(function (handler) {\n if (handler) {\n // We need to check for presence here because a handler function may\n // cause later handlers to get removed. This can happen if you for\n // instance have a waypoint that unmounts another waypoint as part of an\n // onEnter/onLeave handler.\n handler(event);\n }\n });\n }\n\n return handleEvent;\n}();\n\nTargetEventHandlers.prototype.add = function () {\n function add(eventName, listener, options) {\n var _this = this;\n\n // options has already been normalized at this point.\n var eventHandlers = this.getEventHandlers(eventName, options);\n\n ensureCanMutateNextEventHandlers(eventHandlers);\n\n if (eventHandlers.nextHandlers.length === 0) {\n eventHandlers.handleEvent = this.handleEvent.bind(this, eventName, options);\n\n this.target.addEventListener(eventName, eventHandlers.handleEvent, options);\n }\n\n eventHandlers.nextHandlers.push(listener);\n\n var isSubscribed = true;\n var unsubscribe = function () {\n function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n isSubscribed = false;\n\n ensureCanMutateNextEventHandlers(eventHandlers);\n var index = eventHandlers.nextHandlers.indexOf(listener);\n eventHandlers.nextHandlers.splice(index, 1);\n\n if (eventHandlers.nextHandlers.length === 0) {\n // All event handlers have been removed, so we want to remove the event\n // listener from the target node.\n\n if (_this.target) {\n // There can be a race condition where the target may no longer exist\n // when this function is called, e.g. when a React component is\n // unmounting. Guarding against this prevents the following error:\n //\n // Cannot read property 'removeEventListener' of undefined\n _this.target.removeEventListener(eventName, eventHandlers.handleEvent, options);\n }\n\n eventHandlers.handleEvent = undefined;\n }\n }\n\n return unsubscribe;\n }();\n return unsubscribe;\n }\n\n return add;\n}();\n\nvar EVENT_HANDLERS_KEY = '__consolidated_events_handlers__';\n\n// eslint-disable-next-line import/prefer-default-export\nfunction addEventListener(target, eventName, listener, options) {\n if (!target[EVENT_HANDLERS_KEY]) {\n // eslint-disable-next-line no-param-reassign\n target[EVENT_HANDLERS_KEY] = new TargetEventHandlers(target);\n }\n var normalizedEventOptions = normalizeEventOptions(options);\n return target[EVENT_HANDLERS_KEY].add(eventName, listener, normalizedEventOptions);\n}\n\nexport { addEventListener };\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/** @license React v16.8.6\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';Object.defineProperty(exports,\"__esModule\",{value:!0});\nvar b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?Symbol.for(\"react.memo\"):\n60115,r=b?Symbol.for(\"react.lazy\"):60116;function t(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case h:return a;default:return u}}case r:case q:case d:return u}}}function v(a){return t(a)===m}exports.typeOf=t;exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;\nexports.Fragment=e;exports.Lazy=r;exports.Memo=q;exports.Portal=d;exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||\"object\"===typeof a&&null!==a&&(a.$$typeof===r||a.$$typeof===q||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n)};exports.isAsyncMode=function(a){return v(a)||t(a)===l};exports.isConcurrentMode=v;exports.isContextConsumer=function(a){return t(a)===k};\nexports.isContextProvider=function(a){return t(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return t(a)===n};exports.isFragment=function(a){return t(a)===e};exports.isLazy=function(a){return t(a)===r};exports.isMemo=function(a){return t(a)===q};exports.isPortal=function(a){return t(a)===d};exports.isProfiler=function(a){return t(a)===g};exports.isStrictMode=function(a){return t(a)===f};\nexports.isSuspense=function(a){return t(a)===p};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\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\n// Handle legacy names for image queries.\nvar convertProps = function convertProps(props) {\n var convertedProps = (0, _extends2.default)({}, props);\n\n if (convertedProps.resolutions) {\n convertedProps.fixed = convertedProps.resolutions;\n delete convertedProps.resolutions;\n }\n\n if (convertedProps.sizes) {\n convertedProps.fluid = convertedProps.sizes;\n delete convertedProps.sizes;\n }\n\n return convertedProps;\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 = convertedProps.fluid ? convertedProps.fluid.src : convertedProps.fixed.src;\n return imageCache[src] || false;\n};\n\nvar activateCacheForImage = function activateCacheForImage(props) {\n var convertedProps = convertProps(props); // Find src\n\n var src = convertedProps.fluid ? convertedProps.fluid.src : convertedProps.fixed.src;\n imageCache[src] = true;\n};\n\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\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 srcSetWebp = props.srcSetWebp ? \"<source type='image/webp' srcset=\\\"\" + props.srcSetWebp + \"\\\" \" + 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 return \"<picture>\" + srcSetWebp + \"<img \" + width + height + sizes + srcSet + src + alt + title + crossOrigin + \"style=\\\"position:absolute;top:0;left:0;opacity:1;width:100%;height:100%;object-fit:cover;object-position:center\\\"/></picture>\";\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 otherProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"sizes\", \"srcSet\", \"src\", \"style\", \"onLoad\", \"onError\"]);\n return _react.default.createElement(\"img\", (0, _extends2.default)({\n sizes: sizes,\n srcSet: srcSet,\n src: src\n }, otherProps, {\n onLoad: onLoad,\n onError: onError,\n ref: ref,\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; // default settings for browser without Intersection Observer available\n\n var isVisible = true;\n var imgLoaded = false;\n var imgCached = false;\n var IOSupported = false;\n var fadeIn = props.fadeIn; // 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 var seenBefore = inImageCache(props); // browser with Intersection Observer available\n\n if (!seenBefore && typeof window !== \"undefined\" && window.IntersectionObserver) {\n isVisible = false;\n IOSupported = true;\n } // Never render image during SSR\n\n\n if (typeof window === \"undefined\") {\n isVisible = false;\n } // Force render for critical images\n\n\n if (props.critical) {\n isVisible = true;\n IOSupported = false;\n }\n\n var hasNoScript = !(props.critical && !props.fadeIn);\n _this.state = {\n isVisible: isVisible,\n imgLoaded: imgLoaded,\n imgCached: imgCached,\n IOSupported: IOSupported,\n fadeIn: fadeIn,\n hasNoScript: hasNoScript,\n seenBefore: seenBefore\n };\n _this.imageRef = _react.default.createRef();\n _this.handleImageLoaded = _this.handleImageLoaded.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)((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.props.critical) {\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 };\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.state.IOSupported && 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 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.state.seenBefore) {\n this.setState({\n fadeIn: false\n });\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\n var shouldReveal = this.state.imgLoaded || this.state.fadeIn === false;\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 };\n\n if (fluid) {\n var image = 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 style: {\n width: \"100%\",\n paddingBottom: 100 / image.aspectRatio + \"%\"\n }\n }), bgColor && _react.default.createElement(Tag, {\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(Img, (0, _extends2.default)({\n src: image.base64\n }, placeholderImageProps)), image.tracedSVG && _react.default.createElement(Img, (0, _extends2.default)({\n src: image.tracedSVG\n }, placeholderImageProps)), this.state.isVisible && _react.default.createElement(\"picture\", null, image.srcSetWebp && _react.default.createElement(\"source\", {\n type: \"image/webp\",\n srcSet: image.srcSetWebp,\n sizes: image.sizes\n }), _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 })), this.state.hasNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title\n }, image))\n }\n }));\n }\n\n if (fixed) {\n var _image = fixed;\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 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(Img, (0, _extends2.default)({\n src: _image.base64\n }, placeholderImageProps)), _image.tracedSVG && _react.default.createElement(Img, (0, _extends2.default)({\n src: _image.tracedSVG\n }, placeholderImageProps)), this.state.isVisible && _react.default.createElement(\"picture\", null, _image.srcSetWebp && _react.default.createElement(\"source\", {\n type: \"image/webp\",\n srcSet: _image.srcSetWebp,\n sizes: _image.sizes\n }), _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 })), this.state.hasNoScript && _react.default.createElement(\"noscript\", {\n dangerouslySetInnerHTML: {\n __html: noscriptImg((0, _extends2.default)({\n alt: alt,\n title: title\n }, _image))\n }\n }));\n }\n\n return null;\n };\n\n return Image;\n}(_react.default.Component);\n\nImage.defaultProps = {\n critical: false,\n fadeIn: true,\n durationFadeIn: 500,\n alt: \"\",\n Tag: \"div\"\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});\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});\n\nImage.propTypes = {\n resolutions: fixedObject,\n sizes: fluidObject,\n fixed: fixedObject,\n fluid: 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};\nvar _default = Image;\nexports.default = _default;"],"sourceRoot":""}