{"version":3,"file":"static/js/649.a11701dc.chunk.js","mappings":"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","sources":["helpers/accessibilityHelper.js","hooks/useKeyboardNavigation.jsx","shared/merchant/merchant-page/merchant-page.jsx","shared/merchant/merchant-page/merchant-page-module.jsx","shared/merchant/merchant-page/other-stores/merchant-page-other-stores.jsx"],"sourcesContent":["export function accessibilityEnterCheck(e, cb) {\n  if (e.key === \" \" || e.key === \"32\" || e.key === \"Enter\" || e.key === \"13\" || e.type === \"click\" || e.type === \"change\") {\n    cb()\n  }\n}\n","import { useState, useEffect } from \"react\"\n\nfunction useKeyboardNavigation() {\n  const [isKeyboardNavigation, setIsKeyboardNavigation] = useState(false)\n\n  useEffect(() => {\n    const handleKeyDown = () => setIsKeyboardNavigation(true)\n    const handleMouseDown = () => setIsKeyboardNavigation(false)\n\n    window.addEventListener(\"keydown\", handleKeyDown)\n    window.addEventListener(\"mousedown\", handleMouseDown)\n\n    // Cleanup event listeners on unmount\n    return () => {\n      window.removeEventListener(\"keydown\", handleKeyDown)\n      window.removeEventListener(\"mousedown\", handleMouseDown)\n    }\n  }, [])\n\n  return isKeyboardNavigation\n}\n\nexport default useKeyboardNavigation\n","import React, { useState, Fragment } from \"react\"\nimport { isMerchantOpen } from \"../../../helpers/IsoDateHelpers\"\nimport * as SelectionFactoryHelper from \"../../helpers/SelectionFactoryHelper\"\nimport Svg from \"../../../shared/_svgs/svg\"\nimport ReactHtmlParser from \"react-html-parser\"\nimport MerchantPageOtherStores from \"./other-stores/merchant-page-other-stores\"\nimport useWindowWidth from \"../../../hooks/useWindowWidth\"\nimport useKeyboardNavigation from \"../../../hooks/useKeyboardNavigation\"\nimport { accessibilityEnterCheck } from \"../../../helpers/accessibilityHelper\"\n\nconst MerchantPage = ({\n  lang,\n  mondayOpening,\n  tuesdayOpening,\n  wednesdayOpening,\n  thursdayOpening,\n  fridayOpening,\n  saturdayOpening,\n  sundayOpening,\n  mondayClosing,\n  tuesdayClosing,\n  wednesdayClosing,\n  thursdayClosing,\n  fridayClosing,\n  saturdayClosing,\n  sundayClosing,\n  openingHoursOverwrite,\n  openingHours,\n  sameshops,\n  openingHoursText,\n  openNowLabel,\n  supportClickAndCollect,\n  supportHomeDelivery,\n  supportOrderNow,\n  orderNowLink,\n  phone,\n  emailAddress,\n  shopLocation,\n  alwaysOpen = false,\n  backgroundImage,\n  richText,\n  clickAndCollectWebSiteAddress,\n  linkTargetSettings,\n  ribbonText,\n  ribbonColor,\n  merchantGateProximity,\n  merchantGroup,\n  merchantPageLabels,\n  weekdays,\n  heroColorMain,\n  heroColorOpeningHours,\n  chooseDescription,\n  descriptionHeader,\n  description,\n  descriptionShort,\n  customCategoryLabel,\n  categoriesText,\n  categories,\n  pageTitle,\n  webLogoUpload,\n  webLogo,\n  webSiteAddress,\n  otherStores,\n  similarStores,\n  googleMapsLink,\n}) => {\n  const windowWidth = useWindowWidth()\n  const isKeyboardNavigating = useKeyboardNavigation()\n\n  const openingHoursArray = openingHours && [\n    openingHours.MondayOpening,\n    openingHours.TuesdayOpening,\n    openingHours.WednesdayOpening,\n    openingHours.ThursdayOpening,\n    openingHours.FridayOpening,\n    openingHours.SaturdayOpening,\n    openingHours.SundayOpening,\n  ]\n  const closingHoursArray = openingHours && [\n    openingHours.MondayClosing,\n    openingHours.TuesdayClosing,\n    openingHours.WednesdayClosing,\n    openingHours.ThursdayClosing,\n    openingHours.FridayClosing,\n    openingHours.SaturdayClosing,\n    openingHours.SundayClosing,\n  ]\n  const now = new Date()\n  const dayNumberStartingMonday = now.getDay() === 0 ? 6 : now.getDay() - 1\n  const [openingHoursOpen, setOpeningHoursOpen] = useState(false)\n\n  const [isReadingMore, setIsReadingMore] = useState(false)\n\n  const openingHoursForTheDay = openingHoursArray ? openingHoursArray[dayNumberStartingMonday] : null\n  const closingHoursForTheDay = closingHoursArray ? closingHoursArray[dayNumberStartingMonday] : null\n\n  const merchantIsOpen = openingHoursForTheDay && closingHoursForTheDay && isMerchantOpen(openingHoursForTheDay, closingHoursForTheDay, lang)\n\n  function capitalizeFirstLetter(str) {\n    return str.charAt(0).toUpperCase() + str.slice(1)\n  }\n\n  const selectedShopLocation = SelectionFactoryHelper.getFromSelectionFactory(shopLocation)\n\n  function FormatOpeningHoursTable(fromTimeArray, toTimeArray) {\n    let formattedRanges = []\n\n    for (let i = 0; i < fromTimeArray.length; i++) {\n      formattedRanges.push(fromTimeArray[i] + \" - \" + toTimeArray[i])\n    }\n    return formattedRanges\n  }\n\n  const renderOpeningHours = () => {\n    let weeklyOpeningHours = FormatOpeningHoursTable(openingHoursArray, closingHoursArray)\n    return weeklyOpeningHours.map((openingHour, index) => {\n      const day = capitalizeFirstLetter(weekdays[index])\n      if (dayNumberStartingMonday === index) {\n        return (\n          <div key={day} className=\"day\">\n            <div role=\"listitem\" tabIndex=\"0\" className=\"day-container\">\n              <strong>\n                <p className=\"day-name\">{day}</p>\n                <p className=\"day-opening-hour\">{openingHour}</p>\n              </strong>\n            </div>\n          </div>\n        )\n      }\n      return (\n        <div key={day} role=\"listitem\" tabIndex=\"0\" className=\"day\">\n          <div className=\"day-container\">\n            <p className=\"day-name\">{day}</p>\n            <p className=\"day-opening-hour\">{openingHour}</p>\n          </div>\n        </div>\n      )\n    })\n  }\n\n  const handleOpeningHours = (e) => {\n    accessibilityEnterCheck(e, () => setOpeningHoursOpen(!openingHoursOpen))\n  }\n  const splashlabel = SelectionFactoryHelper.getFromSelectionFactory(ribbonText)\n  const ribbonColorSelected = SelectionFactoryHelper.getFromSelectionFactory(ribbonColor)\n  const storeIsRebuilding = ribbonColorSelected == \"theme-mandarin\" && !!splashlabel\n  const mapsLinkTarget = SelectionFactoryHelper.getFromSelectionFactory(merchantPageLabels.googleMapsLinkTarget)\n\n  return (\n    <div className=\"merchant-page-container\">\n      <div className=\"merchant-page-content-container\">\n        <div className=\"merchant-page-hero w--wider\">\n          {backgroundImage ? (\n            <div className={`merchant-page-image-container${storeIsRebuilding ? \" deactivated\" : \"\"}`}>\n              {storeIsRebuilding ? <div className={`splash ${ribbonColorSelected}`}>{splashlabel}</div> : undefined}\n              <img src={backgroundImage}></img>\n            </div>\n          ) : undefined}\n          <div className=\"merchant-page-details-container\">\n            {windowWidth >= 768 ? (\n              <div className=\"merchantlogo\">\n                <img src={webLogoUpload ?? webLogo} data-epi-edit=\"WebLogo\" loading=\"eager\" fetchPriority=\"high\" />\n              </div>\n            ) : undefined}\n            <h1>{pageTitle}</h1>\n            <div className=\"merchant-info-card\">\n              {/** shop location */}\n              <div className=\"infoline\">\n                <Svg iconName={\"mim-pin\"} />\n                <p>\n                  {selectedShopLocation}\n                  {googleMapsLink ? (\n                    <span>\n                      &ensp;–&ensp;\n                      <a className=\"maps-link\" href={googleMapsLink} target={mapsLinkTarget}>\n                        {merchantPageLabels.googleMapsLinkLabel}\n                      </a>\n                    </span>\n                  ) : (\n                    \"\"\n                  )}\n                </p>\n              </div>\n              {/** Phone number */}\n              {phone ? (\n                <div className=\"infoline\">\n                  {windowWidth < 768 ? (\n                    <a href={`tel:` + phone} className=\"contact-link\">\n                      <Svg iconName={\"mim-phone\"} />\n                      {phone}\n                    </a>\n                  ) : (\n                    <p>\n                      <Svg iconName={\"mim-phone\"} />\n                      {phone}\n                    </p>\n                  )}\n                </div>\n              ) : undefined}\n              {/** Email Address */}\n              {emailAddress ? (\n                <div className=\"infoline contact-link\">\n                  <a href={`mailto:` + emailAddress}>\n                    <Svg iconName={\"mim-mail\"} />\n                    {merchantPageLabels.emailCoverLabel}\n                  </a>\n                </div>\n              ) : undefined}\n              {supportClickAndCollect && clickAndCollectWebSiteAddress ? (\n                <div className=\"infoline\">\n                  <a className=\"web-link\" href={clickAndCollectWebSiteAddress} target={linkTargetSettings}>\n                    <Svg iconName={\"mim-bag\"} />\n                    {merchantPageLabels.clickAndCollectLabel}\n                  </a>\n                </div>\n              ) : undefined}\n              {supportHomeDelivery ? (\n                <div className=\"infoline\">\n                  <p>\n                    <Svg iconName={\"homedelivery\"} />\n                    {merchantPageLabels.homeDeliveryLabel}\n                  </p>\n                </div>\n              ) : null}\n              {supportOrderNow ? (\n                <div className=\"infoline\">\n                  <a className=\"web-link\" href={orderNowLink} target=\"_blank\" rel=\"noreferrer\">\n                    <Svg iconName={\"ordernow\"} />\n                    {merchantPageLabels.orderNowLabel}\n                  </a>\n                </div>\n              ) : null}\n              {/** opening hours */}\n              <div className={`opening-hours-table infoline${isKeyboardNavigating ? \" focus-within\" : \"\"}`}>\n                <input\n                  id=\"show-openinghours\"\n                  type=\"checkbox\"\n                  tabIndex={alwaysOpen ? -1 : 0}\n                  checked={openingHoursOpen}\n                  onChange={(e) => {\n                    handleOpeningHours(e)\n                  }}\n                />\n                {openingHoursOverwrite ? (\n                  <div htmlFor=\"show-openinghours\" className=\"open-closed-label alwaysopen\">\n                    <Svg iconName={\"clock3\"} />\n                    <p className=\"rich-text\">{ReactHtmlParser(openingHoursOverwrite)}</p>\n                  </div>\n                ) : alwaysOpen ? (\n                  <div htmlFor=\"show-openinghours\" className=\"open-closed-label alwaysopen\">\n                    <p className=\"open\">\n                      <Svg iconName={\"clock3\"} />\n                      <span>{merchantPageLabels.alwaysOpenText}</span>\n                    </p>\n                  </div>\n                ) : storeIsRebuilding ? (\n                  <div htmlFor=\"show-openinghours\" className=\"open-closed-label closed\">\n                    <p className=\"closed\">\n                      <Svg iconName={\"clock3\"} />\n                      <span>{merchantPageLabels.closedLabel}</span>\n                    </p>\n                  </div>\n                ) : (\n                  <Fragment>\n                    <label htmlFor=\"show-openinghours\" className=\"open-closed-label foldarrow\">\n                      <div className={`${merchantIsOpen ? \"open\" : \"closed\"}`}>\n                        <a\n                          role=\"button\"\n                          className=\"open-close-helper\"\n                          onClick={(e) => handleOpeningHours(e)}\n                          onKeyDown={(e) => handleOpeningHours(e)}\n                          tabIndex={0}\n                        >\n                          <Svg iconName={\"clock3\"} />\n                        </a>\n                        {merchantIsOpen ? (\n                          <p>\n                            <span>{merchantPageLabels.openNowLabel}</span> - {merchantPageLabels.closingLabel} {closingHoursForTheDay}\n                          </p>\n                        ) : (\n                          <p>\n                            <span>{merchantPageLabels.closedLabel}</span> - {merchantPageLabels.openingLabel} {openingHoursForTheDay}\n                          </p>\n                        )}\n                      </div>\n                      <div className={`days${openingHoursOpen ? \"\" : \"  inactive\"}`}>\n                        <a\n                          role=\"button\"\n                          className=\"open-close-helper\"\n                          onClick={(e) => handleOpeningHours(e)}\n                          onKeyDown={(e) => handleOpeningHours(e)}\n                          tabIndex={0}\n                        >\n                          <Svg iconName={\"clock3\"} />\n                        </a>\n                        {renderOpeningHours()}\n                      </div>\n                    </label>\n                  </Fragment>\n                )}\n              </div>\n            </div>\n          </div>\n          <div className=\"merchant-page-about-container\">\n            {descriptionHeader ? <h3>{descriptionHeader}</h3> : undefined}\n            <div className={isReadingMore ? \"readmoretext readless\" : \"readmoretext readmore\"} onClick={() => setIsReadingMore(!isReadingMore)}>\n              <div className=\"mechant-page-description\">{ReactHtmlParser(richText)}</div>\n              <button className=\"read-toggle\" aria-expanded={isReadingMore}>\n                <div className=\"foldicon\"></div>\n                <div className=\"text\">{isReadingMore ? merchantPageLabels.readLessLabel : merchantPageLabels.readMoreLabel}</div>\n              </button>\n            </div>\n          </div>\n          <div className=\"bothclear\"></div>\n        </div>\n      </div>\n      {/** Same MerchantGroup Stores */}\n      {otherStores && otherStores.otherStoresList && otherStores.otherStoresList.length > 0 ? (\n        <MerchantPageOtherStores headline={otherStores.otherStoresLabel} merchants={otherStores.otherStoresList} cssClass={\"\"} />\n      ) : undefined}\n      {/** Similar Stores */}\n      {similarStores && similarStores.otherStoresList && similarStores.otherStoresList.length > 0 ? (\n        <MerchantPageOtherStores\n          headline={similarStores.otherStoresLabel}\n          merchants={similarStores.otherStoresList}\n          cssClass={\"theme-main-platinum-faded\"}\n        />\n      ) : undefined}\n    </div>\n  )\n}\n\nexport default MerchantPage\n","import React from \"react\"\nimport ReactDOM from \"react-dom\"\nimport MerchantPage from \"./merchant-page\"\n\nexport default class MerchantPageModule {\n  constructor(elem) {\n    const self = this\n    self.elem = elem\n    self.currentPageJson = elem.dataset.currentPageJson && JSON.parse(elem.dataset.currentPageJson)\n    self.merchantPageLabels = elem.dataset.merchantPageLabels && JSON.parse(elem.dataset.merchantPageLabels)\n    self.categoriesText = elem.dataset.categoriesText && JSON.parse(elem.dataset.categoriesText)\n    self.weekdays = elem.dataset.weekdays && JSON.parse(elem.dataset.weekdays)\n    self.openingHours = elem.dataset.openinghours && JSON.parse(elem.dataset.openinghours)\n    self.otherStores = elem.dataset.otherStores && JSON.parse(elem.dataset.otherStores)\n    self.similarStores = elem.dataset.similarStores && JSON.parse(elem.dataset.similarStores)\n    self.clickAndCollectWebSiteAddress = elem.dataset.clickAndCollectWebSiteAddress\n    self.linkTargetSettings = elem.dataset.linkTargetSettings\n    self.init()\n    return self\n  }\n\n  init() {\n    const self = this\n    ReactDOM.unmountComponentAtNode(self.elem)\n    ReactDOM.render(\n      <MerchantPage\n        {...self.currentPageJson}\n        merchantPageLabels={self.merchantPageLabels}\n        categoriesText={self.categoriesText}\n        lang={document.body && document.body.dataset.language}\n        openingHours={self.openingHours}\n        weekdays={self.weekdays}\n        otherStores={self.otherStores}\n        similarStores={self.similarStores}\n        clickAndCollectWebSiteAddress={self.clickAndCollectWebSiteAddress}\n        linkTargetSettings={self.linkTargetSettings}\n      />,\n      self.elem,\n    )\n  }\n}\n","import React from \"react\"\nimport MerchantItem from \"../../merchant-item/merchant-item\"\n\nexport default function MerchantPageOtherStores({ headline, merchants, bottomPadding, topPadding, topDeck, cssClass }) {\n  let lessThanFour = merchants?.length < 4\n\n  if (merchants?.length > 0)\n    return (\n      <div className={`shoppage__other-stores ${cssClass ? cssClass : \"same-stores\"}`}>\n        <div\n          className={`shoppage__other-stores__content w--wider ${bottomPadding ? bottomPadding : \"\"} ${topPadding ? topPadding : \"\"} ${topDeck ? topDeck : \"\"}`}\n        >\n          <h3 className=\"rich-text\" dangerouslySetInnerHTML={{ __html: headline }}></h3>\n          <div className={`store-items${lessThanFour ? \" short-list\" : \" long-list\"}`}>\n            {merchants && merchants.length > 0\n              ? merchants.map((merchant, index) => {\n                  const dayOfWeek = new Date().getDay()\n                  const openingHoursForTheDay =\n                    merchant.openingHours &&\n                    [\n                      merchant.openingHours.sundayOpening,\n                      merchant.openingHours.mondayOpening,\n                      merchant.openingHours.tuesdayOpening,\n                      merchant.openingHours.wednesdayOpening,\n                      merchant.openingHours.thursdayOpening,\n                      merchant.openingHours.fridayOpening,\n                      merchant.openingHours.saturdayOpening,\n                    ][dayOfWeek]\n                  const closingHoursForTheDay =\n                    merchant.openingHours &&\n                    [\n                      merchant.openingHours.sundayClosing,\n                      merchant.openingHours.mondayClosing,\n                      merchant.openingHours.tuesdayClosing,\n                      merchant.openingHours.wednesdayClosing,\n                      merchant.openingHours.thursdayClosing,\n                      merchant.openingHours.fridayClosing,\n                      merchant.openingHours.saturdayClosing,\n                    ][dayOfWeek]\n                  return (\n                    <MerchantItem\n                      key={index}\n                      {...merchant}\n                      cssClass={\"store-item\"}\n                      link={merchant.merchantLink}\n                      splashLabel={merchant.ribbonText}\n                      isRibbonValid={merchant.isRibbonValid}\n                      openingHoursForTheDay={openingHoursForTheDay}\n                      closingHoursForTheDay={closingHoursForTheDay}\n                    />\n                  )\n                })\n              : \"\"}\n          </div>\n        </div>\n      </div>\n    )\n  return null\n}\n"],"names":["accessibilityEnterCheck","e","cb","key","type","_useState","useState","_useState2","_slicedToArray","isKeyboardNavigation","setIsKeyboardNavigation","useEffect","handleKeyDown","handleMouseDown","window","addEventListener","removeEventListener","_ref","lang","openingHoursOverwrite","mondayOpening","tuesdayOpening","wednesdayOpening","thursdayOpening","fridayOpening","saturdayOpening","sundayOpening","mondayClosing","tuesdayClosing","wednesdayClosing","thursdayClosing","fridayClosing","saturdayClosing","sundayClosing","openingHours","supportClickAndCollect","sameshops","openingHoursText","openNowLabel","supportHomeDelivery","supportOrderNow","orderNowLink","phone","emailAddress","shopLocation","_ref$alwaysOpen","alwaysOpen","backgroundImage","richText","clickAndCollectWebSiteAddress","linkTargetSettings","ribbonText","ribbonColor","merchantPageLabels","merchantGateProximity","merchantGroup","weekdays","descriptionHeader","heroColorMain","heroColorOpeningHours","chooseDescription","pageTitle","description","descriptionShort","customCategoryLabel","categoriesText","categories","webLogoUpload","webLogo","otherStores","webSiteAddress","similarStores","googleMapsLink","windowWidth","useWindowWidth","isKeyboardNavigating","useKeyboardNavigation","openingHoursArray","MondayOpening","TuesdayOpening","WednesdayOpening","ThursdayOpening","FridayOpening","SaturdayOpening","SundayOpening","closingHoursArray","MondayClosing","TuesdayClosing","WednesdayClosing","ThursdayClosing","FridayClosing","SaturdayClosing","SundayClosing","now","Date","dayNumberStartingMonday","getDay","openingHoursOpen","setOpeningHoursOpen","_useState3","_useState4","isReadingMore","setIsReadingMore","openingHoursForTheDay","closingHoursForTheDay","merchantIsOpen","isMerchantOpen","selectedShopLocation","SelectionFactoryHelper","handleOpeningHours","splashlabel","ribbonColorSelected","storeIsRebuilding","mapsLinkTarget","googleMapsLinkTarget","_jsxs","className","children","_jsx","concat","undefined","src","loading","fetchPriority","Svg","iconName","href","target","googleMapsLinkLabel","emailCoverLabel","clickAndCollectLabel","homeDeliveryLabel","rel","orderNowLabel","id","tabIndex","checked","onChange","htmlFor","ReactHtmlParser","alwaysOpenText","closedLabel","Fragment","role","onClick","onKeyDown","closingLabel","openingLabel","fromTimeArray","toTimeArray","formattedRanges","i","length","push","FormatOpeningHoursTable","map","openingHour","index","str","day","charAt","toUpperCase","slice","readLessLabel","readMoreLabel","otherStoresList","MerchantPageOtherStores","headline","otherStoresLabel","merchants","cssClass","MerchantPageModule","_createClass","elem","_classCallCheck","self","this","currentPageJson","dataset","JSON","parse","openinghours","init","value","ReactDOM","MerchantPage","_objectSpread","document","body","language","bottomPadding","topPadding","topDeck","lessThanFour","dangerouslySetInnerHTML","__html","merchant","dayOfWeek","MerchantItem","link","merchantLink","splashLabel","isRibbonValid"],"sourceRoot":""}