{"version":3,"sources":["webpack:///../node_modules/@ux/bookends/dist/es/index-9a65b7f1.js","webpack:///../node_modules/@ux/bookends/dist/es/utils-86ba50dd.js","webpack:///../node_modules/@ux/bookends/dist/es/index-b723012c.js"],"names":["useBookendsConfig","useColorway","_config$account","_config$account$heade","config","account","header","colorway","useLinks","data","language","_config$account$heade2","_config$account2","_config$account2$head","normalize","menu","map","menuItem","_menuItem$submenu$ite","submenu","items","useSupplementaryLinks","_config$account$heade3","_config$account3","_config$account3$head","_config$account3$head2","_config$account3$head3","supplementary","slice","useContactLinks","_config$account$heade4","_config$account4","_config$account4$head","_config$account4$head2","_config$account4$head3","contact","useShortcuts","url","label","to","icon","analyticsKey","formatLabels","links","link","concat","key","withFormattedLabels","AccountHeader","enhance","props","createElement","ConnectedAccountHeader","showBasket","supplementaryLinks","contactLinks","shortcutNav","withFormattedLabels$1","enhance$1","normalizeLinkProp","prop","_props$$language","_props$","value","result","normalizeLinkUrl","Desktop","Mobile","Header","brand","externalRoutes","basketItemCount","isMinMd","Header$1","logo","basketUrl","homeUrl","setHeight"],"mappings":"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","file":"pex-static/82.10cfc29b7e1319c1f0f6.chunk.js","sourcesContent":["import 'jpex';\nimport 'browser-cookies';\nimport '@ux/drivers';\nimport { d as useControlPanelUrl } from './index-90b0f336.js';\nimport 'react-query';\nimport 'react-jpex';\nimport { useLanguage } from '@ux/language';\nimport 'react-router';\nimport 'react-with-suspense-lazy';\nimport { useAppConfig } from '@ux/whitelabel';\nimport '@ux/accounts-client';\nimport '@ux/bus';\nimport { withProps } from '@team-griffin/rehook';\nimport { mush, withHooks, puree } from '@ux/pure-enhance';\nimport React, { useMemo } from 'react';\nimport { n as normalizeLinkUrl } from './utils-86ba50dd.js';\nimport '@ux/responsive';\nimport { H as Header } from './index-b723012c.js';\nimport { injectIntl } from 'react-intl';\n\nconst useBookendsConfig = () => useAppConfig('bks');\n\nconst useColorway = () => {\n var _config$account, _config$account$heade;\n\n const config = useBookendsConfig();\n return config === null || config === void 0 ? void 0 : (_config$account = config.account) === null || _config$account === void 0 ? void 0 : (_config$account$heade = _config$account.header) === null || _config$account$heade === void 0 ? void 0 : _config$account$heade.colorway;\n};\nconst useLinks = () => {\n const config = useBookendsConfig();\n const {\n data: language\n } = useLanguage();\n return useMemo(() => {\n var _config$account$heade2, _config$account2, _config$account2$head;\n\n const normalize = normalizeLinkUrl(language);\n return ((_config$account$heade2 = config === null || config === void 0 ? void 0 : (_config$account2 = config.account) === null || _config$account2 === void 0 ? void 0 : (_config$account2$head = _config$account2.header) === null || _config$account2$head === void 0 ? void 0 : _config$account2$head.menu) != null ? _config$account$heade2 : []).map(normalize).map(menuItem => {\n var _menuItem$submenu$ite;\n\n if (!menuItem.submenu) {\n return menuItem;\n }\n\n const items = ((_menuItem$submenu$ite = menuItem.submenu.items) != null ? _menuItem$submenu$ite : []).map(normalize);\n return { ...menuItem,\n submenu: { ...menuItem.submenu,\n items\n }\n };\n });\n }, [language, config]);\n};\nconst useSupplementaryLinks = () => {\n const config = useBookendsConfig();\n const {\n data: language\n } = useLanguage();\n return useMemo(() => {\n var _config$account$heade3, _config$account3, _config$account3$head, _config$account3$head2, _config$account3$head3;\n\n return ((_config$account$heade3 = config === null || config === void 0 ? void 0 : (_config$account3 = config.account) === null || _config$account3 === void 0 ? void 0 : (_config$account3$head = _config$account3.header) === null || _config$account3$head === void 0 ? void 0 : (_config$account3$head2 = _config$account3$head.supplementary) === null || _config$account3$head2 === void 0 ? void 0 : (_config$account3$head3 = _config$account3$head2.menu) === null || _config$account3$head3 === void 0 ? void 0 : _config$account3$head3.items) != null ? _config$account$heade3 : []).slice(0, 5).map(normalizeLinkUrl(language));\n }, [config, language]);\n};\nconst useContactLinks = () => {\n const config = useBookendsConfig();\n const {\n data: language\n } = useLanguage();\n return useMemo(() => {\n var _config$account$heade4, _config$account4, _config$account4$head, _config$account4$head2, _config$account4$head3;\n\n return ((_config$account$heade4 = config === null || config === void 0 ? void 0 : (_config$account4 = config.account) === null || _config$account4 === void 0 ? void 0 : (_config$account4$head = _config$account4.header) === null || _config$account4$head === void 0 ? void 0 : (_config$account4$head2 = _config$account4$head.contact) === null || _config$account4$head2 === void 0 ? void 0 : (_config$account4$head3 = _config$account4$head2.menu) === null || _config$account4$head3 === void 0 ? void 0 : _config$account4$head3.items) != null ? _config$account$heade4 : []).map(normalizeLinkUrl(language));\n }, [config, language]);\n};\nconst useShortcuts = () => {\n const url = useControlPanelUrl();\n return useMemo(() => [{\n label: 'bks.masthead.controlPanel',\n to: url,\n icon: 'controls',\n analyticsKey: 'control-panel'\n }], [url]);\n};\n\n/**\n * We offer a maximum of 9 top menu messages, and 81 submenu messages\n * as each top menu item can contain 9 submenu items\n *\n * The top level menu items use the lexicon IDs\n * bks.menu.items.[0-8].label\n *\n * The submenu items use the lexicon IDs\n * bks.menu.submenu.items.[0-80].title\n * bks.menu.submenu.items.[0-80].body\n *\n * Rather than using an array index, each of the top menu and submenu items\n * contain a `key` from brandpilot:\n * 0-9 for top level items, 0-80 for submenu items\n *\n * This means the menu can be easily re-ordered within bpt\n * by adjusting the order of the yaml\n */\nconst formatLabels = links => links.map(link => {\n return { ...link,\n label: \"bks.menu.items.\".concat(link.key, \".label\")\n };\n});\nconst withFormattedLabels = mush('withFormattedLabels')(injectIntl, withHooks(withProps(({\n links\n}) => ({\n links: formatLabels(links)\n}))));\nvar withFormattedLabels$1 = (() => withFormattedLabels);\n\nconst enhance = puree('AccountHeader')();\n\nconst PureAccountHeader = props => /*#__PURE__*/React.createElement(Header, props);\n\nvar AccountHeader = enhance(PureAccountHeader);\n\nconst enhance$1 = mush('ConnectedAccountHeader')(withHooks(withProps(() => ({\n showBasket: false,\n colorway: useColorway(),\n links: useLinks(),\n supplementaryLinks: useSupplementaryLinks(),\n contactLinks: useContactLinks(),\n shortcutNav: useShortcuts()\n}))), withFormattedLabels$1());\nvar ConnectedAccountHeader = enhance$1(AccountHeader);\n\nexport default ConnectedAccountHeader;\n","const normalizeLinkProp = (language, prop) => props => {\n var _props$$language, _props$;\n\n const value = (_props$$language = (_props$ = props[\"\".concat(prop, \"s\")]) === null || _props$ === void 0 ? void 0 : _props$[language]) != null ? _props$$language : props[prop];\n const result = { ...props,\n [prop]: value\n };\n delete result[\"\".concat(prop, \"s\")];\n return result;\n};\nconst normalizeLinkUrl = language => normalizeLinkProp(language, 'url');\n\nexport { normalizeLinkProp as a, normalizeLinkUrl as n };\n","import { e as useLogos, f as useBasketUrl, g as useHomeUrl, h as useBasketCount, i as useHeaderHeightState } from './index-90b0f336.js';\nimport { withSuspenseLazy } from 'react-with-suspense-lazy';\nimport { defaultProps, withProps } from '@team-griffin/rehook';\nimport { puree } from '@ux/pure-enhance';\nimport React from 'react';\nimport { withBreakpointsHook } from '@ux/responsive';\n\nconst Desktop = withSuspenseLazy(() => import('./Desktop-5fa747c4.js'));\nconst Mobile = withSuspenseLazy(() => import('./Mobile-25bae51f.js'));\nconst enhance = puree('Header')(defaultProps({\n links: [],\n supplementaryLinks: [],\n contactLinks: [],\n brand: '',\n externalRoutes: [],\n basketItemCount: 0\n}), withBreakpointsHook);\nconst PureSalesHeader = props => props.isMinMd ? /*#__PURE__*/React.createElement(Desktop, props) : /*#__PURE__*/React.createElement(Mobile, props);\nvar Header = enhance(PureSalesHeader);\n\nconst enhance$1 = puree('ConnectedHeader')(withProps(() => {\n const logo = useLogos();\n const basketUrl = useBasketUrl();\n const homeUrl = useHomeUrl();\n return {\n logo,\n basketUrl,\n homeUrl\n };\n}), withProps(() => {\n const {\n data: basketItemCount\n } = useBasketCount();\n const [, setHeight] = useHeaderHeightState();\n return {\n basketItemCount,\n setHeight\n };\n})); // @ts-ignore\n\nvar Header$1 = enhance$1(Header);\n\nexport { Header$1 as H };\n"],"sourceRoot":""}