{"version":3,"sources":["webpack://gli-frontend/../web/themes/custom/gilderlehrman_theme/src/js/gli__sidenav-accordion.js"],"names":["Drupal","$","behaviors","gliSidenavAccordion","attach","context","accordions","querySelectorAll","accordionGroups","index","forEach","paragraph","push","nextElementSibling","classList","contains","group","length","navItems","i","element","title","querySelector","contentId","getAttribute","textContent","wrapper","document","createElement","add","contentWrapper","appendChild","firstElement","shift","parentNode","insertBefore","navContent","reduce","content","item","navHtml","insertAdjacentHTML","links","contents","link","addEventListener","event","isMobileContext","window","innerWidth","targetIsActive","target","dataset","remove","activeContent","scrollIntoView","history","pushState","preventDefault","dispatchEvent","Event","openInitialPanel","location","hash","startsWith","substring","activeLink","setTimeout","anchorPoint","jQuery"],"mappings":"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","file":"/js/gli__sidenav-accordion.js","sourcesContent":["((Drupal, $) => {\n\n /**\n * Set up the Side-Nav Accordion functionality.\n *\n * @type {Drupal~behavior}\n */\n Drupal.behaviors.gliSidenavAccordion = {\n attach (context) {\n const accordions = context.querySelectorAll('.paragraph--type--sidenav-accordion');\n const accordionGroups = [];\n let index = 0;\n accordionGroups[index] = [];\n accordions.forEach(paragraph => {\n accordionGroups[index].push(paragraph);\n if (!paragraph.nextElementSibling?.classList.contains('paragraph--type--sidenav-accordion')) {\n // Start a new group.\n index++;\n accordionGroups[index] = [];\n }\n });\n\n accordionGroups.forEach(group => {\n if (group.length < 2) {\n // Skip groups with 1 or no elements.\n return;\n }\n\n const navItems = [];\n for (let i = 0; i < group.length; i++) {\n const element = group[i];\n const title = element.querySelector('h2.field-title');\n navItems.push({\n contentId: element.getAttribute('data-content-id'),\n title: title?.textContent,\n });\n }\n\n const wrapper = document.createElement('div');\n wrapper.classList.add('sidenav-accordion__wrapper');\n const contentWrapper = document.createElement('div');\n contentWrapper.classList.add('sidenav-accordion__content-area');\n wrapper.appendChild(contentWrapper);\n\n const firstElement = group.shift();\n firstElement.parentNode.insertBefore(wrapper, firstElement);\n contentWrapper.appendChild(firstElement);\n\n for (let i = 0; i < group.length; i++) {\n contentWrapper.appendChild(group[i]);\n }\n\n let navContent = '';\n navContent = navItems.reduce(\n (content, item) => content + `