-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path5-66a75c225afaec2e9e37.js.map
1 lines (1 loc) · 154 KB
/
5-66a75c225afaec2e9e37.js.map
1
{"version":3,"sources":["webpack:///./node_modules/gatsby-background-image/HelperUtils.js","webpack:///./node_modules/gatsby-background-image/ImageUtils.js","webpack:///./node_modules/react-helmet/lib/HelmetConstants.js","webpack:///./node_modules/gatsby-background-image/index.js","webpack:///./node_modules/gatsby-background-image/BackgroundUtils.js","webpack:///./node_modules/gatsby-background-image/StyleUtils.js","webpack:///./node_modules/gatsby-background-image/IntersectionObserverUtils.js","webpack:///./node_modules/react-helmet/lib/Helmet.js","webpack:///./node_modules/react-side-effect/lib/index.js","webpack:///./node_modules/exenv/index.js","webpack:///./node_modules/shallowequal/index.js","webpack:///./node_modules/react-fast-compare/index.js","webpack:///./node_modules/react-helmet/lib/HelmetUtils.js"],"names":["_interopRequireDefault","__webpack_require__","exports","__esModule","combineArray","filteredJoin","hashString","stringToArray","toKebabCase","toCamelCase","hasImageArray","convertProps","stripRemainingProps","isString","_extends2","gbiPropTypes","value","Object","prototype","toString","call","props","remainingProps","forEach","propTypesKey","hasOwnProperty","convertedProps","resolutions","fixed","sizes","fluid","Array","isArray","str","toLowerCase","replace","letter","index","toUpperCase","match","delimiter","includes","split","reduce","hash","item","charCodeAt","arrayToJoin","filter","join","fromArray","toArray","map","imageLoaded","imageReferenceCompleted","createDummyImageArray","initialBgImage","imageArrayPropsChanged","imagePropsChanged","getUrlString","getCurrentFromData","switchImageSettings","noscriptImg","activateMultiplePictureRefs","activatePictureRef","createMultiplePictureRefs","createPictureRef","hasPictureElement","resetImageCache","activateCacheForMultipleImages","activateCacheForImage","allInImageCache","inImageCache","_HelperUtils","imageCache","create","src","every","imageData","prop","HTMLPictureElement","window","onLoad","img","Image","onload","complete","addEventListener","onError","crossOrigin","critical","isVisible","imageRef","pic","document","createElement","srcSetWebp","sourcesWebP","type","srcset","appendChild","srcSet","imageRefs","title","alt","width","height","opacity","transitionDelay","innerImage","_ref","nextImage","nextImageArray","image","bgImage","state","currentSources","data","propName","returnArray","lastImage","addUrl","imgLoaded","dummyArray","length","tracedSVG","base64","afterOpacity","imageState","currentSrc","newImageSettings","_ref2","_ref2$addUrl","_ref2$returnArray","imageString","dataElement","_ref3","_ref3$tracedSVG","_ref3$addUrl","_ref3$returnArray","stringArray","currentString","currentReturnString","returnString","prevProps","isPropsFluidArray","isPrevPropsFluidArray","isPropsFixedArray","isPrevPropsFixedArray","withDummies","initialImage","dummyImageURI","fill","singleImageRef","naturalWidth","naturalHeight","ATTRIBUTE_NAMES","BODY","HTML","TITLE","TAG_NAMES","BASE","HEAD","LINK","META","NOSCRIPT","SCRIPT","STYLE","REACT_TAG_MAP","VALID_TAG_NAMES","keys","name","TAG_PROPERTIES","CHARSET","CSS_TEXT","HREF","HTTPEQUIV","INNER_HTML","ITEM_PROP","NAME","PROPERTY","REL","SRC","accesskey","charset","class","contenteditable","contextmenu","http-equiv","itemprop","tabindex","HELMET_PROPS","DEFAULT_TITLE","DEFER","ENCODE_SPECIAL_CHARACTERS","ON_CHANGE_CLIENT_STATE","TITLE_TEMPLATE","HTML_TAG_MAP","obj","key","SELF_CLOSING_TAGS","HELMET_ATTRIBUTE","_objectWithoutPropertiesLoose2","_assertThisInitialized2","_inheritsLoose2","_defineProperty2","_react","_propTypes","_BackgroundUtils","_ImageUtils","_StyleUtils","_IntersectionObserverUtils","BackgroundImage","_React$Component","_this","this","imageInCache","onStartLoad","wasCached","setState","imgCached","IOSupported","fadeIn","seenBefore","IntersectionObserver","hasNoScript","currentClassNames","fixClassName","backgroundStyles","presetBackgroundStyles","className","handleImageLoaded","bind","handleRef","_proto","componentDidMount","componentDidUpdate","_this2","componentWillUnmount","currentImageRef","cleanUpListeners","ref","listenToIntersections","intersectionListener","render","noScriptImageData","_fixOpacity","fixOpacity","_fixOpacity$style","style","backgroundColor","durationFadeIn","Tag","children","_fixOpacity$classId","classId","Math","random","substr","bgColor","shouldFadeIn","divStyle","position","overflow","display","pseudoStyles","createPseudoStyles","componentKey","JSON","stringify","dangerouslySetInnerHTML","__html","Component","defaultProps","fixedObject","shape","number","isRequired","string","srcWebp","fluidObject","aspectRatio","propTypes","oneOfType","arrayOf","bool","object","array","func","_default","getBackgroundStylesForSingleClass","getStyleRules","rulesForCssText","getStyle","styleSheets","i","classes","rules","cssRules","e","foundClass","slice","foundAcc","styleRule","selectorText","resultingStyleText","cssText","indexOf","styleContent","doc","implementation","createHTMLDocument","styleElement","textContent","body","sheet","cssStyleRules","styles","constructor","values","console","error","newData","classObjects","push","assign","apply","setTransitionStyles","kebabifyBackgroundStyles","createPseudoElement","resetComponentClassCache","activateCacheForComponentClass","inComponentClassCache","componentClassCache","appendix","pseudoClasses","elementExists","randomClass","componentClassNames","trim","resultingStyles","styledProps","isNaN","backgroundPosition","backgroundRepeat","backgroundSize","pseudoBefore","pseudoAfter","io","getIO","callbackIO","listeners","WeakMap","entries","entry","has","target","callback","get","isIntersecting","intersectionRatio","unobserve","rootMargin","element","observer","observe","set","Helmet","undefined","_extends","arguments","source","_createClass","defineProperties","descriptor","enumerable","configurable","writable","defineProperty","Constructor","protoProps","staticProps","_react2","_propTypes2","_reactSideEffect2","_reactFastCompare2","_HelmetUtils","_HelmetConstants","default","_objectWithoutProperties","_class","_temp","HelmetSideEffects","reducePropsToState","handleClientStateChange","mapStateOnServer","HelmetExport","HelmetWrapper","instance","TypeError","_classCallCheck","self","ReferenceError","_possibleConstructorReturn","subClass","superClass","setPrototypeOf","__proto__","_inherits","shouldComponentUpdate","nextProps","mapNestedChildrenToProps","child","nestedChildren","innerHTML","Error","flattenArrayTypeChildren","arrayTypeChildren","newChildProps","concat","mapObjectTypeChildren","_extends3","_extends4","newProps","titleAttributes","bodyAttributes","htmlAttributes","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_extends5","warnOnInvalidChildren","mapChildrenToProps","Children","_child$props","childProps","convertReactPropstoHtmlAttributes","_props","canUseDOM","base","node","defaultTitle","defer","encodeSpecialCharacters","link","meta","noscript","onChangeClientState","script","titleTemplate","peek","rewind","mappedState","baseTag","linkTags","metaTags","noscriptTags","scriptTags","styleTags","renderStatic","_interopDefault","ex","React","React__default","ExecutionEnvironment","shallowEqual","module","handleStateChangeOnClient","WrappedComponent","mountedInstances","emitChange","SideEffect","_Component","recordedState","componentWillMount","splice","displayName","getDisplayName","__WEBPACK_AMD_DEFINE_RESULT__","canUseWorkers","Worker","canUseEventListeners","attachEvent","canUseViewport","screen","objA","objB","compare","compareContext","ret","keysA","keysB","bHasOwnProperty","idx","valueA","valueB","keyList","hasProp","hasElementType","Element","a","b","equal","arrA","arrB","dateA","Date","dateB","getTime","regexpA","RegExp","regexpB","$$typeof","message","warn","global","requestAnimationFrame","_typeof","Symbol","iterator","_objectAssign2","clock","String","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","tagAttrs","current","getBaseTagFromPropsList","primaryAttributes","reverse","innermostBaseTag","tag","lowerCaseAttributeKey","getTagsFromPropsList","tagName","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","tagUnion","property","rafPolyfill","now","currentTime","setTimeout","cafPolyfill","id","clearTimeout","webkitRequestAnimationFrame","mozRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","msg","_helmetCallback","commitTagChanges","newState","cb","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","attributes","elementTag","getElementsByTagName","helmetAttributeString","getAttribute","helmetAttributes","attributesToRemove","attributeKeys","attribute","setAttribute","indexToSave","_i","removeAttribute","tags","headElement","head","querySelector","tagNodes","querySelectorAll","indexToDelete","newElement","styleSheet","createTextNode","some","existingTag","isEqualNode","parentNode","removeChild","generateElementAttributesAsString","attr","convertElementAttributestoReactProps","initProps","getMethodsForTag","encode","toComponent","_initProps","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","content","generateTagsAsReactComponent","attributeHtml","tagContent","isSelfClosing","generateTagsAsString","initAttributes","_ref$title"],"mappings":"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","file":"5-66a75c225afaec2e9e37.js","sourcesContent":["\"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 _ImageUtils = require(\"./ImageUtils\");\n\n/**\n * Mirror of BackgroundImage.propTypes. Keep in SYNC!\n *\n * @type {Object}\n */\nvar gbiPropTypes = [\"resolutions\", \"sizes\", \"fixed\", \"fluid\", \"fadeIn\", \"durationFadeIn\", \"title\", \"id\", \"alt\", \"className\", \"critical\", \"crossOrigin\", \"style\", \"backgroundColor\", \"onLoad\", \"onError\", \"onStartLoad\", \"Tag\", \"classId\"];\n/**\n * Tests a given value on being a string.\n *\n * @param value * Value to test\n * @return {boolean}\n */\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 <Tag />\n *\n * @param props\n * @return {Object}\n */\n\n\nexports.isString = isString;\n\nvar stripRemainingProps = function stripRemainingProps(props) {\n var remainingProps = (0, _extends2[\"default\"])({}, props);\n gbiPropTypes.forEach(function (propTypesKey) {\n if (Object.prototype.hasOwnProperty.call(remainingProps, propTypesKey)) {\n delete remainingProps[propTypesKey];\n }\n });\n return remainingProps;\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 return fromArray.map(function (item, index) {\n return item || toArray[index];\n });\n};\n\nexports.combineArray = combineArray;","\"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.noscriptImg = 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 */\n\n\nexports.allInImageCache = allInImageCache;\n\nvar activateCacheForImage = function activateCacheForImage(props) {\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 * @return {null|Array|*}\n */\n\n\nexports.createMultiplePictureRefs = createMultiplePictureRefs;\n\nvar activatePictureRef = function activatePictureRef(imageRef, props) {\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);\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 if (hasPictureElement()) {\n var pic = document.createElement('picture');\n\n if (imageData.srcSetWebp) {\n var sourcesWebP = document.createElement('source');\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 }\n\n imageRef.srcset = imageData.srcSet ? imageData.srcSet : \"\";\n imageRef.src = imageData.src ? imageData.src : \"\";\n return imageRef;\n }\n }\n\n return null;\n};\n/**\n * Creates multiple picture elements.\n *\n * @param imageRefs\n * @param props\n * @return {Array||null}\n */\n\n\nexports.activatePictureRef = activatePictureRef;\n\nvar activateMultiplePictureRefs = function activateMultiplePictureRefs(imageRefs, props) {\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 }));\n } else {\n return activatePictureRef(imageRef, (0, _extends2[\"default\"])({}, convertedProps, {\n fixed: convertedProps.fixed[index]\n }));\n }\n });\n};\n/**\n * Create basic image for a noscript event.\n *\n * @param props\n * @return {string}\n */\n\n\nexports.activateMultiplePictureRefs = activateMultiplePictureRefs;\n\nvar noscriptImg = function noscriptImg(props) {\n // Check if prop exists before adding each attribute to the string output below to prevent\n // HTML validation issues caused by empty values like width=\"\" and height=\"\"\n var src = props.src ? \"src=\\\"\" + props.src + \"\\\" \" : \"src=\\\"\\\" \"; // required attribute\n\n var sizes = props.sizes ? \"sizes=\\\"\" + props.sizes + \"\\\" \" : \"\";\n var srcSetWebp = props.srcSetWebp ? \"<source type='image/webp' srcset=\\\"\" + props.srcSetWebp + \"\\\" \" + sizes + \"/>\" : \"\";\n var srcSet = props.srcSet ? \"srcset=\\\"\" + props.srcSet + \"\\\" \" : \"\";\n var title = props.title ? \"title=\\\"\" + props.title + \"\\\" \" : \"\";\n var alt = props.alt ? \"alt=\\\"\" + props.alt + \"\\\" \" : \"alt=\\\"\\\" \"; // required attribute\n\n var width = props.width ? \"width=\\\"\" + props.width + \"\\\" \" : \"\";\n var height = props.height ? \"height=\\\"\" + props.height + \"\\\" \" : \"\";\n var opacity = props.opacity ? props.opacity : \"1\";\n var transitionDelay = props.transitionDelay ? props.transitionDelay : \"0.5s\";\n var crossOrigin = props.crossOrigin ? \"crossorigin=\\\"\" + props.crossOrigin + \"\\\" \" : \"\"; // Prevent adding HTMLPictureElement if it isn't supported (e.g. IE11),\n // but don't prevent it during SSR.\n\n var innerImage = \"<img \" + width + height + sizes + srcSet + src + alt + title + crossOrigin + \"style=\\\"position:absolute;top:0;left:0;z-index:-1;transition:opacity 0.5s;transition-delay:\" + transitionDelay + \";opacity:\" + opacity + \";width:100%;height:100%;object-fit:cover;object-position:center\\\"/>\";\n return hasPictureElement() ? \"<picture>\" + srcSetWebp + innerImage + \"</picture>\" : innerImage;\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.noscriptImg = noscriptImg;\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 }); // Backup bgImage to lastImage.\n\n var returnArray = Array.isArray(image);\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;\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 } else {\n // Should we still have no nextImage it might be because currentSrc is missing.\n nextImage = (0, _HelperUtils.combineArray)(getCurrentFromData({\n data: imageRef,\n propName: \"src\",\n returnArray: returnArray\n }), nextImage);\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 }\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 });\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 // Add nextImageArray for bgImage to newImageSettings if exists.\n\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 * @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 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` is needed, check image load completion first.\n if (propName === \"currentSrc\") {\n return imageLoaded(dataElement) && 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 (propName === \"currentSrc\" && propName in data) {\n return getUrlString({\n imageString: imageLoaded(data) && data[propName] || \"\"\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 * @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\n if (Array.isArray(imageString)) {\n var stringArray = imageString.map(function (currentString) {\n var currentReturnString = tracedSVG && currentString ? \"\\\"\" + currentString + \"\\\"\" : currentString;\n return addUrl && currentString ? \"url(\" + currentReturnString + \")\" : currentReturnString;\n });\n return returnArray ? stringArray : (0, _HelperUtils.filteredJoin)(stringArray);\n } else {\n var returnString = tracedSVG && imageString ? \"\\\"\" + 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.every(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.every(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;","exports.__esModule = true;\nvar ATTRIBUTE_NAMES = exports.ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\n\nvar TAG_NAMES = exports.TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\n\nvar VALID_TAG_NAMES = exports.VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\n\nvar TAG_PROPERTIES = exports.TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\"\n};\n\nvar REACT_TAG_MAP = exports.REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\n\nvar HELMET_PROPS = exports.HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\n\nvar HTML_TAG_MAP = exports.HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\n\nvar SELF_CLOSING_TAGS = exports.SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\n\nvar HELMET_ATTRIBUTE = exports.HELMET_ATTRIBUTE = \"data-react-helmet\";","\"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\n/**\n * Main Lazy-loading React background-image component\n * with optional support for the blur-up effect.\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);\n\n _this.setState({\n isVisible: true,\n imageState: _this.state.imageState + 1\n }, function () {\n _this.setState({\n imgLoaded: imageInCache,\n imgCached: !!_this.imageRef.currentSrc,\n imageState: _this.state.imageState + 1\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 (needed for multiple instances).\n\n var currentClassNames = (0, _StyleUtils.fixClassName)(props);\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 // Preset backgroundStyles (e.g. during SSR or gatsby build).\n\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); // 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\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 this.setState({\n isVisible: imageInCache || this.props.critical,\n imgLoaded: imageInCache // currentClassNames:\n // 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 if (this.state.IOSupported && ref) {\n this.cleanUpListeners = (0, _IntersectionObserverUtils.listenToIntersections)(ref, this.intersectionListener);\n }\n };\n\n _proto.handleImageLoaded = function handleImageLoaded() {\n (0, _ImageUtils.activateCacheForImage)(this.props);\n this.setState({\n imgLoaded: true,\n imageState: this.state.imageState + 1\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)),\n title = _fixOpacity.title,\n alt = _fixOpacity.alt,\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, [\"title\", \"alt\", \"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\";\n var divStyle = (0, _extends2[\"default\"])({\n position: \"relative\",\n overflow: \"hidden\",\n opacity: 0.99\n }, style); // 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 (the next lastImage) to available newImageSettings or fallback.\n\n this.bgImage = newImageSettings.nextImageArray || newImageSettings.nextImage || this.bgImage;\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)); // console.table(newImageSettings)\n // console.log(pseudoStyles)\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 title: title,\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\", {\n dangerouslySetInnerHTML: {\n __html: (0, _ImageUtils.noscriptImg)((0, _extends2[\"default\"])({\n alt: alt,\n title: title\n }, divStyle.width && divStyle.width, divStyle.height && divStyle.height, noScriptImageData))\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 alt: \"\",\n title: \"\",\n Tag: \"div\"\n};\n\nvar fixedObject = _propTypes[\"default\"].shape({\n width: _propTypes[\"default\"].number.isRequired,\n height: _propTypes[\"default\"].number.isRequired,\n src: _propTypes[\"default\"].string.isRequired,\n srcSet: _propTypes[\"default\"].string.isRequired,\n base64: _propTypes[\"default\"].string,\n tracedSVG: _propTypes[\"default\"].string,\n srcWebp: _propTypes[\"default\"].string,\n srcSetWebp: _propTypes[\"default\"].string\n});\n\nvar fluidObject = _propTypes[\"default\"].shape({\n aspectRatio: _propTypes[\"default\"].number.isRequired,\n src: _propTypes[\"default\"].string.isRequired,\n srcSet: _propTypes[\"default\"].string.isRequired,\n sizes: _propTypes[\"default\"].string.isRequired,\n base64: _propTypes[\"default\"].string,\n tracedSVG: _propTypes[\"default\"].string,\n srcWebp: _propTypes[\"default\"].string,\n srcSetWebp: _propTypes[\"default\"].string\n});\n\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 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\"].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\"].string,\n classId: _propTypes[\"default\"].string\n};\nvar _default = BackgroundImage;\nexports[\"default\"] = _default;","\"use strict\";\n\nexports.__esModule = true;\nexports[\"default\"] = exports.getBackgroundStylesForSingleClass = exports.getStyleRules = exports.rulesForCssText = exports.getStyle = void 0;\n\nvar _HelperUtils = require(\"./HelperUtils\");\n\n/**\n * Gets styles by a class name.\n *\n * @notice The className has to exactly match the CSS class\n * @param className string\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;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.createPseudoStyles = exports.presetBackgroundStyles = exports.fixOpacity = exports.setTransitionStyles = exports.kebabifyBackgroundStyles = 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 _HelperUtils = require(\"./HelperUtils\");\n\nvar componentClassCache = Object.create({});\n/**\n * Cache component classes as we never know if a Component wasn't already set.\n * @param className\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 * @param className\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 classes = (0, _HelperUtils.stringToArray)(className);\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 * @param className string Given className(s) e.g. from styled-components.\n * @param props\n * @return {string}\n */\n\n\nexports.createPseudoElement = createPseudoElement;\n\nvar fixClassName = function fixClassName(_ref) {\n var className = _ref.className,\n props = (0, _objectWithoutPropertiesLoose2[\"default\"])(_ref, [\"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; // Create random \"uniquely hashed\" additionalClass if needed.\n\n var randomClass = \" gbi-\" + (0, _HelperUtils.hashString)(imageData && imageData.srcSet || className); // 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 !elementExists && activateCacheForComponentClass(className);\n return componentClassNames;\n};\n/**\n * Converts a style object into CSS kebab-cased style rules.\n *\n * @param styles\n * @return {*}\n */\n\n\nexports.fixClassName = fixClassName;\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\n * @param fadeIn\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\n * @return {Object}\n */\n\n\nexports.setTransitionStyles = setTransitionStyles;\n\nvar fixOpacity = function fixOpacity(props) {\n var styledProps = (0, _extends2[\"default\"])({}, props);\n\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 return styledProps;\n};\n/**\n * Set some needed backgroundStyles.\n *\n * @param backgroundStyles\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\n * @param lastImage string\n * @param nextImage string\n * @param afterOpacity number\n * @param bgColor string\n * @param fadeIn boolean\n * @param backgroundStyles object\n * @param style object\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 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 }\\n \";\n};\n\nexports.createPseudoStyles = createPseudoStyles;","\"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 * @return {IntersectionObserver|undefined}\n */\n\n\nexports.callbackIO = callbackIO;\n\nvar getIO = function getIO() {\n if (typeof io === \"undefined\" && typeof window !== \"undefined\" && window.IntersectionObserver) {\n io = new window.IntersectionObserver(callbackIO, {\n rootMargin: \"200px\"\n });\n }\n\n return io;\n};\n/**\n * Registers IntersectionObserver callback on element.\n *\n * @param element\n * @param callback\n * @return {Function}\n */\n\n\nexports.getIO = getIO;\n\nvar listenToIntersections = function listenToIntersections(element, callback) {\n var observer = getIO();\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;","exports.__esModule = true;\nexports.Helmet = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactSideEffect = require(\"react-side-effect\");\n\nvar _reactSideEffect2 = _interopRequireDefault(_reactSideEffect);\n\nvar _reactFastCompare = require(\"react-fast-compare\");\n\nvar _reactFastCompare2 = _interopRequireDefault(_reactFastCompare);\n\nvar _HelmetUtils = require(\"./HelmetUtils.js\");\n\nvar _HelmetConstants = require(\"./HelmetConstants.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n _inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n _classCallCheck(this, HelmetWrapper);\n\n return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !(0, _reactFastCompare2.default)(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case _HelmetConstants.TAG_NAMES.SCRIPT:\n case _HelmetConstants.TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case _HelmetConstants.TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _extends2;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n\n return _extends({}, arrayTypeChildren, (_extends2 = {}, _extends2[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _extends2));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _extends3, _extends4;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case _HelmetConstants.TAG_NAMES.TITLE:\n return _extends({}, newProps, (_extends3 = {}, _extends3[child.type] = nestedChildren, _extends3.titleAttributes = _extends({}, newChildProps), _extends3));\n\n case _HelmetConstants.TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case _HelmetConstants.TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_extends4 = {}, _extends4[child.type] = _extends({}, newChildProps), _extends4));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _extends5;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_extends5 = {}, _extends5[arrayChildName] = arrayTypeChildren[arrayChildName], _extends5));\n });\n\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!_HelmetConstants.VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return (0, _HelmetUtils.warn)(\"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return (0, _HelmetUtils.warn)(\"Only elements types \" + _HelmetConstants.VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``}</\" + child.type + \"> ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n\n _react2.default.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = _objectWithoutProperties(_child$props, [\"children\"]);\n\n var newChildProps = (0, _HelmetUtils.convertReactPropstoHtmlAttributes)(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case _HelmetConstants.TAG_NAMES.LINK:\n case _HelmetConstants.TAG_NAMES.META:\n case _HelmetConstants.TAG_NAMES.NOSCRIPT:\n case _HelmetConstants.TAG_NAMES.SCRIPT:\n case _HelmetConstants.TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = _objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return _react2.default.createElement(Component, newProps);\n };\n\n _createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n\n\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \"<img src='http://mysite.com/js/test.js'\"}]\n * @param {Function} onChangeClientState: \"(newState) => console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n\n return HelmetWrapper;\n }(_react2.default.Component), _class.propTypes = {\n base: _propTypes2.default.object,\n bodyAttributes: _propTypes2.default.object,\n children: _propTypes2.default.oneOfType([_propTypes2.default.arrayOf(_propTypes2.default.node), _propTypes2.default.node]),\n defaultTitle: _propTypes2.default.string,\n defer: _propTypes2.default.bool,\n encodeSpecialCharacters: _propTypes2.default.bool,\n htmlAttributes: _propTypes2.default.object,\n link: _propTypes2.default.arrayOf(_propTypes2.default.object),\n meta: _propTypes2.default.arrayOf(_propTypes2.default.object),\n noscript: _propTypes2.default.arrayOf(_propTypes2.default.object),\n onChangeClientState: _propTypes2.default.func,\n script: _propTypes2.default.arrayOf(_propTypes2.default.object),\n style: _propTypes2.default.arrayOf(_propTypes2.default.object),\n title: _propTypes2.default.string,\n titleAttributes: _propTypes2.default.object,\n titleTemplate: _propTypes2.default.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = (0, _HelmetUtils.mapStateOnServer)({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = (0, _reactSideEffect2.default)(_HelmetUtils.reducePropsToState, _HelmetUtils.handleClientStateChange, _HelmetUtils.mapStateOnServer)(NullComponent);\n\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\n\nexports.Helmet = HelmetExport;\nexports.default = HelmetExport;","'use strict';\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar React = require('react');\nvar React__default = _interopDefault(React);\nvar ExecutionEnvironment = _interopDefault(require('exenv'));\nvar shallowEqual = _interopDefault(require('shallowequal'));\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state = void 0;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect = function (_Component) {\n _inherits(SideEffect, _Component);\n\n function SideEffect() {\n _classCallCheck(this, SideEffect);\n\n return _possibleConstructorReturn(this, _Component.apply(this, arguments));\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n // Expose canUseDOM so tests can monkeypatch it\n\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n SideEffect.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !shallowEqual(nextProps, this.props);\n };\n\n SideEffect.prototype.componentWillMount = function componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n SideEffect.prototype.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n SideEffect.prototype.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n SideEffect.prototype.render = function render() {\n return React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.Component);\n\n SideEffect.displayName = 'SideEffect(' + getDisplayName(WrappedComponent) + ')';\n SideEffect.canUseDOM = ExecutionEnvironment.canUseDOM;\n\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;\n","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","//\n\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (ret !== void 0) {\n return !!ret;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n\n // Test for A's keys different from B.\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (ret === false || (ret === void 0 && valueA !== valueB)) {\n return false;\n }\n }\n\n return true;\n};\n","'use strict';\n\nvar isArray = Array.isArray;\nvar keyList = Object.keys;\nvar hasProp = Object.prototype.hasOwnProperty;\nvar hasElementType = typeof Element !== 'undefined';\n\nfunction equal(a, b) {\n // fast-deep-equal index.js 2.0.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n var arrA = isArray(a)\n , arrB = isArray(b)\n , i\n , length\n , key;\n\n if (arrA && arrB) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n if (arrA != arrB) return false;\n\n var dateA = a instanceof Date\n , dateB = b instanceof Date;\n if (dateA != dateB) return false;\n if (dateA && dateB) return a.getTime() == b.getTime();\n\n var regexpA = a instanceof RegExp\n , regexpB = b instanceof RegExp;\n if (regexpA != regexpB) return false;\n if (regexpA && regexpB) return a.toString() == b.toString();\n\n var keys = keyList(a);\n length = keys.length;\n\n if (length !== keyList(b).length)\n return false;\n\n for (i = length; i-- !== 0;)\n if (!hasProp.call(b, keys[i])) return false;\n // end fast-deep-equal\n\n // start react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element && b instanceof Element)\n return a === b;\n\n // custom handling for React\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (key === '_owner' && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of a react element\n continue;\n } else {\n // all other properties should be traversed as usual\n if (!equal(a[key], b[key])) return false;\n }\n }\n // end react-fast-compare\n\n // fast-deep-equal index.js 2.0.1\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function exportedEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message && error.message.match(/stack|recursion/i)) || (error.number === -2146828260)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('Warning: react-fast-compare does not handle circular references.', error.name, error.message);\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","exports.__esModule = true;\nexports.warn = exports.requestAnimationFrame = exports.reducePropsToState = exports.mapStateOnServer = exports.handleClientStateChange = exports.convertReactPropstoHtmlAttributes = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _objectAssign = require(\"object-assign\");\n\nvar _objectAssign2 = _interopRequireDefault(_objectAssign);\n\nvar _HelmetConstants = require(\"./HelmetConstants.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&\").replace(/</g, \"<\").replace(/>/g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, _HelmetConstants.TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, _HelmetConstants.HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, _HelmetConstants.HELMET_PROPS.DEFAULT_TITLE);\n\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, _HelmetConstants.HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[_HelmetConstants.TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[_HelmetConstants.TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === _HelmetConstants.TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === _HelmetConstants.TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n }\n // Special case for innerHTML which doesn't work lowercased\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === _HelmetConstants.TAG_PROPERTIES.INNER_HTML || attributeKey === _HelmetConstants.TAG_PROPERTIES.CSS_TEXT || attributeKey === _HelmetConstants.TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n });\n\n // Update seen tags with tags from this instance\n var keys = Object.keys(instanceSeenTags);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = (0, _objectAssign2.default)({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([_HelmetConstants.TAG_PROPERTIES.HREF], propsList),\n bodyAttributes: getAttributesFromPropsList(_HelmetConstants.ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, _HelmetConstants.HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, _HelmetConstants.HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(_HelmetConstants.ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(_HelmetConstants.TAG_NAMES.LINK, [_HelmetConstants.TAG_PROPERTIES.REL, _HelmetConstants.TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(_HelmetConstants.TAG_NAMES.META, [_HelmetConstants.TAG_PROPERTIES.NAME, _HelmetConstants.TAG_PROPERTIES.CHARSET, _HelmetConstants.TAG_PROPERTIES.HTTPEQUIV, _HelmetConstants.TAG_PROPERTIES.PROPERTY, _HelmetConstants.TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(_HelmetConstants.TAG_NAMES.NOSCRIPT, [_HelmetConstants.TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(_HelmetConstants.TAG_NAMES.SCRIPT, [_HelmetConstants.TAG_PROPERTIES.SRC, _HelmetConstants.TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(_HelmetConstants.TAG_NAMES.STYLE, [_HelmetConstants.TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(_HelmetConstants.ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\n\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n\n updateAttributes(_HelmetConstants.TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(_HelmetConstants.TAG_NAMES.HTML, htmlAttributes);\n\n updateTitle(title, titleAttributes);\n\n var tagUpdates = {\n baseTag: updateTags(_HelmetConstants.TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(_HelmetConstants.TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(_HelmetConstants.TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(_HelmetConstants.TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(_HelmetConstants.TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(_HelmetConstants.TAG_NAMES.STYLE, styleTags)\n };\n\n var addedTags = {};\n var removedTags = {};\n\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n\n cb && cb();\n\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(_HelmetConstants.TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(_HelmetConstants.HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(_HelmetConstants.HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(_HelmetConstants.HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(_HelmetConstants.HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(_HelmetConstants.TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + _HelmetConstants.HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === _HelmetConstants.TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === _HelmetConstants.TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(_HelmetConstants.HELMET_ATTRIBUTE, \"true\");\n\n // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + _HelmetConstants.HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\" : \"<\" + type + \" \" + _HelmetConstants.HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === _HelmetConstants.TAG_PROPERTIES.INNER_HTML || attribute === _HelmetConstants.TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n\n var isSelfClosing = _HelmetConstants.SELF_CLOSING_TAGS.indexOf(type) === -1;\n\n return str + \"<\" + type + \" \" + _HelmetConstants.HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"</\" + type + \">\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[_HelmetConstants.REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(props).reduce(function (obj, key) {\n obj[_HelmetConstants.HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps;\n\n // assigning into an array to define toString function on it\n var initProps = (_initProps = {\n key: title\n }, _initProps[_HelmetConstants.HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n\n return [_react2.default.createElement(_HelmetConstants.TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[_HelmetConstants.HELMET_ATTRIBUTE] = true, _mappedTag);\n\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = _HelmetConstants.REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === _HelmetConstants.TAG_PROPERTIES.INNER_HTML || mappedAttribute === _HelmetConstants.TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = { __html: content };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n\n return _react2.default.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case _HelmetConstants.TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n case _HelmetConstants.ATTRIBUTE_NAMES.BODY:\n case _HelmetConstants.ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(_HelmetConstants.TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(_HelmetConstants.ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(_HelmetConstants.ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(_HelmetConstants.TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(_HelmetConstants.TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(_HelmetConstants.TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(_HelmetConstants.TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(_HelmetConstants.TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(_HelmetConstants.TAG_NAMES.TITLE, { title: title, titleAttributes: titleAttributes }, encode)\n };\n};\n\nexports.convertReactPropstoHtmlAttributes = convertReactPropstoHtmlAttributes;\nexports.handleClientStateChange = handleClientStateChange;\nexports.mapStateOnServer = mapStateOnServer;\nexports.reducePropsToState = reducePropsToState;\nexports.requestAnimationFrame = requestAnimationFrame;\nexports.warn = warn;"],"sourceRoot":""}