{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/img/icons/search.svg","webpack:///./src/hooks/useBodyScrollLock.ts","webpack:///./src/core/auth/services/AuthService.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Logo/Logo.styles.ts","webpack:///./src/core/url-resolver/UrlResolver.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Logo/Logo.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Navigation/Navigation.types.ts","webpack:///./src/img/icons/phone.svg","webpack:///./src/img/icons/user.svg","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/IconCtaList/IconCtaList.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/IconCtaList/IconCtaList.styles.ts","webpack:///./src/img/icons/cart.svg","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/IconCtaListMobile/IconCtaListMobile.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/IconCtaListMobile/IconCtaListMobile.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Navicon/Navicon.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Navicon/Navicon.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Navigation/components/NavigationItem/NavigationItem.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Navigation/components/NavigationItem/NavigationItem.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Navigation/Navigation.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/Navigation/Navigation.tsx","webpack:///./src/img/icons/navigation-arrow.svg","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/NavigationMobile/NavigationMobile.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/NavigationMobile/NavigationMobile.tsx","webpack:///./src/img/icons/yoursolution.svg","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/TopLinkList/TopLinkList.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/TopLinkList/TopLinkList.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/TopLinkListMobile/TopLinkListMobile.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/TopLinkListMobile/TopLinkListMobile.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/YourSolutionCta/YourSolutionCta.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/components/YourSolutionCta/YourSolutionCta.tsx","webpack:///./src/stories/Widgets/Headers/SiteHeader/SiteHeader.styles.ts","webpack:///./src/stories/Widgets/Headers/SiteHeader/SiteHeader.widget.tsx"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","71","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","p","jsonpScriptSrc","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","this","oldJsonpFunction","slice","_g","_path","_extends","assign","arguments","source","SvgSearch","props","xmlns","viewBox","fill","stroke","strokeWidth","cx","cy","strokeLinecap","useBodyScrollLock","trigger","useRef","AuthService","username","password","cultureCode","response","ApiService","controller","baseUrl","UrlResolver","getDomain","slug","method","params","email","hashToken","Container","styled","div","Link","a","Image","img","process","toLowerCase","_localDomain","Logo","title","url","logoCloudinaryPath","React","S","href","alt","height","loading","imageUrl","width","dpr","srcSet","join","NavigationDropdownMode","SvgUser","IconCtaType","ul","until","Device","DesktopSmall","Item","li","linkStyles","css","hasIndicator","brand","accent","orange","Label","Icon","Button","button","attrs","span","fonts","DaxPro","Regular","IconCtaList","items","loginText","myProfileText","myProfileUrl","isLoggedIn","appBasketCount","useSelector","x","app","basketItemsCount","basketState","basket","hasItemInBasket","isSSR","order","orderLines","dispatch","useDispatch","onClick","payload","LoginRedirectType","Default","role","map","item","id","text","icon","TechnicalLibrary","window","location","replace","Basket","SvgCart","srOnly","IconCtaListMobile","enquiryCtaUrl","searchText","enquiryText","onSearchClick","active","Line1","Line2","Line3","Line","Navicon","preventDefault","TabletLarge","isActive","NavigationDropdown","lazy","NavigationItem","children","dropdown","isPortalHeader","promo","useState","setIsActive","timeoutRef","onMouseEnter","current","onMouseLeave","onKeyDown","stopPropagation","None","Fragment","Suspense","fallback","nav","List","white","HomeIcon","Spacer","Navigation","homeUrl","FontAwesomeIcon","faHome","style","SvgNavigationArrow","from","BackButton","BackArrow","SvgArrow","Title","Bold","ItemButton","ItemLink","isBold","ItemArrow","NavigationMobile","activeId","onItemClick","flattened","flatMapRecursive","array","iteratee","forEach","concat","Array","isArray","activeItem","find","activeItemChildren","activeItemParent","child","_path2","section","TopLinkList","TopLinkListMobile","ButtonReset","isolation","YourSolutionCta","yspVisible","setYSPVisible","header","Top","TopInner","SITE_WIDTH","SITE_PADDING","SITE_PADDING_MOBILE","TopLinkListStyles","NaviconStyles","LogoStyles","SearchFieldStyles","IconCtaListStyles","IconCtaListMobileStyles","Bottom","BottomInner","YourSolutionCtaStyles","NavOverlay","Telephone","DesktopLarge","WelcomeMessage","SiteHeaderStyles","WelcomeMessageDesktop","WelcomeMessageMobile","Mobile","Desktop","YourSolutionModal","initial","animate","exit","variants","hidden","opacity","scale","visible","transition","duration","withWidget","withRedux","withMotion","logoNavUrl","iconCtaListDesktop","iconCtaListMobile","searchResultsUrl","yourSolutionProps","showYourSolutionCta","navigation","topLinks","telephoneNumber","translations","welcomeMessage","showNavigationMobile","setShowNavigationMobile","showSearchMobile","setShowSearchMobile","activeMobileNavigationId","setActiveMobileNavigationId","lockRef","handleSignOut","signOut","res","status","success","redirectUrl","top","SearchField","placeholderText","closeText","onClose","bottom","phone","ref","AnimatePresence","YourSolutionRootWidget","closeModal","hydrate","HydrateOption","Always"],"mappings":"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","file":"SiteHeader-a6ac7b6057ec983ac29c.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t71: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + ({}[chunkId]||chunkId) + \"-\" + {\"93\":\"4a0c4f81f8f33b752ce8\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/sitefiles/next-gen/dist/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = this[\"nextGenJsonpFunction\"] = this[\"nextGenJsonpFunction\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([569,0,1,2,4,7,21,22,29,87,3,16,28,27]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","var _g, _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSearch(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 27.333 27.333\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2\n }, /*#__PURE__*/React.createElement(\"circle\", {\n cx: 10.913,\n cy: 10.913,\n r: 10.913,\n stroke: \"none\"\n }), /*#__PURE__*/React.createElement(\"circle\", {\n cx: 10.913,\n cy: 10.913,\n r: 9.913\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"none\",\n stroke: \"currentColor\",\n strokeLinecap: \"round\",\n strokeWidth: 2,\n d: \"M18.643 18.643l7.275 7.275\"\n })));\n}\n\nexport default __webpack_public_path__ + \"59b9461c6c7c0d10ca810c3df0f2971c.svg\";\nexport { SvgSearch as ReactComponent };","/* eslint-disable @typescript-eslint/no-unused-vars */\r\nimport { useRef } from 'react';\r\nconst useBodyScrollLock = (trigger) => {\r\n const ref = useRef(null);\r\n // useEffect(() => {\r\n // if (ref.current === null) {\r\n // clearAllBodyScrollLocks();\r\n // return;\r\n // }\r\n // if (trigger === true) {\r\n // disableBodyScroll(ref.current);\r\n // } else {\r\n // enableBodyScroll(ref.current);\r\n // }\r\n // return () => {\r\n // if (ref.current !== null) {\r\n // enableBodyScroll(ref.current);\r\n // }\r\n // };\r\n // }, [trigger]);\r\n return ref;\r\n};\r\nexport default useBodyScrollLock;\r\n","import ApiService from '@core/api/services/ApiService';\r\nimport UrlResolver from '@core/url-resolver/UrlResolver';\r\nclass AuthService {\r\n async authenticate(username, password, cultureCode, type) {\r\n const response = ApiService.request({\r\n controller: 'auth',\r\n baseUrl: UrlResolver.getDomain(),\r\n slug: 'authenticate',\r\n method: 'POST',\r\n params: {\r\n username,\r\n password,\r\n cultureCode,\r\n type,\r\n },\r\n });\r\n return response;\r\n }\r\n async signOut() {\r\n const response = ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'auth',\r\n slug: 'sign-out',\r\n method: 'GET',\r\n params: {},\r\n });\r\n return response;\r\n }\r\n async requestForgotPassword(email, cultureCode) {\r\n const response = ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'auth',\r\n slug: 'request-forgotten-password',\r\n method: 'GET',\r\n params: { email, cultureCode },\r\n });\r\n return response;\r\n }\r\n async resetPassword(password, cultureCode, hashToken) {\r\n const response = ApiService.request({\r\n controller: 'auth',\r\n baseUrl: UrlResolver.getDomain(),\r\n slug: 'reset-password',\r\n method: 'POST',\r\n params: {\r\n password,\r\n cultureCode,\r\n hashToken,\r\n },\r\n });\r\n return response;\r\n }\r\n}\r\nexport default new AuthService();\r\n","import styled from 'styled-components';\r\nconst Container = styled.div `\r\n display: block;\r\n`;\r\nconst Link = styled.a `\r\n display: block;\r\n color: #333333;\r\n\r\n &:focus {\r\n color: #333333;\r\n outline: auto !important;\r\n outline-offset: 4px;\r\n }\r\n`;\r\nconst Image = styled.img `\r\n display: block;\r\n height: auto;\r\n max-height: 100%;\r\n max-width: 297px;\r\n object-fit: contain;\r\n object-position: center left;\r\n width: 100%;\r\n`;\r\nexport default {\r\n Container,\r\n Link,\r\n Image,\r\n};\r\n","class UrlResolver {\r\n _localDomain = 'https://groundforce.local';\r\n /**\r\n *\r\n * Gets the current domain\r\n */\r\n getDomain = () => {\r\n if (`${process.env.NODE_ENV}`.toLowerCase() === 'development') {\r\n return this._localDomain;\r\n }\r\n return '';\r\n };\r\n}\r\nexport default new UrlResolver();\r\n","import { imageUrl } from '@helpers/imageUrl';\r\nimport React from 'react';\r\nimport S from './Logo.styles';\r\nconst Logo = ({ title, url, logoCloudinaryPath }) => {\r\n if (!url) {\r\n return (React.createElement(S.Container, null,\r\n React.createElement(S.Image, { alt: \"\", height: \"62\", loading: \"eager\", src: imageUrl(logoCloudinaryPath, { width: 297, dpr: 1 }), srcSet: [\r\n `${imageUrl(logoCloudinaryPath, { width: 297, dpr: 1 })} 1x`,\r\n `${imageUrl(logoCloudinaryPath, { width: 297, dpr: 2 })} 2x`,\r\n ].join(','), width: \"297\" })));\r\n }\r\n return (React.createElement(S.Container, null,\r\n React.createElement(S.Link, { href: url, title: title, \"aria-label\": \"Logo\" },\r\n React.createElement(S.Image, { alt: \"\", height: \"62\", loading: \"eager\", src: imageUrl(logoCloudinaryPath, { width: 297, dpr: 1 }), srcSet: [\r\n `${imageUrl(logoCloudinaryPath, { width: 297, dpr: 1 })} 1x`,\r\n `${imageUrl(logoCloudinaryPath, { width: 297, dpr: 2 })} 2x`,\r\n ].join(','), width: \"297\" }))));\r\n};\r\nexport default Logo;\r\n","export var NavigationDropdownMode;\r\n(function (NavigationDropdownMode) {\r\n NavigationDropdownMode[NavigationDropdownMode[\"None\"] = 0] = \"None\";\r\n NavigationDropdownMode[NavigationDropdownMode[\"TwoLevels\"] = 1] = \"TwoLevels\";\r\n NavigationDropdownMode[NavigationDropdownMode[\"ThreeLevels\"] = 2] = \"ThreeLevels\";\r\n NavigationDropdownMode[NavigationDropdownMode[\"ThreeLevelsPromo\"] = 3] = \"ThreeLevelsPromo\";\r\n})(NavigationDropdownMode || (NavigationDropdownMode = {}));\r\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgPhone(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 21.547,\n height: 21.548\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 470\",\n d: \"M13.684 20.712a5.3 5.3 0 006.6-.717l.742-.74a1.767 1.767 0 000-2.5l-3.123-3.123a1.764 1.764 0 00-2.5 0 1.767 1.767 0 01-2.5 0l-5-5a1.767 1.767 0 010-2.5 1.764 1.764 0 000-2.5L4.793.518a1.768 1.768 0 00-2.5 0l-.74.742a5.3 5.3 0 00-.717 6.6 47.845 47.845 0 0012.848 12.852z\",\n fill: \"#690\"\n })));\n}\n\nexport default __webpack_public_path__ + \"be60825d99c59622f43403cc0c7beb29.svg\";\nexport { SvgPhone as ReactComponent };","var _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgUser(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 21.825 26.19\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n \"data-name\": \"streamline-icon-multiple-neutral-1@140x140\",\n fill: \"#575757\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 3\",\n d: \"M4.002 6.911A6.911 6.911 0 1010.913 0a6.911 6.911 0 00-6.911 6.911z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 4\",\n d: \"M21.825 25.463a10.913 10.913 0 00-21.825 0 .727.727 0 00.727.727H21.1a.727.727 0 00.725-.727z\"\n }))));\n}\n\nexport default __webpack_public_path__ + \"a2d14d6c84005b833dfcbbe9bf663d0b.svg\";\nexport { SvgUser as ReactComponent };","import SvgUser from '@img/icons/user.svg';\r\nimport React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { isSSR } from '@helpers/ssr';\r\nimport { LoginRedirectType } from '@redux/ducks/app/app.reducer';\r\nimport S from './IconCtaList.styles';\r\nexport var IconCtaType;\r\n(function (IconCtaType) {\r\n IconCtaType[IconCtaType[\"Link\"] = 0] = \"Link\";\r\n IconCtaType[IconCtaType[\"Basket\"] = 1] = \"Basket\";\r\n IconCtaType[IconCtaType[\"TechnicalLibrary\"] = 2] = \"TechnicalLibrary\";\r\n})(IconCtaType || (IconCtaType = {}));\r\nconst IconCtaList = ({ items = [], loginText = '', myProfileText, myProfileUrl, isLoggedIn, }) => {\r\n const appBasketCount = useSelector((x) => x.app.basketItemsCount ?? 0);\r\n const basketState = useSelector((x) => x.basket.basket);\r\n const hasItemInBasket = isSSR()\r\n ? appBasketCount > 0\r\n : basketState !== null && basketState.order !== null && basketState.order.orderLines.length > 0;\r\n const dispatch = useDispatch();\r\n return (React.createElement(S.Container, null,\r\n !isLoggedIn && (React.createElement(S.Item, null,\r\n React.createElement(S.Button, { onClick: () => dispatch({\r\n type: 'APP/SET_LOGIN_MODAL',\r\n payload: LoginRedirectType.Default,\r\n }), hasIndicator: false },\r\n React.createElement(S.Icon, { alt: \"Login Icon\", role: \"presentation\", src: SvgUser }),\r\n React.createElement(S.Label, null, loginText)))),\r\n isLoggedIn && (React.createElement(S.Item, null,\r\n React.createElement(S.Link, { href: myProfileUrl, hasIndicator: false },\r\n React.createElement(S.Icon, { alt: \"My Profile Icon\", role: \"presentation\", src: SvgUser }),\r\n React.createElement(S.Label, null, myProfileText)))),\r\n items.map((item) => {\r\n switch (item.type) {\r\n default:\r\n case IconCtaType.Link: {\r\n return (React.createElement(S.Item, { key: item.id },\r\n React.createElement(S.Link, { href: item.url, hasIndicator: false },\r\n React.createElement(S.Icon, { alt: item.text, role: \"presentation\", src: item.icon }),\r\n React.createElement(S.Label, null, item.text))));\r\n }\r\n case IconCtaType.TechnicalLibrary: {\r\n return (React.createElement(S.Item, { key: item.id, onClick: () => {\r\n if (isLoggedIn) {\r\n window.location.replace(item.url);\r\n }\r\n else {\r\n dispatch({\r\n type: 'APP/SET_LOGIN_MODAL',\r\n payload: LoginRedirectType.TechnicalLibrary,\r\n });\r\n }\r\n } },\r\n React.createElement(S.Button, { hasIndicator: false },\r\n React.createElement(S.Icon, { alt: item.text, role: \"presentation\", src: item.icon }),\r\n React.createElement(S.Label, null, item.text))));\r\n }\r\n case IconCtaType.Basket: {\r\n return (React.createElement(S.Item, { key: item.id },\r\n React.createElement(S.Link, { href: item.url, hasIndicator: hasItemInBasket },\r\n React.createElement(S.Icon, { alt: item.text, role: \"presentation\", src: item.icon }),\r\n React.createElement(S.Label, null, item.text))));\r\n }\r\n }\r\n })));\r\n};\r\nexport default IconCtaList;\r\n","/* eslint-disable @typescript-eslint/explicit-function-return-type */\r\n/* eslint-disable @typescript-eslint/no-use-before-define */\r\nimport brand from '@helpers/brand';\r\nimport { fonts } from '@helpers/fonts';\r\nimport { Device, until } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nconst Container = styled.ul `\r\n display: flex;\r\n list-style: none;\r\n margin: 0;\r\n padding: 0;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n flex-direction: column;\r\n margin: 10px 0 0;\r\n padding: 0 10px;\r\n }\r\n`;\r\nconst Item = styled.li `\r\n display: block;\r\n margin: 0;\r\n padding: 0 24px;\r\n position: relative;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n padding: 0;\r\n }\r\n`;\r\nconst linkStyles = css `\r\n display: flex;\r\n align-items: center;\r\n background: none;\r\n border: 0;\r\n color: #333333;\r\n flex-direction: column;\r\n margin: 0;\r\n padding: 0;\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n ${({ hasIndicator }) => hasIndicator\r\n ? css `\r\n &:after {\r\n content: '';\r\n position: absolute;\r\n top: 0px;\r\n right: 35%;\r\n transform: translateX(-50%);\r\n width: 9px;\r\n height: 9px;\r\n border-radius: 50%;\r\n z-index: 2;\r\n background: ${brand.accent.orange};\r\n transition: transform 0.15s ease-out;\r\n }\r\n `\r\n : null}\r\n\r\n &:focus,\r\n &:hover {\r\n background: none;\r\n border: 0;\r\n color: #333333;\r\n text-decoration: none;\r\n\r\n ${() => Label} {\r\n background-size: 100% 100%;\r\n color: #fff;\r\n }\r\n\r\n ${() => Icon} {\r\n transform: translateY(-4px) scale(1.1);\r\n }\r\n\r\n &:after {\r\n transform: translateX(-50%) translateY(-4px) scale(1.1);\r\n }\r\n }\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n flex-direction: row;\r\n padding: 10px 0;\r\n }\r\n`;\r\nconst Link = styled.a `\r\n ${linkStyles};\r\n`;\r\nconst Button = styled.button.attrs({ type: 'button' }) `\r\n ${linkStyles};\r\n`;\r\nconst Label = styled.span `\r\n display: block;\r\n background: linear-gradient(to right, #6f9d20, #6f9d20) no-repeat;\r\n background-size: 0% 100%;\r\n color: #333333;\r\n ${fonts.DaxPro.Regular};\r\n font-size: 14px;\r\n line-height: 18px;\r\n margin: -4px;\r\n padding: 4px;\r\n text-align: center;\r\n transition: background-size 0.15s ease-out, color 0.15s ease-out;\r\n`;\r\nconst Icon = styled.img `\r\n display: block;\r\n height: 24px;\r\n margin: 0 0 8px;\r\n object-fit: contain;\r\n object-position: center center;\r\n padding: 0;\r\n transform: translateY(0);\r\n transform-origin: center bottom;\r\n transition: transform 0.15s ease-out;\r\n width: 24px;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n margin: 0 12px 0 0;\r\n }\r\n`;\r\nexport default {\r\n Button,\r\n Container,\r\n Icon,\r\n Item,\r\n Label,\r\n Link,\r\n};\r\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgCart(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n \"data-name\": \"streamline-icon-shopping-cart-empty-1@140x140\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 25.63 26.292\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 19\",\n d: \"M25.592 7.408a1.1 1.1 0 00-1.055-1.384H5.744a.273.273 0 01-.271-.219l-.627-2.98A3.576 3.576 0 001.369 0a1.37 1.37 0 100 2.739.824.824 0 01.8.657L5.644 19.9a3.562 3.562 0 001.355 2.115.273.273 0 01.014.426 2.191 2.191 0 103.4.682.272.272 0 01.012-.266.276.276 0 01.233-.129h6.54a.274.274 0 01.245.4 2.189 2.189 0 103.916-.013.264.264 0 01.236-.383 1.37 1.37 0 100-2.739H9.125a.825.825 0 01-.8-.652l-.2-.937a.274.274 0 01.268-.329h11.78a3.286 3.286 0 003.17-2.422z\",\n fill: \"#575757\"\n })));\n}\n\nexport default __webpack_public_path__ + \"3ad4aac6a993f907e8d1ba6284ea27a0.svg\";\nexport { SvgCart as ReactComponent };","/* eslint-disable @typescript-eslint/explicit-function-return-type */\r\n/* eslint-disable @typescript-eslint/no-use-before-define */\r\nimport srOnly from '@helpers/srOnly';\r\nimport styled, { css } from 'styled-components';\r\nconst Container = styled.ul `\r\n height: 24px;\r\n\r\n display: flex;\r\n list-style: none;\r\n margin: 0;\r\n padding: 0;\r\n transform: translateX(12px);\r\n`;\r\nconst Item = styled.li `\r\n display: block;\r\n margin: 0 12px;\r\n padding: 0;\r\n`;\r\nconst linkStyles = css `\r\n display: flex;\r\n align-items: center;\r\n background: none;\r\n border: 0;\r\n color: #333333;\r\n flex-direction: column;\r\n margin: 0;\r\n padding: 0;\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n background: none;\r\n border: 0;\r\n color: #333333;\r\n text-decoration: none;\r\n\r\n ${() => Label} {\r\n background-size: 100% 100%;\r\n color: #fff;\r\n }\r\n\r\n ${() => Icon} {\r\n transform: translateY(-4px) scale(1.1);\r\n }\r\n }\r\n`;\r\nconst Link = styled.a `\r\n ${linkStyles}\r\n`;\r\nconst Button = styled.button.attrs({ type: 'button' }) `\r\n ${linkStyles}\r\n`;\r\nconst Label = styled.span `\r\n ${srOnly}\r\n`;\r\nconst Icon = styled.div `\r\n margin: 0;\r\n padding: 0;\r\n transform: translateY(0);\r\n transform-origin: center bottom;\r\n transition: transform 0.15s ease-out;\r\n\r\n svg {\r\n width: 24px;\r\n height: 24px;\r\n display: block;\r\n }\r\n`;\r\nexport default {\r\n Button,\r\n Container,\r\n Icon,\r\n Item,\r\n Label,\r\n Link,\r\n};\r\n","import { ReactComponent as SvgCart } from '@img/icons/cart.svg';\r\nimport { ReactComponent as SvgSearch } from '@img/icons/search.svg';\r\nimport { ReactComponent as SvgUser } from '@img/icons/user.svg';\r\nimport { LoginRedirectType } from '@redux/ducks/app/app.reducer';\r\nimport * as React from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport S from './IconCtaListMobile.styles';\r\nconst IconCtaListMobile = ({ enquiryCtaUrl, searchText, myProfileText, myProfileUrl, loginText, enquiryText, isLoggedIn, onSearchClick, }) => {\r\n const dispatch = useDispatch();\r\n return (React.createElement(S.Container, null,\r\n React.createElement(S.Item, null,\r\n React.createElement(S.Button, { onClick: onSearchClick },\r\n React.createElement(S.Icon, null,\r\n React.createElement(SvgSearch, null)),\r\n React.createElement(S.Label, null, searchText))),\r\n !isLoggedIn && (React.createElement(S.Item, null,\r\n React.createElement(S.Button, { onClick: () => dispatch({\r\n type: 'APP/SET_LOGIN_MODAL',\r\n payload: LoginRedirectType.Default,\r\n }) },\r\n React.createElement(S.Icon, null,\r\n React.createElement(SvgUser, null)),\r\n React.createElement(S.Label, null, loginText)))),\r\n isLoggedIn && (React.createElement(S.Item, null,\r\n React.createElement(S.Link, { href: myProfileUrl },\r\n React.createElement(S.Icon, null,\r\n React.createElement(SvgUser, null)),\r\n React.createElement(S.Label, null, myProfileText)))),\r\n enquiryCtaUrl && (React.createElement(S.Item, null,\r\n React.createElement(S.Link, { href: enquiryCtaUrl },\r\n React.createElement(S.Icon, null,\r\n React.createElement(SvgCart, null)),\r\n React.createElement(S.Label, null, enquiryText))))));\r\n};\r\nexport default IconCtaListMobile;\r\n","/* eslint-disable @typescript-eslint/explicit-function-return-type */\r\n/* eslint-disable @typescript-eslint/no-use-before-define */\r\nimport styled, { css } from 'styled-components';\r\nconst height = 20;\r\nconst width = 30;\r\nconst Container = styled.div `\r\n display: block;\r\n`;\r\nconst Button = styled.button `\r\n position: relative;\r\n display: block;\r\n background: none;\r\n border: 0;\r\n color: #333333;\r\n height: ${height}px;\r\n padding: 0;\r\n margin: 0;\r\n width: ${width}px;\r\n\r\n &:focus,\r\n &:hover {\r\n background: none;\r\n color: #333333;\r\n }\r\n\r\n ${({ active }) => active &&\r\n css `\r\n ${Line1} {\r\n transform: translateY(0) scaleX(0);\r\n }\r\n\r\n ${Line2} {\r\n transform: translateY(0) scaleX(1) rotate(45deg);\r\n }\r\n\r\n ${Line3} {\r\n transform: translateY(0) scaleX(1) rotate(-45deg);\r\n }\r\n `}\r\n`;\r\nconst Line = styled.span `\r\n position: absolute;\r\n top: 50%;\r\n left: 0;\r\n display: block;\r\n background: currentColor;\r\n height: 2px;\r\n transition: transform 0.15s ease-out;\r\n width: 100%;\r\n`;\r\nconst Line1 = styled(Line) `\r\n transform: translateY(0) scaleX(1);\r\n`;\r\nconst Line2 = styled(Line) `\r\n transform: translateY(-${height / 2}px);\r\n`;\r\nconst Line3 = styled(Line) `\r\n transform: translateY(${height / 2}px);\r\n`;\r\nexport default {\r\n Button,\r\n Container,\r\n Line1,\r\n Line2,\r\n Line3,\r\n};\r\n","import React from 'react';\r\nimport S from './Navicon.styles';\r\nconst Navicon = ({ active, onClick }) => {\r\n return (React.createElement(S.Container, null,\r\n React.createElement(S.Button, { active: active, \"aria-label\": \"Toggle Navigation\", type: \"button\", onClick: (event) => {\r\n event.preventDefault();\r\n onClick();\r\n } },\r\n React.createElement(S.Line1, null),\r\n React.createElement(S.Line2, null),\r\n React.createElement(S.Line3, null))));\r\n};\r\nexport default Navicon;\r\n","import { fonts } from '@helpers/fonts';\r\nimport { Device, until } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nconst Item = styled.li `\r\n display: block;\r\n height: 45px;\r\n margin: 0;\r\n padding: 0;\r\n\r\n @media ${until(Device.TabletLarge)} {\r\n margin-bottom: 3px;\r\n }\r\n`;\r\nconst Link = styled.a `\r\n position: relative;\r\n display: block;\r\n background: linear-gradient(to bottom, #e5e5e5, #e5e5e5) no-repeat;\r\n background-size: 0% 100%;\r\n color: #000;\r\n ${fonts.DaxPro.Regular};\r\n font-size: 16px;\r\n line-height: 20px;\r\n margin: 0;\r\n padding: 13px 20px 12px;\r\n text-decoration: none;\r\n transition: background-color 0.15s ease-out, background-size 0.15s ease-out, color 0.15s ease-out;\r\n\r\n &::before {\r\n content: '';\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n display: block;\r\n background: linear-gradient(to bottom, #6f9d20, #6f9d20) no-repeat;\r\n background-size: 100% 0%;\r\n height: 100%;\r\n transition: background-size 0.15s ease-out;\r\n width: 2px;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n background-size: 100% 100%;\r\n color: #000;\r\n text-decoration: none;\r\n\r\n &::before {\r\n background-size: 100% 100%;\r\n }\r\n }\r\n\r\n ${({ isActive }) => isActive &&\r\n css `\r\n background-size: 100% 100%;\r\n color: #000;\r\n text-decoration: none;\r\n\r\n &::before {\r\n background-size: 100% 100%;\r\n }\r\n `}\r\n\r\n @media ${until(Device.TabletLarge)} {\r\n background: #f6f6f6;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n }\r\n`;\r\nexport default {\r\n Item,\r\n Link,\r\n};\r\n","import React, { useRef, useState } from 'react';\r\nimport { NavigationDropdownMode } from '../../Navigation.types';\r\nimport S from './NavigationItem.styles';\r\nconst NavigationDropdown = React.lazy(() => import('../NavigationDropdown/NavigationDropdown'));\r\nconst NavigationItem = ({ children, dropdown, isPortalHeader, promo, title, url, }) => {\r\n const [isActive, setIsActive] = useState(false);\r\n const timeoutRef = useRef(-1);\r\n return (React.createElement(S.Item, { onMouseEnter: () => {\r\n if (timeoutRef.current === -1) {\r\n timeoutRef.current = window.setTimeout(() => setIsActive(true), 100);\r\n }\r\n }, onMouseLeave: () => {\r\n if (timeoutRef.current !== -1) {\r\n window.clearTimeout(timeoutRef.current);\r\n timeoutRef.current = -1;\r\n }\r\n setIsActive(false);\r\n }, onKeyDown: (event) => {\r\n if (event.key.toLowerCase() === 'escape') {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n setIsActive(false);\r\n return;\r\n }\r\n } },\r\n React.createElement(S.Link, { href: url, isActive: isActive, onKeyDown: (event) => {\r\n if (event.key.toLowerCase() === 'arrowdown') {\r\n event.preventDefault();\r\n setIsActive(true);\r\n return;\r\n }\r\n if (event.key.toLowerCase() === 'arrowup') {\r\n event.preventDefault();\r\n setIsActive(false);\r\n return;\r\n }\r\n } }, title),\r\n dropdown === NavigationDropdownMode.None || dropdown === undefined || isPortalHeader ? (React.createElement(React.Fragment, null)) : (isActive && (React.createElement(React.Suspense, { fallback: null },\r\n React.createElement(NavigationDropdown, { isActive: isActive, items: children, mode: dropdown, promo: promo }))))));\r\n};\r\nexport default NavigationItem;\r\n","import brand from '@helpers/brand';\r\nimport { Device, until } from '@helpers/media';\r\nimport styled from 'styled-components';\r\nconst Container = styled.nav `\r\n display: block;\r\n`;\r\nconst List = styled.ul `\r\n display: flex;\r\n margin: 0;\r\n padding: 0;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n\r\n &[data-is-portal='true'] {\r\n position: relative;\r\n\r\n &:before {\r\n content: '';\r\n position: absolute;\r\n background: ${brand.white};\r\n height: 100%;\r\n width: 100vw;\r\n left: calc(100% + 30px);\r\n top: 0px;\r\n clip-path: polygon(1% 0%, 100% 0px, 100% 100%, 0% 100%);\r\n }\r\n }\r\n`;\r\nconst HomeIcon = styled.a `\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n height: auto;\r\n width: 45px;\r\n color: #333333;\r\n font-size: 2em;\r\n\r\n @media ${until(Device.TabletLarge)} {\r\n margin-bottom: 3px;\r\n }\r\n\r\n &:hover {\r\n color: #6f9d20;\r\n }\r\n`;\r\nconst Spacer = styled.li `\r\n width: 10px;\r\n`;\r\nexport default {\r\n Container,\r\n List,\r\n HomeIcon,\r\n Spacer,\r\n};\r\n","import React from 'react';\r\nimport NavigationItem from './components/NavigationItem/NavigationItem';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faHome } from '@fortawesome/free-solid-svg-icons';\r\nimport S from './Navigation.styles';\r\nconst Navigation = ({ items = [], homeUrl, isPortalHeader }) => {\r\n return (React.createElement(S.Container, null,\r\n React.createElement(S.List, { \"data-is-portal\": isPortalHeader },\r\n React.createElement(S.HomeIcon, { href: homeUrl },\r\n React.createElement(FontAwesomeIcon, { icon: faHome, style: { height: '20px' } })),\r\n React.createElement(S.Spacer, null),\r\n items.map((item) => (React.createElement(NavigationItem, { key: item.id, ...item, isPortalHeader: isPortalHeader ?? false }))))));\r\n};\r\nexport default Navigation;\r\n","var _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgNavigationArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 20.941,\n height: 13.785\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n \"data-name\": \"Group 32289\",\n fill: \"none\",\n stroke: \"#333\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Line 6\",\n d: \"M0 7.015h19.667\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 20\",\n d: \"M13.694.354l6.54 6.539-6.54 6.539\"\n }))));\n}\n\nexport default __webpack_public_path__ + \"edf565fe3bbee6f11f2b12aad268cf80.svg\";\nexport { SvgNavigationArrow as ReactComponent };","import { ReactComponent as SvgArrow } from '@img/icons/navigation-arrow.svg';\r\nimport { fonts } from '@helpers/fonts';\r\nimport { Device, from } from '@helpers/media';\r\nimport styled, { css } from 'styled-components';\r\nconst Container = styled.nav `\r\n background: #fff;\r\n flex-direction: column;\r\n margin: 0;\r\n padding: 20px 0px 0px 0px;\r\n display: flex;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n`;\r\nconst BackButton = styled.button.attrs({ type: 'button' }) `\r\n display: flex;\r\n align-items: center;\r\n background: none;\r\n border: 0;\r\n color: #000000;\r\n ${fonts.DaxPro.Regular}\r\n font-size: 16px;\r\n height: 20px;\r\n line-height: 20px;\r\n margin: 0 0 16px;\r\n padding: 0 10px;\r\n text-align: left;\r\n\r\n &:focus,\r\n &:hover {\r\n background: none;\r\n border: 0;\r\n color: #000000;\r\n }\r\n`;\r\nconst BackArrow = styled(SvgArrow) `\r\n display: inline-block;\r\n margin: 0 16px 0 0;\r\n transform: translateY(-1px) rotate(180deg);\r\n`;\r\nconst Title = styled.a `\r\n display: block;\r\n color: #000000;\r\n ${fonts.DaxPro.Bold}\r\n font-size: 18px;\r\n line-height: 22px;\r\n padding: 0 10px 18px;\r\n text-align: left;\r\n`;\r\nconst Item = styled.div `\r\n display: block;\r\n padding: 0;\r\n margin: 0 0 3px;\r\n overflow: hidden;\r\n flex-shrink: 0;\r\n`;\r\nconst linkStyles = css `\r\n display: flex;\r\n align-items: center;\r\n background: #f6f6f6;\r\n border: 0;\r\n color: #000000;\r\n ${fonts.DaxPro.Regular}\r\n font-size: 16px;\r\n height: 40px;\r\n line-height: 16px;\r\n margin: 0;\r\n min-width: 0;\r\n padding: 0 10px;\r\n text-align: left;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n width: 100%;\r\n\r\n &:focus,\r\n &:hover {\r\n background: #f6f6f6;\r\n border: 0;\r\n color: #000000;\r\n }\r\n`;\r\nconst ItemButton = styled.button.attrs({ type: 'button' }) `\r\n ${linkStyles}\r\n`;\r\nconst ItemLink = styled.a `\r\n ${linkStyles}\r\n font-weight: ${({ isBold }) => (isBold ? 700 : 400)};\r\n`;\r\nconst ItemArrow = styled(SvgArrow) `\r\n margin-left: auto;\r\n`;\r\nexport default {\r\n BackArrow,\r\n BackButton,\r\n Container,\r\n Item,\r\n ItemArrow,\r\n ItemButton,\r\n ItemLink,\r\n Title,\r\n};\r\n","import React from 'react';\r\nimport S from './NavigationMobile.styles';\r\nconst NavigationMobile = ({ activeId, items = [], isPortalHeader = false, onItemClick, }) => {\r\n const flattened = flatMapRecursive(items, (item) => item.children ?? []);\r\n const activeItem = flattened.find((item) => item.id === activeId);\r\n const activeItemChildren = activeItem?.children;\r\n const activeItemParent = flattened.find((item) => item.children?.find((child) => child.id === activeId));\r\n return (React.createElement(S.Container, { key: activeItem?.id ?? '0' },\r\n activeItem && (React.createElement(React.Fragment, null,\r\n React.createElement(S.BackButton, { onClick: (event) => {\r\n event.preventDefault();\r\n onItemClick(activeItemParent?.id ?? '');\r\n } },\r\n React.createElement(S.BackArrow, null),\r\n activeItemParent?.title ? `Back to ${activeItemParent?.title}` : 'Back'),\r\n React.createElement(S.Title, { href: activeItem.url }, activeItem.title))),\r\n (activeItemChildren ?? items).map((item) => (React.createElement(S.Item, { key: item.id }, (item.children?.length && !isPortalHeader) ? (React.createElement(S.ItemButton, { onClick: (event) => {\r\n event.preventDefault();\r\n onItemClick(item.id);\r\n } },\r\n item.title,\r\n React.createElement(S.ItemArrow, null))) : (React.createElement(S.ItemLink, { isBold: item.style === 'bold', href: item.url }, item.title)))))));\r\n};\r\nexport default NavigationMobile;\r\nfunction flatMapRecursive(array, iteratee) {\r\n let result = [];\r\n array.forEach((item) => {\r\n result = result.concat(item);\r\n if (Array.isArray(iteratee(item))) {\r\n result = result.concat(flatMapRecursive(iteratee(item), iteratee));\r\n }\r\n });\r\n return result;\r\n}\r\n","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgYoursolution(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 135.424 19.189\"\n }, props), /*#__PURE__*/React.createElement(\"g\", {\n style: {\n isolation: \"isolate\"\n },\n fill: \"#333\"\n }, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.317 11.957v6.967H4.412v-6.967L.001 2.338h4.1l2.387 6.268h.048l2.507-6.268h3.712zM18.104 19.189c-3.881 0-5.858-2.845-5.858-6.774s1.977-6.75 5.858-6.75 5.858 2.821 5.858 6.75-1.978 6.774-5.858 6.774zm0-11.21c-1.567 0-2.1 1.832-2.1 4.363s.53 4.412 2.1 4.412 2.1-1.881 2.1-4.412-.533-4.363-2.1-4.363zM31.991 19.189c-3.737 0-5.641-1.374-5.641-4.58V5.93h3.761v8.847a1.714 1.714 0 001.929 1.9 4.027 4.027 0 001.494-.289V5.93h3.757v12.271a13.688 13.688 0 01-5.3.988zM46.404 8.365a3.024 3.024 0 00-1.374-.313 2.825 2.825 0 00-1.133.193v10.68h-3.76V6.629a12.406 12.406 0 015.279-.964 15.529 15.529 0 011.664.1z\"\n }))), /*#__PURE__*/React.createElement(\"g\", {\n style: {\n isolation: \"isolate\"\n },\n fill: \"#fff\"\n }, _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M52.767 19.189a9.885 9.885 0 01-4.6-.964l.988-2.676a6.482 6.482 0 003.062.772c1.47 0 2.338-.747 2.338-1.856 0-2.989-6.2-2.242-6.2-7.546 0-2.82 2.218-4.845 5.593-4.845a8.342 8.342 0 014.074.964l-.868 2.387a5.867 5.867 0 00-2.676-.675c-1.374 0-2.29.651-2.29 1.832 0 2.989 6.364 2.1 6.364 7.522.001 2.915-2.265 5.085-5.785 5.085zM66.363 19.189c-3.881 0-5.858-2.845-5.858-6.774s1.977-6.75 5.858-6.75 5.858 2.821 5.858 6.75-1.977 6.774-5.858 6.774zm0-11.21c-1.567 0-2.1 1.832-2.1 4.363s.531 4.412 2.1 4.412 2.1-1.881 2.1-4.412-.533-4.363-2.1-4.363zM74.678 18.924V0h3.761v18.924zM86.997 19.189c-3.737 0-5.641-1.374-5.641-4.58V5.93h3.761v8.847a1.714 1.714 0 001.928 1.9 4.027 4.027 0 001.495-.289V5.93h3.761v12.271a13.686 13.686 0 01-5.304.988zM99.772 19.117a3.511 3.511 0 01-3.881-3.857V8.341h-1.4V5.93h1.4V3.156l3.761-.988v3.761h2.028V8.34h-2.025v6.916a1.158 1.158 0 001.229 1.326 2.125 2.125 0 00.8-.145v2.319a4.3 4.3 0 01-1.912.361zM105.871 3.978a1.785 1.785 0 112-1.784 1.9 1.9 0 01-2 1.784zm-1.88 14.946V5.93h3.761v12.994zM116.068 19.189c-3.881 0-5.858-2.845-5.858-6.774s1.977-6.75 5.858-6.75 5.858 2.821 5.858 6.75-1.977 6.774-5.858 6.774zm0-11.21c-1.567 0-2.1 1.832-2.1 4.363s.53 4.412 2.1 4.412 2.1-1.881 2.1-4.412-.533-4.363-2.1-4.363zM131.664 18.924v-8.8c0-1.422-.6-2.121-2.1-2.121a4.127 4.127 0 00-1.495.265v10.655h-3.761V6.629a13.467 13.467 0 015.255-.94c4.1 0 5.858 1.663 5.858 4.46v8.775z\"\n }))));\n}\n\nexport default __webpack_public_path__ + \"1d7c46a6386331092cd83f421bd6298d.svg\";\nexport { SvgYoursolution as ReactComponent };","import { fonts } from '@helpers/fonts';\r\nimport styled from 'styled-components';\r\nconst Container = styled.section `\r\n display: flex;\r\n background: #f6f6f6;\r\n flex-direction: row;\r\n`;\r\nconst Link = styled.a `\r\n display: inline-block;\r\n color: #575757;\r\n ${fonts.DaxPro.Regular};\r\n font-size: 14px;\r\n line-height: 20px;\r\n padding: 4px 12px;\r\n position: relative;\r\n\r\n &:focus,\r\n &:hover {\r\n color: #575757;\r\n text-decoration: underline;\r\n }\r\n`;\r\nexport default {\r\n Container,\r\n Link,\r\n};\r\n","import React from 'react';\r\nimport S from './TopLinkList.styles';\r\nconst TopLinkList = ({ items = [] }) => {\r\n return (React.createElement(S.Container, null, items.map((item) => (React.createElement(S.Link, { key: item.id, href: item.url }, item.text)))));\r\n};\r\nexport default TopLinkList;\r\n","import { fonts } from '@helpers/fonts';\r\nimport { Device, from } from '@helpers/media';\r\nimport styled from 'styled-components';\r\nconst Container = styled.section `\r\n display: flex;\r\n flex-direction: column;\r\n margin: 44px 0 0;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n\r\n hr {\r\n display: block;\r\n height: 1px;\r\n border: 0;\r\n border-top: 1px solid #b9b9b9;\r\n margin: 0 10px 12px;\r\n width: calc(100% - 20px);\r\n }\r\n`;\r\nconst Link = styled.a `\r\n display: inline-block;\r\n color: #575757;\r\n ${fonts.DaxPro.Regular};\r\n font-size: 16px;\r\n line-height: 20px;\r\n padding: 8px 10px;\r\n\r\n &:focus,\r\n &:hover {\r\n color: #575757;\r\n text-decoration: underline;\r\n }\r\n`;\r\nexport default {\r\n Container,\r\n Link,\r\n};\r\n","import React from 'react';\r\nimport S from './TopLinkListMobile.styles';\r\nconst TopLinkListMobile = ({ items = [] }) => {\r\n return (React.createElement(S.Container, null,\r\n React.createElement(\"hr\", null),\r\n items.map(item => (React.createElement(S.Link, { key: item.id, href: item.url }, item.text)))));\r\n};\r\nexport default TopLinkListMobile;\r\n","import { ReactComponent as SvgYourSolution } from '@img/icons/yoursolution.svg';\r\nimport { Device, until } from '@helpers/media';\r\nimport srOnly from '@helpers/srOnly';\r\nimport styled from 'styled-components';\r\nimport { ButtonReset } from '@helpers/global';\r\nconst Container = styled.button.attrs({ type: 'button' }) `\r\n ${ButtonReset};\r\n display: flex;\r\n align-content: center;\r\n align-items: center;\r\n background: #6f9d20;\r\n color: #333333;\r\n height: 100%;\r\n padding: 0 22px;\r\n justify-content: center;\r\n justify-items: center;\r\n\r\n @supports (display: grid) {\r\n display: grid;\r\n }\r\n\r\n &:focus {\r\n color: #333333;\r\n outline: auto !important;\r\n }\r\n\r\n &:hover {\r\n color: #ffffff;\r\n background-color: #a2b952;\r\n }\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n display: block;\r\n height: 42px;\r\n padding: 10px 10px 12px;\r\n width: 100%;\r\n }\r\n`;\r\nconst Logo = styled(SvgYourSolution) `\r\n display: block;\r\n height: 20px;\r\n width: 135px;\r\n`;\r\nconst Label = styled.span `\r\n ${srOnly}\r\n`;\r\nexport default {\r\n Container,\r\n Label,\r\n Logo,\r\n};\r\n","import React from 'react';\r\nimport S from './YourSolutionCta.styles';\r\nconst YourSolutionCta = ({ yspVisible, setYSPVisible }) => {\r\n return (React.createElement(React.Fragment, null,\r\n React.createElement(S.Container, { \"aria-label\": \"Your Solution\", onClick: () => setYSPVisible(!yspVisible) },\r\n React.createElement(S.Logo, { role: \"img\" }))));\r\n};\r\nexport default YourSolutionCta;\r\n","import { fonts } from '@helpers/fonts';\r\nimport { Device, from, until } from '@helpers/media';\r\nimport { SITE_PADDING, SITE_PADDING_MOBILE, SITE_WIDTH, } from '@stories/Components/Containers/SiteWide/SiteWide.styles';\r\nimport styled, { css } from 'styled-components';\r\nimport IconCtaListStyles from './components/IconCtaList/IconCtaList.styles';\r\nimport IconCtaListMobileStyles from './components/IconCtaListMobile/IconCtaListMobile.styles';\r\nimport LogoStyles from './components/Logo/Logo.styles';\r\nimport NaviconStyles from './components/Navicon/Navicon.styles';\r\nimport SearchFieldStyles from './components/SearchField/SearchField.styles';\r\nimport TopLinkListStyles from './components/TopLinkList/TopLinkList.styles';\r\nimport YourSolutionCtaStyles from './components/YourSolutionCta/YourSolutionCta.styles';\r\nimport brand from '@helpers/brand';\r\nimport { m } from 'framer-motion';\r\nconst Container = styled.header `\r\n ${({ isActive }) => isActive\r\n ? css `\r\n position: fixed;\r\n width: 100%;\r\n height: 100vh;\r\n top: 0;\r\n left: 0;\r\n display: block;\r\n background: #fff;\r\n z-index: 8001;\r\n overflow-y: auto;\r\n overflow-x: hidden;\r\n `\r\n : null}\r\n`;\r\nconst Top = styled.div `\r\n display: flex;\r\n background: #fff;\r\n height: 140px;\r\n\r\n @media ${until(Device.TabletLarge)} {\r\n height: 65px;\r\n }\r\n`;\r\nconst TopInner = styled.div `\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n flex-direction: row;\r\n margin: 0 auto;\r\n max-width: calc(${SITE_WIDTH}px + (${SITE_PADDING}px * 2));\r\n padding: 14px ${SITE_PADDING}px 0;\r\n width: 100%;\r\n\r\n @supports (display: grid) {\r\n display: grid;\r\n gap: 30px;\r\n grid-template-columns: repeat(12, 1fr);\r\n }\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n display: flex;\r\n gap: 0; // resetting as only chrome supports this with flex.\r\n max-width: none;\r\n padding: 0 ${SITE_PADDING_MOBILE}px;\r\n }\r\n\r\n ${TopLinkListStyles.Container} {\r\n position: absolute;\r\n top: 0;\r\n left: ${SITE_PADDING}px;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n }\r\n\r\n ${NaviconStyles.Container} {\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n }\r\n\r\n ${LogoStyles.Container} {\r\n flex: 1 1 auto;\r\n grid-column: 1 / span 3;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n margin-left: 22px;\r\n max-width: 170px;\r\n }\r\n }\r\n\r\n ${SearchFieldStyles.Container} {\r\n flex: 1 1 auto;\r\n grid-column: 4 / span 4;\r\n margin-left: auto;\r\n margin-right: auto;\r\n\r\n @supports (display: grid) {\r\n margin-left: 0;\r\n margin-right: 0;\r\n }\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n max-width: 526px;\r\n }\r\n }\r\n\r\n ${IconCtaListStyles.Container} {\r\n flex: 1 1 auto;\r\n grid-column: 8 / span 5;\r\n justify-content: flex-end;\r\n margin-left: auto;\r\n\r\n @supports (display: grid) {\r\n margin-left: 0;\r\n }\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n }\r\n\r\n ${IconCtaListMobileStyles.Container} {\r\n justify-content: flex-end;\r\n margin-left: auto;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n\r\n @supports (display: grid) {\r\n margin-left: 0;\r\n }\r\n }\r\n }\r\n`;\r\nconst Bottom = styled.div `\r\n position: relative;\r\n display: flex;\r\n background: #f6f6f6;\r\n height: 45px;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n height: auto;\r\n min-height: calc(100vh - 65px);\r\n }\r\n\r\n &[data-is-portal='true'] {\r\n overflow: hidden;\r\n }\r\n`;\r\nconst BottomInner = styled.div `\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n margin: 0 auto;\r\n max-width: calc(${SITE_WIDTH}px + (${SITE_PADDING}px * 2));\r\n padding: 0 ${SITE_PADDING}px;\r\n width: 100%;\r\n\r\n ${YourSolutionCtaStyles.Container} {\r\n margin-left: auto;\r\n }\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n display: block;\r\n height: 100%;\r\n padding: 0px 0px 150px 0px;\r\n }\r\n\r\n ${IconCtaListStyles.Container} {\r\n display: block;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n }\r\n`;\r\nconst NavOverlay = styled.div `\r\n display: flex;\r\n background: #fff;\r\n position: relative;\r\n height: 100%;\r\n padding: 10px;\r\n`;\r\nconst Telephone = styled.a `\r\n display: flex;\r\n background: #fff;\r\n position: relative;\r\n height: unset;\r\n padding: 10px;\r\n\r\n &:hover {\r\n text-decoration: none;\r\n }\r\n\r\n p {\r\n position: relative;\r\n font-weight: 400;\r\n font-size: 16px;\r\n display: block;\r\n color: #690;\r\n margin: 0;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n\r\n @media ${from(Device.DesktopLarge)} {\r\n display: flex;\r\n align-items: center;\r\n margin: auto;\r\n font-size: 25px;\r\n font-weight: bold;\r\n height: 100%;\r\n }\r\n }\r\n img {\r\n width: 33px;\r\n height: 25px;\r\n position: relative;\r\n margin-right: 10px;\r\n padding-right: 10px;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n padding: 2px;\r\n margin-right: 0px;\r\n padding-right: 0px;\r\n }\r\n\r\n @media ${from(Device.DesktopLarge)} {\r\n padding: 2px;\r\n margin-right: 10px;\r\n padding-right: 10px;\r\n }\r\n }\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n margin-left: 50px;\r\n height: 100%;\r\n\r\n &:before {\r\n content: '';\r\n position: absolute;\r\n background: rgb(255, 255, 255);\r\n height: 100%;\r\n width: 2000px;\r\n left: -40px;\r\n top: 0px;\r\n clip-path: polygon(1% 0%, 100% 0px, 100% 100%, 0% 100%);\r\n }\r\n }\r\n\r\n @media ${from(Device.DesktopLarge)} {\r\n margin-left: 150px;\r\n height: 100%;\r\n }\r\n`;\r\nconst WelcomeMessage = styled.span `\r\n display: block;\r\n color: #575757;\r\n ${fonts.DaxPro.Regular};\r\n font-size: 14px;\r\n line-height: 20px;\r\n padding: 4px 12px;\r\n\r\n > span {\r\n display: inline-block;\r\n }\r\n\r\n a {\r\n display: inline-block;\r\n color: #6f9d20;\r\n padding-left: 6px;\r\n\r\n &::before {\r\n content: '|';\r\n display: inline-block;\r\n padding-right: 6px;\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n text-decoration: underline;\r\n }\r\n }\r\n`;\r\nconst WelcomeMessageDesktop = styled(WelcomeMessage) `\r\n position: absolute;\r\n top: 0;\r\n right: 20px;\r\n\r\n @media ${until(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n`;\r\nconst WelcomeMessageMobile = styled(WelcomeMessage) `\r\n margin-top: 16px;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n`;\r\nconst Mobile = styled.div `\r\n display: block;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: none;\r\n }\r\n`;\r\nconst Desktop = styled.div `\r\n display: none;\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n display: block;\r\n }\r\n`;\r\nconst YourSolutionModal = styled(m.div).attrs(() => ({\r\n initial: 'hidden',\r\n animate: 'visible',\r\n exit: 'hidden',\r\n variants: {\r\n hidden: {\r\n opacity: 0,\r\n scale: 0.8,\r\n },\r\n visible: {\r\n opacity: 1,\r\n scale: 1,\r\n },\r\n },\r\n transition: {\r\n duration: 0.5,\r\n },\r\n})) `\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n background-color: ${brand.white};\r\n z-index: 8001; // Search bar on homepage is 8000.... //\r\n`;\r\nexport const SiteHeaderStyles = {\r\n Bottom,\r\n BottomInner,\r\n Container,\r\n NavOverlay,\r\n Top,\r\n TopInner,\r\n Telephone,\r\n WelcomeMessageDesktop,\r\n WelcomeMessageMobile,\r\n Mobile,\r\n Desktop,\r\n YourSolutionModal,\r\n};\r\n","import AuthService from '@core/auth/services/AuthService';\r\nimport { HydrateOption } from '@core/enums';\r\nimport withRedux from '@helpers/withRedux';\r\nimport withWidget from '@hoc/withWidget';\r\nimport useBodyScrollLock from '@hooks/useBodyScrollLock';\r\nimport phone from '@img/icons/phone.svg';\r\nimport React, { Fragment, useState } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport IconCtaList from './components/IconCtaList/IconCtaList';\r\nimport IconCtaListMobile from './components/IconCtaListMobile/IconCtaListMobile';\r\nimport Logo from './components/Logo/Logo';\r\nimport Navicon from './components/Navicon/Navicon';\r\nimport Navigation from './components/Navigation/Navigation';\r\nimport NavigationMobile from './components/NavigationMobile/NavigationMobile';\r\nimport SearchField from './components/SearchField/SearchField';\r\nimport TopLinkList from './components/TopLinkList/TopLinkList';\r\nimport TopLinkListMobile from './components/TopLinkListMobile/TopLinkListMobile';\r\nimport YourSolutionCta from './components/YourSolutionCta/YourSolutionCta';\r\nimport { AnimatePresence } from 'framer-motion';\r\nimport YourSolutionRootWidget from '@stories/Widgets/YourSolution/YS/YourSolutionRoot.widget';\r\nimport { SiteHeaderStyles as S } from './SiteHeader.styles';\r\nimport { withMotion } from '@hoc/withMotion';\r\nconst SiteHeader = ({ logoCloudinaryPath, logoNavUrl, enquiryCtaUrl, iconCtaListDesktop, iconCtaListMobile, isPortalHeader = false, searchResultsUrl, yourSolutionProps, showYourSolutionCta = false, navigation = [], topLinks, telephoneNumber, translations, homeUrl, }) => {\r\n const { isLoggedIn, welcomeMessage, myProfileUrl } = useSelector((x) => x.app);\r\n const [showNavigationMobile, setShowNavigationMobile] = useState(false);\r\n const [showSearchMobile, setShowSearchMobile] = useState(false);\r\n const [activeMobileNavigationId, setActiveMobileNavigationId] = useState('');\r\n const [yspVisible, setYSPVisible] = useState(false);\r\n const lockRef = useBodyScrollLock(showNavigationMobile);\r\n useBodyScrollLock(yspVisible);\r\n const handleSignOut = async () => {\r\n try {\r\n const res = await AuthService.signOut();\r\n if (!res.status.success) {\r\n return;\r\n }\r\n window.location.href = res.result.redirectUrl;\r\n }\r\n catch (error) {\r\n window.location.href = '/';\r\n }\r\n };\r\n const top = (React.createElement(S.Top, null,\r\n React.createElement(S.TopInner, null,\r\n React.createElement(Navicon, { active: showNavigationMobile, onClick: () => {\r\n setActiveMobileNavigationId('');\r\n setShowNavigationMobile(!showNavigationMobile);\r\n } }),\r\n React.createElement(Logo, { title: translations['gf.home'], url: logoNavUrl, logoCloudinaryPath: logoCloudinaryPath }),\r\n React.createElement(SearchField, { searchResultsUrl: searchResultsUrl, showSearchMobile: showSearchMobile, placeholderText: translations['gf.header.search.placeholder'], searchText: translations['gf.header.search'], closeText: translations['gf.header.close'], onClose: () => {\r\n setShowSearchMobile(false);\r\n } }),\r\n React.createElement(IconCtaList, { items: iconCtaListDesktop, isLoggedIn: isLoggedIn, myProfileText: translations['gf.myprofile'], myProfileUrl: myProfileUrl, loginText: translations['gf.header.login'] }),\r\n React.createElement(IconCtaListMobile, { isLoggedIn: isLoggedIn, enquiryCtaUrl: enquiryCtaUrl, searchText: translations['gf.header.search'], myProfileText: translations['gf.myprofile'], myProfileUrl: myProfileUrl, loginText: translations['gf.header.login'], enquiryText: translations['gf.header.enquiry'], onSearchClick: (event) => {\r\n event.preventDefault();\r\n setShowSearchMobile(!showSearchMobile);\r\n } }),\r\n React.createElement(TopLinkList, { items: topLinks }),\r\n welcomeMessage && (React.createElement(S.WelcomeMessageDesktop, null,\r\n React.createElement(\"span\", null, welcomeMessage),\r\n React.createElement(\"a\", { href: \"#\", onClick: (event) => {\r\n event.preventDefault();\r\n handleSignOut();\r\n } }, translations['gf.header.signout']))))));\r\n const bottom = (React.createElement(S.Bottom, { active: showNavigationMobile, \"data-is-portal\": isPortalHeader },\r\n React.createElement(S.BottomInner, null,\r\n React.createElement(Navigation, { items: navigation, homeUrl: homeUrl, isPortalHeader: isPortalHeader }),\r\n React.createElement(NavigationMobile, { activeId: activeMobileNavigationId, items: navigation, isPortalHeader: isPortalHeader, onItemClick: (id) => setActiveMobileNavigationId(id) }),\r\n activeMobileNavigationId === '' && (React.createElement(Fragment, null,\r\n showYourSolutionCta && !isPortalHeader && yourSolutionProps && React.createElement(YourSolutionCta, { yspVisible: yspVisible, setYSPVisible: setYSPVisible }),\r\n React.createElement(IconCtaList, { items: iconCtaListMobile, isLoggedIn: isLoggedIn, myProfileText: translations['gf.myprofile'], myProfileUrl: myProfileUrl, loginText: translations['gf.header.login'] }),\r\n isLoggedIn && (React.createElement(S.WelcomeMessageMobile, null,\r\n React.createElement(\"span\", null, welcomeMessage),\r\n React.createElement(\"a\", { href: \"#\", onClick: (event) => {\r\n event.preventDefault();\r\n handleSignOut();\r\n } }, translations['gf.header.signout']))),\r\n React.createElement(TopLinkListMobile, { items: topLinks }),\r\n !isPortalHeader &&\r\n React.createElement(S.Telephone, { href: `tel:${telephoneNumber}`, \"aria-label\": \"Telephone Number\" },\r\n React.createElement(\"img\", { src: phone, loading: \"lazy\", alt: \"Telephone Icon\" }),\r\n React.createElement(\"p\", null, telephoneNumber)))))));\r\n return (React.createElement(React.Fragment, null,\r\n React.createElement(S.Mobile, null,\r\n React.createElement(S.Container, { isActive: false }, top),\r\n showNavigationMobile ? (React.createElement(S.Container, { isActive: true, ref: lockRef },\r\n top,\r\n bottom)) : null),\r\n React.createElement(S.Desktop, null,\r\n React.createElement(S.Container, { isActive: false },\r\n top,\r\n bottom)),\r\n React.createElement(AnimatePresence, null, yourSolutionProps && yspVisible && (React.createElement(S.YourSolutionModal, { key: 'YourSolutionModal' },\r\n React.createElement(YourSolutionRootWidget, { ...yourSolutionProps, closeModal: () => setYSPVisible(false) }))))));\r\n};\r\nexport default withWidget(withRedux(withMotion(SiteHeader)), 'SiteHeader', {\r\n hydrate: HydrateOption.Always,\r\n});\r\n"],"sourceRoot":""}