{"version":3,"sources":["webpack:///../node_modules/object.omit/index.js","webpack:///../node_modules/object.omit/node_modules/is-extendable/index.js","webpack:///../node_modules/is-plain-object/index.js","webpack:///../node_modules/isobject/index.js","webpack:///../node_modules/@ux/bookends/dist/es/index-b94e3459.js","webpack:///../node_modules/@ux/bookends/dist/es/_rollupPluginBabelHelpers-1b8c042f.js","webpack:///../node_modules/@ux/bookends/dist/es/utils-b53f15f5.js","webpack:///../node_modules/@ux/bookends/node_modules/@ux/badge/dist/es/badge.js","webpack:///../node_modules/@ux/bookends/node_modules/@ux/typography/dist/es/typography.js","webpack:///../node_modules/@ux/bookends/node_modules/@ux/tagmg/dist/es/tagmg.js","webpack:///../node_modules/ramda/es/test.js","webpack:///../node_modules/ramda/es/internal/_isRegExp.js","webpack:///../node_modules/react-hover-observer/dist/es/utils/noop.js","webpack:///../node_modules/react-hover-observer/dist/es/ReactHoverObserver.js","webpack:///../node_modules/@ux/bookends/node_modules/@ux/illustrations/dist/es/illustrations.js","webpack:///../node_modules/@ux/bookends/dist/es/index-bfbd1869.js"],"names":["isObject","module","exports","obj","props","fn","isFunction","keys","Object","res","i","length","key","val","indexOf","isPlainObject","Array","isArray","isObjectObject","o","prototype","toString","call","ctor","prot","constructor","hasOwnProperty","Menu","_extends","assign","target","arguments","source","apply","this","hasLength","list","hasListLength","isDark","x","DARK","isPrimary","PRIMARY","Kind","Against","_defineProperty","value","defineProperty","enumerable","configurable","writable","k","isWarning","WARNING","isAlert","ALERT","isHighlight","HIGHLIGHT","isMuted","MUTED","isAgainstPrimary","a","isAgainstPrimaryGradient","PRIMARY_GRADIENT","isAgainstHighlight","isAgainstHeader","HEADER","getTagColor","palette","LIGHT","isAgainstLight","NEUTRAL","isAgainstNeutral","grey02","highlightContrast","primaryContrast","isAgainstDark","headerForeground","primary","getBadgeColor","headerBackground","highlight","getBadgeBackground","red01","yellow01","grey05","Badge","kind","against","flush","_ref","_useStyles","theme","curvature","spacing","typography","default","root","display","alignItems","whiteSpace","fontFamily","X","badge","justifyContent","height","minHeight","color","backgroundColor","lineHeight","tag","marginBottom","marginLeft","WEAK","borderRadius","STRONG","stylesheet","enhance","styles","children","createElement","style","Boolean","component","mergeStyles","createTypographyElement","_a","rest","s","e","t","p","getOwnPropertySymbols","__rest","typographyFactory","name","defaultComponent","headingSize","depth","concat","_ref$theme","isMinSm","isMinLg","marginTop","fontWeight","PreHeading02","stylesheet$1","Y","Heading02","Heading06","_stylesheet","gu","BodyCopy01","content","SENSITIVE_KEYS","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","push","_objectSpread2","forEach","getOwnPropertyDescriptors","defineProperties","_toConsumableArray","arr","_arrayLikeToArray","_arrayWithoutHoles","iter","Symbol","iterator","from","_iterableToArray","minLen","n","slice","test","_unsupportedIterableToArray","TypeError","_nonIterableSpread","len","arr2","dispatchFB","window","createQueue","evt","data","fbq","_fbq$instance$pixelsB","_fbq$instance","instance","pixelsByID","loaded","createTest$1","getUtag","utag","setUtagData","utag_data","createTest$2","link","view","useGAEvent","_composite","link$1","view$1","dispatch$1","_ref2","ga","_len","_key","getAll","map","get","some","createTest","dispatch","dispatchFB$1","dispatchGAEvent$1","bind","dispatchGAEvent","dispatchFBEvent$1","dispatchFBEvent","dispatchEcommEvent$1","_len2","_key2","dispatchEcommEvent","ecommerce$1","events","gaParams","undefined","event","hitType","eventCategory","eventAction","ecommerce","mount$1","fetchScript","global","options","url","env","profile","account","buildUrl","environment","location","sensitiveKeys","mount","document","Promise","resolve","reject","body","querySelector","script","src","onload","onerror","type","async","appendChild","params","URLSearchParams","search","delete","query","history","replaceState","pathname","hash","filterSensitiveQueryParams","factory","composite","_curry2","pattern","str","_isRegExp","_cloneRegExp","_createClass","descriptor","Constructor","protoProps","staticProps","_React$Component","_class","_classCallCheck","_this","self","ReferenceError","_possibleConstructorReturn","__proto__","getPrototypeOf","state","isHovering","onMouseEnter","onMouseLeave","onMouseOver","onMouseOut","setIsHovering","unsetIsHovering","componentWillUnmount","timerIds","subClass","superClass","create","setPrototypeOf","_inherits","clearTimers","_this2","hoverScheduleId","setTimeout","newState","setState","onHoverChanged","hoverDelayInMs","_this3","hoverOffScheduleId","hoverOffDelayInMs","ids","clearTimeout","pop","reactElement","child","getIsReactComponent","shouldDecorateChildren","_this4","shouldDecorateChild","decorateChild","_props","className","childProps","renderChildrenWithProps","Component","displayName","defaultProps","noop","propTypes","string","number","func","bool","size","ownerProps","when","isNil","pipe","always","icon","ifElse","createPaintbrushUrl$1","curryN","prop","iconSet","maxWidth","width","position","remote","left","top","alt","importance","loading","useMenuItemActiveIndex","links","origin","useOrigin","usePathname","fullPath","useFullPath","found","find","_link$submenu$items","_link$submenu","submenu","items","item","NavigationLink","colorway","isActive","hocus","borderColor","borderWidth","outline","textDecoration","cursor","paddingTop","paddingBottom","transition","activeLink","borderBottomColor","paddingLeft","promo","isLink","label","promoLabel","externalRoutes","analyticsKey","onClick","exact","id","to","activeStyle","SubmenuLayout","A","textAlign","wordBreak","title","illustration","useStylesheet","enhance$1","hasIllustration","xs","illustrationKey","SubmenuLink","opacity","marginRight","text","flex","seoLink","secondary","enhance$2","seoNavClick","Fragment","role","Submenu","divider","grey06","enhance$3","index","showDivider","NavigationDesktop","handleSubmenuClick","setOpenSubmenu","handleMenuHoverChanged","setMenuHovering","handleMenuItemHoverChanged","setMenuItemHovering","isMenuHovering","isSubmenuHovering","handleSubmenuHoverChanged","setSubmenuHovering","isMenuItemHovering","trackDropdownHover","openSubmenu","topmenu","overflow","nav","flexWrap","right","zIndex","borderBottomWidth","borderBottomStyle","pointerEvents","submenuBase","submenuClosed","visibility","submenuOpen","stylesheet$2","navRef","el","current","hovered","enhance$4","menuItemActiveIndex","ReactHoverObserver","ref","_link$submenu2","ConnectedDesktop","track","eventLabel","enhance$5"],"mappings":"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","file":"pex-static/40/66.5206d3753da2cea1e74f.chunk.js","sourcesContent":["/*!\n * object.omit \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\n'use strict';\n\nvar isObject = require('is-extendable');\n\nmodule.exports = function omit(obj, props, fn) {\n if (!isObject(obj)) return {};\n\n if (typeof props === 'function') {\n fn = props;\n props = [];\n }\n\n if (typeof props === 'string') {\n props = [props];\n }\n\n var isFunction = typeof fn === 'function';\n var keys = Object.keys(obj);\n var res = {};\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var val = obj[key];\n\n if (!props || (props.indexOf(key) === -1 && (!isFunction || fn(val, key, obj)))) {\n res[key] = val;\n }\n }\n return res;\n};\n","/*!\n * is-extendable \n *\n * Copyright (c) 2015-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\n'use strict';\n\nvar isPlainObject = require('is-plain-object');\n\nmodule.exports = function isExtendable(val) {\n return isPlainObject(val) || typeof val === 'function' || Array.isArray(val);\n};\n","/*!\n * is-plain-object \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\n'use strict';\n\nvar isObject = require('isobject');\n\nfunction isObjectObject(o) {\n return isObject(o) === true\n && Object.prototype.toString.call(o) === '[object Object]';\n}\n\nmodule.exports = function isPlainObject(o) {\n var ctor,prot;\n\n if (isObjectObject(o) === false) return false;\n\n // If has modified constructor\n ctor = o.constructor;\n if (typeof ctor !== 'function') return false;\n\n // If has modified prototype\n prot = ctor.prototype;\n if (isObjectObject(prot) === false) return false;\n\n // If constructor does not have an Object-specific method\n if (prot.hasOwnProperty('isPrototypeOf') === false) {\n return false;\n }\n\n // Most likely a plain Object\n return true;\n};\n","/*!\n * isobject \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\n'use strict';\n\nmodule.exports = function isObject(val) {\n return val != null && typeof val === 'object' && Array.isArray(val) === false;\n};\n","import '@ux/theme-utils';\n\nlet Menu;\n\n(function (Menu) {\n Menu[\"NAV\"] = \"@ux/bookends/nav-menu\";\n Menu[\"ACCOUNT\"] = \"@ux/bookends/account-menu\";\n Menu[\"CONTACT\"] = \"@ux/bookends/contact-menu\";\n Menu[\"SUPPLEMENTARY\"] = \"@ux/bookends/supplementary-menu\";\n})(Menu || (Menu = {}));\n","function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nexport { _extends as _ };\n","import './index-b94e3459.js';\nimport { Colorway } from '@ux/theme-utils';\n\nconst hasLength = list => list.length > 0;\nconst hasListLength = obj => hasLength(Object.keys(obj));\nconst isDark = x => x === Colorway.DARK;\nconst isPrimary = x => x === Colorway.PRIMARY;\n\nexport { hasLength as a, isPrimary as b, hasListLength as h, isDark as i };\n","import React from 'react';\nimport { defaultProps, withProps } from '@team-griffin/rehook';\nimport { puree } from '@ux/pure-enhance';\nimport { PreHeading02 } from '@ux/typography';\nimport cssSides, { Side } from '@team-griffin/css-sides';\nimport { useTheme, gu2px, Curvature } from '@ux/theme-utils';\nimport { modifier } from '@ux/style-utils';\nimport { headingXxs } from '@ux/type-size';\nimport { useStyles } from '@team-griffin/stylr';\n\nvar Kind;\n\n(function (Kind) {\n Kind[\"PRIMARY\"] = \"PRIMARY\";\n Kind[\"WARNING\"] = \"WARNING\";\n Kind[\"ALERT\"] = \"ALERT\";\n Kind[\"HIGHLIGHT\"] = \"HIGHLIGHT\";\n Kind[\"MUTED\"] = \"MUTED\";\n})(Kind || (Kind = {})); // Because badge is used against the bookends header\n// we need to be able to handle going against the headerBackground etc\n\n\nvar Against;\n\n(function (Against) {\n Against[\"LIGHT\"] = \"LIGHT\";\n Against[\"NEUTRAL\"] = \"NEUTRAL\";\n Against[\"DARK\"] = \"DARK\";\n Against[\"PRIMARY\"] = \"PRIMARY\";\n Against[\"PRIMARY_GRADIENT\"] = \"PRIMARY_GRADIENT\";\n Against[\"HIGHLIGHT\"] = \"HIGHLIGHT\";\n Against[\"HEADER\"] = \"HEADER\";\n})(Against || (Against = {}));\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\n return obj;\n}\n\nvar isPrimary = function isPrimary(k) {\n return k === Kind.PRIMARY;\n};\n\nvar isWarning = function isWarning(k) {\n return k === Kind.WARNING;\n};\n\nvar isAlert = function isAlert(k) {\n return k === Kind.ALERT;\n};\n\nvar isHighlight = function isHighlight(k) {\n return k === Kind.HIGHLIGHT;\n};\n\nvar isMuted = function isMuted(k) {\n return k === Kind.MUTED;\n};\n\nvar isAgainstPrimary = function isAgainstPrimary(a) {\n return a === Against.PRIMARY;\n};\n\nvar isAgainstPrimaryGradient = function isAgainstPrimaryGradient(a) {\n return a === Against.PRIMARY_GRADIENT;\n};\n\nvar isAgainstHighlight = function isAgainstHighlight(a) {\n return a === Against.HIGHLIGHT;\n};\n\nvar isAgainstNeutral = function isAgainstNeutral(a) {\n return a === Against.NEUTRAL;\n};\n\nvar isAgainstLight = function isAgainstLight(a) {\n return a === Against.LIGHT;\n};\n\nvar isAgainstDark = function isAgainstDark(a) {\n return a === Against.DARK;\n};\n\nvar isAgainstHeader = function isAgainstHeader(a) {\n return a === Against.HEADER;\n};\n\nvar getTagColor = function getTagColor(a, palette) {\n if (isAgainstLight(a) || isAgainstNeutral(a)) {\n return palette.grey02;\n }\n\n if (isAgainstHighlight(a)) {\n return palette.highlightContrast;\n }\n\n if (isAgainstPrimary(a) || isAgainstPrimaryGradient(a)) {\n return palette.primaryContrast;\n }\n\n if (isAgainstDark(a)) {\n return '#fff';\n }\n\n if (isAgainstHeader(a)) {\n return palette.headerForeground;\n } // fallback\n\n\n return palette.primary;\n};\nvar getBadgeColor = function getBadgeColor(k, a, palette) {\n if (isAgainstHeader(a)) {\n return palette.headerBackground;\n }\n\n if (isPrimary(k)) {\n if (isAgainstPrimary(a) || isAgainstPrimaryGradient(a)) {\n return palette.primary;\n }\n\n return palette.primaryContrast;\n }\n\n if (isHighlight(k)) {\n if (isAgainstHighlight(a)) {\n return palette.highlight;\n }\n\n return palette.highlightContrast;\n }\n\n if (isAlert(k)) {\n return '#fff';\n }\n\n if (isWarning(k)) {\n return palette.grey02;\n }\n\n if (isMuted(k)) {\n return '#fff';\n } // fallback\n\n\n return palette.primaryContrast;\n};\nvar getBadgeBackground = function getBadgeBackground(k, a, palette) {\n if (isAgainstHeader(a)) {\n return palette.headerForeground;\n }\n\n if (isAlert(k)) {\n return palette.red01;\n }\n\n if (isWarning(k)) {\n return palette.yellow01;\n }\n\n if (isMuted(k)) {\n return palette.grey05;\n }\n\n if (isPrimary(k)) {\n if (isAgainstPrimary(a) || isAgainstPrimaryGradient(a)) {\n return palette.primaryContrast;\n }\n\n return palette.primary;\n }\n\n if (isHighlight(k)) {\n if (isAgainstHighlight(a)) {\n return palette.highlightContrast;\n }\n\n return palette.highlight;\n } // fallback\n\n\n return palette.primary;\n};\n\nvar stylesheet = (function (_ref) {\n var _useStyles;\n\n var kind = _ref.kind,\n against = _ref.against,\n flush = _ref.flush;\n\n var _useTheme = useTheme(),\n theme = _useTheme.theme;\n\n var curvature = theme.curvature,\n spacing = theme.spacing,\n palette = theme.palette,\n typography = theme.typography;\n return useStyles((_useStyles = {\n default: {\n root: Object.assign({\n display: 'inline-flex',\n alignItems: 'center',\n whiteSpace: 'nowrap',\n fontFamily: typography.display\n }, cssSides('margin', Side.X, gu2px(1, spacing))),\n badge: Object.assign(Object.assign(Object.assign({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n height: gu2px(3, spacing),\n minHeight: gu2px(3, spacing)\n }, cssSides('padding', Side.X, gu2px(1, spacing))), headingXxs()), {\n color: getBadgeColor(kind, against, palette),\n backgroundColor: getBadgeBackground(kind, against, palette),\n lineHeight: 1\n }),\n tag: {\n marginBottom: 0,\n marginLeft: gu2px(1, spacing),\n color: getTagColor(against, palette)\n }\n },\n flush: {\n root: Object.assign({}, cssSides('margin', Side.X, 0))\n }\n }, _defineProperty(_useStyles, modifier('curvature', Curvature.WEAK), {\n badge: {\n borderRadius: gu2px(0.5, spacing)\n }\n }), _defineProperty(_useStyles, modifier('curvature', Curvature.STRONG), {\n badge: {\n borderRadius: gu2px(3, spacing)\n }\n }), _useStyles), [{\n flush: flush\n }, {\n curvature: curvature\n }]);\n});\n\nvar enhance = puree('Badge')(defaultProps({\n kind: Kind.PRIMARY,\n against: Against.LIGHT,\n flush: false\n}), withProps(function (props) {\n return stylesheet(props);\n}));\n\nvar PureBadge = function PureBadge(_ref) {\n var styles = _ref.styles,\n children = _ref.children,\n tag = _ref.tag;\n return /*#__PURE__*/React.createElement(\"div\", {\n style: styles.root\n }, /*#__PURE__*/React.createElement(\"span\", {\n style: styles.badge\n }, children), Boolean(tag) ? /*#__PURE__*/React.createElement(PreHeading02, {\n style: styles.tag,\n component: \"span\"\n }, tag) : null);\n};\n\nvar Badge = enhance(PureBadge); // eslint-disable-next-line no-underscore-dangle\n\nexport default Badge;\nexport { Against, Badge, Kind };\n","import { headingXxs, headingXs, headingS, headingXl, headingXxl, display, headingL, headingM, content } from '@ux/type-size';\nimport { useStyles } from '@team-griffin/stylr';\nimport { useTheme, gu2px } from '@ux/theme-utils';\nimport { defaultProps, withProps, omitProps } from '@team-griffin/rehook';\nimport { puree } from '@ux/pure-enhance';\nimport { withBreakpointsHook } from '@ux/responsive';\nimport { pipe, converge, assoc, mergeDeepRight, path, propOr, identity, dissoc, defaultTo } from 'ramda';\nimport { createElement } from 'react';\nimport cssSides, { Side } from '@team-griffin/css-sides';\n\nvar mergeStyles = pipe(converge(assoc('style'), [converge(mergeDeepRight, [path(['styles', 'root']), propOr({}, 'style')]), identity]), dissoc('styles'));\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\n\nvar createTypographyElement = function createTypographyElement(_a) {\n var component = _a.component,\n children = _a.children,\n rest = __rest(_a, [\"component\", \"children\"]);\n\n return createElement(component, Object.assign({}, rest), children);\n};\n\nvar typographyFactory = function typographyFactory(_ref) {\n var name = _ref.name,\n defaultComponent = _ref.defaultComponent,\n headingSize = _ref.headingSize,\n stylesheet = _ref.stylesheet;\n return puree(name)(defaultProps({\n component: defaultComponent\n }), withProps(useTheme), withBreakpointsHook, withProps(function (props) {\n return stylesheet(Object.assign(Object.assign({}, props), {\n headingSize: headingSize\n }));\n }), withProps(mergeStyles), withProps(function (props) {\n // if a `depth` prop is provided, make the `` element\n if (typeof props.depth === 'number') {\n return {\n component: \"h\".concat(props.depth)\n };\n }\n }), omitProps(['theme', 'depth', 'styles', 'isMinXs', 'isMinSm', 'isMinMd', 'isMinLg', 'isMinXl']))(createTypographyElement);\n};\n\nvar stylesheet = function stylesheet(_ref) {\n var _ref$theme = _ref.theme,\n typography = _ref$theme.typography,\n spacing = _ref$theme.spacing,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg,\n headingSize = _ref.headingSize;\n return useStyles({\n default: {\n root: Object.assign(Object.assign({}, headingSize[0]()), {\n display: 'block',\n marginTop: 0,\n marginBottom: gu2px(1, spacing),\n fontWeight: 'normal',\n fontFamily: typography.display\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1]())\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2]())\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n\nvar PreHeading01 = typographyFactory({\n name: 'PreHeading01',\n defaultComponent: 'div',\n headingSize: [headingXxs, headingXs, headingS],\n stylesheet: stylesheet\n});\nvar PreHeading02 = typographyFactory({\n name: 'PreHeading02',\n defaultComponent: 'div',\n headingSize: [headingXxs, headingXxs, headingXs],\n stylesheet: stylesheet\n});\n\nvar stylesheet$1 = function stylesheet(_ref) {\n var typography = _ref.theme.typography,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg,\n headingSize = _ref.headingSize;\n return useStyles({\n default: {\n root: Object.assign(Object.assign(Object.assign({}, headingSize[0]()), cssSides('margin', Side.Y, 0)), {\n display: 'block',\n fontWeight: 'normal',\n fontFamily: typography.display\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1]())\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2]())\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n\nvar Heading01 = typographyFactory({\n name: 'Heading01',\n defaultComponent: 'h1',\n headingSize: [headingXl, headingXxl, display],\n stylesheet: stylesheet$1\n});\nvar Heading02 = typographyFactory({\n name: 'Heading02',\n defaultComponent: 'h2',\n headingSize: [headingL, headingXl, headingXxl],\n stylesheet: stylesheet$1\n});\nvar Heading03 = typographyFactory({\n name: 'Heading03',\n defaultComponent: 'h3',\n headingSize: [headingM, headingL, headingXl],\n stylesheet: stylesheet$1\n});\nvar Heading04 = typographyFactory({\n name: 'Heading04',\n defaultComponent: 'h4',\n headingSize: [headingS, headingM, headingL],\n stylesheet: stylesheet$1\n});\nvar Heading05 = typographyFactory({\n name: 'Heading05',\n defaultComponent: 'h5',\n headingSize: [headingXs, headingS, headingM],\n stylesheet: stylesheet$1\n});\nvar Heading06 = typographyFactory({\n name: 'Heading06',\n defaultComponent: 'h6',\n headingSize: [headingXxs, headingXs, headingS],\n stylesheet: stylesheet$1\n});\n\nvar _stylesheet = function stylesheet(_ref) {\n var _ref$theme = _ref.theme,\n typography = _ref$theme.typography,\n spacing = _ref$theme.spacing,\n gu = _ref.gu,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg,\n headingSize = _ref.headingSize;\n return useStyles({\n default: {\n root: Object.assign(Object.assign({}, headingSize[0]()), {\n display: 'block',\n marginTop: gu2px(defaultTo(2, gu), spacing),\n marginBottom: 0,\n fontWeight: 'normal',\n fontFamily: typography.display\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1]())\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2]())\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n\nvar SubHeading01 = typographyFactory({\n name: 'SubHeading01',\n defaultComponent: 'h2',\n headingSize: [headingXs, headingS, headingM],\n stylesheet: _stylesheet\n});\nvar SubHeading02 = typographyFactory({\n name: 'SubHeading02',\n defaultComponent: 'h3',\n headingSize: [headingXxs, headingXxs, headingXs],\n stylesheet: function stylesheet(props) {\n return _stylesheet(Object.assign(Object.assign({}, props), {\n gu: 1\n }));\n }\n});\n\nvar stylesheet$2 = function stylesheet(_ref) {\n var _ref$theme = _ref.theme,\n typography = _ref$theme.typography,\n spacing = _ref$theme.spacing,\n headingSize = _ref.headingSize,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg;\n return useStyles({\n default: {\n root: Object.assign(Object.assign({}, headingSize[0]()), {\n display: 'block',\n marginTop: gu2px(1, spacing),\n marginBottom: 0,\n fontWeight: 'normal',\n fontFamily: typography.content\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1]())\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2]())\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n\nvar BodyCopy01 = typographyFactory({\n name: 'BodyCopy01',\n defaultComponent: 'p',\n headingSize: [content, content, content],\n stylesheet: stylesheet$2\n});\n\nvar index = null;\n\nexport default index;\nexport { BodyCopy01, Heading01, Heading02, Heading03, Heading04, Heading05, Heading06, PreHeading01, PreHeading02, SubHeading01, SubHeading02 };\n","import jpex from 'jpex';\nimport { createDelayedQueue } from '@ux/queue';\nimport { useCallback, useEffect } from 'react';\nimport { puree } from '@ux/pure-enhance';\nimport { withProps } from '@team-griffin/rehook';\nimport { useResolve } from 'react-jpex';\nimport { useLocation } from 'react-router';\n\nvar CDN = 'https://tags.tiqcdn.com/utag';\nvar SENSITIVE_KEYS = ['token', 'tokenId', 'kvp', 'payerId'];\n\n/* eslint-disable camelcase */\n\nvar buildUrl = function buildUrl(env, profile, account) {\n return \"\".concat(CDN, \"/\").concat(account, \"/\").concat(profile, \"/\").concat(env, \"/utag.js\");\n};\n\nvar mount = function mount(fetchScript, filter, global) {\n return function (options) {\n if (options.data) {\n global.utag_data = options.data;\n }\n\n var url = buildUrl(options.environment, options.profile, options.account);\n filter(global.location, options.sensitiveKeys);\n return fetchScript(url);\n };\n};\n\nvar filterSensitiveQueryParams = function filterSensitiveQueryParams(global) {\n return function (location, sensitiveKeys) {\n var params = new URLSearchParams(location.search);\n (sensitiveKeys || SENSITIVE_KEYS).forEach(function (key) {\n params.delete(key);\n });\n var query = params.toString();\n\n if (query) {\n query = \"?\".concat(query);\n }\n\n global.history.replaceState({}, '', \"\".concat(location.pathname).concat(query).concat(location.hash));\n };\n};\n\nvar fetchScript = function fetchScript(document) {\n return function (url) {\n return new Promise(function (resolve, reject) {\n var body = document.querySelector('body');\n var script = document.createElement('script');\n script.src = url;\n script.onload = resolve;\n script.onerror = reject;\n script.type = 'text/javascript';\n script.async = true;\n\n if (body != null) {\n body.appendChild(script);\n }\n });\n };\n};\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\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\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\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\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}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\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}\n\n// checks whether GA is on the page and the tealium_0 agent is loaded\nvar createTest = function createTest(window) {\n return function () {\n var _ref = window,\n ga = _ref.ga;\n\n if (typeof ga !== 'function') {\n return false;\n }\n\n if (typeof ga.getAll !== 'function') {\n return false;\n }\n\n var names = ga.getAll().map(function (x) {\n return x.get('name');\n });\n return names.some(function (name) {\n return name === 'tealium_0';\n });\n };\n}; // This is the most basic way to send something through GA\n\n\nvar dispatch = function dispatch(window, createQueue) {\n var test = createTest(window);\n\n var action = function action(evt) {\n var _ref2 = window,\n ga = _ref2.ga;\n\n for (var _len = arguments.length, data = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n data[_key - 1] = arguments[_key];\n }\n\n ga.apply(void 0, [\"tealium_0.\".concat(evt)].concat(data));\n };\n\n return createQueue(action, test);\n}; // Sends analytics directly through GA\n\nvar dispatchGAEvent = function dispatchGAEvent(dispatch) {\n return dispatch.bind(null, 'send');\n}; // Sends ecommerce data directly through GA\n// note that you also need to dispatch a normal GA event in order to send\n// the ecommerce data\n\nvar dispatchEcommEvent = function dispatchEcommEvent(dispatch) {\n return function (evt) {\n for (var _len2 = arguments.length, data = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n data[_key2 - 1] = arguments[_key2];\n }\n\n return dispatch.apply(void 0, [\"ec:\".concat(evt)].concat(data));\n };\n}; // This method sends ecommerce data, but automatically dispatches the GA event which\n// carries the ecommerce data with it\n\nvar ecommerce = function ecommerce(dispatchEcommEvent, dispatchGAEvent) {\n return function (events) {\n var gaParams = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n events.forEach(function (event) {\n return dispatchEcommEvent.apply(void 0, _toConsumableArray(event));\n });\n dispatchGAEvent(_objectSpread2({\n hitType: 'event',\n eventCategory: 'Ecommerce',\n eventAction: 'send'\n }, gaParams));\n };\n};\n\n// checks whether Facebook pixel is on the page\nvar createTest$1 = function createTest(window) {\n return function () {\n var _fbq$instance$pixelsB, _fbq$instance;\n\n var _ref = window,\n fbq = _ref.fbq;\n\n if (typeof fbq !== 'function') {\n return false;\n }\n\n if (Object.keys((_fbq$instance$pixelsB = (_fbq$instance = fbq.instance) === null || _fbq$instance === void 0 ? void 0 : _fbq$instance.pixelsByID) != null ? _fbq$instance$pixelsB : {}).length === 0) {\n return false;\n }\n\n return fbq.loaded;\n };\n}; // This is the most basic way to send something through FB\n\n\nvar dispatchFB = function dispatchFB(window, createQueue) {\n var test = createTest$1(window);\n\n var action = function action(evt, data) {\n var _ref2 = window,\n fbq = _ref2.fbq;\n fbq('track', evt, data);\n };\n\n return createQueue(action, test);\n};\nvar dispatchFBEvent = function dispatchFBEvent(dispatch) {\n return function (evt, data) {\n return dispatch(evt, data);\n };\n};\n\n// @ts-ignore\nvar getUtag = function getUtag(window) {\n return window.utag;\n};\n\nvar setUtagData = function setUtagData(window, data) {\n // eslint-disable-next-line camelcase\n window.utag_data = data;\n}; // checks whether GA is on the page and the tealium_0 agent is loaded\n\n\nvar createTest$2 = function createTest(window) {\n return function () {\n // @ts-ignore\n var utag = getUtag(window);\n return utag != null && typeof utag.link === 'function' && typeof utag.view === 'function';\n };\n}; // Sends analytics via tealium\n\n\nvar link = function link(window, createQueue) {\n var test = createTest$2(window);\n\n var action = function action(data) {\n setUtagData(window, data);\n var utag = getUtag(window);\n utag.link(data);\n };\n\n return createQueue(action, test);\n}; // Send tealium a page view request\n\nvar view = function view(window, createQueue) {\n var test = createTest$2(window);\n\n var action = function action(data) {\n setUtagData(window, data);\n var utag = getUtag(window);\n utag.view(data);\n };\n\n return createQueue(action, test);\n};\n\nvar composite = (function () {\n var link$1 = link(window, createDelayedQueue);\n\n var view$1 = view(window, createDelayedQueue);\n\n var dispatch$1 = dispatch(window, createDelayedQueue);\n\n var dispatchFB$1 = dispatchFB(window, createDelayedQueue);\n\n var dispatchGAEvent$1 = dispatchGAEvent(dispatch$1);\n\n var dispatchFBEvent$1 = dispatchFBEvent(dispatchFB$1);\n\n var dispatchEcommEvent$1 = dispatchEcommEvent(dispatch$1);\n\n var ecommerce$1 = ecommerce(dispatchEcommEvent$1, dispatchGAEvent$1);\n\n var fetchScript$1 = fetchScript(document);\n\n var filterSensitiveQueryParams$1 = filterSensitiveQueryParams(window);\n\n var mount$1 = mount(fetchScript$1, filterSensitiveQueryParams$1, window); // these are the only two deps that are created by tagmg and also used by tagmg\n\n\n jpex.factory(\"type:@ux/tagmg/Link\", function () {\n return link$1;\n });\n jpex.factory(\"type:@ux/tagmg/DispatchGAEvent\", function () {\n return dispatchGAEvent$1;\n });\n return {\n dispatch: dispatch$1,\n dispatchFB: dispatchFB$1,\n dispatchGAEvent: dispatchGAEvent$1,\n dispatchEcommEvent: dispatchEcommEvent$1,\n dispatchFBEvent: dispatchFBEvent$1,\n ecommerce: ecommerce$1,\n link: link$1,\n mount: mount$1,\n view: view$1\n };\n});\n\nvar useTrackInteraction = function useTrackInteraction() {\n var dispatch = useResolve(\"type:@ux/tagmg/Link\", []);\n return function (arg) {\n dispatch(arg);\n };\n};\n\nvar trackInteraction = function trackInteraction(options) {\n var config = _objectSpread2({\n event: 'interaction',\n trigger: 'onClick'\n }, options);\n\n return puree('TrackInteraction')(withProps(function (props) {\n var original = props[config.trigger];\n var trackInteraction = useTrackInteraction();\n var handler = useCallback(function () {\n trackInteraction({\n event: config.event,\n source: config.source\n });\n\n if (typeof original === 'function') {\n original.apply(void 0, arguments);\n }\n }, [trackInteraction, original]);\n return _defineProperty({}, config.trigger, handler);\n }));\n};\n\nvar useGAEvent = function useGAEvent() {\n return useResolve(\"type:@ux/tagmg/DispatchGAEvent\", []);\n};\n\nvar usePageView = function usePageView() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$pageviewTest = _ref.pageviewTest,\n pageviewTest = _ref$pageviewTest === void 0 ? function () {\n return true;\n } : _ref$pageviewTest;\n\n var dispatch = useResolve(\"type:@ux/tagmg/DispatchGAEvent\", []);\n var location = useLocation();\n useEffect(function () {\n var shouldDispatch = pageviewTest(location);\n\n if (shouldDispatch) {\n dispatch({\n hitType: 'pageview',\n page: location.pathname\n });\n }\n }, [location.pathname]);\n};\n\nvar _composite = composite(),\n dispatch$1 = _composite.dispatch,\n dispatchGAEvent$1 = _composite.dispatchGAEvent,\n dispatchFBEvent$1 = _composite.dispatchFBEvent,\n dispatchEcommEvent$1 = _composite.dispatchEcommEvent,\n ecommerce$1 = _composite.ecommerce,\n link$1 = _composite.link,\n mount$1 = _composite.mount,\n view$1 = _composite.view;\n\nexport { dispatch$1 as dispatch, dispatchEcommEvent$1 as dispatchEcommEvent, dispatchFBEvent$1 as dispatchFBEvent, dispatchGAEvent$1 as dispatchGAEvent, ecommerce$1 as ecommerce, link$1 as link, mount$1 as mount, trackInteraction, useGAEvent, usePageView, view$1 as view };\n","import _cloneRegExp from \"./internal/_cloneRegExp.js\";\nimport _curry2 from \"./internal/_curry2.js\";\nimport _isRegExp from \"./internal/_isRegExp.js\";\nimport toString from \"./toString.js\";\n/**\n * Determines whether a given string matches a given regular expression.\n *\n * @func\n * @memberOf R\n * @since v0.12.0\n * @category String\n * @sig RegExp -> String -> Boolean\n * @param {RegExp} pattern\n * @param {String} str\n * @return {Boolean}\n * @see R.match\n * @example\n *\n * R.test(/^x/, 'xyz'); //=> true\n * R.test(/^y/, 'xyz'); //=> false\n */\n\nvar test =\n/*#__PURE__*/\n_curry2(function test(pattern, str) {\n if (!_isRegExp(pattern)) {\n throw new TypeError('‘test’ requires a value of type RegExp as its first argument; received ' + toString(pattern));\n }\n\n return _cloneRegExp(pattern).test(str);\n});\n\nexport default test;","export default function _isRegExp(x) {\n return Object.prototype.toString.call(x) === '[object RegExp]';\n}","export default (function () {});","var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nimport React, { Children, cloneElement } from 'react';\nimport PropTypes from 'prop-types';\nimport assign from 'object-assign';\nimport omit from 'object.omit';\n\nimport noop from './utils/noop';\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isHovering: false\n };\n\n _this.onMouseEnter = _this.onMouseEnter.bind(_this);\n _this.onMouseLeave = _this.onMouseLeave.bind(_this);\n _this.onMouseOver = _this.onMouseOver.bind(_this);\n _this.onMouseOut = _this.onMouseOut.bind(_this);\n _this.setIsHovering = _this.setIsHovering.bind(_this);\n _this.unsetIsHovering = _this.unsetIsHovering.bind(_this);\n _this.componentWillUnmount = _this.componentWillUnmount.bind(_this);\n\n _this.timerIds = [];\n return _this;\n }\n\n _createClass(_class, [{\n key: 'onMouseEnter',\n value: function onMouseEnter(e) {\n this.props.onMouseEnter({\n e: e,\n setIsHovering: this.setIsHovering,\n unsetIsHovering: this.unsetIsHovering\n });\n }\n }, {\n key: 'onMouseLeave',\n value: function onMouseLeave(e) {\n this.props.onMouseLeave({\n e: e,\n setIsHovering: this.setIsHovering,\n unsetIsHovering: this.unsetIsHovering\n });\n }\n }, {\n key: 'onMouseOver',\n value: function onMouseOver(e) {\n this.props.onMouseOver({\n e: e,\n setIsHovering: this.setIsHovering,\n unsetIsHovering: this.unsetIsHovering\n });\n }\n }, {\n key: 'onMouseOut',\n value: function onMouseOut(e) {\n this.props.onMouseOut({\n e: e,\n setIsHovering: this.setIsHovering,\n unsetIsHovering: this.unsetIsHovering\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.clearTimers();\n }\n }, {\n key: 'setIsHovering',\n value: function setIsHovering() {\n var _this2 = this;\n\n this.clearTimers();\n\n var hoverScheduleId = setTimeout(function () {\n var newState = { isHovering: true };\n _this2.setState(newState, function () {\n _this2.props.onHoverChanged(newState);\n });\n }, this.props.hoverDelayInMs);\n\n this.timerIds.push(hoverScheduleId);\n }\n }, {\n key: 'unsetIsHovering',\n value: function unsetIsHovering() {\n var _this3 = this;\n\n this.clearTimers();\n\n var hoverOffScheduleId = setTimeout(function () {\n var newState = { isHovering: false };\n _this3.setState(newState, function () {\n _this3.props.onHoverChanged(newState);\n });\n }, this.props.hoverOffDelayInMs);\n\n this.timerIds.push(hoverOffScheduleId);\n }\n }, {\n key: 'clearTimers',\n value: function clearTimers() {\n var ids = this.timerIds;\n while (ids.length) {\n clearTimeout(ids.pop());\n }\n }\n }, {\n key: 'getIsReactComponent',\n value: function getIsReactComponent(reactElement) {\n return typeof reactElement.type === 'function';\n }\n }, {\n key: 'shouldDecorateChild',\n value: function shouldDecorateChild(child) {\n return !!child && this.getIsReactComponent(child) && this.props.shouldDecorateChildren;\n }\n }, {\n key: 'decorateChild',\n value: function decorateChild(child, props) {\n return cloneElement(child, props);\n }\n }, {\n key: 'renderChildrenWithProps',\n value: function renderChildrenWithProps(children, props) {\n var _this4 = this;\n\n if (typeof children === 'function') {\n return children(props);\n }\n\n return Children.map(children, function (child) {\n return _this4.shouldDecorateChild(child) ? _this4.decorateChild(child, props) : child;\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n children = _props.children,\n className = _props.className;\n\n var childProps = assign({}, { isHovering: this.state.isHovering }, omit(this.props, ['children', 'className', 'hoverDelayInMs', 'hoverOffDelayInMs', 'onHoverChanged', 'onMouseEnter', 'onMouseLeave', 'onMouseOver', 'onMouseOut', 'shouldDecorateChildren']));\n\n return React.createElement(\n 'div',\n {\n className: className,\n onMouseEnter: this.onMouseEnter,\n onMouseLeave: this.onMouseLeave,\n onMouseOver: this.onMouseOver,\n onMouseOut: this.onMouseOut\n },\n this.renderChildrenWithProps(children, childProps)\n );\n }\n }]);\n\n return _class;\n}(React.Component);\n\n_class.displayName = 'ReactHoverObserver';\n_class.defaultProps = {\n hoverDelayInMs: 0,\n hoverOffDelayInMs: 0,\n onHoverChanged: noop,\n onMouseEnter: function onMouseEnter(_ref) {\n var setIsHovering = _ref.setIsHovering;\n return setIsHovering();\n },\n onMouseLeave: function onMouseLeave(_ref2) {\n var unsetIsHovering = _ref2.unsetIsHovering;\n return unsetIsHovering();\n },\n onMouseOver: noop,\n onMouseOut: noop,\n shouldDecorateChildren: true\n};\n_class.propTypes = {\n className: PropTypes.string,\n hoverDelayInMs: PropTypes.number,\n hoverOffDelayInMs: PropTypes.number,\n onHoverChanged: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n onMouseOut: PropTypes.func,\n shouldDecorateChildren: PropTypes.bool\n};\nexport default _class;\n;","import React from 'react';\nimport { withProps } from '@team-griffin/rehook';\nimport { puree } from '@ux/pure-enhance';\nimport { useStyles } from '@team-griffin/stylr';\nimport { percentage } from '@ux/style-utils';\nimport { gu2px } from '@ux/theme-utils';\nimport { when, isNil, pipe, always, ifElse, test, curryN, prop } from 'ramda';\nimport { stringify } from 'qs';\n\nconst size = ownerProps => when(isNil, pipe(always(ownerProps.icon), ifElse(test(/^banner/), always(gu2px(8, ownerProps.theme.spacing)), always(gu2px(2, ownerProps.theme.spacing)))))(ownerProps.size);\n\nvar stylesheet = (ownerProps => useStyles({\n default: {\n root: {\n maxWidth: percentage(100),\n height: size(ownerProps),\n width: size(ownerProps),\n position: 'relative',\n display: 'inline-block'\n },\n remote: {\n position: 'absolute',\n width: percentage(100),\n height: percentage(100),\n left: 0,\n top: 0\n }\n }\n}, []));\n\nconst baseUrl = 'https://paintbrush.heg-cp.com';\n\nconst createPaintbrushUrl = (icon, theme) => `${baseUrl}/illustrations/${icon}.svg?${stringify({\n palette: prop('illustrations')(theme.palette),\n iconSet: theme.iconSet\n})}`;\n\nvar createPaintbrushUrl$1 = curryN(2, createPaintbrushUrl);\n\nconst enhance = puree('Illustration')(withProps(stylesheet));\n\nconst PureIllustration = ({\n styles,\n icon,\n theme,\n alt\n}) => /*#__PURE__*/React.createElement(\"div\", {\n style: styles.root\n}, /*#__PURE__*/React.createElement(\"img\", {\n src: createPaintbrushUrl$1(icon, theme),\n alt: alt,\n style: styles.remote // @ts-ignore\n ,\n importance: \"low\",\n loading: \"lazy\"\n}));\n\nvar Illustration = enhance(PureIllustration); // eslint-disable-next-line no-underscore-dangle\n\nexport default Illustration;\nexport { Illustration, createPaintbrushUrl$1 as createPaintbrushUrl };\n","import React, { Fragment, useRef, useLayoutEffect, createElement, useCallback } from 'react';\nimport { mush, withHooks, puree } from '@ux/pure-enhance';\nimport { withProps, withState, withHandlers } from '@team-griffin/rehook';\nimport { useGAEvent } from '@ux/tagmg';\nimport { useWindow } from '@ux/hooks';\nimport { useLocation } from 'react-router';\nimport { _ as _extends } from './_rollupPluginBabelHelpers-1b8c042f.js';\nimport ReactHoverObserver from 'react-hover-observer';\nimport { Row, Column, Container } from '@ux/grid';\nimport { DynamicLink, dynamicClick } from '@ux/dynamic-link';\nimport Badge, { Kind } from '@ux/badge';\nimport Message from '@ux/message';\nimport { useStyles, withInteraction, removeInteraction } from '@team-griffin/stylr';\nimport { useTheme, gu2px } from '@ux/theme-utils';\nimport { headingXs, smallprint, headingXxs } from '@ux/type-size';\nimport longhand from '@team-griffin/css-longhand';\nimport { percentage, opacify } from '@ux/style-utils';\nimport cssSides, { Side } from '@team-griffin/css-sides';\nimport { i as isDark, b as isPrimary, a as hasLength } from './utils-b53f15f5.js';\nimport { Heading02, BodyCopy01, Heading06 } from '@ux/typography';\nimport Illustration from '@ux/illustrations';\nimport Glyph from '@ux/glyphs';\nimport './index-b94e3459.js';\n\nconst useOrigin = () => useWindow().location.origin;\n/** Returns the location pathname */\n\n\nconst usePathname = () => useLocation().pathname;\n/**\n * Returns the concatenation of the location pathname and hash\n * Input: Object => location: { pathname: '/foo', hash: '#bar' }\n * Output: string => '/foo#bar'\n */\n\n\nconst useFullPath = () => {\n const location = useLocation();\n return `${location.pathname}${location.hash}`;\n};\n/**\n * Returns the index of menu item if one of submenu item url matches the current url\n * Input: Object[] => [{ url: '/', submenu: { items: { url: '/foo/' }}}]\n * Output: number => 0\n */\n\n\nconst useMenuItemActiveIndex = links => {\n const origin = useOrigin();\n const pathname = usePathname();\n const fullPath = useFullPath();\n const found = links.find(link => {\n var _link$submenu$items, _link$submenu;\n\n const items = (_link$submenu$items = (_link$submenu = link.submenu) === null || _link$submenu === void 0 ? void 0 : _link$submenu.items) != null ? _link$submenu$items : [];\n return items.some(item => {\n if (item.url === pathname) {\n return true;\n } else if (item.url === fullPath) {\n return true;\n } else if (item.url === `${origin}${pathname}`) {\n return true;\n } else if (item.url === `${origin}${fullPath}`) {\n return true;\n }\n\n return false;\n });\n }, links);\n return links.indexOf(found);\n};\n\nvar stylesheet = (({\n colorway,\n isActive,\n hocus,\n url\n}) => {\n const {\n theme\n } = useTheme();\n const {\n typography,\n spacing,\n palette\n } = theme;\n\n const color = (() => {\n if (isDark(colorway)) {\n return '#fff';\n }\n\n if (isPrimary(colorway)) {\n return palette.primaryContrast;\n }\n\n return palette.grey02;\n })();\n\n const borderColor = (() => {\n if (isDark(colorway)) {\n return '#fff';\n }\n\n if (isPrimary(colorway)) {\n return palette.primaryContrast;\n }\n\n return palette.primary;\n })();\n\n return useStyles({\n default: {\n link: {\n fontFamily: typography.display,\n backgroundColor: 'transparent',\n borderWidth: 0,\n outline: 0,\n textDecoration: 'none',\n display: 'flex',\n alignItems: 'center',\n cursor: 'default',\n height: percentage(100),\n minHeight: gu2px(8, spacing),\n // 4GU inner + 2 spacing Y\n ...headingXs(),\n ...cssSides('padding', Side.X, 0),\n ...cssSides('margin', Side.X, gu2px(0.5, spacing)),\n paddingTop: gu2px(2, spacing),\n paddingBottom: gu2px(1.5, spacing),\n ...longhand('borderBottom', {\n width: gu2px(0.5, spacing),\n color: 'transparent',\n style: 'solid'\n }),\n transition: 'border-bottom-color 0.3s ease-in-out',\n color: opacify(color, 0.85)\n },\n activeLink: {\n color,\n borderBottomColor: borderColor\n },\n badge: {\n paddingLeft: gu2px(1, spacing)\n },\n promo: { ...smallprint()\n }\n },\n isActive: {\n link: {\n color: opacify(color, 1),\n borderBottomColor: borderColor\n }\n },\n hocus: {\n link: {\n textDecoration: 'none',\n color: opacify(color, 1),\n borderBottomColor: borderColor\n }\n },\n isLink: {\n link: {\n cursor: 'pointer'\n }\n }\n }, [{\n isActive\n }, {\n hocus\n }, {\n isLink: url != null\n }]);\n});\n\nconst enhance = mush('NavigationLink')(withInteraction, withHooks(withProps(useTheme), withProps(props => stylesheet(props))));\nconst PureNavigationLink = ({\n styles,\n label,\n url,\n promo,\n promoLabel,\n externalRoutes,\n analyticsKey,\n onClick,\n onMouseOver,\n onMouseOut,\n exact = false\n}) => /*#__PURE__*/React.createElement(DynamicLink, {\n id: analyticsKey ? `bks-navlink-${analyticsKey}` : null,\n to: url,\n externalRoutes: externalRoutes,\n style: styles.link // @ts-ignore\n ,\n activeStyle: styles.activeLink,\n onClick: onClick,\n onMouseOver: onMouseOver,\n onMouseOut: onMouseOut,\n exact: exact\n}, /*#__PURE__*/React.createElement(Message, {\n id: label\n}), promo ? /*#__PURE__*/React.createElement(\"span\", {\n style: styles.badge\n}, /*#__PURE__*/React.createElement(Badge, {\n kind: Kind.HIGHLIGHT,\n flush: true\n}, /*#__PURE__*/React.createElement(\"span\", {\n style: styles.promo\n}, /*#__PURE__*/React.createElement(Message, {\n id: promoLabel\n})))) : null);\nvar NavigationLink = enhance(PureNavigationLink);\n\nconst useStylesheet = ({\n theme\n}) => {\n const {\n palette,\n spacing,\n typography\n } = theme;\n return useStyles({\n default: {\n root: {\n fontFamily: typography.content,\n ...headingXxs(),\n ...cssSides('padding', Side.A, gu2px(4, spacing)),\n textAlign: 'left',\n color: palette.grey02,\n wordBreak: 'break-word'\n },\n title: {\n color: palette.grey02,\n marginTop: gu2px(3, spacing)\n },\n illustration: {\n size: gu2px(16, spacing)\n }\n }\n }, []);\n};\n\nconst enhance$1 = puree('SubmenuLayout')(withProps(useTheme), withProps(props => useStylesheet(props)));\nconst PureSubmenuLayout = ({\n theme,\n styles,\n children,\n submenu,\n hasIllustration\n}) => /*#__PURE__*/React.createElement(Fragment, null, hasIllustration ? /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement(Column, {\n xs: 4\n}, /*#__PURE__*/React.createElement(\"div\", {\n style: styles.root\n}, /*#__PURE__*/React.createElement(Illustration, {\n theme: theme,\n size: styles.illustration.size,\n icon: submenu.illustrationKey\n}), /*#__PURE__*/React.createElement(Heading02, {\n style: styles.title\n}, /*#__PURE__*/React.createElement(Message, {\n id: submenu.title\n})), /*#__PURE__*/React.createElement(BodyCopy01, null, /*#__PURE__*/React.createElement(Message, {\n id: submenu.body\n})))), /*#__PURE__*/React.createElement(Column, {\n xs: 8\n}, children)) : children);\nvar SubmenuLayout = enhance$1(PureSubmenuLayout);\n\nvar stylesheet$1 = (({\n hocus,\n theme\n}) => {\n const {\n palette,\n spacing,\n typography\n } = theme;\n return useStyles({\n default: {\n root: {\n fontFamily: typography.content,\n ...headingXxs(),\n ...longhand('borderLeft', {\n width: gu2px(0.5, spacing),\n style: 'solid',\n color: 'transparent'\n }),\n cursor: 'pointer',\n color: palette.grey02\n },\n link: { ...cssSides('padding', Side.X, gu2px(4, spacing)),\n backgroundColor: 'transparent',\n textAlign: 'left',\n borderWidth: 0,\n paddingTop: gu2px(4, spacing),\n textDecoration: 'none',\n display: 'flex',\n outline: 0\n },\n icon: {\n color: palette.primary,\n opacity: 0.01,\n width: gu2px(3, spacing),\n marginRight: gu2px(2, spacing),\n marginLeft: 0,\n marginTop: gu2px(0.5, spacing),\n // offset promo badge\n transition: 'opacity 0.3s ease-in-out, margin 0.3s ease-in-out'\n },\n text: {\n flex: 1\n },\n title: {\n color: palette.grey02,\n transition: 'color 0.3s ease-in-out',\n minHeight: gu2px(4, spacing),\n display: 'flex',\n alignItems: 'center'\n },\n badge: {\n paddingLeft: gu2px(1, spacing)\n },\n promo: { ...smallprint(),\n color: palette.highlightContrast\n },\n seoLink: {\n cursor: 'pointer'\n },\n body: { ...cssSides('padding', Side.X, gu2px(4, spacing)),\n paddingBottom: gu2px(4, spacing),\n paddingTop: gu2px(1, spacing),\n marginTop: 0\n }\n },\n hocus: {\n title: {\n color: palette.secondary\n },\n icon: {\n opacity: 1,\n marginRight: 0,\n marginLeft: gu2px(2, spacing)\n }\n }\n }, [{\n hocus\n }]);\n});\n\nconst enhance$2 = mush('SubmenuLink')(withInteraction, withHooks(withProps(useTheme), withProps(props => stylesheet$1(props)), removeInteraction));\n\nconst PureSubmenuLink = ({\n theme,\n styles,\n title,\n body,\n to,\n externalRoutes,\n analyticsKey,\n promo,\n promoLabel\n}) => {\n const seoNavClick = dynamicClick({\n to,\n externalRoutes\n });\n return /*#__PURE__*/React.createElement(\"div\", {\n style: styles.root\n }, /*#__PURE__*/React.createElement(DynamicLink, {\n id: analyticsKey ? `bks-submenu-${analyticsKey}` : null,\n to: to,\n externalRoutes: externalRoutes,\n style: styles.link\n }, /*#__PURE__*/React.createElement(\"div\", {\n style: styles.text\n }, /*#__PURE__*/React.createElement(Heading06, {\n component: \"div\",\n style: styles.title\n }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Message, {\n id: title\n }), promo ? /*#__PURE__*/React.createElement(\"span\", {\n style: styles.badge\n }, /*#__PURE__*/React.createElement(Badge, {\n kind: Kind.HIGHLIGHT,\n flush: true\n }, /*#__PURE__*/React.createElement(\"span\", {\n style: styles.promo\n }, /*#__PURE__*/React.createElement(Message, {\n id: promoLabel\n })))) : null))), /*#__PURE__*/React.createElement(\"span\", {\n style: styles.icon\n }, /*#__PURE__*/React.createElement(Glyph, {\n icon: \"arrowRight\",\n size: gu2px(3, theme.spacing),\n color: styles.icon.color\n }))), body != null ? /*#__PURE__*/React.createElement(\"div\", null, /*#__PURE__*/React.createElement(\"div\", {\n style: styles.seoLink,\n onClick: seoNavClick,\n role: \"link\"\n }, /*#__PURE__*/React.createElement(BodyCopy01, {\n style: styles.body\n }, /*#__PURE__*/React.createElement(Message, {\n id: body\n })))) : null);\n};\n\nvar SubmenuLink = enhance$2(PureSubmenuLink);\n\n/**\n * if the submenu has illustration we show the items on two columns and\n * add divider starting with 3rd item,\n * otherwhise we show the items on three columns and\n * add divider starting with 4th item\n */\nconst showDivider = (hasIllustration, index) => {\n if (hasIllustration && index >= 2) {\n return true;\n }\n\n if (!hasIllustration && index >= 3) {\n return true;\n }\n\n return false;\n};\n\nconst useStylesheet$1 = () => {\n const {\n theme\n } = useTheme();\n const {\n palette,\n spacing\n } = theme;\n return useStyles({\n default: {\n divider: { ...cssSides('margin', Side.X, gu2px(4, spacing)),\n height: 2,\n backgroundColor: opacify(palette.grey06, 0.2)\n }\n }\n }, []);\n};\n\nconst enhance$3 = puree('Submenu')(withProps(ownerProps => ({\n hasIllustration: Boolean(ownerProps.submenu.illustrationKey)\n})), withProps(useStylesheet$1));\nconst PureSubmenu = ({\n styles,\n externalRoutes,\n submenu,\n hasIllustration\n}) => /*#__PURE__*/React.createElement(SubmenuLayout, {\n hasIllustration: hasIllustration,\n submenu: submenu\n}, /*#__PURE__*/React.createElement(Row, null, submenu.items.map(function (link, i) {\n return /*#__PURE__*/React.createElement(Column, {\n key: i,\n xs: hasIllustration ? 6 : 4\n }, showDivider(hasIllustration, i) ? /*#__PURE__*/React.createElement(\"div\", {\n style: styles.divider\n }) : null, /*#__PURE__*/React.createElement(SubmenuLink, {\n externalRoutes: externalRoutes,\n title: link.title,\n body: link.body,\n to: link.url,\n analyticsKey: link.analyticsKey,\n promo: link.promo,\n promoLabel: link.promoLabel\n }));\n}, undefined)));\nvar Submenu = enhance$3(PureSubmenu);\n\nvar stylesheet$2 = (({\n openSubmenu\n}) => {\n const {\n theme\n } = useTheme();\n const {\n spacing,\n palette\n } = theme;\n return useStyles({\n default: {\n root: {\n position: 'relative'\n },\n topmenu: {\n display: 'flex',\n justifyContent: 'center',\n overflow: 'hidden'\n },\n nav: {\n display: 'flex',\n flexWrap: 'nowrap',\n height: percentage(100)\n },\n divider: {\n whiteSpace: 'nowrap',\n ...cssSides('margin', Side.X, gu2px(2, spacing))\n },\n promo: { ...smallprint()\n },\n submenu: {\n position: 'absolute',\n top: percentage(100),\n marginTop: 1,\n // account for border\n left: 0,\n right: 0,\n overflow: 'hidden',\n zIndex: 1,\n borderBottomWidth: 0,\n borderBottomStyle: 'solid',\n borderBottomColor: 'transparent',\n backgroundColor: '#fff',\n pointerEvents: 'none'\n },\n submenuBase: {\n transition: 'opacity 0.2s ease-in-out'\n },\n submenuClosed: {\n visibility: 'hidden',\n height: 0,\n opacity: 0.01\n },\n submenuOpen: {\n visibility: 'visible',\n height: 'auto',\n opacity: 1\n }\n },\n openSubmenu: {\n submenu: {\n paddingTop: gu2px(2, spacing),\n paddingBottom: gu2px(6, spacing),\n borderBottomColor: opacify(palette.grey06, 0.2),\n borderBottomWidth: 2,\n pointerEvents: 'auto'\n }\n }\n }, [{\n openSubmenu: openSubmenu > -1\n }]);\n});\n\n// there is a bug with the hover library where sometimes if you hover too quickly\n// it doesn't pick it up\n// so instead, we wait until the render is complete + the usual delay applied by the library\n// then we check to see if any of the nav items are hovered on (by checking their css hover stat)\n// and if we find one, we force the submenu to open\nconst openNavOnMount = Component => props => {\n const navRef = useRef(null);\n const {\n setOpenSubmenu,\n setMenuHovering\n } = props;\n useLayoutEffect(() => {\n setTimeout(() => {\n // el is the nav dom element\n const el = navRef.current;\n\n if (el != null) {\n // can we find anything that is currently being hovered?\n const hovered = el.querySelector(':hover');\n\n if (hovered != null) {\n // find the menu index by working out which child of the nav it is\n // this also means if a non-menu-item is somehow being hovered\n // it won't blow up, it'll just cancel out\n const i = Array.from(el.children).indexOf(hovered);\n\n if (i >= 0) {\n setOpenSubmenu(i);\n setMenuHovering(true);\n }\n }\n }\n }, 200);\n }, [setMenuHovering, setOpenSubmenu]);\n return /*#__PURE__*/createElement(Component, { ...props,\n navRef\n });\n};\n\nconst enhance$4 = mush('NavigationDesktop')(withHooks(withState('openSubmenu', 'setOpenSubmenu', -1), withState('isMenuHovering', 'setMenuHovering', false), withState('isMenuItemHovering', 'setMenuItemHovering', false), withState('isSubmenuHovering', 'setSubmenuHovering', false), withHandlers({\n handleSubmenuClick: ({\n setOpenSubmenu\n }) => () => {\n setOpenSubmenu(-1);\n },\n handleMenuHoverChanged: ({\n setMenuHovering\n }) => ({\n isHovering\n }) => {\n setMenuHovering(isHovering);\n },\n handleMenuItemHoverChanged: ({\n setOpenSubmenu,\n setMenuItemHovering,\n isMenuHovering,\n isSubmenuHovering\n }) => ({\n i,\n isHovering\n }) => {\n setMenuItemHovering(isHovering);\n\n if (isHovering || isMenuHovering) {\n // @ts-ignore\n return setOpenSubmenu(i);\n }\n\n if (!isHovering && !isMenuHovering && !isSubmenuHovering) {\n return setOpenSubmenu(-1);\n }\n },\n handleSubmenuHoverChanged: ({\n setOpenSubmenu,\n setSubmenuHovering,\n isMenuItemHovering,\n trackDropdownHover\n }) => ({\n isHovering\n }) => {\n // dispatch GA event when starts to hover over dropdown menu\n if (isHovering) {\n trackDropdownHover();\n }\n\n setSubmenuHovering(isHovering);\n\n if (!isHovering && !isMenuItemHovering) {\n setOpenSubmenu(-1);\n }\n }\n}), withProps(props => stylesheet$2(props))), openNavOnMount);\nconst PureNavigationDesktop = ({\n styles,\n links,\n colorway,\n externalRoutes,\n navRef,\n openSubmenu,\n menuItemActiveIndex,\n handleMenuHoverChanged,\n handleMenuItemHoverChanged,\n handleSubmenuHoverChanged,\n handleSubmenuClick\n}) => /*#__PURE__*/React.createElement(\"div\", {\n style: styles.root\n}, /*#__PURE__*/React.createElement(\"div\", {\n style: styles.topmenu\n}, /*#__PURE__*/React.createElement(ReactHoverObserver //@ts-ignore\n, {\n onHoverChanged: ({\n isHovering\n }) => {\n handleMenuHoverChanged({\n isHovering\n });\n }\n}, /*#__PURE__*/React.createElement(\"nav\", {\n style: styles.nav,\n ref: navRef\n}, links.map(function (link, i) {\n var _link$submenu;\n\n return /*#__PURE__*/React.createElement(\"div\", {\n key: i,\n style: styles.divider\n }, hasLength(link === null || link === void 0 ? void 0 : (_link$submenu = link.submenu) === null || _link$submenu === void 0 ? void 0 : _link$submenu.items) ? /*#__PURE__*/React.createElement(ReactHoverObserver, {\n hoverDelayInMs: 200,\n hoverOffDelayInMs: 100 //@ts-ignore\n ,\n onHoverChanged: ({\n isHovering\n }) => {\n handleMenuItemHoverChanged({\n isHovering,\n i\n });\n }\n }, /*#__PURE__*/React.createElement(NavigationLink, _extends({\n isActive: openSubmenu === i || menuItemActiveIndex === i,\n colorway: colorway,\n externalRoutes: externalRoutes\n }, link))) : /*#__PURE__*/React.createElement(NavigationLink, _extends({\n colorway: colorway,\n externalRoutes: externalRoutes\n }, link)));\n}, undefined)))), /*#__PURE__*/React.createElement(ReactHoverObserver, {\n hoverDelayInMs: 0,\n hoverOffDelayInMs: 200 //@ts-ignore\n ,\n onHoverChanged: ({\n isHovering\n }) => {\n handleSubmenuHoverChanged({\n isHovering\n });\n }\n}, /*#__PURE__*/React.createElement(\"nav\", {\n style: styles.submenu,\n onClick: () => handleSubmenuClick()\n}, /*#__PURE__*/React.createElement(Container, null, links.map(function (link, i) {\n var _link$submenu2;\n\n return hasLength(link === null || link === void 0 ? void 0 : (_link$submenu2 = link.submenu) === null || _link$submenu2 === void 0 ? void 0 : _link$submenu2.items) ? /*#__PURE__*/React.createElement(\"div\", {\n key: i,\n style: { ...styles.submenuBase,\n ...(openSubmenu === i ? styles.submenuOpen : styles.submenuClosed)\n }\n }, /*#__PURE__*/React.createElement(Submenu, {\n submenu: link.submenu,\n externalRoutes: externalRoutes\n })) : null;\n}, undefined)))));\nvar NavigationDesktop = enhance$4(PureNavigationDesktop);\n\nconst enhance$5 = puree('ConnectedDesktop')(withProps(({\n links\n}) => {\n const menuItemActiveIndex = useMenuItemActiveIndex(links);\n return {\n menuItemActiveIndex\n };\n}), withProps(() => {\n const track = useGAEvent();\n const trackDropdownHover = useCallback(() => {\n track({\n hitType: 'event',\n eventCategory: 'Custom',\n eventAction: 'hover',\n eventLabel: 'bks-navlink-dropdown-hover'\n });\n }, [track]);\n return {\n trackDropdownHover\n };\n}));\nvar ConnectedDesktop = enhance$5(NavigationDesktop);\n\nexport default ConnectedDesktop;\n"],"sourceRoot":""}