{"mappings":"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","sources":["src/070_views/degrees-programs-view/accordions_plugin.js"],"sourcesContent":["Drupal.behaviors.accordionMA = {\n attach: function registerAccordionEvents(context, settings) {\n\t window.maAccordions.registerAccordionEvents();\n\t}\n};\n\n\nwindow.flipCards = {\n cards: [],\n countCards: function() {\n var cardCount = 0;\n for (let flipCard of document.querySelectorAll('.flip-card')) {\n this.cards.push(flipCard);\n flipCard.setAttribute(\"data-card-number\", cardCount);\n cardCount++;\n }\n window.flipCards.highestCard = cardCount;\n },\n preventFlip: function(e) {\n //console.log(\"link clicked\");\n e.stopImmediatePropagation();\n e.preventDefault();\n const href = e.target.href;\n window.location = href;\n return false;\n },\n\n followCardLink: function(card) {\n const anchor = card.querySelector('.flip-card__link');\n window.location = anchor.href;\n },\n\n registerEvents: function() {\n window.flipCards.countCards();\n // Prevent click/touch actions on flip-card links from bubbling.\n for (let link of document.querySelectorAll('.flip-card__link')) {\n link.addEventListener(\"click\", window.flipCards.preventFlip);\n link.addEventListener(\"touchend\", window.flipCards.preventFlip);\n }\n\n // Manage card flipped state.\n for (let flipCard of document.querySelectorAll('.flip-card')) {\n flipCard.addEventListener('click', function(e) {\n e.preventDefault();\n //window.flipCards.followCardLink(this);\n if (this.classList.contains('flipped')) {\n this.classList.remove('flipped');\n this.blur();\n } else {\n this.classList.add('flipped');\n }\n });\n flipCard.addEventListener('mouseover', function() {\n if (!this.classList.contains('mouseOverFlipped')) {\n this.classList.add('mouseOverFlipped');\n }\n });\n flipCard.addEventListener('mouseout', function() {\n if (this.classList.contains('mouseOverFlipped')) {\n this.classList.remove('mouseOverFlipped');\n }\n });\n flipCard.addEventListener('keydown', function (event) {\n if (event.key === \"Enter\") {\n event.preventDefault();\n //window.flipCards.followCardLink(this);\n if (this.classList.contains('flipped')) {\n this.classList.remove('flipped');\n this.blur();\n var cardNumber = this.getAttribute('data-card-number');\n // set focus to next card, or first card if @ max card\n window.flipCards.cards[(++cardNumber%window.flipCards.highestCard)].focus();\n } else {\n this.classList.add('flipped');\n }\n }\n })\n }\n }\n}\n\nif (document.readyState === 'loading') { // Loading hasn't finished yet\n document.addEventListener('DOMContentLoaded', window.flipCards.registerEvents);\n} else { // `DOMContentLoaded` has already fired\n window.flipCards.registerEvents()\n}\n\n\n/*\nDetails Element Polyfill 2.4.0\nCopyright © 2019 Javan Makhmali\n */\n(function() {\n \"use strict\";\n var element = document.createElement(\"details\");\n var elementIsNative = typeof HTMLDetailsElement != \"undefined\" && element instanceof HTMLDetailsElement;\n var support = {\n open: \"open\" in element || elementIsNative,\n toggle: \"ontoggle\" in element\n };\n var styles = '\\ndetails, summary {\\n display: block;\\n}\\ndetails:not([open]) > *:not(summary) {\\n display: none;\\n}\\nsummary::before {\\n content: \"►\";\\n padding-right: 0.3rem;\\n font-size: 0.6rem;\\n cursor: default;\\n}\\n[open] > summary::before {\\n content: \"▼\";\\n}\\n';\n var _ref = [], forEach = _ref.forEach, slice = _ref.slice;\n if (!support.open) {\n polyfillStyles();\n polyfillProperties();\n polyfillToggle();\n polyfillAccessibility();\n }\n if (support.open && !support.toggle) {\n polyfillToggleEvent();\n }\n function polyfillStyles() {\n document.head.insertAdjacentHTML(\"afterbegin\", \"\");\n }\n function polyfillProperties() {\n var prototype = document.createElement(\"details\").constructor.prototype;\n var setAttribute = prototype.setAttribute, removeAttribute = prototype.removeAttribute;\n var open = Object.getOwnPropertyDescriptor(prototype, \"open\");\n Object.defineProperties(prototype, {\n open: {\n get: function get() {\n if (this.tagName == \"DETAILS\") {\n return this.hasAttribute(\"open\");\n } else {\n if (open && open.get) {\n return open.get.call(this);\n }\n }\n },\n set: function set(value) {\n if (this.tagName == \"DETAILS\") {\n return value ? this.setAttribute(\"open\", \"\") : this.removeAttribute(\"open\");\n } else {\n if (open && open.set) {\n return open.set.call(this, value);\n }\n }\n }\n },\n setAttribute: {\n value: function value(name, _value) {\n var _this = this;\n var call = function call() {\n return setAttribute.call(_this, name, _value);\n };\n if (name == \"open\" && this.tagName == \"DETAILS\") {\n var wasOpen = this.hasAttribute(\"open\");\n var result = call();\n if (!wasOpen) {\n var summary = this.querySelector(\"summary\");\n if (summary) summary.setAttribute(\"aria-expanded\", true);\n triggerToggle(this);\n }\n return result;\n }\n return call();\n }\n },\n removeAttribute: {\n value: function value(name) {\n var _this2 = this;\n var call = function call() {\n return removeAttribute.call(_this2, name);\n };\n if (name == \"open\" && this.tagName == \"DETAILS\") {\n var wasOpen = this.hasAttribute(\"open\");\n var result = call();\n if (wasOpen) {\n var summary = this.querySelector(\"summary\");\n if (summary) summary.setAttribute(\"aria-expanded\", false);\n triggerToggle(this);\n }\n return result;\n }\n return call();\n }\n }\n });\n }\n function polyfillToggle() {\n onTogglingTrigger(function(element) {\n element.hasAttribute(\"open\") ? element.removeAttribute(\"open\") : element.setAttribute(\"open\", \"\");\n });\n }\n function polyfillToggleEvent() {\n if (window.MutationObserver) {\n new MutationObserver(function(mutations) {\n forEach.call(mutations, function(mutation) {\n var target = mutation.target, attributeName = mutation.attributeName;\n if (target.tagName == \"DETAILS\" && attributeName == \"open\") {\n triggerToggle(target);\n }\n });\n }).observe(document.documentElement, {\n attributes: true,\n subtree: true\n });\n } else {\n onTogglingTrigger(function(element) {\n var wasOpen = element.getAttribute(\"open\");\n setTimeout(function() {\n var isOpen = element.getAttribute(\"open\");\n if (wasOpen != isOpen) {\n triggerToggle(element);\n }\n }, 1);\n });\n }\n }\n function polyfillAccessibility() {\n setAccessibilityAttributes(document);\n if (window.MutationObserver) {\n new MutationObserver(function(mutations) {\n forEach.call(mutations, function(mutation) {\n forEach.call(mutation.addedNodes, setAccessibilityAttributes);\n });\n }).observe(document.documentElement, {\n subtree: true,\n childList: true\n });\n } else {\n document.addEventListener(\"DOMNodeInserted\", function(event) {\n setAccessibilityAttributes(event.target);\n });\n }\n }\n function setAccessibilityAttributes(root) {\n findElementsWithTagName(root, \"SUMMARY\").forEach(function(summary) {\n var details = findClosestElementWithTagName(summary, \"DETAILS\");\n summary.setAttribute(\"aria-expanded\", details.hasAttribute(\"open\"));\n if (!summary.hasAttribute(\"tabindex\")) summary.setAttribute(\"tabindex\", \"0\");\n if (!summary.hasAttribute(\"role\")) summary.setAttribute(\"role\", \"button\");\n });\n }\n function eventIsSignificant(event) {\n return !(event.defaultPrevented || event.ctrlKey || event.metaKey || event.shiftKey || event.target.isContentEditable);\n }\n function onTogglingTrigger(callback) {\n addEventListener(\"click\", function(event) {\n if (eventIsSignificant(event)) {\n if (event.which <= 1) {\n var element = findClosestElementWithTagName(event.target, \"SUMMARY\");\n if (element && element.parentNode && element.parentNode.tagName == \"DETAILS\") {\n callback(element.parentNode);\n }\n }\n }\n }, false);\n addEventListener(\"keydown\", function(event) {\n if (eventIsSignificant(event)) {\n if (event.keyCode == 13 || event.keyCode == 32) {\n var element = findClosestElementWithTagName(event.target, \"SUMMARY\");\n if (element && element.parentNode && element.parentNode.tagName == \"DETAILS\") {\n callback(element.parentNode);\n event.preventDefault();\n }\n }\n }\n }, false);\n }\n function triggerToggle(element) {\n var event = document.createEvent(\"Event\");\n event.initEvent(\"toggle\", false, false);\n element.dispatchEvent(event);\n }\n function findElementsWithTagName(root, tagName) {\n return (root.tagName == tagName ? [ root ] : []).concat(typeof root.getElementsByTagName == \"function\" ? slice.call(root.getElementsByTagName(tagName)) : []);\n }\n function findClosestElementWithTagName(element, tagName) {\n if (typeof element.closest == \"function\") {\n return element.closest(tagName);\n } else {\n while (element) {\n if (element.tagName == tagName) {\n return element;\n } else {\n element = element.parentNode;\n }\n }\n }\n }\n})();\n\n\nwindow.maAccordions = {\n isMouseDown: false,\n\teventsRegister: false,\n ifClassMissingThenAdd: function(ele, classStrArr) {\n for (let classStr of classStrArr) {\n if (!ele.classList.contains(classStr)) {\n ele.classList.add(classStr);\n }\n }\n },\n\tregisterAccordionEvents: function() {\n\t\tif (!this.eventsRegister) {\n\t\t\tthis.eventsRegister = true;\n\t\t\t// initial set up\n\t\t\tfor (let accordionContent of document.querySelectorAll('.js-accordion-details')) {\n\t\t\t\twindow.maAccordions.ifClassMissingThenAdd(accordionContent.querySelector('.degree-program__accordion.views-row'), [\n \"ui-accordion-content\", \"ui-corner-bottom\",\"ui-helper-reset\",\n \"ui-widget-content\", \"ui-accordion-content-active\"]);\n }\n\t\t\tfor (let accordion of document.querySelectorAll('.js-accordion-details')) {\n\t\t\t\tif (accordion.open) {\n accordion.setAttribute('aria-expanded', \"true\");\n\t\t\t\t} else {\n accordion.setAttribute('aria-expanded', \"false\");\n\t\t\t\t}\n\t\t\t}\n\n if (document.querySelector('.degree-program--list-view')) {\n \t\t\tdocument.querySelector('.degree-program--list-view')\n \t\t\t\t.addEventListener('click', window.maAccordions.refreshAccordions);\n \t\t\tdocument.addEventListener('keydown', (event) => {\n \t\t\t const keyName = event.key;\n \t\t\t if (keyName === ' ' || keyName === 'Enter') {\n \t\t\t\t\twindow.maAccordions.refreshAccordions();\n \t\t\t }\n \t\t\t});\n }\n }\n\t},\n\trefreshAccordions: function() {\n\t\t// click and key events fire before accordion open\n\t\twindow.setTimeout(function() {\n\t\t\tfor (let accordion of document.querySelectorAll('.js-accordion-details')) {\n\t\t\t\tlet accordionDetails = accordion.querySelector('.ui-accordion-content');\n\t\t\t\tlet accordionSummary = accordion.querySelector('summary');\n\t\t\t\tif (!accordion.open) {\n\t\t\t\t\t// change icon\n\t\t\t\t\t// open content\n accordion.setAttribute('aria-expanded', \"false\");\n\t\t\t\t\taccordionDetails.setAttribute('aria-hidden', \"true\");\n\t\t\t\t\tif (accordionSummary.classList.contains('ui-accordion-header-active')) {\n\t\t\t\t\t\taccordionSummary.classList.remove('ui-accordion-header-active');\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\taccordionSummary.classList.add('ui-accordion-header-active');\n accordion.setAttribute('aria-expanded', \"true\");\n accordionDetails.setAttribute('aria-hidden', \"false\");\n }\n\t\t\t}\n\t\t}, 20);\n\t}\n}\n\n/**\n * @todo Add handlers for mousedown and enter like the ones above. Do it elegantly.\n */\nwindow.maAccordionDetails = {\n details: document.querySelectorAll('.js-accordion-details'),\n detailsHandler: function() {\n window.maAccordionDetails.details.forEach(detail => detail.addEventListener('click', window.maAccordionDetails.detailToggle));\n window.maAccordionDetails.details.forEach(detail => detail.addEventListener('keydown', window.maAccordionDetails.detailToggle));\n },\n detailToggle: function(e) {\n const classList = e.target.classList;\n // Special situation for keydown.\n if (e.type == 'keydown') {\n const keyName = e.key;\n // Only fire on blank and enter keypresses.\n if (!(keyName === ' ' || keyName === 'Enter')) {\n return;\n }\n }\n\n // Prevent the toggle on links within the accordion.\n if (!(classList.contains('js-views-accordion-title') || classList.contains('js-views-accordion-group-header'))) {\n console.log(classList)\n return;\n }\n // Perform the attribute changes to open and close the accordion.\n if (this.hasAttribute('open')) {\n // Already open, close.\n this.removeAttribute('open');\n this.setAttribute('aria-expanded', false);\n } else {\n // First, close all open items\n window.maAccordionDetails.details.forEach((item) => {\n item.removeAttribute('open');\n item.setAttribute('aria-expanded', false);\n });\n // Already closed, open.\n this.setAttribute('open', \"\");\n this.setAttribute('aria-expanded', true);\n }\n }\n}\n\n// if (document.readyState === 'loading') { // Loading hasn't finished yet\n// document.addEventListener('DOMContentLoaded', window.maAccordionDetails.detailsHandler);\n// } else { // `DOMContentLoaded` has already fired\n// window.maAccordionDetails.detailsHandler();\n// }\n"],"names":[],"version":3,"file":"accordions_plugin.js.map"}