{"version":3,"file":"js/course-resort-nearby.js","mappings":"mBAKA,MAAMA,EASJC,KAAAA,GACMC,KAAKC,MACPD,KAAKC,KAAKC,SAAQC,IAChBA,EAAIC,UAAUC,OAAO,SAAS,IAG9BL,KAAKM,QACPN,KAAKM,OAAOJ,SAAQK,IAClBA,EAAMH,UAAUC,OAAO,SAAS,GAGtC,CAEAG,IAAAA,GACMR,KAAKC,MACPD,KAAKC,KAAKC,SAAQO,IAChBA,EAAOC,iBAAiB,SAAS,KAC/B,MAAM,IAAEP,GAAQM,EAAOE,QACjBJ,EAAQP,KAAKY,UAAUC,cAAc,gBAAgBV,OAEvDI,IACFP,KAAKD,QACLQ,EAAMH,UAAUU,IAAI,UACpBL,EAAOL,UAAUU,IAAI,UACvB,GACA,GAGR,CApCAC,WAAAA,CAAYC,GACVhB,KAAKY,UAAYI,EACjBhB,KAAKC,KAAOD,KAAKY,UAAUK,iBAAiB,8BAC5CjB,KAAKM,OAASN,KAAKY,UAAUK,iBAAiB,gCAE9CjB,KAAKQ,MACP,ECPa,IAAkBU,IDwCxB,KACP,MAAMC,EAAYC,SAASH,iBAAiB,yBAC1B,OAAdE,GACFA,EAAUjB,SAAQmB,GAAa,IAAIvB,EAAmBuB,IACxD,EC3C4B,YAAxBD,SAASE,WACXJ,IAEAE,SAASV,iBAAiB,oBAAoB,KAC5CQ,GAAU,G","sources":["webpack://golf-wp/./wp-content/themes/golf/src/js/blocks/course-resort-nearby.js","webpack://golf-wp/./wp-content/themes/golf/src/js/utils/DOMReady.js"],"sourcesContent":["import DOMReady from '../utils/DOMReady'\n\n// eslint-disable-next-line no-unused-vars\nimport css from '../../css/blocks/course-resort-nearby.scss'\n\nclass CourseResortNearby {\n  constructor(el) {\n    this.container = el\n    this.tabs = this.container.querySelectorAll('.course-resort-nearby__tab')\n    this.panels = this.container.querySelectorAll('.course-resort-nearby__panel')\n\n    this.init()\n  }\n\n  reset() {\n    if (this.tabs) {\n      this.tabs.forEach(tab => {\n        tab.classList.remove('active')\n      })\n    }\n    if (this.panels) {\n      this.panels.forEach(panel => {\n        panel.classList.remove('active')\n      })\n    }\n  }\n\n  init() {\n    if (this.tabs) {\n      this.tabs.forEach(tabBtn => {\n        tabBtn.addEventListener('click', () => {\n          const { tab } = tabBtn.dataset\n          const panel = this.container.querySelector(`[data-panel=\"${tab}\"]`)\n\n          if (panel) {\n            this.reset()\n            panel.classList.add('active')\n            tabBtn.classList.add('active')\n          }\n        })\n      })\n    }\n  }\n}\n\nDOMReady(() => {\n  const wrapperEl = document.querySelectorAll('.course-resort-nearby')\n  if (wrapperEl !== null) {\n    wrapperEl.forEach(component => new CourseResortNearby(component))\n  }\n})\n","/**\n * Triggers a callback function once the DOM is ready\n *\n * @param {function} callback The function to trigger\n */\nexport default function DOMReady(callback) {\n  if (document.readyState !== 'loading') {\n    callback()\n  } else {\n    document.addEventListener('DOMContentLoaded', () => {\n      callback()\n    })\n  }\n}\n"],"names":["CourseResortNearby","reset","this","tabs","forEach","tab","classList","remove","panels","panel","init","tabBtn","addEventListener","dataset","container","querySelector","add","constructor","el","querySelectorAll","callback","wrapperEl","document","component","readyState"],"sourceRoot":""}