{"version":3,"file":"component---src-templates-store-js-c438e47eefd914556164.js","mappings":"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","sources":["webpack://morrisons-storefinder/./src/components/BreadcrumbInHeader.jsx","webpack://morrisons-storefinder/./src/components/InfoMiniBanners.jsx","webpack://morrisons-storefinder/./src/components/InfoBannerHeader.jsx","webpack://morrisons-storefinder/./src/components/ArticleHeader.jsx","webpack://morrisons-storefinder/./src/core/urls.js","webpack://morrisons-storefinder/./src/components/StoreHighlightImage.jsx","webpack://morrisons-storefinder/./src/components/StoreHighlights.jsx","webpack://morrisons-storefinder/./src/components/InStoreServices.jsx","webpack://morrisons-storefinder/./src/components/InfoBannerSide.jsx","webpack://morrisons-storefinder/./src/components/MarketingImage.jsx","webpack://morrisons-storefinder/./src/components/MarketingOne.jsx","webpack://morrisons-storefinder/./src/components/MarketingTwo.jsx","webpack://morrisons-storefinder/./src/components/OverrideBanner.jsx","webpack://morrisons-storefinder/./src/components/HelpDetails.jsx","webpack://morrisons-storefinder/./src/components/NearbyStores.jsx","webpack://morrisons-storefinder/./node_modules/react-accessible-accordion/dist/es/index.js","webpack://morrisons-storefinder/./src/templates/store.js","webpack://morrisons-storefinder/./src/assets/icons/arrow_forward_24.svg","webpack://morrisons-storefinder/./node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js"],"sourcesContent":["import React from 'react'\nimport { Link } from 'gatsby'\nimport PropTypes from 'prop-types'\nimport ForwardArrowIcon from '../assets/icons/arrow_forward_24.svg'\n\nconst BreadcrumbInHeader = ({ category, currentPage, storeType }) => {\n  const storeLink = storeType === 'McColls' ? `/mccolls` : '/'\n\n  return (\n    <div className=\"flex flex-wrap items-center mb-4 text-sm leading-none text-white lg:mb-8\">\n      <Link\n        to={storeLink}\n        className=\"inline-block text-white hover:underline whitespace-nowrap\"\n      >\n        Store Finder Home\n      </Link>\n      <ForwardArrowIcon className=\"inline-block w-2 h-2 mx-2 fill-current\" />\n      {currentPage && (\n        <>\n          <span className=\"hidden text-white sm:inline-block\">\n            {currentPage}\n          </span>\n        </>\n      )}\n    </div>\n  )\n}\n\nBreadcrumbInHeader.propTypes = {\n  category: PropTypes.string,\n  currentPage: PropTypes.string,\n  storeType: PropTypes.string,\n}\n\nexport default BreadcrumbInHeader\n","import React from 'react'\nimport Icon from './Icon'\n\nconst InfoMiniBanners = ({ store }) => {\n  const whichstore = store\n  const newLookStores = [\n    21,\n    73,\n    80,\n    90,\n    93,\n    96,\n    97,\n    116,\n    125,\n    163,\n    170,\n    188,\n    295,\n    307,\n    356,\n    492,\n    608,\n  ]\n  const storesNowOpen = [549]\n  const newStores = [494, 683]\n  const newStoreNowOpen = [506, 529, 382, 422, 488, 466]\n  const storeNowClosed = [181, 527, 493, 520]\n\n  return (\n    <>\n      {newLookStores.includes(whichstore) ? (\n        <section className=\"absolute right-0 flex items-end flex-1 -mt-2 -mr-2 -bottom-9 sm:left-auto sm:right-0 sm:bottom-auto\">\n          <div className=\"flex items-center justify-start p-2 rounded-md shadow-lg bg-primary\">\n            <h2 className=\"mr-2 text-sm font-semibold leading-none text-white md:text-base white\">\n              New Look Store\n            </h2>\n            <Icon icon=\"infonewstore\" className=\"h-4 md:h-6 fill-white\" />\n          </div>\n        </section>\n      ) : storesNowOpen.includes(whichstore) ? (\n        <section className=\"absolute right-0 flex items-end flex-1 -mt-2 -mr-2 -bottom-9 sm:left-auto sm:right-0 sm:bottom-auto\">\n          <div className=\"flex items-center justify-start p-2 rounded-md shadow-lg bg-primary\">\n            <h2 className=\"mr-2 text-sm font-semibold leading-none text-white md:text-base white\">\n              Store Now Open\n            </h2>\n            <Icon icon=\"infonewstore\" className=\"h-4 md:h-6 fill-white\" />\n          </div>\n        </section>\n      ) : newStores.includes(whichstore) ? (\n        <section className=\"absolute right-0 z-10 flex items-end flex-1 -mt-2 -mr-2 -bottom-9 sm:left-auto sm:right-0 sm:bottom-auto\">\n          <div className=\"flex items-center justify-start p-2 rounded-md shadow-lg bg-primary\">\n            <h2 className=\"mr-2 text-sm font-semibold leading-none text-white md:text-base white\">\n              New Store\n            </h2>\n            <Icon icon=\"infonewstore\" className=\"h-4 md:h-6 fill-white\" />\n          </div>\n        </section>\n      ) : newStoreNowOpen.includes(whichstore) ? (\n        <section className=\"absolute right-0 z-10 flex items-end flex-1 mr-0 -mt-2 -bottom-9 sm:left-auto sm:right-0 sm:bottom-auto\">\n          <div className=\"flex items-center justify-start p-2 rounded-md shadow-lg bg-primary\">\n            <h2 className=\"mr-2 text-sm font-semibold leading-none text-white md:text-base white\">\n              New Store Now Open\n            </h2>\n            <Icon icon=\"infonewstore\" className=\"h-4 md:h-6 fill-white\" />\n          </div>\n        </section>\n      ) : storeNowClosed.includes(whichstore) ? (\n        <section className=\"absolute right-0 z-10 flex items-end flex-1 mr-0 -mt-2 -bottom-9 sm:left-auto sm:right-0 sm:bottom-auto\">\n          <div className=\"flex items-center justify-start p-2 rounded-md shadow-lg bg-primary\">\n            <h2 className=\"mr-2 text-sm font-semibold leading-none text-white md:text-base white\">\n              Store Now Closed\n            </h2>\n            <Icon icon=\"infonewstore\" className=\"h-4 md:h-6 fill-white\" />\n          </div>\n        </section>\n      ) : null}\n    </>\n  )\n}\n\nexport default InfoMiniBanners\n","import React from 'react'\nimport Icon from '../components/Icon'\nimport { Link } from 'gatsby'\nconst InfoBannerHeader = ({ store }) => {\n  const whichstore = store\n  const topInfoOne = [449]\n  const topInfoTwo = [670]\n  const topInfoThree = [607]\n  const topInfoFour = [557]\n  const topInfoFive = [461]\n  const topInfoCafe = []\n  const topInfoMarketKitchen = []\n  const topInfoMarketStreet = []\n  const topInfoPharmacy = []\n  const topInfoDailyClosure = []\n  const topInfoFlorists = []\n\n  return (\n    <section className=\"relative flex-1\">\n      {topInfoOne.includes(whichstore) ? (\n        <>\n          <div className=\"flex absolute right-0 left-auto -mt-2 -mr-2 rounded-full shadow-lg\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 items-end sm:ml-6 sm:justify-end\">\n            <div className=\"flex flex-col flex-1 justify-center items-start p-2 pr-4 bg-white rounded-md shadow-lg sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-base font-semibold leading-tight lg:text-lg text-primary\">\n                  This store is currently closed for redevelopment\n                </h2>\n              </div>\n              <p className=\"text-sm font-semibold\">\n                Your nearest Morrisons are now:\n                <br />\n              </p>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/205\"\n              >\n                Morrisons Ealing, W5 2ND\n              </Link>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/549\"\n              >\n                Morrisons Harrow, HA1 4BB\n              </Link>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/382/brentford-waterside\"\n              >\n                Morrisons Brentford Waterside, TW8 8EW\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : topInfoTwo.includes(whichstore) ? (\n        <>\n          <div className=\"flex absolute right-0 left-auto -mt-2 -mr-2 rounded-full shadow-lg\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 items-end sm:ml-6 sm:justify-end\">\n            <div className=\"flex flex-col flex-1 justify-center items-start p-2 pr-4 bg-white rounded-md shadow-lg sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-base font-semibold leading-tight lg:text-lg text-primary\">\n                  This store has now closed\n                </h2>\n              </div>\n              <p className=\"text-sm font-semibold\">\n                Thank you for your support and we look forward to serving you in\n                your nearest Morrisons store located at:\n                <br />\n              </p>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/649\"\n              >\n                Morrisons Bolsover, S44 6DJ\n              </Link>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/27\"\n              >\n                Morrisons Staveley, S43 3UL\n              </Link>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/101\"\n              >\n                Morrisons Sheffield - Halfway, S20 8GN\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : topInfoThree.includes(whichstore) ? (\n        <>\n          <div className=\"flex absolute right-0 left-auto -mt-2 -mr-2 rounded-full shadow-lg\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 items-end sm:ml-6 sm:justify-end\">\n            <div className=\"flex flex-col flex-1 justify-center items-start p-2 pr-4 bg-white rounded-md shadow-lg sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-base font-semibold leading-tight lg:text-lg text-primary\">\n                  Your Morrisons Royston is now closed\n                </h2>\n              </div>\n              <p className=\"text-sm font-semibold\">\n                Thank you for your support and we look forward to serving you in\n                your nearest Morrisons store located at:\n                <br />\n              </p>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/126\"\n              >\n                Morrisons Letchworth, SG6 3TS\n              </Link>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/118\"\n              >\n                Morrisons Cambourne, CB23 6EY\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : topInfoFour.includes(whichstore) ? (\n        <>\n          <div className=\"flex absolute right-0 left-auto -mt-2 -mr-2 rounded-full shadow-lg\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 items-end sm:ml-6 sm:justify-end\">\n            <div className=\"flex flex-col flex-1 justify-center items-start p-2 pr-4 bg-white rounded-md shadow-lg sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-base font-semibold leading-tight lg:text-lg text-primary\">\n                  This store has now closed\n                </h2>\n              </div>\n              <p className=\"text-sm font-semibold\">\n                Thank you for your support and we look forward to serving you in\n                your nearest Morrisons store located at:\n                <br />\n              </p>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/41/preston-riversway\"\n              >\n                Morrisons Preston Riversway, PR2 2YN\n              </Link>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/394/bamber-bridge\"\n              >\n                Morrisons Bamber Bridge, PR5 6TP\n              </Link>\n              <Link\n                className=\"text-sm font-semibold underline text-secondary\"\n                to=\"/151/leyland\"\n              >\n                Morrisons Leyland, PR25 3UR\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : topInfoFive.includes(whichstore) ? (\n        <>\n          <div className=\"flex absolute right-0 left-auto -mt-2 -mr-2 rounded-full shadow-lg\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 items-end sm:ml-6 sm:justify-end\">\n            <div className=\"flex flex-col flex-1 justify-center items-start p-2 pr-4 bg-white rounded-md shadow-lg sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-base font-semibold leading-tight lg:text-lg text-primary\">\n                  Morrisons Manchester - Grafton Street\n                </h2>\n              </div>\n              <p className=\"text-sm font-bold\">\n                Your new look Grafton Street store is now open\n              </p>\n            </div>\n          </section>\n        </>\n      ) : null}\n    </section>\n  )\n}\n\nexport default InfoBannerHeader\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport Container from './Container'\nimport Flower from '../assets/icons/flower.svg'\nimport BreadcrumbInHeader from '../components/BreadcrumbInHeader'\nimport InfoMiniBanners from './InfoMiniBanners'\nimport InfoBannerHeader from '../components/InfoBannerHeader'\n\nfunction removeMorrisonsDaily(text) {\n  const phraseToRemove = 'morrisons daily'\n  const regex = new RegExp(phraseToRemove, 'gi')\n  return text.replace(regex, '').trim()\n}\n\nconst hoursOverride = [] //Override these stores hours with a different message\n\nconst ArticleHeader = ({\n  currentCategory,\n  currentPage,\n  currentID,\n  dateToday,\n  region,\n  category,\n}) => {\n  return (\n    <div\n      className={`relative py-6 md:pt-6 md:pb-10  ${\n        category === 'McColls'\n          ? 'bg-gradient-r-primary md:pb-6'\n          : 'bg-gradient-r-primary'\n      }`}\n    >\n      <Container>\n        <section className=\"relative z-10 flex flex-wrap sm:flex-nowrap\">\n          <div className=\"w-full mb-2 sm:mb-0 sm:w-auto\">\n            <BreadcrumbInHeader\n              storeType={category}\n              category={currentCategory}\n              currentPage={currentPage}\n            />\n            <h1 className=\"text-3xl leading-none text-white \">\n              <span className=\"hidden\">Details for:</span>\n              {category !== 'McColls' ? (\n                <>\n                  <span className=\"block mb-4 font-semibold\">\n                    {currentCategory}\n                  </span>\n                  {hoursOverride.includes(currentID) ? (\n                    <span className=\"block text-lg \">\n                      {/* New Store Opening 12/12/2024 */}\n                    </span>\n                  ) : (\n                    <span className=\"block text-lg \">{dateToday}</span>\n                  )}\n                  {/* HIDE OPENING TIMES  */}\n                  {/* {currentID !== 382 ? (\n                    <span className=\"block text-lg \">{dateToday}</span>\n                  ) : null} */}\n                </>\n              ) : (\n                <span className=\"flex-wrap items-center block -mb-2 sm:-mb-0 lg:-mt-2 md:flex\">\n                  <span className=\"flex flex-wrap items-center w-full mb-4 md:flex-nowrap\">\n                    <span className=\"inline-block mr-2 text-3xl font-bold text-white lg:text-4xl\">\n                      Morrisons\n                    </span>\n                    {'  '}\n                    <span className=\"inline-block mr-2 text-3xl font-medium lg:text-4xl text-tertiary\">\n                      {' '}\n                      Daily\n                    </span>\n\n                    <span className=\"block w-full text-2xl font-semibold lg:text-3xl md:w-auto \">\n                      {' '}\n                      {removeMorrisonsDaily(currentCategory)}\n                    </span>\n                  </span>\n                  {hoursOverride.includes(currentID) ? (\n                    <span className=\"block text-lg font-semibold\">\n                      {/* New Store Opening 26/01/2024 */}\n                    </span>\n                  ) : (\n                    <span className=\"block text-lg font-semibold\">\n                      {dateToday}\n                    </span>\n                  )}\n                </span>\n              )}\n            </h1>\n            {(region === 'Morrisons Daily' ||\n              region === 'Morrisons Select' ||\n              category === 'Franchise') && (\n              <span className=\"block mt-2 text-base font-semibold leading-tight sm:text-lg text-tertiary\">\n                Please note this is a franchise store run by a third party\n              </span>\n            )}\n            {/* {category === 'McColls' && (\n              <span className=\"block mt-2 text-base font-semibold leading-tight sm:text-lg text-mccolls-secondary\">\n                Please note - Some McColl&apos;s are franchise stores run by a\n                third party\n              </span>\n            )} */}\n          </div>\n          <InfoMiniBanners store={currentID} />\n          <InfoBannerHeader store={currentID} />\n        </section>\n      </Container>\n      {category !== 'McColls' ?? (\n        <div className=\"absolute top-0 bottom-0 left-0 right-0 w-full overflow-hidden\">\n          <Flower className=\"h-64 ml-auto mr-0 lg:h-auto\" />\n        </div>\n      )}\n    </div>\n  )\n}\n\nArticleHeader.propTypes = {\n  currentCategory: PropTypes.string,\n  region: PropTypes.string,\n  category: PropTypes.string,\n}\n\nexport default ArticleHeader\n","/* eslint-disable */\nconst createSlug = string => {\n  const a =\n    'àáäâãåăæąçćčđďèéěėëêęğǵḧìíïîįłḿǹńňñòóöôœøṕŕřßşśšșťțùúüûǘůűūųẃẍÿýźžż·/_,:;'\n  const b =\n    'aaaaaaaaacccddeeeeeeegghiiiiilmnnnnooooooprrsssssttuuuuuuuuuwxyyzzz------'\n  const p = new RegExp(a.split('').join('|'), 'g')\n\n  return string\n    .toString()\n    .toLowerCase()\n    .replace(/\\s+/g, '-') // Replace spaces with -\n    .replace(p, c => b.charAt(a.indexOf(c))) // Replace special characters\n    .replace(/&/g, '-and-') // Replace & with 'and'\n    .replace(/[^\\w\\-]+/g, '') // Remove all non-word characters\n    .replace(/\\-\\-+/g, '-') // Replace multiple - with single -\n    .replace(/^-+/, '') // Trim - from start of text\n    .replace(/-+$/, '') // Trim - from end of text\n}\n\nconst formatUrl = text => text.replace(/\\s+/g, '-').toLowerCase()\n\nmodule.exports = {\n  createSlug,\n  formatUrl,\n}\n","import { useStaticQuery, graphql } from 'gatsby'\nimport { GatsbyImage, getImage } from 'gatsby-plugin-image'\nimport React from 'react'\n\nconst StoreHighlightImage = ({ name }) => {\n  const data = useStaticQuery(graphql`\n    query {\n      amazonLockers: file(relativePath: { eq: \"amazonLockers.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      asianClothing: file(relativePath: { eq: \"asianClothing.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      butcher: file(relativePath: { eq: \"butcher.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      CarStoreConnect: file(relativePath: { eq: \"CarStoreConnect.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      clickAndCollect: file(relativePath: { eq: \"clickAndCollect.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      coffeeToGo: file(relativePath: { eq: \"coffeeToGo.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      doddleParcels: file(relativePath: { eq: \"doddleParcels.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      fishmonger: file(relativePath: { eq: \"fishmonger.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      flowerWrapping: file(relativePath: { eq: \"flowerWrapping.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      freeFrom: file(relativePath: { eq: \"freeFrom.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      freshToGo: file(relativePath: { eq: \"freshToGo.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      halalCounter: file(relativePath: { eq: \"halalCounter.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      hotFood: file(relativePath: { eq: \"hotFood.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      makeYourOwnPizza: file(relativePath: { eq: \"makeYourOwnPizza.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      marketKitchen: file(relativePath: { eq: \"marketKitchen.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      newLookCafe: file(relativePath: { eq: \"newLookCafe.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      nutmeg: file(relativePath: { eq: \"nutmeg.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      nutmegWomens: file(relativePath: { eq: \"nutmegWomens.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      pancakes: file(relativePath: { eq: \"pancakes.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      partyShop: file(relativePath: { eq: \"partyShop.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      saladBar: file(relativePath: { eq: \"saladBar.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      sushi: file(relativePath: { eq: \"sushi.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      timpson: file(relativePath: { eq: \"timpson.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      wifi: file(relativePath: { eq: \"wifi.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      worldFoods: file(relativePath: { eq: \"worldFoods.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      brew: file(relativePath: { eq: \"brew.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      charAndSmoke: file(relativePath: { eq: \"charAndSmoke.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      bespokeHighlights: file(relativePath: { eq: \"bespokeHighlights.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      electricVehicleCharging: file(\n        relativePath: { eq: \"electricVehicleCharging.jpg\" }\n      ) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n    }\n  `)\n\n  const image = getImage(data?.[name])\n\n  return <GatsbyImage image={image} alt={`${name} image`} />\n}\n\nexport default StoreHighlightImage\n","import React from 'react'\nimport StoreHighlightImage from './StoreHighlightImage'\n\nconst StoreHighlights = ({ highlights }) => {\n  return !highlights?.length ? null : (\n    <>\n      <div className=\"mb-2\">\n        <h3 className=\"text-xl font-semibold\">Store Highlights</h3>\n      </div>\n      <section className=\"flex flex-wrap mb-6 -mx-3\">\n        {highlights?.map(highlight => {\n          return highlight?.serviceName !== 'Bespoke Highlights' ? (\n            <article\n              key={highlight.name}\n              className=\"flex flex-wrap w-1/2 px-3 mx-0 mb-6 lg:w-1/4\"\n            >\n              <section className=\"flex flex-col w-full h-full bg-white rounded-b-lg shadow-md\">\n                <StoreHighlightImage name={highlight?.name} />\n\n                <div className=\"p-3\">\n                  <h2 className=\"text-lg font-semibold\">\n                    {highlight?.serviceName}\n                  </h2>\n                </div>\n              </section>\n            </article>\n          ) : null\n        })}\n      </section>\n    </>\n  )\n}\n\nexport default StoreHighlights\n","import React from 'react'\n\nconst InStoreServices = ({ services }) => {\n  return !services?.length ? null : (\n    <section className=\"mb-4\">\n      <div className=\"mb-2\">\n        <h3 className=\"text-xl font-semibold\">\n          In-store services &amp; facilities\n        </h3>\n      </div>\n      <section className=\"flex flex-wrap -mx-3\">\n        {services.map(s => {\n          return s?.serviceName !== 'Bespoke Highlights' ? (\n            <article\n              key={s.name}\n              title={s.serviceName}\n              className=\"flex flex-col items-center justify-start w-1/4 px-3 mx-0 mb-8 lg:w-1/5\"\n            >\n              <span\n                className={`icon icon-Generic icon-${s.name}  text-4xl mb-2`}\n              ></span>\n              <span className={'text-base text-center leading-tight'}>\n                {s.serviceName}\n              </span>\n            </article>\n          ) : null\n        })}\n      </section>\n    </section>\n  )\n}\n\nexport default InStoreServices\n","import React from 'react'\nimport { Link } from 'gatsby'\nimport { useStaticQuery, graphql } from 'gatsby'\nimport { GatsbyImage, getImage } from 'gatsby-plugin-image'\n\nconst InfoBannerSide = ({ store }) => {\n  const data = useStaticQuery(graphql`\n    query {\n      pharmacy: file(relativePath: { eq: \"pharmacy.png\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      cafe: file(relativePath: { eq: \"cafe.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n    }\n  `)\n  const imageOne = getImage(data?.pharmacy)\n  const sideBannerOne = [12]\n\n  return (\n    <>\n      {sideBannerOne.includes(store) ? (\n        <section className=\"mb-4\">\n          <Link\n            href=\"tel:020 74851241\"\n            target=\"_blank\"\n            className=\"flex flex-col flex-1 p-4 text-white no-underline\"\n            style={{ backgroundColor: '#00a5aa' }}\n          >\n            <GatsbyImage\n              image={imageOne}\n              alt=\"Morrisons Pharmacy\"\n              style={{ maxWidth: '220px' }}\n            />\n            <div className=\"my-1\">\n              <p className=\"text-base font-semibold\">\n                Our new look Pharmacy is available across the road at\n              </p>\n            </div>\n\n            <p className=\"text-lg font-bold\">66 Chalk Farm Road, NW1 8AN</p>\n            <span className=\"text-lg font-bold underline\">\n              Phone: 020 74851241\n            </span>\n          </Link>\n        </section>\n      ) : null}\n    </>\n  )\n}\n\nexport default InfoBannerSide\n","import { useStaticQuery, graphql } from 'gatsby'\nimport { GatsbyImage, getImage } from 'gatsby-plugin-image'\nimport React from 'react'\n\nconst MarketingImage = ({ name, alt, ...props }) => {\n  const data = useStaticQuery(graphql`\n    query {\n      doorstep: file(relativePath: { eq: \"doorstep.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      foodtoorder: file(relativePath: { eq: \"foodtoorder.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      marketkitchen: file(relativePath: { eq: \"marketkitchen.jpg\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      coronationlogo: file(relativePath: { eq: \"coronation-logo.png\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n      coronationgflags: file(relativePath: { eq: \"coronation-flags.png\" }) {\n        childImageSharp {\n          gatsbyImageData(layout: FULL_WIDTH, placeholder: BLURRED)\n        }\n      }\n    }\n  `)\n\n  const image = getImage(data?.[name])\n\n  return <GatsbyImage image={image} alt={alt} {...props} />\n}\n\nexport default MarketingImage\n","import React from 'react'\nimport MarketingImage from './MarketingImage'\nimport Icon from '../components/Icon'\n\nconst MarketingOne = ({ services }) => {\n  const whichService = 'marketKitchen'\n\n  return (\n    <div className=\"relative flex flex-col flex-1 overflow-hidden md:flex-row lg:flex-col\">\n      {services.some(service => service.name === whichService) ? (\n        <a\n          href=\"https://my.morrisons.com/market-kitchen/\"\n          target=\"_blank\"\n          rel=\"noreferrer\"\n          className=\"flex flex-1\"\n        >\n          <MarketingImage\n            name=\"marketkitchen\"\n            alt=\"Morrisons Market Kitchen\"\n            className=\"block w-full\"\n          />\n        </a>\n      ) : (\n        <a\n          href=\"https://my.morrisons.com/foodtoorder/\"\n          target=\"_blank\"\n          rel=\"noreferrer\"\n          className=\"relative flex justify-start flex-1 aspect-ratio-4/3 sm:aspect-ratio-21/9 lg:aspect-ratio-4/3\"\n        >\n          <MarketingImage\n            name=\"foodtoorder\"\n            alt=\"Morrisons Food To Order\"\n            className=\"z-0 block object-cover w-full h-full sm:w-1/2 lg:w-full\"\n            style={{ position: 'absolute' }}\n          />\n          <div className=\"absolute bottom-0 right-0 z-10 flex flex-col w-full p-4 lg:pt-3 xl:pt-4 sm:h-full sm:w-1/2 lg:w-full bg-secondary lg:h-auto\">\n            <div className=\"mb-2\">\n              <h4 className=\"text-xl font-semibold leading-none text-white\">\n                Morrisons Food To Order\n              </h4>\n            </div>\n            <div className=\"flex-1 mb-3\">\n              <p className=\"text-base font-semibold leading-tight text-white md:text-sm xl:text-base\">\n                Make the most of your occasion, big or small, with our selection\n                of great value Food to Order.\n              </p>\n            </div>\n            <span className=\"flex items-center justify-end text-white\">\n              <span className=\"pr-2 font-semibold leading-tight whitespace-nowrap\">\n                Find Out More\n              </span>\n              <Icon icon=\"forwardArrow\" className=\"fill-current\" />\n            </span>\n          </div>\n        </a>\n      )}\n    </div>\n  )\n}\n\nexport default MarketingOne\n","import React from 'react'\nimport Icon from '../components/Icon'\nimport MarketingImage from './MarketingImage'\n\nconst MarketingTwo = () => {\n  return (\n    <>\n      <div className=\"relative flex flex-col flex-1 overflow-hidden md:flex-row lg:flex-col\">\n        <a\n          href=\"https://www.morrisons.com/help/morewaystoshop/\"\n          rel=\"noreferrer\"\n          target=\"_blank\"\n          className=\"relative flex justify-start flex-1 aspect-ratio-4/3 sm:aspect-ratio-21/9 lg:aspect-ratio-4/3\"\n        >\n          <MarketingImage\n            name=\"doorstep\"\n            alt=\"Morrisons Doorstep\"\n            className=\"z-0 block object-cover w-full h-full sm:w-1/2 lg:w-full\"\n            style={{ position: 'absolute' }}\n          />\n          <div className=\"absolute bottom-0 right-0 z-10 flex flex-col w-full p-4 lg:pt-3 xl:pt-4 sm:h-full sm:w-1/2 lg:w-full bg-secondary lg:h-auto\">\n            <div className=\"mb-2\">\n              <h4 className=\"text-xl font-semibold leading-none text-white\">\n                More Ways to shop\n              </h4>\n            </div>\n            <div className=\"flex-1 mb-3\">\n              <p className=\"text-base font-semibold leading-tight text-white md:text-sm xl:text-base\">\n                From Amazon to Deliveroo, check all our ways to get food, drink\n                and more to your door.\n              </p>\n            </div>\n            <span className=\"flex items-center justify-end text-white\">\n              <span className=\"pr-2 font-semibold leading-tight whitespace-nowrap\">\n                Find Out More\n              </span>\n              <Icon icon=\"forwardArrow\" className=\"fill-current\" />\n            </span>\n          </div>\n        </a>\n      </div>\n    </>\n  )\n}\n\nexport default MarketingTwo\n","import React from 'react'\nimport Icon from './Icon'\nimport { Link } from 'gatsby'\nconst OverrideBanner = ({\n  currentID,\n  address1,\n  address2,\n  address3,\n  address4,\n}) => {\n  const whichstore = currentID\n  const overrideBannerOne = [181]\n  const overrideBannerTwo = [527]\n  const overrideBannerThree = [479]\n  const overrideBannerFour = [493]\n  const overrideBannerFive = [520]\n\n  return (\n    <section className=\"relative flex-1\">\n      {overrideBannerOne.includes(whichstore) ? (\n        <>\n          <div className=\"absolute right-0 left-auto hidden -mt-2 -mr-2 rounded-full shadow-lg sm:flex\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 w-full\">\n            <div className=\"flex flex-col items-start justify-center flex-1 w-full p-4 bg-white rounded-md shadow-lg lg:p-6 sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-lg font-semibold leading-tight lg:text-xl text-primary\">\n                  Morrisons Bishopbriggs\n                </h2>\n              </div>\n              <p className=\"text-base font-semibold\">\n                Our new Bishopbriggs store\n                <span className=\"block font-bold\">Is now open.</span>\n              </p>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/488/glasgow-bishopbriggs\"\n              >\n                Click here for more details\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : overrideBannerTwo.includes(whichstore) ? (\n        <>\n          <div className=\"absolute right-0 left-auto hidden -mt-2 -mr-2 rounded-full shadow-lg sm:flex\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 w-full\">\n            <div className=\"flex flex-col items-start justify-center flex-1 w-full p-4 bg-white rounded-md shadow-lg lg:p-6 sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-lg font-semibold leading-tight lg:text-xl text-primary\">\n                  Morrisons Mitcham\n                </h2>\n              </div>\n              <p className=\"text-base font-semibold\">\n                Our Mitcham store closed on the 17th March 2023.\n                <span className=\"block font-bold\">\n                  Your nearest Morrisons is now\n                </span>\n              </p>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/411/wimbledon\"\n              >\n                Morrisons Wimbledon\n              </Link>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/576/croydon\"\n              >\n                Morrisons Croydon\n              </Link>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/318/sutton\"\n              >\n                Morrisons Sutton\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : overrideBannerThree.includes(whichstore) ? (\n        <>\n          <div className=\"absolute right-0 left-auto hidden -mt-2 -mr-2 rounded-full shadow-lg sm:flex\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 w-full\">\n            <div className=\"flex flex-col items-start justify-center flex-1 w-full p-4 bg-white rounded-md shadow-lg lg:p-6 sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-lg font-semibold leading-tight lg:text-xl text-primary\">\n                  Morrisons Brentford\n                </h2>\n              </div>\n              <p className=\"text-base font-semibold\">\n                This store closed on the 27th September 2023.\n                <span className=\"block font-bold\">\n                  Your new Morrisons Brentford Waterside store is now open...\n                </span>\n              </p>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/382/brentford-waterside\"\n              >\n                View Morrisons Brentford Waterside, TW8 8EW\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : overrideBannerFour.includes(whichstore) ? (\n        <>\n          <div className=\"absolute right-0 left-auto hidden -mt-2 -mr-2 rounded-full shadow-lg sm:flex\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 w-full\">\n            <div className=\"flex flex-col items-start justify-center flex-1 w-full p-4 bg-white rounded-md shadow-lg lg:p-6 sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-lg font-semibold leading-tight lg:text-xl text-primary\">\n                  Morrisons Bolton - Breightmet\n                </h2>\n              </div>\n              <p className=\"text-base font-semibold\">\n                Our Bolton - Breightmet store closed on the 17th September 2023.\n                <span className=\"block font-bold\">\n                  Your nearest Morrisons is now\n                </span>\n              </p>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/212/harwood\"\n              >\n                Morrisons Harwood\n              </Link>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/45/bolton\"\n              >\n                Morrisons Bolton\n              </Link>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/59/bolton-atlas-mills\"\n              >\n                Morrisons Bolton - Atlas Mills\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : overrideBannerFive.includes(whichstore) ? (\n        <>\n          <div className=\"absolute right-0 left-auto hidden -mt-2 -mr-2 rounded-full shadow-lg sm:flex\">\n            <Icon icon=\"info\" className=\"h-6 fill-primary\" />\n          </div>\n          <section className=\"flex flex-1 w-full\">\n            <div className=\"flex flex-col items-start justify-center flex-1 w-full p-4 bg-white rounded-md shadow-lg lg:p-6 sm:flex-initial\">\n              <div className=\"mb-1\">\n                <h2 className=\"text-lg font-semibold leading-tight lg:text-xl text-primary\">\n                  Morrisons Faversham\n                </h2>\n              </div>\n              <p className=\"text-base font-semibold\">\n                Our Faversham store closed on the 17th September 2023.\n                <span className=\"block font-bold\">\n                  Your nearest Morrisons is now\n                </span>\n              </p>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/558/sittingbourne\"\n              >\n                Morrisons Sittingbourne\n              </Link>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/293/canterbury\"\n              >\n                Morrisons Canterbury\n              </Link>\n              <Link\n                className=\"text-base font-semibold underline text-secondary\"\n                to=\"/572/isle-of-sheppey\"\n              >\n                Morrisons Isle of Sheppey\n              </Link>\n            </div>\n          </section>\n        </>\n      ) : null}\n    </section>\n  )\n}\n\nexport default OverrideBanner\n","import React from 'react'\nimport PropTypes from 'prop-types'\n\nconst HelpDetails = ({ pharmacy, category, telephone }) => {\n  return (\n    <>\n      <section className=\"p-2 mb-4 border\">\n        {category === 'McColls' ? (\n          <>\n            <p className=\"font-semibold text-secondary\">\n              Telephone this store:\n            </p>\n            <a href={`tel:${telephone}`}>{telephone}</a>\n            <p className=\"font-semibold text-secondary\">\n              For Morrisons Daily assistance or feedback\n            </p>\n            <a href=\"https://www.morrisons.com/help/morrisons-daily/\">\n              Visit our Help Hub\n            </a>\n          </>\n        ) : (\n          <>\n            <p className=\"font-semibold text-secondary\">\n              For Store assistance or feedback\n            </p>\n            <a href=\"https://www.morrisons.com/help/in-store-experience/\">\n              Visit our Help Hub\n            </a>\n            <p className=\"mt-2 font-semibold text-secondary\">\n              For Doorstep Deliveries call\n            </p>\n            <a href=\"tel:0345 6116111\">0345 6116111 option 5</a>\n\n            <p className=\"mt-2 font-semibold text-secondary\">\n              For Cafe Takeaway\n            </p>\n            <a\n              href=\"https://my.morrisons.com/morrisons-cafe/\"\n              target=\"_blank\"\n              rel=\"noreferrer\"\n            >\n              Click Here\n            </a>\n            {pharmacy && (\n              <>\n                <p className=\"mt-2 font-semibold text-secondary\">Pharmacy</p>\n                <a href={`tel:${pharmacy}`}>{pharmacy}</a>\n              </>\n            )}\n          </>\n        )}\n      </section>\n    </>\n  )\n}\nHelpDetails.propTypes = {\n  pharmacy: PropTypes.string,\n  category: PropTypes.string,\n  telephone: PropTypes.string,\n}\n\nexport default HelpDetails\n","import React from 'react'\nimport { Link } from 'gatsby'\nimport { createSlug } from '../core/urls'\nimport { formatOpeningTimeDays, getTodaysDate } from '../core'\n\nconst getStoreType = storeType =>\n  ({\n    Franchise: 'Franchise',\n    McColls: 'Morrisons Daily',\n    GasStation: 'Petrol Station',\n    Morrisons: 'Supermarket',\n  }?.[storeType])\nconst NearbyStores = ({ stores, isMorrisonsDaily }) => {\n  return !stores?.length ? null : (\n    <section className=\"w-full my-8 \">\n      <div className=\"mb-2\">\n        <h3 className=\"text-xl font-semibold\">Nearby Stores</h3>\n      </div>\n      <section className=\"flex flex-col w-full gap-4 lg:flex-row \">\n        {stores.map(store => {\n          const specialOpeningTime = store?.specialOpeningTimes?.find(\n            times => times.name === 'supermarket'\n          )\n          const openingTimes = formatOpeningTimeDays(store?.openingTimes)\n          const dateToday = getTodaysDate(specialOpeningTime, openingTimes)\n          return (\n            <section\n              key={store.name}\n              itemType=\"https://schema.org/LocalBusiness\"\n              className={`relative lg:w-1/3  border border-body-lightest hover:bg-primary-lighter bg-white\n`}\n            >\n              <Link to={`/${store.name}/${createSlug(store.storeName)}`}>\n                <section className=\"flex flex-col h-full p-4 \">\n                  <p className=\"mb-2 text-xs uppercase\">\n                    {getStoreType(store.storeType?.replace(/\\s/g, ''))}\n                  </p>\n                  <div>\n                    <div className=\"flex items-start justify-between flex-1\">\n                      <div className=\"flex pr-3 mb-2\">\n                        <h3\n                          className={`text-lg font-semibold leading-none  text-secondary `}\n                        >\n                          {store.storeName}\n                        </h3>\n                      </div>\n                    </div>\n                    <section\n                      itemType=\"schema.org/PostalAddress\"\n                      className=\"my-2 clear-left\"\n                    >\n                      <p className=\"text-base\">\n                        {store.address?.addressLine1} <br />\n                        {store?.address.postcode}\n                      </p>\n                    </section>\n                  </div>\n                  <section\n                    itemProp=\"openingHours\"\n                    className=\"mt-auto text-base font-semibold text-primary\"\n                  >\n                    {dateToday ?? null}\n                  </section>\n                </section>\n              </Link>\n            </section>\n          )\n        })}\n      </section>\n    </section>\n  )\n}\nexport default NearbyStores\n","import { createElement, PureComponent, createContext, useState, Fragment } from 'react';\nfunction _classCallCheck(instance, Constructor) {\n  if (!(instance instanceof Constructor)) {\n    throw new TypeError(\"Cannot call a class as a function\");\n  }\n}\nfunction _defineProperties(target, props) {\n  for (var i = 0; i < props.length; i++) {\n    var descriptor = props[i];\n    descriptor.enumerable = descriptor.enumerable || false;\n    descriptor.configurable = true;\n    if (\"value\" in descriptor) descriptor.writable = true;\n    Object.defineProperty(target, descriptor.key, descriptor);\n  }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n  if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n  if (staticProps) _defineProperties(Constructor, staticProps);\n  return Constructor;\n}\nfunction _defineProperty(obj, key, value) {\n  if (key in obj) {\n    Object.defineProperty(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n  return obj;\n}\nfunction _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n    return target;\n  };\n  return _extends.apply(this, arguments);\n}\nfunction ownKeys(object, enumerableOnly) {\n  var keys = Object.keys(object);\n  if (Object.getOwnPropertySymbols) {\n    var symbols = Object.getOwnPropertySymbols(object);\n    if (enumerableOnly) symbols = symbols.filter(function (sym) {\n      return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n    });\n    keys.push.apply(keys, symbols);\n  }\n  return keys;\n}\nfunction _objectSpread2(target) {\n  for (var i = 1; i < arguments.length; i++) {\n    var source = arguments[i] != null ? arguments[i] : {};\n    if (i % 2) {\n      ownKeys(Object(source), true).forEach(function (key) {\n        _defineProperty(target, key, source[key]);\n      });\n    } else if (Object.getOwnPropertyDescriptors) {\n      Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n    } else {\n      ownKeys(Object(source)).forEach(function (key) {\n        Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n      });\n    }\n  }\n  return target;\n}\nfunction _inherits(subClass, superClass) {\n  if (typeof superClass !== \"function\" && superClass !== null) {\n    throw new TypeError(\"Super expression must either be null or a function\");\n  }\n  subClass.prototype = Object.create(superClass && superClass.prototype, {\n    constructor: {\n      value: subClass,\n      writable: true,\n      configurable: true\n    }\n  });\n  if (superClass) _setPrototypeOf(subClass, superClass);\n}\nfunction _getPrototypeOf(o) {\n  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n    return o.__proto__ || Object.getPrototypeOf(o);\n  };\n  return _getPrototypeOf(o);\n}\nfunction _setPrototypeOf(o, p) {\n  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n    o.__proto__ = p;\n    return o;\n  };\n  return _setPrototypeOf(o, p);\n}\nfunction _isNativeReflectConstruct() {\n  if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n  if (Reflect.construct.sham) return false;\n  if (typeof Proxy === \"function\") return true;\n  try {\n    Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n    return true;\n  } catch (e) {\n    return false;\n  }\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n  return target;\n}\nfunction _objectWithoutProperties(source, excluded) {\n  if (source == null) return {};\n  var target = _objectWithoutPropertiesLoose(source, excluded);\n  var key, i;\n  if (Object.getOwnPropertySymbols) {\n    var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n    for (i = 0; i < sourceSymbolKeys.length; i++) {\n      key = sourceSymbolKeys[i];\n      if (excluded.indexOf(key) >= 0) continue;\n      if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n      target[key] = source[key];\n    }\n  }\n  return target;\n}\nfunction _assertThisInitialized(self) {\n  if (self === void 0) {\n    throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n  }\n  return self;\n}\nfunction _possibleConstructorReturn(self, call) {\n  if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n    return call;\n  }\n  return _assertThisInitialized(self);\n}\nfunction _createSuper(Derived) {\n  var hasNativeReflectConstruct = _isNativeReflectConstruct();\n  return function _createSuperInternal() {\n    var Super = _getPrototypeOf(Derived),\n      result;\n    if (hasNativeReflectConstruct) {\n      var NewTarget = _getPrototypeOf(this).constructor;\n      result = Reflect.construct(Super, arguments, NewTarget);\n    } else {\n      result = Super.apply(this, arguments);\n    }\n    return _possibleConstructorReturn(this, result);\n  };\n}\nfunction _slicedToArray(arr, i) {\n  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\nfunction _toConsumableArray(arr) {\n  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\nfunction _arrayWithoutHoles(arr) {\n  if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\nfunction _arrayWithHoles(arr) {\n  if (Array.isArray(arr)) return arr;\n}\nfunction _iterableToArray(iter) {\n  if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\nfunction _iterableToArrayLimit(arr, i) {\n  if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n  var _arr = [];\n  var _n = true;\n  var _d = false;\n  var _e = undefined;\n  try {\n    for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n      _arr.push(_s.value);\n      if (i && _arr.length === i) break;\n    }\n  } catch (err) {\n    _d = true;\n    _e = err;\n  } finally {\n    try {\n      if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n    } finally {\n      if (_d) throw _e;\n    }\n  }\n  return _arr;\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n  if (!o) return;\n  if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n  var n = Object.prototype.toString.call(o).slice(8, -1);\n  if (n === \"Object\" && o.constructor) n = o.constructor.name;\n  if (n === \"Map\" || n === \"Set\") return Array.from(o);\n  if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n  if (len == null || len > arr.length) len = arr.length;\n  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n  return arr2;\n}\nfunction _nonIterableSpread() {\n  throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _nonIterableRest() {\n  throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nvar AccordionStore = function AccordionStore(_ref) {\n  var _this = this;\n  var _ref$expanded = _ref.expanded,\n    _expanded = _ref$expanded === void 0 ? [] : _ref$expanded,\n    _ref$allowMultipleExp = _ref.allowMultipleExpanded,\n    allowMultipleExpanded = _ref$allowMultipleExp === void 0 ? false : _ref$allowMultipleExp,\n    _ref$allowZeroExpande = _ref.allowZeroExpanded,\n    allowZeroExpanded = _ref$allowZeroExpande === void 0 ? false : _ref$allowZeroExpande;\n  _classCallCheck(this, AccordionStore);\n  _defineProperty(this, \"expanded\", void 0);\n  _defineProperty(this, \"allowMultipleExpanded\", void 0);\n  _defineProperty(this, \"allowZeroExpanded\", void 0);\n  _defineProperty(this, \"toggleExpanded\", function (uuid) {\n    if (_this.isItemDisabled(uuid)) {\n      return _this;\n    }\n    var isExpanded = _this.isItemExpanded(uuid);\n    if (!isExpanded) {\n      return _this.augment({\n        expanded: _this.allowMultipleExpanded ? [].concat(_toConsumableArray(_this.expanded), [uuid]) : [uuid]\n      });\n    } else {\n      return _this.augment({\n        expanded: _this.expanded.filter(function (expandedUuid) {\n          return expandedUuid !== uuid;\n        })\n      });\n    }\n  });\n  _defineProperty(this, \"isItemDisabled\", function (uuid) {\n    var isExpanded = _this.isItemExpanded(uuid);\n    var isOnlyOneExpanded = _this.expanded.length === 1;\n    return Boolean(isExpanded && !_this.allowZeroExpanded && isOnlyOneExpanded);\n  });\n  _defineProperty(this, \"isItemExpanded\", function (uuid) {\n    return _this.expanded.indexOf(uuid) !== -1;\n  });\n  _defineProperty(this, \"getPanelAttributes\", function (uuid, dangerouslySetExpanded) {\n    var expanded = dangerouslySetExpanded !== null && dangerouslySetExpanded !== void 0 ? dangerouslySetExpanded : _this.isItemExpanded(uuid);\n    return {\n      role: _this.allowMultipleExpanded ? undefined : 'region',\n      'aria-hidden': _this.allowMultipleExpanded ? !expanded : undefined,\n      'aria-labelledby': _this.getButtonId(uuid),\n      id: _this.getPanelId(uuid),\n      hidden: expanded ? undefined : true\n    };\n  });\n  _defineProperty(this, \"getHeadingAttributes\", function () {\n    return {\n      role: 'heading'\n    };\n  });\n  _defineProperty(this, \"getButtonAttributes\", function (uuid, dangerouslySetExpanded) {\n    var expanded = dangerouslySetExpanded !== null && dangerouslySetExpanded !== void 0 ? dangerouslySetExpanded : _this.isItemExpanded(uuid);\n    var disabled = _this.isItemDisabled(uuid);\n    return {\n      id: _this.getButtonId(uuid),\n      'aria-disabled': disabled,\n      'aria-expanded': expanded,\n      'aria-controls': _this.getPanelId(uuid),\n      role: 'button',\n      tabIndex: 0\n    };\n  });\n  _defineProperty(this, \"getPanelId\", function (uuid) {\n    return \"accordion__panel-\".concat(uuid);\n  });\n  _defineProperty(this, \"getButtonId\", function (uuid) {\n    return \"accordion__heading-\".concat(uuid);\n  });\n  _defineProperty(this, \"augment\", function (args) {\n    return new AccordionStore(_objectSpread2({\n      expanded: _this.expanded,\n      allowMultipleExpanded: _this.allowMultipleExpanded,\n      allowZeroExpanded: _this.allowZeroExpanded\n    }, args));\n  });\n  this.expanded = _expanded;\n  this.allowMultipleExpanded = allowMultipleExpanded;\n  this.allowZeroExpanded = allowZeroExpanded;\n};\nvar Context = /*#__PURE__*/createContext(null);\nvar Provider = /*#__PURE__*/function (_React$PureComponent) {\n  _inherits(Provider, _React$PureComponent);\n  var _super = _createSuper(Provider);\n  function Provider() {\n    var _this;\n    _classCallCheck(this, Provider);\n    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n    _this = _super.call.apply(_super, [this].concat(args));\n    _defineProperty(_assertThisInitialized(_this), \"state\", new AccordionStore({\n      expanded: _this.props.preExpanded,\n      allowMultipleExpanded: _this.props.allowMultipleExpanded,\n      allowZeroExpanded: _this.props.allowZeroExpanded\n    }));\n    _defineProperty(_assertThisInitialized(_this), \"toggleExpanded\", function (key) {\n      _this.setState(function (state) {\n        return state.toggleExpanded(key);\n      }, function () {\n        if (_this.props.onChange) {\n          _this.props.onChange(_this.state.expanded);\n        }\n      });\n    });\n    _defineProperty(_assertThisInitialized(_this), \"isItemDisabled\", function (key) {\n      return _this.state.isItemDisabled(key);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"isItemExpanded\", function (key) {\n      return _this.state.isItemExpanded(key);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"getPanelAttributes\", function (key, dangerouslySetExpanded) {\n      return _this.state.getPanelAttributes(key, dangerouslySetExpanded);\n    });\n    _defineProperty(_assertThisInitialized(_this), \"getHeadingAttributes\", function () {\n      // uuid: UUID\n      return _this.state.getHeadingAttributes();\n    });\n    _defineProperty(_assertThisInitialized(_this), \"getButtonAttributes\", function (key, dangerouslySetExpanded) {\n      return _this.state.getButtonAttributes(key, dangerouslySetExpanded);\n    });\n    return _this;\n  }\n  _createClass(Provider, [{\n    key: \"render\",\n    value: function render() {\n      var _this$state = this.state,\n        allowZeroExpanded = _this$state.allowZeroExpanded,\n        allowMultipleExpanded = _this$state.allowMultipleExpanded;\n      return /*#__PURE__*/createElement(Context.Provider, {\n        value: {\n          allowMultipleExpanded: allowMultipleExpanded,\n          allowZeroExpanded: allowZeroExpanded,\n          toggleExpanded: this.toggleExpanded,\n          isItemDisabled: this.isItemDisabled,\n          isItemExpanded: this.isItemExpanded,\n          getPanelAttributes: this.getPanelAttributes,\n          getHeadingAttributes: this.getHeadingAttributes,\n          getButtonAttributes: this.getButtonAttributes\n        }\n      }, this.props.children || null);\n    }\n  }]);\n  return Provider;\n}(PureComponent);\n_defineProperty(Provider, \"defaultProps\", {\n  allowMultipleExpanded: false,\n  allowZeroExpanded: false\n});\nvar Consumer = /*#__PURE__*/function (_React$PureComponent2) {\n  _inherits(Consumer, _React$PureComponent2);\n  var _super2 = _createSuper(Consumer);\n  function Consumer() {\n    var _this2;\n    _classCallCheck(this, Consumer);\n    for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n      args[_key3] = arguments[_key3];\n    }\n    _this2 = _super2.call.apply(_super2, [this].concat(args));\n    _defineProperty(_assertThisInitialized(_this2), \"renderChildren\", function (container) {\n      return container ? _this2.props.children(container) : null;\n    });\n    return _this2;\n  }\n  _createClass(Consumer, [{\n    key: \"render\",\n    value: function render() {\n      return /*#__PURE__*/createElement(Context.Consumer, null, this.renderChildren);\n    }\n  }]);\n  return Consumer;\n}(PureComponent);\nvar Accordion = function Accordion(_ref) {\n  var _ref$className = _ref.className,\n    className = _ref$className === void 0 ? 'accordion' : _ref$className,\n    allowMultipleExpanded = _ref.allowMultipleExpanded,\n    allowZeroExpanded = _ref.allowZeroExpanded,\n    onChange = _ref.onChange,\n    preExpanded = _ref.preExpanded,\n    rest = _objectWithoutProperties(_ref, [\"className\", \"allowMultipleExpanded\", \"allowZeroExpanded\", \"onChange\", \"preExpanded\"]);\n  return /*#__PURE__*/createElement(Provider, {\n    preExpanded: preExpanded,\n    allowMultipleExpanded: allowMultipleExpanded,\n    allowZeroExpanded: allowZeroExpanded,\n    onChange: onChange\n  }, /*#__PURE__*/createElement(\"div\", _extends({\n    \"data-accordion-component\": \"Accordion\",\n    className: className\n  }, rest)));\n};\nvar DisplayName;\n(function (DisplayName) {\n  DisplayName[\"Accordion\"] = \"Accordion\";\n  DisplayName[\"AccordionItem\"] = \"AccordionItem\";\n  DisplayName[\"AccordionItemButton\"] = \"AccordionItemButton\";\n  DisplayName[\"AccordionItemHeading\"] = \"AccordionItemHeading\";\n  DisplayName[\"AccordionItemPanel\"] = \"AccordionItemPanel\";\n})(DisplayName || (DisplayName = {}));\nvar DisplayName$1 = DisplayName;\nvar DEFAULT = 0;\nvar counter = DEFAULT;\nfunction nextUuid() {\n  var current = counter;\n  counter = counter + 1;\n  return \"raa-\".concat(current);\n}\nfunction resetNextUuid() {\n  counter = DEFAULT;\n} // HTML5 ids allow all unicode characters, except for ASCII whitespaces\n// https://infra.spec.whatwg.org/#ascii-whitespace\n// eslint-disable-next-line no-control-regex\n\nvar idRegex = /[\\u0009\\u000a\\u000c\\u000d\\u0020]/g;\nfunction assertValidHtmlId(htmlId) {\n  if (htmlId === '' || idRegex.test(htmlId)) {\n    console.error(\"uuid must be a valid HTML5 id but was given \\\"\".concat(htmlId, \"\\\", ASCII whitespaces are forbidden\"));\n    return false;\n  }\n  return true;\n}\nvar Context$1 = /*#__PURE__*/createContext(null);\nvar Provider$1 = function Provider(_ref) {\n  var children = _ref.children,\n    uuid = _ref.uuid,\n    accordionContext = _ref.accordionContext,\n    dangerouslySetExpanded = _ref.dangerouslySetExpanded;\n  var toggleExpanded = function toggleExpanded() {\n    accordionContext.toggleExpanded(uuid);\n  };\n  var renderChildren = function renderChildren(accordionContext) {\n    var expanded = dangerouslySetExpanded !== null && dangerouslySetExpanded !== void 0 ? dangerouslySetExpanded : accordionContext.isItemExpanded(uuid);\n    var disabled = accordionContext.isItemDisabled(uuid);\n    var panelAttributes = accordionContext.getPanelAttributes(uuid, dangerouslySetExpanded);\n    var headingAttributes = accordionContext.getHeadingAttributes(uuid);\n    var buttonAttributes = accordionContext.getButtonAttributes(uuid, dangerouslySetExpanded);\n    return /*#__PURE__*/createElement(Context$1.Provider, {\n      value: {\n        uuid: uuid,\n        expanded: expanded,\n        disabled: disabled,\n        toggleExpanded: toggleExpanded,\n        panelAttributes: panelAttributes,\n        headingAttributes: headingAttributes,\n        buttonAttributes: buttonAttributes\n      }\n    }, children);\n  };\n  return /*#__PURE__*/createElement(Consumer, null, renderChildren);\n};\nvar ProviderWrapper = function ProviderWrapper(props) {\n  return /*#__PURE__*/createElement(Consumer, null, function (accordionContext) {\n    return /*#__PURE__*/createElement(Provider$1, _extends({}, props, {\n      accordionContext: accordionContext\n    }));\n  });\n};\nvar Consumer$1 = function Consumer(_ref2) {\n  var children = _ref2.children;\n  var renderChildren = function renderChildren(container) {\n    return container ? children(container) : null;\n  };\n  return /*#__PURE__*/createElement(Context$1.Consumer, null, renderChildren);\n};\nvar AccordionItem = function AccordionItem(_ref) {\n  var customUuid = _ref.uuid,\n    dangerouslySetExpanded = _ref.dangerouslySetExpanded,\n    _ref$className = _ref.className,\n    className = _ref$className === void 0 ? 'accordion__item' : _ref$className,\n    activeClassName = _ref.activeClassName,\n    rest = _objectWithoutProperties(_ref, [\"uuid\", \"dangerouslySetExpanded\", \"className\", \"activeClassName\"]);\n  var _useState = useState(nextUuid()),\n    _useState2 = _slicedToArray(_useState, 1),\n    instanceUuid = _useState2[0];\n  var uuid = customUuid !== null && customUuid !== void 0 ? customUuid : instanceUuid;\n  var renderChildren = function renderChildren(itemContext) {\n    var expanded = itemContext.expanded;\n    var cx = expanded && activeClassName ? activeClassName : className;\n    return /*#__PURE__*/createElement(\"div\", _extends({\n      \"data-accordion-component\": \"AccordionItem\",\n      className: cx\n    }, rest));\n  };\n  assertValidHtmlId(uuid.toString());\n  if (rest.id) {\n    assertValidHtmlId(rest.id);\n  }\n  return /*#__PURE__*/createElement(ProviderWrapper, {\n    uuid: uuid,\n    dangerouslySetExpanded: dangerouslySetExpanded\n  }, /*#__PURE__*/createElement(Consumer$1, null, renderChildren));\n};\nAccordionItem.displayName = DisplayName$1.AccordionItem;\nfunction getClosestAccordion(el) {\n  return el && (el.matches('[data-accordion-component=\"Accordion\"]') ? el : getClosestAccordion(el.parentElement));\n}\nfunction getSiblingButtons(item) {\n  var parentAccordion = getClosestAccordion(item);\n  return parentAccordion && Array.from(parentAccordion.querySelectorAll('[data-accordion-component=\"AccordionItemButton\"]'));\n}\nfunction focusFirstSiblingOf(item) {\n  var siblings = getSiblingButtons(item) || [];\n  var first = siblings[0];\n  if (first) {\n    first.focus();\n  }\n}\nfunction focusLastSiblingOf(item) {\n  var siblings = getSiblingButtons(item) || [];\n  var last = siblings[siblings.length - 1];\n  if (last) {\n    last.focus();\n  }\n}\nfunction focusNextSiblingOf(item) {\n  var siblings = getSiblingButtons(item) || [];\n  var currentIndex = siblings.indexOf(item);\n  if (currentIndex !== -1) {\n    var next = siblings[currentIndex + 1];\n    if (next) {\n      next.focus();\n    }\n  }\n}\nfunction focusPreviousSiblingOf(item) {\n  var siblings = getSiblingButtons(item) || [];\n  var currentIndex = siblings.indexOf(item);\n  if (currentIndex !== -1) {\n    var previous = siblings[currentIndex - 1];\n    if (previous) {\n      previous.focus();\n    }\n  }\n}\nvar keycodes = {\n  END: 'End',\n  ENTER: 'Enter',\n  HOME: 'Home',\n  SPACE: ' ',\n  SPACE_DEPRECATED: 'Spacebar',\n  UP: 'ArrowUp',\n  DOWN: 'ArrowDown',\n  LEFT: 'ArrowLeft',\n  RIGHT: 'ArrowRight'\n};\nvar AccordionItemButton = function AccordionItemButton(_ref) {\n  var toggleExpanded = _ref.toggleExpanded,\n    _ref$className = _ref.className,\n    className = _ref$className === void 0 ? 'accordion__button' : _ref$className,\n    rest = _objectWithoutProperties(_ref, [\"toggleExpanded\", \"className\"]);\n  var handleKeyPress = function handleKeyPress(evt) {\n    var keyCode = evt.key;\n    if (keyCode === keycodes.ENTER || keyCode === keycodes.SPACE || keyCode === keycodes.SPACE_DEPRECATED) {\n      evt.preventDefault();\n      toggleExpanded();\n    }\n    /* The following block is ignored from test coverage because at time\n     * time of writing Jest/react-testing-library can not assert 'focus'\n     * functionality.\n     */\n    // istanbul ignore next\n\n    if (evt.target instanceof HTMLElement) {\n      switch (keyCode) {\n        case keycodes.HOME:\n          {\n            evt.preventDefault();\n            focusFirstSiblingOf(evt.target);\n            break;\n          }\n        case keycodes.END:\n          {\n            evt.preventDefault();\n            focusLastSiblingOf(evt.target);\n            break;\n          }\n        case keycodes.LEFT:\n        case keycodes.UP:\n          {\n            evt.preventDefault();\n            focusPreviousSiblingOf(evt.target);\n            break;\n          }\n        case keycodes.RIGHT:\n        case keycodes.DOWN:\n          {\n            evt.preventDefault();\n            focusNextSiblingOf(evt.target);\n            break;\n          }\n      }\n    }\n  };\n  if (rest.id) {\n    assertValidHtmlId(rest.id);\n  }\n  return /*#__PURE__*/createElement(\"div\", _extends({\n    className: className\n  }, rest, {\n    role: \"button\",\n    tabIndex: 0,\n    onClick: toggleExpanded,\n    onKeyDown: handleKeyPress,\n    \"data-accordion-component\": \"AccordionItemButton\"\n  }));\n};\nvar AccordionItemButtonWrapper = function AccordionItemButtonWrapper(props) {\n  return /*#__PURE__*/createElement(Consumer$1, null, function (itemContext) {\n    var toggleExpanded = itemContext.toggleExpanded,\n      buttonAttributes = itemContext.buttonAttributes;\n    return /*#__PURE__*/createElement(AccordionItemButton, _extends({\n      toggleExpanded: toggleExpanded\n    }, props, buttonAttributes));\n  });\n};\nvar defaultProps = {\n  className: 'accordion__heading',\n  'aria-level': 3\n};\nvar SPEC_ERROR = \"AccordionItemButton may contain only one child element, which must be an instance of AccordionItemButton.\\n\\nFrom the WAI-ARIA spec (https://www.w3.org/TR/wai-aria-practices-1.1/#accordion):\\n\\n\\u201CThe button element is the only element inside the heading element. That is, if there are other visually persistent elements, they are not included inside the heading element.\\u201D\\n\\n\";\nvar AccordionItemHeading = /*#__PURE__*/function (_React$PureComponent) {\n  _inherits(AccordionItemHeading, _React$PureComponent);\n  var _super = _createSuper(AccordionItemHeading);\n  function AccordionItemHeading() {\n    var _this;\n    _classCallCheck(this, AccordionItemHeading);\n    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n    _this = _super.call.apply(_super, [this].concat(args));\n    _defineProperty(_assertThisInitialized(_this), \"ref\", void 0);\n    _defineProperty(_assertThisInitialized(_this), \"setRef\", function (ref) {\n      _this.ref = ref;\n    });\n    return _this;\n  }\n  _createClass(AccordionItemHeading, [{\n    key: \"componentDidUpdate\",\n    value: function componentDidUpdate() {\n      AccordionItemHeading.VALIDATE(this.ref);\n    }\n  }, {\n    key: \"componentDidMount\",\n    value: function componentDidMount() {\n      AccordionItemHeading.VALIDATE(this.ref);\n    }\n  }, {\n    key: \"render\",\n    value: function render() {\n      return /*#__PURE__*/createElement(\"div\", _extends({\n        \"data-accordion-component\": \"AccordionItemHeading\"\n      }, this.props, {\n        ref: this.setRef\n      }));\n    }\n  }], [{\n    key: \"VALIDATE\",\n    value: function VALIDATE(ref) {\n      if (ref === undefined) {\n        throw new Error('ref is undefined');\n      }\n      if (!(ref.childElementCount === 1 && ref.firstElementChild && ref.firstElementChild.getAttribute('data-accordion-component') === 'AccordionItemButton')) {\n        throw new Error(SPEC_ERROR);\n      }\n    }\n  }]);\n  return AccordionItemHeading;\n}(PureComponent);\n_defineProperty(AccordionItemHeading, \"defaultProps\", defaultProps);\nvar AccordionItemHeadingWrapper = function AccordionItemHeadingWrapper(props) {\n  return /*#__PURE__*/createElement(Consumer$1, null, function (itemContext) {\n    var headingAttributes = itemContext.headingAttributes;\n    if (props.id) {\n      assertValidHtmlId(props.id);\n    }\n    return /*#__PURE__*/createElement(AccordionItemHeading, _extends({}, props, headingAttributes));\n  });\n};\nAccordionItemHeadingWrapper.displayName = DisplayName$1.AccordionItemHeading;\nvar AccordionItemPanel = function AccordionItemPanel(_ref) {\n  var _ref$className = _ref.className,\n    className = _ref$className === void 0 ? 'accordion__panel' : _ref$className,\n    id = _ref.id,\n    rest = _objectWithoutProperties(_ref, [\"className\", \"id\"]);\n  var renderChildren = function renderChildren(_ref2) {\n    var panelAttributes = _ref2.panelAttributes;\n    if (id) {\n      assertValidHtmlId(id);\n    }\n    return /*#__PURE__*/createElement(\"div\", _extends({\n      \"data-accordion-component\": \"AccordionItemPanel\",\n      className: className\n    }, rest, panelAttributes));\n  };\n  return /*#__PURE__*/createElement(Consumer$1, null, renderChildren);\n};\nvar AccordionItemState = function AccordionItemState(_ref) {\n  var children = _ref.children;\n  var renderChildren = function renderChildren(itemContext) {\n    var expanded = itemContext.expanded,\n      disabled = itemContext.disabled;\n    return /*#__PURE__*/createElement(Fragment, null, children({\n      expanded: expanded,\n      disabled: disabled\n    }));\n  };\n  return /*#__PURE__*/createElement(Consumer$1, null, renderChildren);\n};\nexport { Accordion, AccordionItem, AccordionItemButtonWrapper as AccordionItemButton, AccordionItemHeadingWrapper as AccordionItemHeading, AccordionItemPanel, AccordionItemState, resetNextUuid };","import React from 'react'\nimport { usePageViewTracking } from '../core'\nimport PropTypes from 'prop-types'\nimport SiteHeader from '../components/SiteHeader'\nimport ArticleHeader from '../components/ArticleHeader'\nimport Container from '../components/Container'\nimport StoreHighlights from '../components/StoreHighlights'\nimport InStoreServices from '../components/InStoreServices'\nimport InfoBannerSide from '../components/InfoBannerSide'\nimport MarketingOne from '../components/MarketingOne'\nimport MarketingTwo from '../components/MarketingTwo'\n// import MarketingTop from '../components/MarketingTop'\nimport OverrideBanner from '../components/OverrideBanner'\nimport HelpDetails from '../components/HelpDetails'\nimport Icon from '../components/Icon'\nimport NearbyStores from '../components/NearbyStores'\nimport {\n  Accordion,\n  AccordionItem,\n  AccordionItemHeading,\n  AccordionItemButton,\n  AccordionItemPanel,\n} from 'react-accessible-accordion'\nimport {\n  getWeekDates,\n  formatOpeningTimes,\n  getTodaysDate,\n  formatAddress,\n} from '../core'\nimport { SEO } from '../components/SEO'\n\nimport parkingList from '../data/parking-list.json'\n\nconst hiddenStores = [181, 527, 479, 493, 520] //Hide these stores from the details page\n\nconst renderTimes = (day, supermarketSpecialTimes) => {\n  const currentWeek = getWeekDates({ addWeek: false })\n  const date = currentWeek.find(d => d.day_id === day.day_id)?.date\n  const specialDate = supermarketSpecialTimes?.specialOpeningTimes.find(\n    t => t.date === date\n  )\n\n  if (specialDate) {\n    if (specialDate?.closed) {\n      return (\n        <>\n          <span className=\"leading-tight md:w-1/2 xl:w-auto max-w-1/2\">\n            {specialDate.label}\n          </span>{' '}\n          <span className=\"leading-tight text-right whitespace-nowrap md:w-1/2 xl:w-auto \">\n            Closed\n          </span>\n        </>\n      )\n    } else {\n      return (\n        <>\n          <span className=\"mb-1 leading-tight md:w-1/2 xl:w-auto max-w-1/2\">\n            {specialDate.label}\n          </span>{' '}\n          <span className=\"pl-1 mb-1 leading-tight text-right md:w-1/2 xl:w-auto whitespace-nowrap\">\n            {formatOpeningTimes({\n              open: specialDate.open,\n              close: specialDate.close,\n            })}\n          </span>\n        </>\n      )\n    }\n  } else if (day?.open === '00:00:00' && day?.close === '00:00:00') {\n    return (\n      <>\n        <span className=\"leading-tight md:w-1/2 xl:w-auto max-w-1/2\">\n          {day?.day}\n        </span>{' '}\n        <span className=\"leading-tight text-right whitespace-nowrap md:w-1/2 xl:w-auto \">\n          Closed\n        </span>\n      </>\n    )\n  } else {\n    return (\n      <>\n        <span className=\"mb-1 leading-tight md:w-1/2 xl:w-auto max-w-1/2\">\n          {day.day}{' '}\n        </span>\n        <span className=\"pl-1 mb-1 leading-tight text-right md:w-1/2 xl:w-auto whitespace-nowrap\">\n          {formatOpeningTimes({\n            open: day.open,\n            close: day.close,\n          })}\n        </span>\n      </>\n    )\n  }\n}\n\nconst renderSpecialOpeningTimes = supermarketSpecialTimes => {\n  const nextWeek = getWeekDates({ addWeek: true })\n\n  return nextWeek.map((d, index) => {\n    const specialDate = supermarketSpecialTimes?.specialOpeningTimes.find(\n      t => t.date === d.date\n    )\n\n    if (specialDate) {\n      if (specialDate?.closed) {\n        return (\n          <p\n            key={specialDate?.date}\n            className={`mb-1 text-error leading-tight font-semibold ${\n              index === 0 ? 'border-t  border-body-lighter mt-2 pt-2' : ''\n            } flex justify-between px-4 md:px-2 xl:px-4 py-1`}\n          >\n            <>\n              <span className=\"leading-tight md:w-1/2 xl:w-auto\">\n                {specialDate.label}\n              </span>{' '}\n              <span className=\"pl-1 leading-tight text-right whitespace-nowrap md:w-1/2 xl:w-auto\">\n                Closed\n              </span>\n            </>\n          </p>\n        )\n      } else {\n        return (\n          <p\n            key={specialDate?.date}\n            className={`mb-1 text-error leading-tight font-semibold ${\n              index === 0 ? 'border-t border-body-lighter mt-2 pt-2' : ''\n            } flex justify-between  px-4 md:px-2 xl:px-4 py-1`}\n          >\n            <>\n              <span className=\"leading-tight md:w-1/2 xl:w-auto\">\n                {specialDate.label}\n              </span>{' '}\n              <span className=\"pl-1 leading-tight text-right whitespace-nowrap md:w-1/2 xl:w-auto\">\n                {formatOpeningTimes({\n                  open: specialDate.open,\n                  close: specialDate.close,\n                })}\n              </span>\n            </>\n          </p>\n        )\n      }\n    } else {\n      return null\n    }\n  })\n}\n\nconst propTypes = {\n  location: PropTypes.object,\n}\n\nconst StorePage = ({ pageContext }) => {\n  usePageViewTracking()\n\n  let dataLayer\n\n  if (typeof window !== `undefined`) {\n    dataLayer = window.dataLayer\n  }\n\n  function clickCheckIfBusy() {\n    if (dataLayer && dataLayer.push) {\n      dataLayer.push({\n        event: 'popularHours',\n      })\n    }\n  }\n\n  function clickGetDirections() {\n    if (dataLayer && dataLayer.push) {\n      dataLayer.push({\n        event: 'getDirections',\n      })\n    }\n  }\n\n  const {\n    pharmacy,\n    storeName,\n    name,\n    region,\n    category,\n    openingTimes,\n    specialOpeningTimes,\n    linkedLocations,\n    services,\n    departments,\n    serviceHighlights,\n    address,\n    location,\n    liveLink,\n    telephone,\n    storeType,\n    nearbyStores,\n  } = pageContext\n\n  const typeOfStore = storeType === 'Morrisons' ? storeType : 'MorrisonsDaily'\n  const isGasStation = storeType === 'Gas Station'\n\n  const supermarketSpecialTimes = specialOpeningTimes.find(\n    times => times.name === 'supermarket'\n  )\n  const pfsOpeningTimes = linkedLocations.find(\n    location => location.storeFormat === 'pfs'\n  )\n  const pfsSpecialTimes = specialOpeningTimes.find(\n    times => times.name === 'pfs'\n  )\n\n  const dateToday = getTodaysDate(supermarketSpecialTimes, openingTimes)\n\n  const [dayId, setDayId] = React.useState(null)\n  const date = new Date()\n  const id = date.getDay()\n  React.useEffect(() => {\n    setDayId(id)\n  }, [id])\n\n  //adjust the time of parking allowed\n  function formatTime(minutes) {\n    if (minutes < 60) {\n      return `${minutes} Minute${minutes > 1 ? 's' : ''}`\n    } else {\n      const hours = minutes / 60\n      return `${hours.toFixed(1)} Hour${hours !== 1 ? 's' : ''}`\n    }\n  }\n\n  //adjust the time of parking allowed\n  const parkingItem = parkingList.find(item => item.name === name)\n\n  const hoursOverride = [] //Override these stores hours with a different message\n\n  // const gardenCentres = [\n  //   36,\n  //   55,\n  //   59,\n  //   75,\n  //   106,\n  //   122,\n  //   131,\n  //   238,\n  //   270,\n  //   325,\n  //   332,\n  //   333,\n  //   353,\n  //   387,\n  //   416,\n  //   468,\n  //   644,\n  // ]\n  //Below code checks department hours and hides the department if it is closed\n  const hasValidOpeningTimes = openingTimes => {\n    return Object.values(openingTimes).some(\n      time => time.open !== '00:00:00' || time.close !== '00:00:00'\n    )\n  }\n\n  return (\n    <>\n      <SiteHeader search sticky storeType={typeOfStore} />\n      {/* <MarketingTop /> */}\n      <ArticleHeader\n        currentCategory={`${storeName}`}\n        currentPage={`${storeName}`}\n        currentID={name}\n        dateToday={dateToday}\n        region={`${region}`}\n        category={`${category}`}\n      />\n      <Container>\n        <main className=\"px-0 pt-4 pb-10 lg:pt-6\">\n          {hiddenStores.includes(name) ? (\n            <OverrideBanner\n              currentID={name}\n              address1={address?.addressLine1}\n              address2={address?.addressLine2}\n              address3={address?.city}\n              address4={address?.postcode}\n            />\n          ) : (\n            <section className=\"flex flex-col w-full mb-10 md:flex-row\">\n              <section className=\"w-full md:w-2/5 lg:w-1/4\">\n                <div className=\"mb-2\">\n                  <h3 className=\"text-xl font-semibold\">Opening Hours</h3>\n                </div>\n                <Accordion\n                  allowZeroExpanded\n                  preExpanded={['a']}\n                  className=\"w-full mb-4\"\n                >\n                  <AccordionItem uuid=\"a\">\n                    <AccordionItemHeading className=\"border-0 border-b-2 border-white bg-primary-lighter\">\n                      <AccordionItemButton className=\"accordion__button | relative p-4 pr-8 text-lg font-medium outline-none flex justify-between items-center\">\n                        {isGasStation ? 'Petrol Station' : 'Store'}\n                      </AccordionItemButton>\n                    </AccordionItemHeading>\n                    <AccordionItemPanel className=\"py-2 text-base\">\n                      {hoursOverride.includes(name) ? (\n                        <span className=\"block w-full text-lg font-bold text-center text-secondary\">\n                          {/* New Store Opening 12/12/2024 */}\n                        </span>\n                      ) : (\n                        <>\n                          {openingTimes?.map(day => {\n                            return (\n                              <p\n                                key={day.day_id}\n                                className={`${\n                                  dayId === day.day_id ? 'font-bold' : ''\n                                }  flex justify-between px-4  md:px-2 xl:px-4 py-1 `}\n                              >\n                                {renderTimes(day, supermarketSpecialTimes)}\n                              </p>\n                            )\n                          })}{' '}\n                        </>\n                      )}\n\n                      {renderSpecialOpeningTimes(supermarketSpecialTimes)}\n                    </AccordionItemPanel>\n                  </AccordionItem>\n                  {linkedLocations?.length ? (\n                    <AccordionItem uuid=\"b\">\n                      <AccordionItemHeading className=\"border-0 border-b-2 border-white bg-primary-lighter\">\n                        <AccordionItemButton className=\"accordion__button | relative p-4 pr-8 text-lg font-medium outline-none flex justify-between items-center\">\n                          Petrol Station\n                        </AccordionItemButton>\n                      </AccordionItemHeading>\n                      <AccordionItemPanel className=\"py-2 text-base\">\n                        {hoursOverride.includes(name) ? (\n                          <span className=\"block w-full text-lg font-bold text-center text-secondary\">\n                            {/* New Store Opening 12/12/2024 */}\n                          </span>\n                        ) : (\n                          <>\n                            {pfsOpeningTimes?.openingTimes?.map(day => {\n                              return (\n                                <p\n                                  key={day.day_id}\n                                  className={`${\n                                    dayId === day.day_id ? 'font-bold' : ''\n                                  } flex justify-between px-4  md:px-2 xl:px-4 py-1 `}\n                                >\n                                  {renderTimes(day, pfsSpecialTimes)}\n                                </p>\n                              )\n                            })}{' '}\n                          </>\n                        )}\n\n                        {renderSpecialOpeningTimes(pfsSpecialTimes)}\n                      </AccordionItemPanel>\n                    </AccordionItem>\n                  ) : null}\n\n                  {!departments?.length\n                    ? null\n                    : departments\n                        .filter(department =>\n                          hasValidOpeningTimes(department.openingTimes)\n                        )\n                        .map((department, i) => {\n                          const specialTimes = specialOpeningTimes.find(\n                            times => times.name === department.name\n                          )\n                          return (\n                            <AccordionItem key={department.name} uuid={i}>\n                              <AccordionItemHeading className=\"border-0 border-b-2 border-white bg-primary-lighter\">\n                                <AccordionItemButton className=\"accordion__button | relative p-4 pr-8 text-lg font-medium outline-none flex justify-between items-center\">\n                                  {department.serviceName}\n                                </AccordionItemButton>\n                              </AccordionItemHeading>\n\n                              <AccordionItemPanel className=\"py-2 text-base\">\n                                {department.serviceName === 'Pharmacy' ? (\n                                  <div className=\"flex justify-between px-4 pb-4 bg-white\">\n                                    <span className=\"font-semibold leading-tight text-center\">\n                                      <span className=\"text-secondary\">\n                                        Please note:\n                                      </span>{' '}\n                                      This Pharmacy closes for lunchtime each\n                                      day. Please check with the store for exact\n                                      times.\n                                    </span>\n                                  </div>\n                                ) : null}\n                                {hoursOverride.includes(name) ? (\n                                  <span className=\"block w-full text-lg font-bold text-center text-secondary\">\n                                    {/* New Store Opening 12/12/2024 */}\n                                  </span>\n                                ) : (\n                                  <>\n                                    {department?.openingTimes?.map(day => {\n                                      return (\n                                        <p\n                                          key={day.day_id}\n                                          className={`${\n                                            dayId === day.day_id\n                                              ? 'font-bold'\n                                              : ''\n                                          } flex justify-between px-4 py-1 `}\n                                        >\n                                          {renderTimes(day, specialTimes)}\n                                        </p>\n                                      )\n                                    })}{' '}\n                                  </>\n                                )}\n                                {renderSpecialOpeningTimes(specialTimes)}\n                                {department.serviceName === 'Cafe' ? (\n                                  <div className=\"flex flex-col justify-between px-4 py-2 bg-white\">\n                                    <span className=\"font-semibold leading-tight text-center\">\n                                      <span className=\"text-secondary\">\n                                        Please note:\n                                      </span>{' '}\n                                      Our café serves hot food until 15 minutes*\n                                      prior to the café closing hours, we will\n                                      continue to serve our selection of cakes,\n                                      sandwiches & drinks until our closing\n                                      time.\n                                    </span>\n                                    <span className=\"pt-2 text-sm font-medium leading-tight text-center\">\n                                      *Sunday's stop serving hot food 30 minutes\n                                      prior to closing.\n                                    </span>\n                                  </div>\n                                ) : null}\n                              </AccordionItemPanel>\n                            </AccordionItem>\n                          )\n                        })}\n                </Accordion>\n                <InfoBannerSide store={name} />\n                <section\n                  itemType=\"https://schema.org/LocalBusiness\"\n                  className={`p-4 mb-4 rounded-lg  bg-gradient-br-primary\n                  `}\n                >\n                  <section\n                    itemType=\"schema.org/PostalAddress\"\n                    className=\"font-semibold text-white\"\n                  >\n                    <div className=\"mb-4\">\n                      <p itemProp=\"streetAddress\">{address?.addressLine1}</p>\n                      {address?.addressLine2 &&\n                      address?.addressLine2 !== 'None' ? (\n                        <p>{address.addressLine2}</p>\n                      ) : null}\n                      <p>\n                        <span itemProp=\"addressLocality\">{address?.city}</span>{' '}\n                        <span itemProp=\"postalCode\">{address?.postcode}</span>\n                      </p>\n                    </div>\n                  </section>\n                  <a\n                    rel=\"noopener noreferrer\"\n                    target=\"_blank\"\n                    href={`https://www.google.com/maps/dir//Morrisons+${formatAddress`${\n                      address?.addressLine1\n                    }\n                  ${\n                    address?.addressLine2 === 'None'\n                      ? ''\n                      : address?.addressLine2\n                  }\n                  ${address?.city}\n                  ${address?.postcode}`}/@${location?.latitude},${\n                      location?.longitude\n                    }/`}\n                    onClick={clickGetDirections}\n                    className={`px-4 py-3 w-full flex justify-between items-center text-center rounded-lg  transition-fast bg-white  hover:bg-primary-lighter text-secondary hover:text-primary`}\n                  >\n                    <span className=\"font-semibold whitespace-nowrap\">\n                      Get directions\n                    </span>\n\n                    <Icon icon=\"locationpin\" className=\"fill-current\" />\n                  </a>\n                </section>\n                {parkingItem ? (\n                  <section className=\"p-4 mb-4 rounded-lg bg-gradient-br-parking\">\n                    <div className=\"flex items-center justify-start\">\n                      <div className=\"flex items-center justify-center p-2 mr-4 font-bold bg-white\">\n                        <Icon icon=\"parkingicon\" />\n                      </div>\n                      <div className=\"flex flex-wrap items-center justify-start flex-1\">\n                        <span className=\"w-full text-base font-semibold text-white\">\n                          Maximum Parking Time\n                        </span>\n                        <span className=\"text-xl font-bold text-white\">\n                          {formatTime(parseInt(parkingItem.maxParkingTime))}\n                        </span>\n                      </div>\n                    </div>\n                  </section>\n                ) : null}\n                {!liveLink ? null : (\n                  <section className=\"p-4 mb-4 bg-primary-lighter\">\n                    <div className=\"flex items-end justify-start mb-2 font-semibold text-secondary\">\n                      <Icon\n                        icon=\"googlelive\"\n                        className=\"w-6 mr-1 fill-current\"\n                      />\n                      Live:&nbsp;\n                      <span className=\"text-body whitespace-nowrap\">\n                        How busy is this store?\n                      </span>\n                    </div>\n                    <div className=\"mb-4 text-base\">\n                      Use Google Maps to check popular times at this store.\n                      Scroll down to the &lsquo;Popular times&apos; graph.\n                    </div>\n                    <a\n                      target=\"_blank\"\n                      rel=\"noreferrer\"\n                      href={liveLink}\n                      onClick={clickCheckIfBusy}\n                      className={`text-white px-4 py-3 w-full flex justify-between items-center text-center rounded-lg  transition-fast bg-secondary hover:text-secondary hover:bg-white`}\n                    >\n                      <span className=\"font-semibold whitespace-nowrap\">\n                        Check Now\n                      </span>\n                      <Icon icon=\"opennewwindow\" className=\"fill-current\" />\n                    </a>\n                  </section>\n                )}\n                <HelpDetails\n                  category={`${category}`}\n                  telephone={`${telephone}`}\n                  pharmacy={pharmacy.ExtensionValue}\n                />\n              </section>\n              <section className=\"w-full md:w-3/5 lg:w-3/4 md:ml-6 lg:ml-8\">\n                <StoreHighlights highlights={serviceHighlights} />\n                <InStoreServices services={services} />\n                {category !== 'McColls' ? (\n                  <section className=\"flex flex-wrap w-full md:flex-wrap lg:flex-nowrap\">\n                    <div className=\"flex flex-auto w-full mb-4 mr-0 lg:mb-0 sm:w-full lg:w-auto lg:flex-1 lg:mr-2\">\n                      <MarketingOne services={services} />\n                    </div>\n                    <div className=\"flex-auto w-full mb-0 ml-0 sm:mb-4 lg:mb-0 sm:w-full lg:w-auto lg:flex-1 lg:ml-2\">\n                      <MarketingTwo />\n                    </div>\n                  </section>\n                ) : null}\n\n                <NearbyStores\n                  stores={nearbyStores}\n                  isMorrisonsDaily={category === 'McColls'}\n                />\n              </section>\n            </section>\n          )}\n        </main>\n      </Container>\n    </>\n  )\n}\n\nStorePage.propTypes = propTypes\n\nexport default StorePage\n\nexport const Head = ({ pageContext }) => {\n  const { storeName } = pageContext\n  const { category } = pageContext\n  return <SEO title={`${category} ${storeName} Store Details`} />\n}\n","var React = require('react');\n\nfunction ArrowForward24 (props) {\n    return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z\",\"key\":0}),React.createElement(\"path\",{\"fill\":\"none\",\"d\":\"M0 0h24v24H0z\",\"key\":1})]);\n}\n\nArrowForward24.defaultProps = {\"width\":\"24\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\"};\n\nmodule.exports = ArrowForward24;\n\nArrowForward24.default = ArrowForward24;\n","export default function _taggedTemplateLiteralLoose(strings, raw) {\n  if (!raw) {\n    raw = strings.slice(0);\n  }\n  strings.raw = raw;\n  return strings;\n}"],"names":["category","currentPage","storeLink","storeType","className","Link","to","whichstore","store","includes","Icon","icon","hoursOverride","text","regex","currentCategory","currentID","dateToday","region","Container","RegExp","replace","trim","module","exports","createSlug","string","a","p","split","join","toString","toLowerCase","c","charAt","indexOf","formatUrl","name","data","useStaticQuery","image","getImage","G","alt","highlights","length","map","highlight","serviceName","key","services","s","title","imageOne","pharmacy","href","target","style","backgroundColor","maxWidth","props","some","service","rel","position","address1","address2","address3","address4","telephone","stores","isMorrisonsDaily","specialOpeningTime","specialOpeningTimes","find","times","openingTimes","formatOpeningTimeDays","getTodaysDate","itemType","storeName","Franchise","McColls","GasStation","Morrisons","address","addressLine1","postcode","itemProp","_classCallCheck","instance","Constructor","TypeError","_defineProperties","i","descriptor","enumerable","configurable","writable","Object","defineProperty","_createClass","protoProps","staticProps","prototype","_defineProperty","obj","value","_extends","assign","arguments","source","hasOwnProperty","call","apply","this","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","_inherits","subClass","superClass","create","constructor","_setPrototypeOf","_getPrototypeOf","o","setPrototypeOf","getPrototypeOf","__proto__","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_assertThisInitialized","self","ReferenceError","_possibleConstructorReturn","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Date","e","_isNativeReflectConstruct","result","Super","NewTarget","_slicedToArray","arr","Array","isArray","_arrayWithHoles","Symbol","iterator","_arr","_n","_d","_e","undefined","_s","_i","next","done","err","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_toConsumableArray","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","_nonIterableSpread","minLen","n","slice","test","len","arr2","AccordionStore","_ref","_this","_ref$expanded","expanded","_expanded","_ref$allowMultipleExp","allowMultipleExpanded","_ref$allowZeroExpande","allowZeroExpanded","uuid","isItemDisabled","isItemExpanded","augment","expandedUuid","concat","isExpanded","isOnlyOneExpanded","Boolean","dangerouslySetExpanded","role","getButtonId","id","getPanelId","hidden","disabled","tabIndex","args","forEach","getOwnPropertyDescriptors","defineProperties","_objectSpread2","Context","createContext","Provider","_React$PureComponent","_super","_len","_key","preExpanded","setState","state","toggleExpanded","onChange","getPanelAttributes","getHeadingAttributes","getButtonAttributes","_this$state","createElement","children","PureComponent","DisplayName","Consumer","_React$PureComponent2","_super2","_this2","_len3","_key3","container","renderChildren","Accordion","_ref$className","rest","DisplayName$1","counter","idRegex","assertValidHtmlId","htmlId","console","error","Context$1","Provider$1","accordionContext","panelAttributes","headingAttributes","buttonAttributes","ProviderWrapper","Consumer$1","_ref2","AccordionItem","current","customUuid","activeClassName","instanceUuid","useState","itemContext","cx","getClosestAccordion","el","matches","parentElement","getSiblingButtons","item","parentAccordion","querySelectorAll","displayName","keycodes","AccordionItemButton","onClick","onKeyDown","evt","first","keyCode","preventDefault","HTMLElement","focus","siblings","last","focusLastSiblingOf","currentIndex","previous","focusPreviousSiblingOf","focusNextSiblingOf","AccordionItemButtonWrapper","AccordionItemHeading","ref","VALIDATE","setRef","Error","childElementCount","firstElementChild","getAttribute","AccordionItemHeadingWrapper","AccordionItemPanel","hiddenStores","renderTimes","day","supermarketSpecialTimes","date","getWeekDates","addWeek","d","day_id","specialDate","t","closed","label","formatOpeningTimes","open","close","renderSpecialOpeningTimes","index","dataLayer","pageContext","usePageViewTracking","window","linkedLocations","departments","serviceHighlights","location","liveLink","nearbyStores","typeOfStore","isGasStation","pfsOpeningTimes","storeFormat","pfsSpecialTimes","React","dayId","setDayId","getDay","parkingItem","parkingList","SiteHeader","search","sticky","ArticleHeader","addressLine2","city","department","values","time","hasValidOpeningTimes","specialTimes","formatAddress","latitude","longitude","event","minutes","hours","toFixed","formatTime","parseInt","maxParkingTime","ExtensionValue","Head","SEO","ArrowForward24","defaultProps","default","_taggedTemplateLiteralLoose","strings","raw"],"sourceRoot":""}