{"version":3,"sources":["webpack:///./node_modules/core-js/internals/to-positive-integer.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/gatsby-background-image/index.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/uuid/lib/rng-browser.js","webpack:///./node_modules/@babel/runtime/helpers/toPrimitive.js","webpack:///./node_modules/core-js/internals/array-buffer-view-core.js","webpack:///./node_modules/core-js/internals/define-built-in-accessor.js","webpack:///./node_modules/gatsby-image/index.js","webpack:///./node_modules/gatsby-background-image/ImageUtils.js","webpack:///./node_modules/core-js/internals/to-offset.js","webpack:///./src/components/PreviewCompatibleImage.js","webpack:///./node_modules/uuid/lib/bytesToUuid.js","webpack:///./node_modules/any-base/index.js","webpack:///./node_modules/html-attributes/lib/html-attributes.js","webpack:///./node_modules/core-js/modules/es.typed-array.sort.js","webpack:///./src/components/Content.js","webpack:///./node_modules/gatsby-background-image/IntersectionObserverUtils.js","webpack:///./node_modules/gatsby-background-image/BackgroundUtils.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/modules/es.typed-array.set.js","webpack:///./node_modules/core-js/internals/function-uncurry-this-clause.js","webpack:///./node_modules/filter-invalid-dom-props/dist/index.js","webpack:///./node_modules/core-js/internals/array-buffer-basic-detection.js","webpack:///./node_modules/any-base/src/converter.js","webpack:///./node_modules/core-js/internals/function-uncurry-this-accessor.js","webpack:///./node_modules/gatsby-background-image/HelperUtils.js","webpack:///./node_modules/short-uuid/index.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/gatsby-background-image/StyleUtils.js","webpack:///./node_modules/@babel/runtime/helpers/toPropertyKey.js","webpack:///./node_modules/uuid/v4.js"],"names":["toIntegerOrInfinity","$RangeError","RangeError","module","exports","it","result","uncurryThisAccessor","anObject","aPossiblePrototype","Object","setPrototypeOf","setter","CORRECT_SETTER","test","prototype","Array","error","O","proto","__proto__","undefined","_interopRequireDefault","require","__esModule","_objectWithoutPropertiesLoose2","_extends2","_assertThisInitialized2","_inheritsLoose2","_defineProperty2","_react","_propTypes","_BackgroundUtils","_HelperUtils","_ImageUtils","_StyleUtils","_IntersectionObserverUtils","BackgroundImage","_React$Component","props","_this","call","this","imageInCache","inImageCache","state","isVisible","onStartLoad","wasCached","imageRef","activatePictureRef","selfRef","setState","imageState","imgLoaded","imgCached","currentSrc","IOSupported","fadeIn","seenBefore","window","IntersectionObserver","critical","hasNoScript","_fixClassName","fixClassName","currentClassNames","addedClassName","backgroundStyles","presetBackgroundStyles","className","handleImageLoaded","bind","handleRef","createPictureRef","bgImage","initialBgImage","_proto","componentDidMount","imageReferenceCompleted","_fixClassName2","componentDidUpdate","prevProps","_this2","imagePropsChanged","_fixClassName3","getCurrentFromData","data","propName","returnArray","componentWillUnmount","isArray","forEach","currentImageRef","onload","cleanUpListeners","ref","listenToIntersections","intersectionListener","rootMargin","activateCacheForImage","onLoad","render","image","noScriptImageData","_fixOpacity","fixOpacity","convertProps","preserveStackingContext","_fixOpacity$style","style","fluid","fixed","backgroundColor","durationFadeIn","Tag","children","_fixOpacity$classId","classId","Math","random","toString","replace","substr","remainingProps","stripRemainingProps","bgColor","shouldFadeIn","transitionDelay","divStyle","position","opacity","width","height","display","newImageSettings","switchImageSettings","nextImageArray","nextImage","pseudoStyles","createPseudoStyles","noScriptPseudoStyles","createNoScriptStyles","componentKey","JSON","stringify","srcSet","createElement","key","dangerouslySetInnerHTML","__html","Component","defaultProps","fixedObject","shape","number","isRequired","src","string","base64","tracedSVG","srcWebp","srcSetWebp","media","fluidObject","aspectRatio","sizes","propTypes","resolutions","oneOfType","arrayOf","bool","object","crossOrigin","array","func","onError","_default","hasOwn","isCallable","toObject","sharedKey","CORRECT_PROTOTYPE_GETTER","IE_PROTO","$Object","ObjectPrototype","getPrototypeOf","constructor","fails","F","getRandomValues","crypto","msCrypto","rnds8","Uint8Array","rnds","r","i","_typeof","input","hint","prim","Symbol","toPrimitive","res","TypeError","String","Number","NAME","Constructor","Prototype","NATIVE_ARRAY_BUFFER","DESCRIPTORS","global","isObject","classof","tryToString","createNonEnumerableProperty","defineBuiltIn","defineBuiltInAccessor","isPrototypeOf","wellKnownSymbol","uid","InternalStateModule","enforceInternalState","enforce","getInternalState","get","Int8Array","Int8ArrayPrototype","Uint8ClampedArray","Uint8ClampedArrayPrototype","TypedArray","TypedArrayPrototype","TO_STRING_TAG","TYPED_ARRAY_TAG","NATIVE_ARRAY_BUFFER_VIEWS","opera","TYPED_ARRAY_TAG_REQUIRED","TypedArrayConstructorsList","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigIntArrayConstructorsList","BigInt64Array","BigUint64Array","getTypedArrayConstructor","isTypedArray","klass","Function","configurable","aTypedArray","aTypedArrayConstructor","C","exportTypedArrayMethod","KEY","property","forced","options","ARRAY","TypedArrayConstructor","error2","exportTypedArrayStaticMethod","isView","makeBuiltIn","defineProperty","target","name","descriptor","getter","set","f","default","io","_excluded","convertedProps","loading","groupByMedia","concat","matchesMedia","_ref","isBrowser","matchMedia","matches","getImageCacheKey","_ref2","srcData","getCurrentSrcData","currentData","some","hasArtDirectionSupport","foundMedia","findIndex","noMedia","imageCache","create","cacheKey","hasNativeLazyLoadSupport","HTMLImageElement","hasIOSupport","listeners","WeakMap","generateImageSources","imageVariants","map","_ref3","Fragment","type","withMedia","without","variant","push","generateTracedSVGSources","_ref4","generateBase64Sources","_ref5","generateNoscriptSource","_ref6","isWebp","el","cb","observer","entries","entry","has","isIntersecting","intersectionRatio","unobserve","delete","observe","noscriptImg","title","alt","draggable","join","Placeholder","forwardRef","generateSources","spreadProps","ariaHidden","baseImage","Img","length","otherProps","top","left","objectFit","objectPosition","Image","isCritical","addNoScript","useIOSupport","isHydrated","createRef","placeholderRef","img","current","complete","_convertProps","_convertProps$style","_convertProps$imgStyl","imgStyle","_convertProps$placeho","placeholderStyle","placeholderClassName","itemProp","shouldReveal","imageStyle","transition","delayHideStyle","imagePlaceholderStyle","placeholderImageProps","overflow","maxWidth","maxHeight","paddingBottom","bottom","right","requireFixedOrFluid","originalPropTypes","componentName","_PropTypes$checkPropT","Error","checkPropTypes","oneOf","imageLoaded","createDummyImageArray","imageArrayPropsChanged","getUrlString","activateMultiplePictureRefs","createMultiplePictureRefs","hasPictureElement","resetImageCache","activateCacheForMultipleImages","allInImageCache","hasImageArray","every","imageData","prop","HTMLPictureElement","addEventListener","pic","document","offsetWidth","offsetHeight","sourcesWebP","srcset","appendChild","imageRefs","index","currentSources","lastImage","filteredJoin","finalImage","combineArray","addUrl","dummyArray","afterOpacity","checkLoaded","_ref2$addUrl","_ref2$returnArray","_ref2$checkLoaded","imageString","dataElement","isString","_ref3$tracedSVG","_ref3$addUrl","_ref3$returnArray","_ref3$hasImageUrls","hasImageUrls","stringArray","currentString","indexOf","imageUrl","currentReturnString","returnString","isPropsFluidArray","isPrevPropsFluidArray","isPropsFixedArray","isPrevPropsFixedArray","withDummies","initialImage","dummyImageURI","fill","singleImageRef","naturalWidth","naturalHeight","toPositiveInteger","BYTES","offset","useStyles","createUseStyles","PreviewCompatibleImage","imageInfo","classes","_imageInfo$alt","childImageSharp","React","backgroundImage","byteToHex","buf","bth","Converter","anyBase","srcAlphabet","dstAlphabet","converter","convert","BIN","OCT","DEC","HEX","uncurryThis","aCallable","internalSort","ArrayBufferViewCore","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","sort","ACCEPT_INCORRECT_ARGUMENTS","STABLE_SORT","mod","expected","a","b","comparefn","x","y","getSortCompare","theme","content","color","palette","appearance","border","borderColor","borderRadius","radius1","padding","spacing","textDecoration","whiteSpace","fontSize","paddingLeft","paddingRight","marginBottom","marginTop","HTMLContent","Content","getIO","callbackIO","callback","element","getBackgroundStylesForSingleClass","getStyleRules","rulesForCssText","getStyle","styleSheets","rules","cssRules","e","foundClass","slice","reduce","foundAcc","styleRule","selectorText","resultingStyleText","cssText","styleContent","doc","implementation","createHTMLDocument","styleElement","textContent","body","sheet","cssStyleRules","styles","values","toCamelCase","console","keys","filter","newData","stringToArray","classObjects","item","assign","apply","$String","$TypeError","argument","lengthOfArrayLike","toOffset","toIndexedObject","$set","WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS","0","TO_OBJECT_BUG","arrayLike","arguments","len","classofRaw","fn","value","domProps","hasOwnProperty","isValidDOMProp","obj","_htmlAttributes","_htmlAttributes2","eventProps","onCopy","onCut","onPaste","onWheel","onScroll","onCompositionEnd","onCompositionStart","onCompositionUpdate","onKeyDown","onKeyPress","onKeyUp","onFocus","onBlur","onChange","onInput","onSubmit","onClick","onContextMenu","onDoubleClick","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onSelect","onTouchCancel","onTouchEnd","onTouchMove","onTouchStart","onAnimationStart","onAnimationEnd","onAnimationIteration","onTransitionEnd","ArrayBuffer","DataView","divide","newlen","numberMap","fromBase","toBase","isValid","parseInt","method","getOwnPropertyDescriptor","hashString","toKebabCase","_filterInvalidDomProps","str","toLowerCase","letter","toUpperCase","match","delimiter","includes","split","hash","charCodeAt","arrayToJoin","fromArray","toArray","toFlickr","uuidV4","flickrBase58","shortenUUID","longId","translator","MakeConvertor","toAlphabet","useAlphabet","fromHex","toHex","generate","new","uuid","fromUUID","toUUID","shortUuid","shortId","m","uu1","leftPad","enlargeUUID","alphabet","constants","cookieBase90","toPropertyKey","enumerable","writable","setTransitionStyles","kebabifyBackgroundStyles","escapeClassNames","createPseudoElement","resetComponentClassCache","activateCacheForComponentClass","inComponentClassCache","_shortUuid","componentClassCache","appendix","escapedClassName","pseudoClasses","_ref$addedClassName","elementExists","additionalClassname","randomClass","additionalClass","componentClassNames","trim","classNames","specialChars","_gbiSpecialChars","__GBI_SPECIAL_CHARS__","specialCharRegEx","RegExp","resultingStyles","styledProps","isNaN","backgroundPosition","backgroundRepeat","backgroundSize","pseudoBefore","pseudoAfter","allSources","sourcesAsUrl","sourcesAsUrlWithCSS","cssStrings","arg","rng","bytesToUuid","ii"],"mappings":"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","file":"27e69fe9ec4d168d5e591522830ba497174c1c85-8320f2750606820d6e3a.js","sourcesContent":["var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar $RangeError = RangeError;\n\nmodule.exports = function (it) {\n var result = toIntegerOrInfinity(it);\n if (result < 0) throw $RangeError(\"The argument can't be less than 0\");\n return result;\n};\n","/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _BackgroundUtils = _interopRequireDefault(require(\"./BackgroundUtils\"));\n\nvar _HelperUtils = require(\"./HelperUtils\");\n\nvar _ImageUtils = require(\"./ImageUtils\");\n\nvar _StyleUtils = require(\"./StyleUtils\");\n\nvar _IntersectionObserverUtils = require(\"./IntersectionObserverUtils\");\n\nvar BackgroundImage =\n/*#__PURE__*/\nfunction (_React$Component) {\n (0, _inheritsLoose2[\"default\"])(BackgroundImage, _React$Component);\n\n // IntersectionObserver listeners (if available).\n function BackgroundImage(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // Default settings for browser without Intersection Observer available.\n\n (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"cleanUpListeners\", void 0);\n (0, _defineProperty2[\"default\"])((0, _assertThisInitialized2[\"default\"])(_this), \"intersectionListener\", function () {\n var imageInCache = (0, _ImageUtils.inImageCache)(_this.props);\n\n if (!_this.state.isVisible && typeof _this.props.onStartLoad === \"function\") {\n _this.props.onStartLoad({\n wasCached: imageInCache\n });\n } // imgCached and imgLoaded must update after the image is activated and\n // isVisible is true. Once it is, imageRef becomes \"accessible\" for imgCached.\n // imgLoaded and imgCached are in a 2nd setState call to be changed together,\n // avoiding initiating unnecessary animation frames from style changes when\n // setting next imageState.\n\n\n _this.imageRef = (0, _ImageUtils.activatePictureRef)(_this.imageRef, _this.props, _this.selfRef);\n\n _this.setState(function (state) {\n return {\n isVisible: true,\n imageState: state.imageState + 1\n };\n }, function () {\n _this.setState(function (state) {\n return {\n imgLoaded: imageInCache,\n imgCached: !!_this.imageRef.currentSrc,\n imageState: state.imageState + 1\n };\n });\n });\n });\n var isVisible = true;\n var imgLoaded = 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 = (0, _ImageUtils.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 } // Check if a noscript element should be included.\n\n\n var hasNoScript = !(props.critical && !fadeIn); // Set initial image state for transitioning.\n\n var imageState = 0; // Fixed class Name & added one (needed for multiple instances).\n\n var _fixClassName = (0, _StyleUtils.fixClassName)(props),\n currentClassNames = _fixClassName[0],\n addedClassName = _fixClassName[1];\n\n _this.state = {\n isVisible: isVisible,\n imgLoaded: imgLoaded,\n IOSupported: IOSupported,\n fadeIn: fadeIn,\n hasNoScript: hasNoScript,\n seenBefore: seenBefore,\n imageState: imageState,\n currentClassNames: currentClassNames,\n addedClassName: addedClassName\n }; // Preset backgroundStyles (e.g. during SSR or gatsby build).\n\n _this.backgroundStyles = (0, _StyleUtils.presetBackgroundStyles)((0, _BackgroundUtils[\"default\"])(props.className)); // Bind handlers to class.\n\n _this.handleImageLoaded = _this.handleImageLoaded.bind((0, _assertThisInitialized2[\"default\"])(_this));\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2[\"default\"])(_this)); // Create reference(s) to an Image loaded via picture element in background.\n\n _this.imageRef = (0, _ImageUtils.createPictureRef)((0, _extends2[\"default\"])({}, props, {\n isVisible: isVisible\n }), _this.handleImageLoaded); // Start with base64, tracedSVG or empty background image(s).\n\n _this.bgImage = (0, _ImageUtils.initialBgImage)(props);\n _this.selfRef = null; // console.log(`-------------------------------------------------------------`)\n\n return _this;\n }\n\n var _proto = BackgroundImage.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n // Update background(-*) styles from CSS (e.g. Styled Components).\n this.backgroundStyles = (0, _StyleUtils.presetBackgroundStyles)((0, _BackgroundUtils[\"default\"])(this.props.className));\n\n if (this.state.isVisible && typeof this.props.onStartLoad === \"function\") {\n this.props.onStartLoad({\n wasCached: (0, _ImageUtils.inImageCache)(this.props)\n });\n }\n\n if (this.props.critical) {\n if ((0, _ImageUtils.imageReferenceCompleted)(this.imageRef)) {\n this.handleImageLoaded();\n }\n }\n\n var _fixClassName2 = (0, _StyleUtils.fixClassName)(this.props),\n currentClassNames = _fixClassName2[0],\n addedClassName = _fixClassName2[1];\n\n this.setState({\n currentClassNames: currentClassNames,\n addedClassName: addedClassName\n });\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this2 = this;\n\n // Check if we received a changed fluid / fixed image.\n if ((0, _ImageUtils.imagePropsChanged)(this.props, prevProps)) {\n var imageInCache = (0, _ImageUtils.inImageCache)(this.props);\n\n var _fixClassName3 = (0, _StyleUtils.fixClassName)(this.props),\n currentClassNames = _fixClassName3[0],\n addedClassName = _fixClassName3[1];\n\n this.setState({\n isVisible: imageInCache || this.props.critical,\n imgLoaded: imageInCache,\n currentClassNames: currentClassNames,\n addedClassName: addedClassName // this.state.currentClassNames ||\n // fixClassName(this.props.className, this.randomClass),\n // imageState: (this.state.imageState + 1) % 2,\n\n }, function () {\n // Update bgImage & create new imageRef(s).\n _this2.bgImage = (0, _ImageUtils.getCurrentFromData)({\n data: _this2.imageRef,\n propName: \"currentSrc\",\n returnArray: true\n }) || (0, _ImageUtils.getCurrentFromData)({\n data: _this2.imageRef,\n propName: \"src\",\n returnArray: true\n });\n _this2.imageRef = (0, _ImageUtils.createPictureRef)((0, _extends2[\"default\"])({}, _this2.props, {\n isVisible: _this2.state.isVisible\n }), _this2.handleImageLoaded);\n });\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n // Prevent calling handleImageLoaded from the imageRef(s) after unmount.\n if (this.imageRef) {\n if (Array.isArray(this.imageRef)) {\n this.imageRef.forEach(function (currentImageRef) {\n return currentImageRef.onload = null;\n });\n } else {\n this.imageRef.onload = null;\n }\n } // Clean up all IntersectionObserver listeners.\n\n\n if (this.cleanUpListeners) {\n this.cleanUpListeners();\n }\n };\n\n _proto.handleRef = function handleRef(ref) {\n this.selfRef = ref;\n\n if (this.state.IOSupported && ref) {\n this.cleanUpListeners = (0, _IntersectionObserverUtils.listenToIntersections)(ref, this.intersectionListener, this.props.rootMargin);\n }\n };\n\n _proto.handleImageLoaded = function handleImageLoaded() {\n (0, _ImageUtils.activateCacheForImage)(this.props);\n this.setState(function (state) {\n return {\n imgLoaded: true,\n imageState: state.imageState + 1\n };\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 _fixOpacity = (0, _StyleUtils.fixOpacity)((0, _HelperUtils.convertProps)(this.props), this.props.preserveStackingContext),\n className = _fixOpacity.className,\n _fixOpacity$style = _fixOpacity.style,\n style = _fixOpacity$style === void 0 ? {} : _fixOpacity$style,\n fluid = _fixOpacity.fluid,\n fixed = _fixOpacity.fixed,\n backgroundColor = _fixOpacity.backgroundColor,\n durationFadeIn = _fixOpacity.durationFadeIn,\n Tag = _fixOpacity.Tag,\n children = _fixOpacity.children,\n _fixOpacity$classId = _fixOpacity.classId,\n classId = _fixOpacity$classId === void 0 ? !className ? Math.random().toString(36).replace(/[^a-z]+/g, '').substr(0, 7) + \"_depr\" : \"\" : _fixOpacity$classId,\n props = (0, _objectWithoutPropertiesLoose2[\"default\"])(_fixOpacity, [\"className\", \"style\", \"fluid\", \"fixed\", \"backgroundColor\", \"durationFadeIn\", \"Tag\", \"children\", \"classId\"]);\n\n var remainingProps = (0, _HelperUtils.stripRemainingProps)(props);\n var bgColor = typeof backgroundColor === \"boolean\" ? \"lightgray\" : typeof backgroundColor !== \"undefined\" ? backgroundColor : \"\";\n var shouldFadeIn = this.state.fadeIn === true && !this.state.imgCached || this.props.fadeIn === \"soft\";\n var transitionDelay = this.state.imgLoaded ? durationFadeIn + \"ms\" : \"0.25s\"; // Create base container style and only add opacity hack when\n // preserveStackingContext is falsy.\n\n var divStyle = (0, _extends2[\"default\"])({\n position: \"relative\"\n }, style);\n if (!this.props.preserveStackingContext) divStyle.opacity = 0.99; // Choose image object of fluid or fixed, return null if not present.\n\n var image, noScriptImageData;\n\n if (fluid) {\n image = fluid;\n noScriptImageData = Array.isArray(fluid) ? fluid[0] : fluid;\n } else if (fixed) {\n image = fixed;\n divStyle.width = image.width;\n divStyle.height = image.height;\n divStyle.display = \"inline-block\";\n\n if (style.display === \"inherit\") {\n delete divStyle.display;\n }\n\n noScriptImageData = Array.isArray(fixed) ? fixed[0] : fixed;\n } else {\n return null;\n } // Set background-images and visibility according to images available.\n\n\n var newImageSettings = (0, _ImageUtils.switchImageSettings)({\n image: image,\n bgImage: this.bgImage,\n imageRef: this.imageRef,\n state: this.state\n }); // Set bgImage to available newImageSettings or fallback.\n\n this.bgImage = newImageSettings.nextImageArray || newImageSettings.nextImage || this.bgImage; // Create styles for the next background image(s).\n\n var pseudoStyles = (0, _StyleUtils.createPseudoStyles)((0, _extends2[\"default\"])({\n classId: classId,\n className: this.state.currentClassNames,\n transitionDelay: transitionDelay,\n bgColor: bgColor,\n backgroundStyles: this.backgroundStyles,\n style: style,\n fadeIn: shouldFadeIn\n }, newImageSettings));\n var noScriptPseudoStyles = (0, _StyleUtils.createNoScriptStyles)({\n image: image,\n bgColor: bgColor,\n classId: classId,\n className: this.state.currentClassNames,\n backgroundStyles: this.backgroundStyles,\n style: style\n }); // console.table(newImageSettings)\n // console.log(pseudoStyles)\n // console.log(image, noScriptPseudoStyles)\n // Switch key between fluid & fixed.\n\n var componentKey = \"\" + (fluid && \"fluid\") + (fixed && \"fixed\") + \"-\" + JSON.stringify(noScriptImageData.srcSet);\n return _react[\"default\"].createElement(Tag, (0, _extends2[\"default\"])({\n className: \"\" + (this.state.currentClassNames || \"\") + (classId && \" gatsby-background-image-\" + classId) + \" gatsby-image-wrapper\",\n style: (0, _extends2[\"default\"])({}, divStyle, {}, this.backgroundStyles),\n ref: this.handleRef,\n key: componentKey\n }, remainingProps), _react[\"default\"].createElement(\"style\", {\n dangerouslySetInnerHTML: {\n __html: pseudoStyles\n }\n }), this.state.hasNoScript && _react[\"default\"].createElement(\"noscript\", null, _react[\"default\"].createElement(\"style\", {\n dangerouslySetInnerHTML: {\n __html: noScriptPseudoStyles\n }\n })), children);\n };\n\n return BackgroundImage;\n}(_react[\"default\"].Component);\n\nBackgroundImage.defaultProps = {\n critical: false,\n fadeIn: true,\n durationFadeIn: 500,\n Tag: \"div\",\n preserveStackingContext: false,\n rootMargin: \"200px\"\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});\n\nBackgroundImage.propTypes = {\n resolutions: _propTypes[\"default\"].oneOfType([fixedObject, _propTypes[\"default\"].arrayOf(_propTypes[\"default\"].oneOfType([fixedObject, _propTypes[\"default\"].string]))]),\n sizes: _propTypes[\"default\"].oneOfType([fluidObject, _propTypes[\"default\"].arrayOf(_propTypes[\"default\"].oneOfType([fluidObject, _propTypes[\"default\"].string]))]),\n fixed: _propTypes[\"default\"].oneOfType([fixedObject, _propTypes[\"default\"].arrayOf(_propTypes[\"default\"].oneOfType([fixedObject, _propTypes[\"default\"].string]))]),\n fluid: _propTypes[\"default\"].oneOfType([fluidObject, _propTypes[\"default\"].arrayOf(_propTypes[\"default\"].oneOfType([fluidObject, _propTypes[\"default\"].string]))]),\n fadeIn: _propTypes[\"default\"].oneOfType([_propTypes[\"default\"].string, _propTypes[\"default\"].bool]),\n durationFadeIn: _propTypes[\"default\"].number,\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\"].oneOfType([_propTypes[\"default\"].object, _propTypes[\"default\"].array]),\n // Using PropTypes from RN.\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\"].oneOfType([_propTypes[\"default\"].string, _propTypes[\"default\"].func]),\n classId: _propTypes[\"default\"].string,\n preserveStackingContext: _propTypes[\"default\"].bool,\n rootMargin: _propTypes[\"default\"].string\n};\nvar _default = BackgroundImage;\nexports[\"default\"] = _default;","var hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","require(\"core-js/modules/es.typed-array.set.js\");\nrequire(\"core-js/modules/es.typed-array.sort.js\");\n// Unique ID creation requires a high quality random # generator. In the\n// browser this is a little complicated due to unknown quality of Math.random()\n// and inconsistent support for the `crypto` API. We do the best we can via\n// feature-detection\n\n// getRandomValues needs to be invoked in a context where \"this\" is a Crypto\n// implementation. Also, find the complete implementation of crypto on IE11.\nvar getRandomValues = typeof crypto != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto != 'undefined' && typeof window.msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto);\nif (getRandomValues) {\n // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto\n var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef\n\n module.exports = function whatwgRNG() {\n getRandomValues(rnds8);\n return rnds8;\n };\n} else {\n // Math.random()-based (RNG)\n //\n // If all else fails, use Math.random(). It's fast, but is of unspecified\n // quality.\n var rnds = new Array(16);\n module.exports = function mathRNG() {\n for (var i = 0, r; i < 16; i++) {\n if ((i & 0x03) === 0) r = Math.random() * 0x100000000;\n rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;\n }\n return rnds;\n };\n}","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-basic-detection');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar classof = require('../internals/classof');\nvar tryToString = require('../internals/try-to-string');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar uid = require('../internals/uid');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar Int8Array = global.Int8Array;\nvar Int8ArrayPrototype = Int8Array && Int8Array.prototype;\nvar Uint8ClampedArray = global.Uint8ClampedArray;\nvar Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;\nvar TypedArray = Int8Array && getPrototypeOf(Int8Array);\nvar TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);\nvar ObjectPrototype = Object.prototype;\nvar TypeError = global.TypeError;\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');\nvar TYPED_ARRAY_CONSTRUCTOR = 'TypedArrayConstructor';\n// Fixing native typed arrays in Opera Presto crashes the browser, see #595\nvar NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';\nvar TYPED_ARRAY_TAG_REQUIRED = false;\nvar NAME, Constructor, Prototype;\n\nvar TypedArrayConstructorsList = {\n Int8Array: 1,\n Uint8Array: 1,\n Uint8ClampedArray: 1,\n Int16Array: 2,\n Uint16Array: 2,\n Int32Array: 4,\n Uint32Array: 4,\n Float32Array: 4,\n Float64Array: 8\n};\n\nvar BigIntArrayConstructorsList = {\n BigInt64Array: 8,\n BigUint64Array: 8\n};\n\nvar isView = function isView(it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return klass === 'DataView'\n || hasOwn(TypedArrayConstructorsList, klass)\n || hasOwn(BigIntArrayConstructorsList, klass);\n};\n\nvar getTypedArrayConstructor = function (it) {\n var proto = getPrototypeOf(it);\n if (!isObject(proto)) return;\n var state = getInternalState(proto);\n return (state && hasOwn(state, TYPED_ARRAY_CONSTRUCTOR)) ? state[TYPED_ARRAY_CONSTRUCTOR] : getTypedArrayConstructor(proto);\n};\n\nvar isTypedArray = function (it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return hasOwn(TypedArrayConstructorsList, klass)\n || hasOwn(BigIntArrayConstructorsList, klass);\n};\n\nvar aTypedArray = function (it) {\n if (isTypedArray(it)) return it;\n throw TypeError('Target is not a typed array');\n};\n\nvar aTypedArrayConstructor = function (C) {\n if (isCallable(C) && (!setPrototypeOf || isPrototypeOf(TypedArray, C))) return C;\n throw TypeError(tryToString(C) + ' is not a typed array constructor');\n};\n\nvar exportTypedArrayMethod = function (KEY, property, forced, options) {\n if (!DESCRIPTORS) return;\n if (forced) for (var ARRAY in TypedArrayConstructorsList) {\n var TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && hasOwn(TypedArrayConstructor.prototype, KEY)) try {\n delete TypedArrayConstructor.prototype[KEY];\n } catch (error) {\n // old WebKit bug - some methods are non-configurable\n try {\n TypedArrayConstructor.prototype[KEY] = property;\n } catch (error2) { /* empty */ }\n }\n }\n if (!TypedArrayPrototype[KEY] || forced) {\n defineBuiltIn(TypedArrayPrototype, KEY, forced ? property\n : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property, options);\n }\n};\n\nvar exportTypedArrayStaticMethod = function (KEY, property, forced) {\n var ARRAY, TypedArrayConstructor;\n if (!DESCRIPTORS) return;\n if (setPrototypeOf) {\n if (forced) for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && hasOwn(TypedArrayConstructor, KEY)) try {\n delete TypedArrayConstructor[KEY];\n } catch (error) { /* empty */ }\n }\n if (!TypedArray[KEY] || forced) {\n // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable\n try {\n return defineBuiltIn(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && TypedArray[KEY] || property);\n } catch (error) { /* empty */ }\n } else return;\n }\n for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {\n defineBuiltIn(TypedArrayConstructor, KEY, property);\n }\n }\n};\n\nfor (NAME in TypedArrayConstructorsList) {\n Constructor = global[NAME];\n Prototype = Constructor && Constructor.prototype;\n if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;\n else NATIVE_ARRAY_BUFFER_VIEWS = false;\n}\n\nfor (NAME in BigIntArrayConstructorsList) {\n Constructor = global[NAME];\n Prototype = Constructor && Constructor.prototype;\n if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;\n}\n\n// WebKit bug - typed arrays constructors prototype is Object.prototype\nif (!NATIVE_ARRAY_BUFFER_VIEWS || !isCallable(TypedArray) || TypedArray === Function.prototype) {\n // eslint-disable-next-line no-shadow -- safe\n TypedArray = function TypedArray() {\n throw TypeError('Incorrect invocation');\n };\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME], TypedArray);\n }\n}\n\nif (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {\n TypedArrayPrototype = TypedArray.prototype;\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME].prototype, TypedArrayPrototype);\n }\n}\n\n// WebKit bug - one more object in Uint8ClampedArray prototype chain\nif (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {\n setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);\n}\n\nif (DESCRIPTORS && !hasOwn(TypedArrayPrototype, TO_STRING_TAG)) {\n TYPED_ARRAY_TAG_REQUIRED = true;\n defineBuiltInAccessor(TypedArrayPrototype, TO_STRING_TAG, {\n configurable: true,\n get: function () {\n return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;\n }\n });\n for (NAME in TypedArrayConstructorsList) if (global[NAME]) {\n createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME);\n }\n}\n\nmodule.exports = {\n NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,\n TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQUIRED && TYPED_ARRAY_TAG,\n aTypedArray: aTypedArray,\n aTypedArrayConstructor: aTypedArrayConstructor,\n exportTypedArrayMethod: exportTypedArrayMethod,\n exportTypedArrayStaticMethod: exportTypedArrayStaticMethod,\n getTypedArrayConstructor: getTypedArrayConstructor,\n isView: isView,\n isTypedArray: isTypedArray,\n TypedArray: TypedArray,\n TypedArrayPrototype: TypedArrayPrototype\n};\n","var makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","\"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 _excluded = [\"sizes\", \"srcSet\", \"src\", \"style\", \"onLoad\", \"onError\", \"loading\", \"draggable\", \"ariaHidden\"];\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 logDeprecationNotice(\"resolutions\", \"the gatsby-image v2 prop \\\"fixed\\\"\");\n delete convertedProps.resolutions;\n }\n\n if (sizes) {\n convertedProps.fluid = sizes;\n logDeprecationNotice(\"sizes\", \"the gatsby-image v2 prop \\\"fluid\\\"\");\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?} Returns image src or undefined it not given.\n */\n\n\nvar getImageCacheKey = function getImageCacheKey(_ref2) {\n var fluid = _ref2.fluid,\n fixed = _ref2.fixed;\n var srcData = getCurrentSrcData(fluid || fixed || []);\n return srcData && srcData.src;\n};\n/**\n * Returns the current src - Preferably with art-direction support.\n * @param currentData {{media?: string}[], maxWidth?: Number, maxHeight?: Number} The fluid or fixed image array.\n * @return {{src: string, media?: string, maxWidth?: Number, maxHeight?: Number}}\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 } // No media matches, select first element without a media condition\n\n\n var noMedia = currentData.findIndex(function (image) {\n return typeof image.media === \"undefined\";\n });\n\n if (noMedia !== -1) {\n return currentData[noMedia];\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);\n var cacheKey = getImageCacheKey(convertedProps);\n return imageCache[cacheKey] || false;\n};\n\nvar activateCacheForImage = function activateCacheForImage(props) {\n var convertedProps = convertProps(props);\n var cacheKey = getImageCacheKey(convertedProps);\n\n if (cacheKey) {\n imageCache[cacheKey] = true;\n }\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 /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {\n key: src\n }, srcSetWebp && /*#__PURE__*/_react.default.createElement(\"source\", {\n type: \"image/webp\",\n media: media,\n srcSet: srcSetWebp,\n sizes: sizes\n }), srcSet && /*#__PURE__*/_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 /*#__PURE__*/_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 /*#__PURE__*/_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 \"\";\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 \"\" + sources + \"\";\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 = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var src = props.src,\n imageVariants = props.imageVariants,\n generateSources = props.generateSources,\n spreadProps = props.spreadProps,\n ariaHidden = props.ariaHidden;\n\n var baseImage = /*#__PURE__*/_react.default.createElement(Img, (0, _extends2.default)({\n ref: ref,\n src: src\n }, spreadProps, {\n ariaHidden: ariaHidden\n }));\n\n return imageVariants.length > 1 ? /*#__PURE__*/_react.default.createElement(\"picture\", null, generateSources(imageVariants), baseImage) : baseImage;\n});\n\nvar Img = /*#__PURE__*/_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, _excluded);\n return /*#__PURE__*/_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 = /*#__PURE__*/function (_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 isHydrated: false\n };\n _this.imageRef = /*#__PURE__*/_react.default.createRef();\n _this.placeholderRef = props.placeholderRef || /*#__PURE__*/_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 this.setState({\n isHydrated: isBrowser\n });\n\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 _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 // for lazyloaded components this might be null\n // TODO fix imgCached behaviour as it's now false when it's lazyloaded\n imgCached: !!(_this2.imageRef.current && _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 imageVariants = fluid || fixed; // Abort early if missing image data (#25371)\n\n if (!imageVariants) {\n return null;\n }\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 }; // Initial client render state needs to match SSR until hydration finishes.\n // Once hydration completes, render again to update to the correct image.\n // `imageVariants` is always an Array type at this point due to `convertProps()`\n\n var image = !this.state.isHydrated ? imageVariants[0] : getCurrentSrcData(imageVariants);\n\n if (fluid) {\n return /*#__PURE__*/_react.default.createElement(Tag, {\n className: (className ? className : \"\") + \" gatsby-image-wrapper\",\n style: (0, _extends2.default)({\n position: \"relative\",\n overflow: \"hidden\",\n maxWidth: image.maxWidth ? image.maxWidth + \"px\" : null,\n maxHeight: image.maxHeight ? image.maxHeight + \"px\" : null\n }, style),\n ref: this.handleRef,\n key: \"fluid-\" + JSON.stringify(image.srcSet)\n }, /*#__PURE__*/_react.default.createElement(Tag, {\n \"aria-hidden\": true,\n style: {\n width: \"100%\",\n paddingBottom: 100 / image.aspectRatio + \"%\"\n }\n }), bgColor && /*#__PURE__*/_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 && /*#__PURE__*/_react.default.createElement(Placeholder, {\n ariaHidden: true,\n ref: this.placeholderRef,\n src: image.base64,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateBase64Sources\n }), image.tracedSVG && /*#__PURE__*/_react.default.createElement(Placeholder, {\n ariaHidden: true,\n ref: this.placeholderRef,\n src: image.tracedSVG,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateTracedSVGSources\n }), this.state.isVisible && /*#__PURE__*/_react.default.createElement(\"picture\", null, generateImageSources(imageVariants), /*#__PURE__*/_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 && /*#__PURE__*/_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 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 /*#__PURE__*/_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 && /*#__PURE__*/_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 && /*#__PURE__*/_react.default.createElement(Placeholder, {\n ariaHidden: true,\n ref: this.placeholderRef,\n src: image.base64,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateBase64Sources\n }), image.tracedSVG && /*#__PURE__*/_react.default.createElement(Placeholder, {\n ariaHidden: true,\n ref: this.placeholderRef,\n src: image.tracedSVG,\n spreadProps: placeholderImageProps,\n imageVariants: imageVariants,\n generateSources: generateTracedSVGSources\n }), this.state.isVisible && /*#__PURE__*/_react.default.createElement(\"picture\", null, generateImageSources(imageVariants), /*#__PURE__*/_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 && /*#__PURE__*/_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 maxWidth: _propTypes.default.number,\n maxHeight: _propTypes.default.number\n});\n\nfunction requireFixedOrFluid(originalPropTypes) {\n return function (props, propName, componentName) {\n var _PropTypes$checkPropT;\n\n if (!props.fixed && !props.fluid) {\n throw new Error(\"The prop `fluid` or `fixed` is marked as required in `\" + componentName + \"`, but their values are both `undefined`.\");\n }\n\n _propTypes.default.checkPropTypes((_PropTypes$checkPropT = {}, _PropTypes$checkPropT[propName] = originalPropTypes, _PropTypes$checkPropT), props, \"prop\", componentName);\n };\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: requireFixedOrFluid(_propTypes.default.oneOfType([fixedObject, _propTypes.default.arrayOf(fixedObject)])),\n fluid: requireFixedOrFluid(_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;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.imageLoaded = exports.imageReferenceCompleted = exports.createDummyImageArray = exports.initialBgImage = exports.imageArrayPropsChanged = exports.imagePropsChanged = exports.getUrlString = exports.getCurrentFromData = exports.switchImageSettings = exports.activateMultiplePictureRefs = exports.activatePictureRef = exports.createMultiplePictureRefs = exports.createPictureRef = exports.hasPictureElement = exports.resetImageCache = exports.activateCacheForMultipleImages = exports.activateCacheForImage = exports.allInImageCache = exports.inImageCache = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _HelperUtils = require(\"./HelperUtils\");\n\nvar imageCache = Object.create({});\n/**\n * Cache if we've seen an image before so we don't both with\n * lazy-loading & fading in on subsequent mounts.\n *\n * @param props\n * @return {*|boolean}\n */\n\nvar inImageCache = function inImageCache(props) {\n var convertedProps = (0, _HelperUtils.convertProps)(props);\n\n if ((0, _HelperUtils.hasImageArray)(convertedProps)) {\n return allInImageCache(props);\n } else {\n // Find src\n var src = convertedProps.fluid ? convertedProps.fluid.src : convertedProps.fixed ? convertedProps.fixed.src : null;\n return imageCache[src] || false;\n }\n};\n/**\n * Processes an array of cached images for inImageCache.\n *\n * @param props object Component Props (with fluid or fixed as array).\n * @return {*|boolean}\n */\n\n\nexports.inImageCache = inImageCache;\n\nvar allInImageCache = function allInImageCache(props) {\n var convertedProps = (0, _HelperUtils.convertProps)(props); // Extract Image Array.\n\n var imageStack = convertedProps.fluid || convertedProps.fixed; // Only return true if every image is in cache.\n\n return imageStack.every(function (imageData) {\n if (convertedProps.fluid) {\n return inImageCache({\n fluid: imageData\n });\n } else {\n return inImageCache({\n fixed: imageData\n });\n }\n });\n};\n/**\n * Adds an Image to imageCache.\n *\n * @param props\n * @param selfRef\n */\n\n\nexports.allInImageCache = allInImageCache;\n\nvar activateCacheForImage = function activateCacheForImage(props, selfRef) {\n var convertedProps = (0, _HelperUtils.convertProps)(props);\n\n if ((0, _HelperUtils.hasImageArray)(convertedProps)) {\n return activateCacheForMultipleImages(props);\n } else {\n // Find src\n var src = convertedProps.fluid ? convertedProps.fluid.src : convertedProps.fixed ? convertedProps.fixed.src : null;\n\n if (src) {\n imageCache[src] = true;\n }\n }\n};\n/**\n * Activates the Cache for multiple Images.\n *\n * @param props\n */\n\n\nexports.activateCacheForImage = activateCacheForImage;\n\nvar activateCacheForMultipleImages = function activateCacheForMultipleImages(props) {\n var convertedProps = (0, _HelperUtils.convertProps)(props); // Extract Image Array.\n\n var imageStack = convertedProps.fluid || convertedProps.fixed;\n imageStack.forEach(function (imageData) {\n if (convertedProps.fluid) {\n activateCacheForImage({\n fluid: imageData\n });\n } else {\n activateCacheForImage({\n fixed: imageData\n });\n }\n });\n};\n/**\n * Resets the image cache (especially important for reliable tests).\n */\n\n\nexports.activateCacheForMultipleImages = activateCacheForMultipleImages;\n\nvar resetImageCache = function resetImageCache() {\n for (var prop in imageCache) {\n delete imageCache[prop];\n }\n};\n/**\n * Returns the availability of the HTMLPictureElement unless in SSR mode.\n *\n * @return {boolean}\n */\n\n\nexports.resetImageCache = resetImageCache;\n\nvar hasPictureElement = function hasPictureElement() {\n return typeof HTMLPictureElement !== \"undefined\" || typeof window === \"undefined\";\n};\n/**\n * Creates an image reference to be activated on critical or visibility.\n * @param props\n * @param onLoad\n * @return {HTMLImageElement|null|Array}\n */\n\n\nexports.hasPictureElement = hasPictureElement;\n\nvar createPictureRef = function createPictureRef(props, onLoad) {\n var convertedProps = (0, _HelperUtils.convertProps)(props);\n\n if (typeof window !== \"undefined\" && (typeof convertedProps.fluid !== \"undefined\" || typeof convertedProps.fixed !== \"undefined\")) {\n if ((0, _HelperUtils.hasImageArray)(convertedProps)) {\n return createMultiplePictureRefs(props, onLoad);\n } else {\n var img = new Image();\n\n img.onload = function () {\n return onLoad();\n };\n\n if (!img.complete && typeof convertedProps.onLoad === \"function\") {\n img.addEventListener('load', convertedProps.onLoad);\n }\n\n if (typeof convertedProps.onError === \"function\") {\n img.addEventListener('error', convertedProps.onError);\n }\n\n if (convertedProps.crossOrigin) {\n img.crossOrigin = convertedProps.crossOrigin;\n } // Only directly activate the image if critical (preload).\n\n\n if (convertedProps.critical || convertedProps.isVisible) {\n return activatePictureRef(img, convertedProps);\n }\n\n return img;\n }\n }\n\n return null;\n};\n/**\n * Creates multiple image references. Internal function.\n *\n * @param props object Component Props (with fluid or fixed as array).\n * @param onLoad function Callback for load handling.\n */\n\n\nexports.createPictureRef = createPictureRef;\n\nvar createMultiplePictureRefs = function createMultiplePictureRefs(props, onLoad) {\n var convertedProps = (0, _HelperUtils.convertProps)(props); // Extract Image Array.\n\n var imageStack = convertedProps.fluid || convertedProps.fixed;\n return imageStack.map(function (imageData) {\n if (convertedProps.fluid) {\n return createPictureRef((0, _extends2[\"default\"])({}, convertedProps, {\n fluid: imageData\n }), onLoad);\n } else {\n return createPictureRef((0, _extends2[\"default\"])({}, convertedProps, {\n fixed: imageData\n }), onLoad);\n }\n });\n};\n/**\n * Creates a picture element for the browser to decide which image to load.\n *\n * @param imageRef\n * @param props\n * @param selfRef\n * @return {null|Array|*}\n */\n\n\nexports.createMultiplePictureRefs = createMultiplePictureRefs;\n\nvar activatePictureRef = function activatePictureRef(imageRef, props, selfRef) {\n if (selfRef === void 0) {\n selfRef = null;\n }\n\n var convertedProps = (0, _HelperUtils.convertProps)(props);\n\n if (typeof window !== \"undefined\" && (typeof convertedProps.fluid !== \"undefined\" || typeof convertedProps.fixed !== \"undefined\")) {\n if ((0, _HelperUtils.hasImageArray)(convertedProps)) {\n return activateMultiplePictureRefs(imageRef, props, selfRef);\n } else {\n var imageData = convertedProps.fluid ? convertedProps.fluid : convertedProps.fixed; // Prevent adding HTMLPictureElement if it isn't supported (e.g. IE11),\n // but don't prevent it during SSR.\n\n var removableElement = null;\n\n if (hasPictureElement()) {\n var pic = document.createElement('picture');\n\n if (selfRef) {\n pic.width = imageRef.width = selfRef.offsetWidth;\n pic.height = imageRef.height = selfRef.offsetHeight;\n }\n\n if (imageData.srcSetWebp) {\n var sourcesWebP = document.createElement('source'); // Set original component's style.\n\n sourcesWebP.type = \"image/webp\";\n sourcesWebP.srcset = imageData.srcSetWebp;\n sourcesWebP.sizes = imageData.sizes;\n pic.appendChild(sourcesWebP);\n }\n\n pic.appendChild(imageRef);\n removableElement = pic; // document.body.appendChild(removableElement)\n } else {\n if (selfRef) {\n imageRef.width = selfRef.offsetWidth;\n imageRef.height = selfRef.offsetHeight;\n }\n\n removableElement = imageRef; // document.body.appendChild(removableElement)\n }\n\n imageRef.srcset = imageData.srcSet ? imageData.srcSet : \"\";\n imageRef.src = imageData.src ? imageData.src : \"\"; // document.body.removeChild(removableElement)\n\n return imageRef;\n }\n }\n\n return null;\n};\n/**\n * Creates multiple picture elements.\n *\n * @param imageRefs\n * @param props\n * @param selfRef\n * @return {Array||null}\n */\n\n\nexports.activatePictureRef = activatePictureRef;\n\nvar activateMultiplePictureRefs = function activateMultiplePictureRefs(imageRefs, props, selfRef) {\n var convertedProps = (0, _HelperUtils.convertProps)(props); // Extract Image Array.\n\n return imageRefs.map(function (imageRef, index) {\n if (convertedProps.fluid) {\n return activatePictureRef(imageRef, (0, _extends2[\"default\"])({}, convertedProps, {\n fluid: convertedProps.fluid[index]\n }), selfRef);\n }\n\n return activatePictureRef(imageRef, (0, _extends2[\"default\"])({}, convertedProps, {\n fixed: convertedProps.fixed[index]\n }), selfRef);\n });\n};\n/**\n * Compares the old states to the new and changes image settings accordingly.\n *\n * @param image string||array Base data for one or multiple Images.\n * @param bgImage string||array Last background image(s).\n * @param imageRef string||array References to one or multiple Images.\n * @param state object Component state.\n * @return {{afterOpacity: number, bgColor: *, bgImage: *, nextImage: string}}\n */\n\n\nexports.activateMultiplePictureRefs = activateMultiplePictureRefs;\n\nvar switchImageSettings = function switchImageSettings(_ref) {\n var image = _ref.image,\n bgImage = _ref.bgImage,\n imageRef = _ref.imageRef,\n state = _ref.state;\n // Read currentSrc from imageRef (if exists).\n var currentSources = getCurrentFromData({\n data: imageRef,\n propName: \"currentSrc\"\n }); // Check if image is Array.\n\n var returnArray = Array.isArray(image); // Backup bgImage to lastImage.\n\n var lastImage = Array.isArray(bgImage) ? (0, _HelperUtils.filteredJoin)(bgImage) : bgImage; // Set the backgroundImage according to images available.\n\n var nextImage;\n var nextImageArray; // Signal to `createPseudoStyles()` when we have reached the final image,\n // which is important for transparent background-image(s).\n\n var finalImage = false;\n\n if (returnArray) {\n // Check for tracedSVG first.\n nextImage = getCurrentFromData({\n data: image,\n propName: \"tracedSVG\",\n returnArray: returnArray\n }); // Now combine with base64 images.\n\n nextImage = (0, _HelperUtils.combineArray)(getCurrentFromData({\n data: image,\n propName: \"base64\",\n returnArray: returnArray\n }), nextImage); // Now add possible `rgba()` or similar CSS string props.\n\n nextImage = (0, _HelperUtils.combineArray)(getCurrentFromData({\n data: image,\n propName: \"CSS_STRING\",\n addUrl: false,\n returnArray: returnArray\n }), nextImage); // Do we have at least one img loaded?\n\n if (state.imgLoaded && state.isVisible) {\n if (currentSources) {\n nextImage = (0, _HelperUtils.combineArray)(getCurrentFromData({\n data: imageRef,\n propName: \"currentSrc\",\n returnArray: returnArray\n }), nextImage);\n finalImage = true;\n } else {\n // No support for HTMLPictureElement or WebP present, get src.\n nextImage = (0, _HelperUtils.combineArray)(getCurrentFromData({\n data: imageRef,\n propName: \"src\",\n returnArray: returnArray\n }), nextImage);\n finalImage = true;\n }\n } // First fill last images from bgImage...\n\n\n nextImage = (0, _HelperUtils.combineArray)(nextImage, bgImage); // ... then fill the rest of the background-images with a transparent dummy\n // pixel, lest the background-* properties can't target the correct image.\n\n var dummyArray = createDummyImageArray(image.length); // Now combine the two arrays and join them.\n\n nextImage = (0, _HelperUtils.combineArray)(nextImage, dummyArray);\n nextImageArray = nextImage;\n nextImage = (0, _HelperUtils.filteredJoin)(nextImage);\n } else {\n nextImage = \"\";\n if (image.tracedSVG) nextImage = getCurrentFromData({\n data: image,\n propName: \"tracedSVG\"\n });\n if (image.base64 && !image.tracedSVG) nextImage = getCurrentFromData({\n data: image,\n propName: \"base64\"\n });\n\n if (state.imgLoaded && state.isVisible) {\n nextImage = currentSources;\n finalImage = true;\n }\n } // Change opacity according to imageState.\n\n\n var afterOpacity = state.imageState % 2;\n\n if (!returnArray && nextImage === \"\" && state.imgLoaded && state.isVisible && imageRef && !imageRef.currentSrc) {\n // Should we still have no nextImage it might be because currentSrc is missing.\n nextImage = getCurrentFromData({\n data: imageRef,\n propName: \"src\",\n checkLoaded: false\n });\n finalImage = true;\n } // Fall back on lastImage (important for prop changes) if all else fails.\n\n\n if (!nextImage) nextImage = lastImage;\n var newImageSettings = {\n lastImage: lastImage,\n nextImage: nextImage,\n afterOpacity: afterOpacity,\n finalImage: finalImage\n }; // Add nextImageArray for bgImage to newImageSettings if exists.\n\n if (nextImageArray) newImageSettings.nextImageArray = nextImageArray;\n return newImageSettings;\n};\n/**\n * Extracts a value from an imageRef, image object or an array of them.\n *\n * @param data HTMLImageElement||object||Array Data to extract from.\n * @param propName string Property to extract.\n * @param addUrl boolean Should returned strings be encased in `url()`?\n * @param returnArray boolean Switches between returning an array and a string.\n * @param checkLoaded boolean Turns checking for imageLoaded() on and off.\n * @return {string||array}\n */\n\n\nexports.switchImageSettings = switchImageSettings;\n\nvar getCurrentFromData = function getCurrentFromData(_ref2) {\n var data = _ref2.data,\n propName = _ref2.propName,\n _ref2$addUrl = _ref2.addUrl,\n addUrl = _ref2$addUrl === void 0 ? true : _ref2$addUrl,\n _ref2$returnArray = _ref2.returnArray,\n returnArray = _ref2$returnArray === void 0 ? false : _ref2$returnArray,\n _ref2$checkLoaded = _ref2.checkLoaded,\n checkLoaded = _ref2$checkLoaded === void 0 ? true : _ref2$checkLoaded;\n if (!data || !propName) return \"\"; // Handle tracedSVG with \"special care\".\n\n var tracedSVG = propName === \"tracedSVG\";\n\n if (Array.isArray(data)) {\n // Filter out all elements not having the propName and return remaining.\n var imageString = data // .filter(dataElement => {\n // return propName in dataElement && dataElement[propName]\n // })\n .map(function (dataElement) {\n // If `currentSrc` or `src` is needed, check image load completion first.\n if (propName === \"currentSrc\" || propName === 'src') {\n return checkLoaded ? imageLoaded(dataElement) && dataElement[propName] || \"\" : dataElement[propName];\n } // Check if CSS strings should be parsed.\n\n\n if (propName === \"CSS_STRING\" && (0, _HelperUtils.isString)(dataElement)) {\n return dataElement;\n }\n\n return dataElement[propName] || \"\";\n }); // Encapsulate in URL string and return.\n\n return getUrlString({\n imageString: imageString,\n tracedSVG: tracedSVG,\n addUrl: addUrl,\n returnArray: returnArray\n });\n } else {\n // If `currentSrc` or `src` is needed, check image load completion first.\n if ((propName === \"currentSrc\" || propName === 'src') && propName in data) {\n return getUrlString({\n imageString: checkLoaded ? imageLoaded(data) && data[propName] || \"\" : data[propName],\n addUrl: addUrl\n });\n }\n\n return propName in data ? getUrlString({\n imageString: data[propName],\n tracedSVG: tracedSVG,\n addUrl: addUrl\n }) : \"\";\n }\n};\n/**\n * Encapsulates an imageString with a url if needed.\n *\n * @param imageString string String to encapsulate.\n * @param tracedSVG boolean Special care for SVGs.\n * @param addUrl boolean If the string should be encapsulated or not.\n * @param returnArray boolean Return concatenated string or Array.\n * @param hasImageUrls boolean Force return of quoted string(s) for url().\n * @return {string||array}\n */\n\n\nexports.getCurrentFromData = getCurrentFromData;\n\nvar getUrlString = function getUrlString(_ref3) {\n var imageString = _ref3.imageString,\n _ref3$tracedSVG = _ref3.tracedSVG,\n tracedSVG = _ref3$tracedSVG === void 0 ? false : _ref3$tracedSVG,\n _ref3$addUrl = _ref3.addUrl,\n addUrl = _ref3$addUrl === void 0 ? true : _ref3$addUrl,\n _ref3$returnArray = _ref3.returnArray,\n returnArray = _ref3$returnArray === void 0 ? false : _ref3$returnArray,\n _ref3$hasImageUrls = _ref3.hasImageUrls,\n hasImageUrls = _ref3$hasImageUrls === void 0 ? false : _ref3$hasImageUrls;\n\n if (Array.isArray(imageString)) {\n var stringArray = imageString.map(function (currentString) {\n if (currentString) {\n var base64 = currentString.indexOf(\"base64\") !== -1;\n var imageUrl = hasImageUrls || currentString.substr(0, 4) === \"http\";\n var currentReturnString = currentString && tracedSVG ? \"\\\"\" + currentString + \"\\\"\" : currentString && !base64 && !tracedSVG && imageUrl ? \"'\" + currentString + \"'\" : currentString;\n return addUrl && currentString ? \"url(\" + currentReturnString + \")\" : currentReturnString;\n }\n\n return currentString;\n });\n return returnArray ? stringArray : (0, _HelperUtils.filteredJoin)(stringArray);\n } else {\n var base64 = imageString.indexOf(\"base64\") !== -1;\n var imageUrl = hasImageUrls || imageString.substr(0, 4) === \"http\";\n var returnString = imageString && tracedSVG ? \"\\\"\" + imageString + \"\\\"\" : imageString && !base64 && !tracedSVG && imageUrl ? \"'\" + imageString + \"'\" : imageString;\n return imageString ? addUrl ? \"url(\" + returnString + \")\" : returnString : \"\";\n }\n};\n/**\n * Checks if any image props have changed.\n *\n * @param props\n * @param prevProps\n * @return {*}\n */\n\n\nexports.getUrlString = getUrlString;\n\nvar imagePropsChanged = function imagePropsChanged(props, prevProps) {\n return (// Do we have different image types?\n props.fluid && !prevProps.fluid || props.fixed && !prevProps.fixed || imageArrayPropsChanged(props, prevProps) || // Are single image sources different?\n props.fluid && prevProps.fluid && props.fluid.src !== prevProps.fluid.src || props.fixed && prevProps.fixed && props.fixed.src !== prevProps.fixed.src\n );\n};\n/**\n * Decides if two given props with array images differ.\n *\n * @param props\n * @param prevProps\n * @return {boolean}\n */\n\n\nexports.imagePropsChanged = imagePropsChanged;\n\nvar imageArrayPropsChanged = function imageArrayPropsChanged(props, prevProps) {\n var isPropsFluidArray = Array.isArray(props.fluid);\n var isPrevPropsFluidArray = Array.isArray(prevProps.fluid);\n var isPropsFixedArray = Array.isArray(props.fixed);\n var isPrevPropsFixedArray = Array.isArray(prevProps.fixed);\n\n if ( // Did the props change to a single image?\n isPropsFluidArray && !isPrevPropsFluidArray || isPropsFixedArray && !isPrevPropsFixedArray || // Did the props change to an Array?\n !isPropsFluidArray && isPrevPropsFluidArray || !isPropsFixedArray && isPrevPropsFixedArray) {\n return true;\n } else {\n // Are the lengths or sources in the Arrays different?\n if (isPropsFluidArray && isPrevPropsFluidArray) {\n if (props.fluid.length === prevProps.fluid.length) {\n // Check for individual image or CSS string changes.\n return props.fluid.some(function (image, index) {\n return image.src !== prevProps.fluid[index].src;\n });\n }\n\n return true;\n } else if (isPropsFixedArray && isPrevPropsFixedArray) {\n if (props.fixed.length === prevProps.fixed.length) {\n // Check for individual image or CSS string changes.\n return props.fixed.some(function (image, index) {\n return image.src !== prevProps.fixed[index].src;\n });\n }\n\n return true;\n }\n }\n};\n/**\n * Prepares initial background image(s).\n *\n * @param props object Component properties.\n * @param withDummies boolean If array preserving bg layering should be add.\n * @return {string|(string|Array)}\n */\n\n\nexports.imageArrayPropsChanged = imageArrayPropsChanged;\n\nvar initialBgImage = function initialBgImage(props, withDummies) {\n if (withDummies === void 0) {\n withDummies = true;\n }\n\n var convertedProps = (0, _HelperUtils.convertProps)(props);\n var image = convertedProps.fluid || convertedProps.fixed; // Prevent failing if neither fluid nor fixed are present.\n\n if (!image) return \"\";\n var returnArray = (0, _HelperUtils.hasImageArray)(convertedProps);\n var initialImage;\n\n if (returnArray) {\n // Check for tracedSVG first.\n initialImage = getCurrentFromData({\n data: image,\n propName: \"tracedSVG\",\n returnArray: returnArray\n }); // Now combine with base64 images.\n\n initialImage = (0, _HelperUtils.combineArray)(getCurrentFromData({\n data: image,\n propName: \"base64\",\n returnArray: returnArray\n }), initialImage); // Now add possible `rgba()` or similar CSS string props.\n\n initialImage = (0, _HelperUtils.combineArray)(getCurrentFromData({\n data: image,\n propName: \"CSS_STRING\",\n addUrl: false,\n returnArray: returnArray\n }), initialImage);\n\n if (withDummies) {\n var dummyArray = createDummyImageArray(image.length); // Now combine the two arrays and join them.\n\n initialImage = (0, _HelperUtils.combineArray)(initialImage, dummyArray);\n }\n } else {\n initialImage = \"\";\n if (image.tracedSVG) initialImage = getCurrentFromData({\n data: image,\n propName: \"tracedSVG\"\n });\n if (image.base64 && !image.tracedSVG) initialImage = getCurrentFromData({\n data: image,\n propName: \"base64\"\n });\n }\n\n return initialImage;\n};\n/**\n * Creates an array with a transparent dummy pixel for background-* properties.\n *\n * @param length\n * @return {any[]}\n */\n\n\nexports.initialBgImage = initialBgImage;\n\nvar createDummyImageArray = function createDummyImageArray(length) {\n var DUMMY_IMG = \"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\";\n var dummyImageURI = getUrlString({\n imageString: DUMMY_IMG\n });\n return Array(length).fill(dummyImageURI);\n};\n/**\n * Checks if an image (array) reference is existing and tests for complete.\n *\n * @param imageRef HTMLImageElement||array Image reference(s).\n * @return {boolean}\n */\n\n\nexports.createDummyImageArray = createDummyImageArray;\n\nvar imageReferenceCompleted = function imageReferenceCompleted(imageRef) {\n return imageRef ? Array.isArray(imageRef) ? imageRef.every(function (singleImageRef) {\n return imageLoaded(singleImageRef);\n }) : imageLoaded(imageRef) : false;\n};\n/**\n * Checks if an image really was fully loaded.\n *\n * @param imageRef HTMLImageElement Reference to an image.\n * @return {boolean}\n */\n\n\nexports.imageReferenceCompleted = imageReferenceCompleted;\n\nvar imageLoaded = function imageLoaded(imageRef) {\n return imageRef ? imageRef.complete && imageRef.naturalWidth !== 0 && imageRef.naturalHeight !== 0 : false;\n};\n\nexports.imageLoaded = imageLoaded;","var toPositiveInteger = require('../internals/to-positive-integer');\n\nvar $RangeError = RangeError;\n\nmodule.exports = function (it, BYTES) {\n var offset = toPositiveInteger(it);\n if (offset % BYTES) throw $RangeError('Wrong offset');\n return offset;\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {createUseStyles} from \"react-jss\";\nimport Img from \"gatsby-image\";\nimport BackgroundImage from \"gatsby-background-image\";\n\nconst useStyles = createUseStyles({\n img: {\n maxWidth: \"100%\"\n },\n});\n\nconst PreviewCompatibleImage = ({className, children, imageInfo, type}) => {\n const classes = useStyles();\n const {alt = \"\", childImageSharp, image} = imageInfo;\n\n if (!!image && !!image.childImageSharp) {\n if (type === \"background\") {\n return (\n \n {children}\n \n );\n } \n return (\n \n );\n }\n\n if (childImageSharp) {\n if (type === \"background\") {\n return (\n \n {children}\n \n );\n }\n return (\n \n );\n }\n\n if (!!image && typeof image === \"string\") {\n if (type === \"background\") {\n return (\n \n {children}\n \n );\n }\n return (\n \n );\n }\n return null;\n};\n\nPreviewCompatibleImage.defaultProps = {\n className: \"\",\n type: \"image\",\n children: null\n}\n\nPreviewCompatibleImage.propTypes = {\n className: PropTypes.string,\n imageInfo: PropTypes.shape({\n alt: PropTypes.string,\n childImageSharp: PropTypes.object,\n image: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n style: PropTypes.object\n }).isRequired,\n type: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element,\n PropTypes.arrayOf(PropTypes.element)\n ])\n};\n\nexport default PreviewCompatibleImage;\n","/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\nvar byteToHex = [];\nfor (var i = 0; i < 256; ++i) {\n byteToHex[i] = (i + 0x100).toString(16).substr(1);\n}\nfunction bytesToUuid(buf, offset) {\n var i = offset || 0;\n var bth = byteToHex;\n // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4\n return [bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]]].join('');\n}\nmodule.exports = bytesToUuid;","var Converter = require('./src/converter');\n\n/**\n * Function get source and destination alphabet and return convert function\n *\n * @param {string|Array} srcAlphabet\n * @param {string|Array} dstAlphabet\n *\n * @returns {function(number|Array)}\n */\nfunction anyBase(srcAlphabet, dstAlphabet) {\n var converter = new Converter(srcAlphabet, dstAlphabet);\n /**\n * Convert function\n *\n * @param {string|Array} number\n *\n * @return {string|Array} number\n */\n return function (number) {\n return converter.convert(number);\n };\n}\n;\nanyBase.BIN = '01';\nanyBase.OCT = '01234567';\nanyBase.DEC = '0123456789';\nanyBase.HEX = '0123456789abcdef';\nmodule.exports = anyBase;","/*!\n * html-attributes\n * https://github.com/alexmingoia/html-attributes\n */\n\n'use strict';\n\n/**\n * @module html-attributes\n */\nmodule.exports = {\n \"abbr\": \"abbr\",\n \"accept\": \"accept\",\n \"acceptCharset\": \"accept-charset\",\n \"accessKey\": \"accesskey\",\n \"action\": \"action\",\n \"allowFullScreen\": \"allowfullscreen\",\n \"allowTransparency\": \"allowtransparency\",\n \"alt\": \"alt\",\n \"async\": \"async\",\n \"autoComplete\": \"autocomplete\",\n \"autoFocus\": \"autofocus\",\n \"autoPlay\": \"autoplay\",\n \"cellPadding\": \"cellpadding\",\n \"cellSpacing\": \"cellspacing\",\n \"challenge\": \"challenge\",\n \"charset\": \"charset\",\n \"checked\": \"checked\",\n \"cite\": \"cite\",\n \"class\": \"class\",\n \"className\": \"class\",\n \"cols\": \"cols\",\n \"colSpan\": \"colspan\",\n \"command\": \"command\",\n \"content\": \"content\",\n \"contentEditable\": \"contenteditable\",\n \"contextMenu\": \"contextmenu\",\n \"controls\": \"controls\",\n \"coords\": \"coords\",\n \"crossOrigin\": \"crossorigin\",\n \"data\": \"data\",\n \"dateTime\": \"datetime\",\n \"default\": \"default\",\n \"defer\": \"defer\",\n \"dir\": \"dir\",\n \"disabled\": \"disabled\",\n \"download\": \"download\",\n \"draggable\": \"draggable\",\n \"dropzone\": \"dropzone\",\n \"encType\": \"enctype\",\n \"for\": \"for\",\n \"form\": \"form\",\n \"formAction\": \"formaction\",\n \"formEncType\": \"formenctype\",\n \"formMethod\": \"formmethod\",\n \"formNoValidate\": \"formnovalidate\",\n \"formTarget\": \"formtarget\",\n \"frameBorder\": \"frameBorder\",\n \"headers\": \"headers\",\n \"height\": \"height\",\n \"hidden\": \"hidden\",\n \"high\": \"high\",\n \"href\": \"href\",\n \"hrefLang\": \"hreflang\",\n \"htmlFor\": \"for\",\n \"httpEquiv\": \"http-equiv\",\n \"icon\": \"icon\",\n \"id\": \"id\",\n \"inputMode\": \"inputmode\",\n \"isMap\": \"ismap\",\n \"itemId\": \"itemid\",\n \"itemProp\": \"itemprop\",\n \"itemRef\": \"itemref\",\n \"itemScope\": \"itemscope\",\n \"itemType\": \"itemtype\",\n \"kind\": \"kind\",\n \"label\": \"label\",\n \"lang\": \"lang\",\n \"list\": \"list\",\n \"loop\": \"loop\",\n \"manifest\": \"manifest\",\n \"max\": \"max\",\n \"maxLength\": \"maxlength\",\n \"media\": \"media\",\n \"mediaGroup\": \"mediagroup\",\n \"method\": \"method\",\n \"min\": \"min\",\n \"minLength\": \"minlength\",\n \"multiple\": \"multiple\",\n \"muted\": \"muted\",\n \"name\": \"name\",\n \"noValidate\": \"novalidate\",\n \"open\": \"open\",\n \"optimum\": \"optimum\",\n \"pattern\": \"pattern\",\n \"ping\": \"ping\",\n \"placeholder\": \"placeholder\",\n \"poster\": \"poster\",\n \"preload\": \"preload\",\n \"radioGroup\": \"radiogroup\",\n \"readOnly\": \"readonly\",\n \"rel\": \"rel\",\n \"required\": \"required\",\n \"role\": \"role\",\n \"rows\": \"rows\",\n \"rowSpan\": \"rowspan\",\n \"sandbox\": \"sandbox\",\n \"scope\": \"scope\",\n \"scoped\": \"scoped\",\n \"scrolling\": \"scrolling\",\n \"seamless\": \"seamless\",\n \"selected\": \"selected\",\n \"shape\": \"shape\",\n \"size\": \"size\",\n \"sizes\": \"sizes\",\n \"sortable\": \"sortable\",\n \"span\": \"span\",\n \"spellCheck\": \"spellcheck\",\n \"src\": \"src\",\n \"srcDoc\": \"srcdoc\",\n \"srcSet\": \"srcset\",\n \"start\": \"start\",\n \"step\": \"step\",\n \"style\": \"style\",\n \"tabIndex\": \"tabindex\",\n \"target\": \"target\",\n \"title\": \"title\",\n \"translate\": \"translate\",\n \"type\": \"type\",\n \"typeMustMatch\": \"typemustmatch\",\n \"useMap\": \"usemap\",\n \"value\": \"value\",\n \"width\": \"width\",\n \"wmode\": \"wmode\",\n \"wrap\": \"wrap\"\n};","'use strict';\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar fails = require('../internals/fails');\nvar aCallable = require('../internals/a-callable');\nvar internalSort = require('../internals/array-sort');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar Uint16Array = global.Uint16Array;\nvar nativeSort = Uint16Array && uncurryThis(Uint16Array.prototype.sort);\n\n// WebKit\nvar ACCEPT_INCORRECT_ARGUMENTS = !!nativeSort && !(fails(function () {\n nativeSort(new Uint16Array(2), null);\n}) && fails(function () {\n nativeSort(new Uint16Array(2), {});\n}));\n\nvar STABLE_SORT = !!nativeSort && !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 74;\n if (FF) return FF < 67;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 602;\n\n var array = new Uint16Array(516);\n var expected = Array(516);\n var index, mod;\n\n for (index = 0; index < 516; index++) {\n mod = index % 4;\n array[index] = 515 - index;\n expected[index] = index - 2 * mod + 3;\n }\n\n nativeSort(array, function (a, b) {\n return (a / 4 | 0) - (b / 4 | 0);\n });\n\n for (index = 0; index < 516; index++) {\n if (array[index] !== expected[index]) return true;\n }\n});\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n // eslint-disable-next-line no-self-compare -- NaN check\n if (y !== y) return -1;\n // eslint-disable-next-line no-self-compare -- NaN check\n if (x !== x) return 1;\n if (x === 0 && y === 0) return 1 / x > 0 && 1 / y < 0 ? 1 : -1;\n return x > y;\n };\n};\n\n// `%TypedArray%.prototype.sort` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort\nexportTypedArrayMethod('sort', function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n if (STABLE_SORT) return nativeSort(this, comparefn);\n\n return internalSort(aTypedArray(this), getSortCompare(comparefn));\n}, !STABLE_SORT || ACCEPT_INCORRECT_ARGUMENTS);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport {createUseStyles} from \"react-jss\";\n\nexport const useStyles = createUseStyles(theme => ({\n content: {\n width: \"100%\",\n \"& h1, h2, h3\": {\n color: theme.palette[\"neutral-800\"]\n },\n \"& a\": {\n color: theme.palette[\"primary-500\"]\n },\n \"& a[type='button']\": {\n appearance: \"none\",\n border: \"1px solid\",\n borderColor: theme.palette[\"primary-500\"],\n borderRadius: theme.borderRadius.radius1,\n color: theme.palette[\"primary-500\"],\n padding: `0 ${theme.spacing[16]}`,\n width: \"fit-content\",\n textDecoration: \"none\",\n whiteSpace: \"nowrap\"\n },\n \"& table\": {\n maxWidth: \"100vw\",\n \"@media (max-width: 600px)\": {\n fontSize: \"3vw\",\n \"& td\": {\n paddingLeft: \"2vw\",\n paddingRight: \"2vw\"\n }\n }\n },\n \"& li\": {\n marginBottom: \"0\",\n \"& p\": {\n marginBottom: \"0\"\n }\n },\n \"& ul\": {\n marginTop: \"0\"\n },\n \"& pre\": {\n padding: `${theme.spacing[\"4\"]} ${theme.spacing[\"12\"]}`,\n backgroundColor: theme.palette[\"neutral-050\"]\n }\n }\n}));\n\nexport const HTMLContent = ({content, className}) => {\n const classes = useStyles();\n return (\n \n );\n};\n\nconst Content = ({content, className}) => {\n const classes = useStyles();\n return
{content}
;\n};\n\nContent.defaultProps = {\n className: \"\"\n};\n\nContent.propTypes = {\n content: PropTypes.node.isRequired,\n className: PropTypes.string\n};\n\nHTMLContent.propTypes = Content.propTypes;\n\nexport default Content;\n","\"use strict\";\n\nexports.__esModule = true;\nexports.listenToIntersections = exports.getIO = exports.callbackIO = void 0;\nvar io;\nvar listeners = new WeakMap();\n/**\n * Executes each IntersectionObserver entries' callback.\n *\n * @param entries\n */\n\nvar callbackIO = function callbackIO(entries) {\n entries.forEach(function (entry) {\n if (listeners.has(entry.target)) {\n var callback = 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 callback();\n }\n }\n });\n};\n/**\n * Returns an IntersectionObserver instance if exists.\n *\n * @param rootMargin string The current rootMargin, defaults to 200px.\n * @return {IntersectionObserver|undefined}\n */\n\n\nexports.callbackIO = callbackIO;\n\nvar getIO = function getIO(rootMargin) {\n if (typeof io === \"undefined\" && typeof window !== \"undefined\" && window.IntersectionObserver) {\n io = new window.IntersectionObserver(callbackIO, {\n rootMargin: rootMargin\n });\n }\n\n return io;\n};\n/**\n * Registers IntersectionObserver callback on element.\n *\n * @param element Element The element to observe.\n * @param callback function Callback to call when intersecting.\n * @param rootMargin string The current rootMargin, defaults to 200px.\n * @return {Function}\n */\n\n\nexports.getIO = getIO;\n\nvar listenToIntersections = function listenToIntersections(element, callback, rootMargin) {\n if (rootMargin === void 0) {\n rootMargin = \"200px\";\n }\n\n var observer = getIO(rootMargin);\n\n if (observer) {\n observer.observe(element);\n listeners.set(element, callback);\n return function () {\n observer.unobserve(element);\n listeners[\"delete\"](element);\n };\n }\n\n return function () {};\n};\n\nexports.listenToIntersections = listenToIntersections;","\"use strict\";\n\nexports.__esModule = true;\nexports[\"default\"] = exports.getBackgroundStylesForSingleClass = exports.getStyleRules = exports.rulesForCssText = exports.getStyle = void 0;\n\nvar _HelperUtils = require(\"./HelperUtils\");\n\nvar getStyle = function getStyle(className) {\n var styleSheets = typeof window !== \"undefined\" ? window.document.styleSheets : [];\n\n for (var i = 0; i < styleSheets.length; i++) {\n var classes = void 0;\n\n try {\n classes = typeof styleSheets[i].rules !== 'undefined' ? styleSheets[i].rules : typeof styleSheets[i].cssRules !== 'undefined' ? styleSheets[i].cssRules : '';\n } catch (e) {}\n\n if (!classes) continue;\n var foundClass = Array.prototype.slice.call(classes).reduce(function (foundAcc, styleRule) {\n return styleRule.selectorText === className && foundAcc === \"\" ? styleRule : foundAcc;\n }, \"\");\n\n if (foundClass) {\n var resultingStyleText = foundClass.cssText ? foundClass.cssText : foundClass.style.cssText;\n return resultingStyleText.indexOf(foundClass.selectorText) === -1 ? foundClass.selectorText + \"{\" + resultingStyleText + \"}\" : resultingStyleText;\n }\n }\n};\n/**\n * Creates a temporary style element to read rules from.\n *\n * @param styleContent string CSS-Styles to apply\n * @return {*}\n */\n\n\nexports.getStyle = getStyle;\n\nvar rulesForCssText = function rulesForCssText(styleContent) {\n if (typeof document !== \"undefined\" && styleContent) {\n var doc = document.implementation.createHTMLDocument('');\n var styleElement = document.createElement('style');\n styleElement.textContent = styleContent; // The style element will only be parsed once it is added to a document.\n\n doc.body.appendChild(styleElement);\n return styleElement.sheet.cssRules;\n }\n\n return {};\n};\n/**\n * Fixes non-enumerable style rules in Firefox.\n *\n * @param cssStyleRules CSSStyleRules DOM-StyleRules-Object\n * @return {*}\n */\n\n\nexports.rulesForCssText = rulesForCssText;\n\nvar getStyleRules = function getStyleRules(cssStyleRules) {\n var styles = {};\n\n if (cssStyleRules.length > 0 && typeof cssStyleRules[0].style !== 'undefined') {\n // Fallback for Browsers without constructor.name (IE11).\n var constructorName = cssStyleRules[0].style.constructor.name || cssStyleRules[0].style.constructor.toString();\n\n switch (constructorName) {\n // For Firefox or IE11.\n case 'CSS2Properties':\n case '[object MSStyleCSSProperties]':\n Object.values(cssStyleRules[0].style).forEach(function (prop) {\n styles[(0, _HelperUtils.toCamelCase)(prop)] = cssStyleRules[0].style[prop];\n });\n break;\n\n case 'CSSStyleDeclaration':\n styles = cssStyleRules[0].style;\n break;\n\n default:\n console.error('Unknown style object prototype');\n break;\n }\n }\n\n return styles;\n};\n/**\n * Filters out Background Rules for a given class Name.\n *\n * @param className string The class to filter rules from\n * @return {{}}\n */\n\n\nexports.getStyleRules = getStyleRules;\n\nvar getBackgroundStylesForSingleClass = function getBackgroundStylesForSingleClass(className) {\n if ((0, _HelperUtils.isString)(className)) {\n var style = getStyle(\".\" + className);\n var cssStyleRules = rulesForCssText(style);\n\n if (cssStyleRules.length > 0 && typeof cssStyleRules[0].style !== 'undefined') {\n // Filter out background(-*) rules that contain a definition.\n return Object.keys(getStyleRules(cssStyleRules)).filter(function (key) {\n return key.indexOf('background') === 0 && cssStyleRules[0].style[key] !== '';\n }).reduce(function (newData, key) {\n newData[key] = cssStyleRules[0].style[key];\n return newData;\n }, {});\n }\n }\n\n return {};\n};\n/**\n * Uses the above to get all background(-*) rules from given class(es).\n *\n * @param className string|array className or array of classNames\n * @return {*}\n */\n\n\nexports.getBackgroundStylesForSingleClass = getBackgroundStylesForSingleClass;\n\nvar getBackgroundStyles = function getBackgroundStyles(className) {\n if (typeof window !== \"undefined\") {\n var classes = (0, _HelperUtils.stringToArray)(className);\n\n if (classes instanceof Array) {\n var classObjects = [];\n classes.forEach(function (item) {\n return classObjects.push(getBackgroundStylesForSingleClass(item));\n });\n return Object.assign.apply(Object, classObjects);\n }\n\n return getBackgroundStylesForSingleClass(className);\n }\n\n return {};\n};\n\nvar _default = getBackgroundStyles;\nexports[\"default\"] = _default;","var isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toOffset = require('../internals/to-offset');\nvar toIndexedObject = require('../internals/to-object');\nvar fails = require('../internals/fails');\n\nvar RangeError = global.RangeError;\nvar Int8Array = global.Int8Array;\nvar Int8ArrayPrototype = Int8Array && Int8Array.prototype;\nvar $set = Int8ArrayPrototype && Int8ArrayPrototype.set;\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS = !fails(function () {\n // eslint-disable-next-line es/no-typed-arrays -- required for testing\n var array = new Uint8ClampedArray(2);\n call($set, array, { length: 1, 0: 3 }, 1);\n return array[1] !== 3;\n});\n\n// https://bugs.chromium.org/p/v8/issues/detail?id=11294 and other\nvar TO_OBJECT_BUG = WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS && ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS && fails(function () {\n var array = new Int8Array(2);\n array.set(1);\n array.set('2', 1);\n return array[0] !== 0 || array[1] !== 2;\n});\n\n// `%TypedArray%.prototype.set` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set\nexportTypedArrayMethod('set', function set(arrayLike /* , offset */) {\n aTypedArray(this);\n var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);\n var src = toIndexedObject(arrayLike);\n if (WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS) return call($set, this, src, offset);\n var length = this.length;\n var len = lengthOfArrayLike(src);\n var index = 0;\n if (len + offset > length) throw RangeError('Wrong length');\n while (index < len) this[offset + index] = src[index++];\n}, !WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS || TO_OBJECT_BUG);\n","var classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = filterInvalidDOMProps;\nvar _htmlAttributes = require(\"html-attributes\");\nvar _htmlAttributes2 = _interopRequireDefault(_htmlAttributes);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar eventProps = {\n onCopy: true,\n onCut: true,\n onPaste: true,\n onLoad: true,\n onError: true,\n onWheel: true,\n onScroll: true,\n onCompositionEnd: true,\n onCompositionStart: true,\n onCompositionUpdate: true,\n onKeyDown: true,\n onKeyPress: true,\n onKeyUp: true,\n onFocus: true,\n onBlur: true,\n onChange: true,\n onInput: true,\n onSubmit: true,\n onClick: true,\n onContextMenu: true,\n onDoubleClick: true,\n onDrag: true,\n onDragEnd: true,\n onDragEnter: true,\n onDragExit: true,\n onDragLeave: true,\n onDragOver: true,\n onDragStart: true,\n onDrop: true,\n onMouseDown: true,\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseMove: true,\n onMouseOut: true,\n onMouseOver: true,\n onMouseUp: true,\n onSelect: true,\n onTouchCancel: true,\n onTouchEnd: true,\n onTouchMove: true,\n onTouchStart: true,\n onAnimationStart: true,\n onAnimationEnd: true,\n onAnimationIteration: true,\n onTransitionEnd: true\n};\nfunction isValidDOMProp(prop) {\n return eventProps[prop] || _htmlAttributes2.default[prop] || /^(data|aria)-/.test(prop);\n}\nfunction filterInvalidDOMProps(props) {\n var domProps = {};\n for (var prop in props) {\n if (props.hasOwnProperty(prop) && isValidDOMProp(prop)) {\n domProps[prop] = props[prop];\n }\n }\n return domProps;\n}","// eslint-disable-next-line es/no-typed-arrays -- safe\nmodule.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';\n","'use strict';\n\n/**\n * Converter\n *\n * @param {string|Array} srcAlphabet\n * @param {string|Array} dstAlphabet\n * @constructor\n */\nfunction Converter(srcAlphabet, dstAlphabet) {\n if (!srcAlphabet || !dstAlphabet || !srcAlphabet.length || !dstAlphabet.length) {\n throw new Error('Bad alphabet');\n }\n this.srcAlphabet = srcAlphabet;\n this.dstAlphabet = dstAlphabet;\n}\n\n/**\n * Convert number from source alphabet to destination alphabet\n *\n * @param {string|Array} number - number represented as a string or array of points\n *\n * @returns {string|Array}\n */\nConverter.prototype.convert = function (number) {\n var i,\n divide,\n newlen,\n numberMap = {},\n fromBase = this.srcAlphabet.length,\n toBase = this.dstAlphabet.length,\n length = number.length,\n result = typeof number === 'string' ? '' : [];\n if (!this.isValid(number)) {\n throw new Error('Number \"' + number + '\" contains of non-alphabetic digits (' + this.srcAlphabet + ')');\n }\n if (this.srcAlphabet === this.dstAlphabet) {\n return number;\n }\n for (i = 0; i < length; i++) {\n numberMap[i] = this.srcAlphabet.indexOf(number[i]);\n }\n do {\n divide = 0;\n newlen = 0;\n for (i = 0; i < length; i++) {\n divide = divide * fromBase + numberMap[i];\n if (divide >= toBase) {\n numberMap[newlen++] = parseInt(divide / toBase, 10);\n divide = divide % toBase;\n } else if (newlen > 0) {\n numberMap[newlen++] = 0;\n }\n }\n length = newlen;\n result = this.dstAlphabet.slice(divide, divide + 1).concat(result);\n } while (newlen !== 0);\n return result;\n};\n\n/**\n * Valid number with source alphabet\n *\n * @param {number} number\n *\n * @returns {boolean}\n */\nConverter.prototype.isValid = function (number) {\n var i = 0;\n for (; i < number.length; ++i) {\n if (this.srcAlphabet.indexOf(number[i]) === -1) {\n return false;\n }\n }\n return true;\n};\nmodule.exports = Converter;","var uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.combineArray = exports.filteredJoin = exports.hashString = exports.stringToArray = exports.toKebabCase = exports.toCamelCase = exports.hasImageArray = exports.convertProps = exports.stripRemainingProps = exports.isString = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _filterInvalidDomProps = _interopRequireDefault(require(\"filter-invalid-dom-props\"));\n\n/**\n * Tests a given value on being a string.\n *\n * @param value * Value to test\n * @return {boolean}\n */\nvar isString = function isString(value) {\n return Object.prototype.toString.call(value) === '[object String]';\n};\n/**\n * Strip BackgroundImage propTypes from remaining props to be passed to \n *\n * @param props\n * @return {Object}\n */\n\n\nexports.isString = isString;\n\nvar stripRemainingProps = function stripRemainingProps(props) {\n return (0, _filterInvalidDomProps[\"default\"])(props);\n};\n/**\n * Handle legacy names for image queries\n *\n * @param props\n * @return {Object}\n */\n\n\nexports.stripRemainingProps = stripRemainingProps;\n\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};\n/**\n * Checks if fluid or fixed are image arrays.\n *\n * @param props\n * @return {boolean}\n */\n\n\nexports.convertProps = convertProps;\n\nvar hasImageArray = function hasImageArray(props) {\n return props.fluid && Array.isArray(props.fluid) || props.fixed && Array.isArray(props.fixed);\n};\n/**\n * Converts CSS kebab-case strings to camel-cased js style rules.\n *\n * @param str string Rule to transform\n * @return {boolean|string}\n */\n\n\nexports.hasImageArray = hasImageArray;\n\nvar toCamelCase = function toCamelCase(str) {\n return isString(str) && str.toLowerCase().replace(/(?:^\\w|-|[A-Z]|\\b\\w)/g, function (letter, index) {\n return index === 0 ? letter.toLowerCase() : letter.toUpperCase();\n }).replace(/\\s|\\W+/g, '');\n};\n/**\n * Converts camel-cased js style rules to CSS kebab-case strings.\n *\n * @param str string Rule to transform\n * @return {boolean|string}\n */\n\n\nexports.toCamelCase = toCamelCase;\n\nvar toKebabCase = function toKebabCase(str) {\n return isString(str) && str.replace(/\\s|\\W+/g, '').replace(/[A-Z]/g, function (match) {\n return \"-\" + match.toLowerCase();\n });\n};\n/**\n * Splits a given string (e.g. from classname) to an array.\n *\n * @param str string|array String to split or return as array\n * @param delimiter string Delimiter on which to split str\n * @return {array|boolean} Returns (split) string as array, false on failure\n */\n\n\nexports.toKebabCase = toKebabCase;\n\nvar stringToArray = function stringToArray(str, delimiter) {\n if (delimiter === void 0) {\n delimiter = \" \";\n }\n\n if (str instanceof Array) {\n return str;\n }\n\n if (isString(str)) {\n if (str.includes(delimiter)) {\n return str.split(delimiter);\n }\n\n return [str];\n }\n\n return false;\n};\n/**\n * Hashes a String to a 32bit integer with the simple Java 8 hashCode() func.\n *\n * @param str string String to hash.\n * @return {number}\n */\n\n\nexports.stringToArray = stringToArray;\n\nvar hashString = function hashString(str) {\n return isString(str) && [].reduce.call(str, function (hash, item) {\n hash = (hash << 5) - hash + item.charCodeAt(0);\n return hash | 0;\n }, 0);\n};\n/**\n * As the name says, it filters out empty strings from an array and joins it.\n *\n * @param arrayToJoin array Array to join after filtering.\n * @return {string}\n */\n\n\nexports.hashString = hashString;\n\nvar filteredJoin = function filteredJoin(arrayToJoin) {\n return arrayToJoin.filter(function (item) {\n return item !== \"\";\n }).join();\n};\n/**\n * Combines two arrays while keeping fromArrays indexes & values.\n *\n * @param fromArray array Array the values shall be taken from.\n * @param toArray array Array to copy values into.\n * @return {array}\n */\n\n\nexports.filteredJoin = filteredJoin;\n\nvar combineArray = function combineArray(fromArray, toArray) {\n // Fallback for singular images.\n if (!Array.isArray(fromArray)) {\n return [fromArray];\n }\n\n return fromArray.map(function (item, index) {\n return item || toArray[index];\n });\n};\n\nexports.combineArray = combineArray;","/**\n * Created by Samuel on 6/4/2016.\n * Simple wrapper functions to produce shorter UUIDs for cookies, maybe everything?\n */\n\nvar anyBase = require('any-base');\nvar uuidV4 = require('uuid/v4');\nvar flickrBase58 = '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ';\nvar cookieBase90 = \"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'()*+-./:<=>?@[]^_`{|}~\";\nvar toFlickr;\n\n/**\n * Takes a UUID, strips the dashes, and translates.\n * @param {string} longId\n * @param {function(string)} translator\n * @returns {string}\n */\nfunction shortenUUID(longId, translator) {\n return translator(longId.toLowerCase().replace(/-/g, ''));\n}\n\n/**\n * Translate back to hex and turn back into UUID format, with dashes\n * @param {string} shortId\n * @param {function(string)} translator\n * @returns {string}\n */\nfunction enlargeUUID(shortId, translator) {\n var uu1 = translator(shortId);\n var leftPad = \"\";\n var m;\n\n // Pad out UUIDs beginning with zeros (any number shorter than 32 characters of hex)\n for (var i = 0, len = 32 - uu1.length; i < len; ++i) {\n leftPad += \"0\";\n }\n\n // Join the zero padding and the UUID and then slice it up with match\n m = (leftPad + uu1).match(/(\\w{8})(\\w{4})(\\w{4})(\\w{4})(\\w{12})/);\n\n // Accumulate the matches and join them.\n return [m[1], m[2], m[3], m[4], m[5]].join('-');\n}\nmodule.exports = function () {\n /**\n * @constructor\n * @param {string?} toAlphabet - Defaults to flickrBase58 if not provided\n * @returns {{new: (function()),\n * uuid: (function()),\n * fromUUID: (function(string)),\n * toUUID: (function(string)),\n * alphabet: (string)}}\n */\n function MakeConvertor(toAlphabet) {\n // Default to Flickr 58\n var useAlphabet = toAlphabet || flickrBase58;\n\n // UUIDs are in hex, so we translate to and from.\n var fromHex = anyBase(anyBase.HEX, useAlphabet);\n var toHex = anyBase(useAlphabet, anyBase.HEX);\n var generate = function generate() {\n return shortenUUID(uuidV4(), fromHex);\n };\n return {\n new: generate,\n generate: generate,\n uuid: uuidV4,\n fromUUID: function fromUUID(uuid) {\n return shortenUUID(uuid, fromHex);\n },\n toUUID: function toUUID(shortUuid) {\n return enlargeUUID(shortUuid, toHex);\n },\n alphabet: useAlphabet\n };\n }\n\n // Expose the constants for other purposes.\n MakeConvertor.constants = {\n flickrBase58: flickrBase58,\n cookieBase90: cookieBase90\n };\n\n // Expose the generic v4 UUID generator for convenience\n MakeConvertor.uuid = uuidV4;\n\n // Provide a generic generator\n MakeConvertor.generate = function () {\n if (!toFlickr) {\n // Generate on first use;\n toFlickr = anyBase(anyBase.HEX, flickrBase58);\n }\n return shortenUUID(uuidV4(), toFlickr);\n };\n return MakeConvertor;\n}();","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\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 return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.createNoScriptStyles = exports.createPseudoStyles = exports.presetBackgroundStyles = exports.fixOpacity = exports.setTransitionStyles = exports.kebabifyBackgroundStyles = exports.escapeClassNames = exports.fixClassName = exports.createPseudoElement = exports.resetComponentClassCache = exports.activateCacheForComponentClass = exports.inComponentClassCache = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _shortUuid = _interopRequireDefault(require(\"short-uuid\"));\n\nvar _HelperUtils = require(\"./HelperUtils\");\n\nvar _ImageUtils = require(\"./ImageUtils\");\n\nvar componentClassCache = Object.create({});\n/**\n * Cache component classes as we never know if a Component wasn't already set.\n *\n * @param className string className given by props\n * @return {*|boolean}\n */\n\nvar inComponentClassCache = function inComponentClassCache(className) {\n return componentClassCache[className] || false;\n};\n/**\n * Adds a component's classes to componentClassCache.\n *\n * @param className string className given by props\n */\n\n\nexports.inComponentClassCache = inComponentClassCache;\n\nvar activateCacheForComponentClass = function activateCacheForComponentClass(className) {\n if (className) {\n componentClassCache[className] = true;\n }\n};\n/**\n * Resets the componentClassCache (especially important for reliable tests).\n */\n\n\nexports.activateCacheForComponentClass = activateCacheForComponentClass;\n\nvar resetComponentClassCache = function resetComponentClassCache() {\n for (var className in componentClassCache) {\n delete componentClassCache[className];\n }\n};\n/**\n * Creates pseudo-element(s) for className(s).\n *\n * @param className string className given by props\n * @param classId string Deprecated classId\n * @param appendix string Pseudo-element to create, defaults to `:before`\n * @return {string}\n */\n\n\nexports.resetComponentClassCache = resetComponentClassCache;\n\nvar createPseudoElement = function createPseudoElement(className, classId, appendix) {\n if (classId === void 0) {\n classId = \"\";\n }\n\n if (appendix === void 0) {\n appendix = \":before\";\n }\n\n var escapedClassName = escapeClassNames(className);\n var classes = (0, _HelperUtils.stringToArray)(escapedClassName);\n var pseudoClasses = \"\";\n\n if (classes instanceof Array && classes.length > 0 && classes[0] !== \"\") {\n pseudoClasses = \".\" + classes.join('.') + appendix;\n }\n\n if (classId !== \"\") {\n pseudoClasses += (pseudoClasses && \",\\n\") + \".gatsby-background-image-\" + classId + appendix;\n }\n\n return pseudoClasses;\n};\n/**\n * Checks if an element with given className(s) already exists.\n *\n * @param className string Given className(s) e.g. from styled-components\n * @param addedClassName string A possible previously added className\n * @param props Object Given props by component\n * @return {*[]}\n */\n\n\nexports.createPseudoElement = createPseudoElement;\n\nvar fixClassName = function fixClassName(_ref) {\n var className = _ref.className,\n _ref$addedClassName = _ref.addedClassName,\n addedClassName = _ref$addedClassName === void 0 ? \"\" : _ref$addedClassName,\n props = (0, _objectWithoutPropertiesLoose2[\"default\"])(_ref, [\"className\", \"addedClassName\"]);\n // const escapedClassName = escapeClassNames(className)\n var convertedProps = (0, _HelperUtils.convertProps)(props);\n var elementExists = inComponentClassCache(className); // Extract imageData.\n\n var imageData = convertedProps.fluid ? Array.isArray(convertedProps.fluid) ? convertedProps.fluid[0] : convertedProps.fluid : Array.isArray(convertedProps.fixed) ? convertedProps.fixed[0] : convertedProps.fixed; // Add an additional class for multiple s.\n\n var additionalClassname = addedClassName || _shortUuid[\"default\"].generate(); // Create random \"uniquely hashed\" additionalClass if needed.\n\n\n var randomClass = \" gbi-\" + (0, _HelperUtils.hashString)(imageData && imageData.srcSet || className) + \"-\" + additionalClassname; // Should an element exist, add randomized class.\n\n var additionalClass = elementExists ? randomClass : \"\";\n var componentClassNames = (\"\" + (className || \"\") + (additionalClass || \"\")).trim(); // Add it to cache if it doesn't exist.\n\n if (!elementExists) activateCacheForComponentClass(className);\n return [componentClassNames, additionalClass];\n};\n/**\n * Escapes specialChars defined in gatsby-config.js in classNames to make\n * Tailwind CSS or suchlike usable (defaults to: `:/`).\n *\n * @param classNames classNames to escape.\n * @return {void | string|*}\n */\n\n\nexports.fixClassName = fixClassName;\n\nvar escapeClassNames = function escapeClassNames(classNames) {\n if (classNames) {\n var specialChars = typeof window !== \"undefined\" && window._gbiSpecialChars ? window._gbiSpecialChars : typeof __GBI_SPECIAL_CHARS__ !== \"undefined\" ? __GBI_SPECIAL_CHARS__ : ':/';\n var specialCharRegEx = new RegExp(\"[\" + specialChars + \"]\", 'g');\n return classNames.replace(specialCharRegEx, '\\\\$&');\n }\n\n return classNames;\n};\n/**\n * Converts a style object into CSS kebab-cased style rules.\n *\n * @param styles Object Style object to convert\n * @return {*}\n */\n\n\nexports.escapeClassNames = escapeClassNames;\n\nvar kebabifyBackgroundStyles = function kebabifyBackgroundStyles(styles) {\n if ((0, _HelperUtils.isString)(styles)) {\n return styles;\n }\n\n if (styles instanceof Object) {\n return Object.keys(styles).filter(function (key) {\n return key.indexOf('background') === 0 && styles[key] !== '';\n }).reduce(function (resultingStyles, key) {\n return \"\" + resultingStyles + (0, _HelperUtils.toKebabCase)(key) + \": \" + styles[key] + \";\\n\";\n }, \"\");\n }\n\n return \"\";\n};\n/**\n * Creates vendor prefixed background styles.\n *\n * @param transitionDelay string Time delay before transitioning\n * @param fadeIn boolean Should we transition?\n * @return {string}\n */\n\n\nexports.kebabifyBackgroundStyles = kebabifyBackgroundStyles;\n\nvar setTransitionStyles = function setTransitionStyles(transitionDelay, fadeIn) {\n if (transitionDelay === void 0) {\n transitionDelay = \"0.25s\";\n }\n\n if (fadeIn === void 0) {\n fadeIn = true;\n }\n\n return fadeIn ? \"transition: opacity 0.5s ease \" + transitionDelay + \";\" : \"transition: none;\";\n};\n/**\n * Prevent possible stacking order mismatch with opacity \"hack\".\n *\n * @param props Object Given props by component\n * @return {Object}\n */\n\n\nexports.setTransitionStyles = setTransitionStyles;\n\nvar fixOpacity = function fixOpacity(props) {\n var styledProps = (0, _extends2[\"default\"])({}, props);\n\n if (!styledProps.preserveStackingContext) {\n try {\n if (styledProps.style && styledProps.style.opacity) {\n if (isNaN(styledProps.style.opacity) || styledProps.style.opacity > 0.99) {\n styledProps.style.opacity = 0.99;\n }\n }\n } catch (e) {// Continue regardless of error\n }\n }\n\n return styledProps;\n};\n/**\n * Set some needed backgroundStyles.\n *\n * @param backgroundStyles object Special background styles to be spread\n * @return {Object}\n */\n\n\nexports.fixOpacity = fixOpacity;\n\nvar presetBackgroundStyles = function presetBackgroundStyles(backgroundStyles) {\n var defaultBackgroundStyles = {\n backgroundPosition: \"center\",\n backgroundRepeat: \"no-repeat\",\n backgroundSize: \"cover\"\n };\n return (0, _extends2[\"default\"])({}, defaultBackgroundStyles, {}, backgroundStyles);\n};\n/**\n * Creates styles for the changing pseudo-elements' backgrounds.\n *\n * @param classId string Pre 0.3.0 way to create pseudo-elements\n * @param className string One or more className(s)\n * @param transitionDelay string Time delay before transitioning\n * @param lastImage string The last image given\n * @param nextImage string The next image to show\n * @param afterOpacity number The opacity of the pseudo-element upfront\n * @param bgColor string A possible background-color to set\n * @param fadeIn boolean Should we transition?\n * @param backgroundStyles object Special background styles to be spread\n * @param style object Default style to be spread\n * @param finalImage boolean Have we reached the last image?\n * @return {string}\n */\n\n\nexports.presetBackgroundStyles = presetBackgroundStyles;\n\nvar createPseudoStyles = function createPseudoStyles(_ref2) {\n var classId = _ref2.classId,\n className = _ref2.className,\n transitionDelay = _ref2.transitionDelay,\n lastImage = _ref2.lastImage,\n nextImage = _ref2.nextImage,\n afterOpacity = _ref2.afterOpacity,\n bgColor = _ref2.bgColor,\n fadeIn = _ref2.fadeIn,\n backgroundStyles = _ref2.backgroundStyles,\n style = _ref2.style,\n finalImage = _ref2.finalImage;\n var pseudoBefore = createPseudoElement(className, classId);\n var pseudoAfter = createPseudoElement(className, classId, \":after\");\n return \"\\n \" + pseudoBefore + \",\\n \" + pseudoAfter + \" {\\n content: '';\\n display: block;\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n top: 0;\\n left: 0;\\n \" + (bgColor && \"background-color: \" + bgColor + \";\") + \"\\n \" + setTransitionStyles(transitionDelay, fadeIn) + \"\\n \" + kebabifyBackgroundStyles((0, _extends2[\"default\"])({}, backgroundStyles, {}, style)) + \"\\n }\\n \" + pseudoBefore + \" {\\n z-index: -100;\\n \" + (afterOpacity && nextImage ? \"background-image: \" + nextImage + \";\" : \"\") + \"\\n \" + (!afterOpacity && lastImage ? \"background-image: \" + lastImage + \";\" : \"\") + \"\\n opacity: \" + afterOpacity + \"; \\n }\\n \" + pseudoAfter + \" {\\n z-index: -101;\\n \" + (!afterOpacity && nextImage ? \"background-image: \" + nextImage + \";\" : \"\") + \"\\n \" + (afterOpacity && lastImage ? \"background-image: \" + lastImage + \";\" : \"\") + \"\\n \" + (finalImage ? \"opacity: \" + Number(!afterOpacity) + \";\" : \"\") + \"\\n }\\n \";\n};\n/**\n * Creates styles for the noscript element.\n *\n * @param classId string Pre 0.3.0 way to create pseudo-elements\n * @param className string One or more className(s)\n * @param image string||array Base data for one or multiple Images\n * @return {string}\n */\n\n\nexports.createPseudoStyles = createPseudoStyles;\n\nvar createNoScriptStyles = function createNoScriptStyles(_ref3) {\n var classId = _ref3.classId,\n className = _ref3.className,\n image = _ref3.image;\n\n if (image) {\n var returnArray = Array.isArray(image);\n var addUrl = false;\n var allSources = (0, _ImageUtils.getCurrentFromData)({\n data: image,\n propName: \"src\",\n checkLoaded: false,\n addUrl: addUrl,\n returnArray: returnArray\n });\n var sourcesAsUrl = (0, _ImageUtils.getUrlString)({\n imageString: allSources,\n hasImageUrls: true,\n returnArray: returnArray\n });\n var sourcesAsUrlWithCSS = \"\";\n\n if (returnArray) {\n var cssStrings = (0, _ImageUtils.getCurrentFromData)({\n data: image,\n propName: \"CSS_STRING\",\n addUrl: false,\n returnArray: returnArray\n });\n sourcesAsUrlWithCSS = (0, _HelperUtils.filteredJoin)((0, _HelperUtils.combineArray)(sourcesAsUrl, cssStrings));\n }\n\n var pseudoBefore = createPseudoElement(className, classId);\n return \"\\n \" + pseudoBefore + \" {\\n opacity: 1;\\n background-image: \" + (sourcesAsUrlWithCSS || sourcesAsUrl) + \";\\n }\";\n }\n\n return \"\";\n};\n\nexports.createNoScriptStyles = createNoScriptStyles;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var rng = require('./lib/rng');\nvar bytesToUuid = require('./lib/bytesToUuid');\nfunction v4(options, buf, offset) {\n var i = buf && offset || 0;\n if (typeof options == 'string') {\n buf = options === 'binary' ? new Array(16) : null;\n options = null;\n }\n options = options || {};\n var rnds = options.random || (options.rng || rng)();\n\n // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80;\n\n // Copy bytes to buffer, if provided\n if (buf) {\n for (var ii = 0; ii < 16; ++ii) {\n buf[i + ii] = rnds[ii];\n }\n }\n return buf || bytesToUuid(rnds);\n}\nmodule.exports = v4;"],"sourceRoot":""}