{"version":3,"sources":["webpack:///main.bundle.js","webpack:///./src/js/components/EmailDisclaimerModal.js","webpack:///./src/js/components/VideoModal.js","webpack:///./src/js/components/book/ExcerptsModal.js","webpack:///./src/js/components/global/CookieUseDisclaimer.js","webpack:///./src/js/components/global/Header.js","webpack:///./src/js/components/global/PredictiveSearch.js","webpack:///./src/js/helpers/index.js","webpack:///./src/js/components lazy ^\\.\\/.*$","webpack:///./src/modules/templates/search-item.html","webpack:///./src/modules/templates/predictive-search-item.html","webpack:///./src/js/components/Component.js","webpack:///./src/js/main.js","webpack:///./src/js/helpers/bootstrap.js","webpack:///./src/js/helpers/tooltips.js","webpack:///./src/modules/templates/video-modal.html","webpack:///./src/modules/templates/excerpts-modal.html","webpack:///./src/modules/templates/insights-listing-item.html","webpack:///./src/modules/templates/insights-listing-tab.html","webpack:///./src/modules/templates/search-people-item.html","webpack:///./src/modules/templates/search-insights-blog-item.html","webpack:///./src/modules/templates/search-listing-item.html","webpack:///./src/modules/templates/search-events-item.html","webpack:///./src/modules/templates/blog-listing-item.html","webpack:///./src/modules/templates/job-listing-item.html","webpack:///./src/modules/templates/contact-group-listing.html","webpack:///./src/js/components/global/index.js","webpack:///./src/modules/templates/search-insights-item.html","webpack:///./src/js/constants/index.js"],"names":["webpackJsonp","132","module","exports","__webpack_require__","$","_interopRequireDefault","obj","__esModule","default","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","call","ReferenceError","_inherits","subClass","superClass","prototype","Object","create","constructor","value","enumerable","writable","configurable","setPrototypeOf","__proto__","defineProperty","_createClass","defineProperties","target","props","i","length","descriptor","key","protoProps","staticProps","_component2","_component","_vanillaModal2","_vanillaModal","EmailDisclaimerModal","el","config","modal","VanillaModal","_Component","this","dom","$modalContainer","$acceptBtn","$cancelBtn","$el","on","onLinkClick","onMailTo","onCancel","e","$target","currentTarget","hasClass","email","attr","toLowerCase","endsWith","preventDefault","open","close","Component","134","_template3","_template2","VideoModal","onBeforeClose","removeModalContent","$body","$iframe","onVideoTriggered","bind","videoId","data","accountId","playerId","hasVimeoVideo","vimeoVideoUrl","vimeoVideoThumbnaillUrl","openModal","tpl","template","append","addClass","querySelectorAll","focus","removeClass","remove","135","_asyncToGenerator","fn","gen","apply","arguments","Promise","resolve","reject","step","arg","info","error","done","then","err","_extends","assign","source","hasOwnProperty","_forEach3","_forEach2","_perfectScrollbar2","_perfectScrollbar","ExcerptsModal","onBeforeOpen","onOpenModal","bodyYPosition","onLoadData","id","window","scrollTop","css","scrollbarContent","destroy","scrollbarList","$modalContent","itemKey","$menuItem","parent","$content","html","Title","Content","params","renderData","catch","console","_x","_ref","regeneratorRuntime","mark","_callee","wrap","_context","prev","next","getData","imports","_forEach","$backBtn","find","goToMenu","goToContent","PerfectScrollbar","stop","getJSON","endpoint","136","CookieUseDisclaimer","$closeBtn","cssClasses","onClose","post","Guid","137","Header","init","$headerNav","$headerNavBar","$searchBtn","$searchInput","$navLinks","$searchBox","$predictiveResults","$burgerBtn","$document","document","$utilityNav","$utilityNavItem","$utilityNavItemLink","$utilityNavItemMobile","$primaryNavItems","$headerRegionLink","$logo","$logoWrapper","classes","searchOn","navOpen","sticky","stickyVisible","utilityOpen","onToggleSearch","onClickOutside","onToggleNav","onToggleUtilityNavDropdown","onUtilityNavMobileChange","onUtilityNavMobileClose","handleHeaderRegionLink","handlePrimaryNavLinkClick","PredictiveSearch","itemsLimit","triggerElement","waypoint","direction","setSelectric","edgeAppleMobileDeviceSetup","test","navigator","userAgent","whiteLogoSrc","normalLogoSrc","imageClone","clone","empty","selectedOption","childNodes","href","location","closest","dataset","itemOpen","removeAttribute","filter","items","each","item","isMobile","platform","match","selectric","disableOnMobile","nativeOnMobile","selectricPlaceholder","addLabelsToSelectric","toggleClass","width","has","is","parents","TweenLite","to","height","ease","Expo","easeOut","onComplete","$parent","scrollTo","val","138","_debounce3","_debounce2","_remove3","_remove2","_isEmpty3","_isEmpty2","_predictiveSearchItem2","_predictiveSearchItem","$container","$serchBox","$input","$results","searchGroup","ENDPOINT","getKeywordSearch","currentRequest","onInputUp","onSearch","onHeadingClick","keyword","contenttype","requestIndex","ajax","url","take","undefined","beforeSend","abort","renderResults","noResults","noResultsString","all","getResults","SEARCH_GROUPS","n","trigger","forEach","predictiveTmpl","set","from","easeInOut","trim","destroyResults","which","encodeURIComponent","statusText","$searchGroup","searchViewAllType","searchGroupLabel","substring","139","setTimeout","selectricWrappers","index","element","label","Math","round","random","text","hiddenInput","insertBefore","sendSearchGAEvent","numberWithCommas","isOutOfViewport","focusableElements","isFocusable","getScrollbarWidth","isTabletLandscape","iOS","isMobileDevice","goToPreviewPosition","setScrollPosition","getUrlParameter","getQueryParams","truncateString","initSVG","updateHistory","getUrlParams","_slicedToArray","sliceIterator","arr","_arr","_n","_d","_e","_s","_i","Symbol","iterator","push","Array","isArray","speed","TweenMax","query","slice","split","reduce","param","decodeURIComponent","replace","newQueryString","newURL","origin","pathname","history","pushState","y","onCompleteHandler","k","v","$img","imgID","imgClass","imgURL","get","$svg","removeAttr","replaceWith","str","substr","$0","$1","$2","$3","sParam","sPageURL","search","sURLVariables","sParameterName","name","sessionStorage","setItem","getItem","top","removeItem","vendor","opera","MSStream","includes","matchMedia","matches","innerWidth","documentElement","clientWidth","tabIndex","getAttribute","disabled","nodeName","rel","type","elem","bounding","getBoundingClientRect","out","left","bottom","innerHeight","clientHeight","right","any","x","toString","event","search_term","num_search_results","dataLayer","176","webpackAsyncContext","req","ids","map","Error","keys","205","214","279","33","jQuery","domTree","WeakMap","configuration","setupDefaults","addListeners","elements","482","_bootstrap2","_bootstrap","_global2","_global","dotdotdot","watch","component","render","require","tab","getInsightsListing","getInsightsListingVisibility","pagesize","progressBarContent","getPdfPage","predictiveEndpoint","getBioKeywordSearch","getPeopleSearchResults","list","blog","getInsightsSearchResults","getInsightsPredictive","getSearchResults","predictiveEventsEndpoint","getEventsPredictive","predictiveInsightsEndpoint","getEventsListing","tabsEndpoint","getSearchResultsTabs","interval","getBlogListing","getJobListing","getContactListing","483","cb","importComponent","exists","resp","querySelector","600","initTooltips","tooltipster","theme","arrow","602","603","604","605","606","607","608","609","610","611","612","64","global","autoPlay","getExcerpts","children","getHeaderKeywordSearch","setUseDisclaimerCookie","localStorage","Date","getTime","ccUpdatedDate","CookieControl","ccUpdate","ccSeenDate","_VideoModal2","_VideoModal","_ExcerptsModal2","_ExcerptsModal","_EmailDisclaimerModal2","_EmailDisclaimerModal","_CookieUseDisclaimer2","_CookieUseDisclaimer","_Header2","_Header","89","92","API_PREFIX","getNewsPredictive","getNewsListing","EVENTS_SEARCH_GROUPS","NEWS_SEARCH_GROUPS","INSIGHTS_SEARCH_GROUPS","GA_SEARCH_EVENTS","Success","Fail","GeographicReach"],"mappings":"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G,KAAO,EAC3BD,EAAIE,OACFJ,EAASI,QACRhS,OAAOiS,aAAexO,SAAS0N,gBAAgBe,cAClDJ,EAAIK,MACFP,EAASO,OACRnS,OAAOkR,YAAczN,SAAS0N,gBAAgBC,aACjDU,EAAIM,IAAMN,EAAIpB,KAAOoB,EAAIC,MAAQD,EAAIE,QAAUF,EAAIK,MACnDL,EAAI5H,IAAM4H,EAAIpB,KAAOoB,EAAIC,MAAQD,EAAIE,QAAUF,EAAIK,MAE5CL,GAGuB5F,EAAnBA,iBAAmB,SAAAmG,GAAA,MAAKA,GAAEC,WAAW9D,QAAQ,wBAAyB,MAElDvC,EAApBA,kBAAoB,SAACsG,EAAOC,EAAaC,GACpDzS,OAAO0S,UAAY1S,OAAO0S,cAC1B1S,OAAO0S,UAAU7E,MACf0E,QACAC,cACAC,0BP89ByB3Z,KAAKb,EAASC,EAAoB,MAIzDya,IACA,SAAU3a,EAAQC,EAASC,GQjvBjC,QAAS0a,GAAoBC,GAC5B,GAAIC,GAAMC,EAAIF,EACd,OAAIC,GAEGtU,QAAQ0L,IAAI4I,EAAI3E,MAAM,GAAG4E,IAAI7a,EAAoB0D,IAAIoD,KAAK,WAChE,MAAO9G,GAAoB4a,EAAI,MAFxBtU,QAAQE,OAAO,GAAIsU,OAAM,uBAAyBH,EAAM,OAnjBjE,GAAIE,IACH,eACC,IACA,IAED,kBACC,IACA,IAED,iBACC,IACA,IAED,oBACC,IACA,IAED,iBACC,IACA,GAED,oBACC,IACA,GAED,wBACC,IACA,IAED,2BACC,IACA,IAED,sBACC,IACA,IAED,yBACC,IACA,IAED,eACC,IAED,kBACC,IAED,qBACC,IACA,IAED,wBACC,IACA,IAED,0BACC,KAED,6BACC,KAED,uBACC,IACA,IAED,0BACC,IACA,IAED,4BACC,IACA,IAED,+BACC,IACA,IAED,6BACC,IACA,IAED,gCACC,IACA,IAED,kBACC,IACA,IAED,qBACC,IACA,IAED,sBACC,IACA,IAED,yBACC,IACA,IAED,qBACC,IACA,IAED,wBACC,IACA,IAED,oBACC,IACA,IAED,uBACC,IACA,IAED,iBACC,IACA,IAED,oBACC,IACA,IAED,uBACC,IACA,IAED,0BACC,IACA,IAED,gBACC,IACA,IAED,mBACC,IACA,IAED,cACC,IACA,IAED,iBACC,IACA,IAED,wBACC,IACA,IAED,2BACC,IACA,IAED,sBACC,IACA,IAED,yBACC,IACA,IAED,gBACC,IACA,GAED,mBACC,IACA,GAED,uBACC,IACA,IAED,0BACC,IACA,IAED,yBACC,IACA,IAED,4BACC,IACA,IAED,4BACC,IACA,GAED,+BACC,IACA,GAED,kCACC,IACA,IAED,qCACC,IACA,IAED,gBACC,KAED,mBACC,KAED,4BACC,IACA,IAED,+BACC,IACA,IAED,qBACC,IACA,IAED,wBACC,IACA,IAED,0BACC,IACA,IAED,6BACC,IACA,IAED,8BACC,IACA,IAED,iCACC,IACA,IAED,4BACC,IACA,IAED,+BACC,IACA,IAED,iBACC,IACA,IAED,oBACC,IACA,IAED,wBACC,KAED,2BACC,KAED,8BACC,IACA,IAED,iCACC,IACA,IAED,qCACC,IACA,GAED,wCACC,IACA,GAED,wBACC,IACA,IAED,2BACC,IACA,IAED,oCACC,IACA,IAED,uCACC,IACA,IAED,0BACC,IACA,IAED,6BACC,IACA,IAED,oCACC,IACA,IAED,uCACC,IACA,IAED,4BACC,IACA,GAED,+BACC,IACA,GAED,YACC,IAED,aACC,IAED,sBACC,IACA,IAED,yBACC,IACA,IAED,gCACC,KAED,mCACC,KAED,2BACC,IACA,IAED,8BACC,IACA,IAED,mBACC,KAED,sBACC,KAED,6BACC,KAED,gCACC,KAED,uBACC,IACA,IAED,0BACC,IACA,IAED,2BACC,IACA,IAED,8BACC,IACA,IAED,sBACC,IACA,IAED,yBACC,IACA,IAED,yBACC,IACA,IAED,4BACC,IACA,IAED,uBACC,IACA,IAED,0BACC,IACA,IAED,kBACC,IAED,qBACC,IAED,sCACC,IACA,IAED,yCACC,IACA,IAED,0CACC,IACA,IAED,6CACC,IACA,IAED,6BACC,IACA,IAED,gCACC,IACA,IAED,+BACC,IACA,IAED,kCACC,IACA,IAED,qBACC,IACA,GAED,wBACC,IACA,GAED,kCACC,IACA,IAED,qCACC,IACA,IAED,wBACC,IACA,GAED,2BACC,IACA,GAED,+BACC,IACA,IAED,kCACC,IACA,IAED,uBACC,IACA,IAED,0BACC,IACA,IAED,yBACC,IACA,IAED,4BACC,IACA,IAED,6BACC,IACA,GAED,gCACC,IACA,GAED,mBACC,IACA,GAED,sBACC,IACA,GAED,qCACC,IACA,IAED,wCACC,IACA,IAED,2BACC,IACA,GAED,8BACC,IACA,GAED,6BACC,IACA,IAED,gCACC,IACA,IAED,mBACC,IACA,IAED,sBACC,IACA,IAED,+BACC,IACA,IAED,kCACC,IACA,IAED,8BACC,IACA,IAED,iCACC,IACA,IAED,0BACC,IACA,IAED,6BACC,IACA,IAWFH,GAAoBK,KAAO,WAC1B,MAAO7Z,QAAO6Z,KAAKF,IAEpBH,EAAoB7S,GAAK,IACzB/H,EAAOC,QAAU2a,GRuyCXM,IACA,SAAUlb,EAAQC,GSp2DxBD,EAAOC,QAAU,4+FT02DXkb,IACA,SAAUnb,EAAQC,GU32DxBD,EAAOC,QAAU,gwBVi3DXmb,IACA,SAAUpb,EAAQC,EAASC,GAEjCA,EAAoB,KACpBF,EAAOC,QAAUC,EAAoB,MAK/Bmb,GACA,SAAUrb,EAAQC,EAASC,GAEjC,cAC4B,SAASob,EAAQnb,GAU7C,QAASK,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCARhHS,OAAOS,eAAe5B,EAAS,cAC7BsB,OAAO,GAGT,IAAI2F,GAAW9F,OAAO+F,QAAU,SAAUnF,GAAU,IAAK,GAAIE,GAAI,EAAGA,EAAIqE,UAAUpE,OAAQD,IAAK,CAAE,GAAIkF,GAASb,UAAUrE,EAAI,KAAK,GAAIG,KAAO+E,GAAchG,OAAOD,UAAUkG,eAAevG,KAAKsG,EAAQ/E,KAAQL,EAAOK,GAAO+E,EAAO/E,IAAY,MAAOL,IAEnPF,EAAe,WAAc,QAASC,GAAiBC,EAAQC,GAAS,IAAK,GAAIC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","file":"main.bundle.js","sourcesContent":["webpackJsonp([64],{\n\n/***/ 132:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _component = __webpack_require__(33);\n\nvar _component2 = _interopRequireDefault(_component);\n\nvar _vanillaModal = __webpack_require__(133);\n\nvar _vanillaModal2 = _interopRequireDefault(_vanillaModal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar EmailDisclaimerModal = function (_Component) {\n _inherits(EmailDisclaimerModal, _Component);\n\n function EmailDisclaimerModal(el, config) {\n _classCallCheck(this, EmailDisclaimerModal);\n\n var _this = _possibleConstructorReturn(this, (EmailDisclaimerModal.__proto__ || Object.getPrototypeOf(EmailDisclaimerModal)).call(this, el, config));\n\n _this.modal = new _vanillaModal2.default();\n return _this;\n }\n\n _createClass(EmailDisclaimerModal, [{\n key: 'setupDefaults',\n value: function setupDefaults() {\n this.dom = {\n modal: '#wh-email-disclaimer-modal',\n $modalContainer: $('.modal'),\n $acceptBtn: $('.wh-email-disclaimer-modal__accept'),\n $cancelBtn: $('.wh-email-disclaimer-modal__cancel')\n };\n }\n }, {\n key: 'addListeners',\n value: function addListeners() {\n this.$el.on('click', 'a[href^=\"mailto:\"]', this.onLinkClick.bind(this));\n this.dom.$acceptBtn.on('click', this.onMailTo.bind(this));\n this.dom.$cancelBtn.on('click', this.onCancel.bind(this));\n }\n }, {\n key: 'onLinkClick',\n value: function onLinkClick(e) {\n var $target = $(e.currentTarget);\n // Do nothing if it's the the accept button on the modal\n if ($target.hasClass('wh-email-disclaimer-modal__accept')) {\n return;\n }\n\n var email = $target.attr('href').toLowerCase();\n if (email.endsWith('wilmerhale.com')) {\n e.preventDefault();\n this.dom.$acceptBtn.attr('href', email);\n\n if (!email) return;\n\n this.modal.open(this.dom.modal);\n }\n }\n }, {\n key: 'onMailTo',\n value: function onMailTo() {\n this.modal.close();\n }\n }, {\n key: 'onCancel',\n value: function onCancel(e) {\n e.preventDefault();\n this.modal.close();\n }\n }]);\n\n return EmailDisclaimerModal;\n}(_component2.default);\n\nexports.default = EmailDisclaimerModal;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 134:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _component = __webpack_require__(33);\n\nvar _component2 = _interopRequireDefault(_component);\n\nvar _vanillaModal = __webpack_require__(133);\n\nvar _vanillaModal2 = _interopRequireDefault(_vanillaModal);\n\nvar _template2 = __webpack_require__(91);\n\nvar _template3 = _interopRequireDefault(_template2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar VideoModal = function (_Component) {\n _inherits(VideoModal, _Component);\n\n function VideoModal(el, config) {\n _classCallCheck(this, VideoModal);\n\n var _this = _possibleConstructorReturn(this, (VideoModal.__proto__ || Object.getPrototypeOf(VideoModal)).call(this, el, config));\n\n _this.modal = new _vanillaModal2.default({\n onBeforeClose: function onBeforeClose() {\n return _this.removeModalContent();\n }\n });\n return _this;\n }\n\n _createClass(VideoModal, [{\n key: 'setupDefaults',\n value: function setupDefaults() {\n this.dom = {\n $body: $('body'),\n $iframe: $('#wh-video-modal iframe'),\n modal: '#wh-video-modal'\n };\n }\n }, {\n key: 'addListeners',\n value: function addListeners() {\n this.dom.$body.on('click', '.wh-video-trigger', this.onVideoTriggered.bind(this));\n }\n }, {\n key: 'onVideoTriggered',\n value: function onVideoTriggered(e) {\n e.preventDefault();\n var $target = $(e.currentTarget);\n var videoId = $target.data('video-id');\n var accountId = $target.data('account-id');\n var playerId = $target.data('player-id');\n var hasVimeoVideo = $target.data('has-vimeo-video');\n var vimeoVideoUrl = $target.data('vimeo-video-url');\n var vimeoVideoThumbnaillUrl = $target.data('vimeo-video-thumbnail-url');\n\n if (!videoId) return;\n\n this.openModal({\n videoId: videoId,\n accountId: accountId,\n playerId: playerId,\n hasVimeoVideo: hasVimeoVideo,\n vimeoVideoUrl: vimeoVideoUrl,\n vimeoVideoThumbnaillUrl: vimeoVideoThumbnaillUrl\n });\n }\n }, {\n key: 'openModal',\n value: function openModal(data) {\n var tpl = (0, _template3.default)(this.config.template)({\n data: data\n });\n\n this.dom.$body.append(tpl);\n\n this.modal.open(this.dom.modal);\n this.dom.$body.addClass('video-modal');\n\n // Modal Container\n var modalContainer = this.modal.dom.modal;\n var focusableElements = modalContainer.querySelectorAll('button, [tabindex]:not([tabindex=\"-1\"])');\n var firstFocusableElement = focusableElements[0];\n\n firstFocusableElement.focus();\n }\n }, {\n key: 'removeModalContent',\n value: function removeModalContent() {\n this.dom.$body.removeClass('video-modal');\n $(this.dom.modal).remove();\n }\n }]);\n\n return VideoModal;\n}(_component2.default);\n\nexports.default = VideoModal;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 135:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _component = __webpack_require__(33);\n\nvar _component2 = _interopRequireDefault(_component);\n\nvar _vanillaModal = __webpack_require__(133);\n\nvar _vanillaModal2 = _interopRequireDefault(_vanillaModal);\n\nvar _template2 = __webpack_require__(91);\n\nvar _template3 = _interopRequireDefault(_template2);\n\nvar _forEach2 = __webpack_require__(211);\n\nvar _forEach3 = _interopRequireDefault(_forEach2);\n\nvar _perfectScrollbar = __webpack_require__(593);\n\nvar _perfectScrollbar2 = _interopRequireDefault(_perfectScrollbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step(\"next\", value); }, function (err) { step(\"throw\", err); }); } } return step(\"next\"); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar ExcerptsModal = function (_Component) {\n _inherits(ExcerptsModal, _Component);\n\n function ExcerptsModal(el, config) {\n _classCallCheck(this, ExcerptsModal);\n\n var _this = _possibleConstructorReturn(this, (ExcerptsModal.__proto__ || Object.getPrototypeOf(ExcerptsModal)).call(this, el, config));\n\n _this.modal = new _vanillaModal2.default({\n onBeforeOpen: function onBeforeOpen() {\n return _this.onOpenModal();\n },\n onBeforeClose: function onBeforeClose() {\n return _this.removeModalContent();\n }\n });\n return _this;\n }\n\n _createClass(ExcerptsModal, [{\n key: 'setupDefaults',\n value: function setupDefaults() {\n this.dom = {\n $body: $('body'),\n modal: '.wh-excerpts-modal'\n };\n\n this.bodyYPosition = 0;\n }\n }, {\n key: 'addListeners',\n value: function addListeners() {\n this.dom.$body.on('click', '.wh-excerpts-trigger', this.openModal.bind(this));\n }\n }, {\n key: 'openModal',\n value: function openModal(e) {\n e.preventDefault();\n\n this.onLoadData({\n id: $(e.currentTarget).data('book-id')\n });\n }\n }, {\n key: 'onOpenModal',\n value: function onOpenModal() {\n this.bodyYPosition = $(window).scrollTop() * -1;\n $('body').css('top', this.bodyYPosition + 'px');\n }\n }, {\n key: 'removeModalContent',\n value: function removeModalContent() {\n this.scrollbarContent.destroy();\n this.scrollbarList.destroy();\n $(this.dom.modal).remove();\n $(window).scrollTop(this.bodyYPosition);\n }\n }, {\n key: 'goToMenu',\n value: function goToMenu(e) {\n e.preventDefault();\n this.dom.$modalContent.removeClass('view-content');\n }\n }, {\n key: 'goToContent',\n value: function goToContent(e) {\n e.preventDefault();\n var $target = $(e.currentTarget);\n var itemKey = $target.data('excerpt-key');\n\n this.dom.$menuItem.removeClass('active');\n $target.parent().addClass('active');\n this.dom.$modalContent.addClass('view-content');\n\n this.dom.$content.html('

' + this.data[itemKey].Title + '

' + this.data[itemKey].Content);\n }\n }, {\n key: 'onLoadData',\n value: function onLoadData(params) {\n this.renderData(params).catch(function (err) {\n console.error('There was an issue getting your results', err);\n });\n }\n }, {\n key: 'renderData',\n value: function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(params) {\n var tpl, $modalContent;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this.getData(params);\n\n case 2:\n this.data = _context.sent;\n tpl = (0, _template3.default)(this.config.template, { imports: { _forEach: _forEach3.default } })({\n data: this.data\n });\n\n\n this.dom.$body.append(tpl);\n\n $modalContent = $('.wh-excerpts-modal__content');\n\n\n this.dom = _extends({}, this.dom, {\n $modalContent: $modalContent,\n $backBtn: $modalContent.find('.wh-excerpts-modal__btn-back'),\n $menuItem: $modalContent.find('.wh-excerpts-modal-menu__item'),\n $content: $modalContent.find('.wh-excerpts-modal__main')\n });\n\n this.dom.$backBtn.on('click', this.goToMenu.bind(this));\n this.dom.$modalContent.on('click', '.wh-excerpts-modal-menu__item a', this.goToContent.bind(this));\n\n this.scrollbarContent = new _perfectScrollbar2.default('.wh-excerpts-modal__main');\n this.scrollbarList = new _perfectScrollbar2.default('.wh-excerpts-modal-menu');\n\n this.modal.open('#wh-excerpts-modal');\n\n case 12:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function renderData(_x) {\n return _ref.apply(this, arguments);\n }\n\n return renderData;\n }()\n }, {\n key: 'getData',\n value: function getData(params) {\n return $.getJSON(this.config.endpoint, _extends({}, params));\n }\n }]);\n\n return ExcerptsModal;\n}(_component2.default);\n\nexports.default = ExcerptsModal;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 136:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _component = __webpack_require__(33);\n\nvar _component2 = _interopRequireDefault(_component);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar CookieUseDisclaimer = function (_Component) {\n _inherits(CookieUseDisclaimer, _Component);\n\n function CookieUseDisclaimer(el, config) {\n _classCallCheck(this, CookieUseDisclaimer);\n\n return _possibleConstructorReturn(this, (CookieUseDisclaimer.__proto__ || Object.getPrototypeOf(CookieUseDisclaimer)).call(this, el, config));\n }\n\n _createClass(CookieUseDisclaimer, [{\n key: 'setupDefaults',\n value: function setupDefaults() {\n this.dom = {\n $closeBtn: this.$el.find('.wh-cookie-use-disclaimer__btn-close')\n };\n\n this.cssClasses = {\n close: 'close'\n };\n }\n }, {\n key: 'addListeners',\n value: function addListeners() {\n this.dom.$closeBtn.on('click touch', this.onClose.bind(this));\n }\n }, {\n key: 'onClose',\n value: function onClose(e) {\n e.preventDefault();\n\n this.$el.addClass(this.cssClasses.close);\n\n $.post(this.config.endpoint, {\n Guid: this.$el.data('guid')\n });\n }\n }]);\n\n return CookieUseDisclaimer;\n}(_component2.default);\n\nexports.default = CookieUseDisclaimer;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 137:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _component = __webpack_require__(33);\n\nvar _component2 = _interopRequireDefault(_component);\n\n__webpack_require__(213);\n\nvar _gsap = __webpack_require__(90);\n\n__webpack_require__(210);\n\n__webpack_require__(599);\n\nvar _helpers = __webpack_require__(139);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Header = function (_Component) {\n _inherits(Header, _Component);\n\n function Header(el, config) {\n _classCallCheck(this, Header);\n\n var _this = _possibleConstructorReturn(this, (Header.__proto__ || Object.getPrototypeOf(Header)).call(this, el, config));\n\n _this.init();\n return _this;\n }\n\n _createClass(Header, [{\n key: 'setupDefaults',\n value: function setupDefaults() {\n this.dom = {\n $headerNav: this.$el.find('.wh-header-navigation'),\n $headerNavBar: this.$el.find('.wh-header-navigation__wrapper'),\n $searchBtn: this.$el.find('.wh-header-navigation__search-icon'),\n $searchInput: this.$el.find('.wh-search-box__field'),\n $navLinks: this.$el.find('.wh-header-navigation__links'),\n $searchBox: this.$el.find('.wh-search-box'),\n $predictiveResults: this.$el.find('.wh-predictive-search'),\n $burgerBtn: this.$el.find('.wh-header-navigation__burger'),\n $document: $(document),\n $body: $('body'),\n $utilityNav: this.$el.find('.wh-utility-navigation'),\n $utilityNavItem: this.$el.find('.wh-utility-navigation-item'),\n $utilityNavItemLink: this.$el.find('.wh-utility-navigation-item__link'),\n $utilityNavItemMobile: this.$el.find('.wh-header-navigation__utility-select'),\n $primaryNavItems: this.$el.find('.header__primary-nav-item'),\n $headerRegionLink: this.$el.find('.header__region-link'),\n $logo: this.$el.find('.wh-header-navigation__logo--screen'),\n $logoWrapper: this.$el.find('.wh-header-navigation__logo-wrapper')\n };\n\n this.classes = {\n searchOn: 'search-on',\n navOpen: 'nav-open',\n sticky: 'wh-header--is-sticky',\n stickyVisible: 'wh-header--is-sticky-visible',\n utilityOpen: 'utility-open'\n };\n }\n }, {\n key: 'addListeners',\n value: function addListeners() {\n this.dom.$searchBtn.on('click', this.onToggleSearch.bind(this));\n this.dom.$document.on('click', this.onClickOutside.bind(this));\n this.dom.$burgerBtn.on('click', this.onToggleNav.bind(this));\n this.dom.$utilityNavItemLink.on('click', this.onToggleUtilityNavDropdown.bind(this));\n this.dom.$utilityNavItemMobile.on('change', this.onUtilityNavMobileChange.bind(this));\n this.dom.$utilityNavItemMobile.on('blur', this.onUtilityNavMobileClose.bind(this));\n this.dom.$headerRegionLink.on('click', this.handleHeaderRegionLink.bind(this));\n this.dom.$primaryNavItems.on('click', this.handlePrimaryNavLinkClick.bind(this));\n }\n }, {\n key: 'init',\n value: function init() {\n var _this2 = this;\n\n new this.config.PredictiveSearch(this.$el, {\n endpoint: this.config.endpoint,\n itemsLimit: 5\n });\n if (this.$el.hasClass(this.classes.sticky) && !this.$el.hasClass(this.classes.stickyVisible)) {\n this.config.triggerElement.waypoint(function (direction) {\n if (direction === 'down') {\n _this2.dom.$headerNav.css('top', 0);\n } else {\n if (!$('body').hasClass('wh-search-box-focused')) {\n _this2.dom.$headerNav.css('top', -150);\n _this2.dom.$utilityNavItem.removeClass(_this2.classes.utilityOpen);\n }\n }\n });\n }\n this.setSelectric();\n this.edgeAppleMobileDeviceSetup();\n return this;\n }\n }, {\n key: 'edgeAppleMobileDeviceSetup',\n value: function edgeAppleMobileDeviceSetup() {\n var isEdgeOnAppleMobile = /EdgiOS/i.test(navigator.userAgent) && /Mobile/i.test(navigator.userAgent);\n\n if (isEdgeOnAppleMobile) {\n var whiteLogoSrc = this.dom.$logoWrapper.attr('data-edge-ios-image');\n var normalLogoSrc = this.dom.$logo.attr('src');\n var imageClone = this.dom.$logo.clone();\n\n this.dom.$logoWrapper.empty();\n\n this.dom.$logoWrapper.append('');\n\n this.dom.$logoWrapper.append('');\n\n this.dom.$logoWrapper.append(imageClone);\n }\n }\n }, {\n key: 'handleHeaderRegionLink',\n value: function handleHeaderRegionLink(e) {\n var selectedOption = e.currentTarget.childNodes[1].href;\n window.location.href = selectedOption;\n }\n }, {\n key: 'handlePrimaryNavLinkClick',\n value: function handlePrimaryNavLinkClick(e) {\n var $primaryNavItems = this.dom.$primaryNavItems;\n\n var parent = e.currentTarget.closest('.header__primary-nav-item');\n var dataset = parent.dataset;\n if (!dataset.itemOpen) {\n if (parent.childNodes.length > 3) {\n e.preventDefault();\n $primaryNavItems.filter(function (items) {\n return items !== parent;\n }).each(function (item) {\n return $primaryNavItems[item].removeAttribute('data-item-open');\n });\n parent.dataset.itemOpen = 'true';\n }\n } else {\n e.preventDefault();\n parent.removeAttribute('data-item-open');\n }\n }\n }, {\n key: 'setSelectric',\n value: function setSelectric() {\n var isMobile = navigator.platform.toLowerCase().match(/(iphone|ipod|ipad|android|arm)/) !== null ? true : false;\n this.dom.$utilityNavItemMobile.selectric({\n disableOnMobile: false,\n nativeOnMobile: isMobile\n });\n this.dom.$utilityNavItemMobile.selectricPlaceholder({});\n\n (0, _helpers.addLabelsToSelectric)();\n }\n }, {\n key: 'onToggleSearch',\n value: function onToggleSearch(e) {\n e.preventDefault();\n this.dom.$body.toggleClass(this.classes.navOpen);\n this.dom.$utilityNavItem.removeClass(this.classes.utilityOpen);\n\n if ($(window).width() > 1023) {\n this.$el.toggleClass(this.classes.searchOn);\n }\n\n if (this.dom.$body.hasClass(this.classes.navOpen)) {\n this.dom.$searchInput.focus();\n }\n }\n }, {\n key: 'onToggleNav',\n value: function onToggleNav(e) {\n e.preventDefault();\n this.dom.$body.toggleClass(this.classes.navOpen);\n }\n }, {\n key: 'onClickOutside',\n value: function onClickOutside(e) {\n var _this3 = this;\n\n var $primaryNavItems = this.dom.$primaryNavItems;\n\n if (this.dom.$primaryNavItems.has(e.target).length === 0) {\n $primaryNavItems.each(function (item) {\n return $primaryNavItems[item].removeAttribute('data-item-open');\n });\n }\n\n if (this.dom.$body.hasClass(this.classes.navOpen) && this.dom.$headerNavBar.has(e.target).length === 0 && !this.dom.$searchBtn.is($(e.target).parents('.wh-header-navigation__search-icon'))) {\n this.dom.$body.removeClass(this.classes.navOpen);\n }\n\n if (!this.dom.$searchBox.is(e.target) && this.dom.$searchBox.has(e.target).length === 0 && !this.dom.$searchBtn.is($(e.target).parents('.wh-header-navigation__search-icon')) && !this.dom.$utilityNavItem.is(e.target) && this.dom.$utilityNavItem.has(e.target).length === 0) {\n _gsap.TweenLite.to(this.dom.$predictiveResults, 0.5, {\n height: 0,\n ease: _gsap.Expo.easeOut,\n onComplete: function onComplete() {\n _this3.dom.$predictiveResults.removeClass('expanded');\n }\n });\n this.$el.removeClass(this.classes.searchOn);\n this.dom.$utilityNavItem.removeClass(this.classes.utilityOpen);\n }\n }\n }, {\n key: 'onToggleUtilityNavDropdown',\n value: function onToggleUtilityNavDropdown(e) {\n e.preventDefault();\n var $target = $(e.currentTarget);\n var $parent = $($target.parents('.wh-utility-navigation-item')[0]);\n if ($parent.hasClass(this.classes.utilityOpen)) {\n $parent.removeClass(this.classes.utilityOpen);\n return;\n }\n\n this.dom.$utilityNavItem.removeClass(this.classes.utilityOpen);\n $parent.addClass(this.classes.utilityOpen);\n }\n }, {\n key: 'onUtilityNavMobileClose',\n value: function onUtilityNavMobileClose(e) {\n if (!this.$el.hasClass(this.classes.sticky)) {\n window.scrollTo(0, 0);\n }\n }\n }, {\n key: 'onUtilityNavMobileChange',\n value: function onUtilityNavMobileChange(e) {\n var $target = $(e.currentTarget);\n var selectedOption = $target.val();\n window.location.href = selectedOption;\n }\n }]);\n\n return Header;\n}(_component2.default);\n\nexports.default = Header;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 138:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _component = __webpack_require__(33);\n\nvar _component2 = _interopRequireDefault(_component);\n\nvar _debounce2 = __webpack_require__(206);\n\nvar _debounce3 = _interopRequireDefault(_debounce2);\n\nvar _template2 = __webpack_require__(91);\n\nvar _template3 = _interopRequireDefault(_template2);\n\nvar _remove2 = __webpack_require__(209);\n\nvar _remove3 = _interopRequireDefault(_remove2);\n\nvar _isEmpty2 = __webpack_require__(208);\n\nvar _isEmpty3 = _interopRequireDefault(_isEmpty2);\n\nvar _predictiveSearchItem = __webpack_require__(214);\n\nvar _predictiveSearchItem2 = _interopRequireDefault(_predictiveSearchItem);\n\nvar _constants = __webpack_require__(92);\n\nvar _gsap = __webpack_require__(90);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step(\"next\", value); }, function (err) { step(\"throw\", err); }); } } return step(\"next\"); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar PredictiveSearch = function (_Component) {\n _inherits(PredictiveSearch, _Component);\n\n function PredictiveSearch(el, config) {\n _classCallCheck(this, PredictiveSearch);\n\n return _possibleConstructorReturn(this, (PredictiveSearch.__proto__ || Object.getPrototypeOf(PredictiveSearch)).call(this, el, config));\n }\n\n _createClass(PredictiveSearch, [{\n key: 'setupDefaults',\n value: function setupDefaults() {\n this.dom = {\n $container: this.$el,\n $serchBox: this.$el.find('.wh-search-box'),\n $input: this.$el.find('.wh-search-box__field'),\n $searchBtn: this.$el.find('.wh-search-box__button'),\n $results: this.$el.find('.wh-predictive-search')\n };\n\n this.cssClasses = {\n searchGroup: 'wh-predictive-search-group'\n };\n\n this.endpoint = this.config.endpoint ? this.config.endpoint : _constants.ENDPOINT.getKeywordSearch;\n this.currentRequest = [];\n }\n }, {\n key: 'addListeners',\n value: function addListeners() {\n var _this2 = this;\n\n this.dom.$input.on('keyup input', (0, _debounce3.default)(function (e) {\n _this2.onInputUp(e);\n }, 100));\n\n this.dom.$searchBtn.on('click touch', this.onSearch.bind(this));\n this.$el.on('click touch', '.wh-predictive-search-group__title', this.onHeadingClick.bind(this));\n }\n }, {\n key: 'getResults',\n value: function getResults(keyword, contenttype, requestIndex) {\n var _this3 = this;\n\n this.dom.$serchBox.addClass('loading');\n return $.ajax({\n url: this.endpoint,\n data: { keyword: keyword, contenttype: contenttype, take: this.config.itemsLimit ? this.config.itemsLimit : undefined },\n beforeSend: function beforeSend() {\n if (_this3.currentRequest[requestIndex] && _this3.currentRequest[requestIndex] !== null) {\n _this3.currentRequest[requestIndex].abort();\n }\n }\n });\n }\n }, {\n key: 'renderResults',\n value: function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(value) {\n var data, items, noResults, noResultsString;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return Promise.all([this.currentRequest[0] = this.getResults(value, _constants.SEARCH_GROUPS[0], 0), this.currentRequest[1] = this.getResults(value, _constants.SEARCH_GROUPS[1], 1), this.currentRequest[2] = this.getResults(value, _constants.SEARCH_GROUPS[2], 2), this.currentRequest[3] = this.getResults(value, _constants.SEARCH_GROUPS[3], 3), this.currentRequest[4] = this.getResults(value, _constants.SEARCH_GROUPS[4], 4), this.currentRequest[5] = this.getResults(value, _constants.SEARCH_GROUPS[5], 5), this.currentRequest[5] = this.getResults(value, _constants.SEARCH_GROUPS[6], 6), this.currentRequest[5] = this.getResults(value, _constants.SEARCH_GROUPS[7], 7), this.currentRequest[5] = this.getResults(value, _constants.SEARCH_GROUPS[8], 8)]);\n\n case 2:\n data = _context.sent;\n\n\n (0, _remove3.default)(data, function (n) {\n return (0, _isEmpty3.default)(n);\n });\n\n this.dom.$serchBox.removeClass('loading');\n this.$el.trigger('search:keyword', data);\n\n items = '';\n\n\n if (data.length > 0) {\n data.forEach(function (item) {\n items += (0, _template3.default)(_predictiveSearchItem2.default)(item);\n });\n\n this.dom.$results.html(items);\n } else {\n noResults = this.dom.$results.data('no-results-txt');\n noResultsString = '
  • ' + noResults + '
  • ';\n\n\n this.dom.$results.find('li').remove();\n this.dom.$results.html(noResultsString);\n }\n\n this.dom.$results.removeClass('loading');\n\n if (!this.dom.$results.hasClass('expanded')) {\n this.dom.$results.addClass('expanded');\n _gsap.TweenLite.set(this.dom.$results, { height: 'auto', ease: _gsap.Expo.easeOut });\n _gsap.TweenLite.from(this.dom.$results, 0.4, { height: 0, ease: _gsap.Expo.easeInOut });\n }\n\n case 10:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function renderResults(_x) {\n return _ref.apply(this, arguments);\n }\n\n return renderResults;\n }()\n }, {\n key: 'destroyResults',\n value: function destroyResults() {\n var _this4 = this;\n\n _gsap.TweenLite.to(this.dom.$results, 0.5, { height: 0, ease: _gsap.Expo.easeOut, onComplete: function onComplete() {\n _this4.dom.$results.removeClass('expanded');\n _this4.dom.$results.find('li').remove();\n } });\n }\n }, {\n key: 'onInputUp',\n value: function onInputUp(e) {\n var value = this.dom.$input.val().trim();\n\n if (value.length < 1) {\n this.destroyResults();\n\n return;\n }\n\n if (value.length >= 1) {\n this.dom.$searchBtn.addClass('active');\n } else {\n this.dom.$searchBtn.removeClass('active');\n }\n\n if (e.which === 13) {\n this.destroyResults();\n window.open(this.dom.$serchBox.data('search-url') + '?keyword=' + encodeURIComponent(value), '_self');\n return;\n }\n\n this.renderResults(value).catch(function (err) {\n if (err.statusText !== 'abort') {\n console.error('There was an error getting your results', err);\n }\n });\n }\n }, {\n key: 'onHeadingClick',\n value: function onHeadingClick(e) {\n var $target = $(e.currentTarget);\n if ($target.hasClass('wh-predictive-search-group__title--false')) {\n return;\n }\n\n var $searchGroup = $target.parents('.' + this.cssClasses.searchGroup);\n var searchViewAllType = $searchGroup.data('predictive-view-all-type');\n var searchGroupLabel = $searchGroup.data('predictive-search-group');\n\n if (searchGroupLabel === 'Solutions' || searchGroupLabel === 'Locations' || searchGroupLabel === 'Careers') {\n searchGroupLabel = searchGroupLabel.substring(0, searchGroupLabel.length - 1);\n }\n\n var keyword = this.dom.$input.val().trim();\n window.open(this.dom.$serchBox.data('search-url') + '?area=' + (searchViewAllType ? encodeURIComponent(searchViewAllType) : encodeURIComponent(searchGroupLabel)) + '&keyword=' + encodeURIComponent(keyword), '_self');\n }\n }, {\n key: 'onSearch',\n value: function onSearch(e) {\n e.preventDefault();\n var keyword = this.dom.$input.val().trim();\n this.destroyResults();\n window.open(this.dom.$serchBox.data('search-url') + '?keyword=' + encodeURIComponent(keyword), '_self');\n }\n }]);\n\n return PredictiveSearch;\n}(_component2.default);\n\nexports.default = PredictiveSearch;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 139:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.sendSearchGAEvent = exports.numberWithCommas = exports.isOutOfViewport = exports.focusableElements = exports.isFocusable = exports.getScrollbarWidth = exports.isTabletLandscape = exports.isMobile = exports.iOS = exports.isMobileDevice = exports.goToPreviewPosition = exports.setScrollPosition = exports.getUrlParameter = exports.getQueryParams = exports.truncateString = exports.initSVG = exports.scrollTo = exports.updateHistory = exports.getUrlParams = exports.close = exports.open = undefined;\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nexports.addLabelsToSelectric = addLabelsToSelectric;\n\nvar _gsap = __webpack_require__(90);\n\n__webpack_require__(487);\n\n/**\n * Opens an element\n *\n * @param el - DOM element\n * @param speed - Speed of animation\n * @param ease - Ease function\n * @param onComplete - On complete callback\n */\nvar open = exports.open = function open(el) {\n var speed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0.4;\n var ease = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'easeOut';\n var onComplete = arguments[3];\n\n _gsap.TweenMax.set(el, { height: 'auto' });\n _gsap.TweenMax.from(el, speed, { height: 0, ease: _gsap.Expo[ease], onComplete: onComplete });\n};\n\n/**\n * Closes an element\n *\n * @param el - DOM element\n * @param speed - Speed of animation\n * @param ease - Ease function\n * @param onComplete - On complete callback\n */\nvar close = exports.close = function close(el) {\n var speed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0.4;\n var ease = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'easeOut';\n var onComplete = arguments[3];\n\n _gsap.TweenMax.to(el, speed, { height: 0, ease: _gsap.Expo[ease], onComplete: onComplete });\n};\n\n/**\n * Returns query string parameters\n *\n * @param query - URL's query string\n */\nvar getUrlParams = exports.getUrlParams = function getUrlParams(query) {\n if (!query) {\n return {};\n }\n\n return (/^[?#]/.test(query) ? query.slice(1) : query).split('&').reduce(function (params, param) {\n var _param$split = param.split('='),\n _param$split2 = _slicedToArray(_param$split, 2),\n key = _param$split2[0],\n value = _param$split2[1];\n\n params[key] = value ? decodeURIComponent(value.replace(/\\+/g, ' ')) : '';\n return params;\n }, {});\n};\n\n/**\n * Pushes url to history state\n * Warning: will replace current querystring in URL\n * @param newQueryString - Query string to be used in browser and history\n */\nvar updateHistory = exports.updateHistory = function updateHistory(newQueryString) {\n var newURL = '' + location.origin + location.pathname + '?' + newQueryString;\n history.pushState({}, '', newURL);\n};\n\n/**\n * Scroll to point on a page\n *\n * @param y - Position to scroll to\n * @param speed - Speed of animation\n */\nvar scrollTo = exports.scrollTo = function scrollTo(y) {\n var speed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1.5;\n var onCompleteHandler = arguments[2];\n\n _gsap.TweenMax.to(window, speed, { scrollTo: { y: y }, ease: _gsap.Expo.easeOut, onComplete: onCompleteHandler });\n};\n\n/**\n * Initializes inline SVG's\n *\n * @param config - Configuration holding the DOM element and the target\n * Reference: https://stackoverflow.com/questions/24933430/img-src-svg-changing-the-fill-color\n */\nvar initSVG = exports.initSVG = function initSVG(config) {\n $(config.el).each(function (k, v) {\n var $img = $(v);\n var imgID = $img.attr('id');\n var imgClass = $img.attr('class');\n var imgURL = $img.attr('src');\n\n $.get(imgURL, function (data) {\n // Get the SVG tag, ignore the rest\n var $svg = $(data).find(config.target);\n\n // Add replaced image's ID to the new SVG\n if (typeof imgID !== 'undefined') {\n $svg = $svg.attr('id', imgID);\n }\n // Add replaced image's classes to the new SVG\n if (typeof imgClass !== 'undefined') {\n $svg = $svg.attr('class', imgClass + ' replaced-svg');\n }\n\n // Remove any invalid XML tags as per http://validator.w3.org\n $svg = $svg.removeAttr('xmlns:a');\n\n // Check if the viewport is set, else we gonna set it if we can.\n if (!$svg.attr('viewBox') && $svg.attr('height') && $svg.attr('width')) {\n $svg.attr('viewBox', '0 0 ' + $svg.attr('height') + ' ' + $svg.attr('width'));\n }\n\n // Replace image with new SVG\n $img.replaceWith($svg);\n }, 'xml');\n });\n};\n\nvar truncateString = exports.truncateString = function truncateString(str, n) {\n return str.substr(0, n - 1) + (str.length > n ? '…' : '');\n};\n\n/**\n * Parses a query string\n *\n * @param query - querystring to parse.\n*/\nvar getQueryParams = exports.getQueryParams = function getQueryParams(query) {\n var params = {};\n\n query.replace(/([^?=&]+)(=([^&]*))?/g, function ($0, $1, $2, $3) {\n var key = $1.toLowerCase();\n\n params[key] = decodeURIComponent($3);\n });\n\n return params;\n};\n\n/**\n * Returns paramenter value\n *\n * @param sParam - URL param\n */\nvar getUrlParameter = exports.getUrlParameter = function getUrlParameter(sParam, url) {\n var sPageURL = window.location.search.substring(1);\n var sURLVariables = sPageURL.split('&');\n var sParameterName = void 0,\n i = void 0;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]);\n }\n }\n};\n\nfunction addLabelsToSelectric() {\n setTimeout(function () {\n var selectricWrappers = $('.selectric-wrapper');\n\n if (selectricWrappers) {\n $.each(selectricWrappers, function (index, element) {\n var label = $(element).find('.selectric').find('.label');\n var id = 'input-id-' + Math.round(Math.random() * 10000);\n\n if (label) {\n var text = $(label).text();\n var hiddenInput = $(element).find('.selectric-input');\n\n if (hiddenInput.length) {\n $(hiddenInput).attr('id', id);\n $('').insertBefore($(hiddenInput));\n }\n }\n });\n }\n }, 1000);\n}\n\nvar setScrollPosition = exports.setScrollPosition = function setScrollPosition(name) {\n return sessionStorage.setItem('scrollToPrevPosition' + name, $(window).scrollTop());\n};\n\nvar goToPreviewPosition = exports.goToPreviewPosition = function goToPreviewPosition(name) {\n var data = sessionStorage.getItem('scrollToPrevPosition' + name);\n\n if (data) {\n window.scrollTo({\n top: data\n });\n sessionStorage.removeItem('scrollToPrevPosition' + name);\n }\n};\n\n// /**\n// * Checks browser is running on a native mobile device\n// */\nvar isMobileDevice = exports.isMobileDevice = function isMobileDevice() {\n var userAgent = navigator.userAgent || navigator.vendor || window.opera;\n\n return (/windows phone/i.test(userAgent) || /android/i.test(userAgent) || /iPad|iPhone|iPod/.test(userAgent) && !window.MSStream\n );\n};\n\n// /**\n// * Checks iOS user agent\n// */\nvar iOS = exports.iOS = function iOS() {\n return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || navigator.userAgent.includes('Mac') && 'ontouchend' in document;\n};\n\n// /**\n// * Returns if media query matches mobile\n// */\nvar isMobile = exports.isMobile = function isMobile() {\n return window.matchMedia('(max-width: 767px)').matches;\n};\n\n// /**\n// * Returns if media query matches tabletLandscape\n// */\nvar isTabletLandscape = exports.isTabletLandscape = function isTabletLandscape() {\n return window.matchMedia('(max-width: 1023px)').matches;\n};\n\n// /**\n// * Returns the browser's scrollbar width\n// */\nvar getScrollbarWidth = exports.getScrollbarWidth = function getScrollbarWidth() {\n return window.innerWidth - document.documentElement.clientWidth;\n};\n\n// /**\n// * Checks if an element is focusable\n// *\n// * @param {Object} el - HTML element you want to check if it's focusable\n// */\nvar isFocusable = exports.isFocusable = function isFocusable(el) {\n if (el.tabIndex > 0 || el.tabIndex === 0 && el.getAttribute('tabIndex') !== null) {\n return true;\n }\n\n if (el.disabled) {\n return false;\n }\n\n /* eslint-disable indent */\n switch (el.nodeName) {\n case 'A':\n return !!el.href && el.rel !== 'ignore';\n case 'INPUT':\n return el.type !== 'hidden' && el.type !== 'file';\n case 'BUTTON':\n case 'SELECT':\n case 'TEXTAREA':\n return true;\n default:\n return false;\n }\n /* eslint-enable indent */\n};\n\n// /**\n// * FOCUSABLE ELEMENTS\n// */\nvar focusableElements = exports.focusableElements = ['[contenteditable]', '[tabindex]:not([tabindex^=\"-\"])', 'a[href]', 'area[href]', 'button:not([disabled]):not([aria-hidden])', 'embed', 'iframe', 'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])', 'object', 'select:not([disabled]):not([aria-hidden])', 'textarea:not([disabled]):not([aria-hidden])'];\n\n// * Check if an element is outside the viewport\n// */\nvar isOutOfViewport = exports.isOutOfViewport = function isOutOfViewport(elem) {\n // Get element's bounding\n var bounding = elem.getBoundingClientRect();\n\n // Check if it's out of the viewport on each side\n var out = {};\n out.top = bounding.top < 0;\n out.left = bounding.left < 0;\n out.bottom = bounding.bottom > (window.innerHeight || document.documentElement.clientHeight);\n out.right = bounding.right > (window.innerWidth || document.documentElement.clientWidth);\n out.any = out.top || out.left || out.bottom || out.right;\n out.all = out.top && out.left && out.bottom && out.right;\n\n return out;\n};\n\nvar numberWithCommas = exports.numberWithCommas = function numberWithCommas(x) {\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n};\n\nvar sendSearchGAEvent = exports.sendSearchGAEvent = function sendSearchGAEvent(event, search_term, num_search_results) {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push({\n event: event,\n search_term: search_term,\n num_search_results: num_search_results\n });\n};\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 176:\n/***/ (function(module, exports, __webpack_require__) {\n\nvar map = {\n\t\"./Accordion\": [\n\t\t218,\n\t\t62\n\t],\n\t\"./Accordion.js\": [\n\t\t218,\n\t\t62\n\t],\n\t\"./BioOverview\": [\n\t\t219,\n\t\t61\n\t],\n\t\"./BioOverview.js\": [\n\t\t219,\n\t\t61\n\t],\n\t\"./BlogListing\": [\n\t\t220,\n\t\t0\n\t],\n\t\"./BlogListing.js\": [\n\t\t220,\n\t\t0\n\t],\n\t\"./CaseStudySpotlight\": [\n\t\t222,\n\t\t33\n\t],\n\t\"./CaseStudySpotlight.js\": [\n\t\t222,\n\t\t33\n\t],\n\t\"./ColumnCareersRow\": [\n\t\t223,\n\t\t32\n\t],\n\t\"./ColumnCareersRow.js\": [\n\t\t223,\n\t\t32\n\t],\n\t\"./Component\": [\n\t\t33\n\t],\n\t\"./Component.js\": [\n\t\t33\n\t],\n\t\"./ContactsListing\": [\n\t\t224,\n\t\t60\n\t],\n\t\"./ContactsListing.js\": [\n\t\t224,\n\t\t60\n\t],\n\t\"./EmailDisclaimerModal\": [\n\t\t132\n\t],\n\t\"./EmailDisclaimerModal.js\": [\n\t\t132\n\t],\n\t\"./ExperienceListing\": [\n\t\t225,\n\t\t59\n\t],\n\t\"./ExperienceListing.js\": [\n\t\t225,\n\t\t59\n\t],\n\t\"./FeaturedSolutionSlider\": [\n\t\t226,\n\t\t31\n\t],\n\t\"./FeaturedSolutionSlider.js\": [\n\t\t226,\n\t\t31\n\t],\n\t\"./HomepageFeaturedContent\": [\n\t\t227,\n\t\t58\n\t],\n\t\"./HomepageFeaturedContent.js\": [\n\t\t227,\n\t\t58\n\t],\n\t\"./HomepageHero\": [\n\t\t228,\n\t\t57\n\t],\n\t\"./HomepageHero.js\": [\n\t\t228,\n\t\t57\n\t],\n\t\"./HomepageMasthead\": [\n\t\t229,\n\t\t30\n\t],\n\t\"./HomepageMasthead.js\": [\n\t\t229,\n\t\t30\n\t],\n\t\"./InsightsListing\": [\n\t\t230,\n\t\t56\n\t],\n\t\"./InsightsListing.js\": [\n\t\t230,\n\t\t56\n\t],\n\t\"./InsightsSlider\": [\n\t\t231,\n\t\t29\n\t],\n\t\"./InsightsSlider.js\": [\n\t\t231,\n\t\t29\n\t],\n\t\"./NewsArticle\": [\n\t\t232,\n\t\t55\n\t],\n\t\"./NewsArticle.js\": [\n\t\t232,\n\t\t55\n\t],\n\t\"./NoteworthyContent\": [\n\t\t233,\n\t\t54\n\t],\n\t\"./NoteworthyContent.js\": [\n\t\t233,\n\t\t54\n\t],\n\t\"./Pagination\": [\n\t\t207,\n\t\t53\n\t],\n\t\"./Pagination.js\": [\n\t\t207,\n\t\t53\n\t],\n\t\"./ReadMore\": [\n\t\t234,\n\t\t52\n\t],\n\t\"./ReadMore.js\": [\n\t\t234,\n\t\t52\n\t],\n\t\"./RecognitionListing\": [\n\t\t235,\n\t\t51\n\t],\n\t\"./RecognitionListing.js\": [\n\t\t235,\n\t\t51\n\t],\n\t\"./ShowcaseCarousel\": [\n\t\t236,\n\t\t27\n\t],\n\t\"./ShowcaseCarousel.js\": [\n\t\t236,\n\t\t27\n\t],\n\t\"./Statistics\": [\n\t\t237,\n\t\t5\n\t],\n\t\"./Statistics.js\": [\n\t\t237,\n\t\t5\n\t],\n\t\"./TeamSpotlightGrid\": [\n\t\t238,\n\t\t26\n\t],\n\t\"./TeamSpotlightGrid.js\": [\n\t\t238,\n\t\t26\n\t],\n\t\"./TestimonialCarousel\": [\n\t\t239,\n\t\t25\n\t],\n\t\"./TestimonialCarousel.js\": [\n\t\t239,\n\t\t25\n\t],\n\t\"./TrendingTopicsCarousel\": [\n\t\t240,\n\t\t4\n\t],\n\t\"./TrendingTopicsCarousel.js\": [\n\t\t240,\n\t\t4\n\t],\n\t\"./TrendingTopicsCarouselSlider\": [\n\t\t215,\n\t\t24\n\t],\n\t\"./TrendingTopicsCarouselSlider.js\": [\n\t\t215,\n\t\t24\n\t],\n\t\"./VideoModal\": [\n\t\t134\n\t],\n\t\"./VideoModal.js\": [\n\t\t134\n\t],\n\t\"./about/AboutOverviewNav\": [\n\t\t241,\n\t\t50\n\t],\n\t\"./about/AboutOverviewNav.js\": [\n\t\t241,\n\t\t50\n\t],\n\t\"./about/VideoGrid\": [\n\t\t242,\n\t\t49\n\t],\n\t\"./about/VideoGrid.js\": [\n\t\t242,\n\t\t49\n\t],\n\t\"./article/ArticleBrief\": [\n\t\t243,\n\t\t48\n\t],\n\t\"./article/ArticleBrief.js\": [\n\t\t243,\n\t\t48\n\t],\n\t\"./article/ArticleFootnotes\": [\n\t\t244,\n\t\t47\n\t],\n\t\"./article/ArticleFootnotes.js\": [\n\t\t244,\n\t\t47\n\t],\n\t\"./article/ArticleSeeMore\": [\n\t\t245,\n\t\t46\n\t],\n\t\"./article/ArticleSeeMore.js\": [\n\t\t245,\n\t\t46\n\t],\n\t\"./book/Author\": [\n\t\t246,\n\t\t23\n\t],\n\t\"./book/Author.js\": [\n\t\t246,\n\t\t23\n\t],\n\t\"./book/ExcerptsModal\": [\n\t\t135\n\t],\n\t\"./book/ExcerptsModal.js\": [\n\t\t135\n\t],\n\t\"./book/ReviewsTestimonials\": [\n\t\t247,\n\t\t22\n\t],\n\t\"./book/ReviewsTestimonials.js\": [\n\t\t247,\n\t\t22\n\t],\n\t\"./careers/FeaturedContentCarousel\": [\n\t\t248,\n\t\t1\n\t],\n\t\"./careers/FeaturedContentCarousel.js\": [\n\t\t248,\n\t\t1\n\t],\n\t\"./careers/JobListing\": [\n\t\t249,\n\t\t45\n\t],\n\t\"./careers/JobListing.js\": [\n\t\t249,\n\t\t45\n\t],\n\t\"./event-listing/PredictiveSearch\": [\n\t\t251,\n\t\t44\n\t],\n\t\"./event-listing/PredictiveSearch.js\": [\n\t\t251,\n\t\t44\n\t],\n\t\"./event-listing/Search\": [\n\t\t252,\n\t\t11\n\t],\n\t\"./event-listing/Search.js\": [\n\t\t252,\n\t\t11\n\t],\n\t\"./event-listing/SubscribeCallout\": [\n\t\t253,\n\t\t43\n\t],\n\t\"./event-listing/SubscribeCallout.js\": [\n\t\t253,\n\t\t43\n\t],\n\t\"./event/EventVideoPlayer\": [\n\t\t250,\n\t\t2\n\t],\n\t\"./event/EventVideoPlayer.js\": [\n\t\t250,\n\t\t2\n\t],\n\t\"./global\": [\n\t\t64\n\t],\n\t\"./global/\": [\n\t\t64\n\t],\n\t\"./global/BackToTop\": [\n\t\t254,\n\t\t42\n\t],\n\t\"./global/BackToTop.js\": [\n\t\t254,\n\t\t42\n\t],\n\t\"./global/CookieUseDisclaimer\": [\n\t\t136\n\t],\n\t\"./global/CookieUseDisclaimer.js\": [\n\t\t136\n\t],\n\t\"./global/DownloadButton\": [\n\t\t255,\n\t\t21\n\t],\n\t\"./global/DownloadButton.js\": [\n\t\t255,\n\t\t21\n\t],\n\t\"./global/Header\": [\n\t\t137\n\t],\n\t\"./global/Header.js\": [\n\t\t137\n\t],\n\t\"./global/PredictiveSearch\": [\n\t\t138\n\t],\n\t\"./global/PredictiveSearch.js\": [\n\t\t138\n\t],\n\t\"./global/SectionNav\": [\n\t\t256,\n\t\t20\n\t],\n\t\"./global/SectionNav.js\": [\n\t\t256,\n\t\t20\n\t],\n\t\"./global/ShareComponent\": [\n\t\t257,\n\t\t41\n\t],\n\t\"./global/ShareComponent.js\": [\n\t\t257,\n\t\t41\n\t],\n\t\"./global/ShareThis\": [\n\t\t258,\n\t\t40\n\t],\n\t\"./global/ShareThis.js\": [\n\t\t258,\n\t\t40\n\t],\n\t\"./global/StickyHeader\": [\n\t\t259,\n\t\t19\n\t],\n\t\"./global/StickyHeader.js\": [\n\t\t259,\n\t\t19\n\t],\n\t\"./global/TwoColumns\": [\n\t\t260,\n\t\t39\n\t],\n\t\"./global/TwoColumns.js\": [\n\t\t260,\n\t\t39\n\t],\n\t\"./global/index\": [\n\t\t64\n\t],\n\t\"./global/index.js\": [\n\t\t64\n\t],\n\t\"./insights-events/PredictiveSearch\": [\n\t\t263,\n\t\t18\n\t],\n\t\"./insights-events/PredictiveSearch.js\": [\n\t\t263,\n\t\t18\n\t],\n\t\"./insights-listing/NewPredictiveSearch\": [\n\t\t264,\n\t\t17\n\t],\n\t\"./insights-listing/NewPredictiveSearch.js\": [\n\t\t264,\n\t\t17\n\t],\n\t\"./insights-listing/Search\": [\n\t\t265,\n\t\t10\n\t],\n\t\"./insights-listing/Search.js\": [\n\t\t265,\n\t\t10\n\t],\n\t\"./insights/PredictiveSearch\": [\n\t\t261,\n\t\t16\n\t],\n\t\"./insights/PredictiveSearch.js\": [\n\t\t261,\n\t\t16\n\t],\n\t\"./insights/Search\": [\n\t\t262,\n\t\t9\n\t],\n\t\"./insights/Search.js\": [\n\t\t262,\n\t\t9\n\t],\n\t\"./newslisting/PredictiveSearch\": [\n\t\t266,\n\t\t38\n\t],\n\t\"./newslisting/PredictiveSearch.js\": [\n\t\t266,\n\t\t38\n\t],\n\t\"./newslisting/Search\": [\n\t\t267,\n\t\t8\n\t],\n\t\"./newslisting/Search.js\": [\n\t\t267,\n\t\t8\n\t],\n\t\"./newsroom/PredictiveSearch\": [\n\t\t268,\n\t\t15\n\t],\n\t\"./newsroom/PredictiveSearch.js\": [\n\t\t268,\n\t\t15\n\t],\n\t\"./people/BioMessage\": [\n\t\t216,\n\t\t37\n\t],\n\t\"./people/BioMessage.js\": [\n\t\t216,\n\t\t37\n\t],\n\t\"./people/PeopleHeader\": [\n\t\t269,\n\t\t14\n\t],\n\t\"./people/PeopleHeader.js\": [\n\t\t269,\n\t\t14\n\t],\n\t\"./people/PredictiveSearch\": [\n\t\t270,\n\t\t3\n\t],\n\t\"./people/PredictiveSearch.js\": [\n\t\t270,\n\t\t3\n\t],\n\t\"./people/Search\": [\n\t\t271,\n\t\t7\n\t],\n\t\"./people/Search.js\": [\n\t\t271,\n\t\t7\n\t],\n\t\"./search-listing/PredictiveSearch\": [\n\t\t274,\n\t\t36\n\t],\n\t\"./search-listing/PredictiveSearch.js\": [\n\t\t274,\n\t\t36\n\t],\n\t\"./search-listing/Search\": [\n\t\t275,\n\t\t6\n\t],\n\t\"./search-listing/Search.js\": [\n\t\t275,\n\t\t6\n\t],\n\t\"./search/PredictiveSearch\": [\n\t\t272,\n\t\t35\n\t],\n\t\"./search/PredictiveSearch.js\": [\n\t\t272,\n\t\t35\n\t],\n\t\"./search/Search\": [\n\t\t273,\n\t\t28\n\t],\n\t\"./search/Search.js\": [\n\t\t273,\n\t\t28\n\t],\n\t\"./solution/FeaturedLinksRow\": [\n\t\t276,\n\t\t13\n\t],\n\t\"./solution/FeaturedLinksRow.js\": [\n\t\t276,\n\t\t13\n\t],\n\t\"./solution/GeographicReach\": [\n\t\t277,\n\t\t34\n\t],\n\t\"./solution/GeographicReach.js\": [\n\t\t277,\n\t\t34\n\t],\n\t\"./solution/InsightsRow\": [\n\t\t278,\n\t\t12\n\t],\n\t\"./solution/InsightsRow.js\": [\n\t\t278,\n\t\t12\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tvar ids = map[req];\n\tif(!ids)\n\t\treturn Promise.reject(new Error(\"Cannot find module '\" + req + \"'.\"));\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(ids[0]);\n\t});\n};\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 176;\nmodule.exports = webpackAsyncContext;\n\n/***/ }),\n\n/***/ 205:\n/***/ (function(module, exports) {\n\nmodule.exports = \" <% if(WorkPosition !== null && WorkPosition !== \\\"\\\") { %>
    <% } else { %>
    <% }; %>
    \";\n\n/***/ }),\n\n/***/ 214:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
  • \\\" data-predictive-search-subtype=\\\"<%= Subtype %>\\\" <% if(ViewAllType) { %> data-predictive-view-all-type=\\\"<%= ViewAllType %>\\\" <% } %> >

    \\\"> <%= GroupName %> <% if(ViewAll) { %> View All <% } %>

  • \";\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(280);\nmodule.exports = __webpack_require__(482);\n\n\n/***/ }),\n\n/***/ 33:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(jQuery, $) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar domTree = new WeakMap();\nvar configuration = new WeakMap();\n\n/**\n * Component is a class that should be extended for every component that's being made. It\n * is a helper class to keep the code uniform.\n *\n * __PLEASE NOTE__: This is only to be extended, not instantiated.\n *\n * @example\n * import Component from 'component';\n *\n * class Foo extends Component {\n * construction(el, config){\n * super(el, config);\n * }\n *\n * setupDefaults(){\n * this.dom = {\n * // ...jquery elements go here\n * }\n * }\n *\n * addListeners(){\n * // ...listeners go here\n * }\n * }\n *\n *\n * // Create a new Foo component with some configuration\n * new Foo('.foo', {\n * name: 'Foo'\n * })\n */\n\nvar Component = function () {\n /**\n * Component constructor\n *\n * @param {string|Object} el - Main DOM element, you can pass a string such as `'.foo'` __or__ a jQuery object such as `$('.foo')`\n * @param {Object} [config={ }] - Additional component configuration\n */\n function Component(el) {\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Component);\n\n if (typeof el === 'undefined') {\n throw new Error('You must provide an element as a String type or a jQuery object type');\n }\n\n /**\n * Main class element, this will be a jQuery instance\n *\n * @type {Object}\n */\n this.$el = el instanceof jQuery ? el : $(el);\n\n if (this.$el.length === 0) return;\n\n domTree.set(this, {});\n configuration.set(this, config);\n\n if (this.config.hasOwnProperty('dom')) {\n this.dom = this.config.dom;\n }\n\n this.setupDefaults();\n this.addListeners();\n }\n\n /**\n * This method is used for override;\n * It's called directly after the element and configuration have been set up\n */\n\n\n _createClass(Component, [{\n key: 'setupDefaults',\n value: function setupDefaults() {}\n\n /**\n * This method is used for override;\n * It's called directly after `setupDefaults()`, so everything is ready and set up at this point.\n */\n\n }, {\n key: 'addListeners',\n value: function addListeners() {}\n\n /**\n * Get component configuration\n *\n * @example\n * this.config\n *\n * @type {Object}\n */\n\n }, {\n key: 'config',\n get: function get() {\n return configuration.get(this);\n }\n\n /**\n * Get DOM object\n *\n * @example\n * this.dom\n *\n * @type {Object}\n */\n\n }, {\n key: 'dom',\n get: function get() {\n return domTree.get(this);\n }\n\n /**\n * Set DOM object\n *\n * @example\n * this.dom = {\n * $foo: this.$el.find('.foo')\n * };\n *\n * @type {Object}\n */\n ,\n set: function set(elements) {\n elements = _extends({}, this.dom, elements);\n\n domTree.set(this, elements);\n }\n }]);\n\n return Component;\n}();\n\nexports.default = Component;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10), __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 482:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nvar _bootstrap = __webpack_require__(483);\n\nvar _bootstrap2 = _interopRequireDefault(_bootstrap);\n\nvar _constants = __webpack_require__(92);\n\nvar _global = __webpack_require__(64);\n\nvar _global2 = _interopRequireDefault(_global);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n$(function () {\n // Globals\n ////////////////\n (0, _global2.default)();\n $('.wh-insights-slider-item__title').dotdotdot({\n watch: 'window'\n });\n\n $('.wh-recent-news-item__title').dotdotdot({\n watch: 'window',\n height: 100\n });\n\n // On demand\n ////////////////\n (0, _bootstrap2.default)('global/SectionNav', '.wh-section-nav').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('people/PeopleHeader', '.wh-people-header').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component(el);\n });\n\n (0, _bootstrap2.default)('RecognitionListing', '.wh-recognition-details').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('solution/InsightsRow', '.wh-insights-row').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n if (window.matchMedia('(min-width: 1100px)').matches) return;\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('solution/FeaturedLinksRow', '.wh-featured-links-row').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n if (window.matchMedia('(min-width: 1100px)').matches) return;\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('ExperienceListing', '.wh-experience-listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('InsightsListing', '.wh-insights-listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target, {\n template: {\n item: __webpack_require__(604),\n tab: __webpack_require__(605)\n },\n endpoint: {\n getInsightsListing: _constants.ENDPOINT.getInsightsListing,\n getInsightsListingVisibility: _constants.ENDPOINT.getInsightsListingVisibility\n },\n pagesize: 3\n });\n });\n });\n\n (0, _bootstrap2.default)('Accordion', '.wh-accordion').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('event-listing/SubscribeCallout', '.wh-subscribe-callout').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('InsightsSlider', '.wh-insights-slider').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('global/StickyHeader', '.wh-sticky-header').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target, {\n progressBarContent: '.wh-scroll-progress__content',\n endpoint: _constants.ENDPOINT.getPdfPage\n });\n });\n });\n\n (0, _bootstrap2.default)('ReadMore', '.wh-content-readmore').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('solution/GeographicReach', '.wh-geographic-reach').then(function (data) {\n if (!data) return;\n if (window.matchMedia('(max-width: 767px)').matches) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('article/ArticleBrief', '.wh-article-brief').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('article/ArticleSeeMore', '.wh-article-body--seemore').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('global/TwoColumns', '.row--cols2').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('Statistics', '.wh-statistics').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)(['people/Search', 'people/PredictiveSearch'], '.wh-people-search').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: __webpack_require__(606),\n predictiveEndpoint: _constants.ENDPOINT.getBioKeywordSearch,\n endpoint: _constants.ENDPOINT.getPeopleSearchResults,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)(['insights/Search', 'insights/PredictiveSearch'], '.wh-insights-search').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: {\n all: __webpack_require__(89),\n blog: __webpack_require__(607)\n },\n endpoint: _constants.ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: _constants.ENDPOINT.getInsightsPredictive,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)(['insights/Search', 'newsroom/PredictiveSearch'], '.wh-new-search--newsroom').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: __webpack_require__(205),\n endpoint: _constants.ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: _constants.ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)(['newslisting/Search', 'newslisting/PredictiveSearch'], '.wh-new-search--listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: {\n all: __webpack_require__(89)\n\n },\n endpoint: _constants.ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: _constants.ENDPOINT.getInsightsPredictive,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)(['search-listing/Search', 'search-listing/PredictiveSearch'], '.wh-new-search-listing--listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: {\n all: __webpack_require__(608)\n\n },\n endpoint: _constants.ENDPOINT.getSearchResults,\n predictiveEndpoint: _constants.ENDPOINT.getKeywordSearch,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)('event/EventVideoPlayer', '.event-video-player').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)(['insights-listing/Search', 'insights-listing/NewPredictiveSearch'], '.wh-new-insights-search--listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: {\n all: __webpack_require__(89)\n },\n endpoint: _constants.ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: _constants.ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)(['insights-events/PredictiveSearch'], '.wh-insight-events-search').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: __webpack_require__(89),\n predictiveEventsEndpoint: _constants.ENDPOINT.getEventsPredictive,\n predictiveInsightsEndpoint: _constants.ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)(['event-listing/Search', 'event-listing/PredictiveSearch'], '.wh-new-events-search--listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: {\n all: __webpack_require__(609)\n },\n endpoint: _constants.ENDPOINT.getEventsListing,\n predictiveEndpoint: _constants.ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)(['search/Search', 'search/PredictiveSearch'], '.wh-global-search').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n template: __webpack_require__(205),\n endpoint: _constants.ENDPOINT.getSearchResults,\n tabsEndpoint: _constants.ENDPOINT.getSearchResultsTabs,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n (0, _bootstrap2.default)('about/AboutOverviewNav', '.wh-about-overview-nav__select').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('ShowcaseCarousel', '.wh-showcase-carousel').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)(['HomepageHero', 'global/PredictiveSearch'], '.wh-home-page-hero').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n new component[0](el, {\n PredictiveSearch: component[1],\n interval: 7000\n });\n });\n\n (0, _bootstrap2.default)('HomepageFeaturedContent', '.homepage-featured-content').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('article/ArticleFootnotes', '.wh-article-body').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('careers/FeaturedContentCarousel', '.featured-content-carousel').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('book/ReviewsTestimonials', '.wh-reviews-testimonials').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('book/Author', '.wh-author__content').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('global/ShareThis', '.wh-sticky-header-sharethis').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('global/DownloadButton', '.wh-download-button').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('global/ShareComponent', '.share-component').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('global/BackToTop', '.wh-back-to-top').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('about/VideoGrid', '.wh-video-grid').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('BlogListing', '.wh-blog-listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target, {\n template: __webpack_require__(610),\n endpoint: _constants.ENDPOINT.getBlogListing,\n pagesize: 18\n });\n });\n });\n\n (0, _bootstrap2.default)('careers/JobListing', '.wh-job-listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target, {\n template: __webpack_require__(611),\n endpoint: _constants.ENDPOINT.getJobListing,\n pagesize: 18\n });\n });\n });\n\n (0, _bootstrap2.default)('ContactsListing', '.wh-contact-us-listing').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target.closest('[role=\"main\"]'), {\n template: __webpack_require__(612),\n endpoint: _constants.ENDPOINT.getContactListing\n });\n });\n });\n\n (0, _bootstrap2.default)('NoteworthyContent', '.wh-noteworthy-content').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('NewsArticle', '.wh-article-hero').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('BioOverview', '.wh-bio-overview').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('TeamSpotlightGrid', '.team-spotlight-grid').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('FeaturedSolutionSlider', '.featured-solution').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('TestimonialCarousel', '.testimonial-carousel').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('CaseStudySpotlight', '.case-study').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('ColumnCareersRow', '.column-careers-row').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('HomepageMasthead', '.homepage-masthead').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n\n (0, _bootstrap2.default)('TrendingTopicsCarousel', '.trending-topics-carousel').then(function (data) {\n if (!data) return;\n var component = data.component,\n el = data.el;\n\n\n (0, _bootstrap.render)(el, function ($target) {\n new component($target);\n });\n });\n});\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 483:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.render = render;\n\nfunction _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step(\"next\", value); }, function (err) { step(\"throw\", err); }); } } return step(\"next\"); }); }; }\n\n/**\n * Imports a chunked component async\n *\n * @param name - Name of the Javascript file\n * @param el - Name of the element\n * @returns {Promise.<*>}\n */\nexports.default = function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(name) {\n var el = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var imports;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!el) {\n _context.next = 5;\n break;\n }\n\n if (exists(el)) {\n _context.next = 3;\n break;\n }\n\n return _context.abrupt('return');\n\n case 3:\n _context.next = 6;\n break;\n\n case 5:\n throw new Error('You must pass an element in.');\n\n case 6:\n if (!Array.isArray(name)) {\n _context.next = 12;\n break;\n }\n\n imports = [];\n\n\n name.forEach(function (v) {\n imports.push(__webpack_require__(176)(\"./\" + v));\n });\n\n _context.next = 11;\n return Promise.all(imports).then(function (resp) {\n var component = [];\n\n resp.forEach(function (v) {\n component.push(v.default);\n });\n\n return {\n component: component,\n el: el\n };\n }).catch(function (err) {\n Promise.reject(new Error('There was an error loading your component - ' + err));\n });\n\n case 11:\n return _context.abrupt('return', _context.sent);\n\n case 12:\n _context.next = 14;\n return __webpack_require__(176)(\"./\" + name).then(function (component) {\n return {\n component: component.default,\n el: el\n };\n }).catch(function (err) {\n Promise.reject(new Error('There was an error loading your component - ' + err));\n });\n\n case 14:\n return _context.abrupt('return', _context.sent);\n\n case 15:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function importComponent(_x2) {\n return _ref.apply(this, arguments);\n }\n\n return importComponent;\n}();\n\n/**\n * Check if an element exists in the DOM tree\n *\n * @param el - DOM element\n * @returns {boolean}\n */\n\n\nvar exists = exports.exists = function exists(el) {\n return document.querySelector(el) !== null;\n};\n\n/**\n * Renders component with callback\n *\n * @param el - Name of the element\n * @param cb - Callback\n */\nfunction render(el, cb) {\n var elements = document.querySelectorAll(el);\n var length = elements.length;\n\n for (var i = 0; i < length; ++i) {\n cb($(elements[i]));\n }\n}\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 600:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.initTooltips = undefined;\n\n__webpack_require__(601);\n\nvar initTooltips = exports.initTooltips = function initTooltips() {\n $('.wh-related-solutions-links__link a').tooltipster({\n theme: 'tooltipster-solutions',\n arrow: false\n });\n\n $('.wh-solution-listing-item a').tooltipster({\n theme: 'tooltipster-solutions-list',\n arrow: false\n });\n};\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 602:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
    <% if (data.hasVimeoVideo) { %> <% } else { %> <% } %>
    \";\n\n/***/ }),\n\n/***/ 603:\n/***/ (function(module, exports) {\n\nmodule.exports = \"

    <%= data[0].Title %>

    <%= data[0].Content %>
    View Excerpts
    \";\n\n/***/ }),\n\n/***/ 604:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
    <%= Date %>

    <% if (Link && Link.Src != \\\"\\\") { %> \\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <% if (Description) { %>
    <%= Description %>
    <% } %>
    \";\n\n/***/ }),\n\n/***/ 605:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
  • \\\" class=wh-insights-listing-filters__item-link data-search-type=\\\"<%=Type%>\\\" data-search-type-uuid=\\\"<%=ContentTypeId%>\\\" data-search-subtype-uuid=\\\"<%=ContentSubTypeIds%>\\\"> <%=TabDisplayName%>
  • \";\n\n/***/ }),\n\n/***/ 606:\n/***/ (function(module, exports) {\n\nmodule.exports = \"<% const personClass = Link && ProfileImage ? '' : 'no-image' %>
  • \\\">
    <% if(Link && ProfileImage) { %> \\\">\\\" alt=\\\"<%= FullName %>\\\"/> <% }; %>

    \\\"><%= FullName %>

    <% if(Level) { %>
    <%= Level %>
    <% }; %> <% if(Email) { %> \\\" class=wh-person__email><%= Email %><% }; %>
    <% if(Locations !== null && Locations.length > 0) { %>
    <% for (let i = 0; i < Locations.length; i++) { %> <% if(Locations[i].Location) { %> \\\" class=wh-person__location><%= Locations[i].Location %> <% }; %> <% if(Locations[i].Telephone) { %> \\\" class=wh-person__telephone><%= Locations[i].Telephone %> <% }; %> <% }; %>
    <% }; %>
  • \";\n\n/***/ }),\n\n/***/ 607:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
    \\\">
    )\\\">
    \\\" class=wh-insights-search-results-item__content>

    <%= Title %>

    <%= Link.Label %>
    \";\n\n/***/ }),\n\n/***/ 608:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
    \\\"> <% if(Image) { %>
    )\\\">
    <% } %>
      <% if(Type !== null && Type.Title !== \\\"\\\") { %>
    • <%= Type.Title %>
    • <% }; %> <% if(SubType && SubType.Title) { %>
    • <%= SubType.Title %>
    • <% }; %>
    <%= PublishDate %>

    <% if(Link) { %> \\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Description %>
    \";\n\n/***/ }),\n\n/***/ 609:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
    \\\"> <% if(Image) { %>
    )\\\">
    <% } %>
      <% if(SubTypes !== null && SubTypes.length > 0) { %> <% for (let i = 0; i < SubTypes.length; i++) { %>
    • <%= SubTypes[i].Title %>
    • <% }; %> <% }; %>
    <%= Date %>

    <% if(Link.Src) { %> \\\" title=\\\"<%= Link.Alt %>\\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Description %>
    <% if(PDF.Link && PDF.Title) { %> \\\" class=wh-insights-search-results-item__pdf><%= PDF.Title %> <% } %>
    \";\n\n/***/ }),\n\n/***/ 610:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
  • \\\">

    <%= data.Title %>

    <%= data.Date %>
    <%= data.Description %>
  • \";\n\n/***/ }),\n\n/***/ 611:\n/***/ (function(module, exports) {\n\nmodule.exports = \"

    <% if(Url) { %> \\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Teaser %>
    <%= Municipality %>
    \";\n\n/***/ }),\n\n/***/ 612:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
    <% if(data.Title) { %>

    <%= data.Title %>

    <% }; %>
    \";\n\n/***/ }),\n\n/***/ 64:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _helpers = __webpack_require__(139);\n\nvar _tooltips = __webpack_require__(600);\n\nvar _constants = __webpack_require__(92);\n\n__webpack_require__(212);\n\nvar _VideoModal = __webpack_require__(134);\n\nvar _VideoModal2 = _interopRequireDefault(_VideoModal);\n\nvar _ExcerptsModal = __webpack_require__(135);\n\nvar _ExcerptsModal2 = _interopRequireDefault(_ExcerptsModal);\n\nvar _EmailDisclaimerModal = __webpack_require__(132);\n\nvar _EmailDisclaimerModal2 = _interopRequireDefault(_EmailDisclaimerModal);\n\nvar _CookieUseDisclaimer = __webpack_require__(136);\n\nvar _CookieUseDisclaimer2 = _interopRequireDefault(_CookieUseDisclaimer);\n\nvar _Header = __webpack_require__(137);\n\nvar _Header2 = _interopRequireDefault(_Header);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction global() {\n // Inline SVGs\n (0, _helpers.initSVG)({\n el: 'img.svg',\n target: 'svg'\n });\n\n (0, _tooltips.initTooltips)();\n\n $('.wh-text-trim').each(function (index, element) {\n $(element).dotdotdot({\n watch: 'window'\n });\n });\n\n // Videos\n if ($('.wh-video-trigger').length) {\n new _VideoModal2.default($('.wh-video-trigger'), {\n template: __webpack_require__(602),\n autoPlay: true\n });\n }\n\n if ($('.wh-excerpts-trigger').length) {\n new _ExcerptsModal2.default($('.wh-excerpts-trigger'), {\n template: __webpack_require__(603),\n endpoint: _constants.ENDPOINT.getExcerpts\n });\n }\n\n // Email Disclaimer\n new _EmailDisclaimerModal2.default($('body'));\n\n // In the case of the right sticky rail there are 2 .col-30 in the page\n $('.col-30').each(function (index, element) {\n if ($(element).children().length === 0) {\n $(element).remove();\n } else {\n // Sticky Right Rail\n // In this case the .wh-sticky__wrapper and col-30--bottom' will always exists, so we check if\n // they don't have any children and if that's the case we remove the entire .col-30\n if ($(element).find('.wh-sticky__wrapper').length && $(element).find('.col-30--bottom')) {\n if ($(element).find('.wh-sticky__wrapper').children().length === 0 && $(element).find('.col-30--bottom').children().length === 0) {\n $(element).remove();\n }\n }\n }\n });\n\n new _Header2.default('.wh-header', {\n endpoint: _constants.ENDPOINT.getHeaderKeywordSearch,\n PredictiveSearch: __webpack_require__(138).default,\n triggerElement: $('.wh-home-page-hero__logo')\n });\n\n new _CookieUseDisclaimer2.default('.wh-cookie-use-disclaimer', {\n endpoint: _constants.ENDPOINT.setUseDisclaimerCookie\n });\n\n //Cookie Control\n if (window.localStorage.getItem('whCCDate') === null) {\n window.localStorage.setItem('whCCDate', new Date().getTime());\n }\n\n if (window.ccUpdatedDate && window.localStorage.getItem('whCCDate') && window.CookieControl) {\n var ccUpdate = new Date(window.ccUpdatedDate);\n var ccSeenDate = new Date(window.localStorage.getItem('whCCDate') * 1);\n if (ccUpdate.getTime() > ccSeenDate.getTime()) {\n window.CookieControl.open();\n window.localStorage.setItem('whCCDate', new Date(window.ccUpdatedDate).getTime());\n }\n }\n}\n\nexports.default = global;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(10)))\n\n/***/ }),\n\n/***/ 89:\n/***/ (function(module, exports) {\n\nmodule.exports = \"
    \\\"> <% if(Image) { %>
    )\\\">
    <% } %>
      <% if(SubTypes !== null && SubTypes.length > 0) { %> <% for (let i = 0; i < SubTypes.length; i++) { %>
    • <%= SubTypes[i].Title %>
    • <% }; %> <% }; %>
    <%= Date %>

    <% if(Link.Src) { %> \\\" title=\\\"<%= Link.Alt %>\\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Description %>
    <% if(PDF.Link && PDF.Title) { %> \\\" class=wh-insights-search-results-item__pdf><%= PDF.Title %> <% } %>
    \";\n\n/***/ }),\n\n/***/ 92:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar API_PREFIX = '/api/sitecore';\n\n//-- Endpoints\nvar ENDPOINT = exports.ENDPOINT = {\n //-- GET\n getKeywordSearch: API_PREFIX + '/mainsearch/predictive',\n getSearchResults: API_PREFIX + '/mainsearch/list/',\n getSearchResultsTabs: API_PREFIX + '/mainsearch/showsearchresultstab/',\n getBioKeywordSearch: API_PREFIX + '/bio/predictivesearch/',\n getPeopleSearchResults: API_PREFIX + '/bio/people/',\n getInsightsSearchResults: API_PREFIX + '/insights/list/',\n getInsightsPredictive: API_PREFIX + '/insights/predictive/',\n getEventsPredictive: API_PREFIX + '/insights/predictive/',\n getEventsListing: API_PREFIX + '/insights/list/',\n getNewsPredictive: API_PREFIX + '/insights/predictive/',\n getNewsListing: API_PREFIX + '/insights/list/',\n getInsightsListing: API_PREFIX + '/insights/list/',\n getInsightsListingVisibility: API_PREFIX + '/insightlisting/insightlistingtabsvisibility/',\n getExcerpts: API_PREFIX + '/book/getexcerpts/',\n getJobListing: API_PREFIX + '/job/joblisting/',\n getBlogListing: API_PREFIX + '/blogs/bloglisting',\n getContactListing: API_PREFIX + '/contactlisting/',\n getPdfPage: API_PREFIX + '/getpdfpage/',\n\n //-- POST\n setUseDisclaimerCookie: API_PREFIX + '/cookie/setdisclaimercookie/'\n};\n//-- DONT CHANGE THE ORDER OF THIS\nvar SEARCH_GROUPS = exports.SEARCH_GROUPS = ['featured', 'people', 'solution', 'insight', 'news', 'event', 'about', 'career', 'blog'];\nvar EVENTS_SEARCH_GROUPS = exports.EVENTS_SEARCH_GROUPS = ['firm-event', 'speaking-engagement', 'sponsorship'];\nvar NEWS_SEARCH_GROUPS = exports.NEWS_SEARCH_GROUPS = ['attorney-news', 'client-news', 'firm-news', 'community-service-news', 'recognition'];\nvar INSIGHTS_SEARCH_GROUPS = exports.INSIGHTS_SEARCH_GROUPS = ['client-alert', 'publication', 'blog', 'blog-landing', 'video', 'podcast'];\nvar GA_SEARCH_EVENTS = exports.GA_SEARCH_EVENTS = {\n Success: 'Search_success',\n Fail: 'Search_Fail',\n GeographicReach: 'Geographic_reach'\n};\n\n/***/ })\n\n},[279]);\n\n\n// WEBPACK FOOTER //\n// main.bundle.js","import Component from 'component';\nimport VanillaModal from 'vanilla-modal';\n\nclass EmailDisclaimerModal extends Component{\n constructor(el, config){\n super(el, config);\n this.modal = new VanillaModal();\n }\n\n setupDefaults() {\n this.dom = {\n modal: '#wh-email-disclaimer-modal',\n $modalContainer: $('.modal'),\n $acceptBtn: $('.wh-email-disclaimer-modal__accept'),\n $cancelBtn: $('.wh-email-disclaimer-modal__cancel')\n };\n }\n\n addListeners() {\n this.$el.on('click', 'a[href^=\"mailto:\"]', ::this.onLinkClick);\n this.dom.$acceptBtn.on('click', ::this.onMailTo);\n this.dom.$cancelBtn.on('click', ::this.onCancel);\n }\n\n onLinkClick(e) {\n const $target = $(e.currentTarget);\n // Do nothing if it's the the accept button on the modal\n if ($target.hasClass('wh-email-disclaimer-modal__accept')) {\n return;\n }\n\n const email = $target.attr('href').toLowerCase();\n if (email.endsWith('wilmerhale.com')) {\n e.preventDefault();\n this.dom.$acceptBtn.attr('href', email);\n\n if (!email) return;\n\n this.modal.open(this.dom.modal);\n }\n }\n\n onMailTo() {\n this.modal.close();\n }\n\n onCancel(e) {\n e.preventDefault();\n this.modal.close();\n }\n}\n\n\nexport default EmailDisclaimerModal;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/EmailDisclaimerModal.js","import Component from 'component';\nimport VanillaModal from 'vanilla-modal';\nimport _template from 'lodash/template';\n\nclass VideoModal extends Component{\n constructor(el, config){\n super(el, config);\n\n this.modal = new VanillaModal({\n onBeforeClose: () => this.removeModalContent()\n });\n }\n\n setupDefaults() {\n this.dom = {\n $body: $('body'),\n $iframe: $('#wh-video-modal iframe'),\n modal: '#wh-video-modal'\n };\n\n }\n\n addListeners() {\n this.dom.$body.on('click', '.wh-video-trigger', this.onVideoTriggered.bind(this));\n }\n\n onVideoTriggered(e) {\n e.preventDefault();\n const $target = $(e.currentTarget);\n const videoId = $target.data('video-id');\n const accountId = $target.data('account-id');\n const playerId = $target.data('player-id');\n const hasVimeoVideo = $target.data('has-vimeo-video');\n const vimeoVideoUrl = $target.data('vimeo-video-url');\n const vimeoVideoThumbnaillUrl = $target.data('vimeo-video-thumbnail-url');\n\n if (!videoId) return;\n\n this.openModal({\n videoId,\n accountId,\n playerId,\n hasVimeoVideo,\n vimeoVideoUrl,\n vimeoVideoThumbnaillUrl\n });\n }\n\n openModal(data) {\n const tpl = _template(this.config.template)({\n data\n });\n\n this.dom.$body.append(tpl);\n\n this.modal.open(this.dom.modal);\n this.dom.$body.addClass('video-modal');\n\n // Modal Container\n const modalContainer = this.modal.dom.modal\n const focusableElements = modalContainer.querySelectorAll('button, [tabindex]:not([tabindex=\"-1\"])');\n const firstFocusableElement = focusableElements[0];\n\n firstFocusableElement.focus();\n }\n\n removeModalContent() {\n this.dom.$body.removeClass('video-modal');\n $(this.dom.modal).remove();\n }\n}\n\n\nexport default VideoModal;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/VideoModal.js","import Component from 'component';\nimport VanillaModal from 'vanilla-modal';\nimport _template from 'lodash/template';\nimport _forEach from 'lodash/forEach';\nimport PerfectScrollbar from 'perfect-scrollbar';\n\nclass ExcerptsModal extends Component{\n constructor(el, config){\n super(el, config);\n\n this.modal = new VanillaModal({\n onBeforeOpen: () => this.onOpenModal(),\n onBeforeClose: () => this.removeModalContent()\n });\n }\n\n setupDefaults() {\n this.dom = {\n $body: $('body'),\n modal: '.wh-excerpts-modal'\n };\n\n this.bodyYPosition = 0;\n }\n\n addListeners() {\n this.dom.$body.on('click', '.wh-excerpts-trigger', ::this.openModal);\n }\n\n openModal(e) {\n e.preventDefault();\n\n this.onLoadData({\n id: $(e.currentTarget).data('book-id')\n });\n }\n\n onOpenModal() {\n this.bodyYPosition = $(window).scrollTop() * -1;\n $('body').css('top', `${this.bodyYPosition}px`);\n }\n\n removeModalContent() {\n this.scrollbarContent.destroy();\n this.scrollbarList.destroy();\n $(this.dom.modal).remove();\n $(window).scrollTop(this.bodyYPosition);\n }\n\n goToMenu(e) {\n e.preventDefault();\n this.dom.$modalContent.removeClass('view-content');\n }\n\n goToContent(e) {\n e.preventDefault();\n const $target = $(e.currentTarget);\n const itemKey = $target.data('excerpt-key');\n\n this.dom.$menuItem.removeClass('active');\n $target.parent().addClass('active');\n this.dom.$modalContent.addClass('view-content');\n\n this.dom.$content.html(\n `

    ${this.data[itemKey].Title}

    ${this.data[itemKey].Content}`\n )\n }\n\n onLoadData(params){\n this.renderData(params)\n .catch(err => {\n console.error('There was an issue getting your results', err);\n });\n }\n\n async renderData(params){\n this.data = await this.getData(params);\n const tpl = _template(this.config.template, { imports: { _forEach } })({\n data: this.data\n });\n\n this.dom.$body.append(tpl);\n\n const $modalContent = $('.wh-excerpts-modal__content');\n\n this.dom = {\n ...this.dom,\n $modalContent,\n $backBtn: $modalContent.find('.wh-excerpts-modal__btn-back'),\n $menuItem: $modalContent.find('.wh-excerpts-modal-menu__item'),\n $content: $modalContent.find('.wh-excerpts-modal__main')\n };\n\n this.dom.$backBtn.on('click', ::this.goToMenu);\n this.dom.$modalContent.on('click', '.wh-excerpts-modal-menu__item a', ::this.goToContent);\n\n this.scrollbarContent = new PerfectScrollbar('.wh-excerpts-modal__main');\n this.scrollbarList = new PerfectScrollbar('.wh-excerpts-modal-menu');\n\n this.modal.open('#wh-excerpts-modal');\n }\n\n getData(params){\n return $.getJSON(\n this.config.endpoint,\n {\n ...params\n }\n );\n }\n}\n\n\nexport default ExcerptsModal;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/book/ExcerptsModal.js","import Component from 'component';\n\nclass CookieUseDisclaimer extends Component{\n constructor(el, config){\n super(el, config);\n }\n\n setupDefaults(){\n this.dom = {\n $closeBtn: this.$el.find('.wh-cookie-use-disclaimer__btn-close')\n };\n\n this.cssClasses = {\n close: 'close'\n }\n }\n\n addListeners(){\n this.dom.$closeBtn.on('click touch', ::this.onClose);\n }\n\n onClose(e) {\n e.preventDefault();\n\n this.$el.addClass(this.cssClasses.close);\n\n $.post(this.config.endpoint, {\n Guid: this.$el.data('guid')\n });\n }\n}\n\nexport default CookieUseDisclaimer;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/global/CookieUseDisclaimer.js","import Component from 'component';\nimport 'waypoints/jquery.waypoints';\nimport { Expo, TweenLite } from 'gsap';\nimport 'selectric';\nimport 'selectric/public/plugins/jquery.selectric.placeholder';\nimport { addLabelsToSelectric } from '../../helpers';\n\nclass Header extends Component {\n constructor(el, config) {\n super(el, config);\n\n this.init();\n }\n\n setupDefaults() {\n this.dom = {\n $headerNav: this.$el.find('.wh-header-navigation'),\n $headerNavBar: this.$el.find('.wh-header-navigation__wrapper'),\n $searchBtn: this.$el.find('.wh-header-navigation__search-icon'),\n $searchInput: this.$el.find('.wh-search-box__field'),\n $navLinks: this.$el.find('.wh-header-navigation__links'),\n $searchBox: this.$el.find('.wh-search-box'),\n $predictiveResults: this.$el.find('.wh-predictive-search'),\n $burgerBtn: this.$el.find('.wh-header-navigation__burger'),\n $document: $(document),\n $body: $('body'),\n $utilityNav: this.$el.find('.wh-utility-navigation'),\n $utilityNavItem: this.$el.find('.wh-utility-navigation-item'),\n $utilityNavItemLink: this.$el.find('.wh-utility-navigation-item__link'),\n $utilityNavItemMobile: this.$el.find(\n '.wh-header-navigation__utility-select'\n ),\n $primaryNavItems: this.$el.find('.header__primary-nav-item'),\n $headerRegionLink: this.$el.find('.header__region-link'),\n $logo: this.$el.find('.wh-header-navigation__logo--screen'),\n $logoWrapper: this.$el.find('.wh-header-navigation__logo-wrapper')\n };\n\n this.classes = {\n searchOn: 'search-on',\n navOpen: 'nav-open',\n sticky: 'wh-header--is-sticky',\n stickyVisible: 'wh-header--is-sticky-visible',\n utilityOpen: 'utility-open'\n };\n }\n\n addListeners() {\n this.dom.$searchBtn.on('click', ::this.onToggleSearch);\n this.dom.$document.on('click', ::this.onClickOutside);\n this.dom.$burgerBtn.on('click', ::this.onToggleNav);\n this.dom.$utilityNavItemLink.on('click', ::this.onToggleUtilityNavDropdown);\n this.dom.$utilityNavItemMobile.on(\n 'change',\n ::this.onUtilityNavMobileChange\n );\n this.dom.$utilityNavItemMobile.on('blur', ::this.onUtilityNavMobileClose);\n this.dom.$headerRegionLink.on('click', ::this.handleHeaderRegionLink);\n this.dom.$primaryNavItems.on('click', ::this.handlePrimaryNavLinkClick);\n }\n\n init() {\n new this.config.PredictiveSearch(this.$el, {\n endpoint: this.config.endpoint,\n itemsLimit: 5\n });\n if (\n this.$el.hasClass(this.classes.sticky) &&\n !this.$el.hasClass(this.classes.stickyVisible)\n ) {\n this.config.triggerElement.waypoint(direction => {\n if (direction === 'down') {\n this.dom.$headerNav.css('top', 0);\n } else {\n if (!$('body').hasClass('wh-search-box-focused')) {\n this.dom.$headerNav.css('top', -150);\n this.dom.$utilityNavItem.removeClass(this.classes.utilityOpen);\n }\n }\n });\n }\n this.setSelectric();\n this.edgeAppleMobileDeviceSetup();\n return this;\n }\n\n edgeAppleMobileDeviceSetup() {\n const isEdgeOnAppleMobile =\n /EdgiOS/i.test(navigator.userAgent) &&\n /Mobile/i.test(navigator.userAgent);\n\n if (isEdgeOnAppleMobile) {\n const whiteLogoSrc = this.dom.$logoWrapper.attr('data-edge-ios-image');\n const normalLogoSrc = this.dom.$logo.attr('src');\n const imageClone = this.dom.$logo.clone();\n\n this.dom.$logoWrapper.empty();\n\n this.dom.$logoWrapper.append(\n ``\n );\n\n this.dom.$logoWrapper.append(\n ``\n );\n\n this.dom.$logoWrapper.append(imageClone);\n }\n }\n\n handleHeaderRegionLink(e) {\n const selectedOption = e.currentTarget.childNodes[1].href;\n window.location.href = selectedOption;\n }\n\n handlePrimaryNavLinkClick(e) {\n const { $primaryNavItems } = this.dom;\n const parent = e.currentTarget.closest('.header__primary-nav-item');\n const dataset = parent.dataset;\n if (!dataset.itemOpen) {\n if (parent.childNodes.length > 3) {\n e.preventDefault();\n $primaryNavItems\n .filter(items => items !== parent)\n .each(item =>\n $primaryNavItems[item].removeAttribute('data-item-open')\n );\n parent.dataset.itemOpen = 'true';\n }\n } else {\n e.preventDefault();\n parent.removeAttribute('data-item-open');\n }\n }\n\n setSelectric() {\n const isMobile =\n navigator.platform\n .toLowerCase()\n .match(/(iphone|ipod|ipad|android|arm)/) !== null\n ? true\n : false;\n this.dom.$utilityNavItemMobile.selectric({\n disableOnMobile: false,\n nativeOnMobile: isMobile\n });\n this.dom.$utilityNavItemMobile.selectricPlaceholder({});\n\n addLabelsToSelectric();\n }\n\n onToggleSearch(e) {\n e.preventDefault();\n this.dom.$body.toggleClass(this.classes.navOpen);\n this.dom.$utilityNavItem.removeClass(this.classes.utilityOpen);\n\n if ($(window).width() > 1023) {\n this.$el.toggleClass(this.classes.searchOn);\n }\n\n if (this.dom.$body.hasClass(this.classes.navOpen)) {\n this.dom.$searchInput.focus();\n }\n }\n\n onToggleNav(e) {\n e.preventDefault();\n this.dom.$body.toggleClass(this.classes.navOpen);\n }\n\n onClickOutside(e) {\n const { $primaryNavItems } = this.dom;\n if (this.dom.$primaryNavItems.has(e.target).length === 0) {\n $primaryNavItems.each(item =>\n $primaryNavItems[item].removeAttribute('data-item-open')\n );\n }\n\n if (\n this.dom.$body.hasClass(this.classes.navOpen) &&\n this.dom.$headerNavBar.has(e.target).length === 0 &&\n !this.dom.$searchBtn.is(\n $(e.target).parents('.wh-header-navigation__search-icon')\n )\n ) {\n this.dom.$body.removeClass(this.classes.navOpen);\n }\n\n if (\n !this.dom.$searchBox.is(e.target) &&\n this.dom.$searchBox.has(e.target).length === 0 &&\n !this.dom.$searchBtn.is(\n $(e.target).parents('.wh-header-navigation__search-icon')\n ) &&\n !this.dom.$utilityNavItem.is(e.target) &&\n this.dom.$utilityNavItem.has(e.target).length === 0\n ) {\n TweenLite.to(this.dom.$predictiveResults, 0.5, {\n height: 0,\n ease: Expo.easeOut,\n onComplete: () => {\n this.dom.$predictiveResults.removeClass('expanded');\n }\n });\n this.$el.removeClass(this.classes.searchOn);\n this.dom.$utilityNavItem.removeClass(this.classes.utilityOpen);\n }\n }\n\n onToggleUtilityNavDropdown(e) {\n e.preventDefault();\n const $target = $(e.currentTarget);\n const $parent = $($target.parents('.wh-utility-navigation-item')[0]);\n if ($parent.hasClass(this.classes.utilityOpen)) {\n $parent.removeClass(this.classes.utilityOpen);\n return;\n }\n\n this.dom.$utilityNavItem.removeClass(this.classes.utilityOpen);\n $parent.addClass(this.classes.utilityOpen);\n }\n\n onUtilityNavMobileClose(e) {\n if (!this.$el.hasClass(this.classes.sticky)) {\n window.scrollTo(0, 0);\n }\n }\n\n onUtilityNavMobileChange(e) {\n const $target = $(e.currentTarget);\n const selectedOption = $target.val();\n window.location.href = selectedOption;\n }\n}\n\nexport default Header;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/global/Header.js","import Component from 'component';\nimport _debounce from 'lodash/debounce';\nimport _template from 'lodash/template';\nimport _remove from 'lodash/remove';\nimport _isEmpty from 'lodash/isEmpty';\nimport predictiveTmpl from 'templates/predictive-search-item';\nimport { ENDPOINT, SEARCH_GROUPS } from '../../constants';\nimport { Expo, TweenLite } from 'gsap';\n\nclass PredictiveSearch extends Component {\n constructor(el, config){\n super(el, config);\n }\n\n setupDefaults(){\n this.dom = {\n $container: this.$el,\n $serchBox: this.$el.find('.wh-search-box'),\n $input: this.$el.find('.wh-search-box__field'),\n $searchBtn: this.$el.find('.wh-search-box__button'),\n $results: this.$el.find('.wh-predictive-search')\n };\n\n this.cssClasses= {\n searchGroup: 'wh-predictive-search-group'\n };\n\n this.endpoint = (this.config.endpoint) ? this.config.endpoint : ENDPOINT.getKeywordSearch;\n this.currentRequest = [];\n }\n\n addListeners(){\n this.dom.$input.on('keyup input', _debounce(e => {\n this.onInputUp(e);\n }, 100));\n\n this.dom.$searchBtn.on('click touch', ::this.onSearch);\n this.$el.on('click touch', '.wh-predictive-search-group__title', ::this.onHeadingClick);\n }\n\n getResults(keyword, contenttype, requestIndex) {\n this.dom.$serchBox.addClass('loading');\n return $.ajax({\n url: this.endpoint,\n data: { keyword, contenttype, take: this.config.itemsLimit ? this.config.itemsLimit : undefined },\n beforeSend: () => {\n if (this.currentRequest[requestIndex] && this.currentRequest[requestIndex] !== null) {\n this.currentRequest[requestIndex].abort();\n }\n }\n });\n }\n\n async renderResults(value) {\n\n const data = await Promise.all([\n this.currentRequest[0] = this.getResults(value, SEARCH_GROUPS[0], 0),\n this.currentRequest[1] = this.getResults(value, SEARCH_GROUPS[1], 1),\n this.currentRequest[2] = this.getResults(value, SEARCH_GROUPS[2], 2),\n this.currentRequest[3] = this.getResults(value, SEARCH_GROUPS[3], 3),\n this.currentRequest[4] = this.getResults(value, SEARCH_GROUPS[4], 4),\n this.currentRequest[5] = this.getResults(value, SEARCH_GROUPS[5], 5),\n this.currentRequest[5] = this.getResults(value, SEARCH_GROUPS[6], 6),\n this.currentRequest[5] = this.getResults(value, SEARCH_GROUPS[7], 7),\n this.currentRequest[5] = this.getResults(value, SEARCH_GROUPS[8], 8)\n ]);\n\n _remove(data, n => _isEmpty(n));\n\n this.dom.$serchBox.removeClass('loading');\n this.$el.trigger('search:keyword', data);\n\n let items = '';\n\n if (data.length > 0) {\n data.forEach(item => {\n items += _template(predictiveTmpl)(item);\n });\n\n this.dom.$results.html(items);\n\n\n } else {\n const noResults = this.dom.$results.data('no-results-txt');\n const noResultsString = '
  • ' + noResults + '
  • ';\n\n this.dom.$results.find('li').remove();\n this.dom.$results.html(noResultsString);\n }\n\n this.dom.$results.removeClass('loading');\n\n if (!this.dom.$results.hasClass('expanded')) {\n this.dom.$results.addClass('expanded');\n TweenLite.set(this.dom.$results, { height: 'auto', ease:Expo.easeOut });\n TweenLite.from(this.dom.$results, 0.4, { height: 0, ease:Expo.easeInOut });\n }\n\n }\n\n destroyResults(){\n TweenLite.to(this.dom.$results, 0.5, { height: 0, ease:Expo.easeOut, onComplete: () => {\n this.dom.$results.removeClass('expanded');\n this.dom.$results.find('li').remove();\n } });\n }\n\n onInputUp(e) {\n const value = this.dom.$input.val().trim();\n\n if (value.length < 1){\n this.destroyResults();\n\n return;\n }\n\n if (value.length >= 1) {\n this.dom.$searchBtn.addClass('active');\n } else {\n this.dom.$searchBtn.removeClass('active');\n }\n\n if (e.which === 13) {\n this.destroyResults();\n window.open(`${this.dom.$serchBox.data('search-url')}?keyword=${encodeURIComponent(value)}`, '_self');\n return;\n }\n\n this.renderResults(value)\n .catch(err => {\n if (err.statusText !== 'abort') {\n console.error('There was an error getting your results', err);\n }\n });\n }\n\n onHeadingClick(e) {\n const $target = $(e.currentTarget);\n if ($target.hasClass('wh-predictive-search-group__title--false')) {\n return;\n }\n\n const $searchGroup = $target.parents(`.${this.cssClasses.searchGroup}`);\n const searchViewAllType = $searchGroup.data('predictive-view-all-type');\n let searchGroupLabel = $searchGroup.data('predictive-search-group');\n\n if (searchGroupLabel === 'Solutions' || searchGroupLabel === 'Locations' || searchGroupLabel === 'Careers') {\n searchGroupLabel = searchGroupLabel.substring(0, searchGroupLabel.length - 1);\n }\n\n const keyword = this.dom.$input.val().trim();\n window.open(\n `${this.dom.$serchBox.data('search-url')}?area=${searchViewAllType ? encodeURIComponent(searchViewAllType) : encodeURIComponent(searchGroupLabel)}&keyword=${encodeURIComponent(keyword)}`,\n '_self'\n );\n }\n\n onSearch(e){\n e.preventDefault();\n const keyword = this.dom.$input.val().trim();\n this.destroyResults();\n window.open(`${this.dom.$serchBox.data('search-url')}?keyword=${encodeURIComponent(keyword)}`, '_self');\n }\n}\n\nexport default PredictiveSearch;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/global/PredictiveSearch.js","import { TweenMax, Expo, Quint } from 'gsap';\nimport 'gsap/ScrollToPlugin';\n\n/**\n * Opens an element\n *\n * @param el - DOM element\n * @param speed - Speed of animation\n * @param ease - Ease function\n * @param onComplete - On complete callback\n */\nexport const open = (el, speed = 0.4, ease = 'easeOut', onComplete) => {\n TweenMax.set(el, { height: 'auto' });\n TweenMax.from(el, speed, { height: 0, ease: Expo[ease], onComplete });\n};\n\n/**\n * Closes an element\n *\n * @param el - DOM element\n * @param speed - Speed of animation\n * @param ease - Ease function\n * @param onComplete - On complete callback\n */\nexport const close = (el, speed = 0.4, ease = 'easeOut', onComplete) => {\n TweenMax.to(el, speed, { height: 0, ease: Expo[ease], onComplete });\n};\n\n/**\n * Returns query string parameters\n *\n * @param query - URL's query string\n */\nexport const getUrlParams = query => {\n if (!query) {\n return {};\n }\n\n return (/^[?#]/.test(query) ? query.slice(1) : query)\n .split('&')\n .reduce((params, param) => {\n const [key, value] = param.split('=');\n params[key] = value ? decodeURIComponent(value.replace(/\\+/g, ' ')) : '';\n return params;\n }, {});\n};\n\n/**\n * Pushes url to history state\n * Warning: will replace current querystring in URL\n * @param newQueryString - Query string to be used in browser and history\n */\nexport const updateHistory = newQueryString => {\n const newURL = `${location.origin}${location.pathname}?${newQueryString}`;\n history.pushState({}, '', newURL);\n};\n\n/**\n * Scroll to point on a page\n *\n * @param y - Position to scroll to\n * @param speed - Speed of animation\n */\nexport const scrollTo = (y, speed = 1.5, onCompleteHandler) => {\n TweenMax.to(window, speed, { scrollTo: { y }, ease: Expo.easeOut, onComplete: onCompleteHandler });\n};\n\n/**\n * Initializes inline SVG's\n *\n * @param config - Configuration holding the DOM element and the target\n * Reference: https://stackoverflow.com/questions/24933430/img-src-svg-changing-the-fill-color\n */\nexport const initSVG = config => {\n $(config.el).each((k, v) => {\n const $img = $(v);\n const imgID = $img.attr('id');\n const imgClass = $img.attr('class');\n const imgURL = $img.attr('src');\n\n $.get(imgURL, data => {\n // Get the SVG tag, ignore the rest\n let $svg = $(data).find(config.target);\n\n // Add replaced image's ID to the new SVG\n if (typeof imgID !== 'undefined') {\n $svg = $svg.attr('id', imgID);\n }\n // Add replaced image's classes to the new SVG\n if (typeof imgClass !== 'undefined') {\n $svg = $svg.attr('class', imgClass + ' replaced-svg');\n }\n\n // Remove any invalid XML tags as per http://validator.w3.org\n $svg = $svg.removeAttr('xmlns:a');\n\n // Check if the viewport is set, else we gonna set it if we can.\n if (!$svg.attr('viewBox') && $svg.attr('height') && $svg.attr('width')) {\n $svg.attr('viewBox', '0 0 ' + $svg.attr('height') + ' ' + $svg.attr('width'));\n }\n\n // Replace image with new SVG\n $img.replaceWith($svg);\n\n }, 'xml');\n });\n};\n\nexport const truncateString = (str, n) => {\n return str.substr(0, n - 1) + (str.length > n ? '…' : '');\n};\n\n\n/**\n * Parses a query string\n *\n * @param query - querystring to parse.\n*/\nexport const getQueryParams = query => {\n const params = {};\n\n query.replace(/([^?=&]+)(=([^&]*))?/g,\n ($0, $1, $2, $3) => {\n const key = $1.toLowerCase();\n\n params[key] = decodeURIComponent($3);\n });\n\n return params;\n};\n\n\n/**\n * Returns paramenter value\n *\n * @param sParam - URL param\n */\nexport const getUrlParameter = (sParam, url) => {\n const sPageURL = window.location.search.substring(1);\n const sURLVariables = sPageURL.split('&');\n let sParameterName, i;\n\n for(i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]);\n }\n }\n};\n\nexport function addLabelsToSelectric() {\n setTimeout(() => {\n const selectricWrappers = $('.selectric-wrapper')\n\n if (selectricWrappers) {\n $.each(selectricWrappers, (index, element) => {\n const label = $(element).find('.selectric').find('.label');\n const id = 'input-id-' + (Math.round(Math.random() * 10000));\n\n if (label) {\n const text = $(label).text();\n const hiddenInput = $(element).find('.selectric-input');\n\n if (hiddenInput.length) {\n $(hiddenInput).attr('id', id);\n $('').insertBefore($(hiddenInput));\n }\n }\n });\n }\n }, 1000)\n}\n\nexport const setScrollPosition = name => sessionStorage.setItem(`scrollToPrevPosition${name}`, $(window).scrollTop());\n\nexport const goToPreviewPosition = name => {\n const data = sessionStorage.getItem(`scrollToPrevPosition${name}`);\n\n if (data) {\n window.scrollTo({\n top: data\n });\n sessionStorage.removeItem(`scrollToPrevPosition${name}`)\n }\n}\n\n\n// /**\n// * Checks browser is running on a native mobile device\n// */\nexport const isMobileDevice = () => {\n const userAgent = navigator.userAgent || navigator.vendor || window.opera;\n\n return (\n /windows phone/i.test(userAgent) ||\n /android/i.test(userAgent) ||\n (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream)\n );\n};\n\n// /**\n// * Checks iOS user agent\n// */\nexport const iOS = () => {\n return (\n [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(navigator.platform) ||\n (navigator.userAgent.includes('Mac') && 'ontouchend' in document)\n );\n};\n\n// /**\n// * Returns if media query matches mobile\n// */\nexport const isMobile = () => {\n return window.matchMedia('(max-width: 767px)').matches;\n};\n\n// /**\n// * Returns if media query matches tabletLandscape\n// */\nexport const isTabletLandscape = () => {\n return window.matchMedia('(max-width: 1023px)').matches;\n};\n\n// /**\n// * Returns the browser's scrollbar width\n// */\nexport const getScrollbarWidth = () => {\n return window.innerWidth - document.documentElement.clientWidth;\n};\n\n// /**\n// * Checks if an element is focusable\n// *\n// * @param {Object} el - HTML element you want to check if it's focusable\n// */\nexport const isFocusable = el => {\n if (\n el.tabIndex > 0 ||\n (el.tabIndex === 0 && el.getAttribute('tabIndex') !== null)\n ) {\n return true;\n }\n\n if (el.disabled) {\n return false;\n }\n\n /* eslint-disable indent */\n switch (el.nodeName) {\n case 'A':\n return !!el.href && el.rel !== 'ignore';\n case 'INPUT':\n return el.type !== 'hidden' && el.type !== 'file';\n case 'BUTTON':\n case 'SELECT':\n case 'TEXTAREA':\n return true;\n default:\n return false;\n }\n /* eslint-enable indent */\n};\n\n// /**\n// * FOCUSABLE ELEMENTS\n// */\nexport const focusableElements = [\n '[contenteditable]',\n '[tabindex]:not([tabindex^=\"-\"])',\n 'a[href]',\n 'area[href]',\n 'button:not([disabled]):not([aria-hidden])',\n 'embed',\n 'iframe',\n 'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\n 'object',\n 'select:not([disabled]):not([aria-hidden])',\n 'textarea:not([disabled]):not([aria-hidden])'\n];\n\n// * Check if an element is outside the viewport\n// */\nexport const isOutOfViewport = elem => {\n // Get element's bounding\n const bounding = elem.getBoundingClientRect();\n\n // Check if it's out of the viewport on each side\n const out = {};\n out.top = bounding.top < 0;\n out.left = bounding.left < 0;\n out.bottom =\n bounding.bottom >\n (window.innerHeight || document.documentElement.clientHeight);\n out.right =\n bounding.right >\n (window.innerWidth || document.documentElement.clientWidth);\n out.any = out.top || out.left || out.bottom || out.right;\n out.all = out.top && out.left && out.bottom && out.right;\n\n return out;\n};\n\nexport const numberWithCommas = x => x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n\nexport const sendSearchGAEvent = (event, search_term, num_search_results) => {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push({\n event,\n search_term,\n num_search_results\n });\n}\n\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/helpers/index.js","var map = {\n\t\"./Accordion\": [\n\t\t218,\n\t\t62\n\t],\n\t\"./Accordion.js\": [\n\t\t218,\n\t\t62\n\t],\n\t\"./BioOverview\": [\n\t\t219,\n\t\t61\n\t],\n\t\"./BioOverview.js\": [\n\t\t219,\n\t\t61\n\t],\n\t\"./BlogListing\": [\n\t\t220,\n\t\t0\n\t],\n\t\"./BlogListing.js\": [\n\t\t220,\n\t\t0\n\t],\n\t\"./CaseStudySpotlight\": [\n\t\t222,\n\t\t33\n\t],\n\t\"./CaseStudySpotlight.js\": [\n\t\t222,\n\t\t33\n\t],\n\t\"./ColumnCareersRow\": [\n\t\t223,\n\t\t32\n\t],\n\t\"./ColumnCareersRow.js\": [\n\t\t223,\n\t\t32\n\t],\n\t\"./Component\": [\n\t\t33\n\t],\n\t\"./Component.js\": [\n\t\t33\n\t],\n\t\"./ContactsListing\": [\n\t\t224,\n\t\t60\n\t],\n\t\"./ContactsListing.js\": [\n\t\t224,\n\t\t60\n\t],\n\t\"./EmailDisclaimerModal\": [\n\t\t132\n\t],\n\t\"./EmailDisclaimerModal.js\": [\n\t\t132\n\t],\n\t\"./ExperienceListing\": [\n\t\t225,\n\t\t59\n\t],\n\t\"./ExperienceListing.js\": [\n\t\t225,\n\t\t59\n\t],\n\t\"./FeaturedSolutionSlider\": [\n\t\t226,\n\t\t31\n\t],\n\t\"./FeaturedSolutionSlider.js\": [\n\t\t226,\n\t\t31\n\t],\n\t\"./HomepageFeaturedContent\": [\n\t\t227,\n\t\t58\n\t],\n\t\"./HomepageFeaturedContent.js\": [\n\t\t227,\n\t\t58\n\t],\n\t\"./HomepageHero\": [\n\t\t228,\n\t\t57\n\t],\n\t\"./HomepageHero.js\": [\n\t\t228,\n\t\t57\n\t],\n\t\"./HomepageMasthead\": [\n\t\t229,\n\t\t30\n\t],\n\t\"./HomepageMasthead.js\": [\n\t\t229,\n\t\t30\n\t],\n\t\"./InsightsListing\": [\n\t\t230,\n\t\t56\n\t],\n\t\"./InsightsListing.js\": [\n\t\t230,\n\t\t56\n\t],\n\t\"./InsightsSlider\": [\n\t\t231,\n\t\t29\n\t],\n\t\"./InsightsSlider.js\": [\n\t\t231,\n\t\t29\n\t],\n\t\"./NewsArticle\": [\n\t\t232,\n\t\t55\n\t],\n\t\"./NewsArticle.js\": [\n\t\t232,\n\t\t55\n\t],\n\t\"./NoteworthyContent\": [\n\t\t233,\n\t\t54\n\t],\n\t\"./NoteworthyContent.js\": [\n\t\t233,\n\t\t54\n\t],\n\t\"./Pagination\": [\n\t\t207,\n\t\t53\n\t],\n\t\"./Pagination.js\": [\n\t\t207,\n\t\t53\n\t],\n\t\"./ReadMore\": [\n\t\t234,\n\t\t52\n\t],\n\t\"./ReadMore.js\": [\n\t\t234,\n\t\t52\n\t],\n\t\"./RecognitionListing\": [\n\t\t235,\n\t\t51\n\t],\n\t\"./RecognitionListing.js\": [\n\t\t235,\n\t\t51\n\t],\n\t\"./ShowcaseCarousel\": [\n\t\t236,\n\t\t27\n\t],\n\t\"./ShowcaseCarousel.js\": [\n\t\t236,\n\t\t27\n\t],\n\t\"./Statistics\": [\n\t\t237,\n\t\t5\n\t],\n\t\"./Statistics.js\": [\n\t\t237,\n\t\t5\n\t],\n\t\"./TeamSpotlightGrid\": [\n\t\t238,\n\t\t26\n\t],\n\t\"./TeamSpotlightGrid.js\": [\n\t\t238,\n\t\t26\n\t],\n\t\"./TestimonialCarousel\": [\n\t\t239,\n\t\t25\n\t],\n\t\"./TestimonialCarousel.js\": [\n\t\t239,\n\t\t25\n\t],\n\t\"./TrendingTopicsCarousel\": [\n\t\t240,\n\t\t4\n\t],\n\t\"./TrendingTopicsCarousel.js\": [\n\t\t240,\n\t\t4\n\t],\n\t\"./TrendingTopicsCarouselSlider\": [\n\t\t215,\n\t\t24\n\t],\n\t\"./TrendingTopicsCarouselSlider.js\": [\n\t\t215,\n\t\t24\n\t],\n\t\"./VideoModal\": [\n\t\t134\n\t],\n\t\"./VideoModal.js\": [\n\t\t134\n\t],\n\t\"./about/AboutOverviewNav\": [\n\t\t241,\n\t\t50\n\t],\n\t\"./about/AboutOverviewNav.js\": [\n\t\t241,\n\t\t50\n\t],\n\t\"./about/VideoGrid\": [\n\t\t242,\n\t\t49\n\t],\n\t\"./about/VideoGrid.js\": [\n\t\t242,\n\t\t49\n\t],\n\t\"./article/ArticleBrief\": [\n\t\t243,\n\t\t48\n\t],\n\t\"./article/ArticleBrief.js\": [\n\t\t243,\n\t\t48\n\t],\n\t\"./article/ArticleFootnotes\": [\n\t\t244,\n\t\t47\n\t],\n\t\"./article/ArticleFootnotes.js\": [\n\t\t244,\n\t\t47\n\t],\n\t\"./article/ArticleSeeMore\": [\n\t\t245,\n\t\t46\n\t],\n\t\"./article/ArticleSeeMore.js\": [\n\t\t245,\n\t\t46\n\t],\n\t\"./book/Author\": [\n\t\t246,\n\t\t23\n\t],\n\t\"./book/Author.js\": [\n\t\t246,\n\t\t23\n\t],\n\t\"./book/ExcerptsModal\": [\n\t\t135\n\t],\n\t\"./book/ExcerptsModal.js\": [\n\t\t135\n\t],\n\t\"./book/ReviewsTestimonials\": [\n\t\t247,\n\t\t22\n\t],\n\t\"./book/ReviewsTestimonials.js\": [\n\t\t247,\n\t\t22\n\t],\n\t\"./careers/FeaturedContentCarousel\": [\n\t\t248,\n\t\t1\n\t],\n\t\"./careers/FeaturedContentCarousel.js\": [\n\t\t248,\n\t\t1\n\t],\n\t\"./careers/JobListing\": [\n\t\t249,\n\t\t45\n\t],\n\t\"./careers/JobListing.js\": [\n\t\t249,\n\t\t45\n\t],\n\t\"./event-listing/PredictiveSearch\": [\n\t\t251,\n\t\t44\n\t],\n\t\"./event-listing/PredictiveSearch.js\": [\n\t\t251,\n\t\t44\n\t],\n\t\"./event-listing/Search\": [\n\t\t252,\n\t\t11\n\t],\n\t\"./event-listing/Search.js\": [\n\t\t252,\n\t\t11\n\t],\n\t\"./event-listing/SubscribeCallout\": [\n\t\t253,\n\t\t43\n\t],\n\t\"./event-listing/SubscribeCallout.js\": [\n\t\t253,\n\t\t43\n\t],\n\t\"./event/EventVideoPlayer\": [\n\t\t250,\n\t\t2\n\t],\n\t\"./event/EventVideoPlayer.js\": [\n\t\t250,\n\t\t2\n\t],\n\t\"./global\": [\n\t\t64\n\t],\n\t\"./global/\": [\n\t\t64\n\t],\n\t\"./global/BackToTop\": [\n\t\t254,\n\t\t42\n\t],\n\t\"./global/BackToTop.js\": [\n\t\t254,\n\t\t42\n\t],\n\t\"./global/CookieUseDisclaimer\": [\n\t\t136\n\t],\n\t\"./global/CookieUseDisclaimer.js\": [\n\t\t136\n\t],\n\t\"./global/DownloadButton\": [\n\t\t255,\n\t\t21\n\t],\n\t\"./global/DownloadButton.js\": [\n\t\t255,\n\t\t21\n\t],\n\t\"./global/Header\": [\n\t\t137\n\t],\n\t\"./global/Header.js\": [\n\t\t137\n\t],\n\t\"./global/PredictiveSearch\": [\n\t\t138\n\t],\n\t\"./global/PredictiveSearch.js\": [\n\t\t138\n\t],\n\t\"./global/SectionNav\": [\n\t\t256,\n\t\t20\n\t],\n\t\"./global/SectionNav.js\": [\n\t\t256,\n\t\t20\n\t],\n\t\"./global/ShareComponent\": [\n\t\t257,\n\t\t41\n\t],\n\t\"./global/ShareComponent.js\": [\n\t\t257,\n\t\t41\n\t],\n\t\"./global/ShareThis\": [\n\t\t258,\n\t\t40\n\t],\n\t\"./global/ShareThis.js\": [\n\t\t258,\n\t\t40\n\t],\n\t\"./global/StickyHeader\": [\n\t\t259,\n\t\t19\n\t],\n\t\"./global/StickyHeader.js\": [\n\t\t259,\n\t\t19\n\t],\n\t\"./global/TwoColumns\": [\n\t\t260,\n\t\t39\n\t],\n\t\"./global/TwoColumns.js\": [\n\t\t260,\n\t\t39\n\t],\n\t\"./global/index\": [\n\t\t64\n\t],\n\t\"./global/index.js\": [\n\t\t64\n\t],\n\t\"./insights-events/PredictiveSearch\": [\n\t\t263,\n\t\t18\n\t],\n\t\"./insights-events/PredictiveSearch.js\": [\n\t\t263,\n\t\t18\n\t],\n\t\"./insights-listing/NewPredictiveSearch\": [\n\t\t264,\n\t\t17\n\t],\n\t\"./insights-listing/NewPredictiveSearch.js\": [\n\t\t264,\n\t\t17\n\t],\n\t\"./insights-listing/Search\": [\n\t\t265,\n\t\t10\n\t],\n\t\"./insights-listing/Search.js\": [\n\t\t265,\n\t\t10\n\t],\n\t\"./insights/PredictiveSearch\": [\n\t\t261,\n\t\t16\n\t],\n\t\"./insights/PredictiveSearch.js\": [\n\t\t261,\n\t\t16\n\t],\n\t\"./insights/Search\": [\n\t\t262,\n\t\t9\n\t],\n\t\"./insights/Search.js\": [\n\t\t262,\n\t\t9\n\t],\n\t\"./newslisting/PredictiveSearch\": [\n\t\t266,\n\t\t38\n\t],\n\t\"./newslisting/PredictiveSearch.js\": [\n\t\t266,\n\t\t38\n\t],\n\t\"./newslisting/Search\": [\n\t\t267,\n\t\t8\n\t],\n\t\"./newslisting/Search.js\": [\n\t\t267,\n\t\t8\n\t],\n\t\"./newsroom/PredictiveSearch\": [\n\t\t268,\n\t\t15\n\t],\n\t\"./newsroom/PredictiveSearch.js\": [\n\t\t268,\n\t\t15\n\t],\n\t\"./people/BioMessage\": [\n\t\t216,\n\t\t37\n\t],\n\t\"./people/BioMessage.js\": [\n\t\t216,\n\t\t37\n\t],\n\t\"./people/PeopleHeader\": [\n\t\t269,\n\t\t14\n\t],\n\t\"./people/PeopleHeader.js\": [\n\t\t269,\n\t\t14\n\t],\n\t\"./people/PredictiveSearch\": [\n\t\t270,\n\t\t3\n\t],\n\t\"./people/PredictiveSearch.js\": [\n\t\t270,\n\t\t3\n\t],\n\t\"./people/Search\": [\n\t\t271,\n\t\t7\n\t],\n\t\"./people/Search.js\": [\n\t\t271,\n\t\t7\n\t],\n\t\"./search-listing/PredictiveSearch\": [\n\t\t274,\n\t\t36\n\t],\n\t\"./search-listing/PredictiveSearch.js\": [\n\t\t274,\n\t\t36\n\t],\n\t\"./search-listing/Search\": [\n\t\t275,\n\t\t6\n\t],\n\t\"./search-listing/Search.js\": [\n\t\t275,\n\t\t6\n\t],\n\t\"./search/PredictiveSearch\": [\n\t\t272,\n\t\t35\n\t],\n\t\"./search/PredictiveSearch.js\": [\n\t\t272,\n\t\t35\n\t],\n\t\"./search/Search\": [\n\t\t273,\n\t\t28\n\t],\n\t\"./search/Search.js\": [\n\t\t273,\n\t\t28\n\t],\n\t\"./solution/FeaturedLinksRow\": [\n\t\t276,\n\t\t13\n\t],\n\t\"./solution/FeaturedLinksRow.js\": [\n\t\t276,\n\t\t13\n\t],\n\t\"./solution/GeographicReach\": [\n\t\t277,\n\t\t34\n\t],\n\t\"./solution/GeographicReach.js\": [\n\t\t277,\n\t\t34\n\t],\n\t\"./solution/InsightsRow\": [\n\t\t278,\n\t\t12\n\t],\n\t\"./solution/InsightsRow.js\": [\n\t\t278,\n\t\t12\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tvar ids = map[req];\n\tif(!ids)\n\t\treturn Promise.reject(new Error(\"Cannot find module '\" + req + \"'.\"));\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(ids[0]);\n\t});\n};\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 176;\nmodule.exports = webpackAsyncContext;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/components lazy ^\\.\\/.*$\n// module id = 176\n// module chunks = 64","module.exports = \" <% if(WorkPosition !== null && WorkPosition !== \\\"\\\") { %>
    <% } else { %>
    <% }; %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/search-item.html\n// module id = 205\n// module chunks = 64","module.exports = \"
  • \\\" data-predictive-search-subtype=\\\"<%= Subtype %>\\\" <% if(ViewAllType) { %> data-predictive-view-all-type=\\\"<%= ViewAllType %>\\\" <% } %> >

    \\\"> <%= GroupName %> <% if(ViewAll) { %> View All <% } %>

  • \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/predictive-search-item.html\n// module id = 214\n// module chunks = 64","const domTree = new WeakMap();\nconst configuration = new WeakMap();\n\n/**\n * Component is a class that should be extended for every component that's being made. It\n * is a helper class to keep the code uniform.\n *\n * __PLEASE NOTE__: This is only to be extended, not instantiated.\n *\n * @example\n * import Component from 'component';\n *\n * class Foo extends Component {\n * construction(el, config){\n * super(el, config);\n * }\n *\n * setupDefaults(){\n * this.dom = {\n * // ...jquery elements go here\n * }\n * }\n *\n * addListeners(){\n * // ...listeners go here\n * }\n * }\n *\n *\n * // Create a new Foo component with some configuration\n * new Foo('.foo', {\n * name: 'Foo'\n * })\n */\nclass Component {\n /**\n * Component constructor\n *\n * @param {string|Object} el - Main DOM element, you can pass a string such as `'.foo'` __or__ a jQuery object such as `$('.foo')`\n * @param {Object} [config={ }] - Additional component configuration\n */\n constructor(el, config = {}){\n if (typeof el === 'undefined') {\n throw new Error('You must provide an element as a String type or a jQuery object type');\n }\n\n /**\n * Main class element, this will be a jQuery instance\n *\n * @type {Object}\n */\n this.$el = el instanceof jQuery ? el : $(el);\n\n if (this.$el.length === 0) return;\n\n domTree.set(this, {});\n configuration.set(this, config);\n\n if (this.config.hasOwnProperty('dom')) {\n this.dom = this.config.dom;\n }\n\n this.setupDefaults();\n this.addListeners();\n }\n\n /**\n * This method is used for override;\n * It's called directly after the element and configuration have been set up\n */\n setupDefaults(){}\n\n /**\n * This method is used for override;\n * It's called directly after `setupDefaults()`, so everything is ready and set up at this point.\n */\n addListeners(){}\n\n /**\n * Get component configuration\n *\n * @example\n * this.config\n *\n * @type {Object}\n */\n get config(){\n return configuration.get(this);\n }\n\n /**\n * Get DOM object\n *\n * @example\n * this.dom\n *\n * @type {Object}\n */\n get dom(){\n return domTree.get(this);\n }\n\n /**\n * Set DOM object\n *\n * @example\n * this.dom = {\n * $foo: this.$el.find('.foo')\n * };\n *\n * @type {Object}\n */\n set dom(elements){\n elements = {\n ...this.dom,\n ...elements\n };\n\n domTree.set(this, elements);\n }\n}\n\nexport default Component;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/Component.js","import importComponent, { render } from './helpers/bootstrap';\nimport { ENDPOINT } from './constants';\nimport global from './components/global';\n\n$(() => {\n // Globals\n ////////////////\n global();\n $('.wh-insights-slider-item__title').dotdotdot({\n watch: 'window'\n })\n\n $('.wh-recent-news-item__title').dotdotdot({\n watch: 'window',\n height: 100\n });\n\n // On demand\n ////////////////\n importComponent('global/SectionNav', '.wh-section-nav')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('people/PeopleHeader', '.wh-people-header')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component(el);\n });\n\n importComponent('RecognitionListing', '.wh-recognition-details')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('solution/InsightsRow', '.wh-insights-row')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n if (window.matchMedia('(min-width: 1100px)').matches) return;\n new component($target);\n });\n });\n\n importComponent('solution/FeaturedLinksRow', '.wh-featured-links-row')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n if (window.matchMedia('(min-width: 1100px)').matches) return;\n new component($target);\n });\n });\n\n importComponent('ExperienceListing', '.wh-experience-listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('InsightsListing', '.wh-insights-listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target, {\n template: {\n item: require('templates/insights-listing-item'),\n tab: require('templates/insights-listing-tab')\n },\n endpoint: {\n getInsightsListing: ENDPOINT.getInsightsListing,\n getInsightsListingVisibility: ENDPOINT.getInsightsListingVisibility\n },\n pagesize: 3\n });\n });\n });\n\n importComponent('Accordion', '.wh-accordion')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('event-listing/SubscribeCallout', '.wh-subscribe-callout')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('InsightsSlider', '.wh-insights-slider')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('global/StickyHeader', '.wh-sticky-header')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target, {\n progressBarContent: '.wh-scroll-progress__content',\n endpoint: ENDPOINT.getPdfPage\n });\n });\n });\n\n importComponent('ReadMore', '.wh-content-readmore')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('solution/GeographicReach', '.wh-geographic-reach')\n .then(data => {\n if (!data) return;\n if (window.matchMedia('(max-width: 767px)').matches) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('article/ArticleBrief', '.wh-article-brief')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('article/ArticleSeeMore', '.wh-article-body--seemore')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('global/TwoColumns', '.row--cols2')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('Statistics', '.wh-statistics')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent(['people/Search', 'people/PredictiveSearch'], '.wh-people-search')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: require('templates/search-people-item.html'),\n predictiveEndpoint: ENDPOINT.getBioKeywordSearch,\n endpoint: ENDPOINT.getPeopleSearchResults,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n importComponent(['insights/Search', 'insights/PredictiveSearch'], '.wh-insights-search')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: {\n all: require('templates/search-insights-item.html'),\n blog: require('templates/search-insights-blog-item.html')\n },\n endpoint: ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: ENDPOINT.getInsightsPredictive,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n importComponent(['insights/Search', 'newsroom/PredictiveSearch'], '.wh-new-search--newsroom')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: require('templates/search-item.html'),\n endpoint: ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n importComponent(['newslisting/Search', 'newslisting/PredictiveSearch'], '.wh-new-search--listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: {\n all: require('templates/search-insights-item.html')\n\n },\n endpoint: ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: ENDPOINT.getInsightsPredictive,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n importComponent(['search-listing/Search', 'search-listing/PredictiveSearch'], '.wh-new-search-listing--listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: {\n all: require('templates/search-listing-item.html')\n\n },\n endpoint: ENDPOINT.getSearchResults,\n predictiveEndpoint: ENDPOINT.getKeywordSearch,\n pagesize: {\n list: 30\n },\n PredictiveSearch: component[1]\n });\n });\n\n importComponent('event/EventVideoPlayer', '.event-video-player')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent(['insights-listing/Search', 'insights-listing/NewPredictiveSearch'], '.wh-new-insights-search--listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: {\n all: require('templates/search-insights-item.html')\n },\n endpoint: ENDPOINT.getInsightsSearchResults,\n predictiveEndpoint: ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n importComponent(['insights-events/PredictiveSearch'], '.wh-insight-events-search')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: require('templates/search-insights-item.html'),\n predictiveEventsEndpoint: ENDPOINT.getEventsPredictive,\n predictiveInsightsEndpoint: ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n importComponent(['event-listing/Search', 'event-listing/PredictiveSearch'], '.wh-new-events-search--listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: {\n all: require('templates/search-events-item.html')\n },\n endpoint: ENDPOINT.getEventsListing,\n predictiveEndpoint: ENDPOINT.getInsightsPredictive,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n importComponent(['search/Search', 'search/PredictiveSearch'], '.wh-global-search')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n template: require('templates/search-item.html'),\n endpoint: ENDPOINT.getSearchResults,\n tabsEndpoint: ENDPOINT.getSearchResultsTabs,\n pagesize: 30,\n PredictiveSearch: component[1]\n });\n });\n\n importComponent('about/AboutOverviewNav', '.wh-about-overview-nav__select')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('ShowcaseCarousel', '.wh-showcase-carousel')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent(['HomepageHero', 'global/PredictiveSearch'], '.wh-home-page-hero')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n new component[0](el, {\n PredictiveSearch: component[1],\n interval: 7000\n });\n });\n\n importComponent('HomepageFeaturedContent', '.homepage-featured-content')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('article/ArticleFootnotes', '.wh-article-body')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('careers/FeaturedContentCarousel', '.featured-content-carousel')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('book/ReviewsTestimonials', '.wh-reviews-testimonials')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('book/Author', '.wh-author__content')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('global/ShareThis', '.wh-sticky-header-sharethis')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('global/DownloadButton', '.wh-download-button')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('global/ShareComponent', '.share-component')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('global/BackToTop', '.wh-back-to-top')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('about/VideoGrid', '.wh-video-grid')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('BlogListing', '.wh-blog-listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target, {\n template: require('templates/blog-listing-item'),\n endpoint: ENDPOINT.getBlogListing,\n pagesize: 18\n });\n });\n });\n\n importComponent('careers/JobListing', '.wh-job-listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target, {\n template: require('templates/job-listing-item'),\n endpoint: ENDPOINT.getJobListing,\n pagesize: 18\n });\n });\n });\n\n importComponent('ContactsListing', '.wh-contact-us-listing')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target.closest('[role=\"main\"]'), {\n template: require('templates/contact-group-listing'),\n endpoint: ENDPOINT.getContactListing\n });\n });\n });\n\n importComponent('NoteworthyContent', '.wh-noteworthy-content')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('NewsArticle', '.wh-article-hero')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('BioOverview', '.wh-bio-overview')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('TeamSpotlightGrid', '.team-spotlight-grid')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('FeaturedSolutionSlider', '.featured-solution')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('TestimonialCarousel', '.testimonial-carousel')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('CaseStudySpotlight', '.case-study')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('ColumnCareersRow', '.column-careers-row')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('HomepageMasthead', '.homepage-masthead')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n\n importComponent('TrendingTopicsCarousel', '.trending-topics-carousel')\n .then(data => {\n if (!data) return;\n const { component, el } = data;\n\n render(el, $target => {\n new component($target);\n });\n });\n});\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/main.js","/**\n * Imports a chunked component async\n *\n * @param name - Name of the Javascript file\n * @param el - Name of the element\n * @returns {Promise.<*>}\n */\nexport default async function importComponent(name, el = null) {\n if (el) {\n if (!exists(el)) return;\n } else {\n throw new Error('You must pass an element in.');\n }\n\n if (Array.isArray(name)) {\n const imports = [];\n\n name.forEach(v => {\n imports.push(import(`../components/${v}`));\n });\n\n return await Promise.all(imports)\n .then(resp => {\n const component = [];\n\n resp.forEach(v => {\n component.push(v.default);\n });\n\n return {\n component,\n el\n };\n })\n .catch(err => {\n Promise.reject(new Error(`There was an error loading your component - ${err}`));\n });\n }\n\n return await import(`../components/${name}`)\n .then(component => {\n return {\n component: component.default,\n el\n };\n })\n .catch(err => {\n Promise.reject(new Error(`There was an error loading your component - ${err}`));\n });\n}\n\n/**\n * Check if an element exists in the DOM tree\n *\n * @param el - DOM element\n * @returns {boolean}\n */\nexport const exists = el => {\n return document.querySelector(el) !== null;\n};\n\n/**\n * Renders component with callback\n *\n * @param el - Name of the element\n * @param cb - Callback\n */\nexport function render(el, cb){\n const elements = document.querySelectorAll(el);\n const length = elements.length;\n\n for(let i = 0; i < length; ++i) {\n cb($(elements[i]));\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/helpers/bootstrap.js","import 'tooltipster';\n\nexport const initTooltips = () => {\n $('.wh-related-solutions-links__link a').tooltipster({\n theme: 'tooltipster-solutions',\n arrow: false\n });\n\n $('.wh-solution-listing-item a').tooltipster({\n theme: 'tooltipster-solutions-list',\n arrow: false\n });\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/helpers/tooltips.js","module.exports = \"
    <% if (data.hasVimeoVideo) { %> <% } else { %> <% } %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/video-modal.html\n// module id = 602\n// module chunks = 64","module.exports = \"

    <%= data[0].Title %>

    <%= data[0].Content %>
    View Excerpts
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/excerpts-modal.html\n// module id = 603\n// module chunks = 64","module.exports = \"
    <%= Date %>

    <% if (Link && Link.Src != \\\"\\\") { %> \\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <% if (Description) { %>
    <%= Description %>
    <% } %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/insights-listing-item.html\n// module id = 604\n// module chunks = 64","module.exports = \"
  • \\\" class=wh-insights-listing-filters__item-link data-search-type=\\\"<%=Type%>\\\" data-search-type-uuid=\\\"<%=ContentTypeId%>\\\" data-search-subtype-uuid=\\\"<%=ContentSubTypeIds%>\\\"> <%=TabDisplayName%>
  • \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/insights-listing-tab.html\n// module id = 605\n// module chunks = 64","module.exports = \"<% const personClass = Link && ProfileImage ? '' : 'no-image' %>
  • \\\">
    <% if(Link && ProfileImage) { %> \\\">\\\" alt=\\\"<%= FullName %>\\\"/> <% }; %>

    \\\"><%= FullName %>

    <% if(Level) { %>
    <%= Level %>
    <% }; %> <% if(Email) { %> \\\" class=wh-person__email><%= Email %><% }; %>
    <% if(Locations !== null && Locations.length > 0) { %>
    <% for (let i = 0; i < Locations.length; i++) { %> <% if(Locations[i].Location) { %> \\\" class=wh-person__location><%= Locations[i].Location %> <% }; %> <% if(Locations[i].Telephone) { %> \\\" class=wh-person__telephone><%= Locations[i].Telephone %> <% }; %> <% }; %>
    <% }; %>
  • \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/search-people-item.html\n// module id = 606\n// module chunks = 64","module.exports = \"
    \\\">
    )\\\">
    \\\" class=wh-insights-search-results-item__content>

    <%= Title %>

    <%= Link.Label %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/search-insights-blog-item.html\n// module id = 607\n// module chunks = 64","module.exports = \"
    \\\"> <% if(Image) { %>
    )\\\">
    <% } %>
      <% if(Type !== null && Type.Title !== \\\"\\\") { %>
    • <%= Type.Title %>
    • <% }; %> <% if(SubType && SubType.Title) { %>
    • <%= SubType.Title %>
    • <% }; %>
    <%= PublishDate %>

    <% if(Link) { %> \\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Description %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/search-listing-item.html\n// module id = 608\n// module chunks = 64","module.exports = \"
    \\\"> <% if(Image) { %>
    )\\\">
    <% } %>
      <% if(SubTypes !== null && SubTypes.length > 0) { %> <% for (let i = 0; i < SubTypes.length; i++) { %>
    • <%= SubTypes[i].Title %>
    • <% }; %> <% }; %>
    <%= Date %>

    <% if(Link.Src) { %> \\\" title=\\\"<%= Link.Alt %>\\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Description %>
    <% if(PDF.Link && PDF.Title) { %> \\\" class=wh-insights-search-results-item__pdf><%= PDF.Title %> <% } %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/search-events-item.html\n// module id = 609\n// module chunks = 64","module.exports = \"
  • \\\">

    <%= data.Title %>

    <%= data.Date %>
    <%= data.Description %>
  • \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/blog-listing-item.html\n// module id = 610\n// module chunks = 64","module.exports = \"

    <% if(Url) { %> \\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Teaser %>
    <%= Municipality %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/job-listing-item.html\n// module id = 611\n// module chunks = 64","module.exports = \"
    <% if(data.Title) { %>

    <%= data.Title %>

    <% }; %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/contact-group-listing.html\n// module id = 612\n// module chunks = 64","import { initSVG } from '../../helpers';\nimport { initTooltips } from '../../helpers/tooltips';\nimport { ENDPOINT } from '../../constants';\nimport 'jquery.dotdotdot';\nimport VideoModal from 'components/VideoModal';\nimport ExcerptsModal from 'components/book/ExcerptsModal';\nimport EmailDisclaimerModal from 'components/EmailDisclaimerModal';\nimport CookieUseDisclaimer from 'components/global/CookieUseDisclaimer';\nimport Header from 'components/global/Header';\n\nfunction global(){\n // Inline SVGs\n initSVG({\n el: 'img.svg',\n target: 'svg'\n });\n\n initTooltips();\n\n $('.wh-text-trim').each((index, element) => {\n $(element).dotdotdot({\n watch: 'window'\n })\n });\n\n // Videos\n if ($('.wh-video-trigger').length) {\n new VideoModal($('.wh-video-trigger'), {\n template: require('templates/video-modal'),\n autoPlay: true\n });\n }\n\n if ($('.wh-excerpts-trigger').length) {\n new ExcerptsModal($('.wh-excerpts-trigger'), {\n template: require('templates/excerpts-modal'),\n endpoint: ENDPOINT.getExcerpts\n });\n }\n\n // Email Disclaimer\n new EmailDisclaimerModal($('body'));\n\n // In the case of the right sticky rail there are 2 .col-30 in the page\n $('.col-30').each((index, element) => {\n if ($(element).children().length === 0) {\n $(element).remove();\n\n } else {\n // Sticky Right Rail\n // In this case the .wh-sticky__wrapper and col-30--bottom' will always exists, so we check if\n // they don't have any children and if that's the case we remove the entire .col-30\n if ($(element).find('.wh-sticky__wrapper').length && $(element).find('.col-30--bottom')) {\n if ($(element).find('.wh-sticky__wrapper').children().length === 0\n && $(element).find('.col-30--bottom').children().length === 0) {\n $(element).remove();\n }\n }\n }\n });\n\n new Header('.wh-header', {\n endpoint: ENDPOINT.getHeaderKeywordSearch,\n PredictiveSearch: require('components/global/PredictiveSearch').default,\n triggerElement: $('.wh-home-page-hero__logo')\n });\n\n new CookieUseDisclaimer('.wh-cookie-use-disclaimer', {\n endpoint: ENDPOINT.setUseDisclaimerCookie\n });\n\n //Cookie Control\n if (window.localStorage.getItem('whCCDate') === null) {\n window.localStorage.setItem('whCCDate', new Date().getTime());\n }\n\n if (window.ccUpdatedDate && window.localStorage.getItem('whCCDate') && window.CookieControl) {\n const ccUpdate = new Date(window.ccUpdatedDate);\n const ccSeenDate = new Date(window.localStorage.getItem('whCCDate') * 1)\n if (ccUpdate.getTime() > ccSeenDate.getTime()) {\n window.CookieControl.open();\n window.localStorage.setItem('whCCDate', new Date(window.ccUpdatedDate).getTime());\n }\n }\n}\n\nexport default global;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/components/global/index.js","module.exports = \"
    \\\"> <% if(Image) { %>
    )\\\">
    <% } %>
      <% if(SubTypes !== null && SubTypes.length > 0) { %> <% for (let i = 0; i < SubTypes.length; i++) { %>
    • <%= SubTypes[i].Title %>
    • <% }; %> <% }; %>
    <%= Date %>

    <% if(Link.Src) { %> \\\" title=\\\"<%= Link.Alt %>\\\"><%= Title %> <% } else { %> <%= Title %> <% } %>

    <%= Description %>
    <% if(PDF.Link && PDF.Title) { %> \\\" class=wh-insights-search-results-item__pdf><%= PDF.Title %> <% } %>
    \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/modules/templates/search-insights-item.html\n// module id = 89\n// module chunks = 64","const API_PREFIX = '/api/sitecore';\n\n//-- Endpoints\nexport const ENDPOINT = {\n //-- GET\n getKeywordSearch: `${API_PREFIX}/mainsearch/predictive`,\n getSearchResults: `${API_PREFIX}/mainsearch/list/`,\n getSearchResultsTabs: `${API_PREFIX}/mainsearch/showsearchresultstab/`,\n getBioKeywordSearch: `${API_PREFIX}/bio/predictivesearch/`,\n getPeopleSearchResults: `${API_PREFIX}/bio/people/`,\n getInsightsSearchResults: `${API_PREFIX}/insights/list/`,\n getInsightsPredictive: `${API_PREFIX}/insights/predictive/`,\n getEventsPredictive: `${API_PREFIX}/insights/predictive/`,\n getEventsListing: `${API_PREFIX}/insights/list/`,\n getNewsPredictive: `${API_PREFIX}/insights/predictive/`,\n getNewsListing: `${API_PREFIX}/insights/list/`,\n getInsightsListing: `${API_PREFIX}/insights/list/`,\n getInsightsListingVisibility: `${API_PREFIX}/insightlisting/insightlistingtabsvisibility/`,\n getExcerpts: `${API_PREFIX}/book/getexcerpts/`,\n getJobListing: `${API_PREFIX}/job/joblisting/`,\n getBlogListing: `${API_PREFIX}/blogs/bloglisting`,\n getContactListing: `${API_PREFIX}/contactlisting/`,\n getPdfPage: `${API_PREFIX}/getpdfpage/`,\n\n //-- POST\n setUseDisclaimerCookie: `${API_PREFIX}/cookie/setdisclaimercookie/`\n};\n//-- DONT CHANGE THE ORDER OF THIS\nexport const SEARCH_GROUPS = [\n 'featured',\n 'people',\n 'solution',\n 'insight',\n 'news',\n 'event',\n 'about',\n 'career',\n 'blog'\n];\nexport const EVENTS_SEARCH_GROUPS = [\n 'firm-event',\n 'speaking-engagement',\n 'sponsorship'\n];\nexport const NEWS_SEARCH_GROUPS = [\n 'attorney-news',\n 'client-news',\n 'firm-news',\n 'community-service-news',\n 'recognition'\n];\nexport const INSIGHTS_SEARCH_GROUPS = [\n 'client-alert',\n 'publication',\n 'blog',\n 'blog-landing',\n 'video',\n 'podcast'\n];\nexport const GA_SEARCH_EVENTS = {\n Success: 'Search_success',\n Fail: 'Search_Fail',\n GeographicReach: 'Geographic_reach'\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/constants/index.js"],"sourceRoot":""}