{"version":3,"sources":["node_modules/browser-pack/_prelude.js","frontend/assets/js/endocrine--shell.js","frontend/assets/js/endocrine/BackToTop.js","frontend/assets/js/endocrine/HeaderSubscribe.js","frontend/assets/js/endocrine/ViewAllExpand.js","frontend/assets/js/endocrine/ViewLarger.js","frontend/assets/js/endocrine/ViewMore.js","frontend/assets/js/endocrine/breakpoint.js","frontend/assets/js/endocrine/navigation/Hamburger.js","frontend/assets/js/endocrine/navigation/MagicNav.js","frontend/assets/js/endocrine/navigation/PrimaryNav.js","frontend/assets/js/endocrine/navigation/SecondaryNav.js","frontend/assets/js/endocrine/navigation/SimpleNavTrigger.js","frontend/assets/js/endocrine/richText.js","frontend/assets/js/polyfill/closest.js","frontend/assets/js/polyfill/es6-polyfill.js","frontend/assets/js/polyfill/index.js","frontend/assets/js/polyfill/object-fit.js","frontend/assets/js/polyfill/popstate-event.js"],"names":[],"mappings":"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","file":"endocrine--shell-generated.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i {\n return new ViewMore($(el));\n });\n}\n\n// header subscribe\nif ($(\".js-newsletter-signup\").length) {\n const headerSubscribe = $.makeArray($(\".js-newsletter-signup\")).map(el => {\n return new HeaderSubscribe($(el));\n });\n}\n\nrichText();\n\n// PrimaryNav\nconst $primaryNavEl = $(\".js-primary-nav\");\nif ($primaryNavEl.length) {\n let primaryNav = new PrimaryNav($primaryNavEl);\n}\n\n// Hamburger\nconst $hamburger = $(\".js-hamburger\");\nif ($hamburger.length) {\n let hamburger = new Hamburger($hamburger, false, true);\n}\n\n// SimpleNavTrigger\nconst $simplenav = $(\".js-simple-nav\");\nif ($simplenav.length) {\n const simplenav = $.makeArray($(\".js-simple-nav\")).map(el => {\n return new SimpleNavTrigger($(el));\n });\n}\n\n// Global Nav\nconst $globalnav = $(\".js-magic-nav\");\nif ($globalnav.length) {\n const globalnav = $.makeArray($globalnav).map(el => {\n return new MagicNav($(el));\n });\n}\n\n// Expandable Listings\nconst viewAllables = $.makeArray($(\".js-view-all-expand\")).map(el => {\n return new ViewAllExpand($(el));\n});\n\n// Secondary Nav\nif ($(\".js-secondary-nav\").length) {\n const secondaryNav = new SecondaryNav($(\".js-secondary-nav\"));\n}\n\n// back to top button\nif ($(\".js-back-to-top\").length) {\n const backToTop = $.makeArray($(\".js-back-to-top\")).map(el => {\n return new BackToTop($(el));\n });\n}\n\n// view images/infographics larger in a modal\nif ($(\".js-image-block-zoomed\").length) {\n const viewLarger = $.makeArray($(\".js-image-block-zoomed\")).map(el => {\n return new ViewLarger($(el));\n });\n}\n\n// view more text\nif ($(\".js-more-text\").length) {\n const viewMore = $.makeArray($(\".js-more-text\")).map(el => {\n return new ViewMore($(el));\n });\n}\n\n$(document).ready(function() {});\n","import $ from 'jquery';\n\nexport class BackToTop {\n constructor($el) {\n this.$el = $el;\n this.$htmlbody = $(\"html, body\");\n this.bindEvents();\n }\n\n bindEvents() {\n // scroll to the top of the page when you click on the button\n this.$el.on(\"click\", (event) => this.goToTop(event));\n $(window).on('scroll', (event) => this.showButton(event));\n }\n\n goToTop(event) {\n this.$htmlbody.animate({ scrollTop: \"0\" });\n }\n\n showButton(event) {\n var scrollPosition = $(event.target).scrollTop();\n var viewportHeight = $(window).height();\n // if you scrolled twice the distance of the height of your viewport ...\n // show the button\n if (scrollPosition >= viewportHeight) {\n $('.js-back-to-top').addClass(\"is-active\");\n } else {\n $('.js-back-to-top').removeClass(\"is-active\");\n }\n }\n}\n","import $ from 'jquery';\n\nexport class HeaderSubscribe {\n constructor($el) {\n this.$el = $el;\n this.$emailAddress = $el.find('.js-newsletter-signup-email');\n this.$button = $el.find('.js-newsletter-signup-btn');\n this.$newsletterFooter = $('.js-newsletter-subscribe');\n this.$emailAddressFooter = $('.js-newsletter-subscribe-email');\n this.bindEvents();\n }\n\n bindEvents() {\n this.$button.on('click', (event) => this.enterEmail(event));\n }\n\n enterEmail(event) {\n event.preventDefault();\n let inputEmail = this.$emailAddress.val();\n\n $('html, body').animate({\n scrollTop: (this.$newsletterFooter.offset().top)\n }, 500);\n\n this.$emailAddressFooter.val(inputEmail).focus();\n }\n}","import $ from 'jquery';\n\nexport class ViewAllExpand {\n constructor($el) {\n this.$el = $el;\n this.$button = $el.find('.js-more');\n this.$expandTarget = $el.find('.js-expand-target');\n \n this.bindEvents();\n }\n\n bindEvents() {\n this.$el.on('click', '.js-more', (event) => this.expand(event));\n }\n\n expand(event) {\n event.preventDefault();\n this.$expandTarget\n .slideDown(200)\n .attr('aria-expanded', true);\n this.$button.hide();\n }\n \n}","import $ from 'jquery';\n\nexport class ViewLarger {\n constructor($el) {\n this.$el = $el;\n this.$wrapper = this.$el.closest('.js-image-block');\n this.$button = this.$wrapper.find('.js-image-block-zoom button');\n this.$close = this.$el.find('.js-image-block-zoomed-close');\n this.$document = $(document);\n this.escapeKeyCode = 27;\n this.bindEvents();\n }\n\n bindEvents() {\n this.$button.on('click', (event) => this.grow(event));\n this.$close.on('click', (event) => this.shrink(event));\n this.$document.on('keydown', (event) => this.shrinkWithKeyboard(event));\n }\n\n grow(event) {\n event.preventDefault();\n this.$el\n .addClass('is-open')\n .attr('aria-expanded', true);\n }\n\n shrink(event) {\n event.preventDefault();\n this.$el\n .removeClass('is-open')\n .attr('aria-expanded', false);\n }\n\n shrinkWithKeyboard(event) {\n if (event.which === this.escapeKeyCode) {\n this.shrink(event);\n }\n }\n}\n","import $ from 'jquery';\n\nexport class ViewMore {\n constructor($el) {\n this.$el = $el;\n // this.$document = $(document);\n this.$button = this.$el.find('.js-more-text-btn button');\n this.$moreText = this.$el.find('.js-add-text');\n\n this.bindEvents();\n }\n\n bindEvents() {\n this.$button.on('click', (event) => this.more(event));\n }\n\n more(event) {\n event.preventDefault();\n this.$moreText.css('display', 'inline');\n this.$button.css('display', 'none');\n }\n}","import $ from \"jquery\";\n\n// Extract current breakpoint name as string from DOM\n// More details: https://www.lullabot.com/articles/importing-css-breakpoints-into-javascript\nexport const breakpoint = () => {\n return window.getComputedStyle(document.querySelector(\"body\"), \"::before\")\n .getPropertyValue(\"content\")\n .replace(/\\\"/g, \"\");\n};\n\n\n","import $ from \"jquery\";\nimport { breakpoint } from \"../breakpoint\";\n\nlet throttler;\nconst keyCodes = {\n tab: 9,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n enter: 13,\n space: 32,\n escape: 27\n};\n\n/*\n * Trigger class for Hamburger-like menues\n * params:\n * $el: jQuery element, burger menu trigger\n * skipTriggerInTab: when true, confine tabbing behavior to target and\n * skip trigger (trigger is not a toggle)\n * preventBodyScroll: if true, locks body on burger open\n */\nexport class Hamburger {\n constructor($el, skipTriggerInTab, preventBodyScroll) {\n this.$el = $el;\n this.skipTriggerInTab = skipTriggerInTab;\n this.preventBodyScroll = preventBodyScroll;\n this.$target = $(\"#\" + this.$el.data(\"target\")); // Body of menu\n this.$focus = this.$el.data(\"focus\")\n ? $(\"#\" + this.$el.data(\"focus\"))\n : null; // Element in menu to focus on open\n this.$targetClose = this.$target.find(\".js-hamburger-close\"); // Close button\n this.inMenuMode = false;\n this.clickToClose = this.$target.hasClass(\"js-hamburger-close-screen\");\n\n\n /* Find legit focusable elements... doing this instead of adding jQuery UI because we're not using it elsewhere */\n this.$targetsFirstTabbable = this.$target.find(\"a, button, :input, [tabindex]\").first();\n this.$targetsLastTabbable = this.$target.find(\"a, button, :input, [tabindex]\").last();\n\n this.manageBreakpointBehaviors();\n this.bindEvents();\n }\n\n bindEvents() {\n let thisMenu = this;\n\n /* Esc key-triggered menu close */\n this.$target.on(\"keydown\", function(e) {\n if (e.keyCode == keyCodes.escape && thisMenu.inMenuMode) {\n e.preventDefault();\n thisMenu.$target.hide().attr(\"aria-hidden\", \"true\");\n thisMenu.$el.removeClass(\"is-open\").focus(); /* Skip focus back to button and stay there due to preventDefault */\n $(\"body\").removeClass(\"is-scroll-frozen\");\n }\n });\n\n\n /* Close by click outside */\n this.$target.on(\"click\", function(e) {\n /* Only if we clicked the screen, not something else inside it */\n if (thisMenu.clickToClose && $(e.target).hasClass(\"js-hamburger-close-screen\")) {\n e.preventDefault();\n thisMenu.$target.hide().attr(\"aria-hidden\", \"true\");\n thisMenu.$el.removeClass(\"is-open\").focus(); /* Skip focus back to button and stay there due to preventDefault */\n $(\"body\").removeClass(\"is-scroll-frozen\");\n }\n });\n\n\n /* Key triggered button close */\n this.$targetClose.on(\"keydown\", function(e) {\n e.stopPropagation();\n\n switch (e.keyCode) {\n case keyCodes.escape:\n case keyCodes.enter:\n case keyCodes.space:\n /*\n It's possible for multiple triggers to target one menu, so\n ONLY trigger the close behaviors and focus for the currently active trigger\n */\n if (thisMenu.inMenuMode) {\n e.preventDefault();\n thisMenu.$target.hide().attr(\"aria-hidden\", \"true\");\n thisMenu.$el.removeClass(\"is-open\");\n thisMenu.$el.focus();\n thisMenu.inMenuMode = false;\n $(\"body\").removeClass(\"is-scroll-frozen\");\n }\n break;\n default:\n }\n });\n\n this.$el.on(\"keyup\", function(e) {\n e.preventDefault(); /* workaround for FF bug */\n });\n\n this.$targetsLastTabbable.on(\"keyup\", function(e) {\n e.preventDefault(); /* workaround for FF bug */\n });\n\n this.$targetsFirstTabbable.on(\"keyup\", function(e) {\n e.preventDefault(); /* workaround for FF bug */\n });\n\n this.$targetClose.on(\"keyup\", function(e) {\n e.preventDefault(); /* workaround for FF bug */\n });\n\n /* Click trigger for button close */\n this.$targetClose.on(\"click\", function(e) {\n e.preventDefault();\n\n if (thisMenu.inMenuMode) {\n thisMenu.$target.hide().attr(\"aria-hidden\", \"true\");\n thisMenu.$el.removeClass(\"is-open\");\n thisMenu.$el.focus();\n thisMenu.inMenuMode = false;\n $(\"body\").removeClass(\"is-scroll-frozen\");\n }\n });\n\n /* Keyboard trap for tab, forward tabbing */\n this.$targetsLastTabbable.on(\"keydown\", function(e) {\n if (e.keyCode == keyCodes.tab && !e.shiftKey && thisMenu.inMenuMode) {\n e.preventDefault();\n if(thisMenu.skipTriggerInTab) {\n thisMenu.$targetsFirstTabbable.focus(); /* Re-focus first item */\n }\n else {\n thisMenu.$el.focus(); /* Skip focus back to button and stay there due to preventDefault */\n }\n }\n });\n\n /* Keyboard trap for tab, backward tabbing */\n this.$targetsFirstTabbable.on(\"keydown\", function(e) {\n if (e.keyCode == keyCodes.tab && e.shiftKey && thisMenu.inMenuMode) {\n e.preventDefault();\n if(thisMenu.skipTriggerInTab) {\n thisMenu.$targetsLastTabbable.focus(); /* Re-focus first item */\n }\n else {\n thisMenu.$el.focus(); /* Skip focus back to button and stay there due to preventDefault */\n }\n }\n });\n\n /* Key controls for burger open trigger */\n this.$el.on(\"keydown\", function(e) {\n switch (e.keyCode) {\n case keyCodes.tab:\n if (e.shiftKey && thisMenu.inMenuMode) {\n e.preventDefault();\n thisMenu.$targetsLastTabbable.focus();\n }\n break;\n case keyCodes.escape:\n e.preventDefault();\n thisMenu.$target.hide().attr(\"aria-hidden\", \"true\");\n thisMenu.$el.removeClass(\"is-open\");\n break;\n case keyCodes.enter:\n case keyCodes.space:\n e.preventDefault();\n\n thisMenu.$target.toggle().attr(\"aria-hidden\", thisMenu.getHiddenState());\n thisMenu.$el.toggleClass(\"is-open\");\n thisMenu.inMenuMode = !thisMenu.inMenuMode;\n if (thisMenu.preventBodyScroll) {\n $(\"body\").toggleClass(\"is-scroll-frozen\");\n }\n if (thisMenu.inMenuMode) {\n if (thisMenu.$focus) {\n thisMenu.$focus.focus();\n }\n else {\n thisMenu.$targetsFirstTabbable.focus();\n }\n }\n break;\n default:\n }\n });\n\n /* Click controls for trigger open */\n this.$el.on(\"click\", function() {\n thisMenu.$target.toggle().attr(\"aria-hidden\", thisMenu.getHiddenState());\n thisMenu.$el.toggleClass(\"is-open\");\n thisMenu.inMenuMode = !thisMenu.inMenuMode;\n if (thisMenu.preventBodyScroll) {\n $(\"body\").toggleClass(\"is-scroll-frozen\");\n }\n\n if (thisMenu.inMenuMode) {\n if (thisMenu.$focus) {\n thisMenu.$focus.focus();\n }\n else {\n thisMenu.$targetsFirstTabbable.focus();\n }\n }\n });\n\n $(window).on(\"resize\", event => {\n if (throttler) {\n window.clearTimeout(throttler);\n }\n throttler = setTimeout(() => {\n this.manageBreakpointBehaviors();\n }, 400);\n });\n }\n\n /* Helper function to grab current open state */\n getHiddenState() {\n return this.$target.attr(\"aria-hidden\") === \"true\" ? \"false\" : \"true\";\n }\n\n /*\n Handle changes on breakpoint.\n In general, we want to close/hide the menu as appropriate when switching between\n major breakpoints, as well as set or unset the appropriate aria attributes\n */\n manageBreakpointBehaviors() {\n if ((breakpoint() === \"xsmall\" || breakpoint() === \"xxsmall\") && this.$el.hasClass(\"is-open\")) {\n this.$target.attr(\"aria-hidden\", \"false\");\n this.inMenuMode = true;\n }\n else if ((breakpoint() === \"xsmall\" || breakpoint() === \"xxsmall\")) {\n this.$target.hide().attr(\"aria-hidden\", \"true\").css(\"display\", \"\");\n this.inMenuMode = false;\n }\n else {\n this.$target.show().attr(\"aria-hidden\", \"false\").css(\"display\", \"\");\n this.inMenuMode = false;\n this.$el.removeClass(\"is-open\");\n $(\"body\").removeClass(\"is-scroll-frozen\");\n }\n }\n}\n","import $ from \"jquery\";\nimport { breakpoint } from \"../breakpoint\";\n\nlet throttler;\nconst keyCodes = {\n tab: 9,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n enter: 13,\n space: 32,\n escape: 27\n};\n\nexport class MagicNav {\n\n constructor($el) {\n this.$el = $el;\n this.$triggerlinks = this.$el.find(\".js-magic-nav__child-trigger\");\n this.$childLinks = this.$triggerlinks.find(\"li a\");\n this.$activeItem = null; // Current context\n this.magicshrinkingnav = this.$el.hasClass(\"js-shrinkable\");\n\n this.bindEvents();\n\n if (this.magicshrinkingnav) {\n this.$more = this.$el.find(\".js-magic-nav__more\");\n this.$topLevelLinks = this.$el.find(\".js-magic-nav__top-level-item:not(.js-magic-nav__more)\");\n this.$moreLinks = this.$more.find(\".js-magic-nav__sublevel-item\");\n this.magicShrink();\n }\n }\n\n bindEvents() {\n let thisMenu = this;\n\n $(window).on(\"resize\", event => {\n if (throttler) {\n window.clearTimeout(throttler);\n }\n throttler = setTimeout(() => {\n if (this.magicshrinkingnav) {\n thisMenu.magicShrink();\n }\n }, 50);\n });\n\n /* Key triggers for child links */\n /* Accessibile menus are expected to behave as application menus */\n this.$childLinks.on(\"keydown\", function(e) {\n /* Prevent triggerlinks behavior from happening */\n e.stopPropagation();\n\n let $sublevelTarget = $(this).parents(\".js-magic-nav__sublevel\");\n let $toplevelTarget = $(this).parents(\".js-magic-nav__top-level-item\");\n let $itemParent = $(this).parents(\".js-magic-nav__sublevel-item\");\n\n switch (e.keyCode) {\n case keyCodes.tab:\n $sublevelTarget.hide().attr(\"aria-hidden\", \"true\");\n $toplevelTarget.removeClass(\"is-open\");\n $toplevelTarget.focus(); /* Focus parent, normal event flow will take us to the next one */\n break;\n case keyCodes.escape:\n e.preventDefault();\n $sublevelTarget.hide().attr(\"aria-hidden\", \"true\");\n $toplevelTarget.removeClass(\"is-open\");\n $toplevelTarget.focus(); /* Focus parent and stay there due to preventDefault */\n break;\n case keyCodes.down:\n e.preventDefault();\n let $nextTarget = $itemParent.next(\":not(.is-hidden)\").length ? $itemParent.next(\":not(.is-hidden)\").find(\"a\") : $sublevelTarget.children(\"li:not(.is-hidden)\").first().children(\"a\");\n $nextTarget.focus();\n break;\n case keyCodes.up:\n let $prevTarget = $itemParent.prev(\":not(.is-hidden)\").length ? $itemParent.prev(\":not(.is-hidden)\").find(\"a\") : $sublevelTarget.children(\"li:not(.is-hidden)\").last().children(\"a\");\n $prevTarget.focus();\n break;\n default:\n }\n });\n\n /* Click triggers for top-level links */\n thisMenu.$triggerlinks.on(\"click\", function(e) {\n if (e.target === this)\n {\n e.preventDefault();\n }\n let $childTarget = $(this).children(\".js-magic-nav__sublevel\");\n let newHiddenState = $childTarget.attr(\"aria-hidden\") === \"true\" ? \"false\" : \"true\";\n\n if (newHiddenState === \"false\") {\n let otherTriggers = thisMenu.$triggerlinks.not(this);\n otherTriggers.removeClass(\"is-open\");\n otherTriggers.children(\".js-magic-nav__sublevel\").hide().attr(\"aria-hidden\", \"true\");\n }\n\n $(this).toggleClass(\"is-open\");\n $childTarget.toggle().attr(\"aria-hidden\", newHiddenState);\n });\n\n /* Key triggers for top-level links */\n /* Accessibile menus are expected to behave as application menus */\n thisMenu.$triggerlinks.on(\"keydown\", function(e) {\n\n let $childTarget = $(this).children(\".js-magic-nav__sublevel\");\n let $firstChildLink = $(this).children(\".js-magic-nav__sublevel\").children(\"li:not(.is-hidden)\").first().children(\"a\");\n let $lastChildLink = $(this).children(\".js-magic-nav__sublevel\").children(\"li:not(.is-hidden)\").last().children(\"a\");\n let newHiddenState = $childTarget.attr(\"aria-hidden\") === \"true\" ? \"false\" : \"true\";\n\n switch (e.keyCode) {\n case keyCodes.tab:\n $childTarget.hide().attr(\"aria-hidden\", \"true\");\n $(this).removeClass(\"is-open\");\n break;\n case keyCodes.escape:\n if (newHiddenState === \"true\") {\n /* If we wouldn't be closing the thing anyway, let esc bubble to close any parents */\n /* Otherwise, if it's not closed, don't ALSO close container, modal, or other menus... */\n e.stopPropagation();\n }\n e.preventDefault();\n $childTarget.hide().attr(\"aria-hidden\", \"true\");\n $(this).removeClass(\"is-open\");\n break;\n case keyCodes.enter:\n case keyCodes.space:\n e.preventDefault();\n $childTarget.toggle().attr(\"aria-hidden\", newHiddenState);\n $(this).toggleClass(\"is-open\");\n break;\n case keyCodes.down:\n e.preventDefault();\n $childTarget.show().attr(\"aria-hidden\", \"false\");\n $firstChildLink.focus();\n break;\n case keyCodes.up:\n e.preventDefault();\n $childTarget.show().attr(\"aria-hidden\", \"false\");\n $lastChildLink.focus();\n break;\n default:\n }\n });\n }\n\n /*\n * magicShrink\n * Handles \"More+\" dropdown on Now and Administrative type pages.\n * Triggered if wrapping element has the class js-shrinkable\n * Note that the markup must ALSO support shrinkability, requiring a certain amount of link\n * duplication.\n */\n magicShrink() {\n let targetWidth = this.$el.width();\n let filledSoFar = this.$more.outerWidth(true);\n let thisMenu = this;\n let dropFirstWidth = 1340; /* This is very much a magic number */\n\n /* Reset */\n this.$topLevelLinks.css({ display: \"\" });\n this.$moreLinks.css({ display: \"none\"}).addClass(\"is-hidden\");\n\n this.$topLevelLinks.each(function(i) {\n let $moreCounterpart = $(thisMenu.$moreLinks.get($(this).index()));\n\n if (i === 0 && $(document).width() < dropFirstWidth) {\n /* Skip the first item for now */\n }\n else if (filledSoFar + $(this).outerWidth(true) > targetWidth) {\n $(this).css({ display: \"none\" });\n $moreCounterpart.css({ display: \"block\"}).removeClass(\"is-hidden\");\n filledSoFar += $(this).outerWidth(true); /* We just want to stop, not squeeze in a later one */\n }\n else {\n $(this).css({ display: \"\" });\n $moreCounterpart.css({ display: \"none\"}).addClass(\"is-hidden\");\n filledSoFar += $(this).outerWidth(true);\n }\n });\n\n /* This logic is a little strange due to the request to drop the first link first, then the last link, etc... */\n if ($(document).width() < dropFirstWidth && this.$topLevelLinks[0] && ((filledSoFar + $(this.$topLevelLinks[0]).outerWidth(true)) > targetWidth)) {\n $(this.$topLevelLinks[0]).css({ display: \"none\" });\n }\n }\n}\n","import $ from 'jquery';\nimport { breakpoint } from '../breakpoint';\n\nlet throttler;\nconst KEY_CODES = {\n tab: 9,\n enter: 13,\n leftArrow: 37,\n rightArrow: 39,\n upArrow: 38,\n downArrow: 40,\n esc: 27,\n space: 32\n};\n\nexport class PrimaryNav {\n constructor($el) {\n this.$el = $el;\n this.$navMenu = $el.find('.js-menu');\n this.$navItems = $el.find('.js-nav-item');\n this.$navToggle = $el.find('.js-nav-toggle');\n this.openClass = 'is-open';\n\n this.bindEvents();\n\n this.$navItems.each(this.adjustFlyoutMenuAlignment);\n\n // run any breakpoint changes immediately\n this.onBreakpointChange(breakpoint());\n }\n\n bindEvents() {\n // Show sub menus on mouseover, @todo make a click version of this for mobile.\n //this.$navItems.filter(`.has-submenu`).on('mouseover', event => this.onItemClick(event));\n\n this.$navItems.filter(`.has-submenu`).on('mouseover focus', event => this.onItemMouseOver(event));\n this.$navItems.filter(`.has-submenu`).on('mouseout', event => this.onItemMouseOut(event));\n\n this.$navItems.find(`.primary-nav__submenu-trigger`).on('click touch', event => this.onSubmenuClick(event));\n // Toggle entire navigation when hidden\n // in some viewports\n this.$navToggle.on('click', event => this.onNavToggleClick(event));\n\n // bind keypress events for keyboard navigation\n this.$navMenu.on('keydown', event => this.onKeyPress(event));\n\n // Add a document click handler to detect clicks\n // with the intent to dismiss navigation\n $(document).on('click', event => this.onOtherClick(event));\n\n // tie in certain responsive behaviors to a throttled\n // resize event\n $(window).on(\"resize\", event => {\n if (throttler) {\n window.clearTimeout(throttler);\n }\n throttler = setTimeout(() => {\n this.$navItems.each(this.adjustFlyoutMenuAlignment);\n this.onBreakpointChange(breakpoint());\n }, 400);\n });\n }\n\n onNavToggleClick(event) {\n // Prevent this click from being counted\n // as a document click\n event.stopPropagation();\n this.toggleNavMenu();\n }\n\n onItemClick(event) {\n // Prevent this click from being counted\n // as a document click\n event.stopPropagation();\n let $clickedItem = $(event.target).closest('.js-nav-item');\n this.operateSubMenu($clickedItem);\n }\n\n onItemMouseOver(event) {\n let $mousedOverItem = $(event.target).closest('.js-nav-item');\n this.operateSubMenuMouseOver($mousedOverItem);\n }\n\n onItemMouseOut(event) {\n let $mousedOutItem = $(event.target).closest('.js-nav-item');\n this.operateSubMenuMouseOut($mousedOutItem);\n }\n\n onSubmenuClick(event) {\n // Prevent this click from being counted\n // as a document click\n event.stopPropagation();\n let $clickedItem = $(event.target).closest('.js-nav-item');\n this.operateSubMenu($clickedItem);\n }\n\n onOtherClick(event) {\n if (breakpoint() === 'large') {\n this.toggleFlyoutMenus([this.$openItem()]);\n }\n }\n\n onBreakpointChange(bp) {\n switch(bp) {\n case \"large\":\n this.$navMenu.show();\n this.ariaExpand(this.$el);\n break;\n case \"medium\":\n this.ariaCollapse(this.$el);\n break;\n case \"small\":\n default:\n return;\n }\n }\n\n onKeyPress(event) {\n switch(event.which) {\n case KEY_CODES.enter:\n case KEY_CODES.space:\n this.toggleInContext(this.focusContext());\n break;\n case KEY_CODES.rightArrow:\n this.rightInContext(this.focusContext());\n break;\n case KEY_CODES.leftArrow:\n this.leftInContext(this.focusContext());\n break;\n case KEY_CODES.upArrow:\n this.upInContext(this.focusContext());\n break;\n case KEY_CODES.downArrow:\n this.downInContext(this.focusContext());\n break;\n case KEY_CODES.esc:\n this.collapseInContext(this.focusContext());\n break;\n default:\n return;\n }\n }\n\n operateSubMenuMouseOver($el) {\n // the behavior of the menus changes depending\n // on the active breakpoint\n switch(breakpoint()) {\n case 'large':\n var $items = $('.js-nav-item');\n this.closeFlyoutMenu($items); // close all of them\n this.showFlyoutMenusMouseOver([$el, this.$openItem()]);\n break;\n case 'medium':\n case 'small':\n default:\n return;\n }\n }\n\n operateSubMenuMouseOut($el) {\n // the behavior of the menus changes depending\n // on the active breakpoint\n switch(breakpoint()) {\n case 'large':\n this.hideFlyoutMenusMouseOut([$el, this.$openItem()]);\n break;\n case 'medium':\n case 'small':\n default:\n return;\n }\n }\n\n operateSubMenu($el) {\n // the behavior of the menus changes depending\n // on the active breakpoint\n switch(breakpoint()) {\n case 'large':\n this.toggleFlyoutMenus([$el, this.$openItem()]);\n break;\n case 'medium':\n case 'small':\n this.toggleCollapsingMenu($el);\n break;\n default:\n return;\n }\n }\n\n // explicity close a submenu\n closeSubMenu($el) {\n switch(breakpoint()) {\n case 'large':\n this.closeFlyoutMenu($el);\n break;\n case 'medium':\n case 'small':\n this.closeCollapsingMenu($el);\n break;\n default:\n return;\n }\n\n }\n\n toggleNavMenu() {\n if (this.$el.hasClass(this.openClass)) {\n this.$navMenu.slideUp(300);\n this.ariaCollapse(this.$el);\n } else {\n this.$navMenu.slideDown(300);\n this.ariaExpand(this.$el);\n }\n\n this.$el.toggleClass(this.openClass);\n }\n\n ariaExpand($el) {\n $el.attr('aria-expanded', true);\n }\n\n ariaCollapse($el) {\n $el.attr('aria-expanded', false);\n }\n\n toggleFlyoutMenus(items) {\n // In case the same item is added twice (by clicking on the currently open item, for example)\n // only apply behavior to each element once\n items.reduce( ($toggled, $item) => {\n if ($toggled.index($item) === -1) {\n if ($item.hasClass(this.openClass)) {\n this.closeFlyoutMenu($item);\n this.closeMenuAttributes($item);\n this.ariaCollapse($item.find('.js-submenu'));\n } else {\n this.openFlyoutMenu($item);\n this.openMenuAttributes($item);\n this.ariaExpand($item.find('.js-submenu'));\n }\n\n return $toggled.add($item);\n }\n }, $());\n }\n\n showFlyoutMenusMouseOver(items) {\n items.reduce( ($toggled, $item) => {\n if ($toggled.index($item) === -1) {\n this.openFlyoutMenu($item);\n this.openMenuAttributes($item);\n this.ariaExpand($item.find('.js-submenu'));\n return $toggled.add($item);\n }\n }, $());\n }\n\n hideFlyoutMenusMouseOut(items) {\n items.reduce( ($toggled, $item) => {\n if ($toggled.index($item) === -1) {\n this.closeFlyoutMenu($item);\n this.closeMenuAttributes($item);\n this.ariaCollapse($item.find('.js-submenu'));\n return $toggled.add($item);\n }\n }, $());\n }\n\n openFlyoutMenu($item) {\n this.openMenuAttributes($item);\n }\n\n closeFlyoutMenu($item) {\n this.closeMenuAttributes($item);\n }\n\n toggleCollapsingMenu($item) {\n if ($item.hasClass(this.openClass)) {\n this.closeCollapsingMenu($item);\n this.closeMenuAttributes($item);\n } else {\n this.openCollapsingMenu($item);\n this.openMenuAttributes($item);\n }\n }\n\n openCollapsingMenu($item) {\n const $submenu = $item.find('.js-submenu');\n $submenu.slideDown(300);\n }\n\n closeCollapsingMenu($item) {\n const $submenu = $item.find('.js-submenu');\n $submenu.slideUp(300);\n }\n\n openMenuAttributes($item) {\n $item.addClass(this.openClass);\n $item.find('ul a').attr('tabindex', 0);\n }\n\n closeMenuAttributes($item) {\n $item.removeClass(this.openClass);\n $item.find('ul a').attr('tabindex', -1);\n }\n\n adjustFlyoutMenuAlignment(idx, item) {\n // if the menu is going to be rendered offscreen,\n // we need to push it back.\n let $item = $(item);\n let $menu = $item.find('.js-submenu');\n const left = $item.offset().left;\n const menuWidth = $menu.outerWidth();\n const windowWidth = $(window).width();\n const diff = windowWidth - (left + menuWidth);\n\n const newLeft = diff < 0 ? diff : 0;\n $menu.css({ left: `${newLeft}px` });\n\n\n }\n\n $openItem() {\n return this.$el.find(`.${this.openClass}`);\n }\n\n downInContext(context) {\n if (!context) {\n return;\n }\n\n if (!context.$parent && context.$el.hasClass('js-has-submenu')) {\n this.operateSubMenu(context.$el);\n context.$el.find('a:first').trigger('focus');\n } else if (context.$parent && context.$next) {\n context.$next.trigger('focus');\n }\n }\n\n upInContext(context) {\n if (!context) {\n return;\n }\n\n if (context.$parent && !context.$prev) {\n this.operateSubMenu(context.$el);\n context.$parent.trigger('focus');\n } else if (context.$parent && context.$prev) {\n context.$prev.trigger('focus');\n }\n }\n\n collapseInContext(context) {\n this.closeSubMenu(context.$el);\n }\n\n toggleInContext(context) {\n this.operateSubMenu(context.$el);\n }\n\n rightInContext(context) {\n if (!context) {\n return;\n }\n\n if (context.$parent) {\n const $nextMenu = context.$parent.nextAll('.js-has-submenu').first();\n this.operateSubMenu($nextMenu);\n $nextMenu.find('li a').first().trigger('focus');\n } else if (context.$next) {\n context.$next.trigger('focus');\n }\n }\n\n leftInContext(context) {\n if (!context) {\n return;\n }\n\n if (context.$parent) {\n const $prevMenu = context.$parent.prevAll('.js-has-submenu').first();\n this.operateSubMenu($prevMenu);\n $prevMenu.find('li a').first().trigger('focus');\n } else if (context.$prev) {\n context.$prev.trigger('focus');\n }\n }\n\n // Provides an object with the currently focused element,\n // prev and next focusable elements, and the menu parent\n // if applicable\n focusContext() {\n const $focusEl = $(document.activeElement);\n\n // return nothing if focus doesn't exist, or is not in our menu\n if (!$focusEl.length || $focusEl.closest('.js-menu').length === 0) {\n return;\n }\n\n // get the next focusable item\n const $next = ($el) => {\n // If we're focused on an , move up to parent
  • \n if ($el[0].nodeName === 'A') {\n $el = $el.parent();\n }\n\n // get immediate sibling\n let $nextEl = $el.next();\n\n // if no tabindex defined, select the inner instead\n if ($nextEl.attr('tabindex') === undefined) {\n $nextEl = $nextEl.children('a:first');\n }\n\n return $nextEl.length === 0 ? null : $nextEl;\n };\n\n // get the prev focusable item\n const $prev = ($el) => {\n // If we're focused on an , move up to parent
  • \n if ($el[0].nodeName === 'A') {\n $el = $el.parent();\n }\n\n // Get the immediate sibling\n let $prevEl = $el.prev();\n\n // if no tabindex defined, select the inner instead\n if ($prevEl.attr('tabindex') === undefined) {\n $prevEl = $prevEl.children('a:first');\n }\n\n return $prevEl.length === 0 ? null : $prevEl;\n }\n\n // get a parent\n const $parent = ($el) => {\n const $parentEl = $el.parents('ul').parents('.js-nav-item');\n return $parentEl.length === 0 ? null: $parentEl;\n }\n\n return {\n $el: $focusEl,\n $next: $next($focusEl),\n $prev: $prev($focusEl),\n $parent: $parent($focusEl)\n }\n }\n}\n","import $ from 'jquery';\n\nexport class SecondaryNav {\n constructor($el) {\n this.$el = $el;\n this.$menu = this.$el.find('.js-menu');\n this.$menuTitle = this.$el.find('.js-menu-title');\n this.$toggle = this.$el.find('.js-nav-toggle');\n\n this.bindEvents();\n }\n\n bindEvents() {\n // the menu should expand/collapse on click\n // use mousedown as it will be handled before focus\n this.$toggle.on('mousedown', event => {\n this.toggleNav(event);\n });\n\n // Still need to handle click to\n // prevent default\n this.$toggle.on('click', event => {\n event.preventDefault();\n })\n\n // howver, for focus we should only expand\n // if we collapse on blur, then just about\n // any other page interaction will collapse\n // the menu unexpectedly\n this.$toggle.on('focus', event => {\n if (!this.isOpen()) {\n this.openNav(event)\n }\n });\n\n\n }\n\n\n toggleNav(event) {\n if (this.isOpen()) {\n this.closeNav(event);\n } else {\n this.openNav(event);\n }\n }\n\n openNav(event) {\n this.$menu.slideDown(250);\n this.$menuTitle.slideDown(250);\n this.$el.addClass('is-open');\n }\n\n closeNav(event) {\n this.$menu.slideUp(250);\n this.$menuTitle.slideUp(250);\n this.$el.removeClass('is-open');\n }\n\n isOpen() {\n return this.$el.hasClass('is-open');\n }\n}\n","import $ from \"jquery\";\n\nexport class SimpleNavTrigger {\n\n constructor($el) {\n this.$el = $el;\n this.$target = this.$el.next();\n\n this.bindEvents();\n }\n\n bindEvents() {\n let thisTrigger = this;\n\n \n this.$el.on(\"click\", function() {\n thisTrigger.$el.toggleClass(\"is-open\");\n thisTrigger.$target.toggle();\n });\n }\n}\n","export default function() {\n const d = document;\n\n [...d.querySelectorAll(\".js-rich-text table\")].forEach(table => {\n // console.log(table);\n const wrapper = d.createElement(\"div\");\n wrapper.classList.add(\"rich-text__table-wrapper\");\n table.parentNode.insertBefore(wrapper, table);\n wrapper.appendChild(table);\n });\n}\n","(function (ElementProto) {\n if (typeof ElementProto.matches !== \"function\") {\n ElementProto.matches = ElementProto.msMatchesSelector || ElementProto.mozMatchesSelector || ElementProto.webkitMatchesSelector || function matches(selector) {\n var element = this;\n var elements = (element.document || element.ownerDocument).querySelectorAll(selector);\n var index = 0;\n\n while (elements[index] && elements[index] !== element) {\n ++index;\n }\n\n return Boolean(elements[index]);\n };\n }\n\n if (typeof ElementProto.closest !== \"function\") {\n ElementProto.closest = function closest(selector) {\n var element = this;\n\n while (element && element.nodeType === 1) {\n if (element.matches(selector)) {\n return element;\n }\n\n element = element.parentNode;\n }\n\n return null;\n };\n }\n})(window.Element.prototype);\n","import \"core-js/fn/object/assign\";\nimport \"core-js/fn/array/find\";\nimport \"core-js/fn/array/find-index\";\nimport \"core-js/fn/array/fill\";\nimport \"core-js/fn/array/includes\";\nimport \"core-js/fn/array/from\";\nimport \"core-js/fn/promise\";\n","// Note: object-fit has been refactored to be applied on-demand instead of automatically\n// You may invoke it directly in your scripts\n\nimport \"./es6-polyfill.js\";\nimport \"./closest.js\";\nimport svg4everybody from \"svg4everybody\";\nimport \"./popstate-event.js\";\nimport { objectFitPolyfill } from \"./object-fit.js\";\n\nif (\"objectFit\" in document.documentElement.style === false) {\n objectFitPolyfill();\n}\n\nsvg4everybody();\n","/*----------------------------------------\n * objectFitPolyfill 2.0.3\n *\n * Made by Constance Chen\n * Released under the MIT license\n *\n * * https://github.com/constancecchen/object-fit-polyfill\n *\n * CUSTOMIZATIONS MADE BY VELIR. SEE LINES TAGGED 'VELIR'\n * - Due to issues with object-fit and