{"version":3,"file":"js/skin.build.js","mappings":"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","sources":["webpack://DINFOSTheme/webpack/bootstrap","webpack://DINFOSTheme/webpack/runtime/compat get default export","webpack://DINFOSTheme/webpack/runtime/define property getters","webpack://DINFOSTheme/webpack/runtime/hasOwnProperty shorthand","webpack://DINFOSTheme/external var \"jQuery\"","webpack://DINFOSTheme/./Source/js/frontend/nav.js","webpack://DINFOSTheme/./Source/js/frontend/table-index-group.js","webpack://DINFOSTheme/./Source/js/frontend/grid-list-view.js","webpack://DINFOSTheme/./Source/js/skin.js","webpack://DINFOSTheme/./Source/js/frontend/global.js","webpack://DINFOSTheme/./Source/js/frontend/slider-mods.js","webpack://DINFOSTheme/./Source/js/frontend/card-slider.js","webpack://DINFOSTheme/./Source/js/frontend/cta-card.js","webpack://DINFOSTheme/./Source/js/frontend/object-expand.js","webpack://DINFOSTheme/./Source/js/frontend/object-scroll.js","webpack://DINFOSTheme/./Source/js/frontend/table-comparison.js","webpack://DINFOSTheme/./Source/js/frontend/slideshow.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","const __WEBPACK_NAMESPACE_OBJECT__ = jQuery;","export function setupNav($) {\r\n $(document).ready(function () {\r\n $('#navbar-theme__menu-btn').click(function () {\r\n if (!$(this).hasClass('navbar-theme__menu-btn--open')) {\r\n openMenuFlyout();\r\n } else {\r\n closeMenuFlyout();\r\n }\r\n });\r\n\r\n $('.menu-flyout a').focus(function () {\r\n var $btn = $('#navbar-theme__menu-btn')\r\n if (!$btn.hasClass('navbar-theme__menu-btn--open')) {\r\n openMenuFlyout();\r\n }\r\n });\r\n\r\n $('.menu-flyout a').blur(function () {\r\n var $active = $(document.activeElement);\r\n if ($active.parents('.menu-flyout').length <= 0 && !$(this).hasClass('accordion__trigger')) {\r\n closeMenuFlyout();\r\n }\r\n });\r\n\r\n $('.navbar-theme__search-bar').focus(function () {\r\n $(this).attr('placeholder', '');\r\n });\r\n\r\n $('.navbar-theme__search-bar').blur(function () {\r\n $(this).attr('placeholder', $(this).attr('data-placeholder'));\r\n });\r\n });\r\n\r\n function openMenuFlyout() {\r\n var $btn = $('#navbar-theme__menu-btn')\r\n $('#dinfos-menu-flyout').removeClass('menu-flyout--closed');\r\n $btn.parent('.navbar').addClass('navbar-theme--open');\r\n $btn.text('Close').addClass('navbar-theme__menu-btn--open');\r\n $btn.attr('aria-expanded', 'true');\r\n $('body').addClass('no-scroll');\r\n }\r\n function closeMenuFlyout() {\r\n var $btn = $('#navbar-theme__menu-btn')\r\n $('#dinfos-menu-flyout').addClass('menu-flyout--closed');\r\n $btn.parent('.navbar').removeClass('navbar-theme--open');\r\n $btn.text('Menu').removeClass('navbar-theme__menu-btn--open');\r\n $btn.attr('aria-expanded', 'false');\r\n $('body').removeClass('no-scroll');\r\n }\r\n\r\n // Modified to debounce the adding and removing of classes\r\n function adjustNavHeight() {\r\n if (!$('#dinfos-navbar').hasClass('navbar-theme--scrolled')\r\n && (document.body.scrollTop > screen.height || document.documentElement.scrollTop > screen.height)) {\r\n $('#dinfos-navbar').addClass('navbar-theme--scrolled');\r\n $('.menu-flyout').addClass('menu-flyout--navbar-scrolled');\r\n } else if ($('#dinfos-navbar').hasClass('navbar-theme--scrolled')\r\n && document.body.scrollTop <= screen.height\r\n && document.documentElement.scrollTop <= screen.height) {\r\n $('#dinfos-navbar').removeClass('navbar-theme--scrolled');\r\n $('.menu-flyout').removeClass('menu-flyout--navbar-scrolled');\r\n }\r\n }\r\n\r\n // Modified onscroll to not occur when logged into backend\r\n if ($('#app.app-auth').length === 0) {\r\n window.onscroll = function () { adjustNavHeight() };\r\n }\r\n\r\n //keyboard navigation\r\n let focusable = 'a:visible, button:visible, :input:visible, [tabindex]:visible';\r\n let scope = $('#dinfos-menu-flyout, #navbar-theme__menu-btn');\r\n\r\n scope.on('keydown', function (e) {\r\n //handle arrows and space\r\n handleOtherKeyboardNav(e);\r\n });\r\n\r\n //fixes jquery focus oddities between browsers\r\n $.fn.focusItem = function () {\r\n if (this.length && this[0].focus) {\r\n this[0].focus();\r\n }\r\n return this;\r\n };\r\n\r\n function focusNextFocusable($ele) {\r\n let $focusable = $(focusable),\r\n i = $focusable.index($ele) + 1;\r\n if (i >= $focusable.length) i = 0;\r\n $focusable.eq(i).focusItem();\r\n }\r\n\r\n function focusPreviousFocusable($ele) {\r\n let $focusable = $(focusable),\r\n i = $focusable.index($ele) - 1;\r\n if (i <= 0) i = $focusable.length;\r\n $focusable.eq(i).focusItem();\r\n }\r\n\r\n function triggerClick($ele) {\r\n $ele.trigger('click');\r\n }\r\n\r\n function handleOtherKeyboardNav(e) {\r\n let keyCode = e.keyCode,\r\n $target = $(e.target),\r\n stop = function (e) {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n };\r\n\r\n //only listening for space or arrows on focusable items left, up, right, down\r\n if (!/^(32|37|38|39|40)$/.test(keyCode) || !$target.is(focusable)) {\r\n return;\r\n }\r\n switch (keyCode) {\r\n case 32: //space\r\n triggerClick($target);\r\n stop(e);\r\n break;\r\n case 37: //left\r\n case 38: // Up\r\n focusPreviousFocusable($target)\r\n stop(e);\r\n break;\r\n case 39: // Right\r\n case 40: // Down\r\n focusNextFocusable($target)\r\n stop(e);\r\n break;\r\n } //switch\r\n }\r\n};\r\n","export function initTableIndexGroups($) {\r\n $(document).ready(function () {\r\n const accordionContainers = document.querySelectorAll('[dinfos-table-index-accordian]');\r\n\r\n accordionContainers.forEach(element => {\r\n const allBtns = element.querySelectorAll('button');\r\n\r\n allBtns.forEach(btn => {\r\n btn.addEventListener('click', clickOverride);\r\n });\r\n\r\n let lastActiveBtn = null;\r\n const viewAllBtn = element.querySelector('button:first-of-type');\r\n\r\n // Set default terms filter\r\n var locationHash = window.location.hash && window.location.hash;\r\n if (locationHash && locationHash !== '') {\r\n const targetBtn = element.querySelector(\"button[data-target='#dinfos-table-index-page_\" + window.location.hash.substring(1) + \"']\");\r\n if (targetBtn) {\r\n targetBtn.click();\r\n }\r\n else {\r\n viewAllBtn.click();\r\n }\r\n }\r\n else {\r\n // set view all btn to be the initial active btn\r\n viewAllBtn.click();\r\n }\r\n\r\n\r\n\r\n\r\n // Attached click event to tie into default BS behaviour\r\n function clickOverride(e) {\r\n if (lastActiveBtn == e.target) {\r\n e.stopPropagation();\r\n return;\r\n } else {\r\n activeBtnStateHandling(e);\r\n expandedContentStateHandling(e);\r\n }\r\n // Update page hash\r\n var filterValues = $(e.target).data('target').split('_');\r\n if (filterValues.length === 1) {\r\n // This removes hash if it exists\r\n if (window.history.pushState) {\r\n window.history.pushState('', '/', window.location.pathname)\r\n } else {\r\n window.location.hash = '';\r\n }\r\n return;\r\n }\r\n window.location.hash = filterValues[1];\r\n }\r\n\r\n // Handles active btn state logic as well as handles updating the aria labels\r\n function activeBtnStateHandling(e) {\r\n allBtns.forEach(btn => {\r\n if (btn !== e.target) {\r\n btn.setAttribute('aria-expanded', false);\r\n btn.classList.remove('dinfos-btn--no-background--active');\r\n }\r\n });\r\n\r\n e.target.classList.add('dinfos-btn--no-background--active');\r\n return e.target.setAttribute('aria-expanded', true);\r\n }\r\n\r\n // Handles expanded content state logic\r\n function expandedContentStateHandling(e) {\r\n // loop through btns\r\n allBtns.forEach(btn => {\r\n const attr = btn.getAttribute('data-target');\r\n const dataTargetElement = element.querySelector(attr);\r\n\r\n // determine if btn is the target\r\n if (e.target.getAttribute('data-target') == btn.getAttribute('data-target')) {\r\n // remove BS class show because BS state logic is tied to current class on the element\r\n dataTargetElement.classList.remove('show');\r\n } else {\r\n // exlcude viewAllBtn from handler\r\n if (btn !== viewAllBtn) {\r\n // allow BS collapse animation to occur if view all btn was the last active btn\r\n if (lastActiveBtn == viewAllBtn) {\r\n $(dataTargetElement).collapse('hide');\r\n } else {\r\n // hide content without an animation\r\n dataTargetElement.classList.remove('show');\r\n }\r\n }\r\n }\r\n\r\n // disable BS expanding animation\r\n $(dataTargetElement).on('show.bs.collapse',\r\n function (e) {\r\n e.preventDefault();\r\n dataTargetElement.classList.add('show');\r\n });\r\n });\r\n\r\n lastActiveBtn = e.target;\r\n }\r\n });\r\n });\r\n}\r\n","export function initGridListView($) {\r\n $(document).ready(function() {\r\n\r\n $('.dinfos-grid-list-toggle__btn').click(function() {\r\n if ($(this).hasClass('active')) {\r\n return;\r\n }\r\n var $toggleParent = $(this).parents('.dinfos-grid-list-toggle');\r\n var controlled_id = $toggleParent.attr('aria-controls');\r\n var view = $(this).attr('data-view');\r\n var controlledEle = $(controlled_id);\r\n\r\n // change active button\r\n $toggleParent.find('.dinfos-grid-list-toggle__btn.active').removeClass('active');\r\n $(this).addClass('active');\r\n\r\n // change view\r\n\r\n if (view === 'list') {\r\n $(controlled_id).addClass('dinfos-grid-list-view--list');\r\n } else {\r\n $(controlled_id).removeClass('dinfos-grid-list-view--list');\r\n }\r\n });\r\n\r\n // taken from search.js so that collections have same functionality as they do on patternlab\r\n var $gridList=$('.dinfos-grid-list-view');\r\n var $gridListToggleBtns=$('.dinfos-grid-list-toggle__btn');\r\n\r\n function setGridListToggleBtnDefault($btn,defaultView) {\r\n if($btn.attr('data-view')===defaultView) {\r\n $btn.addClass('active');\r\n } else {\r\n $btn.removeClass('active');\r\n }\r\n }\r\n function setToSmDefaults() {\r\n $gridListToggleBtns.each(function() {\r\n setGridListToggleBtnDefault($(this),'list')\r\n });\r\n $gridList.addClass('dinfos-grid-list-view--list');\r\n }\r\n\r\n function setToLgDefaults() {\r\n $gridListToggleBtns.each(function() {\r\n setGridListToggleBtnDefault($(this),'grid')\r\n });\r\n $gridList.removeClass('dinfos-grid-list-view--list');\r\n }\r\n\r\n if(window.md||window.sm) {\r\n setToSmDefaults();\r\n }\r\n\r\n $(document).on('breakpointChange',function() {\r\n if(window.md||window.sm) {\r\n setToSmDefaults();\r\n } else {\r\n setToLgDefaults();\r\n }\r\n });\r\n\r\n });\r\n\r\n}\r\n","import $ from 'jquery';\r\nimport { setupNav } from './frontend/nav';\r\nimport { initGlobal } from './frontend/global';\r\nimport { initSliderModifications } from './frontend/slider-mods';\r\nimport { initCardSlider } from './frontend/card-slider';\r\nimport { initObjectExpand } from './frontend/object-expand';\r\nimport { initObjectScroll } from './frontend/object-scroll';\r\nimport { initTableIndexGroups } from './frontend/table-index-group';\r\nimport { initTableComparison } from './frontend/table-comparison';\r\nimport { initSlideshow } from './frontend/slideshow';\r\nimport { initCtaCard } from './frontend/cta-card';\r\nimport { initGridListView } from './frontend/grid-list-view';\r\n\r\n// SCSS\r\nimport '../scss/index.scss';\r\n\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n // Set up Nav\r\n setupNav($);\r\n\r\n // Initialize scripts\r\n initGlobal($);\r\n initSliderModifications($);\r\n initCardSlider($);\r\n initCtaCard($);\r\n initGridListView($);\r\n initObjectExpand($);\r\n initObjectScroll($);\r\n initTableIndexGroups($);\r\n initTableComparison($);\r\n initSlideshow($);\r\n\r\n // Breadcrumb modifications\r\n const $breadcrumbLinks = $('.breadcrumbs a');\r\n $breadcrumbLinks.last().removeAttr('href').css('text-decoration', 'none');\r\n $breadcrumbLinks.first().html('');\r\n}, false);\r\n","export function initGlobal($) {\r\n $(document).ready(function() {\r\n //\r\n // ─── WINDOW RESIZE THROTTLER ────────────────────────────────────────────────────────\r\n //\r\n var resizeTimeout;\r\n window.sm=false;\r\n window.md=false;\r\n window.lg=false;\r\n window.xl=false;\r\n var width;\r\n var resizeFunctions=[];\r\n var throttleEvent=$.Event('throttledresize');\r\n var breakpointEvent=$.Event('breakpointChange');\r\n\r\n function resizeThrottler() {\r\n // ignore resize events as long as an throttledResizeHandler execution is in the queue\r\n if(!resizeTimeout) {\r\n resizeTimeout=setTimeout(function() {\r\n resizeTimeout=null;\r\n $('body').trigger(throttleEvent);\r\n breakpointChange();\r\n },\r\n 250); // runs 4 times a second\r\n }\r\n }\r\n\r\n\r\n function breakpointChange() {\r\n width=window.innerWidth;\r\n\r\n if(!sm&&width<768) {\r\n md=lg=xl=false;\r\n sm=true;\r\n $('body').trigger(breakpointEvent);\r\n }\r\n\r\n if(!md&&width>767&&width<992) {\r\n sm=lg=xl=false;\r\n md=true;\r\n $('body').trigger(breakpointEvent);\r\n }\r\n\r\n if(!lg&&width>991) {\r\n sm=md=xl=false;\r\n lg=true;\r\n $('body').trigger(breakpointEvent);\r\n }\r\n\r\n if(!xl&&width>1199) {\r\n sm=md=lg=false;\r\n xl=true;\r\n $('body').trigger(breakpointEvent);\r\n }\r\n\r\n }\r\n\r\n breakpointChange();\r\n window.addEventListener('resize',resizeThrottler,false);\r\n //\r\n // ────────────────────────────────────────────────── END WINDOW RESIZE THROTTLER ─────\r\n //\r\n\r\n\r\n //\r\n // ─── INPUT PLACEHOLDER FOCUS ────────────────────────────────────────────────────────\r\n $('.dinfos-input-has-placeholder').focus(function() {\r\n if(!$(this).attr('data-placeholder')) {\r\n $(this).attr('data-placeholder',$(this).attr('placeholder'));\r\n }\r\n $(this).attr('placeholder','');\r\n });\r\n\r\n $('.dinfos-input-has-placeholder').blur(function() {\r\n $(this).attr('placeholder',$(this).attr('data-placeholder'));\r\n });\r\n\r\n });\r\n\r\n //\r\n // ────────────────────────────────────────────────── END INPUT PLACEHOLDER FOCUS ─────\r\n //\r\n\r\n //\r\n // ─── MODALS ────────────────────────────────────────────────────────\r\n\r\n $(document).ready(function() {\r\n\r\n $('.dinfos-object-content .dinfos-modal').on('shown.bs.modal',\r\n function(e) {\r\n $('main').css('z-index',1050);\r\n $(this).parent('.dinfos-object-content').css('z-index',2)\r\n })\r\n $('.dinfos-object-content .dinfos-modal').on('hidden.bs.modal',\r\n function(e) {\r\n $('main').css('z-index','');\r\n $(this).parent('.dinfos-object-content').css('z-index','')\r\n })\r\n });\r\n\r\n //\r\n // ────────────────────────────────────────────────── END MODALS ─────\r\n //\r\n\r\n //\r\n // ─── POLYFILLS ────────────────────────────────────────────────────────\r\n //\r\n\r\n // poolyfill for '.forEach()' \r\n (function() {\r\n if(typeof NodeList.prototype.forEach==='function') return false;\r\n NodeList.prototype.forEach=Array.prototype.forEach;\r\n })();\r\n\r\n // polyfil for '.find()'\r\n (function() {\r\n if(!Array.prototype.find) {\r\n Array.prototype.find=function(predicate) {\r\n if(this===null) {\r\n throw new TypeError('Array.prototype.find called on null or undefined');\r\n }\r\n if(typeof predicate!=='function') {\r\n throw new TypeError('predicate must be a function');\r\n }\r\n var list=Object(this);\r\n var length=list.length>>>0;\r\n var thisArg=arguments[1];\r\n var value;\r\n\r\n for(var i=0;i {\r\n e.preventDefault();\r\n isDown=true;\r\n\r\n startX=e.pageX-dragScroll.offsetLeft;\r\n scrollLeft=dragScroll.scrollLeft;\r\n });\r\n dragScroll.addEventListener('mouseleave',\r\n (e) => {\r\n isDown=false;\r\n setTimeout(function() {\r\n dragScroll.classList.remove('dinfos-drag-scroll--active');\r\n },\r\n 5) // give time for click events to ignore drags\r\n });\r\n dragScroll.addEventListener('mouseup',\r\n (e) => {\r\n isDown=false;\r\n setTimeout(function() {\r\n dragScroll.classList.remove('dinfos-drag-scroll--active');\r\n },\r\n 1) // give time for click events to ignore drags\r\n\r\n });\r\n dragScroll.addEventListener('mousemove',\r\n e => {\r\n if(!isDown) return;\r\n e.preventDefault();\r\n var x=e.pageX-dragScroll.offsetLeft;\r\n var walk=x-startX;\r\n if(Math.abs(walk)>3) {\r\n dragScroll.classList.add('dinfos-drag-scroll--active');\r\n dragScroll.scrollLeft=scrollLeft-walk;\r\n }\r\n });\r\n });\r\n\r\n //\r\n // ────────────────────────────────────────────────── END DRAG TO SCROLL ─────\r\n //\r\n}\r\n","export function initSliderModifications($) {\r\n if($('.app-home').length==0)\r\n return;\r\n\r\n var icons=[\r\n {\r\n className: 'article',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'case-study',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'checklist',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'exercise',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'how-to',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'knowledge-check',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'policy-and-doctrine',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'simulation',\r\n svg:\r\n '' },\r\n {\r\n className: 'story',\r\n svg:\r\n ''\r\n },\r\n {\r\n className: 'template',\r\n svg:\r\n ''\r\n }\r\n ];\r\n\r\n /**\r\n * On init find all of the icon divs and append the svg\r\n */\r\n $('.dma-custom-nav-thumbs__slider').on('init',function(event,slick,direction) {\r\n for(var i=0;iScroll carousel forward',\r\n prevArrow: 'Scroll carousel back',\r\n variableWidth: false,\r\n responsive: [\r\n {\r\n breakpoint: 992,\r\n settings: {\r\n slidesToShow: 2.25,\r\n variableWidth: true,\r\n slidesToScroll: 2\r\n }\r\n },\r\n {\r\n breakpoint: 768,\r\n settings: {\r\n slidesToShow: 1.75,\r\n variableWidth: true,\r\n slidesToScroll: 1\r\n }\r\n },\r\n {\r\n breakpoint: 375,\r\n settings: {\r\n slidesToShow: 1,\r\n variableWidth: false,\r\n slidesToScroll: 1\r\n }\r\n }\r\n ]\r\n };\r\n\r\n var contentTypesSliderProps={\r\n slidesToShow: 1,\r\n focusOnSelect: false, // enables clicking on a slide to navigate to it\r\n swipe: true,\r\n infinite: false,\r\n arrows: true,\r\n appendArrows: $('.dinfos-card-slider__btn-wrapper',this),\r\n nextArrow: 'Scroll carousel forward',\r\n prevArrow: 'Scroll carousel back',\r\n variableWidth: true,\r\n responsive: [\r\n {\r\n breakpoint: 768,\r\n settings: {\r\n slidesToShow: 1,\r\n variableWidth: true\r\n }\r\n },\r\n {\r\n breakpoint: 576,\r\n settings: {\r\n slidesToShow: 1,\r\n variableWidth: false\r\n }\r\n }\r\n ]\r\n };\r\n\r\n var categoriesSliderProps={\r\n slidesToShow: 3,\r\n slidesToScroll: 3,\r\n focusOnSelect: false, // enables clicking on a slide to navigate to it\r\n swipe: true,\r\n infinite: false,\r\n arrows: true,\r\n appendArrows: $('.dinfos-card-slider__btn-wrapper',this),\r\n nextArrow: 'Scroll carousel forward',\r\n prevArrow: 'Scroll carousel back',\r\n responsive: [\r\n {\r\n breakpoint: 992,\r\n settings: {\r\n slidesToShow: 2.75,\r\n slidesToScroll: 2\r\n }\r\n },\r\n {\r\n breakpoint: 768,\r\n settings: {\r\n slidesToShow: 2.25,\r\n slidesToScroll: 1\r\n }\r\n },\r\n {\r\n breakpoint: 575,\r\n settings: {\r\n slidesToShow: 1.25,\r\n slidesToScroll: 1\r\n }\r\n },\r\n {\r\n breakpoint: 375,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1\r\n }\r\n }\r\n ]\r\n };\r\n\r\n function slickCategoriesSliders() {\r\n $('.dinfos-card-slider--categories:not(.slick-initialized)').each(function () {\r\n var $btnWrapper = $(this).siblings('.dinfos-card-slider__btn-wrapper');\r\n categoriesSliderProps.appendArrows = $btnWrapper;\r\n $(this).on('init reInit afterChange', function (event, slick, currentSlide, nextSlide) {\r\n updateNextButton(slick);\r\n });\r\n $(this).slick(categoriesSliderProps);\r\n });\r\n }\r\n\r\n function slickContentListSliders() {\r\n $('.dinfos-card-slider--content-list:not(.slick-initialized)').each(function() {\r\n if ($(this).closest('.dinfos-quiz')) {\r\n contentListSliderProps.variableWidth = true;\r\n contentListSliderProps.slidesToShow = 1;\r\n contentListSliderProps.responsive.unshift({\r\n breakpoint: 1200,\r\n settings: {\r\n variableWidth: false,\r\n slidesToShow: 3\r\n }\r\n })\r\n }\r\n var $btnWrapper=$(this).siblings('.dinfos-card-slider__btn-wrapper');\r\n contentListSliderProps.appendArrows = $btnWrapper;\r\n $(this).on('init reInit afterChange', function (event, slick, currentSlide, nextSlide) {\r\n updateNextButton(slick);\r\n });\r\n $(this).slick(contentListSliderProps);\r\n });\r\n }\r\n\r\n function slickContentTypesSliders() {\r\n $('.dinfos-card-slider--content-types:not(.slick-initialized)').each(function() {\r\n var $btnWrapper=$(this).siblings('.dinfos-card-slider__btn-wrapper');\r\n contentTypesSliderProps.appendArrows=$btnWrapper;\r\n\r\n $(this).on('init reInit afterChange',function(event,slick,currentSlide,nextSlide) {\r\n //currentSlide is undefined on init -- set it to 0 in this case (currentSlide is 0 based)\r\n var i=(currentSlide? currentSlide:0)+1;\r\n var $span=$('');\r\n $span.html(''+i+' / '+slick.slideCount+'');\r\n $btnWrapper.find('span.dinfos-card-slider__counter').remove();\r\n $btnWrapper.find('.fa-arrow-left').after($span);\r\n });\r\n $(this).slick(contentTypesSliderProps);\r\n });\r\n }\r\n\r\n function updateNextButton(slick) {\r\n var numSlides = slick.$slides.length;\r\n var curSlide = slick.currentSlide || 0;\r\n var slidesPerMove = slick.options.slidesToScroll || 1;\r\n \r\n if (curSlide + slidesPerMove >= numSlides) {\r\n slick.$nextArrow && slick.$nextArrow.addClass('slick-disabled')\r\n } else {\r\n slick.$nextArrow && slick.$nextArrow.removeClass('slick-disabled');\r\n }\r\n }\r\n\r\n slickContentListSliders();\r\n slickCategoriesSliders();\r\n slickContentTypesSliders();\r\n\r\n });\r\n\r\n}\r\n","export function initCtaCard($) {\r\n $(document).ready(function() {\r\n const cards = document.querySelectorAll('.dinfos-cta-card');\r\n\r\n cards.forEach(card => {\r\n card.addEventListener('mousedown', clickEvent);\r\n card.addEventListener('keydown', enterKeyCheck);\r\n\r\n function clickEvent(event) {\r\n event.preventDefault();\r\n customScrollTo(this);\r\n }\r\n\r\n function enterKeyCheck(event) {\r\n if (event.keyCode === 13) {\r\n event.preventDefault();\r\n customScrollTo(this);\r\n }\r\n }\r\n\r\n function customScrollTo(element) {\r\n // Make sure this.hash has a value before overriding default behavior\r\n if (element.hash !== '') {\r\n var targetElement = document.querySelector(element.hash);\r\n var targetElementPadding = parseInt($(targetElement).css('padding-top'));\r\n\r\n // make sure there is an actual target for href in the DOM\r\n if (targetElement) {\r\n // save current href\r\n const href = element.hash;\r\n\r\n // Navigation logic\r\n var navPadding = 0;\r\n if (window.sm || window.md) {\r\n navPadding = 69;\r\n } else {\r\n navPadding = 71;\r\n }\r\n\r\n // custom scrolling animation\r\n $('html').animate({\r\n scrollTop:$(href).offset().top - navPadding + targetElementPadding\r\n },\r\n 800,\r\n function() {\r\n // set focus before scrolling to allow smooth scroll\r\n targetElement.focus();\r\n //checking if the target was focused\r\n if ($(targetElement).is(':focus')) {\r\n return false;\r\n } else {\r\n // target was not a focusable element: set tabindex to enable focusing\r\n targetElement.setAttribute('tabindex', '-1');\r\n // set focus\r\n targetElement.focus();\r\n };\r\n\r\n });\r\n }\r\n }\r\n }\r\n });\r\n });\r\n}\r\n","export function initObjectExpand($) {\r\n $(document).ready(function() {\r\n\r\n $('.dinfos-object-page__continue-reading').click(function() {\r\n $('.dinfos-object-content--preview').removeClass('dinfos-object-content--preview')\r\n $(this).parents('.container').remove();\r\n })\r\n });\r\n\r\n}\r\n","export function initObjectScroll($) {\r\n $(document).ready(function() {\r\n function setMargin(margin) {\r\n $('.dinfos-object-content, .dinfos-intro').css({\r\n 'margin-right': margin,\r\n 'margin-left': margin\r\n });\r\n }\r\n\r\n function scrollMargins() {\r\n var originalMargin;\r\n var $content=$('.dinfos-object-content');\r\n var contentHeight=$content.outerHeight();\r\n var contentTop=$content.offset().top;\r\n var contentBottom=$content.offset().top+contentHeight;\r\n var screenBottom=$(window).scrollTop()+$(window).innerHeight();\r\n var screenTop=$(window).scrollTop();\r\n var screenHeight=$(window).innerHeight();\r\n var offset=200;\r\n var distance;\r\n var newMargin;\r\n\r\n // these are equal to margins set in CSS\r\n if(sm) {\r\n originalMargin=0;\r\n setMargin(originalMargin);\r\n return;\r\n } else if(md) {\r\n originalMargin=23;\r\n setMargin(originalMargin);\r\n } else if(lg) {\r\n originalMargin=30;\r\n setMargin(originalMargin);\r\n } else if(xl) {\r\n originalMargin=85;\r\n setMargin(originalMargin);\r\n }\r\n\r\n var totalDistanceContentHeight=contentHeight-offset;\r\n var totalDistanceScreenHeight=(screen.height-80+screenHeight)-(contentTop+offset);\r\n\r\n var min=Math.min(totalDistanceContentHeight,totalDistanceScreenHeight);\r\n // if the height of the scrolling portion of the content is shorter than the viewport...\r\n if(min===totalDistanceContentHeight) {\r\n distance=contentBottom-screenBottom;\r\n newMargin=distance/(totalDistanceContentHeight)*originalMargin;\r\n } else {\r\n // navbar reappears at screen.height, causing issues with other scroll effects due to screen height calculations as nav transitions.\r\n // Finish transition a few px before navbar appears.\r\n distance=(screen.height-80)-screenTop;\r\n newMargin=(distance/totalDistanceScreenHeight)*originalMargin;\r\n }\r\n\r\n\r\n if((screenBottom>(contentTop+offset))&&distance>=0) {\r\n setMargin(newMargin); \r\n }\r\n\r\n if(min===totalDistanceContentHeight) {\r\n if(screenBottom>=contentBottom&&$content.css('margin-right')!==0) {\r\n setMargin(0);\r\n }\r\n }\r\n else {\r\n if(screenTop>=(screen.height-80)&&$content.css('margin-right')!==0) {\r\n setMargin(0);\r\n }\r\n }\r\n\r\n }\r\n if($('.dinfos-object-page--style-2').length>0) {\r\n $(document).on('breakpointChange',function() {\r\n scrollMargins()\r\n });\r\n\r\n $(document).scroll(scrollMargins)\r\n }\r\n\r\n });\r\n\r\n}\r\n","export function initTableComparison($) {\r\n $(document).ready(function() {\r\n const tableComparison=document.querySelectorAll('.dinfos-table-comparison__wrapper');\r\n\r\n if(tableComparison) {\r\n // add media query to window\r\n const mediaQuery=window.matchMedia('(max-width: 767.999px)');\r\n detectQuery(mediaQuery);\r\n mediaQuery.addListener(detectQuery);\r\n // add events to arrows;\r\n leftArrowHandler();\r\n rightArrowHandler();\r\n\r\n function detectQuery(query) {\r\n if(query.matches) {\r\n convertTable();\r\n } else {\r\n revertTable();\r\n }\r\n }\r\n\r\n // Convert table to a single column layout\r\n function convertTable() {\r\n tableComparison.forEach(wrapper => {\r\n // set default setting fo pagination\r\n const currentPage=wrapper.querySelector('.dinfos-table-comparison__pagination span:first-of-type');\r\n const previousBtn=wrapper.querySelector('.dinfos-table-comparison__pagination button:first-of-type');\r\n const nextBtn=wrapper.querySelector('.dinfos-table-comparison__pagination button:last-of-type');\r\n previousBtn.setAttribute('disabled',true);\r\n nextBtn.removeAttribute('disabled');\r\n currentPage.innerHTML='1';\r\n\r\n // show only the first header in the table\r\n const headers=wrapper.querySelectorAll('thead th');\r\n headers.forEach((head,index) => {\r\n if(index!==0) {\r\n head.style.display='none';\r\n }\r\n });\r\n\r\n // show only the first column in the table\r\n const rows=wrapper.querySelectorAll('tbody tr');\r\n rows.forEach(row => {\r\n const cols=row.querySelectorAll('td');\r\n\r\n cols.forEach((col,index) => {\r\n if(index!==0) {\r\n col.style.display='none';\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n // Revert table to original layout\r\n function revertTable() {\r\n tableComparison.forEach(wrapper => {\r\n const headers=wrapper.querySelectorAll('thead th');\r\n headers.forEach((head) => {\r\n head.removeAttribute('style');\r\n });\r\n\r\n const rows=wrapper.querySelectorAll('tbody tr');\r\n rows.forEach(row => {\r\n const cols=row.querySelectorAll('td');\r\n\r\n cols.forEach((col) => {\r\n col.removeAttribute('style');\r\n });\r\n });\r\n });\r\n }\r\n }\r\n\r\n function leftArrowHandler() {\r\n tableComparison.forEach(wrapper => {\r\n const btn=wrapper.querySelector('.dinfos-table-comparison__pagination button:first-of-type');\r\n\r\n btn.addEventListener('click',previousPage);\r\n })\r\n }\r\n\r\n function rightArrowHandler() {\r\n tableComparison.forEach(wrapper => {\r\n const btn=wrapper.querySelector('.dinfos-table-comparison__pagination button:last-of-type');\r\n\r\n btn.addEventListener('click',nextPage);\r\n })\r\n }\r\n\r\n function previousPage() {\r\n tableComparison.forEach(wrapper => {\r\n const currentPage=wrapper.querySelector('.dinfos-table-comparison__pagination span:first-of-type');\r\n const nextBtn=wrapper.querySelector('.dinfos-table-comparison__pagination button:last-of-type');\r\n const headers=wrapper.querySelectorAll('thead th');\r\n let previous=parseInt(currentPage.innerHTML)-1;\r\n\r\n // set new value for current page and enable next page btn\r\n if(previous>0) {\r\n currentPage.innerHTML=previous.toString();\r\n nextBtn.removeAttribute('disabled');\r\n\r\n // get new header\r\n headers.forEach((head,index) => {\r\n if(index==parseInt(previous-1)) {\r\n head.removeAttribute('style');\r\n } else {\r\n head.style.display='none';\r\n }\r\n });\r\n\r\n // get new column\r\n const rows=wrapper.querySelectorAll('tbody tr');\r\n rows.forEach(row => {\r\n const cols=row.querySelectorAll('td');\r\n\r\n cols.forEach((col,index) => {\r\n if(index==previous-1) {\r\n col.removeAttribute('style');\r\n } else {\r\n col.style.display='none';\r\n }\r\n });\r\n });\r\n }\r\n // disable previous page btn\r\n if(parseInt(currentPage.innerHTML)==1) {\r\n this.setAttribute('disabled',true);\r\n }\r\n });\r\n }\r\n\r\n function nextPage() {\r\n tableComparison.forEach(wrapper => {\r\n const currentPage=wrapper.querySelector('.dinfos-table-comparison__pagination span:first-of-type');\r\n const previousBtn=wrapper.querySelector('.dinfos-table-comparison__pagination button:first-of-type');\r\n const headers=wrapper.querySelectorAll('thead th');\r\n let next=parseInt(currentPage.innerHTML);\r\n\r\n // set new value for current page and enable previous page btn\r\n if(next<=headers.length-1) {\r\n currentPage.innerHTML=next+1;\r\n previousBtn.removeAttribute('disabled');\r\n\r\n // get new header\r\n headers.forEach((head,index) => {\r\n if(index!==next) {\r\n head.style.display='none';\r\n }\r\n if(index==parseInt(next)) {\r\n head.removeAttribute('style');\r\n }\r\n });\r\n\r\n // get new column\r\n const rows=wrapper.querySelectorAll('tbody tr');\r\n rows.forEach(row => {\r\n const cols=row.querySelectorAll('td');\r\n\r\n cols.forEach((col,index) => {\r\n if(index==next) {\r\n col.removeAttribute('style');\r\n } else {\r\n col.style.display='none';\r\n }\r\n });\r\n });\r\n }\r\n\r\n // disable next page btn\r\n if(parseInt(currentPage.innerHTML)==headers.length) {\r\n this.setAttribute('disabled',true);\r\n }\r\n });\r\n }\r\n\r\n });\r\n}\r\n","export function initSlideshow($) {\r\n $(document).ready(function() {\r\n\r\n var $mainSlider=$('.dinfos-slideshow:not(.dinfos-slideshow--modal) .dinfos-slideshow__slides');\r\n var $thumbnailSlider=$('.dinfos-slideshow:not(.dinfos-slideshow--modal) .dinfos-slideshow__thumbnails');\r\n\r\n var slideshowProps={\r\n slidesToShow: 1,\r\n focusOnSelect: false, // enables clicking on a slide to navigate to it\r\n swipe: true,\r\n infinite: false,\r\n arrows: true,\r\n nextArrow: 'Scroll carousel forward',\r\n prevArrow: 'Scroll carousel back'\r\n };\r\n\r\n var slideshowThumbsProps={\r\n slidesToScroll: 1,\r\n slidesToShow: 5,\r\n focusOnSelect: true, // enables clicking on a slide to navigate to it\r\n swipe: true,\r\n infinite: false,\r\n arrows: true,\r\n nextArrow: 'Scroll carousel forward',\r\n prevArrow: 'Scroll carousel back',\r\n responsive: [\r\n {\r\n breakpoint: 992,\r\n settings: {\r\n slidesToShow: 3,\r\n }\r\n },\r\n {\r\n breakpoint: 576,\r\n settings: {\r\n slidesToShow: 2.25,\r\n }\r\n }\r\n ]\r\n\r\n };\r\n\r\n function slickCounterPerImage($slider) {\r\n var $slides=$slider.find('.dinfos-slideshow__slide');\r\n $slides.each(function(i) {\r\n var counter=i+1;\r\n var $counter=$(this).find('.dinfos-slideshow__counter');\r\n $counter.html(counter+' / '+$slides.length);\r\n })\r\n }\r\n\r\n function slickCounterPerSlideshow($slider,slick,i) {\r\n var $btnWrapper=$slider.parent('.dinfos-slideshow').find('.dinfos-slideshow__btn-wrapper')\r\n var $span=$('');\r\n $span.html(''+i+' / '+slick.slideCount+'');\r\n $btnWrapper.find('span.dinfos-slideshow__counter').remove();\r\n $btnWrapper.append($span);\r\n }\r\n\r\n function slickSlideshow($mainSlider,$thumbnailSlider,modal,initialSlide) {\r\n var $prevArrow=$('Scroll carousel back')\r\n var $nextArrow=$('Scroll carousel forward')\r\n\r\n if($thumbnailSlider) {\r\n // init slideshow thumbnails\r\n $thumbnailSlider.each(function() {\r\n slideshowThumbsProps.asNavFor=$(this).parent('.dinfos-slideshow').find('.dinfos-slideshow__slides');\r\n $(this).slick(slideshowThumbsProps);\r\n })\r\n }\r\n\r\n // init main slideshow\r\n $mainSlider.each(function() {\r\n var $slider=$(this);\r\n var $btnWrapper=$slider.parent('.dinfos-slideshow').find('.dinfos-slideshow__btn-wrapper');\r\n var slideCount=$slider.find('.dinfos-slideshow__slide').length;\r\n\r\n // add extra next/prev buttons to go under slideshow\r\n // can't set on thumbnails bc if all thumbs are visible, the arrows will not show\r\n if(slideCount>1&&$btnWrapper.find('.ss-prev').length<1) {\r\n $btnWrapper.append($prevArrow)\r\n $btnWrapper.append($nextArrow)\r\n $slider.parent('.dinfos-slideshow').on('click', '.ss-prev', function slickPrevListener() {\r\n $slider.slick('slickPrev');\r\n });\r\n $slider.parent('.dinfos-slideshow').on('click', '.ss-next', function slickNextListener() {\r\n $slider.slick('slickNext');\r\n })\r\n }\r\n\r\n // set up counter & manual button controls\r\n $slider.on('init reInit afterChange',function(e,slick,currentSlide) {\r\n //currentSlide is undefined on init -- set it to 0 in this case (currentSlide is 0 based)\r\n var i=(currentSlide? currentSlide:0)+1;\r\n if(i===1) {\r\n $btnWrapper.find('.ss-prev').addClass('disabled');\r\n } else {\r\n $btnWrapper.find('.ss-prev').removeClass('disabled');\r\n }\r\n\r\n if(i===slideCount) {\r\n $btnWrapper.find('.ss-next').addClass('disabled');\r\n } else {\r\n $btnWrapper.find('.ss-next').removeClass('disabled');\r\n }\r\n if(modal&&e.type!=='afterChange') {\r\n // set arrows to be in center of image, not slide\r\n var distance=$slider.find('.dinfos-slideshow__image').first().outerHeight()/2;\r\n $slider.find('.slick-arrow').css('top',distance);\r\n slickCounterPerImage($slider);\r\n } else if(!modal) {\r\n slickCounterPerSlideshow($slider,slick,i);\r\n }\r\n });\r\n \r\n if(initialSlide > -1) {\r\n slideshowProps.initialSlide=initialSlide;\r\n }\r\n if($thumbnailSlider) {\r\n slideshowProps.asNavFor=$slider.parent('.dinfos-slideshow').find('.dinfos-slideshow__thumbnails');\r\n }\r\n\r\n $slider.slick(slideshowProps);\r\n })\r\n }\r\n\r\n slickSlideshow($mainSlider,$thumbnailSlider,false,false);\r\n\r\n\r\n $('.dinfos-modal--slideshow').on('shown.bs.modal',function(e) {\r\n var $btn=$(e.relatedTarget);\r\n var initialSlide=parseInt($btn.attr('data-slide-index'));\r\n var $slider=$(this).find('.dinfos-slideshow__slides');\r\n slickSlideshow($slider,false,true,initialSlide);\r\n })\r\n\r\n $('.dinfos-modal--slideshow').on('hidden.bs.modal', function (e) {\r\n // Get the current slide index\r\n var currentSlide = $(this).find('.dinfos-slideshow__slides').slick('slickCurrentSlide');\r\n\r\n // Dispose the modal slick slider\r\n $(this).find('.dinfos-slideshow__slides').slick('unslick');\r\n\r\n // set the main slider slide index to the modal\r\n // slide index to keep synced\r\n // Note: 'slickToGo' does have a no animate param (which is ideal)\r\n // however when used, the thumbnail changes but the slide does not\r\n $mainSlider.slick('slickGoTo', currentSlide);\r\n })\r\n\r\n });\r\n\r\n}\r\n"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","jQuery","setupNav","$","openMenuFlyout","$btn","removeClass","parent","addClass","text","attr","closeMenuFlyout","handleOtherKeyboardNav","e","keyCode","$target","target","stop","stopPropagation","preventDefault","test","is","$ele","trigger","triggerClick","$focusable","i","index","length","eq","focusItem","focusPreviousFocusable","focusNextFocusable","document","ready","click","this","hasClass","focus","blur","activeElement","parents","window","onscroll","body","scrollTop","screen","height","documentElement","on","fn","initTableIndexGroups","querySelectorAll","forEach","element","clickOverride","lastActiveBtn","allBtns","btn","setAttribute","classList","remove","add","activeBtnStateHandling","expandedContentStateHandling","filterValues","data","split","history","pushState","location","pathname","hash","getAttribute","dataTargetElement","querySelector","viewAllBtn","collapse","addEventListener","locationHash","targetBtn","substring","initGridListView","setGridListToggleBtnDefault","defaultView","setToSmDefaults","$gridListToggleBtns","each","$gridList","$toggleParent","controlled_id","view","find","md","sm","scrollToTop","animate","breakpointChange","width","innerWidth","lg","xl","breakpointEvent","resizeTimeout","throttleEvent","Event","setTimeout","css","NodeList","Array","predicate","TypeError","value","list","thisArg","arguments","startX","scrollLeft","dragScroll","isDown","pageX","offsetLeft","Math","abs","walk","initGlobal","icons","className","svg","slide","el","wrapper","empty","append","html","initSliderModifications","updateNextButton","slick","numSlides","$slides","currentSlide","options","slidesToScroll","$nextArrow","contentListSliderProps","slidesToShow","focusOnSelect","swipe","infinite","arrows","nextArrow","prevArrow","variableWidth","responsive","breakpoint","settings","contentTypesSliderProps","appendArrows","categoriesSliderProps","closest","unshift","$btnWrapper","siblings","event","$span","slideCount","after","initCardSlider","card","customScrollTo","targetElement","targetElementPadding","parseInt","navPadding","href","offset","top","initCtaCard","initObjectExpand","setMargin","margin","\"margin-right\"","\"margin-left\"","scrollMargins","originalMargin","distance","newMargin","$content","contentHeight","outerHeight","contentTop","contentBottom","screenBottom","innerHeight","screenTop","screenHeight","totalDistanceContentHeight","totalDistanceScreenHeight","min","scroll","initObjectScroll","previousPage","tableComparison","currentPage","nextBtn","headers","previous","innerHTML","toString","removeAttribute","head","style","display","row","col","nextPage","previousBtn","next","detectQuery","query","matches","convertTable","revertTable","mediaQuery","matchMedia","addListener","initTableComparison","slickCounterPerImage","$slider","slickCounterPerSlideshow","slickSlideshow","$mainSlider","$thumbnailSlider","modal","initialSlide","$prevArrow","slideshowThumbsProps","asNavFor","type","first","slideshowProps","relatedTarget","initSlideshow","$breadcrumbLinks","last","removeAttr"],"sourceRoot":""}