{"version":3,"file":"../js/theme.js","names":["$","Drupal","Foundation","Vimeo","MiniMasonry","VanillaTabs","witAnimationDurations","behaviors","courseleafBubbles","attach","context","$bubble","attr","click","e","preventDefault","options","content","multiple","trigger","contentAsHTML","maxWidth","theme","animation","updateAnimation","interactive","functionBefore","instance","helper","$origin","origin","course","data","insertCourseData","keydown","which","target","tooltipster","addTooltipster","$elem","get","$data","each","$this","text","addClass","prependTo","dn","parseHTML","outerHTML","trim","on","attachBehaviors","videoDialog","$triggerImage","closeVideoBackdrop","$backdrop","removeClass","$iframe","length","contentWindow","postMessage","setTimeout","aria","closeCurrentDialog","closest","vidId","$vidElement","$vidContent","replaceWith","html","openDialog","searchDialog","$searchForm","closeSearchBackdrop","id","select","megaMenu","$mainNav","$a","find","i","li","document","createElement","clonedLink","cloneNode","append","parent","first","prepend","accessibleMegaMenu","uuidPrefix","menuClass","topNavItemClass","panelClass","panelGroupClass","hoverClass","focusClass","openClass","accordionMenu","$menu","parentLink","slideSpeed","submenuToggle","multiOpen","$accordionMenu","AccordionMenu","accordion","Accordion","allowAllClosed","multiExpand","witTabs","accessibleTabs","tabhead","tabheadClass","currentInfoClass","fxspeed","tabbody","wrapperClass","mobileNav","$menuContainer","$menuButton","enabledClass","hasClass","show","hide","focus","eventCalendar","dataHighlight","$highlight_array","datepicker_id","MediaQuery","is","split","datepicker","inline","dateFormat","onSelect","date","next_day","Date","setDate","getDate","formatted_next_day","_formatDate","val","submit","beforeShowDay","actual_date","inArray","$selected_date","date_array","monthIndex","parseInt","year","getFullYear","month","getMonth","slice","day","addToCalendar","createCalendar","$a2c","title","start","end","duration","address","description","not","myCalendar","foundation","google_cse","window","cse","__gcse","getParameterByName","url","name","match","RegExp","exec","decodeURIComponent","replace","createSnippet","result","classList","add","titleFrag","createRange","createContextualFragment","anchor","setAttribute","appendChild","urlVisible","urlValue","createTextNode","contentWrap","thumbnailImage","imgA","img","width","height","imgContainer","myResultsReadyCallback","q","promos","results","resultsDiv","list","index","noResults","noResultsText","searchCallbacks","web","ready","video_play_pause","iframe","$video","Player","querySelector","$videoControl","pauseVideo","pause","playVideo","play","readMore","$child_elements","children","readMoreHeight","$index","el","$el","elHeight","outerHeight","readmore","collapsedHeight","moreLink","lessLink","degreeCard","location","contentCard","homepageVideoContainer","$currentProjects","$videoContainer","$mediaContainer","debouncedResize","debounce","innerHeight","mediaContainerHeight","iframeHeight","css","Math","round","featuredItems","masonry","container","baseWidth","gutter","ultimateGutter","innerWidth","remove","paragraph","appendTo","layout","taggedNews","program_tabs","readyState","selector","type","responsiveBreak","activeIndex","addEventListener","homePageHeroRandomImage","settings","homepage_hero_random_image","images","key","floor","random","mini_profiles","$section","event","setActive","$slider","slick","$slide","degree_tab_animation","menu","contains","style","setProperty","offsetWidth","offsetLeft","jQuery"],"sources":["theme.js"],"sourcesContent":["/* eslint-disable no-reserved-keys */\n/* global Foundation, aria, openDialog, createCalendar */\n\n/**\n * @file\n * Sitewide javascript behaviors.\n */\n(function ($, Drupal, Foundation, Vimeo, MiniMasonry, VanillaTabs) {\n 'use strict';\n var witAnimationDurations = 300;\n Drupal.behaviors.courseleafBubbles = {\n attach: function (context) {\n\n var $bubble = $('.code_bubble', context);\n $bubble.attr('tabindex', '0');\n $bubble.attr('role', 'button');\n $bubble.click(function (e) {\n e.preventDefault();\n });\n var options = {\n content: 'Loading...',\n multiple: true,\n trigger: 'click',\n contentAsHTML: true,\n maxWidth: 500,\n theme: 'wit-tip',\n animation: 'fade',\n updateAnimation: 'fade',\n interactive: true,\n functionBefore: function (instance, helper) {\n var $origin = $(helper.origin);\n var course = $origin.data('code-bubble');\n insertCourseData(course, instance);\n }\n };\n\n // For a11y navigation with keyboard.\n $bubble.keydown(function (e) {\n // Show on Enter.\n if (e.which === 13) {\n $(e.target).tooltipster('show');\n }\n // Hide on Tab or Escape.\n if (e.which === 9 || e.which === 27) {\n $(e.target).tooltipster('hide');\n }\n });\n\n function addTooltipster($elem) {\n $elem.tooltipster(options);\n }\n\n function insertCourseData(course, instance) {\n $.get('/courseleaf/course/' + course, function (data) {\n var $data = $(data);\n $('a', $data).each(function () {\n var $this = $(this);\n $this.attr('data-code-bubble', $this.text()).attr('onclick', null).addClass('code_bubble');\n });\n\n // Add close button.\n $('')\n .prependTo($data);\n var dn = $.parseHTML($data[0].outerHTML.trim());\n dn = $(dn).get(0);\n instance.content(dn);\n $(\".tooltipClose\").on(\"click\", function () {\n $bubble.tooltipster('hide');\n });\n Drupal.attachBehaviors(dn);\n });\n }\n\n addTooltipster($bubble);\n }\n };\n\n Drupal.behaviors.videoDialog = {\n attach: function (context) {\n var $triggerImage = $('.video-dialog-toggle', context);\n\n var closeVideoBackdrop = function ($backdrop) {\n $backdrop.addClass('light-bg').removeClass('dark-bg');\n var $iframe = $('iframe', $backdrop);\n if ($iframe.length > 0) {\n $iframe[0].contentWindow.postMessage('{\"event\":\"command\",\"func\":\"' + 'pauseVideo' + '\",\"args\":\"\"}', '*');\n setTimeout(function (e) {\n aria.closeCurrentDialog();\n }, witAnimationDurations);\n }\n else {\n aria.closeCurrentDialog();\n }\n\n };\n $('button.close-video-dialog', context).click(function (e) {\n var $backdrop = $(this).closest('.dialog-backdrop');\n closeVideoBackdrop($backdrop);\n });\n $triggerImage.click(function (e) {\n e.preventDefault();\n var $this = $(this);\n var vidId = $this.data('video-id');\n var $vidElement = $('#' + vidId);\n var $backdrop = $vidElement.closest('.dialog-backdrop');\n\n // Lazy load youtube video on modal open.\n var $vidContent = $('script[type=\"application/x-lazy-video\"]', $vidElement);\n if ($vidContent.length > 0) {\n $vidContent.replaceWith('
' + $vidContent.html() + '
');\n }\n\n openDialog(vidId, this);\n\n $backdrop.removeClass('light-bg').addClass('dark-bg').click(function () {\n closeVideoBackdrop($(this));\n });\n });\n }\n };\n\n Drupal.behaviors.searchDialog = {\n attach: function (context) {\n\n var $backdrop = $('.dialog-backdrop', context);\n var $searchForm = $('#search-dialog', context);\n\n var closeSearchBackdrop = function () {\n $backdrop.addClass('light-bg').removeClass('dark-bg');\n $searchForm.removeClass('on-screen').addClass('off-screen');\n setTimeout(function (e) {\n aria.closeCurrentDialog();\n }, witAnimationDurations);\n };\n\n $backdrop.click(function (e) {\n if (e.target.id === 'search-backdrop') {\n closeSearchBackdrop();\n }\n });\n $('#close-search', context).click(function () {\n closeSearchBackdrop();\n });\n\n $('.open-search', context).click(function () {\n openDialog('search-dialog', this);\n $backdrop.removeClass('light-bg').addClass('dark-bg');\n $searchForm.removeClass('off-screen').addClass('on-screen');\n\n $('#modal_searchbox').select();\n });\n }\n };\n\n Drupal.behaviors.megaMenu = {\n attach: function (context) {\n\n var $mainNav = $('#block-mainnavigation', context);\n var $a = $mainNav.find('li.has-child-menu > a');\n for (let i = 0; i < $a.length; i++) {\n var li = document.createElement('li');\n var clonedLink = $a[i].cloneNode(true);\n li.append(clonedLink);\n $($a[i]).parent().find('ul').first().prepend(li);\n }\n\n // https://adobe-accessibility.github.io/Accessible-Mega-Menu/\n $('#block-mainnavigation', context).accessibleMegaMenu({\n uuidPrefix: 'accessible-megamenu',\n menuClass: 'nav-menu',\n topNavItemClass: 'nav-item',\n panelClass: 'sub-nav',\n panelGroupClass: 'sub-nav-group',\n hoverClass: 'hover',\n focusClass: 'focus',\n openClass: 'open'\n });\n\n $('#block-servicenavigation', context).accessibleMegaMenu({\n uuidPrefix: 'accessible-megamenu',\n menuClass: 'nav-menu',\n topNavItemClass: 'nav-item',\n panelClass: 'sub-nav',\n panelGroupClass: 'sub-nav-group',\n hoverClass: 'hover',\n focusClass: 'focus',\n openClass: 'open'\n });\n\n }\n };\n\n // Drupal.behaviors.initAccordionMenu = {\n // attach: function (context, drupalSettings) {\n // var options = {\n // parentLink: true,\n // slideSpeed: 0,\n // submenuToggle: false,\n // multiOpen: true\n // };\n //\n // var $accordionMenu = $('.accordion-menu', context);\n //\n // var $activeAccordion = $accordionMenu.filter('[data-accordion-menu]');\n // var $otherAccordions = $accordionMenu;\n //\n // if (typeof Drupal.behaviors.activeLinks !== 'undefined') {\n // Drupal.behaviors.activeLinks.attach(context, drupalSettings);\n // }\n //\n // var activeLink = $activeAccordion.find('a.is-active')[0];\n // if ($activeAccordion !== null && (activeLink && (!activeLink.nextElementSibling || activeLink.nextElementSibling.nodeName !== 'UL'))) {\n // $otherAccordions = $accordionMenu.not($activeAccordion);\n //\n // var ul = document.createElement('ul');\n // var li = document.createElement('li');\n //\n // ul.className = 'menu vertical accordion-menu';\n // ul.appendChild(li);\n // $activeAccordion.parent().append(ul);\n // $activeAccordion.removeClass('menu vertical accordion-menu');\n // $activeAccordion.addClass('menu vertical nested');\n // li.appendChild(activeLink);\n // li.appendChild($activeAccordion[0]);\n //\n // new Foundation.AccordionMenu($(ul), options);\n // }\n //\n // new Foundation.AccordionMenu($otherAccordions, options);\n //\n // $('.menu--main--activetrail-filtered .accordion-menu > li').attr('aria-expanded', false);\n // }\n // };\n\n Drupal.behaviors.accordionMenu = {\n attach: function (context) {\n var $menu = $('.accordion-menu', context);\n var $a = $menu.find('li.has-child-menu > a');\n for (let i = 0; i < $a.length; i++) {\n var li = document.createElement('li');\n var clonedLink = $a[i].cloneNode(true);\n if ($(clonedLink).attr('href') !== '#') {\n li.append(clonedLink);\n $($a[i]).parent().find('ul').first().prepend(li);\n }\n }\n\n var options = {\n parentLink: false,\n slideSpeed: 0,\n submenuToggle: false,\n multiOpen: true\n };\n\n var $accordionMenu = $('.accordion-menu', context);\n new Foundation.AccordionMenu($accordionMenu, options);\n\n $('.menu--main--activetrail-filtered .accordion-menu > li').attr('aria-expanded', false);\n }\n };\n\n Drupal.behaviors.accordion = {\n attach: function (context) {\n new Foundation.Accordion($('.accordion'), {\n allowAllClosed: true,\n multiExpand: true\n });\n }\n };\n\n /**\n * Using http://blog.ginader.de/dev/jquery/accessible-tabs/.\n */\n Drupal.behaviors.witTabs = {\n attach: function (context) {\n $('.wit-tabs', context).accessibleTabs({\n tabhead: 'h2.wit-tab-head',\n tabheadClass: 'wit-tab-head',\n currentInfoClass: 'current-info visually-hidden',\n fxspeed: null,\n tabbody: '.wit-tab-content',\n wrapperClass: 'wit-tabs__content-processed'\n });\n }\n };\n\n /**\n * Mobile navigation toggle functionality.\n *\n * Modeled after https://codepen.io/svinkle/pen/LDKwA, which is the pattern\n * referenced by the \"Mobile Toggle\" pattern\n * here: https://a11yproject.com/patterns/\n */\n Drupal.behaviors.mobileNav = {\n attach: function (context) {\n var $menuContainer = $('#site-header-menu-container', context);\n var $menuButton = $('#menu-toggle-button', context);\n\n var enabledClass = 'menu-container-visible';\n\n if (($menuButton.length === 0) || ($menuContainer.length === 0)) {\n return;\n }\n\n $menuButton.click(function (e) {\n\n e.preventDefault();\n\n if ($menuContainer.hasClass(enabledClass)) {\n $menuContainer.removeClass(enabledClass);\n $menuContainer.attr('aria-hidden', 'true');\n $menuButton.attr('aria-expanded', 'false');\n $('svg.menu-opener', $menuButton).show();\n $('svg.menu-closer', $menuButton).hide();\n\n }\n else {\n $menuContainer.addClass(enabledClass);\n $menuContainer.attr('aria-hidden', 'false');\n $('ul.menu a', $menuContainer).first().focus();\n $menuButton.attr('aria-expanded', 'true');\n $('svg.menu-opener', $menuButton).hide();\n $('svg.menu-closer', $menuButton).show();\n }\n });\n }\n };\n\n /**\n * Events Calendar.\n */\n Drupal.behaviors.eventCalendar = {\n attach: function (context) {\n var dataHighlight = $highlight_array = $('.view-display-id-page_1').data('highlight');\n if (typeof dataHighlight === 'undefined') {\n return;\n }\n\n // Render either the mobile or large screen calendar.\n var datepicker_id = '#datepicker-mobile';\n if (Foundation.MediaQuery.is('large')) {\n datepicker_id = '#datepicker-large';\n }\n\n var $highlight_array = dataHighlight.split(',');\n\n // Initialize calendar, enter date in exposed form and submit.\n $(datepicker_id, context).datepicker({\n inline: true,\n dateFormat: 'yy-mm-dd',\n onSelect: function (date) {\n var next_day = new Date(date);\n next_day.setDate(next_day.getDate() + 2);\n var formatted_next_day = _formatDate(next_day);\n\n $(\"input[name='field_dates_value_1']\").val(date);\n $(\"input[name='field_dates_value_2']\").val(formatted_next_day);\n $('form#views-exposed-form-event-listing-page-1').submit();\n },\n beforeShowDay: function (date) {\n var actual_date = _formatDate(date);\n if ($.inArray(actual_date, $highlight_array) !== -1) {\n return [true, 'highlight'];\n }\n else {\n return [false, ''];\n }\n }\n });\n\n // Retrieve date input value and highlight that date on the calendar.\n var $selected_date = $(\"input[name='field_dates_value_1']\").val();\n if ($selected_date) {\n // Date array [\"2020\", \"10\", \"31\"].\n var date_array = $selected_date.split('-');\n var monthIndex = parseInt(date_array[1]) - 1;\n\n $('.datepicker').datepicker(\n 'setDate', new Date(date_array[0], monthIndex, date_array[2])\n );\n }\n\n // Helper function converts date into yyyy-mm-dd string.\n function _formatDate(date) {\n var year = date.getFullYear();\n var month = ('0' + (date.getMonth() + 1)).slice(-2);\n var day = ('0' + (date.getDate())).slice(-2);\n return (year + '-' + month + '-' + day);\n }\n\n }\n };\n\n Drupal.behaviors.addToCalendar = {\n attach: function (context) {\n if (typeof createCalendar === 'undefined') {\n return;\n }\n\n var $a2c = $('.hidden-add-to-calendar', context);\n\n var data = {\n title: $('.a2c-title', $a2c).text().trim(),\n start: new Date($('.a2c-start', $a2c).text().trim() * 1000),\n end: new Date($('.a2c-end', $a2c).text().trim() * 1000),\n duration: 120,\n address: $('.a2c-location', $a2c).text().trim(),\n description: $('.a2c-body>div.field>div', $a2c).not('.field--label').text().trim()\n };\n if (!$('.add-to-calendar', context).length) {\n return;\n }\n var myCalendar = createCalendar({\n options: {\n id: 'wit-add-to-calendar'\n },\n data: data\n });\n $('.add-to-calendar', context).append(myCalendar);\n }\n };\n\n /**\n * Attach and detach Foundation JS.\n */\n Drupal.behaviors.foundation = {\n attach: function (context) {\n // $(context).foundation();\n }\n };\n\n Drupal.behaviors.google_cse = {\n attach: function (context) {\n if (typeof window.cse === 'undefined') {\n window.__gcse = {};\n }\n var getParameterByName = function (url, name) {\n var match = RegExp('[?&]' + name + '=([^&]*)').exec(url);\n return match && decodeURIComponent(match[1].replace(/\\+/g, ' '));\n };\n\n var createSnippet = function (data) {\n var result = document.createElement('div');\n result.classList.add('cse_result');\n\n // Title.\n var titleFrag = document.createRange().createContextualFragment('' + data.title + '', 'text/html');\n var anchor = document.createElement('a');\n anchor.setAttribute('href', data.url);\n anchor.classList.add('cse_result__title');\n anchor.append(titleFrag);\n result.appendChild(anchor);\n\n // Url.\n var url = getParameterByName(data.url, 'q');\n var urlVisible = document.createElement('div');\n urlVisible.classList.add('cse_result__view_url');\n var urlValue = document.createTextNode(url);\n urlVisible.appendChild(urlValue);\n result.appendChild(urlVisible);\n\n // Content.\n var contentWrap = document.createElement('div');\n contentWrap.classList.add('cse_result__content');\n\n if (typeof data.thumbnailImage !== 'undefined') {\n var imgA = document.createElement('a');\n imgA.setAttribute('href', data.url);\n\n var img = document.createElement('img');\n img.setAttribute('src', data.thumbnailImage.url);\n img.setAttribute('width', data.thumbnailImage.width);\n img.setAttribute('height', data.thumbnailImage.height);\n\n imgA.appendChild(img);\n\n var imgContainer = document.createElement('div');\n imgContainer.classList.add('cse_result__content__thumbnail');\n imgContainer.appendChild(imgA);\n contentWrap.appendChild(imgContainer);\n }\n\n var content = document.createRange().createContextualFragment('' + data.content + '');\n contentWrap.append(content);\n result.appendChild(contentWrap);\n\n return result;\n };\n var myResultsReadyCallback = function (name, q, promos, results, resultsDiv) {\n var list = document.createElement('ul');\n list.classList.add('cse-result-list');\n if (typeof results[0].content !== 'undefined') {\n $(results).each(function (index, result) {\n var li = document.createElement('li');\n li.appendChild(createSnippet(result));\n list.appendChild(li);\n });\n resultsDiv.appendChild(list);\n }\n else {\n var noResults = document.createElement('div');\n noResults.classList.add('cse-result-none-found');\n var noResultsText = document.createTextNode('No Results Found');\n noResults.appendChild(noResultsText);\n resultsDiv.appendChild(noResults);\n }\n return true;\n };\n window.__gcse.searchCallbacks = {\n web: {\n ready: myResultsReadyCallback\n }\n };\n }\n };\n\n // Manage the videos.\n Drupal.behaviors.video_play_pause = {\n attach: function (context) {\n const iframe = $('.video-embed-field-provider-vimeo iframe', context);\n let $video = null;\n if (iframe.length !== 0) {\n $video = new Vimeo.Player(iframe);\n }\n else {\n $video = document.querySelector('.field--name-field-video-file video', context);\n }\n\n if ($video === null) {\n return;\n }\n\n // Control object for stopping/starting the video.\n let $videoControl = $('#c-control', context);\n $videoControl.pauseVideo = () => {\n $video.pause();\n $videoControl\n .removeClass('currently-playing')\n .addClass('currently-paused')\n .attr('aria-label', 'Play video');\n };\n $videoControl.playVideo = () => {\n $video.play();\n $videoControl\n .removeClass('currently-paused')\n .addClass('currently-playing')\n .attr('aria-label', 'Pause video');\n };\n $videoControl.click((e) => {\n e.preventDefault();\n if ($videoControl.hasClass('currently-playing')) {\n $videoControl.pauseVideo();\n }\n else {\n $videoControl.playVideo();\n }\n });\n }\n };\n\n Drupal.behaviors.readMore = {\n attach: function (context) {\n $('.program-full__top__content__body', context).each(function () {\n var $child_elements = $(this).children();\n var readMoreHeight = 0;\n\n $child_elements.each(function ($index, el) {\n var $el = $(el);\n var elHeight = $el.outerHeight(true);\n readMoreHeight = readMoreHeight + elHeight;\n if ($el.is('p')) {\n // Returning false will break the each loop after the first p tag is calculated.\n return false;\n }\n });\n\n $(this).readmore({\n collapsedHeight: readMoreHeight + 5,\n moreLink: 'More +',\n lessLink: 'Less -'\n });\n });\n }\n };\n Drupal.behaviors.degreeCard = {\n attach: function (context) {\n $('.field--name-field-degree-cards > div').click(function () {\n window.location = $(this).find('.field--name-field-degree-card-degree').find('a').attr('href');\n return false;\n });\n }\n };\n Drupal.behaviors.contentCard = {\n attach: function attach(context) {\n $('.field--name-field-content-cards > div').click(function () {\n window.location = $(this).find('.field--name-field-content-page-link').find('a').attr('href');\n return false;\n });\n }\n };\n\n Drupal.behaviors.homepageVideoContainer = {\n attach: function (context) {\n const $currentProjects = $('.region--content--front__currentprojects', context);\n const $videoContainer = $('.video-embed-field-responsive-video', $currentProjects);\n const $mediaContainer = $('.block-text-media__media', $currentProjects);\n const $iframe = $('iframe', $videoContainer).first();\n if (\n $currentProjects.length === 0\n || $videoContainer.length === 0\n || $mediaContainer.length === 0\n || $iframe.length === 0\n ) {\n return;\n }\n\n var debouncedResize = Drupal.debounce(function () {\n const height = window.innerHeight - 230;\n const width = height / .5625; // 16:9 ratio.\n const mediaContainerHeight = $mediaContainer.height();\n const iframeHeight = $iframe.height();\n $videoContainer.width(width * 1.0125);\n $iframe.css('marginTop', (Math.round((mediaContainerHeight - iframeHeight) / 2)) + 'px');\n }, 250);\n\n $(window).on('resize', debouncedResize);\n debouncedResize();\n }\n };\n\n Drupal.behaviors.featuredItems = {\n attach: function (context) {\n\n $('.field--name-field-featured > div', '.paragraph--type--content-featured-items-v2').css('position', 'absolute');\n var masonry;\n masonry = new MiniMasonry({\n container: '.paragraph--type--content-featured-items-v2 .field--name-field-featured',\n baseWidth: 324,\n gutter: 16,\n ultimateGutter: 32\n });\n\n // Layout once more time after all elements are loaded.\n $(window).on('load', function () {\n // Move items after 3th to the another container.\n if (window.innerWidth <= 640) {\n $('.field--name-field-featured > div:nth-child(n+4)', '.paragraph--type--content-featured-items-v2').each(\n function () {\n $(this).remove();\n });\n }\n else {\n $('.field--name-field-featured > div:nth-child(n+4)', '.paragraph--type--content-featured-items-v2').each(\n function () {\n let paragraph = $(this).closest('.paragraph--type--content-featured-items-v2');\n $(this).appendTo('.hidden-cards', paragraph);\n });\n $('.load-more-button-wrapper').on('click', function () {\n let paragraph = $(this).closest('.paragraph--type--content-featured-items-v2');\n $('.hidden-cards > div', paragraph).each(\n function () {\n $(this).appendTo('.paragraph--type--content-featured-items-v2 > .field.field--name-field-featured').show();\n });\n $('.read-more-button-wrapper', paragraph).show();\n $('.load-more-button-wrapper', paragraph).hide();\n masonry.layout();\n });\n }\n masonry.layout();\n });\n // loading='lazy' attribute makes images unloaded until appear in viewport.\n // MiniMasonry should do sizes calculation when images are loaded.\n $('img', '.paragraph--type--content-featured-items-v2').on('load', function () {\n masonry.layout();\n });\n }\n };\n\n Drupal.behaviors.taggedNews = {\n attach: function (context) {\n\n $('.views-infinite-scroll-content-wrapper > div', '.paragraph-wit-tagged-news__content').css('position', 'absolute');\n var masonry;\n masonry = new MiniMasonry({\n container: '.paragraph-wit-tagged-news__content .views-infinite-scroll-content-wrapper',\n baseWidth: 324,\n gutter: 16,\n ultimateGutter: 32\n });\n\n // Layout once more time after all elements are loaded.\n $(window).on('load', function () {\n masonry.layout();\n });\n // loading='lazy' attribute makes images unloaded until appear in viewport.\n // MiniMasonry should do sizes calculation when images are loaded.\n $('img', '.paragraph-wit-tagged-news__content').on('load', function () {\n masonry.layout();\n });\n }\n };\n\n Drupal.behaviors.program_tabs = {\n attach: function (context) {\n if (document.readyState !== 'loading') {\n new VanillaTabs({\n selector: '#tabs-h',\n type: 'horizontal',\n responsiveBreak: 1024,\n activeIndex: 0\n });\n }\n else {\n document.addEventListener('DOMContentLoaded', () => {\n // create horizontal tabs\n new VanillaTabs({\n selector: '#tabs-h',\n type: 'horizontal',\n responsiveBreak: 1024,\n activeIndex: 0\n });\n });\n }\n }\n };\n\n /**\n * Homepage Hero random image.\n */\n Drupal.behaviors.homePageHeroRandomImage = {\n attach: function (context, settings) {\n if ('homepage_hero_random_image' in settings && settings.homepage_hero_random_image.images.length) {\n let key = Math.floor(Math.random() * settings.homepage_hero_random_image.images.length);\n $('#mobile-hero-random-image').html(settings.homepage_hero_random_image.images[key]);\n }\n }\n };\n\n /**\n * Mini profiles Slick slider..\n */\n Drupal.behaviors.mini_profiles = {\n attach: function (context) {\n // Reference the mini-profiles section.\n var $section = $('.slick--field-member-profiles');\n\n // Slider init.\n $section.on('init', function (event) {\n // Focus the first slide.\n setActive($section.find('.slick-current'));\n\n // Set up prev/next buttons.\n var $slider = $section.find('.slick-slider');\n $(\".slider-prev\").click(function (event) {\n $slider.slick('slickPrev');\n });\n $('.slider-next').click(function (event) {\n $slider.slick('slickNext');\n });\n\n // After change (animation finished), update slide sizes.\n $section.on('afterChange', function (event) {\n $section.find('.slide').removeClass('slick-current2');\n setActive($section.find('.slick-current'));\n });\n });\n\n function setActive($slide) {\n $slide.addClass('slick-current2');\n $('.team-profile-active').html( $slide.html() );\n }\n }\n };\n\n /**\n * Underline animation effect on degree page tabs\n */\n Drupal.behaviors.degree_tab_animation = {\n attach: function attach(context) {\n\n const menu = document.querySelector(\".tabs__nav\");\n menu.addEventListener(\"mouseover\", (event) => {\n if (event.target.classList.contains(\"tabs__nav_link\")) {\n menu.style.setProperty(\n \"--underline-width\",\n `${event.target.offsetWidth}px`\n );\n menu.style.setProperty(\n \"--underline-offset-x\",\n `${event.target.offsetLeft}px`\n );\n }\n });\n menu.addEventListener(\"mouseleave\", () =>\n menu.style.setProperty(\"--underline-width\", \"0\")\n );\n }\n }\n})(jQuery, Drupal, Foundation, Vimeo, MiniMasonry, VanillaTabs);\n\n/*\n\n\n menuItem.style.setProperty(\n \"--underline-width\",\n `${event.target.offsetWidth}px`\n );\n menuItem.style.setProperty(\n \"--underline-offset-x\",\n `${event.target.offsetLeft}px`\n );\n*/\n"],"mappings":"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","ignoreList":[]}