{"version":3,"sources":["../../node_modules/browser-pack/_prelude.js","../../src/js/lib/init-modules.js","../../src/js/main.js","../../src/js/modules/accordion.js","../../src/js/modules/animation.js","../../src/js/modules/carousel.js","../../src/js/modules/custom-dropdown.js","../../src/js/modules/debounce.js","../../src/js/modules/form-modal.js","../../src/js/modules/header.js","../../src/js/modules/hero.js","../../src/js/modules/instagram.js","../../src/js/modules/load-more-local.js","../../src/js/modules/load-more.js","../../src/js/modules/location-map.js","../../src/js/modules/nav.js","../../src/js/modules/quotes.js","../../src/js/modules/settings.js","../../src/js/modules/side-out.js","../../src/js/modules/team-modal.js","../../src/js/modules/throttle.js","../../src/js/modules/youtube-modal.js"],"names":["initializeModules","modules","document","querySelectorAll","i","length","Module","el","names","getAttribute","split","j","require","e","console","log","module","exports","handleDonateForm","donateFormEl","querySelector","donateFormElId","emptyClass","hasValueClass","donateAmount","donateOtherAmount","isEmptyValue","value","includes","init","classList","remove","donateAmountEl","otherDonateAmountEl","donateAmountInputEl","otherDonateAmountInputEl","add","eventListener","gform","addAction","elem","formId","fieldId","closest","readyState","addEventListener","initAccordionTrigger","questionEl","accordionId","accordionText","textContent","setAttribute","openAccordion","trigger","accordion","parentNode","accordionContentEl","getElementById","contentHeight","children","clientHeight","$","addClass","css","closeAccordion","hasClass","removeAttribute","removeClass","closeAccordions","accordionQuestionEls","map","element","on","preventDefault","target","accordionTrigger","isAccordionOpened","foldAnimate","pos","$window","scrollTop","height","filter","this","offset","top","throttle","$el","$error","find","window","size","$slides","count","slick","slidesToShow","dots","centerMode","variableWidth","prevArrow","nextArrow","changeDropdownSelected","$dropdown","text","data","createDropdown","$select","$list","$options","$current","append","each","$option","$item","val","is","insertAfter","toggleDropdown","toggleClass","setTimeout","settings","animationSpeed","eventAttached","$active","$t","$target","nodeName","toLowerCase","$selected","func","threshold","execAsap","timeout","delayed","apply","obj","args","arguments","clearTimeout","closeModal","$body","openModal","$modal","overlayAppended","appendTo","adjustMenu","headerHeight","$header","$nav","initNavTrigger","toggleMenu","$navTrigger","$html","empty","click","width","breakpoints","navHover","toggleFade","$logo","$clone","clone","condense","content","helloHeight","direction","getBoundingClientRect","isCondensed","isFaded","previousOffset","detectResponsive","shouldEnable","header","outerHeight","enabled","off","undefined","adjustContentMargin","$mainWrapper","initCondensedNav","$mainPanel","$hello","helloRegexp","RegExp","padding","display","test","cookie","slideDown","step","expire","Date","setTime","getTime","toGMTString","slideUp","resize","debounce","$headerEl","infinite","speed","autoplay","autoplaySpeed","fade","Instafeed","global","feed","get","userId","wpVars","instagramUserId","clientId","instagramClientId","accessToken","instagramAccessToken","template","instagramTemplate","resolution","limit","run","$members","displayResults","show","$items","slice","perPage","fadeOut","currentPage","parseInt","time","action","page","postType","post","ajaxUrl","status","html","insertBefore","isLastPage","diff","Math","abs","calculatePosition","coordinates","result","x","y","currentMatrix","$panzoom","panzoom","zoom","panZoomWidth","panZoomHeight","offsetx","panZoonContainerWidth","parseFloat","browserPrefix","$mobileMapModal","minScale","transition","increment","maxScale","contain","$zoomIn","$zoomOut","onChange","onZoom","index","scale","position","attr","$currentModal","prev","parent","href_text","location","arrows","mobileFirst","responsive","breakpoint","iconId","animate","hideSubMenu","$subPanel","showSubMenu","$menu","$submenu","navModule","$allMenu","m","$sub","type","slideToggle","xs","s","ml","l","xl","xxl","$buttonSideOut","$overlayTrigger","$buttonClose","closeSideOut","$sideOut","initModal","$modalContainer","$member","fn","scope","last","deferTimer","context","now","getVideoId","url","regex","match","indexOf","$url","$videoId","$src","prepend"],"mappings":"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","file":"bundle.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i 0 ) {\n\t\t$window.scrollTop( $error.offset().top - $( \".header\" ).height() );\n\t}\n};\n","/**\n * Initialize carousel for section\n * @param {HTMLElement} el element\n */\nmodule.exports = function( el ) {\n var $el = $( el );\n var $slides = $el.find( \".js-carousel-slides\" );\n var count = $el.children().length;\n\n $slides.slick({\n slidesToShow: 1,\n dots: false,\n centerMode: true,\n variableWidth: true,\n prevArrow:\n \"\",\n nextArrow:\n \"\"\n });\n\n if ( count === 1 ) {\n $el.addClass( \"carousel--hide-dot\" );\n }\n};\n","var settings = require( \"modules/settings\" ),\n\t/**\n\t * Whether the global event for clicking outside of dropdowns have been attached\n\t * @type {Boolean}\n\t */\n\teventAttached = false;\n\n/**\n * Switch the selected value of the custom dropdown\n * @param {JQuery} $dropdown Custom dropdown element\n * @param {string} value Selected value\n * @param {string} text Text representing the value\n */\nfunction changeDropdownSelected( $dropdown, value, text ) {\n\t$dropdown.find( \".dropdown__item--selected\" ).removeClass( \"dropdown__item--selected\" );\n\t$dropdown.find( \"[data-value='\" + value + \"']\" ).addClass( \"dropdown__item--selected\" );\n\t$dropdown.data( \"current\" ).text( text );\n}\n\n/**\n * Create custom dropdown for a \"select\" element\n * @param {JQuery} $select value when a dropdown item is selected\n\t$el.on( \"click\", \".dropdown__item\", function() {\n\t\tvar $t = $( this ),\n\t\t\t$dropdown = $( this ).closest( \".dropdown\" ),\n\t\t\tvalue = $t.data( \"value\" );\n\n\t\tchangeDropdownSelected( $dropdown, value, $t.text() );\n\n\t\t$dropdown.data( \"select\" ).val( value );\n\t\t$dropdown.data( \"select\" ).trigger( \"change\" );\n\t\ttoggleDropdown( $dropdown );\n\t});\n\n\t// Activate the custom dropdown's focused state when the\n\t// value should also change the custom dropdown\n\t// selected value\n\t$el.on( \"change\", function( e ) {\n\t\tvar $target = $( e.target ),\n\t\t\t$selected = $target.children( \":selected\" ),\n\t\t\t$dropdown = $target.data( \"dropdown\" );\n\t\tif ( e.target.nodeName.toLowerCase() !== \"select\" || !$dropdown.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tchangeDropdownSelected( $dropdown, $selected.val(), $selected.text() );\n\t});\n\n\t// Clicking outside of the dropdown will deactivate it\n\tif ( !eventAttached ) {\n\t\t$( document ).on( \"click\", function( e ) {\n\t\t\tvar $dropdown = $( e.target ).closest( \".dropdown\" );\n\t\t\tif ( !$dropdown.length ) {\n\t\t\t\ttoggleDropdown( $( \".js-active-dropdown\" ) );\n\t\t\t}\n\t\t});\n\n\t\teventAttached = true;\n\t}\n};\n","// debouncing function from John Hann\n// http://unscriptable.com/index.php/2009/03/20/debouncing-javascript-methods/\nmodule.exports = function( func, threshold, execAsap ) {\n\tvar timeout;\n\n\treturn function debounced() {\n\t\tvar obj = this, args = arguments;\n\t\tfunction delayed () {\n\t\t\tif ( !execAsap ) {\n\t\t\t\tfunc.apply( obj, args );}\n\t\t\ttimeout = null;\n\t\t}\n\n\t\tif ( timeout ) {\n\t\t\tclearTimeout( timeout );\n\t\t}else if ( execAsap ) {\n\t\t\tfunc.apply( obj, args );\n\t\t}\n\n\t\ttimeout = setTimeout( delayed, threshold || 100 );\n\t};\n};\n","var overlayAppended = false,\n\t$body;\n\nfunction closeModal() {\n\t$body.removeClass( \"js-form-modal-active\" );\n\t$( \".form-modal.js-active\" ).removeClass( \"js-active\" );\n}\n\nfunction openModal( $modal ) {\n\t$modal.addClass( \"js-active\" );\n\t$body.addClass( \"js-form-modal-active\" );\n}\n\n/**\n * Initialize Form Modals\n * @param {HTMLElement} el Hero element\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el ),\n\t\t$modal = $( \".form-modal-\" + $el.data( \"form-id\" ) );\n\n\t$body = $( \"body\" );\n\n\t// Append the overlay to the HTML structure\n\tif ( !overlayAppended ) {\n\t\t$( '
' ).appendTo( \"body\" ).on( \"click\", closeModal );\n\t\toverlayAppended = true;\n\t}\n\n\tif ( $modal.find( \".gform_confirmation_wrapper, .gform_validation_error\" ).size() > 0 ) {\n\t\topenModal( $modal );\n\t}\n\n\t$el.on( \"click\", function( e ) {\n\t\te.preventDefault();\n\n\t\topenModal( $modal );\n\t});\n\n\t$modal.children( \".form-modal__close\" ).on( \"click\", closeModal );\n};\n","var settings = require(\"modules/settings\"),\n debounce = require(\"modules/debounce\"),\n enabled = false,\n $window,\n $mainWrapper,\n $html,\n $nav,\n $header,\n $mainPanel,\n $navTrigger = $( \".header__nav-trigger .nav-trigger\" ),\n content;\n\n/**\n * Adjust the sub menu positions based on the actual header height.\n * We need to do this because the \"promo\" top bar's height can be variable\n * and not fixed.\n */\nfunction adjustMenu() {\n var headerHeight = $header.height();\n $nav.css(\"top\", headerHeight );\n}\n\n/**\n * Interactivity for the navigation trigger button\n * @param {Object} $el Header element\n */\nfunction initNavTrigger( $el ) {\n\n var $html = $(\"html\");\n\n function toggleMenu() {\n adjustMenu();\n $navTrigger.toggleClass(\"js-nav-trigger--active\");\n $html.toggleClass(\"js-menu-open\");\n $nav.removeClass(\"js-sub-menu-open\");\n $nav.find(\".js-item-active\").removeClass(\"js-item-active\");\n $nav.find(\".sub-panel\").empty();\n }\n\n $navTrigger.click( toggleMenu );\n $nav.children(\".panels\").on(\"mouseleave\", function() {\n if ( $window.width() < settings.breakpoints.navHover ) {\n return;\n }\n\n toggleMenu();\n });\n\n $( document ).on(\"touchstart\", function( e ) {\n var $target = $( e.target );\n\n if ( $html.hasClass(\"js-menu-open\") &&\n !$target.closest(\".main-panel\").length &&\n !$target.is(\".main-panel\") &&\n !$target.closest(\".sub-panel\").length &&\n !$target.is(\".sub-panel\") &&\n !$target.closest(\".nav-trigger\").length &&\n !$target.is(\".nav-trigger\")\n ) {\n toggleMenu();\n }\n });\n}\n\n/**\n * Fade in / out logo images\n */\nfunction toggleFade( $el ) {\n var $logo = $el.children(\".logo\"),\n $clone = $logo.clone().addClass(\"js-transparent\");\n\n // logo effect\n // css background image transition is not reliable because\n // the image will appear stretched on some browser due to the\n // change of dimension, so we're using javascript for this\n $clone.toggleClass(\"logo--condensed\").appendTo( $el );\n\n // fade\n $logo.toggleClass(\"js-transparent\").addClass(\"js-remove\");\n\n // asynchronously remove class so that css animation is triggered\n setTimeout(function() {\n $clone.toggleClass(\"js-transparent\");\n }, 0 );\n\n // remove\n setTimeout(function() {\n $(\".js-remove\").remove();\n }, settings.animationSpeed );\n}\n\n/**\n * Condense the header as user scrolls.\n * @param {JQuery} $el Header element\n * @param {HTMLElement} content The main content HTML element\n * @param {float} helloHeight Height of the hello bar\n */\nfunction condense( $el, content, helloHeight ) {\n var offset = content.getBoundingClientRect().top,\n direction;\n\n // declare static variables\n if ( typeof condense.isCondensed === \"undefined\") {\n condense.isCondensed = false;\n }\n\n if ( typeof condense.isFaded === \"undefined\") {\n condense.isFaded = false;\n }\n\n if ( typeof condense.previousOffset === \"undefined\") {\n condense.previousOffset = offset + 1;\n }\n\n // whether the user is scrolling up or down\n direction = condense.previousOffset > offset ? \"down\" : \"up\";\n\n // dynamically set the height based on scrolling position\n // this ensures smoothest transition between condensed and full states\n if ( offset < 110 + helloHeight && offset > 80 + helloHeight ) {\n $el.css(\"height\", offset - helloHeight );\n } else {\n $el.css(\"height\", \"\");\n }\n\n if ( offset <= 80 + helloHeight && !condense.isCondensed ) {\n // when page first load, ensure a nice height transition\n // needs asynchronous class toggling to ensure css animation\n // is triggered\n $el.addClass(\"js-transition-all\");\n setTimeout(function() {\n $html.addClass(\"js-condensed\");\n\n setTimeout(function() {\n $el.removeClass(\"js-transition-all\");\n }, settings.animationSpeed );\n }, 0 );\n\n condense.isCondensed = true;\n } else if ( offset >= 110 + helloHeight && condense.isCondensed ) {\n $html.removeClass(\"js-condensed\");\n condense.isCondensed = false;\n }\n\n // fade in / out the logo\n if ( (offset < 110 + helloHeight && !condense.isFaded && direction === \"down\") ||\n (offset > 90 + helloHeight && condense.isFaded && direction === \"up\") ) {\n condense.isFaded = !condense.isFaded;\n toggleFade( $el );\n }\n\n // set this to detect scrolling direction\n condense.previousOffset = offset;\n adjustMenu();\n}\n\n/**\n * Disable or enable the effect based on responsive breakpoint\n * @param {JQuery} $el Header element\n */\nfunction detectResponsive( $el ) {\n var shouldEnable = $window.width() >= settings.breakpoints.header,\n helloHeight = $(\".hello-bar\").outerHeight();\n\n // Enable the effect\n if ( shouldEnable && !enabled ) {\n condense( $el, content, helloHeight );\n $window.on(\"scroll.header\", function() {\n condense( $el, content, helloHeight );\n });\n } else if ( !shouldEnable && enabled ) {\n // Disable scroll event handler\n $window.off(\"scroll.header\");\n\n // Reset the header styling and states\n $html.removeClass(\"js-condensed\");\n $(\".logo--condensed\").removeClass(\"logo--condensed\");\n condense.isCondensed = false;\n condense.isFaded = false;\n condense.previousOffset = undefined;\n }\n\n enabled = shouldEnable;\n}\n\n/**\n * Adjust top content margin. This is because the height\n * of the hello bar is variable.\n */\nfunction adjustContentMargin() {\n $mainWrapper.css(\"margin-top\", $header.height() );\n}\n\n\n/**\n * Initialize condensed navigation transition\n * @param {JQuery} $el Header element\n */\nfunction initCondensedNav( $el ) {\n $window = $( window );\n $html = $(\"html\");\n $mainWrapper = $(\".main-wrapper\");\n content = $mainWrapper[ 0 ];\n $mainPanel = $nav.children(\".main-panel\");\n\n var $hello = $(\".hello-bar\"),\n helloRegexp = new RegExp(\"(^|.*;\\\\s*)hide_hello_\" + $hello.data(\"hash\") + \"\\\\s*\\\\=\\\\s*1\");\n\n $hello.css({\n \"height\": 0,\n \"padding\": 0,\n \"display\": \"none\"\n });\n\n // slide down hello bar if it was not closed previously\n if ( !helloRegexp.test( document.cookie ) ) {\n setTimeout(function() {\n $hello.css({\n \"height\": \"\",\n \"padding\": \"\"\n });\n $hello.slideDown({\n step: function() {\n adjustContentMargin();\n adjustMenu();\n }\n });\n }, 1750 );\n }\n $hello.on(\"click\", \".hello-bar__close\", function() {\n var expire = new Date();\n expire.setTime( expire.getTime() + 24 * 60 * 60 * 1000 );\n document.cookie = \"hide_hello_\" + $hello.data(\"hash\") + \"=1; expires=\" + expire.toGMTString();\n $hello.slideUp({\n step: function() {\n adjustContentMargin();\n adjustMenu();\n }\n });\n });\n\n // the effect should be disabled below the header breakpoint\n detectResponsive( $el );\n\n $window.resize(\n debounce(function() {\n detectResponsive( $el );\n adjustContentMargin();\n })\n );\n}\n\n/**\n * Initialize nav trigger and condensed nav.\n * @param {JQuery} el Header element\n */\nmodule.exports = function( el ) {\n $header = $( el );\n $nav = $(\".nav\");\n var $headerEl = $header.children(\".header__wrapper\");\n\n initNavTrigger( $headerEl );\n initCondensedNav( $headerEl );\n};\n\n","/**\n * Initialize carousel for Hero section\n * @param {HTMLElement} el Hero element\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el );\n\tvar count = $el.children().length;\n\n\t$el.slick({\n\t\tdots: true,\n\t\tinfinite: true,\n\t\tspeed: 800,\n\t\tautoplay: true,\n\t\tautoplaySpeed: 4000,\n\t\tfade: true,\n\t\tprevArrow:\n\t\t\t\"\",\n\t\tnextArrow:\n\t\t\t\"\"\n\t});\n\n if ( $el.hasClass(\"hero--has-curved\") ) {\n $el.append( '
' );\n }\n\n if ( count === 1 ) {\n $el.addClass( \"hero--hide-dot\" );\n }\n};\n","/* globals wpVars */\n\n/**\n * Instafeed helper class\n * @type {Instafeed}\n */\nvar Instafeed = (typeof window !== \"undefined\" ? window['Instafeed'] : typeof global !== \"undefined\" ? global['Instafeed'] : null);\n\n/**\n * Initialize and fetch Instagram latest image feed\n * @param {HTMLElement} el Instagram feed element\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el );\n\n\tvar feed = new Instafeed({\n\t\tget: \"user\",\n\t\tuserId: wpVars.instagramUserId,\n\t\tclientId: wpVars.instagramClientId,\n\t\taccessToken: wpVars.instagramAccessToken,\n\t\ttarget: el,\n\t\ttemplate: wpVars.instagramTemplate,\n\t\tresolution: \"low_resolution\",\n\t\tlimit: 12\n\t});\n\n\tfeed.run();\n};\n","var settings = require( \"modules/settings\" );\n\n/**\n * Initialize \"Load More\" button to load next page of content\n * but the content itself is already in the document and does\n * not need to be fetched by AJAX.\n * @param {HTMLElement} el Element containing content\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el ),\n\t\t$members = $el.find( \".member\" );\n\n\t// Clicking on the load more button should fade in the next\n\t// set of items\n\t$el.on( \"click\", \"[data-load-more]\", function( e ) {\n\t\tvar $t = $( this ),\n\t\t\tcurrentPage = $t.data( \"load-more\" ),\n\t\t\tperPage = parseInt( $t.data( \"per-page\" ) ),\n\t\t\toffset = currentPage * perPage,\n\t\t\t$items;\n\n\t\te.preventDefault();\n\t\t$t.addClass( \"js-loading\" );\n\n\t\tsetTimeout( displayResults, 1000 + settings.animationSpeed );\n\n\t\tfunction displayResults() {\n\t\t\t$t.removeClass( \"js-loading\" );\n\n\t\t\tsetTimeout( show, settings.animationSpeed );\n\t\t}\n\n\t\tfunction show() {\n\t\t\t// Fade in items\n\t\t\t$items = $members.slice( offset, offset + perPage );\n\t\t\t$items.addClass( \"js-member-loading\" );\n\t\t\tsetTimeout(function() {\n\t\t\t\t$items.addClass( \"js-member-loaded\");\n\t\t\t}, 0 );\n\n\t\t\tsetTimeout(function() {\n\t\t\t\t$items.removeClass( \"js-member-loading\" );\n\t\t\t}, settings.animationSpeed );\n\n\t\t\tif ( offset + perPage >= $members.length ) {\n\t\t\t\t// remove the Load More button if all contents are\n\t\t\t\t// visible\n\t\t\t\t$t.fadeOut( settings.animationSpeed, function() {\n\t\t\t\t\t$t.remove();\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Next time, fade in the next page\n\t\t\t\t$t.data( \"load-more\", currentPage + 1 );\n\t\t\t}\n\t\t}\n\t});\n};\n","/* globals wpVars */\n\nvar settings = require( \"modules/settings\" );\n\n/**\n * Initialize AJAX load more for custom post types\n * @param {HTMLElement} el Content container element\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el );\n\n\t// Clicking on load more button should trigger AJAX request\n\t$el.on( \"click\", \"[data-load-more]\", function( e ) {\n\t\tvar $t = $( this ),\n\t\t\tcurrentPage = $t.data( \"load-more\" ),\n\t\t\tdata = {\n\t\t\t\taction: \"load_more\",\n\t\t\t\tpage: currentPage + 1\n\t\t\t},\n\t\t\tpostType = $el.data( \"post-type\" ),\n\t\t\ttime;\n\n\t\te.preventDefault();\n\n\t\t// By default, we're fetching Press (WP_Post)\n\t\t// Or post type can be specified via data-post-type\n\t\tif ( postType ) {\n\t\t\tdata.postType = postType;\n\t\t}\n\n\t\t$t.addClass( \"js-loading\" );\n\n\t\ttime = new Date();\n\n\t\t// Initiate the ajax request\n\t\t$.post(\n\t\t\twpVars.ajaxUrl,\n\t\t\tdata,\n\t\t\tfunction( data, status ) {\n\t\t\t\tvar $items,\n\t\t\t\t$articles,\n\t\t\t\tdiff = 1000 + settings.animationSpeed - Math.abs( new Date() - time );\n\n\t\t\t\tif ( status !== \"success\" ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( diff < 0 ) {\n\t\t\t\t\tdisplayResults();\n\t\t\t\t} else {\n\t\t\t\t\tsetTimeout( displayResults, diff );\n\t\t\t\t}\n\n\t\t\t\tfunction displayResults() {\n\t\t\t\t\t// Next time, load next page\n\t\t\t\t\t$t.data( \"load-more\", currentPage + 1 );\n\t\t\t\t\t$t.removeClass( \"js-loading\" );\n\n\t\t\t\t\tsetTimeout( show, settings.animationSpeed );\n\t\t\t\t}\n\n\t\t\t\tfunction show() {\n\t\t\t\t\t$items = $( data.html );\n\n\t\t\t\t\t// Fade in the new elements using CSS transitions\n\t\t\t\t\t$items.addClass( \"js-transparent\" ).insertBefore( $t );\n\n\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\t$items.removeClass( \"js-transparent\" );\n\t\t\t\t\t}, 0 );\n\n\t\t\t\t\t// Remove Load More button if this is the last page\n\t\t\t\t\tif ( data.isLastPage ) {\n\t\t\t\t\t\t$t.remove();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"json\"\n\t\t);\n\t});\n};\n","module.exports = function( el ) {\n var browserPrefix = [ \"-webkit-\", \"-moz-\", \"-ms-\", \"-o-\", \"\" ];\n var $mobileMapModal = $( \".js-map-mobile-modal\" );\n var $panzoom = $(\".pan-zoom\").panzoom({\n minScale: 1,\n transition: true,\n increment: 0.05,\n maxScale: 2,\n contain: \"invert\",\n $zoomIn: $( el ).find( \".zoom-in\" ),\n $zoomOut: $( el ).find( \".zoom-out\" ),\n onChange: function( e, data ) {\n $mobileMapModal.find( \".js-map-icon-modal\" ).removeClass( \"active\" );\n },\n onZoom: function( e, data ) {\n $panzoom.panzoom(\"resetPan\");\n $.each( browserPrefix, function( index, value ) {\n $(\".js-map-icon-modal, .js-map-icon\").css(\n value + \"transform\", \"translate3d(-50%, 0, 0) scale(calc(1/\" + data.scale + \")\"\n );\n });\n $mobileMapModal.find( \".js-map-icon-modal\" ).removeClass( \"active\" );\n }\n });\n\n $( \".js-map-icon\" ).on( \"click touchstart\", function( e ) {\n e.preventDefault();\n var position = calculatePosition( $( this ).attr( \"data-coordinates\" ) );\n var currentMatrix = $panzoom.panzoom(\"getMatrix\");\n currentMatrix[ 4 ] = position.x;\n currentMatrix[ 5 ] = position.y;\n $.each( browserPrefix, function( index, value ) {\n $( \".pan-zoom\" ).css(\n value + \"transform\", \"matrix(\" + currentMatrix[ 0 ] + \", \" + currentMatrix[ 1 ] + \", \" + currentMatrix[ 2 ] + \", \" + currentMatrix[ 3 ] + \", \" + currentMatrix[ 4 ] + \", \" + currentMatrix[ 5 ] + \")\"\n );\n });\n $( \".js-map-icon-modal\" ).removeClass( \"active\" );\n var $currentModal = $( this ).prev(\".js-map-icon-modal\");\n $currentModal.addClass( \"active\" );\n\n setTimeout(function() {\n $mobileMapModal.html( $currentModal.clone() );\n }, 250 );\n });\n\n $( \"body\" ).on( \"click touchstart\", \".js-map-icon-modal-close\", function( e ) {\n e.preventDefault();\n $( this ).parent( \".js-map-icon-modal\" ).removeClass( \"active\" );\n });\n\n var href_text = $(\".map-icon__modal-content-link\").attr(\"href\");\n $( \".map-icon__modal-content a\").on( \"click touchstart\", function( e ) {\n $( location ).attr(\"href\", href_text );\n });\n\n $( \".js-map-filters\" ).slick({\n slidesToShow: 1,\n arrows: false,\n dots: true,\n mobileFirst: true,\n responsive: [\n {\n breakpoint: 768,\n settings: \"unslick\"\n }\n ]\n });\n\n function calculatePosition ( coordinates ) {\n var result = {\n x: 0,\n y: 0\n };\n var currentMatrix = $panzoom.panzoom(\"getMatrix\");\n var zoom = currentMatrix[ 0 ];\n coordinates = coordinates.split( \",\" );\n var panZoomWidth = $( \".pan-zoom\" ).width();\n var panZoomHeight = $( \".pan-zoom\" ).height();\n var offsetx = panZoomWidth * (zoom - 1) / 2;\n var panZoonContainerWidth = $( \".pan-zoom-container\" ).width() / 2;\n result.x = -((parseFloat( coordinates[ 0 ] ) / 100) * panZoomWidth * zoom - panZoonContainerWidth - offsetx);\n result.y = panZoomHeight * zoom * (parseFloat( 50 - coordinates[ 1 ] ) / 100);\n return result;\n };\n\n $( \".js-map-filter-item\" ).on( \"click\", function( e ) {\n e.preventDefault();\n var position = calculatePosition( $( this ).attr( \"data-coordinates\" ) );\n var currentMatrix = $panzoom.panzoom(\"getMatrix\");\n currentMatrix[ 4 ] = position.x;\n currentMatrix[ 5 ] = position.y;\n $.each( browserPrefix, function( index, value ) {\n $( \".pan-zoom\" ).css(\n value + \"transform\", \"matrix(\" + currentMatrix[ 0 ] + \", \" + currentMatrix[ 1 ] + \", \" + currentMatrix[ 2 ] + \", \" + currentMatrix[ 3 ] + \", \" + currentMatrix[ 4 ] + \", \" + currentMatrix[ 5 ] + \")\"\n );\n });\n var iconId = $( this ).attr( \"data-icon\" );\n $( \".js-map-icon-modal\" ).removeClass( \"active\" );\n $( \"#map-icon-\" + iconId ).addClass( \"active\" );\n\n $(\"html, body\").animate({\n scrollTop: $(\".section-map__header\").offset().top\n }, \"slow\" );\n setTimeout(function() {\n $mobileMapModal.html( $( \"#map-icon-\" + iconId ).clone() );\n }, 250 );\n });\n};\n","var settings = require(\"modules/settings\"),\n debounce = require(\"modules/debounce\"),\n $header,\n $hello,\n $el,\n $window,\n $allMenu,\n $subPanel;\n\nfunction hideSubMenu() {\n $el.find(\".js-item-active\").removeClass(\"js-item-active\");\n $el.removeClass(\"js-sub-menu-open\");\n setTimeout(\n function() {\n if ( !$el.hasClass(\"js-sub-menu-open\") ) {\n $subPanel.empty();\n }\n },\n settings.animationSpeed\n );\n}\n\n/**\n * Display sub-menu\n * @param {Object} $item Parent menu item\n * @param {Object} $menu Menu element\n */\nfunction showSubMenu( $item, $menu ) {\n var $submenu = $item.children(\".sub-menu\"),\n $clone,\n timeout = 0;\n\n if ( $submenu.size() === 0 ) {\n hideSubMenu();\n return;\n }\n\n if ( $subPanel.children().size() > 0 ) {\n $subPanel.addClass(\"js-emptying\");\n timeout += settings.animationSpeed;\n }\n\n $clone = $submenu.clone();\n\n setTimeout(\n function() {\n $subPanel.empty().append( $clone );\n\n setTimeout(function() {\n $subPanel.removeClass(\"js-emptying\");\n }, 10 );\n },\n timeout\n );\n\n $menu.addClass(\"js-sub-menu-open\");\n $menu.find(\".js-item-active\").removeClass(\"js-item-active\");\n $item.addClass(\"js-item-active\");\n}\n\n/**\n * Initialize navigation menu.\n * Assumption: menu only has 2 levels\n * @param {Object} el Menu DOM object\n */\nfunction navModule( el ) {\n $el = $( el );\n $window = $( window );\n $header = $(\".header\");\n $hello = $(\".hello-bar\");\n $allMenu = $el.add( $el.find(\".sub-menu\") );\n $subPanel = $el.find(\".sub-panel\");\n\n // when tapping on menu item on mobile, if it has submenu, then display it\n // on desktop, clicking behaves normally\n $el.on(\"click touchstart\", \".nav__menu > .nav__item\", function( e ) {\n var $item = $( this );\n\n if ( !$item.hasClass(\"menu-item-has-children\") ) {\n return;\n }\n\n e.preventDefault();\n\n if ( !$item.hasClass(\"js-item-active\") ) {\n showSubMenu( $item, $el );\n }\n });\n\n // when hovering on a menu item, display sub menu if it exists\n $el.find(\".nav__menu .nav__item\").on(\n \"mouseenter\",\n debounce(function() {\n var $item = $( this );\n\n if (\n !$item.hasClass(\"js-item-active\") &&\n $window.width() >= settings.breakpoints.navHover\n ) {\n showSubMenu( $item, $el );\n }\n })\n );\n\n $subPanel.on(\"hover\", \"> .sub-menu > .menu-item\", function( e ) {\n if ( $window.width() < settings.breakpoints.m ) {\n return;\n }\n\n var $target = $( this ),\n $sub = $target.children(\".sub-menu\");\n\n if ( e.type === \"mouseenter\") {\n // can only rely on JS for this effect\n $sub.slideDown( settings.animationSpeed );\n $target.addClass(\"js-second-level-open\");\n } else {\n $sub.slideUp( settings.animationSpeed );\n $target.removeClass(\"js-second-level-open\");\n }\n });\n\n $subPanel.on(\"touchstart\", \"> .sub-menu > .menu-item\", function( e ) {\n var $target = $( this ),\n $sub = $target.children(\".sub-menu\");\n\n if ( !$sub.length || $sub.is(\":visible\") ) {\n return true;\n }\n\n e.preventDefault();\n\n $target.toggleClass(\"js-second-level-open\");\n $sub.slideToggle( settings.animationSpeed );\n });\n}\n\nmodule.exports = navModule;\n","/**\n * Initialize carousel for the multiple quotes\n * @param {HTMLElement} el Quotes container\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el );\n\n\t$el.slick({\n\t\tdots: false,\n\t\tinfinite: true,\n\t\tspeed: 800,\n\t\tautoplay: true,\n\t\tautoplaySpeed: 4000,\n\t\tfade: true,\n\t\tarrows: false\n\t});\n};\n","/**\n * Global settings shared by all modules\n * @type {Object}\n */\nvar settings = module.exports = {\n\tbreakpoints: {\n\t\txs: 481,\n\t\ts: 641,\n\t\tm: 769,\n\t\tml: 992,\n\t\tl: 1281,\n\t\txl: 1441,\n\t\txxl: 1921\n\t},\n\tanimationSpeed: 200\n};\n\nsettings.breakpoints.header = settings.breakpoints.m;\nsettings.breakpoints.navHover = settings.breakpoints.m;\n","var $html = $( \"html\" );\nvar $buttonSideOut = $( \".js-side-out-read-more\" );\nvar $overlayTrigger = $( \".js-side-out-overlay\" );\nvar $buttonClose = $( \".js-side-out-btn-close\" );\n\n/**\n * Initialize nav trigger and condensed nav.\n * @param {JQuery} el Header element\n */\nmodule.exports = function( el ) {\n var $sideOut = $( el );\n\n function closeSideOut( e ) {\n e.preventDefault();\n $html.removeClass( \"is-side-out-open\" );\n $sideOut.removeClass( \"is-animated\" );\n }\n\n if ( $buttonSideOut ) {\n $buttonSideOut.click(function( e ) {\n e.preventDefault();\n $html.toggleClass( \"is-side-out-open\" );\n $sideOut.toggleClass( \"is-animated\" );\n });\n }\n\n if ( $overlayTrigger ) {\n $overlayTrigger.click( closeSideOut );\n }\n\n if ( $buttonClose ) {\n $buttonClose.click( closeSideOut );\n }\n};\n\n","var $modal,\n\t$modalContainer,\n\t$html;\n\nfunction closeModal() {\n\t$html.removeClass( \"js-modal-open\" );\n\t$modal.removeClass( \"js-active\" );\n}\n\n/**\n * Initialize th modal element and event handler\n */\nfunction initModal() {\n\t$html = $( \"html\" );\n\t$modal = $( \".team-modal\" );\n\t$modalContainer = $modal.children( \".team-modal__container\" );\n\n\t$modal.on( \"click\", \".team-modal__back\", function( e ) {\n\t\te.preventDefault();\n\n\t\tcloseModal();\n\t});\n}\n\n/**\n * Initialize the module\n * @param {HTMLElement} el Member element\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el );\n\n\tinitModal();\n\n\t$el.on( \"click\", \".member__photo\", function() {\n\t\tvar $t = $( this ),\n\t\t\t$member = $t.closest( \".member\" );\n\n\t\tif ( $member.hasClass( \"member--no-bio\" ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// remove the previous active member if exists\n\t\t$modalContainer.children( \".member\" ).remove();\n\n\t\t// Slide in the modal\n\t\t$modal.addClass( \"js-active\" );\n\n\t\t// Append the clicked member info\n\t\t$modalContainer.append( $member.clone() );\n\n\t\t// Mainly for animating in the overlay\n\t\t$html.addClass( \"js-modal-open\" );\n\t});\n\n\t$( document ).on( \"click touchstart\", function( e ) {\n\t\tvar $target = $( e.target );\n\t\tif ( $modal.hasClass( \"js-active\" ) &&\n\t\t\t!$target.closest( \".team-modal\" ).length &&\n\t\t\t!$target.is( \".team-modal\" ) &&\n\t\t\t!$target.is( \".member__photo\" )\n\t\t) {\n\t\t\tcloseModal();\n\t\t}\n\t});\n};\n","// throttle function from Remy Sharp\n// https://remysharp.com/2010/07/21/throttling-function-calls\nmodule.exports = function( fn, threshold, scope ) {\n\tif ( !threshold ) {\n\t\tthreshold = 250;\n\t}\n\n\tvar last, deferTimer;\n\n\treturn function() {\n\t\tvar context = scope || this,\n\t\t\tnow = +new Date(),\n\t\t\targs = arguments;\n\n\t\tif ( last && now < last + threshold ) {\n\t\t\t// hold on to it\n\t\t\tclearTimeout( deferTimer );\n\t\t\tdeferTimer = setTimeout(function() {\n\t\t\t\tlast = now;\n\t\t\t\tfn.apply( context, args );\n\t\t\t}, threshold );\n\t\t} else {\n\t\t\tlast = now;\n\t\t\tfn.apply( context, args );\n\t\t}\n\t};\n};\n","var overlayAppended = false,\n\t$body,\n\t$modal;\n\n/**\n * Close YouTube modal\n */\nfunction closeModal() {\n\t$modal.children( \".js-youtube-container\" ).empty();\n\t$body.removeClass( \"js-youtube-modal-active\" );\n}\n\nfunction getVideoId( url ) {\n\tvar regex = url.match( /(http:|https:|)\\/\\/(player.|www.)?(vimeo\\.com|youtu(be\\.com|\\.be|be\\.googleapis\\.com))\\/(video\\/|embed\\/|watch\\?v=|v\\/)?([A-Za-z0-9._%-]*)(\\S+)?/ );\n\treturn (regex && regex[ 3 ].indexOf( \"youtu\" ) > -1) ? regex[ 6 ] : null;\n}\n\n/**\n * Initialize the YouTube modal\n * @param {HTMLElement} el Call to action button\n */\nmodule.exports = function( el ) {\n\tvar $el = $( el );\n\n\t$body = $( \"body\" );\n\n\t// Append the overlay to the HTML structure\n\tif ( !overlayAppended ) {\n\t\t$( '
' ).appendTo( \"body\" ).on( \"click\", closeModal );\n\t\toverlayAppended = true;\n\t}\n\n\t// Close modal event\n\tif ( !$modal ) {\n\t\t$modal = $( \".js-youtube-modal\" );\n\n\t\t$modal.children( \".js-youtube-modal-close\" ).on( \"click\", closeModal );\n\t}\n\n\t// Clicking the CTA should trigger the YouTube modal\n\t$el.on( \"click\", function( e ) {\n\t\te.preventDefault();\n\t\tvar $url = $el.attr( \"href\" );\n\t\tvar $videoId = getVideoId( $url );\n\t\tvar $src = \"https://www.youtube.com/embed/\" + $videoId;\n\t\t$body.addClass( \"js-youtube-modal-active\" );\n\t\t$modal.children( \".js-youtube-container\" ).prepend(\n\t\t\t''\n\t\t);\n\t});\n};\n"]}