{"version":3,"sources":["main.js"],"names":["r","e","n","t","o","i","f","c","require","u","a","Error","code","p","exports","call","length","1","module","global","document","$elem","$","defaultAnimation","Animate","$component","init","sceneOptions","reverse","data","offset","triggerElement","controller","ScrollMagic","Controller","scene","Scene","cssClass","on","event","addClass","removeClass","targets","anime","addTo","unload","this","self","window","./default-animate","2","duration","translateY","opacity","value","easing","elasticity","bouncyAnimation","delay","random","scaleX","scaleY","swirlyAnimation","translateX","el","width","left","$el","$parent","parent","middleParent","top","height","3","EscapeButton","escapeUrl","getCookie","processExit","removeCookie","click","links","getElementsByTagName","addEventListener","interceptLink","ev","preventDefault","url","currentTarget","href","location","replace","console","log","cookieName","name","ca","decodeURIComponent","cookie","split","charAt","substring","indexOf","setCookie","processBack","wipePage","body","innerHTML","changeLocation","openNewTab","open","4","EscapeMessage","hideMessage","message","showMessage","5","ready","ExternalLinksNewWindow","$parentSelector","find","host","attr","6","glossaryModalSelector","glossaryTerms","normalizeTerm","term","toLowerCase","trim","showGlossaryModal","$this","$glossaryModal","allTerms","text","displayTerm","definition","glossaryTerm","termDefinition","html","windowWidth","glossaryHeight","superOffsetTop","topPos","pageYOffset","css","leftPos","rightPosModal","fadeIn","hideGlossaryModal","removeClickFreeze","setTimeout","hasClass","fadeOut","bm","pageId","ajax","type","dataType","contentType","cache","success","hover","error","xhr","textStatus","errorThrown","print","7","responsive","$siteWrapper","Menu","toggleMenu","openText","closeText","linesComponent","textComponent","$globalMenu","$primaryMenu","$secondaryMenu","openSecondaryMenu","closeSecondaryMenu","$activePageMenuItem","unbind","id","toggleClass","isMobile","mobileSized","cssChangeAmount","cssSuffix","$header","animate","borderSpacing","step","now","fx","newLeftPosition","one","complete","./responsive","8","ModalLayout","Initialize","option","match","RegExp","extend","currentLanguageCode","modalWrapper","modalContentClass","modalContentServiceUrl","events","off","$body","$modalBackground","append","modalQuery","$modalContent","serviceUrl","days","expires","date","Date","setTime","getTime","toUTCString","$closeButton","remove","responseText","9","animation","Grid","each","triggerHook","item","target","destroy","10","tabletSized","isMobileDevice","test","navigator","userAgent","11","Cloud","$tags","$container","resize","ndx","$tag","ratio","currentFontSize","12","ModalVideo","openModalVideo","parents","$modalWrapper","videoSource","$videoContent","contents","13","addtouchclass","documentElement","classList","removeEventListener","./app/animate","./app/escape-button","./app/escape-message","./app/external-links-new-window","./app/glossary-terms","./app/menu","./app/modal-layout","./app/portal-grid","./app/tag-cloud","./app/video"],"mappings":"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","file":"main.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 0) {\r\n var Animate = function ($component) {\r\n var self = {\r\n init: function () {\r\n var sceneOptions = {\r\n reverse: $component.data('reverse') || false,\r\n }\r\n if (!$component.data('offset')) {\r\n sceneOptions.triggerElement = $component.data('trigger-element') || $component[0];\r\n } else {\r\n sceneOptions.offset = $component.data('offset');\r\n }\r\n var controller = new ScrollMagic.Controller();\r\n var scene = new ScrollMagic.Scene(sceneOptions);\r\n if ($component.data('toggle-class')) {\r\n var cssClass = $component.data('toggle-class');\r\n scene = scene.on('enter', function (event) { $component.addClass(cssClass) })\r\n .on('leave', function (event) { $component.removeClass(cssClass) })\r\n }\r\n else if ($component.data('default-animate')) {\r\n defaultAnimation.targets = $component[0];\r\n scene = scene.on('enter', function (event) {\r\n anime(defaultAnimation);\r\n })\r\n }\r\n scene.addTo(controller);\r\n return;\r\n },\r\n unload: function () {\r\n return;\r\n }\r\n }\r\n return self;\r\n };\r\n for (var i = 0; i < $elem.length; i++) {\r\n var $item = $($elem[i]);\r\n var animate = new Animate($item);\r\n animate.init();\r\n }\r\n\r\n }\r\n})();\r\n\n}).call(this)}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{\"./default-animate\":2}],2:[function(require,module,exports){\nvar animationTime = 700;\r\nvar defaultAnimation = {\r\n duration: 1000,\r\n translateY: 400,\r\n opacity: {\r\n value: [0, 1],\r\n duration: animationTime,\r\n easing: 'linear'\r\n },\r\n translateY: {\r\n value: [200, 0],\r\n duration: animationTime,\r\n elasticity: 400,\r\n easing: 'easeInOutBack'\r\n },\r\n};\r\nvar bouncyAnimation = {\r\n duration: 1200,\r\n elasticity: 700,\r\n delay: function () { return anime.random(0, 550); },\r\n opacity: {\r\n value: [0, 1],\r\n duration: 600,\r\n easing: 'easeInOutBack'\r\n },\r\n scaleX: {\r\n value: [0.4, 1]\r\n },\r\n scaleY: {\r\n value: [0.4, 1],\r\n duration: 1400\r\n }\r\n}\r\nvar swirlyAnimation = {\r\n duration: 1200,\r\n elasticity: 700,\r\n delay: function () { return anime.random(0, 200); },\r\n opacity: {\r\n value: [0, 1],\r\n duration: 600,\r\n easing: 'easeInOutBack'\r\n },\r\n translateX: {\r\n value: function (el) {\r\n var middle = ($(el).width() / 2) + $(el).offset().left;\r\n var distanceFromMiddle = middle - ($(window).width() / 2);\r\n return distanceFromMiddle * .5 + 'px';\r\n //anime.random(-100,100);\r\n }\r\n },\r\n translateY: {\r\n value: function (el) {\r\n var $el = $(el);\r\n var $parent = $el.parent();\r\n var middleParent = $parent.offset().top + ($parent.height() / 2);\r\n var distanceFromMiddle = $el.offset().top - middleParent;\r\n //var middle = ($el.height() / 2) + $el.offset().top;\r\n return distanceFromMiddle * 0.5 + 'px';\r\n // //\r\n //return anime.random(-100,100);\r\n }\r\n },\r\n // scaleX: {\r\n // value: [0.4,1]\r\n // },\r\n // scaleY: {\r\n // value: [0.4,1],\r\n // duration: 1400\r\n // }\r\n}\r\n\r\nmodule.exports = { defaultAnimation: defaultAnimation, bouncyAnimation: bouncyAnimation, swirlyAnimation: swirlyAnimation };\r\n\n},{}],3:[function(require,module,exports){\nvar component = (function () {\r\n var $elem = $('.escape-button');\r\n var cookieName = 'hyh.escape';\r\n\r\n if ($elem.length > 0) {\r\n\r\n var EscapeButton = function ($component) {\r\n var self = {\r\n init: function () {\r\n self.escapeUrl = $component.data('exit-url');\r\n\r\n // if escape button has been clicked, re-exit page, don't allow return\r\n if (self.getCookie(cookieName)) {\r\n self.processExit();\r\n self.removeCookie(cookieName);\r\n }\r\n\r\n $component.click(function () {\r\n self.processExit();\r\n });\r\n\r\n //modify links for escape purposes\r\n var links = document.getElementsByTagName('a');\r\n\r\n for (var i = 0; i < links.length; i++) {\r\n links[i].addEventListener('click', self.interceptLink);\r\n }\r\n\r\n return;\r\n },\r\n interceptLink: function (ev) {\r\n ev.preventDefault();\r\n var url = ev.currentTarget.href;\r\n if (!url) {\r\n console.log('Link is missing valid href', ev.currentTarget);\r\n return;\r\n }\r\n window.location.replace(url);\r\n },\r\n getCookie: function (cookieName) {\r\n var name = cookieName + \"=\";\r\n var decodedCookie = decodeURIComponent(document.cookie);\r\n var ca = decodedCookie.split(';');\r\n\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) == ' ') {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) == 0) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n },\r\n setCookie: function (name) {\r\n document.cookie = name + \"=true; Max-Age=300; path=/\";\r\n },\r\n removeCookie: function eraseCookie(name) {\r\n document.cookie = name + '=; Max-Age=-99999999; path=/';\r\n },\r\n processBack: function () {\r\n self.setCookie(cookieName);\r\n },\r\n wipePage: function () {\r\n document.body.innerHTML = '';\r\n },\r\n changeLocation: function () {\r\n window.location.replace(self.escapeUrl);\r\n },\r\n openNewTab: function () {\r\n window.open(self.escapeUrl + '?request=search');\r\n },\r\n processExit: function () {\r\n self.processBack();\r\n self.wipePage();\r\n self.changeLocation();\r\n self.openNewTab();\r\n },\r\n unload: function () {\r\n console.log(\"App unloaded\");\r\n\r\n return;\r\n }\r\n }\r\n return self;\r\n };\r\n for (var i = 0; i < $elem.length; i++) {\r\n var $item = $($elem[i]);\r\n var escapeButton = new EscapeButton($item);\r\n escapeButton.init();\r\n }\r\n\r\n }\r\n})();\r\n\n},{}],4:[function(require,module,exports){\nvar component = (function () {\r\n var $elem = $('.home-escape-message-button');\r\n var closeClass = 'home-escape-message-close';\r\n var cookieName = 'bmhyhmessage';\r\n\r\n if ($elem.length > 0) {\r\n\r\n var EscapeMessage = function ($component) {\r\n var self = {\r\n init: function () {\r\n $component.click(function () {\r\n self.setCookie(cookieName);\r\n self.hideMessage();\r\n });\r\n self.message = $component.parent();\r\n\r\n //check for cookie value\r\n var hasCookie = self.getCookie(cookieName);\r\n\r\n if (!hasCookie) {\r\n self.showMessage();\r\n }\r\n\r\n return;\r\n },\r\n hideMessage: function () {\r\n self.message.addClass(closeClass);\r\n },\r\n showMessage: function () {\r\n self.message.removeClass(closeClass);\r\n },\r\n getCookie: function (cookieName) {\r\n var name = cookieName + \"=\";\r\n var decodedCookie = decodeURIComponent(document.cookie);\r\n var ca = decodedCookie.split(';');\r\n\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) == ' ') {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) == 0) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n },\r\n setCookie: function (name) {\r\n document.cookie = name + \"=true; expires=0; path=/\";\r\n },\r\n unload: function () {\r\n console.log(\"App unloaded\");\r\n\r\n return;\r\n }\r\n }\r\n return self;\r\n };\r\n for (var i = 0; i < $elem.length; i++) {\r\n var $item = $($elem[i]);\r\n var escapeMessage = new EscapeMessage($item);\r\n escapeMessage.init();\r\n }\r\n\r\n }\r\n})();\r\n\n},{}],5:[function(require,module,exports){\n//open all external links in new window\r\n$(document).ready(function () {\r\n window.ExternalLinksNewWindow();\r\n});\r\n\r\nwindow.ExternalLinksNewWindow = function ($parentSelector) {\r\n\r\n if (!$parentSelector) {\r\n $parentSelector = $('html');\r\n }\r\n $parentSelector.find('a:not([href^=\"http://' + window.location.host + '\"]):not([href^=\"https://' + window.location.host + '\"]):not([href^=\"#\"]):not([href^=\"/\"]):not([href^=\"mailto:\"]):not([href^=\"javascript:void(0);\"]):not([href^=\"javascript:void(0)\"])').attr(\"target\", \"_blank\");\r\n};\n},{}],6:[function(require,module,exports){\n'use strict';\r\n\r\nvar glossaryModalSelector = '#GlossaryModal';\r\nvar glossaryTerms = [];\r\n\r\nwindow.bm.glossaryTerms = {};\r\n\r\nwindow.bm.glossaryTerms.init = function (pageId) {\r\n $.ajax({\r\n url: '/api/glossary/glossaryterms',\r\n type: \"GET\",\r\n dataType: \"json\",\r\n contentType: \"application/json; charset=utf-8\",\r\n data: { pageId: pageId },\r\n cache: true,\r\n success: function (data) {\r\n glossaryTerms = data;\r\n bindClicks();\r\n bindHovers();\r\n },\r\n error: function (xhr, textStatus, errorThrown) {\r\n console.log(xhr);\r\n console.log(\"textStatus : \" + textStatus);\r\n console.log(\"errorThrown : \" + errorThrown);\r\n }\r\n });\r\n}\r\n\r\nwindow.bm.glossaryTerms.print = function () {\r\n console.log(glossaryTerms);\r\n}\r\n\r\nfunction bindClicks() {\r\n $('body').on('click', '.glossary-term-trigger', function (e) {\r\n e.preventDefault();\r\n var $this = $(this);\r\n\r\n var $glossaryModal = $(glossaryModalSelector);\r\n\r\n if (!$glossaryModal.hasClass('active-freeze')) {\r\n $this.addClass('active');\r\n\r\n if (!$glossaryModal.hasClass('active')) {\r\n showGlossaryModal($this, $glossaryModal, glossaryTerms);\r\n }\r\n\r\n $glossaryModal.addClass('active-freeze');\r\n } else {\r\n $this.removeClass('active');\r\n hideGlossaryModal($glossaryModal, true);\r\n }\r\n });\r\n\r\n $('body').on('click', '.glossary-close', function () {\r\n hideGlossaryModal($(glossaryModalSelector), true);\r\n });\r\n}\r\n\r\nfunction bindHovers() {\r\n $('body').on('mouseenter', '.glossary-term-trigger', function () {\r\n var $this = $(this);\r\n var $glossaryModal = $(glossaryModalSelector);\r\n\r\n if ($glossaryModal.hasClass('active-freeze') && !$this.hasClass('active')) {\r\n $('.glossary-term-trigger.active').removeClass('active');\r\n $glossaryModal.removeClass('active-freeze');\r\n }\r\n\r\n $glossaryModal.addClass('active');\r\n showGlossaryModal($this, $glossaryModal, glossaryTerms);\r\n });\r\n\r\n $('body').on('mouseleave', '.glossary-term-trigger', function () {\r\n hideGlossaryModal($(glossaryModalSelector), false);\r\n });\r\n\r\n $(glossaryModalSelector).hover(function () {\r\n var $this = $(this);\r\n var $glossaryModal = $(glossaryModalSelector);\r\n $glossaryModal.addClass('active');\r\n if ($this.hasClass('glossary-modal')) {\r\n $glossaryModal.fadeIn(300);\r\n }\r\n }, function () {\r\n hideGlossaryModal($(glossaryModalSelector), false);\r\n });\r\n}\r\n\r\nfunction normalizeTerm(term) {\r\n if (!!term && term.length > 0) {\r\n return term.toLowerCase().replace(' ', ' ').trim()\r\n }\r\n\r\n return '';\r\n}\r\n\r\nfunction showGlossaryModal($this, $glossaryModal, allTerms) {\r\n var term = normalizeTerm($this.text());\r\n var displayTerm = '';\r\n if (term.length > 0) {\r\n var definition = '';\r\n\r\n for (var i = 0; i < allTerms.length; i++) {\r\n if (normalizeTerm(allTerms[i].glossaryTerm) == term) {\r\n definition = allTerms[i].termDefinition;\r\n displayTerm = allTerms[i].glossaryTerm;\r\n break;\r\n }\r\n }\r\n\r\n if (definition.length > 0) {\r\n $glossaryModal.find('.glossary-container > .term-text').html(displayTerm);\r\n $glossaryModal.find('.glossary-container > .term-definition').html(definition);\r\n\r\n var navOffset = 150;\r\n\r\n var windowWidth = $(window).width();\r\n var glossaryHeight = $glossaryModal.height() + 10;\r\n var superOffsetTop = $this.offset().top;\r\n\r\n //Gets the space between the clicked term and the top of the window\r\n var topDiff = superOffsetTop - (window.pageYOffset + glossaryHeight + navOffset);\r\n var topPos = superOffsetTop - glossaryHeight;\r\n\r\n if (topDiff <= 0) {\r\n topPos = superOffsetTop + 20;\r\n } else {\r\n topPos = topPos + 10;\r\n }\r\n\r\n if (windowWidth < 768) {\r\n $glossaryModal.css({ 'left': '2%', 'top': topPos + 'px' });\r\n\r\n } else {\r\n\r\n //get Left position of Definition modal\r\n var leftPos = $this.offset().left;\r\n\r\n var rightPosModal = leftPos + $glossaryModal.width();\r\n if (rightPosModal > windowWidth) {\r\n leftPos = leftPos - (rightPosModal + 40 - windowWidth);\r\n }\r\n\r\n //if Modal will be off screen position left so entire box is on screen\r\n $glossaryModal.css({ 'left': leftPos + 'px', 'top': topPos + 'px' });\r\n }\r\n $glossaryModal.fadeIn(300);\r\n }\r\n }\r\n}\r\n\r\nfunction hideGlossaryModal($glossaryModal, removeClickFreeze) {\r\n setTimeout(function () { if (!$glossaryModal.hasClass('active') && !$glossaryModal.hasClass('active-freeze')) { $glossaryModal.fadeOut(300); } }, 100);\r\n $glossaryModal.removeClass('active');\r\n\r\n if (removeClickFreeze) {\r\n $glossaryModal.removeClass('active-freeze');\r\n }\r\n}\r\n\n},{}],7:[function(require,module,exports){\n(function (global){(function (){\nvar component = (function () {\r\n var doc = global.document || null;\r\n var $elem = $('.menu-button');\r\n var responsive = require('./responsive');\r\n var closeClass = 'close';\r\n var secondaryClass = \"secondary-menu-open\";\r\n var $siteWrapper = $('.site-wrapper');\r\n if ($elem.length > 0) {\r\n\r\n var Menu = function ($component) {\r\n var self = {\r\n init: function () {\r\n $component.click(function () {\r\n self.toggleMenu();\r\n });\r\n self.openText = $component.data('open-text');\r\n self.closeText = $component.data('close-text');\r\n self.linesComponent = $component.find('.menu-lines');\r\n self.textComponent = $component.find('.menu-text');\r\n self.$globalMenu = $('.global-menu');\r\n self.$primaryMenu = $('.primary-menu');\r\n self.$secondaryMenu = $('.secondary-menu');\r\n self.$primaryMenu.find('li > a').click(function (e) {\r\n var $this = $(this);\r\n if ($this.parent().hasClass('active-page') && !!$this.data('id') && $this.data('id').length > 0) {\r\n e.preventDefault();\r\n self.openSecondaryMenu($this);\r\n }\r\n });\r\n self.$secondaryMenu.find('.top-content span').click(self.closeSecondaryMenu);\r\n var $activePageMenuItem = self.$primaryMenu.find('li.active-page > a');\r\n if ($activePageMenuItem.length > 0) {\r\n self.openSecondaryMenu($activePageMenuItem);\r\n }\r\n\r\n $(window).on('resize', function () {\r\n if (self.$globalMenu.hasClass('active')) {\r\n self.toggleMenu();\r\n $siteWrapper.unbind('click.bodyClickClose');\r\n }\r\n });\r\n return;\r\n },\r\n openSecondaryMenu: function ($this) {\r\n var id = $this.data('id');\r\n self.$secondaryMenu.find('.main-content[data-id=\"' + id + '\"]').addClass('visible');\r\n self.$globalMenu.addClass(secondaryClass);\r\n },\r\n closeSecondaryMenu: function () {\r\n self.$globalMenu.removeClass(secondaryClass);\r\n setTimeout(function () {\r\n self.$secondaryMenu.find('.main-content').removeClass('visible');\r\n }, 400);//should be equal to the transition time\r\n\r\n },\r\n toggleMenu: function () {\r\n self.linesComponent.toggleClass(closeClass);\r\n var isMobile = responsive.mobileSized();\r\n var cssChangeAmount = isMobile ? 80 : 480;\r\n var cssSuffix = isMobile ? 'vw' : 'px';\r\n var $header = $siteWrapper.find('.header');\r\n if (self.linesComponent.hasClass(closeClass)) {\r\n self.textComponent.text(self.closeText);\r\n $siteWrapper.css('position', 'fixed');\r\n\r\n self.$globalMenu.addClass('active');\r\n $header.addClass('menu-active');\r\n $siteWrapper.animate({ borderSpacing: cssChangeAmount }, {\r\n step: function (now, fx) {\r\n var newLeftPosition = (now - cssChangeAmount) + cssSuffix;\r\n self.$globalMenu.css('left', newLeftPosition);\r\n $(this).css('transform', 'translateX(' + now + cssSuffix + ')');\r\n },\r\n duration: 480\r\n }, 'ease-in-out');\r\n setTimeout(function () {\r\n $siteWrapper.one('click.bodyClickClose', function () {\r\n if (self.$globalMenu.hasClass('active')) {\r\n self.toggleMenu();\r\n }\r\n });\r\n }, 100);\r\n }\r\n else {\r\n self.textComponent.text(self.openText);\r\n self.$globalMenu.removeClass('active');\r\n $siteWrapper.animate({ borderSpacing: 0 }, {\r\n step: function (now, fx) {\r\n if (now == 0) {\r\n $header.removeClass('menu-active');\r\n }\r\n var newLeftPosition = (now - cssChangeAmount) + cssSuffix;\r\n $(this).css('transform', 'translateX(' + now + cssSuffix + ')');\r\n self.$globalMenu.css('left', newLeftPosition);\r\n },\r\n duration: 480,\r\n complete: function () {\r\n $siteWrapper.css('transform', '');\r\n $siteWrapper.css('position', '');\r\n }\r\n }, 'ease-in-out');\r\n }\r\n },\r\n unload: function () {\r\n console.log(\"App unloaded\");\r\n\r\n return;\r\n }\r\n }\r\n return self;\r\n };\r\n for (var i = 0; i < $elem.length; i++) {\r\n var $item = $($elem[i]);\r\n var menu = new Menu($item);\r\n menu.init();\r\n }\r\n\r\n }\r\n})();\r\n\n}).call(this)}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{\"./responsive\":10}],8:[function(require,module,exports){\n'use strict';\r\n\r\nfunction setCookie(name, value, days) {\r\n var expires = \"\";\r\n if (days) {\r\n var date = new Date();\r\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\r\n expires = \"; expires=\" + date.toUTCString();\r\n }\r\n document.cookie = name + \"=\" + (value || \"\") + expires + \"; path=/;\";\r\n}\r\n\r\nfunction initializeModalLayout(option) {\r\n var defaults = {\r\n currentLanguageCode: \"en\",\r\n modalWrapper: '.content-block',\r\n cookieName: 'disclaimer',\r\n modalContentClass: 'modal-popup modal-popup--small js-modal',\r\n modalContentServiceUrl: \"/{LanguageKey}AjaxContentPage\",\r\n events: \"click.modaldetail tap.modaldetail\"\r\n };\r\n\r\n var hasCookie = document.cookie.match(new RegExp(option.cookieName + '=([^;]+)'));\r\n if (hasCookie) {\r\n return;\r\n }\r\n\r\n var option = $.extend({}, defaults, option),\r\n $modalWrapper = $(option.modalWrapper),\r\n modalContentFormat = \"
\";\r\n\r\n $modalWrapper.off(option.events);\r\n\r\n var $body = $('body'),\r\n $modalBackground = $(\".modal-bg\");\r\n\r\n if ($modalBackground.length == 0) {\r\n $modalBackground = $('
');\r\n }\r\n\r\n $body.append($modalBackground);\r\n\r\n $body.addClass('is-active-modal');\r\n\r\n var $this = $(this),\r\n modalQuery = $this.data(\"modal-query\"),\r\n $modalContent = $(modalContentFormat.replace(\"{Class}\", option.modalContentClass)),\r\n serviceUrl = option.modalContentServiceUrl.replace(\"{LanguageKey}\", option.currentLanguageCode);\r\n\r\n if (!!modalQuery) {\r\n serviceUrl += modalQuery;\r\n }\r\n\r\n $.ajax({\r\n url: serviceUrl,\r\n type: \"POST\",\r\n dataType: \"html\",\r\n contentType: \"application/x-www-form-urlencoded; charset=UTF-8\",\r\n cache: false,\r\n success: function (data) {\r\n setCookie(option.cookieName, true, 365);\r\n\r\n $modalContent.append($(data))\r\n\r\n var $closeButton = $('');\r\n $modalContent.append($closeButton);\r\n $modalContent.find(\".js-modal-close\").on('click tap', function () {\r\n $body.removeClass('is-active-modal');\r\n $this = $(this);\r\n $modalContent.remove();\r\n $this.remove();\r\n });\r\n $modalContent.find(\".js-action-accept\").on('click tap', function () {\r\n $body.removeClass('is-active-modal');\r\n $this = $(this);\r\n $modalContent.remove();\r\n $this.remove();\r\n });\r\n $modalBackground.on('click tap', function () {\r\n $body.removeClass('is-active-modal');\r\n $this = $(this);\r\n $modalContent.remove();\r\n $this.remove();\r\n });\r\n $body.append($modalContent);\r\n },\r\n error: function (xhr, textStatus, errorThrown) {\r\n $body.removeClass('is-active-modal');\r\n console.log(xhr.responseText);\r\n }\r\n });\r\n return false;\r\n}\r\n\r\nwindow.ModalLayout =\r\n{\r\n Initialize: initializeModalLayout\r\n};\n},{}],9:[function(require,module,exports){\n(function (global){(function (){\nvar component = (function () {\r\n var doc = global.document || null;\r\n var $elem = $('.grid-animation-js');\r\n var animation = require('./default-animate').bouncyAnimation;\r\n if ($elem.length > 0) {\r\n var Grid = function ($component) {\r\n var self = {\r\n init: function () {\r\n //anime(animation);\r\n var controller = new ScrollMagic.Controller();\r\n $('.grid-item-js').each(function () {\r\n var scene = new ScrollMagic.Scene({\r\n reverse: false,\r\n triggerHook: 1, //0 = animate starts at top ofpage, 1 = bottom of page\r\n triggerElement: this\r\n }).on('enter', function (event) {\r\n var item = event.target.triggerElement();\r\n animation.targets = item;\r\n anime(animation);\r\n scene.destroy();\r\n $(event.target.triggerElement()).parent().addClass('animation-initialized');\r\n }).addTo(controller);\r\n });\r\n return;\r\n },\r\n unload: function () {\r\n return;\r\n }\r\n }\r\n return self;\r\n };\r\n for (var i = 0; i < $elem.length; i++) {\r\n var $item = $($elem[i]);\r\n var grid = new Grid($item);\r\n grid.init();\r\n }\r\n\r\n }\r\n})();\r\n\n}).call(this)}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{\"./default-animate\":2}],10:[function(require,module,exports){\nmodule.exports = {\r\n mobileSized: function () {\r\n return $(window).width() < 769\r\n },\r\n tabletSized: function () {\r\n return $(window).width() < 1025\r\n },\r\n isMobileDevice: function () {\r\n return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n },\r\n\r\n}\r\n\n},{}],11:[function(require,module,exports){\n(function (global){(function (){\nvar component = (function () {\r\n var doc = global.document || null;\r\n var $elem = $('.word-cloud');\r\n var animation = require('./default-animate').bouncyAnimation;\r\n animation.elasticity = 500;\r\n animation.duration = 1000;\r\n if ($elem.length > 0) {\r\n var Cloud = function ($component) {\r\n var self = {\r\n init: function () {\r\n self.$tags = $component.find('.tag');\r\n self.$container = $component.find('.tag-container');\r\n self.resize();\r\n //need to make sure none of the tags are wider than the container, as this can throw off\r\n //anime(animation);\r\n var controller = new ScrollMagic.Controller();\r\n $('.cloud-item-js').each(function () {\r\n $(this).on('mouseenter', function () {\r\n self.$container.addClass('container-active');\r\n });\r\n $(this).on('mouseleave', function () {\r\n self.$container.removeClass('container-active');\r\n });\r\n $('.cloud-item-js').on('click', function () {\r\n self.$container.removeClass('container-active');\r\n });\r\n var scene = new ScrollMagic.Scene({\r\n reverse: false,\r\n triggerHook: 0.8, //0 = animate starts at top ofpage, 1 = bottom of page\r\n triggerElement: '.tag-container'\r\n }).on('enter', function (event) {\r\n var item = $(event.target.triggerElement()).find('.tag');\r\n animation.targets = '.tag';\r\n animation.complete = function () {\r\n $(item).addClass('initialized');\r\n $(item).css('transform', '');\r\n $(item).css('opacity', '');\r\n }\r\n anime(animation);\r\n scene.remove();\r\n }).addTo(controller);\r\n });\r\n return;\r\n },\r\n resize: function () {\r\n $.each(self.$tags, function (ndx, item) {\r\n var $tag = $(item);\r\n if ($tag.width() > self.$container.width()) {\r\n var ratio = self.$container.width() / $tag.width();\r\n var currentFontSize = $tag.css('font-size').replace('px', '');\r\n $tag.css('font-size', (currentFontSize * ratio - 2) + 'px');\r\n }\r\n })\r\n },\r\n unload: function () {\r\n return;\r\n }\r\n }\r\n return self;\r\n };\r\n for (var i = 0; i < $elem.length; i++) {\r\n var $item = $($elem[i]);\r\n var cloud = new Cloud($item);\r\n cloud.init();\r\n }\r\n\r\n }\r\n})();\r\n\n}).call(this)}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{\"./default-animate\":2}],12:[function(require,module,exports){\nvar component = (function () {\r\n var $elem = $('.video-rte a');\r\n var cookieName = 'hyhhomevideo';\r\n\r\n if ($elem.length > 0) {\r\n\r\n var ModalVideo = function ($component) {\r\n var self = {\r\n init: function () {\r\n $component.click(function () {\r\n self.openModalVideo();\r\n });\r\n\r\n // if this is the home page and video hasn't played, play video automatically\r\n if (!self.getCookie(cookieName)) {\r\n if ($elem.parents('.video-rte-home').length) {\r\n self.setCookie(cookieName);\r\n self.openModalVideo();\r\n }\r\n }\r\n\r\n return;\r\n },\r\n openModalVideo: function () {\r\n\r\n var defaults = {\r\n currentLanguageCode: \"en\",\r\n //modalWrapper: '.content-block',\r\n modalWrapper: '.column-main',\r\n cookieName: 'video',\r\n modalContentClass: 'video-modal',\r\n events: \"click.modaldetail tap.modaldetail\"\r\n };\r\n\r\n var option = $.extend({}, defaults, option),\r\n $modalWrapper = $(option.modalWrapper),\r\n modalContentFormat = \"
\",\r\n videoSource = $component.data('video-src');\r\n\r\n $modalWrapper.off(option.events);\r\n\r\n var $body = $('body'),\r\n $modalBackground = $(\".modal-bg\");\r\n\r\n if ($modalBackground.length == 0) {\r\n $modalBackground = $('
');\r\n }\r\n\r\n $body.append($modalBackground);\r\n\r\n $body.addClass('is-active-modal');\r\n\r\n var $this = $(this),\r\n $modalContent = $(modalContentFormat.replace(\"{Class}\", option.modalContentClass));\r\n\r\n $videoContent = $('');\r\n\r\n $videoContent.height($videoContent.find('iframe').contents().height());\r\n\r\n $modalContent.append($videoContent);\r\n\r\n var $closeButton = $('');\r\n $modalContent.append($closeButton);\r\n $modalContent.find(\".js-modal-close\").on('click tap', function () {\r\n $body.removeClass('is-active-modal');\r\n $this = $(this);\r\n $modalContent.remove();\r\n $this.remove();\r\n });\r\n $modalContent.find(\".js-action-accept\").on('click tap', function () {\r\n $body.removeClass('is-active-modal');\r\n $this = $(this);\r\n $modalContent.remove();\r\n $this.remove();\r\n });\r\n $modalBackground.on('click tap', function () {\r\n $body.removeClass('is-active-modal');\r\n $this = $(this);\r\n $modalContent.remove();\r\n $this.remove();\r\n });\r\n $body.append($modalContent);\r\n\r\n },\r\n getCookie: function (cookieName) {\r\n var name = cookieName + \"=\";\r\n var decodedCookie = decodeURIComponent(document.cookie);\r\n var ca = decodedCookie.split(';');\r\n\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) == ' ') {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) == 0) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n },\r\n setCookie: function (name) {\r\n document.cookie = name + \"=true; expires=0; path=/\";\r\n },\r\n unload: function () {\r\n console.log(\"App unloaded\");\r\n\r\n return;\r\n }\r\n }\r\n return self;\r\n };\r\n for (var i = 0; i < $elem.length; i++) {\r\n var $item = $($elem[i]);\r\n var modalVideo = new ModalVideo($item);\r\n modalVideo.init();\r\n }\r\n\r\n }\r\n})();\r\n\n},{}],13:[function(require,module,exports){\n$(document).ready(function () {\r\n require('./app/menu');\r\n require('./app/animate');\r\n require('./app/portal-grid');\r\n require('./app/tag-cloud');\r\n require('./app/external-links-new-window');\r\n require('./app/glossary-terms');\r\n require('./app/modal-layout');\r\n require('./app/escape-button');\r\n require('./app/escape-message');\r\n require('./app/video');\r\n\r\n //Template Only Files Commented Out\r\n //require('./app/handbook-search');\r\n\r\n //Adds Is-touch if user is using a touch device\r\n document.addEventListener('touchstart', function addtouchclass(e) { // first time user touches the screen\r\n document.documentElement.classList.remove('no-touch') // add \"can-touch\" class to document root using classList API\r\n document.removeEventListener('touchstart', addtouchclass, false) // de-register touchstart event\r\n }, false)\r\n});\r\n\n},{\"./app/animate\":1,\"./app/escape-button\":3,\"./app/escape-message\":4,\"./app/external-links-new-window\":5,\"./app/glossary-terms\":6,\"./app/menu\":7,\"./app/modal-layout\":8,\"./app/portal-grid\":9,\"./app/tag-cloud\":11,\"./app/video\":12}]},{},[13]);\n"]}