{"version":3,"file":"zoomv.7837.min.js?t=188a49415773c912793b","mappings":"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","sources":["webpack://@hero-digital/zoom/./src/js/utilities/nested-accordion.js","webpack://@hero-digital/zoom/./src/components/modules/VerticalTabs/VerticalTabs.js"],"sourcesContent":["export default class NestedAccordion {\r\n constructor(selector) {\r\n this.selector = selector;\r\n this.accordionItems = this.selector.querySelectorAll('.fdn-accordion-item');\r\n this.init();\r\n // Bind the resize event\r\n window.addEventListener('resize', this.handleResize.bind(this));\r\n }\r\n\r\n // Initialize the accordion functionality\r\n init() {\r\n this.accordionItems.forEach((item) => {\r\n const toggle = item.querySelector('.fdn-accordion-toggle');\r\n\r\n toggle.addEventListener('click', () => {\r\n const isParentOpen = item.classList.contains('open');\r\n\r\n if (!isParentOpen) {\r\n this.openAccordion(item);\r\n } else {\r\n this.closeAccordion(item);\r\n }\r\n });\r\n });\r\n }\r\n\r\n // Open parent accordion and all child accordions inside it\r\n openAccordion(item) {\r\n const content = item.querySelector('.fdn-accordion-content');\r\n item.classList.add('open');\r\n content.style.maxHeight = content.scrollHeight + 'px'; // Set max-height for smooth transition\r\n\r\n // Recalculate parent height to accommodate open children\r\n //this.adjustParentHeight(item);\r\n this.handleResize()\r\n }\r\n\r\n // Close the parent accordion\r\n closeAccordion(item) {\r\n const content = item.querySelector('.fdn-accordion-content');\r\n\r\n if (item.classList.contains('open')) {\r\n item.classList.remove('open');\r\n content.style.maxHeight = null; // Remove max-height for smooth transition\r\n\r\n // Close all child accordions inside the parent\r\n const childAccordions = item.querySelectorAll('.fdn-accordion-item');\r\n childAccordions.forEach(childItem => {\r\n const childContent = childItem.querySelector('.fdn-accordion-content');\r\n if (childItem.classList.contains('open')) {\r\n childItem.classList.remove('open');\r\n childContent.style.maxHeight = null; // Remove max-height for child content\r\n }\r\n });\r\n\r\n // Recalculate parent height after closing\r\n //this.adjustParentHeight(item);\r\n this.handleResize()\r\n }\r\n }\r\n\r\n // Recalculate the height of the parent accordion based on child content\r\n adjustParentHeight(item) {\r\n const parentContent = item.querySelector('.fdn-accordion-content');\r\n const allChildContent = item.querySelectorAll('.fdn-accordion-item .fdn-accordion-content');\r\n let totalHeight = 0;\r\n\r\n // Add height of all visible children\r\n allChildContent.forEach(childContent => {\r\n if (childContent.style.maxHeight && parseInt(childContent.style.maxHeight, 10) > 0) {\r\n totalHeight += childContent.scrollHeight;\r\n }\r\n });\r\n\r\n // Set the height of the parent accordion content\r\n parentContent.style.maxHeight = totalHeight + 'px'\r\n // Get the current maxHeight (convert from string to number)\r\n const parentAccordion = parentContent.closest('.fdn-accordion-content')\r\n const currentParentMaxHeight = parseInt(parentAccordion.style.maxHeight, 10) || 0\r\n // Add the additional height\r\n const updatedMaxHeight = currentParentMaxHeight + totalHeight;\r\n\r\n // Set the new maxHeight with 'px' unit\r\n parentAccordion.style.maxHeight = updatedMaxHeight + 'px'\r\n }\r\n // Handle resize events\r\n handleResize() {\r\n this.accordionItems.forEach((item) => {\r\n if (item.classList.contains('open')) {\r\n this.adjustParentHeight(item);\r\n }\r\n });\r\n }\r\n}\r\n\r\n\r\n","import NestedAccordion from '../../../js/utilities/nested-accordion'\r\n\r\nclass VerticalTabs {\r\n constructor(el) {\r\n this.el = el\r\n this.domMap = {\r\n initialActiveTabs: el.querySelectorAll('.nav-link.active'),\r\n innerTabs: el.querySelectorAll(\r\n '.vertical-product-tab-wrapper__inner-nav .nav-link'\r\n ),\r\n outerTabs: el.querySelectorAll(\r\n '.vertical-product-tab-wrapper__outer-nav .nav-link'\r\n ),\r\n mobileButtons: el.querySelectorAll('.grid-landing-page__mobile-filters'),\r\n listHeightControls: el.querySelectorAll(\r\n '.grid-landing-page__filter-wrap'\r\n ),\r\n sortCheckboxes: el.querySelectorAll('.checkbox-radio'),\r\n container: document.querySelector('.module-columns > .wrapper')\r\n }\r\n\r\n this.initActiveClass()\r\n this.addListeners()\r\n\r\n this.domMap.mobileButtons.forEach((button, index) => {\r\n button.addEventListener('click', () => this.collapseExpand(button, index))\r\n })\r\n this.addOuterNavigationClickListener()\r\n\r\n this.handleResize = this.debounce(this.handleResize.bind(this), 200)\r\n window.addEventListener('resize', this.handleResize)\r\n this.initializeNestedAccordion()\r\n\r\n const firstToggle = this.el.querySelector('.fdn-accordion-toggle');\r\n \r\n // Check if the element exists\r\n if (firstToggle) {\r\n // Programmatically trigger a click event\r\n firstToggle.click();\r\n } else {\r\n console.warn('No element found with the class .fdn-accordion-toggle');\r\n }\r\n }\r\n\r\n initActiveClass() {\r\n this.domMap.initialActiveTabs.forEach((tab) => {\r\n tab.classList.add('first-active')\r\n })\r\n }\r\n\r\n addListeners() {\r\n const { outerTabs } = this.domMap\r\n outerTabs.forEach((tab) => {\r\n tab.addEventListener('click', (e) => this.handleOuterTabClick(e))\r\n })\r\n }\r\n\r\n scrollToSection(currentTab) {\r\n const container = currentTab.parentElement\r\n currentTab.scrollIntoView({ behavior: 'smooth', block: 'nearest' })\r\n\r\n requestAnimationFrame(() => {\r\n const containerRect = container.getBoundingClientRect()\r\n const targetRect = currentTab.getBoundingClientRect()\r\n const offset = (containerRect.width - targetRect.width) / 2\r\n container.scrollLeft = currentTab.offsetLeft - offset\r\n })\r\n }\r\n\r\n updateIndicator(tab, orientation) {\r\n const context =\r\n tab.closest('.vertical-product-tab-wrapper__inner-nav') || this.el\r\n const indicator = context.querySelector(\r\n `.nav-tabs__indicator--${orientation}`\r\n )\r\n\r\n if (indicator && tab) {\r\n if (orientation === 'horizontal') {\r\n const { offsetLeft, offsetWidth } = tab\r\n indicator.style.left = `${offsetLeft}px`\r\n indicator.style.width = `${offsetWidth}px`\r\n } else if (orientation === 'vertical') {\r\n const isHorizontal = window.innerWidth <= 767\r\n const { offsetTop, offsetHeight, offsetWidth, offsetLeft } = tab\r\n if (isHorizontal) {\r\n indicator.style.top = '50%'\r\n indicator.style.height = '36px'\r\n indicator.style.width = `${offsetWidth}px`\r\n indicator.style.left = `${offsetLeft}px`\r\n } else {\r\n indicator.style.top = `${offsetTop}px`\r\n indicator.style.height = `${offsetHeight}px`\r\n indicator.style.width = `${offsetWidth}px`\r\n indicator.style.left = '10px'\r\n }\r\n }\r\n }\r\n }\r\n\r\n handleInnerTabClick(event) {\r\n if (window.innerWidth > 767) {\r\n this.scrollToSection(currentTab)\r\n }\r\n }\r\n\r\n handleOuterTabClick(event) {\r\n event.preventDefault()\r\n const currentTab = event.currentTarget\r\n\r\n this.domMap.outerTabs.forEach((tab) => {\r\n tab.classList.remove('active', 'first-active')\r\n tab.setAttribute('aria-selected', 'false')\r\n })\r\n\r\n currentTab.classList.add('active')\r\n currentTab.setAttribute('aria-selected', 'true')\r\n\r\n const targetId = currentTab.getAttribute('data-target')\r\n const targetPane = this.el.querySelector(targetId)\r\n\r\n this.el.querySelectorAll('.tab-pane').forEach((pane) => {\r\n pane.classList.remove('show', 'active')\r\n })\r\n targetPane.classList.add('show', 'active')\r\n\r\n this.updateIndicator(currentTab, 'vertical')\r\n\r\n if (window.innerWidth < 1024) {\r\n this.scrollToSection(currentTab)\r\n }\r\n\r\n // Close all child accordions inside the parent\r\n const childAccordions = targetPane.querySelectorAll('.fdn-accordion-item')\r\n childAccordions.forEach(childItem => {\r\n const childContent = childItem.querySelector('.fdn-accordion-content');\r\n if (childItem.classList.contains('open')) {\r\n childItem.classList.remove('open');\r\n childContent.style.maxHeight = null; // Remove max-height for child content\r\n }\r\n });\r\n \r\n var firstAccordion = targetPane.querySelector('.fdn-accordion-item');\r\n if(firstAccordion.classList.contains('open')) {\r\n firstAccordion.classList.remove('open')\r\n }\r\n if (firstAccordion) {\r\n targetPane.querySelector('.fdn-accordion-toggle').click()\r\n }\r\n\r\n \r\n\r\n\r\n }\r\n\r\n collapseExpand(button, index) {\r\n this.domMap.mobileButtons.forEach((btn, btnIndex) => {\r\n if (btnIndex !== index) {\r\n btn.setAttribute('aria-expanded', 'false')\r\n btn.classList.remove('isOpen')\r\n this.domMap.listHeightControls[btnIndex]?.classList.remove('isOpen')\r\n }\r\n })\r\n\r\n const isExpanded = button.getAttribute('aria-expanded') === 'true'\r\n const listHeightControl = this.domMap.listHeightControls[index]\r\n\r\n if (isExpanded) {\r\n button.setAttribute('aria-expanded', 'false')\r\n button.classList.remove('isOpen')\r\n listHeightControl.classList.remove('isOpen')\r\n } else {\r\n button.setAttribute('aria-expanded', 'true')\r\n button.classList.add('isOpen')\r\n listHeightControl.classList.add('isOpen')\r\n const radioBtn = this.el.querySelectorAll('.isOpen .checkbox-radio')\r\n const isNonAllChecked = Array.from(radioBtn).some((radio) => {\r\n return radio.checked && radio.value !== 'all'\r\n })\r\n\r\n if (!isNonAllChecked) {\r\n radioBtn.forEach((radio) => {\r\n if (radio.value === 'all') {\r\n radio.checked = true\r\n }\r\n })\r\n }\r\n }\r\n }\r\n\r\n debounce(func, wait) {\r\n let timeout\r\n const context = this\r\n return function (...args) {\r\n clearTimeout(timeout)\r\n timeout = setTimeout(() => func.apply(context, args), wait)\r\n }\r\n }\r\n\r\n handleResize() {\r\n this.domMap.outerTabs.forEach((tab) => {\r\n if (tab.classList.contains('active')) {\r\n this.updateIndicator(tab, 'vertical')\r\n }\r\n })\r\n }\r\n\r\n addOuterNavigationClickListener() {\r\n this.domMap.outerTabs.forEach((link) => {\r\n link.addEventListener('click', (event) => {\r\n event.preventDefault()\r\n const elementId = event.target.getAttribute('data-target')\r\n const targetElement = document.querySelector(\r\n '.vertical-column-90 ' + elementId + ' .nav-tabs a:first-of-type'\r\n )\r\n const targetBg = document.querySelector(\r\n '.vertical-column-90 ' +\r\n elementId +\r\n ' .nav-tabs .nav-tabs__indicator--horizontal'\r\n )\r\n this.domMap.outerTabs.forEach((tab) => tab.classList.remove('active'))\r\n link.classList.add('active')\r\n if (targetElement) {\r\n targetElement.click()\r\n\r\n const updateIndicatorWidth = () => {\r\n requestAnimationFrame(() => {\r\n let targetElementWidth =\r\n targetElement.getBoundingClientRect().width\r\n if (targetElementWidth === 0) {\r\n setTimeout(() => {\r\n targetElementWidth =\r\n targetElement.getBoundingClientRect().width\r\n if (targetElementWidth > 0) {\r\n targetBg.style.width = `${targetElementWidth}px`\r\n targetBg.style.left = '10px'\r\n }\r\n }, 100)\r\n } else {\r\n targetBg.style.width = `${targetElementWidth}px`\r\n targetBg.style.left = '10px'\r\n }\r\n })\r\n }\r\n updateIndicatorWidth()\r\n window.addEventListener('resize', updateIndicatorWidth)\r\n }\r\n })\r\n })\r\n }\r\n\r\n // Initialize accordions when the document is ready or when class is present\r\n initializeNestedAccordion() {\r\n const accordions = document.querySelectorAll(\r\n '[data-cmp-is=\"nested-accordion\"]'\r\n )\r\n accordions.forEach((accordion) => {\r\n // Create a new instance for each nested accordion section\r\n new NestedAccordion(accordion)\r\n })\r\n }\r\n}\r\n\r\nexport default VerticalTabs\r\n"],"names":["NestedAccordion","selector","_classCallCheck","this","accordionItems","querySelectorAll","init","window","addEventListener","handleResize","bind","key","value","_this","forEach","item","querySelector","classList","contains","closeAccordion","openAccordion","content","add","style","maxHeight","scrollHeight","remove","childItem","childContent","parentContent","allChildContent","totalHeight","parseInt","parentAccordion","closest","updatedMaxHeight","_this2","adjustParentHeight","VerticalTabs","el","domMap","initialActiveTabs","innerTabs","outerTabs","mobileButtons","listHeightControls","sortCheckboxes","container","document","initActiveClass","addListeners","button","index","collapseExpand","addOuterNavigationClickListener","debounce","initializeNestedAccordion","firstToggle","click","console","warn","tab","e","handleOuterTabClick","currentTab","parentElement","scrollIntoView","behavior","block","requestAnimationFrame","containerRect","getBoundingClientRect","targetRect","offset","width","scrollLeft","offsetLeft","orientation","indicator","concat","offsetWidth","left","isHorizontal","innerWidth","offsetTop","offsetHeight","top","height","event","scrollToSection","preventDefault","currentTarget","setAttribute","targetId","getAttribute","targetPane","pane","updateIndicator","firstAccordion","_this3","btn","btnIndex","_this3$domMap$listHei","isExpanded","listHeightControl","radioBtn","Array","from","some","radio","checked","func","wait","timeout","context","_len","arguments","length","args","_key","clearTimeout","setTimeout","apply","_this4","_this5","link","elementId","target","targetElement","targetBg","updateIndicatorWidth","targetElementWidth","accordion"],"sourceRoot":""}