p>a]:text-white [&>a]:text-white [&>p>a]:underline\"/>\n )}\n {props.status === \"error\" &&\n
${formatMessage(props.message)}`}}/>\n }\n
\n >\n )}\n \n )\n}","import PropTypes from 'prop-types';\nimport withSideEffect from 'react-side-effect';\nimport isEqual from 'react-fast-compare';\nimport React from 'react';\nimport objectAssign from 'object-assign';\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\nvar 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};\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\nvar 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 TARGET: \"target\"\n};\nvar 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};\nvar 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};\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\nvar classCallCheck = function classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n};\nvar inherits = function inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\nvar objectWithoutProperties = function objectWithoutProperties(obj, keys) {\n var target = {};\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n return target;\n};\nvar possibleConstructorReturn = function possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (encode === false) {\n return String(str);\n }\n return String(str).replace(/&/g, \"&\").replace(//g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\");\n};\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n return innermostTitle || innermostDefaultTitle || undefined;\n};\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\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};\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\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 if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n return innermostBaseTag;\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 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 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 === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === 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 === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n var value = tag[primaryAttributeKey].toLowerCase();\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\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 = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n approvedSeenTags[attributeKey] = tagUnion;\n }\n return approvedTags;\n }, []).reverse();\n};\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n return null;\n};\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\nvar rafPolyfill = function () {\n var clock = Date.now();\n return function (callback) {\n var currentTime = Date.now();\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\nvar _helmetCallback = null;\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\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};\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 updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n updateTitle(title, titleAttributes);\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n var addedTags = {};\n var removedTags = {};\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n cb && cb();\n onChangeClientState(newState, addedTags, removedTags);\n};\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n if (!elementTag) {\n return;\n }\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n var indexToSave = attributesToRemove.indexOf(attribute);\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === 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 newElement.setAttribute(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 oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n return {\n oldTags: oldTags,\n newTags: newTags\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};\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\" + type + \">\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\" + type + \">\";\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 === TAG_PROPERTIES.INNER_HTML || attribute === 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 var tagContent = tag.innerHTML || tag.cssText || \"\";\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"\" + type + \">\");\n }, \"\");\n};\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\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[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = {\n __html: content\n };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n return React.createElement(type, mappedTag);\n });\n};\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case 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 ATTRIBUTE_NAMES.BODY:\n case 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};\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(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, {\n title: title,\n titleAttributes: titleAttributes\n }, encode)\n };\n};\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\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 HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n return newFlattenedProps;\n };\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest
components within each other, which is not allowed. Refer to our API for more information.\");\n }\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\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 return true;\n };\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n var arrayTypeChildren = {};\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n _this2.warnOnInvalidChildren(child, nestedChildren);\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n var newProps = _extends({}, props);\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n return React.createElement(Component, newProps);\n };\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\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\": \"
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$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.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 = 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 return mappedState;\n }, _temp;\n};\nvar NullComponent = function NullComponent() {\n return null;\n};\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\nexport default HelmetExport;\nexport { HelmetExport as Helmet };","export default function _objectDestructuringEmpty(obj) {\n if (obj == null) throw new TypeError(\"Cannot destructure \" + obj);\n}","import React, {useEffect, useRef, useState} from \"react\";\nimport styled from \"styled-components\";\nimport {gsap} from \"utils/gsap\";\nimport {media} from \"utils/Media\";\nimport {graphql, useStaticQuery} from \"gatsby\";\nimport CloseIcon from \"images/cross-black.svg\";\nimport NewSweepstake from \"../Sweepstake/NewSweepstake\";\n\nconst SignupStyles = styled.section`\n opacity: 0;\n visibility: hidden;\n width: 100%;\n height: 100%;\n position: fixed;\n background-color: rgba(0, 0, 0, .7);\n z-index: 99999;\n overflow-y: auto;\n display: flex;\n align-items: center;\n justify-content: center;\n\n .wrapper {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n max-width: 1090px;\n max-height: 90%;\n width: 90%;\n z-index: 1001;\n position: relative;\n\n .close {\n position: absolute;\n top: 0.5rem;\n right: 0.5rem;\n width: 32px;\n height: 32px;\n cursor: pointer;\n z-index: 999;\n display: flex;\n align-items: center;\n justify-content: center;\n background: white;\n @media ${media.md} {\n top: 1rem;\n right: 1rem;\n width: 40px;\n height: 40px;\n }\n @media ${media.lg} {\n background: none;\n }\n\n img {\n width: 20px;\n height: 20px;\n }\n }\n }\n`;\n\nconst ModalPopup = ({ path, data }) => {\n const [open, setOpen] = useState(false);\n\n const {\n displayCompetition,\n displayForm,\n mailchimpFieldKey,\n uniqueName,\n title,\n text,\n image,\n termsText,\n successText,\n redirect,\n redirectPage,\n pagesToDisplay,\n link\n } = data?.popup\n\n useEffect(() => {\n if (typeof window !== \"undefined\" && displayCompetition) {\n\n if (uniqueName) {\n const modalViewed = window.localStorage.getItem(`mado_${uniqueName}`)\n \n // display and launch modal as nothing in localstorage\n if (!modalViewed) {\n setOpen(true)\n }\n\n } else {\n setOpen(true)\n }\n }\n }, [])\n\n const popUpRef = useRef();\n const q = gsap.utils.selector(popUpRef);\n const popUpAnimation = useRef();\n\n useEffect(() => {\n popUpAnimation.current = gsap\n .timeline({duration: 0.5, ease: \"power1.out\", stagger: 0.5})\n .to(popUpRef.current, {\n opacity: \"1\",\n visibility: \"visible\",\n // duration: 0.25,\n })\n .from(q(\".wrapper\"), {\n y: \"-500px\",\n opacity: \"0\",\n // duration: 0.25,\n });\n \n return () => {\n popUpAnimation.current.kill();\n };\n }, []);\n\n useEffect(() => {\n if (!open) {\n popUpAnimation.current.reverse();\n document.body.style.overflowY = \"auto\";\n if (uniqueName) {\n window.localStorage.setItem(`mado_${uniqueName}`, \"true\");\n }\n } else {\n popUpAnimation.current.play();\n document.body.style.overflow = \"hidden\";\n }\n }, [open]);\n\n if (displayCompetition) {\n return (\n \n \n
\n
setOpen(false)}>\n

\n
\n
\n \n );\n }\n return null\n};\n\n\nconst Modal = ({ setCookie, ...props }) => {\n const data = useStaticQuery(graphql`\n query {\n allWpPopup {\n edges {\n node {\n acfPopup {\n popup {\n displayCompetition\n displayForm\n mailchimpFieldKey\n uniqueName\n title\n text\n image {\n altText\n caption\n localFile {\n childImageSharp {\n gatsbyImageData(width: 545, quality: 90, placeholder: NONE, layout: CONSTRAINED)\n }\n }\n }\n termsText\n successText\n redirect\n redirectPage {\n ... on WpPage {\n uri\n }\n }\n link {\n url\n title\n target\n }\n pagesToDisplay {\n page {\n ... on WpPage {\n id\n uri\n }\n }\n }\n }\n }\n }\n }\n }\n }\n `)\n\n const modal = data.allWpPopup.edges.flatMap(({ node }, i) => {\n if (node.acfPopup.popup.pagesToDisplay.length > 0) {\n // Filter pages that match the current path\n const matchedPage = node.acfPopup.popup.pagesToDisplay.find(\n ({ page }) => page.uri === props.path\n );\n\n console.log(matchedPage)\n\n if (matchedPage) {\n return (\n \n );\n }\n \n return []; // Return empty array to prevent undefined values\n }\n\n // Global popup as no pagesToDisplay is set\n return ;\n });\n\n return modal.length > 0 ? modal[0] : null;\n}\n\n\nexport default Modal;","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjciIHZpZXdCb3g9IjAgMCAyNyAyNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI2IDFMMSAyNiIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTEgMUwyNiAyNiIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==\"","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Helmet from \"react-helmet\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport { decode } from \"html-entities\"\n// import shareImage from \"images/favicon.jpg\"\n\nfunction Seo(props) {\n const { title, metaDesc, metaKeywords } = props?.seo\n const lang = props.language.slug\n const dir = props.language.code\n\n const { site } = useStaticQuery(graphql`\n query {\n site {\n siteMetadata {\n title\n description\n author\n siteUrl\n }\n }\n }`\n )\n\n const metaDescription = metaDesc ? decode(metaDesc) : site.siteMetadata.description\n const metaTitle = title ? decode(title) : site.siteMetadata.title\n const metaUrl = site.siteMetadata.siteUrl+props.path\n const metaImage = site.siteMetadata.siteUrl+\"/mubadala-abu-dhabi-open-1200x630.png\"\n const twitterImage = site.siteMetadata.siteUrl+\"/mubadala-abu-dhabi-open-1080x1080.png\"\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n\nSeo.defaultProps = {\n language: {\n code: \"EN\",\n name: \"English\",\n slug: \"en\"\n },\n seo: {},\n path: ``\n}\n\nSeo.propTypes = {\n seo: PropTypes.object,\n path: PropTypes.string,\n language: PropTypes.object\n}\n\nexport default Seo","import ProximaNovaW01RegularWOFF from \"./Fonts/52ed7b2d-8a31-4b18-a1d5-8685608b0889.woff\"\nimport ProximaNovaW01RegularWOFF2 from \"./Fonts/b38b8bd9-d96f-4bf9-add1-adbd2b08b802.woff2\"\nimport ProximaNovaW01BoldWOFF from \"./Fonts/332136cf-33d0-43fb-97ee-49c7742489ff.woff\"\nimport ProximaNovaW01BoldWOFF2 from \"./Fonts/cc85d073-4dcf-4ecd-9804-40c34e631e2b.woff2\"\n// import AvertaRegularWOFF from \"./Fonts/fa982202-5e4a-491e-a2c1-8daa85685402.woff\"\n// import AvertaRegularWOFF2 from \"./Fonts/1c578a3b-763b-451e-8ae0-a90ba63a80be.woff2\"\nimport MontserratBold from \"./Fonts/Montserrat-Bold.woff2\"\nimport MontserratLight from \"./Fonts/Montserrat-Light.woff2\"\nimport MontserratRegular from \"./Fonts/Montserrat-Regular.woff2\"\n\nconst FontsExport = {\n ProximaNovaW01RegularWOFF,\n ProximaNovaW01RegularWOFF2,\n ProximaNovaW01BoldWOFF,\n ProximaNovaW01BoldWOFF2,\n MontserratBold,\n MontserratLight,\n MontserratRegular\n}\n\nexport default FontsExport","export default __webpack_public_path__ + \"static/52ed7b2d-8a31-4b18-a1d5-8685608b0889-3a8df146b6b8e37863eeffed878feab5.woff\";","export default __webpack_public_path__ + \"static/b38b8bd9-d96f-4bf9-add1-adbd2b08b802-a529ce5e5fe787ee686fc01f1f40991b.woff2\";","export default __webpack_public_path__ + \"static/332136cf-33d0-43fb-97ee-49c7742489ff-ae2df4552e5f927be6f9befa8d6b722e.woff\";","export default __webpack_public_path__ + \"static/cc85d073-4dcf-4ecd-9804-40c34e631e2b-ce49a19c5ff96ab9c690b19fee16e037.woff2\";","export default __webpack_public_path__ + \"static/Montserrat-Bold-7dbcc8a5ea2289d83f657c25b4be6193.woff2\";","export default __webpack_public_path__ + \"static/Montserrat-Light-00b3e893aab5a8fd632d6342eb72551a.woff2\";","export default __webpack_public_path__ + \"static/Montserrat-Regular-b71748ae4f80ec8c014def4c5fa8688b.woff2\";","import {createGlobalStyle, withTheme} from \"styled-components\"\nimport {media} from \"utils/Media\"\nimport fontFiles from \"./Fonts\";\n\nconst GlobalStyles = createGlobalStyle`\n @font-face {\n font-family: 'MontserratLight';\n src: url(\"${fontFiles.MontserratLight}\") format('woff2');\n font-weight: normal;\n font-style: normal;\n font-display: swap;\n }\n\n @font-face {\n font-family: 'MontserratRegular';\n src: url(\"${fontFiles.MontserratRegular}\") format('woff2');\n font-weight: normal;\n font-style: normal;\n font-display: swap;\n }\n\n @font-face {\n font-family: 'MontserratBold';\n src: url(\"${fontFiles.MontserratBold}\") format('woff2');\n font-weight: normal;\n font-style: normal;\n font-display: swap;\n }\n\n @font-face {\n font-family: 'ProximaNovaW01Regular';\n src: url(\"${fontFiles.ProximaNovaW01RegularWOFF2}\") format('woff2'),\n url(\"${fontFiles.ProximaNovaW01RegularWOFF}\") format('woff');\n font-weight: normal;\n font-style: normal;\n font-display: swap;\n }\n\n @font-face {\n font-family: 'ProximaNovaW01Bold';\n src: url(\"${fontFiles.ProximaNovaW01BoldWOFF2}\") format('woff2'),\n url(\"${fontFiles.ProximaNovaW01BoldWOFF}\") format('woff');\n font-weight: normal;\n font-style: normal;\n font-display: swap;\n }\n\n html, body {\n max-width: 100%;\n overflow-x: hidden;\n }\n\n body {\n font-family: ${props => props.theme.font.family.body};\n font-size: ${props => props.theme.font.size.base};\n line-height: ${props => props.theme.font.lineHeight.base};\n color: ${props => props.theme.colors.black};\n background-color: ${props => props.theme.colors.white};\n -webkit-font-smoothing: antialiased;\n overflow-x: hidden;\n /* transition: ${props => props.theme.transitionBase}; */\n\n &.nav-active {\n overflow: hidden;\n }\n\n &.dropdown-filter-active {\n overflow: hidden;\n\n @media ${media.lg} {\n overflow: visible;\n }\n\n main {\n position: relative;\n z-index: 1100;\n\n @media ${media.lg} {\n z-index: 1;\n }\n }\n }\n }\n\n body:not(.user-is-tabbing) button:focus,\n body:not(.user-is-tabbing) input:focus,\n body:not(.user-is-tabbing) select:focus,\n body:not(.user-is-tabbing) textarea:focus,\n body:not(.user-is-tabbing) div[role=\"button\"]:focus {\n outline: none;\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n color: ${props => props.theme.colors.black};\n font-family: ${props => props.theme.font.family.black};\n line-height: ${props => props.theme.font.lineHeight.headings};\n margin-bottom: 1rem;\n font-weight: 700;\n }\n\n h1 {\n font-size: ${props => props.theme.font.h3.size};\n @media ${media.sm} {\n font-size: ${props => props.theme.font.h2.size};\n }\n @media ${media.md} {\n font-size: ${props => props.theme.font.h1.size};\n }\n }\n\n h2 {\n font-size: ${props => props.theme.font.h4.size};\n @media ${media.sm} {\n font-size: ${props => props.theme.font.h3.size};\n }\n @media ${media.md} {\n font-size: ${props => props.theme.font.h2.size};\n }\n }\n\n h3 {\n font-size: ${props => props.theme.font.h4.size};\n @media ${media.md} {\n font-size: ${props => props.theme.font.h3.size};\n }\n }\n\n h4 {\n font-size: ${props => props.theme.font.h4.size};\n }\n\n h5 {\n font-size: ${props => props.theme.font.h5.size};\n }\n\n h6 {\n font-size: ${props => props.theme.font.h6.size};\n }\n\n p {\n font-family: ${props => props.theme.font.family.body};\n\n &:last-child {\n margin: 0;\n }\n }\n\n strong {\n font-family: ${props => props.theme.font.family.black};\n }\n\n a {\n color: ${props => props.theme.colors.midBlue};\n transition: color .4s ease;\n text-decoration: underline solid ${props => props.theme.colors.midBlue} 2px;\n font-weight: ${props => props.theme.font.weight.bold};\n\n &:hover {\n color: ${props => props.theme.colors.midBlue};\n text-decoration: underline solid ${props => props.theme.colors.midBlue} 2px;\n }\n }\n\n strong {\n font-weight: ${props => props.theme.font.weight.bold};\n }\n\n ul {\n padding-left: 20px;\n }\n\n img {\n max-width: 100%;\n }\n\n hr {\n border-color: ${props => props.theme.colors.quaternary};\n border-style: solid;\n margin: 1.5rem 0;\n }\n\n .modal-backdrop.show {\n opacity: 0.9;\n /* background-color: ${props => props.theme.colors.primary}; */\n }\n\n .modal-content {\n border-radius: 0;\n\n @media ${media.md} {\n padding: 1rem;\n }\n @media ${media.lg} {\n padding: 2rem;\n }\n }\n\n .d-xxl-block {\n @media ${media.xxl} {\n display: block !important;\n }\n }\n\n .d-xxl-none {\n @media ${media.xxl} {\n display: none !important;\n }\n }\n\n .bkg-primary {\n background-color: ${props => props.theme.colors.primary};\n @media ${media.md} {\n background: transparent;\n }\n }\n\n .LazyLoad, .lazyload-wrapper {\n width: 100%;\n }\n\n /* light gallery */\n .lg-backdrop {\n background-color: ${props => props.theme.colors.primary};\n\n &.in {\n opacity: .9;\n }\n }\n\n .baseTitle {\n text-align: center;\n font-family: ${props => props.theme.font.family.heading};\n text-transform: uppercase;\n //font-style: italic;\n font-size: ${props => props.theme.font.size.xl};\n }\n\n .baseText {\n font-family: ${props => props.theme.font.family.base};\n font-weight: ${props => props.theme.font.weight.regular};\n }\n\n .lg-toolbar {\n background-color: rgba(0, 0, 0, 1);\n }\n\n .lg-outer {\n direction: ltr; /* rtl for AR break it */\n }\n\n .background-gradient {\n &::after {\n\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: ${props => props.theme.colors.gradientLeft};\n content: '';\n }\n }\n\n .formMessage {\n p {\n color: #fff !important;\n font-family: ${props => props.theme.font.family.heading};\n }\n }\n\n .input-placeholder {\n &::placeholder {\n color: black !important;\n }\n }\n\n .modal-backdrop {\n background-color: #000;\n\n &.bd-white {\n background-color: #fff;\n }\n }\n\n .hero-padding {\n @media ${media.md} {\n padding-left: 75px;\n\n }\n @media ${media.xl} {\n padding-left: 85px;\n }\n }\n \n .submit-button {\n width: 180px;\n background: ${(props) => props.theme.colors.tertiary};\n border: ${(props) => props.theme.colors.secondary} solid 2px;\n padding: 0.25rem 0.5rem;\n\n span {\n color: #fff;\n font-family: ${(props) => props.theme.font.family.bold};\n //font-style: italic;\n font-size: 1.25rem;\n text-transform: uppercase;\n }\n\n @media ${media.md} {\n width: 220px;\n padding: 0.75rem 0.5rem;\n }\n }\n`;\n\nexport default withTheme(GlobalStyles);","import React, { useEffect, useState } from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport { Container } from \"reactstrap\"\nimport styled from \"styled-components\"\nimport classNames from \"classnames\"\nimport { media } from \"utils/Media\"\nimport { LinkSearchReplace } from \"utils/LinkSearchReplace\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faTimes } from \"@fortawesome/free-solid-svg-icons\"\n\nconst CookieWrap = styled(Container)`\n\tbackground: ${props => props.theme.colors.grey};\n\twidth: 100%;\n\tposition: relative;\n\n\tcolor: ${props => props.theme.colors.white};\n\tfont-size: ${props => props.theme.font.size.sm};\n\n\t@media ${media.md} {\n\t\tfont-size: ${props => props.theme.font.size.base};\n\t}\n\n\t&.hide {\n\t\theight: 0;\n\t}\n\n\ta {\n\t\tcolor: ${props => props.theme.colors.secondary};\n\t\tfont-weight: ${props => props.theme.font.family.bold};\n\t\ttext-decoration: underline;\n\t\t\n\t\t&:hover { \n\t\t\tcolor: ${props => props.theme.colors.primary};\n\t\t\ttext-decoration: underline;\n\t\t}\n\t}\n`\n\nconst CookieContainer = styled(Container)`\n\ttext-align: center;\n\tpadding: .75rem 0;\n`\n\nconst Close = styled.button`\n\tposition: absolute;\n\tbackground: 0;\n\tright: 1rem;\n\ttop: .5rem;\n\tborder: 0;\n\tpadding: 0;\n\n\t@media ${media.md} {\n\t\ttop: 50%;\n\t\ttransform: translateY(-50%);\n\t}\n\n\tsvg {\n\t\tcolor: ${props => props.theme.colors.white};\n\t\tdisplay: block;\n\t\tfont-size: 1rem;\n\t\tline-height: .7;\n\t\tmax-width: 20px;\n\t}\n`\n\nconst HeaderAnnouncement = (props) => {\n\tconst [hidden, setHidden] = useState(false)\n\tconst [lastScrollTop, setLastScrollTop] = useState(0)\n\n\tuseEffect(() => {\n\t\tif (!window.localStorage.getItem('announcement')) {\n\n\t\t\tconst hideShow = () => {\n\t\t\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop\n\t\t\t\tconst scrollDirection = scrollTop > lastScrollTop ? \"down\" : \"up\"\n\t\t\t\tlet hidden\n\t\t\n\t\t\t\tif (Math.abs(scrollTop - lastScrollTop) > 200) {\n\t\t\t\t\tif (scrollDirection === \"up\") {\n\t\t\t\t\t\thidden = false\n\t\t\t\t\t} else {\n\t\t\t\t\t\thidden = true\n\t\t\t\t\t}\n\t\t\n\t\t\t\t\tconst newLastScrollTop = scrollTop <= 0 ? 0 : scrollTop;\n\t\t\n\t\t\t\t\tsetHidden(hidden)\n\t\t\t\t\tsetLastScrollTop(newLastScrollTop)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\twindow.addEventListener(\"scroll\", hideShow)\n\n\t\t\treturn () => {\n\t\t\t\twindow.removeEventListener('scroll', hideShow);\n\t\t\t}\n\t\t} else {\n\t\t\tsetHidden(true)\n\t\t}\n\t})\n\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst acceptCookies = () => {\n\t\tlocalStorage.setItem('announcement', '1');\n\t\tsetHidden(true)\n\t}\n\n\tconst { headerAnnouncementText } = data.allWp?.edges[0]?.node?.options?.acfOptions\n\n\tif (headerAnnouncementText && !hidden) {\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t)\n\t} else return \"\"\n}\n\nexport default HeaderAnnouncement","import React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport classNames from \"classnames\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faAngleDown } from \"@fortawesome/free-solid-svg-icons\"\nimport { media } from \"utils/Media\"\nimport WPLink from \"components/shared/WPLink\"\n\nconst NavWrap = styled.nav`\n\tdisplay: flex;\n\tposition: absolute;\n\ttop: 50%;\n\ttransform: translateY(-50%);\n\tz-index: 1;\n\tright: 1rem;\n\n\t@media ${media.lg} {\n\t\tright: 60px;\n\t}\n\t@media ${media.xl} {\n\t\tright: 70px;\n\t}\n\n\t${props => props.navActive && css`\n\t\tdisplay: none;\n\t`}\n\n\t.sub-menu-wrapper {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tpadding-top: 2rem;\n\t\twidth: 100%;\t\n\t\tmin-width: 200px;\n\t\t.sub-menu {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\tdisplay: none;\n\t\t\t\t\tposition: absolute;\n\t\t\t\t\tmin-width: 150px;\n\t\t\t\t\tbackground-color: rgba(0,0,0,.85);\t\t\n\t\t\t\t\tpadding: .5rem;\n\t\t\t\t\t> a {\n\t\t\t\t\t\ttext-transform: none;\n\t\t\t\t\t\tpadding: 1rem;\n\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\tli {\n\t\t\t\t\t\tpadding: 0;\n\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t}\n\t\t\t\t\tli a {\n\t\t\t\t\t\tpadding: .35rem;\n\t\t\t\t\t\t&:hover {\n\t\t\t\t\t\t\tbackground-color: rgba(0, 178, 169,.75);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tli a span{\n\t\t\t\t\t\tfont-size: 16px!important;\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t}\n\t}\n\t\n\n\tul {\n\t\tpadding: 0;\n\t\tmargin: 0;\n\t\tdisplay: none;\n\t\tlist-style: none;\n\t\t\n\t\t@media ${media.xl} {\n\t\t\tdisplay: flex;\n\t\t}\n\t\t\n\t\t&.buttons {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t}\n\t\t\n\t\tli {\n\t\t\tpadding-left: 0;\n\t\t\tspan {\n\t\t\t\tpadding-right: 5px;\n\t\t\t}\n\t\t\tsvg {\n\t\t\t\twidth: 100%;\n\t\t\t\tcolor: white;\n\t\t\t\tpadding-left: 5px;\n\t\t\t\tfont-size: 25px;\n\t\t\t\tmax-width: 25px;\n\t\t\t\tmax-height: 25px;\n\t\t\t}\n\t\t\t&:before {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t\t\n\t\tli:not(.book-tickets) {\n\t\t\tdisplay: none;\n\t\t\t\n\t\t\t@media (min-width: 1300px) {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tpadding-right: 5px;\n\t\t\t\tposition: relative;\n\t\t\t}\n\t\t\t@media (min-width: 1350px) {\n\t\t\t\tpadding-right: 10px;\n\t\t\t}\n\t\t\ta {\n\t\t\t\tpadding: 0 .65rem;\n\t\t\t}\n\t\t\tul {\n\t\t\t\tmargin: 0;\n\t\t\t\tpadding: 0;\n\n\t\t\t}\n\t\t\ta, span {\n\t\t\t\tcursor: pointer;\n\t\t\t\tdisplay: block;\n\t\t\t\tcolor: ${props => props.theme.colors.white};\n\t\t\t\t/* padding: 1rem .25rem; */\n\t\t\t\ttext-transform: uppercase;\n\t\t\t\tfont-size: 18px;\n\t\t\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\t\t\t//font-style: italic;\n\t\t\t\tfont-weight: ${props => props.theme.font.weight.regular};\n\t\t\t\ttext-decoration: none;\n\t\t\t\t@media (min-width: 1400px) {\n\t\t\t\t\tfont-size: 18px;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t&.active {\n\t\t\t\t\tposition: relative;\n\t\t\t\t\t&:after {\n\t\t\t\t\t\tcontent: \"\";\n\t\t\t\t\t\theight: 4px;\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\tbackground-color: ${props => props.theme.colors.white};\n\t\t\t\t\t\tposition: absolute;\n\t\t\t\t\t\tbottom: 0rem;\n\t\t\t\t\t\tleft: 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\ta > span {\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\t\n\t\t\tli {\n\t\t\t\tdisplay: block;\n\n\t\t\t}\n\t\t\t\n\t\t\t&:hover {\n\t\t\t\t> a, > a span, > span {\n\t\t\t\t\ttext-decoration: none;\n\t\t\t\t\t/* color: ${props => props.theme.colors.secondary}; */\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t.sub-menu {\n\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t\n\t\t.book-tickets {\n\t\t\t@media ${media.xl} {\n\t\t\t\tmargin: 0 .5rem; \n\t\t\t}\n\t\t\t\n\t\t\ta {\n\t\t\t\tspan {\n\t\t\t\t\tpadding: .5rem;\n\t\t\t\t\t@media ${media.md} {\n\t\t\t\t\t\tpadding: 1rem;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n`\n\nconst Nav = (props) => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWpMenu(filter: {locations: {eq: PRIMARY}}) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tlocations\n\t\t\t\t\t\tmenuItems {\n\t\t\t\t\t\t\tnodes {\n\t\t\t\t\t\t\t\turl\n\t\t\t\t\t\t\t\ttarget\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\tparentDatabaseId\n\t\t\t\t\t\t\t\tchildItems {\n\t\t\t\t\t\t\t\t\tnodes {\n\t\t\t\t\t\t\t\t\t\turl\n\t\t\t\t\t\t\t\t\t\ttarget\n\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst menu = data.allWpMenu?.edges[0].node.menuItems\n\tconst { bookTicketsUrl } = data.allWp.edges[0]?.node?.options?.acfOptions\n\n\tconst checkLink = (link) => {\n\t\tlet linkHtml\n\n\t\tif (link.url === \"#\") {\n\t\t\tlinkHtml = \n\t\t} else if (link.target !== null) {\n\t\t\tlinkHtml = \n\t\t} else {\n\t\t\tlinkHtml = \n\t\t}\n\n\t\treturn linkHtml\n\t}\n\n\tconst mainMenu = menu && menu.nodes.map((node, i) => {\n\t\tif (node.parentDatabaseId === 0) {\n\t\t\treturn(\n\t\t\t\t\n\t\t\t\t\t{checkLink(node)}\n\t\t\t\t\t{node.childItems.nodes.length > 0 &&\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\t{node.childItems.nodes.length > 0 &&\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t{node.childItems.nodes.map((node, i) => {\n\t\t\t\t\t\t\t\t\tif (node.url === \"#\") {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t- \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t- \n\t\t\t\t\t\t\t\t\t\t\t\t{node.target !== null ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t)\n\t\t}\n\t})\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{mainMenu}\n\t\t\t
\n\t\t\t\n\t\t\t\t{bookTicketsUrl && \n\t\t\t\t\t- \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{bookTicketsUrl.title}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t}\n\t\t\t
\n\t\t\n\t)\n}\n\nexport default Nav\n","import { cloneElement, Component, createRef, createElement } from 'react';\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n return _assertThisInitialized(self);\n}\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n}\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n}\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction zeroPad(value) {\n var length = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n var strValue = String(value);\n if (length === 0) return strValue;\n var match = strValue.match(/(.*?)([0-9]+)(.*)/);\n var prefix = match ? match[1] : '';\n var suffix = match ? match[3] : '';\n var strNo = match ? match[2] : strValue;\n var paddedNo = strNo.length >= length ? strNo : (_toConsumableArray(Array(length)).map(function () {\n return '0';\n }).join('') + strNo).slice(length * -1);\n return \"\".concat(prefix).concat(paddedNo).concat(suffix);\n}\nvar timeDeltaFormatOptionsDefaults = {\n daysInHours: false,\n zeroPadTime: 2\n};\nfunction calcTimeDelta(date) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _options$now = options.now,\n now = _options$now === void 0 ? Date.now : _options$now,\n _options$precision = options.precision,\n precision = _options$precision === void 0 ? 0 : _options$precision,\n controlled = options.controlled,\n _options$offsetTime = options.offsetTime,\n offsetTime = _options$offsetTime === void 0 ? 0 : _options$offsetTime,\n overtime = options.overtime;\n var startTimestamp;\n if (typeof date === 'string') {\n startTimestamp = new Date(date).getTime();\n } else if (date instanceof Date) {\n startTimestamp = date.getTime();\n } else {\n startTimestamp = date;\n }\n if (!controlled) {\n startTimestamp += offsetTime;\n }\n var timeLeft = controlled ? startTimestamp : startTimestamp - now();\n var clampedPrecision = Math.min(20, Math.max(0, precision));\n var total = Math.round(parseFloat(((overtime ? timeLeft : Math.max(0, timeLeft)) / 1000).toFixed(clampedPrecision)) * 1000);\n var seconds = Math.abs(total) / 1000;\n return {\n total: total,\n days: Math.floor(seconds / (3600 * 24)),\n hours: Math.floor(seconds / 3600 % 24),\n minutes: Math.floor(seconds / 60 % 60),\n seconds: Math.floor(seconds % 60),\n milliseconds: Number((seconds % 1 * 1000).toFixed()),\n completed: total <= 0\n };\n}\nfunction formatTimeDelta(timeDelta, options) {\n var days = timeDelta.days,\n hours = timeDelta.hours,\n minutes = timeDelta.minutes,\n seconds = timeDelta.seconds;\n var _Object$assign = Object.assign(Object.assign({}, timeDeltaFormatOptionsDefaults), options),\n daysInHours = _Object$assign.daysInHours,\n zeroPadTime = _Object$assign.zeroPadTime,\n _Object$assign$zeroPa = _Object$assign.zeroPadDays,\n zeroPadDays = _Object$assign$zeroPa === void 0 ? zeroPadTime : _Object$assign$zeroPa;\n var zeroPadTimeLength = Math.min(2, zeroPadTime);\n var formattedHours = daysInHours ? zeroPad(hours + days * 24, zeroPadTime) : zeroPad(hours, zeroPadTimeLength);\n return {\n days: daysInHours ? '' : zeroPad(days, zeroPadDays),\n hours: formattedHours,\n minutes: zeroPad(minutes, zeroPadTimeLength),\n seconds: zeroPad(seconds, zeroPadTimeLength)\n };\n}\nvar Countdown = function (_React$Component) {\n _inherits(Countdown, _React$Component);\n var _super = _createSuper(Countdown);\n function Countdown() {\n var _this;\n _classCallCheck(this, Countdown);\n _this = _super.apply(this, arguments);\n _this.state = {\n count: _this.props.count || 3\n };\n _this.startCountdown = function () {\n _this.interval = window.setInterval(function () {\n var count = _this.state.count - 1;\n if (count === 0) {\n _this.stopCountdown();\n _this.props.onComplete && _this.props.onComplete();\n } else {\n _this.setState(function (prevState) {\n return {\n count: prevState.count - 1\n };\n });\n }\n }, 1000);\n };\n _this.stopCountdown = function () {\n clearInterval(_this.interval);\n };\n _this.addTime = function (seconds) {\n _this.stopCountdown();\n _this.setState(function (prevState) {\n return {\n count: prevState.count + seconds\n };\n }, _this.startCountdown);\n };\n return _this;\n }\n _createClass(Countdown, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.startCountdown();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n clearInterval(this.interval);\n }\n }, {\n key: \"render\",\n value: function render() {\n return this.props.children ? cloneElement(this.props.children, {\n count: this.state.count\n }) : null;\n }\n }]);\n return Countdown;\n}(Component);\nvar Countdown$1 = function (_React$Component) {\n _inherits(Countdown$1, _React$Component);\n var _super = _createSuper(Countdown$1);\n function Countdown$1(props) {\n var _this;\n _classCallCheck(this, Countdown$1);\n _this = _super.call(this, props);\n _this.mounted = false;\n _this.initialTimestamp = _this.calcOffsetStartTimestamp();\n _this.offsetStartTimestamp = _this.props.autoStart ? 0 : _this.initialTimestamp;\n _this.offsetTime = 0;\n _this.legacyMode = false;\n _this.legacyCountdownRef = createRef();\n _this.tick = function () {\n var timeDelta = _this.calcTimeDelta();\n var callback = timeDelta.completed && !_this.props.overtime ? undefined : _this.props.onTick;\n _this.setTimeDeltaState(timeDelta, undefined, callback);\n };\n _this.start = function () {\n if (_this.isStarted()) return;\n var prevOffsetStartTimestamp = _this.offsetStartTimestamp;\n _this.offsetStartTimestamp = 0;\n _this.offsetTime += prevOffsetStartTimestamp ? _this.calcOffsetStartTimestamp() - prevOffsetStartTimestamp : 0;\n var timeDelta = _this.calcTimeDelta();\n _this.setTimeDeltaState(timeDelta, \"STARTED\", _this.props.onStart);\n if (!_this.props.controlled && (!timeDelta.completed || _this.props.overtime)) {\n _this.clearTimer();\n _this.interval = window.setInterval(_this.tick, _this.props.intervalDelay);\n }\n };\n _this.pause = function () {\n if (_this.isPaused()) return;\n _this.clearTimer();\n _this.offsetStartTimestamp = _this.calcOffsetStartTimestamp();\n _this.setTimeDeltaState(_this.state.timeDelta, \"PAUSED\", _this.props.onPause);\n };\n _this.stop = function () {\n if (_this.isStopped()) return;\n _this.clearTimer();\n _this.offsetStartTimestamp = _this.calcOffsetStartTimestamp();\n _this.offsetTime = _this.offsetStartTimestamp - _this.initialTimestamp;\n _this.setTimeDeltaState(_this.calcTimeDelta(), \"STOPPED\", _this.props.onStop);\n };\n _this.isStarted = function () {\n return _this.isStatus(\"STARTED\");\n };\n _this.isPaused = function () {\n return _this.isStatus(\"PAUSED\");\n };\n _this.isStopped = function () {\n return _this.isStatus(\"STOPPED\");\n };\n _this.isCompleted = function () {\n return _this.isStatus(\"COMPLETED\");\n };\n if (props.date) {\n var timeDelta = _this.calcTimeDelta();\n _this.state = {\n timeDelta: timeDelta,\n status: timeDelta.completed ? \"COMPLETED\" : \"STOPPED\"\n };\n } else {\n _this.legacyMode = true;\n }\n return _this;\n }\n _createClass(Countdown$1, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.legacyMode) {\n return;\n }\n this.mounted = true;\n if (this.props.onMount) this.props.onMount(this.calcTimeDelta());\n if (this.props.autoStart) this.start();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n if (this.legacyMode) {\n return;\n }\n if (this.props.date !== prevProps.date) {\n this.initialTimestamp = this.calcOffsetStartTimestamp();\n this.offsetStartTimestamp = this.initialTimestamp;\n this.offsetTime = 0;\n this.setTimeDeltaState(this.calcTimeDelta());\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.legacyMode) {\n return;\n }\n this.mounted = false;\n this.clearTimer();\n }\n }, {\n key: \"calcTimeDelta\",\n value: function calcTimeDelta$1() {\n var _this$props = this.props,\n date = _this$props.date,\n now = _this$props.now,\n precision = _this$props.precision,\n controlled = _this$props.controlled,\n overtime = _this$props.overtime;\n return calcTimeDelta(date, {\n now: now,\n precision: precision,\n controlled: controlled,\n offsetTime: this.offsetTime,\n overtime: overtime\n });\n }\n }, {\n key: \"calcOffsetStartTimestamp\",\n value: function calcOffsetStartTimestamp() {\n return Date.now();\n }\n }, {\n key: \"addTime\",\n value: function addTime(seconds) {\n this.legacyCountdownRef.current.addTime(seconds);\n }\n }, {\n key: \"clearTimer\",\n value: function clearTimer() {\n window.clearInterval(this.interval);\n }\n }, {\n key: \"isStatus\",\n value: function isStatus(status) {\n return this.state.status === status;\n }\n }, {\n key: \"setTimeDeltaState\",\n value: function setTimeDeltaState(timeDelta, status, callback) {\n var _this2 = this;\n if (!this.mounted) return;\n var completing = timeDelta.completed && !this.state.timeDelta.completed;\n var completedOnStart = timeDelta.completed && status === \"STARTED\";\n if (completing && !this.props.overtime) {\n this.clearTimer();\n }\n var onDone = function onDone() {\n if (callback) callback(_this2.state.timeDelta);\n if (_this2.props.onComplete && (completing || completedOnStart)) {\n _this2.props.onComplete(timeDelta, completedOnStart);\n }\n };\n return this.setState(function (prevState) {\n var newStatus = status || prevState.status;\n if (timeDelta.completed && !_this2.props.overtime) {\n newStatus = \"COMPLETED\";\n } else if (!status && newStatus === \"COMPLETED\") {\n newStatus = \"STOPPED\";\n }\n return {\n timeDelta: timeDelta,\n status: newStatus\n };\n }, onDone);\n }\n }, {\n key: \"getApi\",\n value: function getApi() {\n return this.api = this.api || {\n start: this.start,\n pause: this.pause,\n stop: this.stop,\n isStarted: this.isStarted,\n isPaused: this.isPaused,\n isStopped: this.isStopped,\n isCompleted: this.isCompleted\n };\n }\n }, {\n key: \"getRenderProps\",\n value: function getRenderProps() {\n var _this$props2 = this.props,\n daysInHours = _this$props2.daysInHours,\n zeroPadTime = _this$props2.zeroPadTime,\n zeroPadDays = _this$props2.zeroPadDays;\n var timeDelta = this.state.timeDelta;\n return Object.assign(Object.assign({}, timeDelta), {\n api: this.getApi(),\n props: this.props,\n formatted: formatTimeDelta(timeDelta, {\n daysInHours: daysInHours,\n zeroPadTime: zeroPadTime,\n zeroPadDays: zeroPadDays\n })\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n if (this.legacyMode) {\n var _this$props3 = this.props,\n count = _this$props3.count,\n _children = _this$props3.children,\n onComplete = _this$props3.onComplete;\n return createElement(Countdown, {\n ref: this.legacyCountdownRef,\n count: count,\n onComplete: onComplete\n }, _children);\n }\n var _this$props4 = this.props,\n className = _this$props4.className,\n overtime = _this$props4.overtime,\n children = _this$props4.children,\n renderer = _this$props4.renderer;\n var renderProps = this.getRenderProps();\n if (renderer) {\n return renderer(renderProps);\n }\n if (children && this.state.timeDelta.completed && !overtime) {\n return cloneElement(children, {\n countdown: renderProps\n });\n }\n var _renderProps$formatte = renderProps.formatted,\n days = _renderProps$formatte.days,\n hours = _renderProps$formatte.hours,\n minutes = _renderProps$formatte.minutes,\n seconds = _renderProps$formatte.seconds;\n return createElement(\"span\", {\n className: className\n }, renderProps.total < 0 ? '-' : '', days, days ? ':' : '', hours, \":\", minutes, \":\", seconds);\n }\n }]);\n return Countdown$1;\n}(Component);\nCountdown$1.defaultProps = Object.assign(Object.assign({}, timeDeltaFormatOptionsDefaults), {\n controlled: false,\n intervalDelay: 1000,\n precision: 0,\n autoStart: true\n});\nexport default Countdown$1;\nexport { calcTimeDelta, formatTimeDelta, zeroPad };","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\nimport Countdown from \"react-countdown\"\nimport Text from \"../shared/Text\"\n\nconst CountdownStyled = styled.div`\n\twidth: 100%;\n\tbackground: ${props => props.theme.colors.white};\n\tfont-family: ${props => props.theme.font.family.heading};\n\tfont-size: ${props => props.theme.font.size.base};\n\t//font-style: italic;\n\tposition: absolute;\n\ttop: 3.75rem;\n\tleft: 0;\n\ttext-align: center;\n\tpadding: .75rem 0;\n\tborder-bottom: solid 10px ${props => props.theme.colors.secondary};\n\tstrong {\n\t\tcolor: ${props => props.theme.colors.primary};\n\t}\n\t@media ${media.sm} {\n\t\ttop: 5rem;\n\t}\n\t@media ${media.md} {\n\t\ttop: 6.2rem;\n\t\tfont-size: ${props => props.theme.font.size.md};\n\t}\n\t@media ${media.lg} {\n\t\tborder: none;\n\t\twidth: auto;\n\t\tbackground: none;\n\t\tposition: absolute;\n\t\tdisplay: inline-block;\n\t\tcolor: ${props => props.theme.colors.white};\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\tfont-size: ${props => props.theme.font.size.base};\n\t\ttext-align: center;\n\t\t//font-style: italic;\n\t\tposition: relative;\n\t\ttop: 50%;\n\t\ttransform: translateY(-50%);\n\t\tstrong {\n\t\t\tcolor: ${props => props.theme.colors.secondary};\n\t\t\tfont-size: ${props => props.theme.font.size.md};\n\t\t}\n\t}\n\t@media (min-width: 1300px) {\n\t\tleft: 6rem;\n\t}\n\t@media (min-width: 1650px) {\n\t\tpadding: 0;\n\t\tmargin: 0;\n\t\tleft: 6rem;\n\t\tfont-size: ${props => props.theme.font.size.lg};\n\t\tstrong {\n\t\t\tfont-size: ${props => props.theme.font.size.lg};\n\t\t}\n\t}\n\t${props => props.navActive && css`\n\t\t\n\t\t\tdisplay: none!important;\n\t\t\n\t`}\n`\n\nconst renderer = ({ days, hours, minutes, seconds, completed }) => {\n\tif (completed) {\n\t\t// Render a completed state\n\t\treturn \"\";\n\t} else {\n\t\t// Render a countdown\n\t\treturn(\n\t\t\t<>\n\t\t\t\t{days} DAYS {hours} HRS {minutes} MINS {seconds} SECS\n\t\t\t>\n\t\t)\n\t}\n};\n\nconst HeaderCountdown = (props) => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst { headerCountdown, countdownText, displayCountdown } = data.allWp.edges[0]?.node?.options?.acfOptions\n\tlet date = headerCountdown && headerCountdown.split(',')\n\n\tif (date && displayCountdown === \"yes\") {\n\t\tlet year = date[0]\n\t\tlet month = date[1] - 1\n\t\tlet day = date[2]\n\t\tlet minutes = date[3]\n\t\tlet secs = date[4]\n\n\t\tdate = new Date(year, month, day, minutes, secs)\n\n\t\treturn (\n\t\t\t\n\t\t\t\t{countdownText &&\n\t\t\t\t\t{countdownText}\n\t\t\t\t\t// old props $md $bold $uppercase\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\n\t\t)\n\t} else return \"\"\n}\n\nexport default HeaderCountdown","export default __webpack_public_path__ + \"static/mado-logo-659408d7ff356a2d896cf6cb6a70a143.svg\";","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\n// import classNames from \"classnames\"\nimport logo from \"images/mado-logo.svg\"\n// import desktopLogo from 'images/desktop-logo.png'\nimport { StaticImage } from \"gatsby-plugin-image\"\nimport styled from \"styled-components\"\nimport { media } from 'utils/Media'\n// import logoStacked from \"images/logo-stacked.svg\"\n\nconst StyledLogo = styled.div`\n\tdisplay: inline-block;\n\t.mobile {\n\t\t@media ${media.xl} {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\t.desktop {\n\t\tdisplay: none;\n\t\t@media ${media.xl} {\n\t\t\twidth: 100%;\n\t\t\tdisplay: block;\n\t\t\timg {\n\t\t\t\twidth: auto;\n\t\t\t\theight: auto;\n\t\t\t\tmax-width: 400px;\n\t\t\t}\n\t\t}\n\t\t@media ${media.xxl} {\n\t\t\timg {\n\t\t\t\tmax-width: 500px;\n\t\t\t}\n\t\t}\n\t}\n`\n\nconst Logo = () => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery LogoQuery {\n\t\t\tsite {\n\t\t\t\tsiteMetadata {\n\t\t\t\t\ttitle\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\t\n\treturn(\n\t\t\n\t\t\t{/* */}\n\t\t\t\t

\n\t\t\t{/*
*/}\n\t\t\t{/* \n\t\t\t\t

\n\t\t\t
*/}\n\t\t\t{/* {props.stacked &&\n\t\t\t\t\t
\n\t\t\t} */}\n\t\t\n\t)\n}\n\nLogo.defaultProps = {\n stacked: false\n}\n\n\nexport default Logo\n","export default __webpack_public_path__ + \"static/WTA_500_Logo-a105f1b50e6d1b7375df8f51c4d7787a.png\";","import React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\nimport { Link } from \"gatsby\"\nimport Nav from \"./Nav\"\nimport HeaderCountdown from \"./HeaderCountdown\"\nimport ContainerMax from \"components/shared/ContainerMax\"\nimport Logo from \"components/shared/Logo\"\nimport logo2 from \"images/WTA_500_Logo.png\"\n\nconst NavBarWrap = styled.div`\n\theight: 60px;\n\tdisplay: flex;\n\talign-items: center;\n\tposition: relative;\n\ttransition: background-color .4s ease;\n\t@media ${media.sm} {\n\t\theight: 80px;\n\t}\n\t@media ${media.md} {\n\t\theight: 100px;\n\t}\n\t@media ${media.lg} {\n\t\tborder-bottom: solid 10px ${props => props.theme.colors.primary};\n\t\t${props => props.navActive && css`\n\t\t\tborder-bottom: solid 10px ${props => props.theme.colors.white};\n\t`}\n\t}\n\n\t&:after {\n\t\t@media ${media.lg} {\n\t\t\tcontent: \"\";\n\t\t\tposition: absolute;\n\t\t\ttop: 100%;\n\t\t\theight: 25px;\n\t\t\twidth: 100%;\n\t\t\tbackground-image: linear-gradient(to bottom, rgba(0, 0, 0, .1), rgba(0, 0, 0, 0));\n\t\t}\n\t\t\n\t\t\n\t\t${props => props.navActive && css`\n\t\tdisplay: none;\n\t\t`}\n\t}\n`\n\nconst ContainerMaxStyled = styled(ContainerMax)`\n\theight: 100%;\n\tposition: relative;\n`\n\nconst NavBarToggle = styled.button`\n\tposition: absolute;\n\ttop: 50%;\n\ttransform: translateY(-50%);\n\tbackground-color: transparent;\n\tborder: 0;\n\twidth: 30px;\n\theight: 25px;\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tleft: 1rem;\n\tpadding: 0;\n\n\t@media ${media.lg} {\n\t\tleft: auto;\n\t\tright: 30px;\n\t\tjustify-content: flex-end;\n\t}\n\n\tspan {\n\t\tposition: absolute;\n\t\theight: 2px;\n\t\twidth: 100%;\n\t\tbackground-color: ${props => props.theme.colors.white};\n\t\tleft: 0;\n\t\t@media ${media.lg} {\n\t\t\tright: 0;\n\t\t\tleft: auto;\n\t\t}\n\t\t\n\t\t&:nth-child(1) {\n\t\t\ttop: 0;\n\t\t}\n\t\t\n\t\t&:nth-child(2) {\n\t\t\ttop: 50%;\n\t\t\twidth: 20px;\n\t\t\ttransform: translateY(-50%);\n\t\t}\n\t\t\n\t\t&:nth-child(3) {\n\t\t\tbottom: 0;\n\t\t\twidth: 15px;\n\t\t}\n\t}\n\n\t${props => props.navActive && css`\n\tspan {\n\t\tbackground-color: ${props => props.theme.colors.white};\n\t\t&:nth-child(1) {\n\t\t\ttop: 50%;\n\t\t\tleft: 50%;\n\t\t\tright: auto;\n\t\t\ttransform: translate(-50%, -50%) rotate(-45deg);\n\t\t}\n\t\t\n\t\t&:nth-child(2) {\n\t\t\topacity: 0;\n\t\t}\n\t\t\n\t\t&:nth-child(3) {\n\t\t\ttop: 50%;\n\t\t\twidth: 100%;\n\t\t\tleft: 50%;\n\t\t\tright: auto;\n\t\t\tbottom: auto;\n\t\t\ttransform: translate(-50%, -50%) rotate(45deg);\n\t\t}\n\t}\n\t`}\n`\n\nconst LogoWrap = styled(Link)`\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 50%;\n\t/* width: 100%; */\n\ttransform: translate(-50%, -50%);\n\ttext-align: center;\n\n\timg {\n\t\twidth: 300px;\n\t\theight: 58px;\n\t\t/* max-height: 69px; */\n\t\tmax-height: 100%;\n\n\t\t@media ${media.md} {\n\t\t\t/* max-width: 350px; */\n\t\t\t/* max-height: 90px; */\n\n\t\t}\n\t\t@media ${media.lg} {\n\t\t\t/* max-width: 375px; */\n\t\t}\n\t\t@media ${media.xxl} {\n\t\t\t/* max-width: 400px; */\n\t\t}\n\t}\n\n\t@media ${media.sm} {\n\t\twidth: auto;\n\t\ttext-align: left;\n\t}\n`\n\nconst WtaLogo = styled.img`\n\twidth: 60px;\n\tposition: absolute;\n\tright: 1rem;\n\ttop: 50%;\n\ttransform: translateY(-50%);\n\n\t@media ${media.sm} {\n\t\twidth: 75px;\n\t}\n\n\t@media ${media.lg} {\n\t\tright: 5rem;\n\t}\n\n\t@media (min-width: 1300px) {\n\t\tleft: 1rem;\n\t}\n\n\t@media (min-width: 1650px) {\n\t\tleft: -2rem;\n\t}\n`\n\nconst NavBar = (props) => {\n\tconst toggleNavLogo = () => {\n\t\tif(props.navActive) {\n\t\t\t// document.body.classList.toggle('nav-active')\n\t\t\tprops.toggleNav()\n\t\t}\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t)\n}\n\nexport default NavBar","import React, { useState } from \"react\"\nimport { graphql, useStaticQuery } from \"gatsby\"\nimport { Container, Row, Col, UncontrolledCollapse } from \"reactstrap\"\nimport styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faAngleDown } from \"@fortawesome/free-solid-svg-icons\"\nimport classNames from \"classnames\"\nimport WPLink from \"components/shared/WPLink\"\n\nconst MenuList = styled.ul`\n\tpadding: 0;\n\tmargin: 0;\n\tlist-style: none;\n\n\t@media ${media.md} {\n\t\tpadding-bottom: 5rem;\n\t}\n\n\tli {\n\t\ttext-align: center;\n\t\tspan {\n\t\t\t/* font-family: ${props => props.theme.font.family.atp}; */\n\t\t\tcolor: ${props => props.theme.colors.orangeDark};\n\t\t}\n\t}\n\n\tul {\n\t\tmargin: 0;\n\t\tpadding: 1rem 0 0 0;\n\t\tlist-style: none;\n\t\t\n\t\t@media ${media.md} {\n\t\t\tpadding: 0;\n\t\t}\n\t\t\n\t\t.linkWrap {\n\t\t\tposition: relative;\n\t\t}\n\t\t\n\t\ta, span {\n\t\t\tdisplay: block;\n\t\t\tcolor: ${props => props.theme.colors.black};\n\t\t\tfont-size: ${props => props.theme.font.size.md};\n\t\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\t\t//font-style: italic;\n\t\t\tfont-weight: ${props => props.theme.font.weight.regular};\n\t\t\ttext-transform: uppercase;\n\t\t\ttext-align: center;\n\t\t\ttext-decoration: none;\n\t\t\tpadding: .25rem 0;\n\t\t\t@media ${media.md} {\n\t\t\t\tpadding-bottom: 0;\n\t\t\t}\n\t\t\t\n\t\t\t&.item-wrapper--double {\n\t\t\t\t/* padding-bottom: 1.5rem; */\n\t\t\t\t\n\t\t\t\t@media ${media.md} {\n\t\t\t\t\tpadding: .5rem 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t&:hover, &.active {\n\t\t\t\tcolor: ${props => props.theme.colors.secondary};\n\t\t\t\ttext-decoration: none;\n\t\t\t}\n\t\t}\n\t\t\n\t\t.toggleSubnav {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\ttransform: translateY(-50%) rotate(0);\n\t\t\tbackground: transparent;\n\t\t\tborder: 0;\n\t\t\tfont-size: 1.5rem;\n\t\t\tcolor: black;\n\t\t\tright: -2rem;\n\t\t\t\n\t\t\t@media ${media.md} {\n\t\t\t\tright: 0;\n\t\t\t}\n\t\t\t\n\t\t\t&.active {\n\t\t\t\tcolor: ${props => props.theme.colors.primary};\n\t\t\t\ttransform: translateY(-50%) rotate(180deg);\n\t\t\t}\n\t\t}\n\t\t\n\t\t.subNav {\n\t\t\twidth: 100%;\n\t\t\tul {\n\t\t\t\tlist-style: none;\n\t\t\t\tli {\n\t\t\t\t\ta, span {\n\t\t\t\t\t\tcolor: ${props => props.theme.colors.black};\n\t\t\t\t\t\tfont-size: ${props => props.theme.font.size.md};\n\t\t\t\t\t\t\n\t\t\t\t\t\t@media ${media.md} {\n\t\t\t\t\t\t\tfont-size: ${props => props.theme.font.size.xxl};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t.collapse {\n\n\t\t@media ${media.md} {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n`\n\nconst MenuButton = styled.button`\n\tcursor: pointer;\n\tbackground-color: transparent;\n\tborder: 0;\n\ttext-transform: uppercase;\n\tcolor: ${props => props.theme.colors.primary};\n\ttext-align: center;\n\twidth: 100%;\n\tfont-family: ${props => props.theme.font.family.heading};\n\tfont-size: ${props => props.theme.font.size.xl};\n\t//font-style: italic;\n\tfont-weight: ${props => props.theme.font.weight.regular};\n\tposition: relative;\n\t\n\tsvg {\n\t\tmargin-left: 15px;\n\t\tcolor: black;\n\t\ttransform: ${({ active }) => (active ? 'rotate(180deg)' : 'rotate(0deg)')};\n\t\t@media ${media.md} {\n\t\t\tdisplay: none;\n\t\t}\n\t\t&.active { \n\n\t\t}\n\t}\n/* \n\t@media ${media.md} {\n\t\tpointer-events: none;\n\t\tcursor: default;\n\t} */\n\n\t&:focus {\n\t\toutline: 0;\n\t}\n\n\t.icon {\n\t\tposition: absolute;\n\t\tleft: 50%;\n\t\ttransform: translateX(-50%);\n\t\tbottom: -1rem;\n\t\t\n\t\t@media ${media.md} {\n\t\t\t/* display: none; */\n\t\t}\n\t\t\n\t\t&:before {\n\t\t\tdisplay: block;\n\t\t\tposition: relative;\n\t\t\ttransform: rotate(0);\n\t\t}\n\t}\n\n\t&.active {\n\t\t.icon, svg {\n\t\t\t&:before {\n\t\t\t\ttransform: rotate(180deg);\n\t\t\t}\n\t\t}\n\t}\n`\n\nconst NavFullNav = (props) => {\n\tconst data = useStaticQuery(graphql`\n\tquery {\n\t\tallWpMenu(filter: {locations: {eq: PRIMARY_FULL}}) {\n\t\t\tedges {\n\t\t\t\tnode {\n\t\t\t\t\tlocations\n\t\t\t\t\tmenuItems {\n\t\t\t\t\t\tnodes {\n\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\tpath\n\t\t\t\t\t\t\ttarget\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\tparentDatabaseId\n\t\t\t\t\t\t\tchildItems {\n\t\t\t\t\t\t\t\tnodes {\n\t\t\t\t\t\t\t\t\tpath\n\t\t\t\t\t\t\t\t\ttarget\n\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t`)\n\n\tconst menuItems = data.allWpMenu?.edges[0]?.node?.menuItems\n\n\tconst toggleFullNav = () => {\n\t\tdocument.body.classList.toggle('nav-active')\n\t}\n\n\tconst checkLink = (link) => {\n\t\tlet linkHtml\n\n\t\tif (link.target !== null || link.path.substring(0, 1) !== \"/\") {\n\t\t\tlinkHtml = toggleFullNav()} aria-label={link.label}>\n\t\t} else {\n\t\t\tif (typeof window !== \"undefined\" && link.path === window.location.pathname) {\n\t\t\t\tlinkHtml = \n\t\t\t} else {\n\t\t\t\tlinkHtml = \n\t\t\t}\n\t\t}\n\n\t\treturn linkHtml\n\t}\n\n\tconst mainMenu = menuItems && menuItems.nodes.map((node, i) => {\n\t\tif (node.parentDatabaseId === 0) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{node.childItems.nodes.length > 0 &&\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{node.childItems.nodes.map((node, i) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t- \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{checkLink(node)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)\n\t\t} \n\t})\n\n\treturn(\n\t\t\n\t\t\t\n\t\t\t\t{mainMenu}\n\t\t\t
\n\t\t\n\t)\n}\n\nexport default NavFullNav","import styled from \"styled-components\"\n\nconst SocialList = styled.ul`\n\tpadding: 0;\n\tmargin: 0;\n\n\tli {\n\t\tpadding-left: 0;\n\t\tdisplay: inline-block;\n\t\t\n\t\t&:before {\n\t\t\tdisplay: none;\n\t\t}\n\t\t\n\t\ta {\n\t\t\tcolor: ${props => props.theme.colors.white};\n\t\t\tpadding: .5rem;\n\t\t\ttext-align: center;\n\t\t\tfont-size: 1.25rem;\n\t\t\t\n\t\t\t&:hover {\n\t\t\t\tcolor: ${props => props.theme.colors.primary};\n\t\t\t\ttext-decoration: none;\n\t\t\t}\n\t\t}\n\t}\n`\n\nexport default SocialList","import React from \"react\"\nimport { graphql, useStaticQuery } from \"gatsby\"\nimport SocialList from \"components/shared/SocialList\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faFacebookF, faXTwitter, faInstagram, faYoutube, faTiktok } from \"@fortawesome/free-brands-svg-icons\"\n\nconst Social = (props) => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst { \n\t\tsocialFacebookGlobal,\n\t\tsocialTwitterGlobal,\n\t\tsocialInstagramGlobal,\n\t\tsocialYoutubeGlobal,\n\t\tsocialTiktokGlobal\n\t} = data.allWp.edges[0]?.node?.options?.acfOptions\n\n\treturn(\n\t\t\n\t\t\t{socialFacebookGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tFacebook\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialTwitterGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tTwitter\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialInstagramGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tInstagram\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialYoutubeGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tYoutube\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialTiktokGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tTiktok\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\n\t)\n}\n\nexport default Social","import React from \"react\"\nimport { Row, Col } from \"reactstrap\"\nimport ContainerMax from \"components/shared/ContainerMax\"\nimport styled from \"styled-components\"\nimport Social from \"components/shared/Social\"\n\nconst NavFullFooterWrap = styled.div`\n width: 100%;\n padding: 1.25rem 0;\n background-color: ${props => props.theme.colors.primary};\n`\n\nconst ContainerMaxStyled = styled(ContainerMax)`\n padding-left: 2rem;\n padding-right: 2rem;\n`\n\nconst SocialStyles = styled.div`\n list-style: none;\n text-align: center;\n padding: 0;\n margin: 0;\n li {\n display: inline-block;\n a {\n color: ${props => props.theme.colors.white} !important;\n font-size: 1.5rem;\n padding: 0 1rem;\n }\n }\n`\n\nconst NavFullFooter = (props) => {\n return(\n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n \n )\n}\n\nexport default NavFullFooter","import React from \"react\"\nimport styled from \"styled-components\"\nimport classNames from \"classnames\"\nimport NavFullNav from \"./NavFullNav\"\nimport NavFullFooter from \"./NavFullFooter\"\nimport { media } from \"utils/Media\"\n\nconst NavFullWrap = styled.div`\n\t/* position: fixed; */\n\twidth: 100vw;\n\tmax-height: calc(100vh - ${props => props.navTop});\n\t/* background: ${props => props.theme.colors.gradient}; */\n\tz-index: 600;\n\ttop: ${props => props.navTop};\n\tleft: 0;\n\tvisibility: hidden;\n\theight: 0;\n\topacity: 0;\n\ttransition: opacity .4s ease;\n\t/* padding-top: 1.3rem; */\n\toverflow-y: auto;\n\n\t&.active {\n\t\tvisibility: visible;\n\t\topacity: 1;\n\t\theight: 100vh;\n\t}\n`\n\nconst NavFullInner = styled.div`\n\tpadding-top: 1.5rem;\n\tbackground: ${props => props.theme.colors.white};\n\twidth: 100%;\n\tmin-height: 100%;\n\tposition: relative;\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\t\n\t@media ${media.md} {\n\t\tpadding-top: 7.5rem;\n\t}\n`\n\nconst NavFull = (props) => {\n\treturn(\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t)\n}\n\nexport default NavFull","import React, { useEffect, useState } from \"react\"\nimport styled from \"styled-components\"\nimport HeaderAnnouncement from \"./HeaderAnnouncement\"\nimport NavBar from \"./NavBar\"\nimport NavFull from \"./NavFull\"\n\nconst HeaderWrap = styled.header`\n\tposition: fixed;\n\twidth: 100%;\n\ttop: 0;\n\tleft: 0;\n\tz-index: 100;\n\n\t&:before {\n\t\tcontent: \"\";\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbackground: ${props => props.theme.colors.tertiary};\n\t}\n`\n\nconst Header = (props) => {\n\tconst [navActive, setNavActive] = useState(false)\n\tconst [navTop, setNavTop] = useState(\"0px\")\n\n\tuseEffect(() => {\n\t\twindow.addEventListener(\"resize\", setNavTop, true)\n\n\t\treturn () => {\n window.removeEventListener('resize', setNavTop);\n };\n }, [])\n\t\n\tconst toggleNav = (e) => {\n\t\te && e.preventDefault()\n\t\t\n\t\tcalcNavTop()\n\t\t\n\t\tsetNavActive(!navActive)\n\t\t\n\t\tdocument.body.classList.toggle('nav-active')\n\t}\n\n\tconst calcNavTop = () => {\n\t\tlet navTop\n\t\tconst header = document.getElementsByClassName(\"headerWrap\")[0];\n\t\tif (header !== undefined) {\n\t\t\tconst headerHeight = header.clientHeight\n\t\t\tnavTop = `${headerHeight}px`\n\t\t}\n\t\t\n\t\tsetNavTop(navTop)\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t>\n\t)\n}\n\nexport default Header","import React from \"react\"\nimport { graphql, useStaticQuery } from \"gatsby\"\nimport { Container, Row, Col, Label, FormGroup, Input } from \"reactstrap\"\nimport MailchimpSubscribe from \"react-mailchimp-subscribe\"\nimport styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\nimport Button from \"components/shared/Button\"\nimport Text from \"components/shared/Text\"\nimport { useState } from \"react\"\n\nconst ContainerStyled = styled(Container)`\n\tbackground:${props => props.theme.colors.tertiary};\n\tcolor: ${props => props.theme.colors.grey1}; \n\tpadding-top: 1.5rem;\n\tpadding-bottom: 1.5rem;\n\n\t@media ${media.md} {\n\t\tpadding-top: 3rem;\n\t\tpadding-bottom: 3rem;\n\t}\n\n\tlabel {\n\t\tfont-size: ${props => props.theme.font.size.sm};\n\t\tmargin: 0;\n\t}\n\tinput[type='checkbox'] {\n\t\twidth: 20px;\n\t\theight: 20px;\n\t\tborder-radius: 0!important;\n\t\tfloat: none!important;\n\t}\n\n\ta {\n\t\tcolor: ${props => props.theme.colors.yellow};\n\t\t\n\t\t&:hover {\n\t\t\ttext-decoration: underline;\n\t\t}\n\t}\n`\n\nconst FormWrap = styled.form`\n\tpadding-top: 1rem;\t\n\twidth: 100%;\n`\n\nconst StyledInput = styled.input`\n\tcolor: ${props => props.theme.colors.grey1};\n\tbackground-color: ${props => props.theme.colors.white};\n\tpadding: .15rem 1rem;\n\twidth: 100%;\n\tborder: 1px solid ${props => props.theme.colors.grey2};\n\theight: 50px;\n\n\t&::placeholder {\n\t\tcolor: ${props => props.theme.colors.grey3};\n\t\tfont-weight: ${props => props.theme.font.weight.bold};\n\t}\n\t@media ${media.lg} {\n\t\theight: 53px;\n\t}\n`\n\nconst StyledSelect = styled.select`\n\tcolor: ${props => props.theme.colors.grey1};\n\tbackground-color: ${props => props.theme.colors.white};\n\tpadding: .15rem 1rem;\n\twidth: 100%;\n\tborder: 1px solid ${props => props.theme.colors.grey2};\n\theight: 50px;\n\t.placeholder {\n\t\tcolor: ${props => props.theme.colors.grey3};\n\t\tfont-weight: ${props => props.theme.font.weight.bold};\n\t}\n\t@media ${media.lg} {\n\t\theight: 53px;\n\t}\n`\n\nconst SubmitButton = styled(Button)`\n\t/* margin-top: 2.5rem; */\n\tpadding-left: 2.5rem;\n\tpadding-right: 2.5rem;\n\tmargin: .5rem auto 0 auto;\n\t@media ${media.md} {\n\t\tmargin: 0;\n\t}\n`\n\nconst ErrorMessage = styled.div`\n\tcolor: ${props => props.theme.colors.red}; \n\tfont-size: ${props => props.theme.font.size.sm}; \n\ttext-align: left;\n\tpadding-bottom: 1rem;\n\n\ta {\n\t\tcolor: ${props => props.theme.colors.white};\n\t}\n\n\t${props => props.left && css`\n\t\ttext-align: left;\n\t`}\n`\nconst ErrorStyles = styled.div`\n\twidth: 100%;\n\t.form-check {\n\t\tpadding-left: 0;\n\t\t.form-check-label {\n\t\t\tdisplay: block;\n\t\t\tcolor: ${props => props.theme.colors.white};\n\t\t}\n\t}\n\n\t.check-wrap {\n\t\tdisplay: flex;\n\n\t\t.check-col {\n\n\t\t\t&:first-child { \n\t\t\t\twidth: 40px;\n\t\t\t\tpadding-right: 1rem;\n\t\t\t}\n\n\t\t\tinput[type=\"checkbox\"] {\n\t\t\t\tmargin: 0;\n\t\t\t}\n\t\t}\n\t}\n`\n\nconst TextStyled = styled(Text)`\n\tfont-size: 1.25rem;\n\n\t@media ${media.md} {\n\t\tfont-size: 1.65rem;\n\t}\n`\n\nconst NewsletterForm = (props) => {\n\tconst [values, setValues] = useState({\n\t\tFNAME: \"\",\n\t\tLNAME: \"\",\n\t\tEMAIL: \"\",\n\t\tCOUNTRY: \"\",\n\t\tEMIRATE: \"\",\n\t})\n\tconst [termsChecked, setTermsChecked] = useState(false)\n\tconst [termsError, setTermsError] = useState(false)\n\n // componentDidUpdate(previousProps) {\n // if (previousProps.status !== this.props.status) {\n // if (this.props.status === \"success\") {\n // this.setState({\n // FNAME: \"\",\n // LNAME: \"\",\n // EMAIL: \"\",\n // COUNTRY: \"\",\n // termsChecked: false,\n // termsError: false\n // })\n // }\n // }\n // }\n\n\tconst formatMessage = (message) => {\n\t\tif (message.includes(\"0 - Please enter a value\")) {\n\t\t\treturn \"Please enter your email address.\"\n\t\t}\n\t\tif (message.includes(\"1 - Please enter a value\")) {\n\t\t\treturn \"Please enter your first name.\"\n\t\t}\n\t\tif (message.includes(\"2 - Please enter a value\")) {\n\t\t\treturn \"Please enter your last name.\"\n\t\t}\n\t\tif (message.includes(\"4 - Please enter a value\")) {\n\t\t\treturn \"Please select your country.\"\n\t\t}\n\n\t\tif (message.includes(\"An email address must contain\")) {\n\t\t\treturn \"Please enter a valid email address.\"\n\t\t}\n\n\t\tif (message.includes(\"The domain portion of the email address is invalid\")) {\n\t\t\treturn \"Please enter a valid email address.\"\n\t\t}\n\n\t\tif (message.includes(\"This email cannot be added to this list\")) {\n\t\t\treturn \"This email address is already registered. Please enter a different email address.\"\n\t\t}\n\n\t\treturn message\n\t}\n\n\tconst handleChange = (e) => {\n\t\tconst target = e.target;\n\t\tconst name = target.name;\n\t\tconst value = target.value;\n\n\t\tsetValues(values => ({\n\t\t\t...values,\n\t\t\t[name] : value,\n\t\t}))\n\t}\n\n const handleCheckboxChange = (e) => {\n\t\tsetTermsChecked(e.target.checked)\n\t} \n\n const handleSubmit = (e) => {\n\t\te.preventDefault();\n\t\tif (termsChecked) {\n\t\t\tsetTermsError(false)\n\t\t\tprops.onValidated({\n\t\t\t\tFNAME: values.FNAME,\n\t\t\t\tLNAME: values.LNAME,\n\t\t\t\tEMAIL: values.EMAIL,\n\t\t\t\tCOUNTRY: values.COUNTRY,\n\t\t\t\tEMIRATE: values.EMIRATE,\n\t\t\t})\n\t\t} else {\n\t\t\tsetTermsError(true)\n\t\t}\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\thandleChange(e)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\thandleChange(e)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\thandleChange(e)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\t{values.COUNTRY === \"United Arab Emirates\" &&\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\t{props.status === \"error\" &&\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{props.buttonText}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\n\t\t\t\t{props.status === \"success\" && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)} \n\t\t\t
\n\t\t\n\t)\n}\n\nconst NewsletterSignup = (props) => {\n\tconst url = \"https://img.us12.list-manage.com/subscribe/post?u=0785efbb63e5c3e387c7d7141&id=aca3ce2b62&f_id=009ab5e0f0\"\n\t\n\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\toptions {\n\t\t\t\t\t\t\tacfOptions {\n\t\t\t\t\t\t\t\tblockNewsletterSignup {\n\t\t\t\t\t\t\t\t\ttext\n\t\t\t\t\t\t\t\t\ttermsText\n\t\t\t\t\t\t\t\t\tbuttonText\n\t\t\t\t\t\t\t\t\tsuccessText\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst { blockNewsletterSignup } = data.allWp.edges[0]?.node?.options?.acfOptions\n\t\n\tif (blockNewsletterSignup) {\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t subscribe(formData)}\n\t\t\t\t\t\t\t\t\ttermsText={blockNewsletterSignup.termsText}\n\t\t\t\t\t\t\t\t\tbuttonText={blockNewsletterSignup.buttonText}\n\t\t\t\t\t\t\t\t\tsuccessText={blockNewsletterSignup.successText}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t\n\t\t)\n\t} else return \"\"\n}\n\nexport default NewsletterSignup","import React, { useState } from \"react\"\nimport { graphql, useStaticQuery } from \"gatsby\"\nimport { GatsbyImage } from \"gatsby-plugin-image\"\nimport { Container, Row, Col } from \"reactstrap\"\nimport styled from \"styled-components\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faFacebookF, faXTwitter, faInstagram, faYoutube, faTiktok } from \"@fortawesome/free-brands-svg-icons\"\nimport ContentMax from \"components/shared/ContentMax\"\nimport { media } from \"utils/Media\"\nimport Button from \"components/shared/Button\"\n\nconst ContainerStyled = styled(Container)`\n\tpadding-top: 3rem;\n\tpadding-bottom: 3rem;\n\tbackground-color: ${props => props.theme.colors.white};\n\n\th3 {\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\ttext-transform: uppercase;\n\t\tcolor: ${props => props.theme.colors.tertiary};\n\t\tfont-family: ${props => props.theme.font.family.body};\n\t\t//font-style: italic;\n\t\tfont-weight: 400;\n\t\tfont-size: 2.5rem;\n\t\tpadding-bottom: 1rem;\n\t\ttext-align: center;\n\t\t\n\t\t@media ${media.md} {\n\t\t\tfont-size: 3.25rem;\n\t\t\tpadding-bottom: 2rem;\n\t\t}\n\t\t\n\t\ta {\n\t\t\tcolor: ${props => props.theme.colors.tertiary};\n\t\t\tpadding: .75rem;\n\t\t\tfont-size: 1.5rem;\n\t\t\tpadding-top: 1rem;\n\t\t\t\n\t\t\t@media ${media.sm} {\n\t\t\t\tfont-size: 2rem;\n\t\t\t}\n\t\t\t\n\t\t\t@media ${media.lg} {\n\t\t\t\tfont-size: 2.25rem;\n\t\t\t\tpadding-left: 2rem;\n\t\t\t}\n\t\t\t\n\t\t\tsvg {\n\t\t\t\tmax-height: 37px;\n\t\t\t}\n\t\t\t\n\t\t\t&:hover {\n\t\t\t\tcolor: ${props => props.theme.colors.secondary};\n\t\t\t}\n\t\t}\n\t}\n`\n\nconst ImageWrap = styled.div`\n\tposition: relative;\n\tline-height: 0;\n`\n\nconst SocialImages = (props) => {\n\tconst [activeSet, setActiveSet] = useState(0)\n\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst { \n\t\tsocialImages,\n\t\tsocialFacebookGlobal,\n\t\tsocialTwitterGlobal,\n\t\tsocialInstagramGlobal,\n\t\tsocialYoutubeGlobal,\n\t\tsocialTiktokGlobal\n\t} = data.allWp?.edges[0]?.node?.options?.acfOptions\n\n\tconst rotateImages = (e) => {\n\t\te.preventDefault();\n\t\tconst set = activeSet + 1\n\t\tsetActiveSet(set === socialImages.length ? 0 : set)\n\t}\n\n\tconst imageSets = socialImages && socialImages.map((images, i) => {\n\t\tif (activeSet === i) {\n\t\t\treturn(\n\t\t\t\t\n\t\t\t\t\t{images.images && images.images.map((image, i) => {\n\t\t\t\t\t\treturn(\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)\n\t\t\t\t\t})}\n\t\t\t\t
\n\t\t\t)\n\t\t} else return \"\"\n\t})\n\n\treturn(\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\n\t\t\t\t{imageSets && \n\t\t\t\t\t<>\n\t\t\t\t\t\t{imageSets}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t>\n\t\t\t\t}\n\t\t\t\n\t\t\n\t)\n}\n\nexport default SocialImages","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport { Row, Col } from \"reactstrap\"\nimport ContainerMax from \"components/shared/ContainerMax\"\nimport { GatsbyImage } from \"gatsby-plugin-image\";\nimport Text from \"components/shared/Text\"\n\nconst FooterSponsers = (props) => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst { footerSponserTitle, sponserLogoGroup } = data.allWp.edges[0]?.node?.options?.acfOptions\n\n\treturn (\n\t\t\n\t\t\t{footerSponserTitle &&\n\t\t\t\t\n\t\t\t\t\t{footerSponserTitle}\n\t\t\t\t\n\t\t\t}\n\t\t\t{sponserLogoGroup && sponserLogoGroup.map((group, i) => {\n\t\t\t\treturn(\n\t\t\t\t\t\n\t\t\t\t\t\t{group.title &&\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{group.title}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{group.footerSponserLogos && group.footerSponserLogos.map((logo, i) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t})}\n\t\t\t\t\t
\n\t\t\t\t)\n\t\t\t})}\n\t\t\n\t)\n}\n\nexport default FooterSponsers","import React from \"react\"\nimport styled from \"styled-components\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport WPLink from \"components/shared/WPLink\"\n\nconst FooterNavWrap = styled.div`\n\th5 {\n\t\tcolor: ${props => props.theme.colors.secondary};\n\t\tfont-family: ${props => props.theme.font.family.black};\n\t\ttext-transform: uppercase;\n\t\tfont-size: ${props => props.theme.font.size.md};\n\t\tmargin-bottom: 1.5rem;\n\t}\n\n\tul {\n\t\tmargin-bottom: 2rem;\n\t\tlist-style: none;\n\t\tpadding: 0;\n\t\tli {\n\t\t\tpadding-left: 0;\n\t\t\t&:before {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t\ta {\n\t\t\tfont-size: ${props => props.theme.font.size.base};\n\t\t\tfont-family: ${props => props.theme.font.family.body};\n\t\t\tcolor: ${props => props.theme.colors.white};\n\t\t\ttext-decoration: none;\n\t\t\t\n\t\t\t/* &:hover {\n\t\t\t\tcolor: ${props => props.theme.colors.grey1};\n\t\t\t} */\n\t\t}\n\t}\n`\n\nconst FooterMenu = (props) => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tfooter1: allWpMenu(filter: {locations: {eq: FOOTER1}}) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...menuFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tfooter2: allWpMenu(filter: {locations: {eq: FOOTER2}}) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...menuFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tfooter3: allWpMenu(filter: {locations: {eq: FOOTER3}}) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...menuFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tlet menu\n\tswitch (props.menu) {\n\t\tcase 1:\n\t\t\tmenu = data.footer1.edges\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tmenu = data.footer2.edges\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tmenu = data.footer3.edges\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\t\tbreak;\n\t}\n\n\tconst node = menu[0]?.node\n\n\tif (node?.menuItems?.nodes) {\n\t\t\treturn(\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)\n\t} else return \"\"\n}\n\nexport const menuFragment = graphql`\n\tfragment menuFragment on WpMenu {\n\t\tname\n\t\tmenuItems {\n\t\t\tnodes {\n\t\t\t\turl\n\t\t\t\ttarget\n\t\t\t\tlabel\n\t\t\t}\n\t\t}\n\t}\n`\n\nexport default FooterMenu","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport styled from \"styled-components\"\nimport { Container, Row, Col } from \"reactstrap\"\nimport { LinkSearchReplace } from \"utils/LinkSearchReplace\"\nimport googlePlay from \"images/google-play.png\"\nimport appleStore from \"images/apple-store.png\"\n\nconst ContainerStyled = styled(Container)`\n background-color: ${props => props.theme.colors.primary};\n text-align: center;\n color: ${props => props.theme.colors.white};\n .wrapper {\n width: 90%;\n margin: 0 auto;\n padding-bottom: 2rem;\n max-width: 550px;\n }\n h3 {\n padding-top: 1rem;\n color: ${props => props.theme.colors.white};\n font-family: ${props => props.theme.font.family.heading};\n font-size: ${props => props.theme.font.size.xl};\n }\n p {\n font-size: ${props => props.theme.font.size.base};\n font-family: ${props => props.theme.font.family.proxima};\n font-weight: 200;\n padding: .5rem 0;\n }\n \n a {\n display: block;\n }\n`\n\nconst FooterApp = (props) => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n const { \n appTitle,\n appText,\n googlePlayLink,\n appleStoreLink\n } = data.allWp.edges[0]?.node?.options?.acfOptions\n\n return (\n \n \n {appTitle &&\n
{appTitle}
\n }\n {appText &&\n
\n }\n
\n {appleStoreLink &&\n \n \n
\n \n \n }\n {googlePlayLink &&\n \n \n
\n \n \n }\n
\n
\n \n )\n}\n\nexport default FooterApp","import React from \"react\"\nimport { Container, Row, Col } from \"reactstrap\"\nimport FooterMenu from \"./FooterMenu\"\n\nconst FooterMenus = () => {\n return (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\n )\n}\n\nexport default FooterMenus","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport styled from \"styled-components\"\nimport { Row, Col } from \"reactstrap\"\nimport ContainerMax from \"components/shared/ContainerMax\"\nimport Text from \"components/shared/Text\"\nimport Social from \"components/shared/Social\"\nimport { LinkSearchReplace } from \"utils/LinkSearchReplace\"\nimport logo from \"images/mado-logo.svg\"\n\nconst ContainerMaxStyled = styled(ContainerMax)`\n\ttext-align: center;\n\ta {\n\t\tcolor: ${props => props.theme.colors.white};\n\t\tfont-family: ${props => props.theme.font.family.base};\n\t\tfont-weight: ${props => props.theme.font.weight.regular};\n\t\ttext-decoration: none;\n\n\t\t&:hover {\n\t\t\tcolor: ${props => props.theme.colors.white};\n\t\t}\n\t}\n\n\timg {\n\t\tmax-width: 53.5%;\n\t}\n`\n\n\nconst SocialWrap = styled.div`\n\th5 {\n\t\tcolor: ${props => props.theme.colors.secondary};\n\t\tfont-family: ${props => props.theme.font.family.bold};\n\t\ttext-transform: uppercase;\n\t\tfont-size: ${props => props.theme.font.size.sm};\n\t\tmargin-bottom: .25rem;\n\t}\n\tul {\n\t\tli {\n\t\t\ta {\n\t\t\t\tfont-size: 1.25rem;\n\t\t\t\tpadding: .5rem 1rem;\n\t\t\t\tcolor: ${props => props.theme.colors.white};\n\t\t\t\ttext-decoration: none;\n\t\t\t\t\n\t\t\t\t&:hover {\n\t\t\t\t\tcolor: ${props => props.theme.colors.primary};\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tsvg {\n\t\t\t\t\tmax-height: 20px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n`\n\n\nconst FooterText = () => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery {\n\t\t\tsite {\n\t\t\t\tsiteMetadata {\n\t\t\t\t\ttitle\n\t\t\t\t}\n\t\t\t}\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst { title } = data.site.siteMetadata\n\tconst { footerText } = data.allWp.edges[0]?.node?.options?.acfOptions\n\n\treturn (\n\t\t\n\t\t\t
\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t{footerText && \n\t\t\t\t\n\t\t\t}\n\t\t\n\t)\n}\n\nexport default FooterText","import React from \"react\"\nimport styled from \"styled-components\"\nimport { media } from \"utils/Media\"\nimport NewsletterSignup from \"./NewsletterSignup\"\nimport SocialImages from \"components/FlexibleContent/Blocks/SocialImages\"\nimport FooterSponsers from \"./FooterSponsers\"\nimport FooterApp from \"./FooterApp\"\nimport FooterMenus from \"./FooterMenus\"\nimport FooterText from \"./FooterText\"\n\nconst FooterBg = styled.div`\n\tbackground-color: ${props => props.theme.colors.tertiary};\n\tpadding: 3rem 0;\n\n\t@media ${media.md} {\n\t\tpadding: 2rem; \n\t}\n\n\t@media ${media.lg} {\n\t\tpadding: 2rem 4rem 4rem 4rem; \n\t}\n`\n\nconst Footer = (props) => {\n\treturn(\n\t\t\n\t)\n}\n\nexport default Footer","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport styled from \"styled-components\"\nimport { media } from \"utils/Media\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faFacebookF, faXTwitter, faInstagram, faYoutube, faTiktok } from \"@fortawesome/free-brands-svg-icons\"\n\nconst SocialSidebar = styled.ul`\n\tposition: fixed;\n\tright: 0;\n\ttop: 40%;\n\tbackground-color: ${props => props.theme.colors.white};\n\tpadding: .5rem 0;\n\tlist-style: none;\n\tdisplay: none;\n\tz-index: 500;\n\tmax-width: 40px;\n\toverflow: hidden;\n\n\t.nav-active & {\n\t\tz-index: 1;\n\t}\n\n\t@media ${media.md} {\n\t\tdisplay: block;\n\t}\n\n\tli {\n\t\tpadding-left: 0;\n\t\t&:before {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\ta {\n\t\tcolor: ${props => props.theme.colors.tertiary};\n\t\tpadding: .25rem .5rem;\n\t\tdisplay: block;\n\t\tfont-size: 1.25rem;\n\t\ttext-align: center;\n\t\t\n\t\tsvg {\n\t\t\tmax-height: 20px; \n\t\t\tmax-width: 20px; \n\t\t}\n\t\t\n\t\t&:hover {\n\t\t\tcolor: ${props => props.theme.colors.secondary};\n\t\t}\n\t}\n`\n\nconst SocialGlobal = () => {\n\tconst data = useStaticQuery(graphql`\n\t\tquery SocialQuery {\n\t\t\tallWp {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t...optionsFragment\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`)\n\n\tconst { \n\t\tsocialFacebookGlobal,\n\t\tsocialTwitterGlobal,\n\t\tsocialInstagramGlobal,\n\t\tsocialYoutubeGlobal,\n\t\tsocialTiktokGlobal\n\t} = data.allWp.edges[0]?.node.options?.acfOptions\n \n\treturn(\n\t\t\n\t\t\t{socialFacebookGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tFacebook\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialTwitterGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tTwitter\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialInstagramGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tInstagram\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialYoutubeGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tYoutube\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\t{socialTiktokGlobal &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tTiktok\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t\n\t)\n}\n\nexport default SocialGlobal","import Cookies from 'universal-cookie';\nexport default Cookies;","import * as React from 'react';\nimport Cookies from './Cookies';\nvar CookiesContext = React.createContext(new Cookies());\nexport var Provider = CookiesContext.Provider,\n Consumer = CookiesContext.Consumer;\nexport default CookiesContext;","import { useContext, useLayoutEffect, useState, useRef, useMemo } from 'react';\nimport CookiesContext from './CookiesContext';\nimport { isInBrowser } from './utils';\nexport default function useCookies(dependencies) {\n var cookies = useContext(CookiesContext);\n if (!cookies) {\n throw new Error('Missing ');\n }\n var initialCookies = cookies.getAll();\n var _a = useState(initialCookies),\n allCookies = _a[0],\n setCookies = _a[1];\n var previousCookiesRef = useRef(allCookies);\n if (isInBrowser()) {\n useLayoutEffect(function () {\n function onChange() {\n var newCookies = cookies.getAll();\n if (shouldUpdate(dependencies || null, newCookies, previousCookiesRef.current)) {\n setCookies(newCookies);\n }\n previousCookiesRef.current = newCookies;\n }\n cookies.addChangeListener(onChange);\n return function () {\n cookies.removeChangeListener(onChange);\n };\n }, [cookies]);\n }\n var setCookie = useMemo(function () {\n return cookies.set.bind(cookies);\n }, [cookies]);\n var removeCookie = useMemo(function () {\n return cookies.remove.bind(cookies);\n }, [cookies]);\n return [allCookies, setCookie, removeCookie];\n}\nfunction shouldUpdate(dependencies, newCookies, oldCookies) {\n if (!dependencies) {\n return true;\n }\n for (var _i = 0, dependencies_1 = dependencies; _i < dependencies_1.length; _i++) {\n var dependency = dependencies_1[_i];\n if (newCookies[dependency] !== oldCookies[dependency]) {\n return true;\n }\n }\n return false;\n}","export function isInBrowser() {\n return typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';\n}","import React, {useEffect} from \"react\"\nimport PropTypes from \"prop-types\"\nimport styled, {ThemeProvider} from \"styled-components\"\nimport isTouchDevice from \"is-touch-device\"\nimport classNames from \"classnames\"\n// import \"slick-carousel/slick/slick.css\"\n// import \"slick-carousel/slick/slick-theme.css\"\nimport Modal from \"components/shared/Modal\";\nimport 'scss/main.scss'\nimport Seo from \"utils/Seo\"\nimport {getParameterByName} from \"utils/Helpers\"\nimport GlobalStyles from \"utils/GlobalStyles\"\nimport theme from \"utils/Theme\"\nimport Header from \"components/Header/Header\"\nimport Footer from \"components/Footer/Footer\"\nimport SocialGlobal from \"components/shared/SocialGlobal\"\n// import SignupModal from \"components/shared/SignupModal\"\nimport {useCookies} from 'react-cookie';\n\nconst SiteWrap = styled.div`\n /* padding-top: 100px; */\n\n &.noPadding {\n padding-top: 0;\n }\n`\n\nconst Layout = (props) => {\n const [cookies, setCookie] = useCookies(['name']);\n useEffect(() => {\n const handleFirstTab = (e) => {\n if (e.keyCode === 9) { // the \"I am a keyboard user\" key\n document.body.classList.add('user-is-tabbing');\n window.removeEventListener('keydown', handleFirstTab);\n }\n }\n\n const attachTrackingToLinks = () => {\n const links = document.querySelectorAll('a, button');\n\n links && Array.prototype.forEach.call(links, link => {\n const text = link.innerText ? link.innerText : \"n/a\"\n const href = link.href ? link.href : \"n/a\"\n\n // Add event listener to each\n link.addEventListener(\"click\", function (e) {\n // e.preventDefault();\n\n if (window.analytics) {\n window.analytics.track(\"Button/Link click\", {\n text: text,\n link: href\n })\n }\n })\n })\n }\n\n // const detectSignupConfirm = () => {\n // const path = props.path\n // const fullname = getParameterByName('fullname')\n // const email = getParameterByName('email')\n\n // if (path === \"/thank-you/\" && fullname !== null && email !== null) {\n // window.analytics.track(\"Sign up confirmation\", {\n // fullname: fullname,\n // email: email,\n // })\n // }\n // }\n\n attachTrackingToLinks()\n // detectSignupConfirm()\n window.addEventListener('keydown', handleFirstTab);\n\n return () => {\n window.removeEventListener('keydown', handleFirstTab);\n }\n })\n\n return (\n \n <>\n \n \n \n {/* {props.path === \"/\"\n && !cookies.signup_open &&\n \n } */}\n \n {props.header &&\n \n }\n {props.social &&\n \n }\n {props.children}\n {props.footer &&\n \n >\n \n )\n}\n\nexport default Layout\n\nLayout.defaultProps = {\n header: true,\n footer: true,\n social: true\n}\n\nLayout.propTypes = {\n children: PropTypes.node.isRequired,\n}","import styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\n\nconst BlockTitle = styled.h3`\n\tfont-family: ${props => props.theme.font.family.body};\n\tcolor: ${props => props.theme.colors.tertiary};\n\tline-height: 1.44;\n\tmargin: 0;\n\tfont-weight: 400;\t\t\n\ttext-transform: uppercase;\n\tpadding-bottom: 1rem;\n\tfont-size: 1.9rem; \n\n\t@media ${media.xl} {\n\t\tfont-size: ${props => props.theme.font.h2.size};\n\t}\n\n\t${props => props.template === \"featured\" && css`\n\tfont-size: ${props => props.theme.font.size.xl};\n\t@media ${media.xl} {\n\t\tfont-size: ${props => props.theme.font.size.xxl};\n\t}\n\t`}\n\t${props => props.color === 'black' && css`\n\t\tcolor: black;\n\t\ttext-align: center;\n\t\t//font-style: italic;\n\t\tfont-family: ${props => props.theme.font.family.body};\n\t`}\n\n\t${props => props.white && css`\n\t\tcolor: ${props => props.theme.colors.white};\n\t`}\n\t${props => props.primary && css`\n\t\tcolor: ${props => props.theme.colors.primary};\n\t`}\n\t${props => props.baseTitle && css`\n\t\tmargin: 0 auto;\n\t\ttext-align: center;\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\ttext-transform: uppercase;\n\t\t//font-style: italic;\n\t\tfont-size: ${props => props.theme.font.size.xl};\n\t`}\n\t${props => props.outline && css`\n\t\t-webkit-text-stroke: 2px white;\n\t\tcolor: ${props => props.theme.colors.white};\n\t\tcolor: transparent;\n\t\tletter-spacing: 1px;\n\n\t\t@media ${media.md} {\n\t\t\t-webkit-text-stroke: 3px white;\n\t\t\tletter-spacing: 0;\n\t\t}\n\t`}\n\t${props => props.newsTitle && css`\n\t\tmargin: 0 auto;\n\t\ttext-align: left;\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\ttext-transform: uppercase;\n\t\t//font-style: italic;\n\t\tfont-size: ${props => props.theme.font.size.xl};\n\t`}\n\t${props => props.$baseheading && css`\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\tfont-size: ${props => props.theme.font.size.xl};\n\t\ttext-transform: uppercase;\n\t\t//font-style: italic;\n\t\ttext-align: center;\n\t`}\n`\n\nexport default BlockTitle","import styled, {css} from \"styled-components\"\nimport {media} from \"utils/Media\"\n\n// Remove color from props to stop invalid html\nconst Button = styled('a').withConfig({\n shouldForwardProp: (prop, defaultValidatorFn) => !['color', 'small'].includes(prop),\n})`\n border: 0;\n padding: 0;\n display: inline-block;\n text-transform: uppercase;\n text-decoration: none !important;\n white-space: nowrap;\n font-size: ${props => props.theme.font.size.base};\n font-family: ${props => props.theme.font.family.black};\n font-weight: ${props => props.theme.font.weight.bold};\n //font-style: italic;\n /* font-weight: ${props => props.theme.font.family.bold}; */\n background-color: transparent;\n color: ${props => props.theme.colors.secondary};\n border: 3px solid ${props => props.theme.colors.secondary};\n line-height: 1;\n position: relative;\n padding: .85rem 1rem;\n text-align: center;\n transition: all .2s ease-in-out;\n\n\n @media ${media.md} {\n font-size: ${props => props.theme.font.size.base};\n padding: .95rem 1.25rem;\n }\n\n ${props => props.small && css`\n padding: .5rem 1rem;\n `}\n &:hover {\n background: ${props => props.theme.colors.secondary};\n border-color: ${props => props.theme.colors.secondary};\n color: ${props => props.theme.colors.white};\n cursor: pointer;\n text-decoration: none;\n\n &:before {\n border-width: 4px;\n }\n }\n\n ${props => props.color === \"primary\" && css`\n background: ${props => props.theme.colors.primary};\n border-color: ${props => props.theme.colors.primary};\n color: ${props => props.theme.colors.white};\n\n &:hover {\n background: ${props => props.theme.colors.primary};\n border-color: ${props => props.theme.colors.primary};\n color: ${props => props.theme.colors.black};\n }\n `}\n ${props => props.color === \"secondary\" && css`\n background-color: transparent;\n color: ${props => props.theme.colors.black};\n border: 3px solid ${props => props.theme.colors.secondary};\n\n &:hover {\n background-color: none;\n color: ${props => props.theme.colors.white};\n }\n\n &:active {\n background: none;\n border-color: ${props => props.theme.colors.secondary};\n color: ${props => props.theme.colors.black};\n }\n `}\n ${props => props.color === 'tertiary' && css`\n border: solid 3px ${props => props.theme.colors.secondary};\n color: ${props => props.theme.colors.white};\n\n &:hover {\n color: ${props => props.theme.colors.black};\n }\n `}\n ${props => props.color === 'main' && css`\n background-color: ${props => props.theme.colors.primary};\n border: solid 3px ${props => props.theme.colors.primary};\n color: ${props => props.theme.colors.white};\n\n &:hover {\n color: ${props => props.theme.colors.black};\n }\n `}\n ${props => props.color === 'alt' && css`\n border: solid 3px ${props => props.theme.colors.secondary};\n background-color: ${props => props.theme.colors.secondary};\n color: ${props => props.theme.colors.black};\n\n &:hover {\n background-color: ${props => props.theme.colors.secondary};\n }\n `}\n ${props => props.color === 'regular' && css`\n border: solid 3px ${props => props.theme.colors.secondary};\n background-color: ${props => props.theme.colors.secondary};\n color: ${props => props.theme.colors.black};\n\n &:hover {\n background-color: transparent;\n color: ${props => props.theme.colors.black};\n }\n `}\n ${props => props.color === \"grey\" && css`\n background-color: ${props => props.theme.colors.grey3};\n color: ${props => props.theme.colors.white};\n border: 3px solid ${props => props.theme.colors.grey3};\n\n &:hover {\n background-color: ${props => props.theme.colors.grey3};\n color: ${props => props.theme.colors.white};\n }\n\n &:active {\n background-color: ${props => props.theme.colors.grey3};\n color: ${props => props.theme.colors.white};\n border: 3px solid ${props => props.theme.colors.grey3};\n }\n `}\n ${props => props.color === \"orange\" && css`\n background-color: ${props => props.theme.colors.orange};\n color: ${props => props.theme.colors.white};\n border: 3px solid ${props => props.theme.colors.orange};\n\n &:hover {\n background-color: transparent;\n color: ${props => props.theme.colors.orange};\n border-color: ${props => props.theme.colors.orange};\n }\n\n &:active {\n background: ${props => props.theme.colors.primary};\n border-color: ${props => props.theme.colors.primary};\n color: ${props => props.theme.colors.black};\n }\n `}\n ${props => props.color === \"white\" && css`\n background-color: transparent;\n color: ${props => props.theme.colors.black};\n border-color: ${props => props.theme.colors.white};\n\n &:hover {\n background-color: ${props => props.theme.colors.secondary};\n border-color: ${props => props.theme.colors.secondary};\n color: ${props => props.theme.colors.black};\n }\n\n &:active {\n background-color: ${props => props.theme.colors.secondary};\n border-color: ${props => props.theme.colors.secondary};\n color: ${props => props.theme.colors.white};\n }\n `}\n &:disabled {\n pointer-events: none;\n }\n`;\n\nexport default Button","import styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\n\nconst CarouselItemBg = styled.div`\n\t/* background-image: ${props => props.theme.colors.gradient}; */\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\twidth: 100%;\n\theight: 100%;\n\topacity: 0;\n\ttransition: opacity .4s ease;\n\tz-index: 1;\n\n\t.touch & {\n\t\tdisplay: none;\n\t}\n\n\tdisplay: none;\n\n\t@media ${media.md} {\n\t\tdisplay: block;\n\t}\n\n\t${props => props.video && css`\n\t\topacity: 0.6;\n\t\tborder: 0;\n\t\t\n\t\t&:hover {\n\t\t\t${props => (props.borderOnHover === \"yes\") && css`\n\t\t\t\tborder: 5px solid ${props => props.theme.colors.secondary};\n\t\t\t`}\n\t\t\t\n\t\t}\n\t`}\n\n\t&:after {\n\t\tcontent: \"\";\n\t\tbackground-image: ${props => props.theme.colors.gradient};\n\t\topacity: 0.8;\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\t\n\t\t${props => (props.borderOnHover === \"yes\") && css`\n\t\t\tborder: 5px solid ${props => props.theme.colors.secondary};\n\t\t`}\n\t\t\n\t\t${props => props.video && css`\n\t\t\tbackground-image: none;\n\t\t\tbackground-color: black;\n\t\t\topacity: 1;\n\t\t\tborder: 0;\n\t\t\t\n\t\t\t&:hover {\n\t\t\t\t${props => (props.borderOnHover === \"yes\") && css`\n\t\t\t\t\tborder: 5px solid ${props => props.theme.colors.secondary};\n\t\t\t\t`}\n\t\t\t\t\n\t\t\t}\n\t\t`}\n\t}\n\n\tdiv {\n\t\tposition: absolute;\n\t\tdisplay: block;\n\t\ttop: 45%;\n\t\tleft: 50%;\n\t\ttransform: translate(-50%, -50%);\n\t\tz-index: 1;\n\t\tcolor: ${props => props.theme.colors.white};\n\t\t//font-style: italic;\n\t\tborder: 4px solid ${props => props.theme.colors.secondary};\n\t\tline-height: 1;\n\t\tpadding: .5rem 1rem;\n\t\twhite-space: nowrap;\n\t\ttext-transform: uppercase;\n\t\tfont-size: ${props => props.theme.font.size.sm};\n\t\tfont-family: ${props => props.theme.font.family.bold};\n\n\t\t${props => props.type === \"gallery\" && css`\n\t\t\ttop: 50%;\n\t\t`}\n\t}\n`\n\nexport default CarouselItemBg","import React from \"react\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faAngleRight } from \"@fortawesome/free-solid-svg-icons\"\n\nconst CarouselNextButton = ({ onClick }) => {\n return (\n \n )\n}\n\nexport default CarouselNextButton","import React from \"react\"\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faAngleLeft } from \"@fortawesome/free-solid-svg-icons\"\n\nconst CarouselPrevButton = ({ onClick }) => {\n return(\n \n ) \n}\n\nexport default CarouselPrevButton","import styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\n\nconst CarouselStyled = styled.div`\n\t@media ${media.sm} {\n\t\tmargin-right: 0;\n\t}\t\t\n\t\n\n.slick-slider {\n\t/* padding-bottom: 2rem; */\n\t.slick-track {\n\t\tdisplay: flex;\n\t}\n\t.slick-list {\n\t\tmargin: 0 -6px;\t\n\t\t/* padding-bottom: 1rem; */\n\t\tpadding-left: 0 !important;\n\t\tpadding-bottom: 80px !important;\n\n\t\t@media ${media.md} {\n\t\t\tmargin: 0 -15px;\n\t\t}\n\t\t\n\t\t@media ${media.lg} {\n\t\t\tpadding-bottom: 1rem !important;\n\t\t\t${props => (props.itemCount > 3 && props.type !== \"TheresMore\") && css`\n\t\t\t\tpadding-bottom: 80px !important;\n\t\t\t`} \n\t\t}\n\t}\n\t.slick-slide {\n\t\tpadding: 0 6px;\t\n\t\theight: auto;\n\n\t\t@media ${media.md} {\n\t\t\tpadding: 0 15px;\n\t\t}\n\n\t\t> div {\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\t${props => props.$override && css`\n\t\t\t\tmax-width: 395px!important;\n\t\t\t\tmargin: 0 auto!important;\n\t\t\t`}\n\t\t}\n\t}\n\t.slider-arrow {\n\t\tposition: absolute;\n\t\tbottom: 0;\n\t\tbackground: black;\n\t\tappearance: none;\n\t\tborder: none;\n\t\tfont-size: 24px;\n\t\tz-index: 13;\n\t\tpadding: .5rem 1rem;\n\t\tcolor: ${props => props.theme.colors.secondary};\n\n\t\t@media ${media.lg} {\n\t\t\tbottom: auto;\n\t\t\ttop: calc(50% - 40px);\n\t\t\ttransform: translateY(-50%);\n\t\t}\n\n\t\t&.prev {\n\t\t\tleft: 0;\n\t\t\t@media (min-width: 1350px) {\n\t\t\t\tleft: -50px;\n\t\t\t}\n\t\t}\n\t\t&.next {\n\t\t\tright: 15px;\n\t\t\t@media ${media.sm} {\n\t\t\t\tright: 0;\n\t\t\t}\n\t\t\t@media (min-width: 1350px) {\n\t\t\t\tright: -50px;\n\t\t\t}\n\t\t}\n\n\t\tsvg {\n\t\t\tmax-width: 12px;\n\t\t\tmax-height: 24px;\n\t\t}\n\n\t\t&:hover {\n\t\t\tcolor: ${props => props.theme.colors.secondary};\n\t\t}\n\t}\n\t.slick-dots {\n\t\theight: 10px;\n\t\tline-height: 10px;\n\t\tbottom: 1.5rem;\n\t\tpadding-right: 5px;\n\t\t\n\t\t@media ${media.sm} {\n\t\t\tpadding-right: 0;\n\t\t}\n\n\t\tli {\n\t\t\tmargin: 0 2.5px;\n\t\t\twidth: auto;\n\t\t\theight: auto;\n\t\t\tvertical-align: middle;\n\t\t\tbutton {\n\t\t\t\twidth: 10px;\n\t\t\t\theight: 10px;\n\t\t\t\tbackground: black;\n\t\t\t\tborder-radius: 50%;\n\t\t\t\t&:before {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\t\t\t}\n\t\t\t&.slick-active button {\n\t\t\t\tbackground: ${props => props.theme.colors.secondary};\n\n\t\t\t\t${props => props.background === \"yellow\" && css`\n\t\t\t\t\tbackground: ${props => props.theme.colors.white};\n\t\t\t\t`}\n\t\t\t\t${props => props.background === \"colour\" && css`\n\t\t\t\t\tbackground: ${props => props.theme.colors.secondary};\n\t\t\t\t`}\n\t\t\t\t${props => props.background === 'white' && css`\n\t\t\t\t\tbackground: ${props => props.theme.colors.secondary};\n\t\t\t\t` }\n\t\t\t}\n\t\t}\n\t}\n}\n`\n\nCarouselStyled.defaultProps = {\n\ttype: \"default\"\n}\n\nexport default CarouselStyled","import React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { Container } from \"reactstrap\"\nimport { media } from \"utils/Media\"\n\nconst ContainerMax = styled(({ noPadding, noPaddingSm, maxWidth, ...props }) => (\n\t{props.children}\n))`\n\tmax-width: 1300px;\n\t/* padding-right: ${props => props.theme.bootstrapGutterWidth};\n\tpadding-left: ${props => props.theme.bootstrapGutterWidth};\n\t\n\t@media ${media.md} {\n\t\tpadding-right: ${props => props.theme.bootstrapGutterWidthx2};\n\t\tpadding-left: ${props => props.theme.bootstrapGutterWidthx2};\n\t}\n\t */\n\t@media ${media.xxl} {\n\t\tmax-width: 1920px !important; \n\t\t// padding-right: ${props => props.theme.bootstrapGutterWidth};\n\t\t// padding-left: ${props => props.theme.bootstrapGutterWidth};\n\t}\n\t\n\t${props => props.maxWidth && css`\n\t\tmax-width: ${props => props.maxWidth}px !important;\n\t\t\n\t\t@media ${media.xxl} {\n\t\t\tmax-width: ${props => props.maxWidth}px !important; \n\t\t}\n\t`}\n\t\n\t${props => props.noPadding && css`\n\t\tpadding-right: 0 !important;\n\t\tpadding-left: 0 !important;\n\t`}\n\t\n\t${props => props.noPaddingSm && css`\n\t\tpadding-right: ${props => props.theme.bootstrapGutterWidth};\n\t\tpadding-left: ${props => props.theme.bootstrapGutterWidth};\n\t\t@media ${media.sm} {\n\t\t\tpadding-right: 0;\n\t\t\tpadding-left: 0;\n\t\t}\n\t\t@media ${media.md} {\n\t\t\tpadding-right: ${props => props.theme.bootstrapGutterWidth};\n\t\t\tpadding-left: ${props => props.theme.bootstrapGutterWidth};\n\t\t}\n\t`}\n`;\n\nexport default ContainerMax","import styled from \"styled-components\"\n\nconst ContentMax = styled.div`\n\tmax-width: ${props => props.theme.sizes.contentMax};\n\tmargin: 0 auto;\n`;\n\nexport default ContentMax","import _classCallCheck from \"/codebuild/output/src708404989/src/Mubadala-Abu-Dhabi-Open/frontend/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\";\nimport _createClass from \"/codebuild/output/src708404989/src/Mubadala-Abu-Dhabi-Open/frontend/node_modules/@babel/runtime/helpers/esm/createClass.js\";\nimport _assertThisInitialized from \"/codebuild/output/src708404989/src/Mubadala-Abu-Dhabi-Open/frontend/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js\";\nimport _inherits from \"/codebuild/output/src708404989/src/Mubadala-Abu-Dhabi-Open/frontend/node_modules/@babel/runtime/helpers/esm/inherits.js\";\nimport _possibleConstructorReturn from \"/codebuild/output/src708404989/src/Mubadala-Abu-Dhabi-Open/frontend/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js\";\nimport _getPrototypeOf from \"/codebuild/output/src708404989/src/Mubadala-Abu-Dhabi-Open/frontend/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js\";\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nimport React from 'react';\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar defaultProps = {\n breakpointCols: undefined,\n // optional, number or object { default: number, [key: number]: number }\n className: undefined,\n // required, string\n columnClassName: undefined,\n // optional, string\n // Any React children. Typically an array of JSX items\n children: undefined,\n // Custom attributes, however it is advised against\n // using these to prevent unintended issues and future conflicts\n // ...any other attribute, will be added to the container\n columnAttrs: undefined,\n // object, added to the columns\n // Deprecated props\n // The column property is deprecated.\n // It is an alias of the `columnAttrs` property\n column: undefined\n};\nvar DEFAULT_COLUMNS = 2;\nvar Masonry = /*#__PURE__*/function (_React$Component) {\n _inherits(Masonry, _React$Component);\n var _super = _createSuper(Masonry);\n function Masonry(props) {\n var _this;\n _classCallCheck(this, Masonry);\n _this = _super.call(this, props); // Correct scope for when methods are accessed externally\n\n _this.reCalculateColumnCount = _this.reCalculateColumnCount.bind(_assertThisInitialized(_this));\n _this.reCalculateColumnCountDebounce = _this.reCalculateColumnCountDebounce.bind(_assertThisInitialized(_this)); // default state\n\n var columnCount;\n if (_this.props.breakpointCols && _this.props.breakpointCols.default) {\n columnCount = _this.props.breakpointCols.default;\n } else {\n columnCount = parseInt(_this.props.breakpointCols) || DEFAULT_COLUMNS;\n }\n _this.state = {\n columnCount: columnCount\n };\n return _this;\n }\n _createClass(Masonry, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.reCalculateColumnCount(); // window may not be available in some environments\n\n if (window) {\n window.addEventListener('resize', this.reCalculateColumnCountDebounce);\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n this.reCalculateColumnCount();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (window) {\n window.removeEventListener('resize', this.reCalculateColumnCountDebounce);\n }\n }\n }, {\n key: \"reCalculateColumnCountDebounce\",\n value: function reCalculateColumnCountDebounce() {\n var _this2 = this;\n if (!window || !window.requestAnimationFrame) {\n // IE10+\n this.reCalculateColumnCount();\n return;\n }\n if (window.cancelAnimationFrame) {\n // IE10+\n window.cancelAnimationFrame(this._lastRecalculateAnimationFrame);\n }\n this._lastRecalculateAnimationFrame = window.requestAnimationFrame(function () {\n _this2.reCalculateColumnCount();\n });\n }\n }, {\n key: \"reCalculateColumnCount\",\n value: function reCalculateColumnCount() {\n var windowWidth = window && window.innerWidth || Infinity;\n var breakpointColsObject = this.props.breakpointCols; // Allow passing a single number to `breakpointCols` instead of an object\n\n if (typeof breakpointColsObject !== 'object') {\n breakpointColsObject = {\n default: parseInt(breakpointColsObject) || DEFAULT_COLUMNS\n };\n }\n var matchedBreakpoint = Infinity;\n var columns = breakpointColsObject.default || DEFAULT_COLUMNS;\n for (var breakpoint in breakpointColsObject) {\n var optBreakpoint = parseInt(breakpoint);\n var isCurrentBreakpoint = optBreakpoint > 0 && windowWidth <= optBreakpoint;\n if (isCurrentBreakpoint && optBreakpoint < matchedBreakpoint) {\n matchedBreakpoint = optBreakpoint;\n columns = breakpointColsObject[breakpoint];\n }\n }\n columns = Math.max(1, parseInt(columns) || 1);\n if (this.state.columnCount !== columns) {\n this.setState({\n columnCount: columns\n });\n }\n }\n }, {\n key: \"itemsInColumns\",\n value: function itemsInColumns() {\n var currentColumnCount = this.state.columnCount;\n var itemsInColumns = new Array(currentColumnCount); // Force children to be handled as an array\n\n var items = React.Children.toArray(this.props.children);\n for (var i = 0; i < items.length; i++) {\n var columnIndex = i % currentColumnCount;\n if (!itemsInColumns[columnIndex]) {\n itemsInColumns[columnIndex] = [];\n }\n itemsInColumns[columnIndex].push(items[i]);\n }\n return itemsInColumns;\n }\n }, {\n key: \"renderColumns\",\n value: function renderColumns() {\n var _this$props2 = this.props,\n column = _this$props2.column,\n _this$props2$columnAt = _this$props2.columnAttrs,\n columnAttrs = _this$props2$columnAt === void 0 ? {} : _this$props2$columnAt,\n columnClassName = _this$props2.columnClassName;\n var childrenInColumns = this.itemsInColumns();\n var columnWidth = \"\".concat(100 / childrenInColumns.length, \"%\");\n var className = columnClassName;\n if (className && typeof className !== 'string') {\n this.logDeprecated('The property \"columnClassName\" requires a string'); // This is a deprecated default and will be removed soon.\n\n if (typeof className === 'undefined') {\n className = 'my-masonry-grid_column';\n }\n }\n var columnAttributes = _objectSpread(_objectSpread(_objectSpread({}, column), columnAttrs), {}, {\n style: _objectSpread(_objectSpread({}, columnAttrs.style), {}, {\n width: columnWidth\n }),\n className: className\n });\n return childrenInColumns.map(function (items, i) {\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, columnAttributes, {\n key: i\n }), items);\n });\n }\n }, {\n key: \"logDeprecated\",\n value: function logDeprecated(message) {\n console.error('[Masonry]', message);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n children = _this$props.children,\n breakpointCols = _this$props.breakpointCols,\n columnClassName = _this$props.columnClassName,\n columnAttrs = _this$props.columnAttrs,\n column = _this$props.column,\n className = _this$props.className,\n rest = _objectWithoutProperties(_this$props, [\"children\", \"breakpointCols\", \"columnClassName\", \"columnAttrs\", \"column\", \"className\"]);\n var classNameOutput = className;\n if (typeof className !== 'string') {\n this.logDeprecated('The property \"className\" requires a string'); // This is a deprecated default and will be removed soon.\n\n if (typeof className === 'undefined') {\n classNameOutput = 'my-masonry-grid';\n }\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, rest, {\n className: classNameOutput\n }), this.renderColumns());\n }\n }]);\n return Masonry;\n}(React.Component);\nMasonry.defaultProps = defaultProps;\nexport default Masonry;","import React from \"react\"\nimport Masonry from \"react-masonry-css\"\nimport styled from \"styled-components\"\n\nconst MasonryStyled = styled(Masonry)`\n display: flex;\n margin-left: -20px; /* gutter size offset */\n width: auto;\n \n .my-masonry-grid_column {\n padding-left: 20px; /* gutter size */\n background-clip: padding-box;\n }\n\n /* Style your items */\n .my-masonry-grid_column > div { /* change div to reference your elements you put in */\n margin-bottom: 20px;\n }\n`\n\nconst MasonryWall = (props) => {\n return(\n \n {props.children}\n \n )\n}\n\nMasonryWall.defaultProps = {\n breakpoints: {\n default: 4,\n 1200: 3,\n 768: 2,\n 576: 1\n }\n}\n\nexport default MasonryWall","import React from \"react\"\nimport styled from \"styled-components\"\nimport CarouselItemBg from \"components/shared/CarouselItemBg\"\n\nconst GridHubItemWrap = styled.div`\n\tcursor: pointer;\n\tposition: relative;\n\tbackground-color: white;\n\tline-height: 0;\n\n\tbutton {\n\t\tpadding: 0;\n\t\tborder: 0;\n\t\twidth: 100%;\n\t}\n\n\t.overlay {\n\t\topacity: 0;\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tz-index: 2;\n\t}\n\n\t.image {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tz-index: 1;\n\t}\n\n\t&:hover {\n\t\t.overlay {\n\t\t\topacity: 1;\n\t\t\tdiv {\n\t\t\t\tbackground-color: transparent;\n\t\t\t\tcolor: ${props => props.theme.colors.white};\n\t\t\t\t//font-style: italic;\n\t\t\t}\n\t\t}\n\t\t.hoverBg {\n\t\t\topacity: 1;\n\t\t}\n\t}\n`\n\nconst GalleryGridItem = (props) => {\n\t// let size = props.size\n\tconst image = props.thumbnail.images.sources[0]\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\tView
\n\t\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t
![]()
\n\t\t\t
\n\t\t\n\t)\n}\n\nexport default GalleryGridItem","import React, { useEffect, useState } from \"react\"\nimport Lightbox from 'react-image-lightbox';\nimport 'react-image-lightbox/style.css' // This only needs to be imported once in your app\nimport MasonryWall from \"components/shared/MasonryWall\"\nimport GalleryGridItem from \"./GalleryGridItem\"\nimport Button from \"components/shared/Button\"\n\nconst GalleryGrid = (props) => {\n\tconst [paginationLimit, setPaginationLimit] = useState(12)\n\tconst [postsHtml, setPostsHtml] = useState(\"\")\n\tconst [lightboxImages, setLightboxImages] = useState([])\n\tconst [photoIndex, setPhotoIndex] = useState(0)\n\tconst [isOpen, setIsOpen] = useState(false)\n\n\tconst postsPerPage = 12\n\tlet sizes = {}\n\n\tif (props.columns !== 4) {\n\t\tsizes = {\n\t\t\tdefault: 2\n\t\t}\n\t} else {\n\t\tsizes = {\n\t\t\tdefault: 4,\n\t\t\t992: 3,\n\t\t\t768: 2\n\t\t}\n\t}\n\n\tuseEffect(() => {\n\t\tsetImages(props.images)\n\t}, [props.images])\n\n\tconst viewMoreImages = () => {\n\t\tsetPaginationLimit(paginationLimit + postsPerPage)\n\t\tsetImages()\n\t}\n\n\tconst openOnKeyDown = (e, index) => {\n\t\tif (e.keyCode === 13) {\n\t\t\tsetPhotoIndex(index)\n\t\t\tsetIsOpen(true)\n\t\t}\n\t}\n\n const setImages = (images = null) => {\n\t\tlet postCount = 0\n\t\tlet postsHtml\n\t\tlet currentImages = images\n\t\tlet lightboxImages = []\n\n\t\tif (currentImages === null) currentImages = images\n\n\t\tif (currentImages.length > 0) {\n\t\t\tpostsHtml = currentImages.map((image, i) => {\n\t\t\t\tif (postCount < paginationLimit) {\n\t\t\t\t\tpostCount++\n\t\t\t\t\tif (image) {\n\t\t\t\t\t\tlightboxImages.push(image.localFile.publicURL)\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetPhotoIndex(i)\n\t\t\t\t\t\t\t\t\tsetIsOpen(true)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tonKeyDown={(e) => openOnKeyDown(e, i)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t)\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn null\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tsetPostsHtml(postsHtml)\n\t\t\tsetLightboxImages(lightboxImages)\n\t\t}\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t{postsHtml}\n\t\t\t\n\t\t\t{paginationLimit < props.images.length &&\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t}\n\t\t\t{isOpen && (\n\t\t\t\t setIsOpen(false)}\n\t\t\t\t\tonMovePrevRequest={() =>\n\t\t\t\t\t\tsetPhotoIndex((photoIndex + lightboxImages.length - 1) % lightboxImages.length)\n\t\t\t\t\t}\n\t\t\t\t\tonMoveNextRequest={() =>\n\t\t\t\t\t\tsetPhotoIndex((photoIndex + 1) % lightboxImages.length)\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t)}\n\t\t>\n\t)\n}\n\nGalleryGrid.defaultProps = {\n\tcolumns: 4,\n\tborderOnHover: false\n}\n\nexport default GalleryGrid","import React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport classNames from \"classnames\"\nimport { media } from \"utils/Media\"\nimport WPLink from \"components/shared/WPLink\"\nimport { GatsbyImage } from \"gatsby-plugin-image\"\n\nconst WPLinkStyled = styled(WPLink)`\n\tdisplay: block;\n\tline-height: 0;\n`\n\nconst SidebarBlockWrap = styled.div`\n\tposition: relative;\n\tdisplay: block;\n\twidth: 100%;\n\tmargin: 0 auto;\n\n\t@media ${media.md} {\n\t\twidth: 100%;\n\t}\n\n\ta {\n\t\ttext-transform: uppercase;\n\t\tdisplay: block;\n\t}\n\n\t${props => props.type === \"linkblock\" && css`\n\t\t@media ${media.sm} {\n\t\t\twidth: 100%;\n\t\t}\n\t`}\n\n\t&.image {\n\t\t&:before {\n\t\t\tcontent: \"\";\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\topacity: 0.8;\n\t\t\ttransition: background-image .4s ease;\n\t\t\tbackground-image: linear-gradient(180deg, rgba(51, 63, 72, 0) 0%, #333F48 100%);\n\t\t}\n\t}\n\n\t.content1 {\n\t\tposition: absolute;\n\t\tz-index: 3;\n\t\tleft: 50%;\n\t\tbottom: 1.5rem;\n\t\ttransform: translateX(-50%);\n\t\twidth: 85%;\n\t\tbackground-color: white;\n\t\tpadding: 1rem;\n\t\tborder: 3px solid white;\n\t\t\n\t\t${props => props.type === \"linkblock\" && css`\n\t\t\ttop: 80%;\n\t\t\tbottom: auto;\n\t\t\tbackground-color: ${props => props.theme.colors.primary};\n\t\t\tborder: 3px solid ${props => props.theme.colors.primary};\n\t\t\ttransform: translate(-50%, -50%);\n\t\t\twidth: 70%;\n\t\t\ttext-align: center;\n\t\t\t//font-style: italic;\n\t\t\t@media ${media.md} {\n\t\t\t\twidth: 85%;\n\t\t\t}\n\t\t\t@media ${media.xl} {\n\t\t\t\twidth: 60%;\n\t\t\t}\n\t\t\t\n\t\t`}\n\t\t\n\t\th3 {\n\t\t\t/* font-size: ${props => props.theme.font.size.md};\n\t\t\tfont-family: ${props => props.theme.font.family.bold}; */\n\t\t\tfont-size: ${props => props.theme.font.size.base};\n\t\t\t// font-family: ${props => props.theme.font.family.body};\n\t\t\t// font-weight: ${props => props.theme.font.weight.semiBold};\n\t\t\t//font-style: italic;\n\t\t\tline-height: 1.1;\n\t\t\tcolor: white;\n\t\t\ttext-transform: uppercase;\n\t\t\tmargin: 0;\n\t\t}\n\t\t\n\t\tp { \n\t\t\ttext-transform: uppercase;\n\t\t\tcolor: ${props => props.theme.colors.primary};\n\t\t\tmargin: 1rem 0 0 0;\n\t\t\tfont-family: ${props => props.theme.font.family.bold};\n\t\t\tfont-size: ${props => props.theme.font.size.sm};\n\t\t\tline-height: 1.1;\n\t\t}\n\t}\n\n\t&:hover {\n\t\t&:before {\n\t\t\tbackground-image: ${props => props.theme.colors.gradient};\n\t\t}\n\t\t\n\t\t.content1 {\n\t\t\t${props => props.type === \"linkblock\" && css`\n\t\t\t\tbackground-color: ${props => props.theme.colors.secondary};\n\t\t\t\tborder: 3px solid ${props => props.theme.colors.white};\n\n\t\t\t\th3, p {\n\t\t\t\t\tcolor: ${props => props.theme.colors.black};\n\t\t\t\t}\n\t\t\t`}\n\t\t}\n\t\t\n\t\th3 {\n\t\t\ttext-decoration: none;\n\t\t}\n\t}\n`\n\n/* Used on posts and featured page, warning also used in link blocks flexible content */\nconst SidebarBlock = (props) => {\n const block = props.data.acfSidebarBlocks.sidebarBlockType\n\n\treturn block && block.map((item, i) => {\n\t\treturn item.links && item.links.map((link, i) => {\n\t\t\tconst image = props.type === \"sidebarblock\" ? item.image45.localFile.childImageSharp.gatsbyImageData \n\t\t\t: item.image.localFile.childImageSharp.gatsbyImageData\n\n\t\t\tconst imageAlt = props.type === \"sidebarblock\" ? item.image45.altText \n\t\t\t: item.image.altText\n\n\t\t\tif (link.__typename === \"WpSidebarBlock_Acfsidebarblocks_SidebarBlockType_ImageLink_Links_Link\") {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t{props.type === \"sidebarblock\" &&\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)\n\t\t\t} else if (link.__typename === \"WpSidebarBlock_Acfsidebarblocks_SidebarBlockType_ImageLink_Links_File\") {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t{props.type === \"sidebarblock\" &&\n\t\t\t\t\t\t\t\t\t
{link.linkText}
\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn null;\n\t\t})\n\t})\n}\n\nSidebarBlock.defaultProps = {\n type: \"sidebarblock\"\n}\n\nexport default SidebarBlock","import styled, { css } from \"styled-components\"\nimport { media } from \"utils/Media\"\n\nconst Text = styled('div')`\n\tfont-family: ${props => props.theme.font.family.body};\n\t/* font-size: ${props => props.theme.font.size.base}; */\n\t&:focus, &:focus p {\n\t\toutline: 0 !important;\n\t}\n\t${props => props.title && css`\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\t//font-style: italic;\n\t\tfont-weight: ${props => props.theme.font.weight.bold};\n\t\tbackground: ${props => props.theme.colors.titleGradient};\n\t\t-webkit-background-clip: text;\n\t\t-webkit-text-fill-color: transparent;\n\t\tmargin: 0;\n\t\tfont-size: 1.875rem;\n\t\ttext-transform: uppercase;\n\t\t@media ${media.md} {\n\t\t\tfont-size: 2.5rem;\n\t\t}\n\t\t@media ${media.lg} {\n\t\t\tfont-size: 3.5rem;\n\t\t}\n\t\t@media ${media.xl} {\n\t\t\tfont-size: 4rem;\n\t\t}\n\t\t@media ${media.xxl} {\n\t\t\tfont-size: 4.375rem;\n\t\t}\n\t\t${props => props.smaller && css`\n\t\t\t@media ${media.md} {\n\t\t\t\tfont-size: 2.5rem;\n\t\t\t}\n\t\t\t@media ${media.lg} {\n\t\t\t\tfont-size: 3rem;\n\t\t\t}\n\t\t\t@media ${media.xxl} {\n\t\t\t\tfont-size: 4.375rem;\n\t\t\t}\n\t\t`}\n `}\n\t${props => props.$condensed && css`\n\t\tfont-family: ${props => props.theme.font.family.condensed};\n\t\tfont-weight: ${props => props.theme.font.weight.bold};\n\t`}\n\t${props => props.$heading && css`\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\tfont-weight: ${props => props.theme.font.weight.bold};\n\t`}\n\t${props => props.$primary && css`\n\t\tcolor: ${props => props.theme.colors.primary};\n\t`}\n\t${props => props.$secondary && css`\n\t\tcolor: ${props => props.theme.colors.secondary};\n\t`}\n\t${props => props.$midBlue && css`\n\t\tcolor: ${props => props.theme.colors.midBlue};\n\t`}\n\t${props => props.$cyan && css`\n\t\tcolor: ${props => props.theme.colors.cyan};\n\t`}\n\t${props => props.$white && css`\n\t\tcolor: ${props => props.theme.colors.white};\n\t`}\n\t${props => props.$black && css`\n\t\tcolor: ${props => props.theme.colors.black};\n\t`}\n\t${props => props.$black && css`\n\t\tcolor: ${props => props.theme.colors.black};\n\t`}\n\t${props => props.$red && css`\n\t\tcolor: ${props => props.theme.colors.red};\n\t`}\n\t${props => props.$navy && css`\n\t\tcolor: ${props => props.theme.colors.navy};\n\t`}\n\t${props => props.$blackOff && css`\n\t\tcolor: ${props => props.theme.colors.blackOff};\n\t`}\n\t\n\t${props => props.$grey && css`\n\t\tcolor: ${props => props.theme.colors.grey};\n\t`}\n\t\n\t${props => props.$yellow && css`\n\t\tcolor: ${props => props.theme.colors.yellow};\n\t`}\n\t\n\t${props => props.$orange && css`\n\t\tcolor: ${props => props.theme.colors.secondary};\n\t`}\n\t\n\t${props => props.$bold && css`\n\t\tfont-weight: ${props => props.theme.font.weight.bold};\n\t`}\n\t\n\t${props => props.$extrabold && css`\n\t\tfont-family: ${props => props.theme.font.family.black};\n\t`}\n\t\n\t${props => props.$xxxl && css`\n\t\tfont-size: ${props => props.theme.font.size.xxxl};\n\t\n\t\t@media ${media.$md} {\n\t\t}\n\t`}\n\t\n\t${props => props.$xxl && css`\n\t\tfont-size: ${props => props.theme.font.size.xxl};\n\t\n\t\t@media ${media.$md} {\n\t\t}\n\t`}\n\t\n\t${props => props.$xl && css`\n\t\tfont-size: ${props => props.theme.font.size.xl};\n\t\n\t\t@media ${media.$md} {\n\t\t}\n\t`}\n\t\n\t${props => props.$lg && css`\n\t\tfont-size: ${props => props.theme.font.size.lg};\n\t`}\n\t${props => props.$xl && css`\n\t\tfont-size: ${props => props.theme.font.size.xxl}!important;\n\t`}\n\t\n\t${props => props.$md && css`\n\t\tfont-size: ${props => props.theme.font.size.md};\n\t`}\n\t\n\t${props => props.$sm && css`\n\tfont-size: ${props => props.theme.font.size.sm};\n\t`}\n\t\n\t${props => props.$xs && css`\n\t\tfont-size: ${props => props.theme.font.size.xs};\n\t`}\n\t\n\t${props => props.$size && css`\n\t\tfont-size: ${props.size}rem;\n\t`}\n\t\n\t${props => props.$italic && css`\n\t\t//font-style: italic;\n\t`}\n\t\n\t${props => props.uppercase && css`\n\t\ttext-transform: uppercase;\n\t`}\n\t\n\t${props => props.center && css`\n\t\ttext-align: center;\n\t`}\n\t\n\t${props => props.$center && css`\n\t\ttext-align: center;\n\t`}\n\t\n\t${props => props.right && css`\n\t\ttext-align: right;\n\t`}\n\t${props => props.$countdown && css`\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\tfont-size: ${props => props.theme.font.size.base};\n\t`}\n\t${props => props.$baseheading && css`\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\tfont-size: ${props => props.theme.font.size.xl};\n\t\t//font-style: italic;\n\t`}\n\t${props => props.$baseSubtitle && css`\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\tfont-weight: 500;\n\t\tfont-size: ${props => props.theme.font.size.md};\n\t\t\n\t`}\n\t${props => props.$tabletMd && css`\n\t\t@media ${media.md} {\n\t\t\tfont-size: ${props => props.theme.font.size.md};\n\t\t}\n\t`}\n\t${props => props.$heroText && css`\n\t\t/* color: #fff; */\n\t\tmargin-bottom: 1.5rem;\n\t\tletter-spacing: 1.5px;\n\t\tfont-size: ${props => props.theme.font.size.base};\n\t\tfont-family: ${props => props.theme.font.family.black};\n\t\tfont-weight: 700;\n\t\t@media ${media.md} {\n\t\t\tfont-size: ${props => props.theme.font.size.lg};\n\t\t\tpadding-left: 75px;\n\t\t}\n\t\t@media ${media.xl} {\n\t\t\tpadding-left: 85px;\n\t\t}\n\t`}\n\t\n\t${props => props.$articleHeading && css`\n\t\tfont-family: ${props => props.theme.font.family.heading};\n\t\tfont-size: ${props => props.theme.font.size.xl};\n\t\ttext-transform: uppercase;\n\t\t//font-style: italic;\n\t\t@media ${media.md} {\n\t\t\tfont-size: ${props => props.theme.font.size.xxl};\n\t\t}\n\t`}\n`\n\nexport default Text","import styled, { css } from \"styled-components\"\n\nconst TextBlockStyles = styled.div`\n\tfont-size: ${props => props.theme.font.size.base}!important;\n\n\th1, h2, h3, h4 {\n\t\tfont-family: ${props => props.theme.font.family.bold};\n\t\tfont-weight: 400;\n\t\tmargin: 1.5rem 0;\n\t}\n\n\th3 {\n\t\tcolor: ${props => props.theme.colors.primary};\n\t\tfont-size: ${props => props.theme.font.size.md};\n\t}\n\n\tp {\n\t\tmargin-bottom: 2rem !important;\n\t\t&:last-child {\n\t\t\tmargin: 0 !important;\n\t\t}\n\t}\n\n\tol {\n\t\tlist-style: none;\n\t\tpadding: 0;\n\t\tcounter-reset: my-awesome-counter;\n\t\t\n\t\tli {\n\t\t\tcounter-increment: my-awesome-counter;\n\t\t\tpadding-bottom: 1rem;\n\t\t\t\n\t\t\t&:last-child {\n\t\t\t\tpadding-bottom: 0;\n\t\t\t}\n\t\t\t\n\t\t\t&:before {\n\t\t\t\tcontent: counter(my-awesome-counter) \". \";\n\t\t\t\tcolor: ${props => props.theme.colors.primary};\n\t\t\t\tfont-family: ${props => props.theme.font.family.bold};\n\t\t\t}\n\t\t}\n\t}\n\n\tul {\n\t\tpadding-left: 0;\n\t\tlist-style: none;\n\t\t\n\t\tli {\n\t\t\tpadding-left: 20px;\n\t\t\tpadding-bottom: 1rem;\n\t\t\tposition: relative;\n\t\t\ta {\n\t\t\t\ttext-decoration: none;\n\t\t\t\tcolor: ${props => props.theme.colors.primary};\n\t\t\t\tfont-weight: 700;\n\t\t\t\t&:hover {\n\t\t\t\t\tcolor: ${props => props.theme.colors.tertiary};\n\t\t\t\t}\n\t\t\t}\n\t\t\t&:last-child {\n\t\t\t\tpadding-bottom: 0;\n\t\t\t}\n\t\t\t\n\t\t\t&:before {\n\t\t\t\tcontent: \"\";\n\t\t\t\tposition: absolute;\n\t\t\t\theight: 9px;\n\t\t\t\twidth: 9px;\n\t\t\t\tborder-radius: 50%;\n\t\t\t\tleft: 0;\n\t\t\t\ttop: .55rem;\n\t\t\t\tbackground-color: ${props => props.theme.colors.black};\n\t\t\t}\n\t\t}\n\t}\n\t${props => props.$heroText && css`\n\t\tfont-size: 10px;\n\t`}\n`\n\nexport default TextBlockStyles","import React from \"react\"\n// import { Link, useStaticQuery, graphql } from \"gatsby\"\nimport { Link } from \"gatsby\"\nimport { LinkDetect } from \"utils/LinkDetect\"\nimport Button from \"components/shared/Button\"\n\nconst WPLink = (props) => {\n\tconst link = LinkDetect(props.url)\n\tconst content = props.title || props.children\n\tconst onClick = props.onClick ? props.onClick : () => {}\n\n\t// Check if internal link\n\tif (link.type === \"internal\") {\n\t\tif (props.button) {\n\t\t\tif (props.target === \"_blank\") {\n\t\t\t\t// styled button\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t)\n\t\t\t} else {\n\t\t\t\t// styled button\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t)\n\t\t\t}\n\n\t\t} else {\n\t\t\t// simple link\n\t\t\tif (props.target === \"_blank\") {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{content}\n\t\t\t\t\t\n\t\t\t\t)\n\t\t\t} else {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{content}\n\t\t\t\t\t\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif (props.button) {\n\t\t\t// styled button with target\n\t\t\treturn (\n\t\t\t\t\n\t\t\t)\n\t\t} else {\n\t\t\t// simple link with target\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t{content}\n\t\t\t\t\n\t\t\t)\n\t\t}\n\t}\n}\n\nWPLink.defaultProps = {\n button: false\n}\n\nexport default WPLink","import { useStaticQuery, graphql } from \"gatsby\"\n\n// Helper function to return link type and url\nconst LinkDetect = (url) => {\n \n const data = useStaticQuery(\n graphql`\n query {\n allWp {\n edges {\n node {\n allSettings {\n generalSettingsUrl\n }\n }\n }\n }\n allFile {\n edges {\n node {\n publicURL\n }\n }\n }\n }\n `)\n \n const stripProtocol = (url) => {\n let urlStripped = url.replace(\"https://\", \"\")\n urlStripped = urlStripped.replace(\"http://\", \"\")\n urlStripped = urlStripped.replace(\"www.\", \"\")\n urlStripped = urlStripped.replace(\"cms.\", \"\")\n urlStripped = urlStripped.replace(\"cms-staging.\", \"\")\n return urlStripped\n } \n \n const link = []\n const urlStripped = stripProtocol(url)\n const wpUrlStripped = stripProtocol(data.allWp.edges[0].node.allSettings.generalSettingsUrl)\n \n if (urlStripped.includes(\"wp-content/uploads\")) {\n // convert cms media link into local gatsby file link\n const fileName = urlStripped.split(\"/\").pop()\n \n const file = data.allFile.edges.filter(f => {\n return f.node.publicURL.includes(fileName)\n })\n \n link.type = \"internal\"\n link.url = file[0] ? file[0].node.publicURL : urlStripped.replace(wpUrlStripped, '')\n } else {\n if (urlStripped.indexOf(wpUrlStripped) > -1 || url.substring(0, 1) === \"#\" || url.substring(0, 1) === \"/\") {\n link.type = \"internal\"\n link.url = urlStripped.replace(wpUrlStripped, '')\n } else {\n link.type = \"external\"\n link.url = url\n }\n }\n \n return link\n}\n \nexport { LinkDetect }","// Helper function to remove cms from url\nconst LinkSearchReplace = (text) => {\n let newText\n if (process.env.NODE_ENV === \"production\") {\n newText = text.replace(/cms./g, \"\")\n newText = newText.replace(/staging./g, \"\")\n } else {\n newText = text.replace(/cms-/g, \"\")\n }\n return newText\n}\n\nexport { LinkSearchReplace }","import theme from \"./Theme.js\";\n\nexport const media = Object.keys(theme.sizes).reduce((acc, cur) => {\n acc[cur] = `(min-width: ${theme.sizes[cur]})`;\n return acc;\n}, {});","// match bootstrap sizes, also add xxl\nconst sizes = {\n xs: \"0px\",\n sm: \"576px\",\n md: \"768px\",\n lg: \"992px\",\n xl: \"1200px\",\n xxl: \"1600px\",\n xxxl: \"1920px\",\n contentMax: \"1440px\"\n};\n\nconst bootstrapGutterWidth = \"12px\";\nconst bootstrapGutterWidthx2 = \"24px\";\n\nconst fontSizeBase = 1;\n\nconst font = {\n family: {\n body: `MontserratLight, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"`,\n bold: \"MontserratRegular, sans-serif\",\n black: \"MontserratBold, sans-serif\",\n extraBlack: \"MontserratBold, sans-serif\",\n heading: \"MontserratBold, sans-serif\",\n proxima: \"ProximaNovaW01Regular, sans-serif\",\n proximaBold: \"ProximaNovaW01Bold, sans-serif\"\n },\n weight: {\n regular: 400,\n medium: 500,\n semiBold: 600,\n bold: 700,\n black: 900\n },\n size: {\n xs: `${fontSizeBase * .75}rem`, // 12px\n sm: `${fontSizeBase * .875}rem`, // 14px\n base: `${fontSizeBase * 1.125}rem`, // 16px\n md: `${fontSizeBase * 1.2}rem`, // 24px\n lg: `${fontSizeBase * 1.375}rem`, // 28px\n xl: `${fontSizeBase * 1.625}rem`, // 34px\n xxl: `${fontSizeBase * 2.5}rem`, // 40px\n xxxl: `${fontSizeBase * 3.75}rem` // 74px\n },\n lineHeight: {\n sm: 1.1,\n base: 1.4,\n headings: 1\n },\n h1: {\n size: `${fontSizeBase * 3.25}rem`\n },\n h2: {\n size: `${fontSizeBase * 2.75}rem`\n },\n h3: {\n size: `${fontSizeBase * 2.25}rem`\n },\n h4: {\n size: `${fontSizeBase * 1.75}rem`,\n },\n h5: {\n size: `${fontSizeBase * 1.5}rem`,\n },\n h6: {\n size: `${fontSizeBase * 1.15}rem`\n }\n}\n\nconst ThemeExport = {\n sizes,\n bootstrapGutterWidth,\n bootstrapGutterWidthx2,\n font,\n transitionBase: \"all .4s ease-in-out\",\n colors: {\n primary: \"#00B2A9\",\n secondary: \"#FFC72C\",\n tertiary: \"#333E48\",\n quaternary: \"#B5DDD8\",\n white: \"#ffffff\",\n whiteOff: \"#f2f2f2\",\n black: \"#020202\",\n blackOff: \"#333333\",\n grey: \"#707070\",\n grey1: \"#555555\",\n grey2: \"#878787\",\n grey3: \"#C4C4C4\",\n grey4: \"#f6f6f6\",\n grey5: \"#E5E5E5\",\n blue: \"#626C80\",\n midBlue: \"#586BB8\",\n red: \"#BB133E\",\n scarlet: \"#D8431B\",\n navy: \"#000089\",\n pink: \"#F43581\",\n purple: \"#702283\",\n yellow: \"#F2C83D\",\n neonGreen: \"#B0F794\",\n turquoise: \"#00ADB9\",\n cyan: \"#8ADAF1\",\n orange: \"#DA880F\",\n gradient: `linear-gradient(180deg, #333348 0%, #00B2A9 100%)`,\n gradientLeft: `linear-gradient(90deg, #333F48 0%, rgba(51, 63, 72, 0) 73.7%)`,\n gradientUp: `linear-gradient(180deg, rgba(51, 63, 72, 0) 0%, #333F48 100%)`,\n titleGradient: `-webkit-linear-gradient(#000089, #586BB8)`,\n }\n}\n\nexport default ThemeExport","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) {\n if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n }\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) {\n keys.push(key);\n }\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) {\n \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n }\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) {\n ;\n }\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}"],"names":["ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread2","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_typeof","obj","Symbol","iterator","constructor","prototype","_defineProperties","props","descriptor","configurable","writable","value","_slicedToArray","arr","Array","isArray","_arrayWithHoles","_i","_s","_e","_arr","_n","_d","call","next","done","err","_iterableToArrayLimit","_unsupportedIterableToArray","TypeError","_nonIterableRest","_toConsumableArray","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","_nonIterableSpread","o","minLen","n","toString","slice","name","test","len","arr2","noop","_WINDOW","_DOCUMENT","_MUTATION_OBSERVER","_PERFORMANCE","mark","measure","window","document","MutationObserver","performance","e","_familyProxy","_familyProxy2","_familyProxy3","_familyProxy4","_familyProxy5","_ref$userAgent","navigator","userAgent","WINDOW","DOCUMENT","MUTATION_OBSERVER","PERFORMANCE","IS_DOM","documentElement","head","addEventListener","createElement","IS_IE","indexOf","NAMESPACE_IDENTIFIER","DEFAULT_REPLACEMENT_CLASS","DATA_FA_I2SVG","DATA_FA_PSEUDO_ELEMENT","DATA_PREFIX","DATA_ICON","HTML_CLASS_I2SVG_BASE_CLASS","TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS","PRODUCTION","FAMILY_CLASSIC","FAMILY_SHARP","FAMILIES","familyProxy","Proxy","get","prop","PREFIX_TO_STYLE","STYLE_TO_PREFIX","PREFIX_TO_LONG_STYLE","LONG_STYLE_TO_PREFIX","ICON_SELECTION_SYNTAX_PATTERN","LAYERS_TEXT_CLASSNAME","FONT_FAMILY_PATTERN","FONT_WEIGHT_TO_PREFIX","oneToTen","oneToTwenty","concat","ATTRIBUTES_WATCHED_FOR_MUTATION","DUOTONE_CLASSES","prefixes","Set","map","add","bind","RESERVED_CLASSES","initial","FontAwesomeConfig","querySelector","_ref","_ref2","attr","val","coerce","element","getAttribute","getAttrConfig","_default","styleDefault","familyDefault","cssPrefix","replacementClass","autoReplaceSvg","autoAddCss","autoA11y","searchPseudoElements","observeMutations","mutateApproach","keepOriginalSource","measurePerformance","showMissingIcons","familyPrefix","_config","config","set","_onChangeCb","cb","d","meaninglessTransform","size","x","y","rotate","flipX","flipY","nextUniqueId","id","Math","random","toArray","array","classArray","node","classList","split","htmlEscape","str","replace","joinStyles","styles","reduce","acc","styleName","trim","transformIsMeaningful","transform","css","dcp","drc","fp","rc","s","dPatt","RegExp","customPropPatt","rPatt","_cssInserted","ensureCss","style","setAttribute","innerHTML","headChildren","childNodes","beforeChild","child","tagName","toUpperCase","insertBefore","insertCss","InjectCSS","mixout","dom","hooks","beforeDOMElementCreation","beforeI2svg","w","shims","namespace","functions","loaded","domready","fn","setTimeout","toHtml","abstractNodes","tag","_abstractNodes$attrib","attributes","_abstractNodes$childr","children","attributeName","joinAttributes","join","iconFromMapping","mapping","prefix","iconName","icon","doScroll","readyState","listener","removeEventListener","subject","initialValue","thisContext","result","undefined","func","a","b","c","bindInternal4","toHex","unicode","decoded","string","output","counter","charCodeAt","extra","ucs2decode","normalizeIcons","icons","defineIcons","params","_params$skipHooks","skipHooks","normalized","addPack","_LONG_STYLE","_PREFIXES","_PREFIXES_FOR_FAMILY","LONG_STYLE","values","_defaultUsablePrefix","_byUnicode","_byLigature","_byOldName","_byOldUnicode","_byAlias","PREFIXES","getIconName","cls","parts","build","lookup","reducer","alias","aliases","hasRegular","autoFetchSvg","shimLookups","shim","maybeNameMaybeUnicode","names","unicodes","getCanonicalPrefix","family","byUnicode","byAlias","byOldName","getDefaultUsablePrefix","styleOrPrefix","_params$family","defined","PREFIXES_FOR_FAMILY","getCanonicalIcon","_famProps","_params$skipLookups","skipLookups","famProps","givenPrefix","includes","some","v","canonical","rest","aliasIconName","Library","instance","Constructor","_classCallCheck","this","definitions","protoProps","staticProps","_this","_len","_key","additions","_pullDefinitions","longPrefix","definition","_normalized$key","_plugins","_hooks","providers","defaultProviderKeys","chainHooks","hook","accumulator","args","hookFns","hookFn","callHooks","_len2","_key2","callProvided","findIconDefinition","iconLookup","library","i2svg","Promise","reject","watch","autoReplaceSvgRoot","autoReplace","api","noAuto","parse","_icon","match","canonicalIcon","_prefix","_params$autoReplaceSv","domVariants","abstractCreator","abstract","container","html","makeInlineSvgAbstract","_params$icons","main","mask","symbol","title","maskId","titleId","_params$watchable","watchable","found","width","height","isUploadedIcon","attrClass","classes","content","role","uploadedIconWidthStyle","asSymbol","offset","asIcon","makeLayersTextAbstract","_params$watchable2","_ref2$width","_ref2$height","_ref2$startCentered","startCentered","transformForCss","styleString","class","makeLayersCounterAbstract","styles$1","asFoundIcon","vectorData","fill","missingIconResolutionMixin","findIcon","resolve","console","error","maybeNotifyMissing","noop$1","p","preamble","end","perf","noop$2","isWatched","createElementNS","convertSVG","abstractObj","_params$ceFn","ceFn","createTextNode","appendChild","mutators","mutation","parentNode","_abstract","comment","createComment","outerHTML","nodeAsComment","replaceChild","remove","nest","_abstract2","forSvg","splitClasses","toSvg","toNode","removeAttribute","newInnerHTML","performOperationSync","op","perform","mutations","callback","callbackFunction","frame","requestAnimationFrame","mutator","disabled","disableObservation","enableObservation","mo","observe","options","_options$treeCallback","treeCallback","_options$nodeCallback","nodeCallback","_options$pseudoElemen","pseudoElementsCallback","_options$observeMutat","observeMutationsRoot","objects","defaultPrefix","mutationRecord","type","addedNodes","hasPrefixAndIcon","_getCanonicalIcon","contains","childList","characterData","subtree","styleParser","classParser","ligature","existingPrefix","existingIconName","innerText","firstChild","nodeType","Node","TEXT_NODE","data","attributesParser","extraAttributes","parseMeta","parser","_classParser","extraClasses","pluginMeta","extraStyles","styles$2","generateMutation","nodeMeta","knownPrefixes","onTree","root","htmlClassList","hclAdd","suffix","hclRemove","f","prefixesDomQuery","candidates","querySelectorAll","all","then","resolvedMutations","catch","onNode","render","iconDefinition","_params$transform","_params$symbol","_params$mask","_params$maskId","_params$title","_params$titleId","_params$classes","_params$attributes","_params$styles","ReplaceElements","maybeIconDefinition","mutationObserverCallbacks","provides","providers$$1","_params$node","_params$callback","generateSvgReplacementMutation","generateAbstractIcon","_ref3","nextChild","containerWidth","iconWidth","Layers","layer","assembler","LayersCounter","LayersText","text","generateLayersText","computedFontSize","parseInt","getComputedStyle","fontSize","boundingClientRect","getBoundingClientRect","CLEAN_CONTENT_PATTERN","SECONDARY_UNICODE_RANGE","replaceForPosition","position","pendingAttribute","oldUnicode","newUnicode","alreadyProcessedPseudoElement","fontFamily","getPropertyValue","fontWeight","removeChild","_content","toLowerCase","_hexValueFromContent","index","second","first","cleaned","codePoint","isPrependTen","isDoubled","isSecondary","hexValueFromContent","hexValue","isV4","startsWith","iconIdentifier","iconName4","meta","processable","operations","_unwatched","parseTransformString","transformString","parseFloat","isNaN","PowerTransforms","parseNodeAttributes","generateAbstractTransformGrouping","outer","innerTranslate","innerScale","innerRotate","inner","path","ALL_SPACE","fillBlack","force","Masks","maskData","generateAbstractMask","explicitMaskId","mainWidth","mainPath","maskWidth","maskPath","trans","transformForSvg","maskRect","maskInnerGroupChildrenMixin","maskInnerGroup","maskOuterGroup","clipId","maskTag","maskUnits","maskContentUnits","defs","MissingIconIndicator","reduceMotion","matchMedia","matches","missingIconAbstract","gChildren","FILL","ANIMATION_BASE","attributeType","repeatCount","dur","OPACITY_ANIMATE","dot","cx","cy","r","opacity","nextPlugins","mixoutsTo","k","plugin","tk","sk","registerPlugins","pseudoElements2svg","unwatch","bootstrap","disconnect","symbolData","parse$1","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","camelize","chr","substr","_excluded","styleToObject","pair","charAt","normalizeIconArgs","objectWithKey","FontAwesomeIcon","ref","iconArgs","maskArgs","className","_classes","beat","fade","beatFade","bounce","shake","flash","spin","spinPulse","spinReverse","pulse","fixedWidth","inverse","border","listItem","flip","rotation","pull","swapOpacity","renderedIcon","_console","log","extraProps","defaultProps","hasOwnProperty","convertCurry","displayName","propTypes","convert","mixins","attrs","_extraProps$style","existingStyle","remaining","camelCase","input","assign","pascalCase","isLastCharLower","isLastCharUpper","isLastLastCharUpper","character","preserveCamelCase","_","p1","m","module","exports","hasOwn","classNames","arg","argType","default","opt","pairs","dec","decode","substring","tryDecode","enc","encode","fieldContentRegExp","maxAge","isFinite","floor","domain","expires","toUTCString","httpOnly","secure","sameSite","decodeURIComponent","encodeURIComponent","isMergeableObject","isNonNullObject","stringValue","$$typeof","REACT_ELEMENT_TYPE","isReactElement","isSpecial","for","cloneUnlessOtherwiseSpecified","clone","deepmerge","defaultArrayMerge","getKeys","getEnumerableOwnPropertySymbols","propertyIsOnObject","property","mergeObject","destination","propertyIsUnsafe","customMerge","getMergeFunction","arrayMerge","sourceIsArray","Error","prev","deepmerge_1","QueryHandler","each","MediaQuery","query","isUnconditional","handlers","mql","self","currentTarget","assess","addListener","constuctor","addHandler","handler","qh","on","removeHandler","h","equals","destroy","splice","clear","removeListener","action","Util","isFunction","MediaQueryDispatch","queries","browserIsIncapable","register","q","shouldDegrade","unregister","deferSetup","setup","initialised","off","unmatch","collection","canUseDOM","ExecutionEnvironment","canUseWorkers","Worker","canUseEventListeners","attachEvent","canUseViewport","screen","__assign","t","named_references_1","numeric_unicode_map_1","surrogate_pairs_1","allNamedReferences","namedReferences","html5","encodeRegExps","specialChars","nonAscii","nonAsciiPrintable","extensive","defaultEncodeOptions","mode","level","numeric","_a","_c","_b","encodeRegExp","references","characters","isHex","lastIndex","exec","result_1","code_1","getCodePoint","defaultDecodeOptions","scope","strict","attribute","baseDecodeRegExps","xml","body","bodyRegExps","html4","decodeRegExps","fromCharCode","String","outOfBoundsChar","defaultDecodeEntityOptions","decodeEntity","entity","decodeResultByReference_1","entities","decodeSecondChar_1","decodeCode_1","fromCodePoint","numericUnicodeMap","decodeRegExp","isAttribute","isStrict","replaceResult_1","replaceMatch_1","replaceLastIndex_1","replaceInput_1","decodeResult_1","decodeEntityLastChar_2","decodeResultByReference_2","decodeSecondChar_2","decodeCode_2","$","fj","astralCodePoint","codePointAt","highSurrogateFrom","highSurrogateTo","DocumentTouch","maxTouchPoints","msMaxTouchPoints","camel2hyphen","obj2mq","mq","features","feature","isDimension","debug","url","opts","script","timer","count","param","timeout","getElementsByTagName","cleanup","clearTimeout","src","load","storage","process","DEBUG","Function","formatArgs","useColors","humanize","diff","color","lastC","save","namespaces","removeItem","WebkitAppearance","firebug","exception","table","$1","chrome","local","localStorage","localstorage","colors","formatters","j","JSON","stringify","message","enable","prevTime","createDebug","enabled","curr","Date","ms","unshift","format","formatter","logFn","hash","abs","selectColor","init","stack","disable","skips","plural","ceil","long","round","fmtShort","stdOnEnd","onload","onerror","ieOnEnd","onreadystatechange","charset","async","setAttributes","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","freeGlobal","g","freeSelf","objectToString","nativeMax","max","nativeMin","min","now","isObject","toNumber","isObjectLike","isSymbol","other","valueOf","isBinary","wait","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","invokeFunc","time","thisArg","leadingEdge","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","remainingWait","debounced","isInvoking","cancel","flush","safeIsNaN","Number","areInputsEqual","newInputs","lastInputs","resultFn","isEqual","lastResult","calledOnce","newArgs","hasElementType","Element","hasMap","Map","hasSet","hasArrayBuffer","ArrayBuffer","isView","equal","it","entries","has","flags","warn","_extends","_getPrototypeOf","setPrototypeOf","getPrototypeOf","__proto__","_setPrototypeOf","_assertThisInitialized","ReferenceError","_possibleConstructorReturn","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Boolean","_isNativeReflectConstruct","Super","NewTarget","translate","replaceStrings","translated","placeholder","getWindowWidth","innerWidth","isCrossOriginFrame","location","hostname","parent","getHighestSafeWindowContext","top","MAX_ZOOM_LEVEL","KEYS","ReactImageLightbox","_Component","subClass","superClass","create","_inherits","_super","state","isClosing","animationDisabled","shouldAnimate","zoomLevel","offsetX","offsetY","loadErrorStatus","outerEl","zoomInBtn","zoomOutBtn","caption","closeIfClickInner","handleImageDoubleClick","handleImageMouseWheel","handleKeyInput","handleMouseUp","handleMouseDown","handleMouseMove","handleOuterMousewheel","handleTouchStart","handleTouchMove","handleTouchEnd","handlePointerEvent","handleCaptionMousewheel","handleWindowResize","handleZoomInButtonClick","handleZoomOutButtonClick","requestClose","requestMoveNext","requestMovePrev","timeouts","currentAction","eventsSource","pointerList","preventInnerClose","preventInnerCloseTimeout","keyPressed","imageCache","lastKeyDownTime","resizeTimeout","wheelActionTimeout","resetScrollTimeout","scrollX","scrollY","moveStartX","moveStartY","moveStartOffsetX","moveStartOffsetY","swipeStartX","swipeStartY","swipeEndX","swipeEndY","pinchTouchList","pinchDistance","keyCounter","moveRequested","_this2","setState","windowContext","listeners","resize","mouseup","touchend","touchcancel","pointerdown","pointermove","pointerup","pointercancel","loadAllImages","nextProps","_this3","getSrcTypes","srcType","prevProps","_this4","sourcesChanged","prevSrcDict","nextSrcDict","prevSrc","_this5","didUnmount","tid","_setTimeout","_x","_x2","_this6","_this7","imageSrc","fitSizes","isImageLoaded","getFitSizes","targetHeight","targetWidth","stretch","boxSize","getLightboxRect","maxHeight","imagePadding","maxWidth","currentImageInfo","getBestImageForType","maxX","minX","maxY","minY","zoomMultiplier","getZoomMultiplier","keyEnding","pow","current","innerHeight","right","bottom","left","_clearTimeout","_x3","clientX","clientY","enableZoom","nextZoomLevel","imageBaseSize","currentZoomMultiplier","nextZoomMultiplier","boxRect","pointerX","pointerY","currentImageOffsetX","currentImageOffsetY","nextImageRealOffsetX","nextImageRealOffsetY","nextOffsetX","nextOffsetY","maxOffsets","getMaxOffsets","event","search","stopPropagation","isAnimating","keyCode","which","currentTime","getTime","keyRepeatLimit","preventDefault","nextSrc","keyRepeatKeyupBonus","_this8","actionDelay","deltaY","deltaX","xThreshold","changeZoom","filterPointersBySource","pointer","_this9","shouldHandleEvent","isTargetMatchImage","addPointer","parseMouseEvent","multiPointerStart","multiPointerMove","removePointer","multiPointerEnd","parsePointerEvent","_this10","changedTouches","eventTouch","parseTouchPointer","_this11","touch","handleSwipeStart","handleMoveStart","handleEnd","decideMoveOrSwipe","handlePinchStart","handleMove","handleSwipe","handlePinch","setPreventInnerClose","handleMoveEnd","handleSwipeEnd","handlePinchEnd","_ref4","newOffsetX","newOffsetY","_this12","animationDuration","_ref5","_ref6","xDiff","xDiffAbs","yDiffAbs","_ref7","_ref8","sqrt","_ref9","_ref10","_ref11","calculatePinchDistance","oldPointer","newDistance","_this$calculatePinchC","calculatePinchCenter","forceUpdate","focus","_this$caption$current2","scrollHeight","scrollTop","_this13","inMemoryImage","Image","imageCrossOrigin","crossOrigin","errorEvent","onImageLoadError","prevState","onImageLoad","_this14","generateLoadDoneCallback","loadImage","_this15","closeLightbox","onCloseRequest","animationOnKeyInput","direction","_this16","nextState","onMovePrevRequest","onMoveNextRequest","requestMove","_this17","_this$props","clickOutsideToClose","discourageDownloads","imageTitle","toolbarButtons","reactModalStyle","_onAfterOpen","onAfterOpen","reactModalProps","loader","_this$state","transitionStyle","transition","keyEndings","_ref12","images","addImage","imageClass","transforms","bestImageInfo","imageStyle","getTransform","cursor","imageLoadErrorMessage","backgroundImage","onDoubleClick","onWheel","onDragStart","alt","draggable","loadingIcon","zoom","modalStyle","overlay","zIndex","backgroundColor","overflow","borderRadius","padding","isOpen","onRequestClose","contentLabel","appElement","wrapperClassName","animationDirection","onMouseMove","onMouseDown","onTouchStart","onTouchMove","tabIndex","onKeyDown","onKeyUp","onClick","prevLabel","nextLabel","button","zoomInLabel","zoomOutLabel","closeLabel","imageCaption","mouseEvent","touchPointer","identifier","pointerEvent","pointerId","_ref13","_ref13$x","_ref13$y","_ref13$zoom","nextX","windowWidth","scaleFactor","Component","mainSrcThumbnail","nextSrcThumbnail","prevSrcThumbnail","bodyOpenClassName","portalClassName","_createClass","_react","_react2","_interopRequireDefault","_reactDom2","_propTypes2","_ModalPortal2","ariaAppHider","__esModule","newObj","_interopRequireWildcard","_safeHTMLElement","_safeHTMLElement2","_reactLifecyclesCompat","isReact16","createPortal","createHTMLElement","getCreatePortal","unstable_renderSubtreeIntoContainer","getParentElement","parentSelector","Modal","_temp","removePortal","unmountComponentAtNode","portalRef","portal","renderPortal","defaultStyles","prevParent","nextParent","snapshot","_props","closesAt","closeTimeoutMS","beforeClose","closeWithTimeout","setElement","bool","isRequired","shape","htmlOpenClassName","oneOfType","base","afterOpen","overlayClassName","instanceOf","SafeHTMLCollection","SafeNodeList","arrayOf","number","ariaHideApp","shouldFocusAfterRender","shouldCloseOnOverlayClick","shouldReturnFocusAfterClose","preventScroll","aria","shouldCloseOnEsc","overlayRef","contentRef","overlayElement","contentElement","contentEl","background","WebkitOverflowScrolling","outline","polyfill","focusManager","_scopeTab2","_portalOpenInstances2","CLASS_NAMES","ariaHiddenInstances","ModalPortal","setOverlayRef","setContentRef","afterClose","parentDocument","ownerDocument","show","returnFocus","teardownScopedFocus","popWithoutFocus","onAfterClose","deregister","open","beforeOpen","closeTimer","setupScopedFocus","markForFocusLater","openAnimationFrame","overlayEl","close","closeWithoutTimeout","focusContent","contentHasFocus","handleKeyDown","code","isTabKey","isEscKey","handleOverlayOnClick","shouldClose","ownerHandlesClose","handleContentOnMouseUp","handleOverlayOnMouseDown","handleContentOnClick","handleContentOnMouseDown","shouldBeClosed","activeElement","buildClassName","additional","attributesFromObject","items","moveFromContentToOverlay","cancelAnimationFrame","hide","_props2","contentStyles","overlayStyles","overlayProps","contentProps","onMouseUp","modal","testId","resetState","globalElement","assertNodeList","useElement","el","validateElement","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","return","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","documentNotReadyOrSSRTesting","_warning","_warning2","nodeList","selector","HTMLCollection","NodeList","before","after","item","instances","_arr2","_i2","check","nodeName","_portalOpenInstances","subscribe","eventType","openInstances","cloneNode","lastChild","parentElement","htmlElement","removeClass","_cls","docBodyClassList","at","classString","classListRef","poll","incrementReference","decrementReference","focusLaterElements","handleBlur","handleFocus","toFocus","pop","modalElement","detachEvent","_tabbable","_tabbable2","needToFocus","portalOpenInstances","PortalOpenInstances","openInstance","emit","subscribers","subscriber","_exenv","EE","SafeHTMLElement","HTMLElement","tabbable","shiftKey","tail","getActiveElement","checkSafari","shadowRoot","findTabbableDescendants","descendants","finished","tabbableNode","hidesContents","zeroSize","offsetWidth","offsetHeight","displayValue","scrollWidth","isNotOverflowing","focusable","isTabIndexNotNaN","href","rootNode","getRootNode","host","visible","isTabIndexNaN","_Modal","_Modal2","cache","_getRequireWildcardCache","hasPropertyDescriptor","desc","_reactFastCompare","_utils","WeakMap","Player","_args","player","progress","isReady","playedSeconds","getCurrentTime","loadedSeconds","getSecondsLoaded","duration","getDuration","played","prevPlayed","prevLoaded","onProgress","progressTimeout","progressFrequency","progressInterval","mounted","isLoading","onReady","playing","volume","muted","setVolume","loadOnReady","play","handleDurationCheck","isPlaying","_this$props2","onStart","onPlay","playbackRate","startOnPlay","setPlaybackRate","seekOnPlay","seekTo","onPause","_this$props3","activePlayer","loop","onEnded","loopOnEnded","_this$props4","onError","durationCheckTimeout","onDurationCalled","onDuration","stopOnUnmount","stop","disablePIP","_this$props5","pip","disableDeferredLoading","forceLoad","isMediaStream","pause","enablePIP","mute","unmute","setLoop","amount","onMount","handlePlayerMount","handleReady","handlePlay","handlePause","handleEnded","onLoaded","handleLoaded","handleError","_objectSpread","ICON_SIZE","Preview","image","fetchImage","light","oEmbedUrl","isValidElement","fetch","response","json","thumbnail_url","playIcon","previewTabIndex","isElement","flexCenter","display","alignItems","justifyContent","preview","backgroundSize","backgroundPosition","shadow","borderStyle","borderWidth","borderColor","marginLeft","defaultPlayIcon","onKeyPress","handleKeyPress","createReactPlayer","_deepmerge","_memoizeOne","_Player3","lazy","IS_BROWSER","IS_GLOBAL","SUPPORTED_PROPS","UniversalSuspense","Suspense","customPlayers","players","fallback","_class","ReactPlayer","showPreview","wrapper","_wrapper","_player","onClickPreview","getInternalPlayer","fraction","canPlay","omit","getActivePlayer","getConfig","lazyPlayer","handleClickPreview","Wrapper","getAttributes","wrapperRef","renderPreview","renderActivePlayer","_i3","_arr3","_Player2","canEnablePIP","_players","_ReactPlayer","FLV_EXTENSIONS","DASH_EXTENSIONS","HLS_EXTENSIONS","VIDEO_EXTENSIONS","AUDIO_EXTENSIONS","MATCH_URL_KALTURA","MATCH_URL_VIDYARD","MATCH_URL_MIXCLOUD","MATCH_URL_DAILYMOTION","MATCH_URL_TWITCH_CHANNEL","MATCH_URL_TWITCH_VIDEO","MATCH_URL_WISTIA","MATCH_URL_STREAMABLE","MATCH_URL_FACEBOOK_WATCH","MATCH_URL_FACEBOOK","MATCH_URL_VIMEO","MATCH_URL_SOUNDCLOUD","MATCH_URL_YOUTUBE","_createForOfIteratorHelper","allowArrayLike","F","normalCompletion","didErr","step","_e2","youtube","every","soundcloud","vimeo","facebook","streamable","wistia","twitch","dailymotion","mixcloud","vidyard","kaltura","file","canPlayFile","isBlobUrl","_patterns","DailyMotion","callPlayer","controls","start","parseStartTime","autoplay","getSDK","DM","video","origin","events","apiready","seeked","onSeek","video_end","durationchange","onDurationChange","waiting","onBuffer","seconds","bufferedTime","SDK_URL","SDK_GLOBAL_READY","PLAYER_ID_PREFIX","Facebook","playerId","randomString","FB","XFBML","appId","xfbml","version","Event","msg","playerID","onBufferEnd","getElementById","visibility","HAS_NAVIGATOR","IS_IPAD_PRO","platform","IS_IOS","MSStream","MATCH_DROPBOX_URL","MATCH_CLOUDFLARE_STREAM","FilePlayer","_this$props6","_this$props7","onPlaybackRateChange","_this$props8","onEnablePIP","_this$props9","onDisablePIP","supportsWebKitPresentationMode","webkitPresentationMode","track","prevPlayer","addListeners","shouldUseAudio","removeListeners","srcObject","hls","_this$props10","playsinline","onPlayBackRateChange","onPresentationModeChange","shouldUseHLS","forceVideo","poster","forceAudio","forceHLS","forceDASH","forceFLV","_this$props$config","hlsVersion","hlsOptions","dashVersion","flvVersion","dash","reset","Hls","Events","MANIFEST_PARSED","ERROR","loadSource","attachMedia","shouldUseDASH","dashjs","MediaPlayer","initialize","getDebug","setLogToBrowserConsole","updateSettings","logLevel","Debug","LOG_LEVEL_NONE","shouldUseFLV","flvjs","flv","createPlayer","attachMediaElement","URL","createObjectURL","promise","requestPictureInPicture","pictureInPictureElement","webkitSetPresentationMode","exitPictureInPicture","rate","_this$player","seekable","Infinity","buffered","useHLS","useDASH","useFLV","_this$props11","getSource","preload","autoPlay","renderSourceElement","tracks","renderTrack","Kaltura","iframe","playerjs","secondsLoaded","frameBorder","scrolling","allow","referrerPolicy","Mixcloud","PlayerWidget","ready","ended","queryString","feed","SoundCloud","SC","_SC$Widget$Events","Widget","PLAY","PLAY_PROGRESS","PAUSE","FINISH","currentPosition","fractionLoaded","loadedProgress","Streamable","percent","Twitch","isChannel","setChannel","setVideo","channel","_Twitch$Player","READY","PLAYING","ENDED","ONLINE","OFFLINE","SEEK","Vidyard","addReadyListener","renderPlayer","uuid","getPlayerMetadata","length_in_seconds","VidyardV4","destroyPlayer","Vimeo","_this2$props$config","playerOptions","refreshDuration","Wistia","_onReady","customControls","control","defineControl","_wq","silentAutoPlay","controlsVisibleOnLoad","fullscreenButton","playbar","playbackRateControl","qualityControl","volumeControl","settingsControl","smallPlayButton","unbind","videoID","SDK_GLOBAL","MATCH_PLAYLIST","MATCH_USER_UPLOADS","MATCH_NOCOOKIE","YouTube","listType","playlist","getID","list","playerVars","onUnstarted","_window$SDK_GLOBAL$Pl","PlayerState","UNSTARTED","PAUSED","BUFFERING","CUED","isPlaylist","_onError","embedOptions","loadPlaylist","parsePlaylist","cueVideoById","videoId","startSeconds","endSeconds","parseEndTime","YT","onStateChange","pictureInPictureEnabled","_propTypes","visual","buying","liking","download","sharing","show_comments","show_playcount","showinfo","rel","iv_load_policy","modestbranding","autopause","byline","portrait","hide_cover","parseTimeParam","MATCH_START_QUERY","MATCH_END_QUERY","sdkGlobal","sdkReady","isLoaded","fetchScript","_loadScript","existingGlobal","getGlobal","requests","sdk","request","previousOnReady","arrays","omitKeys","_keys","method","MediaStream","notMobile","webkitSupportsPresentationMode","MATCH_START_STAMP","MATCH_NUMERIC","pattern","stamp","_array2","period","parseTimeString","ManagerReferenceNodeContext","ManagerReferenceNodeSetterContext","Manager","_React$useState","referenceNode","setReferenceNode","hasUnmounted","handleSetReferenceNode","Provider","getWindow","defaultView","isHTMLElement","isShadowRoot","ShadowRoot","getUAString","uaData","userAgentData","brands","brand","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","visualViewport","addVisualOffsets","offsetLeft","offsetTop","getWindowScroll","win","scrollLeft","pageXOffset","pageYOffset","getNodeName","getDocumentElement","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflowX","overflowY","getCompositeRect","elementOrVirtualElement","offsetParent","isFixed","isOffsetParentAnElement","offsetParentIsScaled","rect","isElementScaled","scroll","offsets","clientLeft","clientTop","getLayoutRect","getParentNode","assignedSlot","getScrollParent","listScrollParents","_element$ownerDocumen","scrollParent","isBody","updatedList","isTableElement","getTrueOffsetParent","getOffsetParent","isFirefox","currentNode","perspective","contain","willChange","getContainingBlock","auto","basePlacements","viewport","popper","variationPlacements","placement","modifierPhases","order","modifiers","visited","sort","modifier","requires","requiresIfExists","dep","depModifier","DEFAULT_OPTIONS","strategy","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","reference","pending","orderedModifiers","modifiersData","elements","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","scrollParents","contextElement","phase","orderModifiers","merged","existing","mergeByName","_ref3$options","effect","cleanupFn","noopFn","update","_state$elements","rects","_state$orderedModifie","_state$orderedModifie2","_options","onFirstUpdate","passive","getBasePlacement","getVariation","getMainAxisFromPlacement","computeOffsets","basePlacement","variation","commonX","commonY","mainAxis","unsetSides","mapToStyles","_Object$assign2","popperRect","gpuAcceleration","adaptive","roundOffsets","_offsets$x","_offsets$y","hasX","hasY","sideX","sideY","heightProp","widthProp","_Object$assign","commonStyles","dpr","devicePixelRatio","roundOffsetsByDPR","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","popperOffsets","getOppositePlacement","matched","getOppositeVariationPlacement","isSameNode","rectToClientRect","getClientRectFromMixedType","clippingParent","clientWidth","clientHeight","layoutViewport","getViewportRect","getInnerBoundingClientRect","winScroll","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","mergePaddingObject","paddingObject","expandToHashMap","hashMap","detectOverflow","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","axis","within","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","referenceRect","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","maxLen","arrowElement","arrow","arrowRect","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","arrowOffsetParent","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","withinMaxClamp","_state$modifiersData$","toPaddingObject","minProp","maxProp","endDiff","startDiff","clientSize","centerToReference","center","axisProp","centerOffset","_options$element","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","_options$scroll","_options$resize","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","initialStyles","margin","_skip","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","flipVariations","allowedAutoPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","placements","_options$allowedAutoP","allowedPlacements","overflows","computeAutoPlacement","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","_loop","fittingPlacement","find","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","EMPTY_MODIFIERS","NOOP","NOOP_PROMISE","Popper","_ref$placement","_ref$strategy","_ref$modifiers","referenceElement","innerRef","popperElement","setPopperElement","_React$useState2","setArrowElement","_usePopper","prevOptions","optionsWithDefaults","updateStateModifier","popperOptions","newOptions","popperInstanceRef","popperInstance","createPopper","usePopper","childrenProps","arrowProps","Reference","refHandler","unwrapArray","safeInvoke","setRef","fromEntries","useIsomorphicLayoutEffect","ex","React","React__default","reducePropsToState","handleStateChangeOnClient","mapStateOnServer","WrappedComponent","mountedInstances","emitChange","SideEffect","_PureComponent","peek","rewind","recordedState","_proto","UNSAFE_componentWillMount","componentDidUpdate","componentWillUnmount","PureComponent","getDisplayName","NextArrow","PrevArrow","_classnames","_innerSliderUtils","_React$PureComponent","clickHandler","prevClasses","prevHandler","infinite","currentSlide","slideCount","slidesToShow","prevArrowProps","customProps","prevArrow","cloneElement","_React$PureComponent2","_super2","nextClasses","nextHandler","canGoNext","nextArrowProps","nextArrow","accessibility","adaptiveHeight","afterChange","appendDots","dots","arrows","autoplaySpeed","beforeChange","centerMode","centerPadding","cssEase","customPaging","dotsClass","easing","edgeFriction","focusOnSelect","initialSlide","lazyLoad","onEdge","onInit","onLazyLoadError","onReInit","pauseOnDotsHover","pauseOnFocus","pauseOnHover","responsive","rows","rtl","slide","slidesPerRow","slidesToScroll","speed","swipe","swipeEvent","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","waitForAnimate","Dots","spec","onMouseEnter","onMouseOver","onMouseLeave","dotCount","mouseEvents","_rightBound","rightBound","clamp","_leftBound","leftBound","dotOptions","animating","autoplaying","currentDirection","currentLeft","dragging","edgeDragged","initialized","lazyLoadedList","listHeight","listWidth","slideHeight","slideWidth","swipeLeft","swiped","swiping","touchObject","startX","startY","curX","curY","trackStyle","trackWidth","targetSlide","InnerSlider","_initialState","_lodash","_track","_dots","_arrows","_resizeObserverPolyfill","_React$Component","elem","getHeight","slidesToLoad","getOnDemandLazySlides","onLazyLoad","listRef","trackRef","updateState","adaptHeight","lazyLoadTimer","setInterval","progressiveLazyLoad","ro","onWindowResized","callbackTimers","onfocus","onSlideFocus","onblur","onSlideBlur","animationEndCallback","clearInterval","autoplayTimer","checkImagesLoad","setTrackStyle","didPropsChange","Children","changeSlide","debouncedResize","resizeWindow","isTrackMounted","updatedState","initializedState","slideIndex","targetLeft","getTrackLeft","getTrackCSS","_trackWidth","_trackLeft","childrenWidths","preClones","getPreClones","postClones","getPostClones","_trackStyle","currentWidth","childrenCount","trackLeft","imagesCount","loadedCount","onclick","prevClickHandler","_index","dontAnimate","asNavFor","_slideHandler","slideHandler","asNavForIndex","innerSlider","firstBatch","nodes","clickable","dir","keyHandler","ontouchmove","returnValue","verticalSwiping","disableBodyScroll","swipeStart","swipeMove","swipeEnd","triggerSlideHandler","enableBodyScroll","nextIndex","playType","pauseType","trackProps","extractObject","onTrackOver","onTrackLeave","selectHandler","dotProps","onDotsLeave","onDotsOver","verticalHeightStyle","centerPaddingStyle","listStyle","listProps","onTouchEnd","touchEnd","onTouchCancel","innerSliderProps","unslick","listRefHandler","Track","trackRefHandler","ssrState","ssrInit","_Object$keys","_innerSlider","_json2mq","_defaultProps","enquire","Slider","slickPrev","slickNext","slickGoTo","breakpoint","_responsiveMediaHandlers","breakpoints","breakpt","bQuery","minWidth","media","settings","newProps","resp","newChildren","newSlide","row","innerSliderRefHandler","getSlideClasses","slickActive","slickCenter","slickCloned","getKey","fallbackKey","renderSlides","slides","preCloneSlides","postCloneSlides","startIndex","lazyStartIndex","endIndex","lazyEndIndex","childOnClickOptions","childStyle","getSlideStyle","slideClass","slideClasses","preCloneNo","reverse","handleRef","slidesOnLeft","slidesOnRight","siblingDirection","getTotalSlides","getTrackAnimateCSS","checkSpecKeys","getSlideCount","checkNavigable","getNavigableIndexes","getSwipeDirection","getWidth","lazySlidesOnRight","lazySlidesOnLeft","getRequiredLazySlides","safePreventDefault","lowerBound","upperBound","_reactName","onDemandSlides","requiredSlides","xDist","yDist","swipeAngle","atan2","PI","canGo","newObject","listNode","trackNode","centerPaddingAdj","finalSlide","animationLeft","finalLeft","animationSlide","indexOffset","previousInt","slideOffset","previousTargetSlide","touches","pageX","pageY","curLeft","swipeLength","verticalSwipeLength","positionOffset","swipeDirection","touchSwipeLength","onSwipe","minSwipe","activeSlide","indexes","navigables","prevNavigable","swipedSlide","slickList","currentIndex","dataset","keysArray","trackHeight","trackChildren","WebkitTransition","WebkitTransform","msTransform","marginTop","slidesToOffset","targetSlideIndex","trackElem","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","context","initialStatus","appear","isMounting","enter","appearStatus","in","unmountOnExit","mountOnEnter","status","nextCallback","getDerivedStateFromProps","componentDidMount","updateStatus","nextStatus","cancelNextCallback","getTimeouts","exit","mounting","nodeRef","forceReflow","performEnter","performExit","appearing","maybeNode","maybeAppearing","enterTimeout","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","onExit","onExiting","onExited","setNextCallback","active","doesNotHaveTimeoutOrListener","addEndListener","maybeNextCallback","childProps","TransitionGroupContext","contextType","MapShim","getIndex","entry","class_1","__entries__","delete","ctx","isBrowser","global$1","requestAnimationFrame$1","transitionKeys","mutationObserverSupported","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","delay","leadingCall","trailingCall","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","gatherActive","hasActive","broadcastActive","propertyName","getInstance","instance_","defineConfigurable","getWindowOf","emptyRect","createRectInit","toFloat","getBordersSize","positions","getHTMLElementContentRect","paddings","positions_1","getPaddings","horizPad","vertPad","boxSizing","isDocumentElement","vertScrollbar","horizScrollbar","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","getBBox","getContentRect","bbox","getSVGContentRect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","broadcastRect","ResizeObserverEntry","rectInit","Constr","contentRect","DOMRectReadOnly","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","callback_","controller_","callbackCtx_","observations","unobserve","clearActive","observation","ResizeObserver","l","arrayPrefix","u","readCookie","cleanValue","cleanupCookieValue","doNotParse","isParsingCookie","Cookies","cookies","changeListeners","HAS_DOCUMENT_COOKIE","cookie","parseCookies","_updateBrowserValues","parseOptions","_emitChange","getAll","name_1","finalOptions","addChangeListener","removeChangeListener","idx","filename","lastIndexOf","ext","layout","sourceMetadata","aspectRatio","formats","setDefaultDimensions","generateImageSource","fit","_generateImageSource","pluginName","reporter","placeholderURL","formatFromFilename","imgDimensions","DEFAULT_BREAKPOINTS","erroneousUserDimensions","dim","outputPixelDensities","DEFAULT_PIXEL_DENSITIES","dedupeAndSortDensities","getDimensionsAndAspectRatio","calculated","fixedDimension","sizes","densities","density","presentationWidth","originalWidth","presentationHeight","unscaledWidth","calculateImageSizes","sources","imageSizes","img","unscaled","srcSet","getSrcSet","imageProps","sortNumeric","dimensions","MAX_SAFE_INTEGER","widthOption","heightOption","imageAspectRatio","_node$images","_node$images$fallback","gatsbyImageData","gatsbyImage","childImageSharp","_node$childImageSharp","getImage","_getImage","_getImage$images","_getImage$images$fall","_getImage2","_getImage2$images","_getImage2$images$fal","baseUrl","urlBuilder","sourceWidth","sourceHeight","EVERY_BREAKPOINT","loading","shouldLoad","objectFit","objectPosition","wrapperStyle","defaultImage","artDirected","fallbackImage","paddingTop","Fragment","Sizer","decoding","PropTypes","Picture","Placeholder","_Picture$propTypes","propName","componentName","MainImage","altValidator","as","preactClass","onStartLoad","onLoad","wStyle","wClass","wrapperProps","useRef","useMemo","sizer","useEffect","renderImageToStringPromise","import","renderImageToString","swapPlaceholderImage","renderImage","ssrImage","hasNativeLazyLoadSupport","complete","wasCached","onLoadListener","cacheKey","animationFrame","cleanupCallback","useLayoutEffect","dangerouslySetInnerHTML","__html","suppressHydrationWarning","memo","GatsbyImageHydrator","GatsbyImage","checkDimensionProps","validLayouts","GatsbyImageBrowser","__error","imageData","__imageData","StaticImage","ArticleStyled","styled","theme","gradient","font","md","heading","tertiary","black","purple","primary","sm","borderOnHover","localFile","Link","to","G","altText","CarouselItemBg","excerpt","ContainerMaxStyled","ContainerMax","bootstrapGutterWidth","ColumnedImageWithText","block","blocks","getItems","link","lazyload","CarouselPrevButton","CarouselNextButton","template","ContentMax","CarouselStyled","itemCount","$override","BlockTitle","baseTitle","WPLink","HeroContainer","gradientLeft","secondary","xxl","xxxl","Title","weight","bold","pageTitle","noPadding","mobileImage","tabletImage","desktopImage","ContentMaxStyled","newsTitle","white","_win","_doc","_docElement","_pluginInitted","_tempDiv","_recentSetterPlugin","_reverting","_supports3D","_transformProps","_RAD2DEG","_DEG2RAD","_atan2","_capsExp","_horizontalExp","_complexExp","_propertyAliases","autoAlpha","scale","alpha","_renderCSSProp","ratio","_renderPropWithEnd","_renderCSSPropWithBeginning","_renderRoundedCSSProp","_renderNonTweeningValue","_renderNonTweeningValueOnlyAtEnd","_setterCSSStyle","_setterCSSProp","setProperty","_setterTransform","_gsap","_setterScale","_setterScaleWithRender","renderTransform","_setterTransformWithRender","_transformProp","_transformOriginProp","_saveStyle","isNotCSS","tfm","_get","svg","svgo","_removeIndependentTransforms","removeProperty","_revertStyle","isStart","uncache","_getStyleSaver","properties","saver","revert","_createElement","ns","_getComputedProperty","skipPrefixFallback","cs","_checkPropPrefix","_prefixes","preferPrefix","_initCore","cssText","_getBBoxHack","swapIfPossible","ownerSVGElement","oldParent","oldSibling","nextSibling","oldCSS","_gsapBBox","_getAttributeFallbacks","attributesArray","hasAttribute","_getBBox","bounds","_isSVG","getCTM","_removeProperty","_addNonTweeningPT","beginning","onlySetAtEnd","pt","_pt","_nonConvertibleUnits","deg","rad","turn","_nonStandardLayouts","grid","flex","_convertToUnit","unit","px","isSVG","curValue","curUnit","horizontal","isRootSVG","measureProperty","toPixels","toPercent","_parseTransform","_firstTwoOnly","zOrigin","_specialProps","_tweenComplexCSSString","startValues","startNum","startValue","endValue","endNum","chunk","endUnit","startUnit","matchIndex","_next","_keywordToPercent","_renderClearProps","tween","_time","_dur","clearTransforms","clearProps","pr","_identity2DMatrix","_rotationalProperties","_isNullTransform","_getComputedTransformMatrixAsArray","matrixString","_getMatrix","force2D","temp","addedToDOM","matrix","baseVal","consolidate","nextElementSibling","_applySVGOrigin","originIsAbsolute","smooth","matrixArray","pluginToAddPropTweensTo","determinant","xOriginOld","xOrigin","yOriginOld","yOrigin","xOffsetOld","xOffset","yOffsetOld","yOffset","tx","ty","originSplit","z","rotationX","rotationY","skewX","skewY","angle","cos","sin","a12","a22","t1","t2","t3","a13","a23","a33","a42","a43","a32","invertedScaleX","forceCSS","xPercent","yPercent","transformPerspective","force3D","_renderSVGTransforms","_renderCSSTransforms","_renderNon3DTransforms","_addPxTranslate","_zeroDeg","_zeroPx","_endParenthesis","use3D","a11","a21","tan","_addRotationalPropTween","cap","isString","change","finalValue","_assign","_addRawTransformPTs","endCache","startCache","vars","positionAndScale","CSSPlugin","targetTest","targets","specialProp","relative","isTransformRelated","transformPropTween","hasPriority","inlineProps","startAt","parseTransform","smoothOrigin","autoRound","getSetter","core","gsapWithCSS","Tween","gsap","_coreInitted","_docEl","_body","_isTouch","_pointerType","ScrollTrigger","_root","_normalizer","_eventTypes","_context","_getGSAP","registerPlugin","_startup","_observers","_scrollers","_proxies","_getTime","_bridge","_getProxyProp","_isViewport","_addListener","nonPassive","capture","_removeListener","_scrollLeft","_scrollTop","_onScroll","isPressed","_scrollCacheFunc","doNotCache","cachingFunc","history","scrollRestoration","isNormalizing","iOS","cacheID","_horizontal","p2","os","os2","d2","sc","scrollTo","_vertical","_getTarget","utils","nullTargetWarn","_getScrollFunc","scrollingElement","getProperty","_getVelocityProp","minTimeRefresh","useDelta","v1","v2","dropToZeroTime","getVelocity","latestValue","tOld","vOld","_getEvent","_gsapAllow","_getAbsoluteMax","_setScrollTrigger","scrollers","proxies","globals","bridge","Observer","isTouch","eventTypes","tolerance","dragMinimum","lineHeight","debounce","onStop","onStopDelay","ignore","wheelSpeed","onDragEnd","onDrag","onPress","onRelease","onRight","onLeft","onUp","onDown","onChangeX","onChangeY","onChange","onToggleX","onToggleY","onHover","onHoverEnd","onMove","ignoreCheck","isNormalizer","onGestureStart","onGestureEnd","onEnable","onDisable","scrollSpeed","allowClicks","lockAxis","onLockAxis","onStopDelayedCall","dragged","moved","wheeled","locked","prevDeltaX","prevDeltaY","scrollFuncX","scrollFuncY","limitToTouch","isViewport","ownerDoc","onClickTime","clickCapture","_ignoreCheck","isPointerOrTouch","pointerType","dx","dy","changedX","changedY","onDelta","_vx","_vy","onTouchOrPointerDelta","_onDrag","isDragging","_onPress","_onRelease","isTrackingDrag","wasDragging","eventData","delayedCall","defaultPrevented","click","createEvent","syntheticEvent","initMouseEvent","screenX","screenY","dispatchEvent","isGesturing","restart","_onGestureStart","_onGestureEnd","onScroll","_onWheel","multiplier","deltaMode","_onMove","_onHover","_onHoverEnd","_onClick","_dc","isEnabled","kill","getById","_resizeDelay","_toArray","_time2","_syncInterval","_refreshing","_pointerIsDown","_prevWidth","_prevHeight","_autoRefresh","_sort","_suppressOverwrites","_ignoreResize","_ignoreMobileResize","_baseScreenHeight","_baseScreenWidth","_fixIOSBug","_scrollRestoration","_limitCallbacks","_rafID","_refreshingAll","_queueRefreshID","_primary","_time1","_lastScrollTime","_enabled","_pointerDownHandler","_pointerUpHandler","_round","_getBoundsFunc","_winOffsets","_getBounds","_maxScroll","_iterateAutoRefresh","_isString","_isFunction","_isNumber","_isObject","_endAnimation","animation","reversed","_callback","totalTime","callbackAnimation","_abs","_left","_right","_bottom","_width","_height","_Right","_Left","_Top","_Bottom","_padding","_margin","_Width","_Height","_px","_setDefaults","defaults","withoutTransforms","_getSize","_getLabelRatioArray","timeline","labels","_snapDirectional","snapIncrementOrArray","snap","threshold","snapped","_multiListener","types","_wheelListener","scrollFunc","wheelHandler","_markerDefaults","startColor","endColor","indent","_defaults","toggleActions","anticipatePin","_keywords","_offsetToPx","eqIndex","_createMarker","matchWidthEl","containerAnimation","useFixedPosition","isScroller","_isStart","_positionMarker","marker","flipped","oppositeSide","_isFlipped","_triggers","_ids","_sync","_updateAll","_dispatch","_setBaseDimensions","_onResize","fullscreenElement","webkitFullscreenElement","_listeners","_emptyArray","_softRefresh","_refreshAll","_savedStyles","_revertRecorded","_revertAll","trigger","_ctx","_clearScrollMemory","rec","_refreshID","skipRevert","isRefreshing","refreshInits","scrollBehavior","_subPinOffset","pin","original","adjustPinSpacing","setPositions","scroller","_dir","onRefresh","_lastScroll","_direction","isUpdating","recordVelocity","_propNamesToCopy","_stateProps","_swapPinIn","spacer","spacerState","swappedIn","spacerStyle","pinStyle","flexBasis","_setState","getCache","_getState","_parsePosition","scrollerSize","markerScroller","scrollerBounds","scrollerMax","seek","localOffset","globalOffset","_caScrollDist","_prefixExp","_reparent","_stOrig","_getTweenCreator","lastScroll1","lastScroll2","getScroll","getTween","change1","change2","onComplete","onUpdate","tweenTo","pinCache","snapFunc","scroll1","scroll2","markerStart","markerEnd","markerStartTrigger","markerEndTrigger","markerVars","pinOriginalState","pinActiveState","pinState","pinGetter","pinSetter","pinStart","pinChange","spacingStart","markerStartSetter","pinMoves","markerEndSetter","snap1","snap2","scrubTween","scrubSmooth","snapDurClamp","snapDelayedCall","prevProgress","prevScroll","prevAnimProgress","caMarkerSetter","customRevertReturn","_vars","toggleClass","onToggle","scrub","pinSpacing","invalidateOnRefresh","onScrubComplete","onSnapComplete","once","pinReparent","pinSpacer","fastScrollEnd","preventOverlaps","isToggle","scrollerCache","pinType","callbacks","onLeave","onEnterBack","onLeaveBack","markers","onRefreshInit","getScrollerSize","_getSizeFunc","getScrollerOffsets","_getOffsetsFunc","lastSnap","lastRefresh","refreshPriority","tweenScroll","scrubDuration","ease","totalProgress","paused","_initted","immediateRender","scrollTrigger","snapTo","_getClosestLabel","st","directional","refreshedRecently","velocity","naturalEnd","inertia","endScroll","_snap","_onInterrupt","onInterrupt","_onComplete","stRevert","nativeElement","spacerIsNative","quickSetter","oldOnUpdate","oldParams","onUpdateParams","eventCallback","previous","prevRefreshing","isReverted","_swapPinOut","soft","invalidate","override","curTrigger","curPin","oppositeScroll","initted","revertedPins","forcedOverflow","otherPinOffset","parsedEnd","parsedEndTrigger","endTrigger","parsedStart","pinnedContainer","triggerIndex","_pinPush","omitOffsets","_copyState","_pinOffset","endAnimation","labelToScroll","label","getTrailing","forceFake","toggleState","stateChanged","toggled","isAtMax","isTakingAction","clipped","_dp","_start","resetTo","_tTime","_tDur","newStart","newEnd","allowAnimation","onKill","_queueRefreshAll","suppressOverwrites","mm","bodyStyle","borderTopStyle","AnimationProto","Animation","checkPrefix","hidden","limitCallbacks","syncInterval","ignoreMobileResize","autoRefreshEvents","scrollerProxy","clearMatchMedia","isInViewport","positionInViewport","referencePoint","killAll","allowListeners","saveStyles","safe","clearScrollMemory","maxScroll","getScrollFunc","isScrolling","snapDirectional","batch","varsCopy","interval","batchMax","proxyCallback","triggers","_inputIsFocused","_clampScrollAndGetDurationMultiplier","_allowNativePanning","touchAction","_overflow","_nestedScroll","_isScrollT","_isScroll","_inputObserver","inputs","nested","_captureInputs","_inputExp","isInput","_getScrollNormalizer","lastRefreshID","skipTouchMove","startScrollX","startScrollY","_vars2","normalizeScrollX","momentum","allowNestedScroll","smoother","ScrollSmoother","smootherInstance","initialScale","outerWidth","wheelRefresh","resolveMomentumDuration","inputObserver","resumeTouchMove","scrollClampX","scrollClampY","updateClamps","removeContentOffset","onResize","ignoreDrag","prevScale","currentScroll","velocityX","velocityY","_ts","xArray","yArray","yClamped","ticker","normalizeScroll","normalizer","ss","onSubmitted","EMAIL","getAjaxUrl","MailchimpSubscribe","formData","objectWithoutPropertiesLoose","_excluded2","_excluded3","_excluded4","isCheckBoxInput","isDateObject","isNullOrUndefined","isObjectType","getEventValue","checked","isNameInFieldArray","getNodeParentName","compact","isUndefined","defaultValue","EVENTS","VALIDATION_MODE","INPUT_VALIDATION_RULES","getProxyFormState","formState","localProxyFormState","isRoot","defaultValues","_defaultValues","_proxyFormState","isEmptyObject","shouldRenderFormState","formStateData","updateFormState","convertToArrayPayload","useSubscribe","subscription","unsubscribe","generateWatchOutput","_names","formValues","isGlobal","fieldName","watchAll","isWeb","cloneObject","copy","tempObject","prototypeCopy","Blob","FileList","appendErrors","validateAllFieldCriteria","errors","isKey","stringToPath","tempPath","newValue","objValue","focusFieldBy","fields","fieldsNames","field","_f","currentField","refs","getValidationModes","isOnSubmit","isOnBlur","isOnChange","isOnAll","isOnTouch","isBlurEvent","watchName","updateFieldArrayRootError","fieldArrayErrors","isBoolean","isFileInput","owner","isMessage","isRadioInput","isRegex","defaultResult","isValid","validResult","getCheckboxValue","option","defaultReturn","getRadioValue","getValidateError","getValueAndMessage","validationData","validateField","_callee","shouldUseNativeValidation","isFieldArray","_field$_f","required","maxLength","minLength","validate","valueAsNumber","mount","inputValue","inputRef","setCustomValidity","isRadio","isCheckBox","isRadioOrCheckbox","isEmpty","appendErrorsCurry","getMinMaxMessage","exceedMax","exceedMin","maxOutput","minOutput","valueNumber","valueDate","convertTimeToDate","isTime","isWeek","maxLengthOutput","minLengthOutput","_exceedMax","_exceedMin","_getValueAndMessage","patternValue","_message","validateError","validationResult","_validateError","abrupt","reportValidity","maxLengthMessage","minLengthMessage","maxType","minType","valueAsDate","toDateString","sent","t0","t4","t5","_x4","_x5","unset","paths","childObject","updatePath","baseGet","isEmptyArray","createSubject","_step3","_iterator3","isPrimitive","deepEqual","object1","object2","keys1","keys2","val1","val2","isMultipleSelect","live","isConnected","objectHasFunction","markFieldsDirty","isParentNodeArray","getDirtyFieldsFromDefaultValues","dirtyFieldsFromValues","getDirtyFields","getFieldValueAs","setValueAs","NaN","getFieldValue","files","selectedOptions","getResolverOptions","_fields","criteriaMode","_step4","_iterator4","_name2","getRuleValue","rule","hasValidation","schemaErrorLookup","foundError","skipValidation","isTouched","isSubmitted","reValidateMode","unsetEmptyArray","shouldFocusError","createFormControl","delayErrorCallback","flushRootRender","shouldCaptureDirtyFields","resetOptions","keepDirtyValues","_formState","submitCount","isDirty","isValidating","isSubmitting","isSubmitSuccessful","touchedFields","dirtyFields","_formValues","shouldUnregister","_stateFlags","unMount","_subjects","validationModeBeforeSubmit","validationModeAfterSubmit","shouldDisplayAllAssociatedErrors","_updateValid","_callee2","shouldUpdateValid","_context2","resolver","_executeSchema","executeBuiltInValidation","_x6","_updateIsValidating","_updateFieldArray","shouldSetValues","shouldUpdateFieldsAndState","fieldValues","argA","argB","_getDirty","updateErrors","updateValidAndValue","shouldSkipSetValueAs","defaultChecked","setFieldValue","updateTouchAndDirty","fieldValue","shouldDirty","shouldRender","shouldUpdateField","isPreviousDirty","isCurrentFieldPristine","isPreviousFieldTouched","shouldRenderByError","fieldState","previousFieldError","delayError","updatedFormState","_callee3","_context3","_x7","executeSchemaAndUpdateState","_callee4","_yield$_executeSchema","_iterator5","_step5","_name3","_error","_context4","_x8","_callee5","shouldOnlyCheckValid","_name4","isFieldArrayRoot","fieldError","_args5","_context5","valid","_x9","_x10","_removeUnmounted","_step6","_iterator6","_name5","getValues","_getWatch","_getFieldArray","fieldReference","optionRef","selected","checkboxRef","radioRef","shouldTouch","shouldValidate","setValues","fieldKey","setValue","cloneValue","_callee6","getCurrentFieldValue","_error2","shouldSkipValidation","watched","_yield$_executeSchema2","previousErrorLookupResult","errorLookupResult","_context6","deps","onBlur","_x11","_ref14","_callee8","fieldNames","_args8","_context8","_ref15","_callee7","_context7","_x13","shouldFocus","_x12","getFieldState","invalid","clearErrors","inputName","setError","payload","_step7","_iterator7","keepValue","keepError","keepDirty","keepTouched","keepDefaultValue","keepIsValid","disabledIsDefined","_ref17","_x14","fieldRef","radioOrCheckbox","_focusError","handleSubmit","onValid","onInvalid","_ref18","_callee9","_yield$_executeSchema3","_context9","persist","_x15","resetField","_reset","keepStateOptions","updatedValues","cloneUpdatedValues","keepDefaultValues","keepValues","_step8","_iterator8","_step9","_iterator9","_name6","_field","form","closest","keepSubmitCount","keepIsSubmitted","keepErrors","setFocus","shouldSelect","select","_updateFormState","CMSLink","LinkDetect","onClickFunc","Button","clock","Bg","displayForm","Form","termsText","successText","redirect","redirectPage","mailchimpFieldKey","onValidated","useState","selectedCountry","setSelectedCountry","navigate","uri","_formControl","_React$useState7","_React$useState8","useForm","onSubmit","itsatrap","FNAME","firstName","LNAME","lastName","email","PHONE","phone","COUNTRY","EMIRATE","emirate","noValidate","autoComplete","country","htmlFor","SignupStyles","ModalPopup","setOpen","popup","displayCompetition","uniqueName","pagesToDisplay","getItem","popUpRef","popUpAnimation","stagger","setItem","setCookie","useStaticQuery","allWpPopup","edges","flatMap","acfPopup","matchedPage","page","ATTRIBUTE_NAMES","TAG_NAMES","BASE","BODY","HEAD","HTML","LINK","META","NOSCRIPT","SCRIPT","STYLE","TITLE","TAG_PROPERTIES","REACT_TAG_MAP","accesskey","contenteditable","contextmenu","itemprop","tabindex","HELMET_PROPS","HTML_TAG_MAP","SELF_CLOSING_TAGS","HELMET_ATTRIBUTE","classCallCheck","createClass","objectWithoutProperties","possibleConstructorReturn","encodeSpecialCharacters","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","tagAttrs","getBaseTagFromPropsList","primaryAttributes","innermostBaseTag","lowerCaseAttributeKey","getTagsFromPropsList","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","tagUnion","rafPolyfill","cafPolyfill","webkitRequestAnimationFrame","mozRequestAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","_helmetCallback","commitTagChanges","newState","baseTag","bodyAttributes","htmlAttributes","linkTags","metaTags","noscriptTags","onChangeClientState","scriptTags","styleTags","titleAttributes","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","elementTag","helmetAttributeString","helmetAttributes","attributesToRemove","attributeKeys","indexToSave","tags","headElement","tagNodes","indexToDelete","newElement","styleSheet","existingTag","isEqualNode","generateElementAttributesAsString","convertElementAttributestoReactProps","initProps","getMethodsForTag","toComponent","_initProps","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","generateTagsAsReactComponent","attributeHtml","tagContent","isSelfClosing","generateTagsAsString","_ref$title","noscript","HelmetSideEffects","defer","HelmetExport","HelmetWrapper","inherits","shouldComponentUpdate","mapNestedChildrenToProps","nestedChildren","flattenArrayTypeChildren","_babelHelpers$extends","arrayTypeChildren","newChildProps","mapObjectTypeChildren","_babelHelpers$extends2","_babelHelpers$extends3","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_babelHelpers$extends4","warnOnInvalidChildren","mapChildrenToProps","_child$props","initAttributes","convertReactPropstoHtmlAttributes","defaultTitle","titleTemplate","mappedState","renderStatic","Seo","seo","metaDesc","metaKeywords","lang","language","slug","site","metaDescription","siteMetadata","description","metaTitle","metaUrl","siteUrl","metaImage","twitterImage","author","ProximaNovaW01RegularWOFF","ProximaNovaW01RegularWOFF2","ProximaNovaW01BoldWOFF","ProximaNovaW01BoldWOFF2","MontserratBold","MontserratLight","MontserratRegular","GlobalStyles","createGlobalStyle","fontFiles","headings","h3","h2","h1","h4","h5","h6","midBlue","quaternary","xl","regular","withTheme","CookieWrap","Container","grey","CookieContainer","Close","setHidden","lastScrollTop","setLastScrollTop","hideShow","scrollDirection","newLastScrollTop","headerAnnouncementText","allWp","acfOptions","fluid","LinkSearchReplace","faTimes","NavWrap","navActive","menu","allWpMenu","menuItems","bookTicketsUrl","mainMenu","parentDatabaseId","childItems","faAngleDown","zeroPad","strValue","strNo","paddedNo","timeDeltaFormatOptionsDefaults","daysInHours","zeroPadTime","formatTimeDelta","timeDelta","days","hours","minutes","_Object$assign$zeroPa","zeroPadDays","zeroPadTimeLength","formattedHours","Countdown","startCountdown","stopCountdown","addTime","Countdown$1","initialTimestamp","calcOffsetStartTimestamp","offsetStartTimestamp","autoStart","offsetTime","legacyMode","legacyCountdownRef","createRef","tick","calcTimeDelta","completed","overtime","onTick","setTimeDeltaState","isStarted","prevOffsetStartTimestamp","controlled","clearTimer","intervalDelay","isPaused","isStopped","isStatus","isCompleted","date","precision","startTimestamp","_options$now","_options$precision","_options$offsetTime","timeLeft","clampedPrecision","total","toFixed","milliseconds","completing","completedOnStart","newStatus","getApi","formatted","_children","renderer","renderProps","getRenderProps","countdown","_renderProps$formatte","CountdownStyled","lg","headerCountdown","countdownText","displayCountdown","year","month","day","secs","Text","$countdown","$tabletMd","StyledLogo","Logo","logo","stacked","NavBarWrap","NavBarToggle","LogoWrap","WtaLogo","toggleNav","logo2","MenuList","orangeDark","MenuButton","toggleFullNav","toggle","toggler","pathname","socialFacebookGlobal","socialTwitterGlobal","socialInstagramGlobal","socialYoutubeGlobal","socialTiktokGlobal","faFacebookF","faXTwitter","faInstagram","faYoutube","faTiktok","NavFullFooterWrap","SocialStyles","xs","NavFullWrap","navTop","NavFullInner","HeaderWrap","setNavActive","setNavTop","calcNavTop","header","getElementsByClassName","ContainerStyled","grey1","yellow","FormWrap","StyledInput","grey2","grey3","StyledSelect","SubmitButton","ErrorMessage","red","ErrorStyles","TextStyled","NewsletterForm","termsChecked","setTermsChecked","termsError","setTermsError","handleChange","buttonText","blockNewsletterSignup","$center","$secondary","ImageWrap","activeSet","setActiveSet","socialImages","imageSets","footerSponserTitle","sponserLogoGroup","$xl","$uppercase","$bold","$baseheading","group","$lg","$baseSubtitle","footerSponserLogos","FooterNavWrap","proxima","footer1","footer2","footer3","SocialWrap","footerText","$white","$sm","FooterBg","SocialSidebar","CookiesContext","Consumer","useCookies","dependencies","useContext","initialCookies","allCookies","setCookies","previousCookiesRef","newCookies","oldCookies","dependencies_1","dependency","shouldUpdate","SiteWrap","Layout","links","handleFirstTab","analytics","ThemeProvider","siteWrap","isTouchDevice","social","footer","withConfig","shouldForwardProp","defaultValidatorFn","small","orange","faAngleRight","faAngleLeft","noPaddingSm","contentMax","breakpointCols","columnClassName","columnAttrs","column","Masonry","columnCount","reCalculateColumnCount","reCalculateColumnCountDebounce","_lastRecalculateAnimationFrame","breakpointColsObject","matchedBreakpoint","columns","optBreakpoint","currentColumnCount","itemsInColumns","columnIndex","_this$props2$columnAt","childrenInColumns","columnWidth","logDeprecated","columnAttributes","classNameOutput","renderColumns","MasonryStyled","MasonryWall","GridHubItemWrap","thumbnail","GalleryGrid","paginationLimit","setPaginationLimit","postsHtml","setPostsHtml","lightboxImages","setLightboxImages","photoIndex","setPhotoIndex","setIsOpen","setImages","postCount","currentImages","publicURL","openOnKeyDown","largeImage","mainSrc","WPLinkStyled","SidebarBlockWrap","SidebarBlock","acfSidebarBlocks","sidebarBlockType","image45","imageAlt","__typename","linkText","titleGradient","smaller","$condensed","condensed","$heading","$primary","$midBlue","$cyan","cyan","$black","$red","$navy","navy","$blackOff","blackOff","$grey","$yellow","$orange","$extrabold","$xxxl","$xxl","$md","$xs","$size","$italic","uppercase","$heroText","$articleHeading","TextBlockStyles","stripProtocol","urlStripped","wpUrlStripped","allSettings","generalSettingsUrl","fileName","allFile","cur","ThemeExport","bootstrapGutterWidthx2","extraBlack","proximaBold","medium","semiBold","fontSizeBase","transitionBase","whiteOff","grey4","grey5","blue","scarlet","pink","neonGreen","turquoise","gradientUp","warning","toPropertyKey","_regeneratorRuntime","Op","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","_invoke","AsyncIterator","PromiseImpl","invoke","record","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","_sent","dispatchException","methodName","info","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","iterable","iteratorMethod","isGeneratorFunction","genFun","ctor","awrap","skipTempReset","rootRecord","rval","handle","loc","caught","hasCatch","hasFinally","finallyEntry","finish","thrown","delegateYield","hint","prim","toPrimitive","res","runtime","regeneratorRuntime","accidentalStrictMode","globalThis","asyncGeneratorStep","gen","_throw","_asyncToGenerator","_r","unsupportedIterableToArray","_toPropertyKey"],"sourceRoot":""}