{"version":3,"sources":["what-input.js","scripts.js","foundation.core.js","foundation.util.box.js","foundation.util.box.min.js","foundation.util.imageLoader.js","foundation.util.imageLoader.min.js","foundation.util.keyboard.js","foundation.util.keyboard.min.js","foundation.util.mediaQuery.js","foundation.util.mediaQuery.min.js","foundation.util.motion.js","foundation.util.motion.min.js","foundation.util.nest.js","foundation.util.nest.min.js","foundation.util.timer.js","foundation.util.timer.min.js","foundation.util.touch.js","foundation.util.touch.min.js","foundation.util.triggers.js","foundation.util.triggers.min.js","foundation.accordion.js","foundation.accordionMenu.js","foundation.drilldown.js","foundation.dropdown.js","foundation.dropdownMenu.js","foundation.offcanvas.js","foundation.responsiveMenu.js","foundation.responsiveToggle.js","foundation.reveal.js","foundation.smoothScroll.js","foundation.magellan.js","foundation.sticky.js","foundation.tabs.js","foundation.responsiveAccordionTabs.js","ofi.js","init-foundation.js","wp-foundation.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","currentInput","currentIntent","doc","document","documentElement","formInputs","functionList","ignoreMap","changeIntentMap","inputMap","keydown","keyup","mousedown","mousemove","MSPointerDown","MSPointerMove","pointerdown","pointermove","touchstart","inputTypes","isBuffering","isScrolling","mousePos","x","y","pointerMap","2","3","4","supportsPassive","opts","Object","defineProperty","get","window","addEventListener","e","setUp","detectWheel","addListeners","setInput","options","passive","PointerEvent","updateInput","setIntent","MSPointerEvent","touchBuffer","event","eventKey","which","value","type","pointerType","activeElem","activeElement","activeInput","notFormInput","nodeName","indexOf","toLowerCase","setAttribute","push","className","fireFunctions","screenX","screenY","i","len","length","fn","undefined","wheelType","createElement","onmousewheel","objPos","match","Array","prototype","ask","opt","types","ignoreKeys","arr","registerOnChange","eventType","unRegisterOnChange","position","splice","_typeof2","Symbol","iterator","obj","constructor","require","__WEBPACK_EXTERNAL_MODULE_jquery__","l","d","name","getter","o","enumerable","r","toStringTag","t","mode","__esModule","ns","create","key","bind","n","object","property","hasOwnProperty","s","./js/entries/plugins/foundation.core.js","__webpack_exports__","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","_foundation_core__WEBPACK_IMPORTED_MODULE_1__","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__","addToJquery","a","Plugin","rtl","GetYoDigits","transitionend","RegExpEscape","onLoad","Foundation","./js/foundation.core.js","_typeof","functionName","Function","funcNameRegex","results","exec","toString","trim","parseValue","str","isNaN","parseFloat","hyphenate","replace","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__","FOUNDATION_VERSION","version","_plugins","_uuids","plugin","_plugin","attrName","registerPlugin","pluginName","uuid","$element","attr","concat","data","trigger","unregisterPlugin","removeAttr","removeData","prop","reInit","plugins","isJQ","each","_init","_this","fns","plgs","forEach","foundation","string","keys","err","console","error","reflow","elem","$elem","find","addBack","filter","$el","split","option","_index","map","el","er","getFnName","$","method","$noJS","removeClass","TypeError","args","slice","arguments","plugClass","ReferenceError","apply","util","throttle","func","delay","timer","context","setTimeout","Date","now","getTime","vendors","requestAnimationFrame","vp","cancelAnimationFrame","test","navigator","userAgent","lastTime","callback","nextTime","Math","max","clearTimeout","performance","start","oThis","aArgs","fToBind","fNOP","fBound","./js/foundation.core.plugin.js","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","configurable","writable","_createClass","protoProps","staticProps","getPluginName","element","_setup","_destroy","./js/foundation.core.utils.js","namespace","chars","charsLength","floor","random","end","transitions","transition","WebkitTransition","MozTransition","OTransition","style","triggerHandler","handler","didLoad","readyState","cb","one","ignoreMousedisappear","_ref","_ref$ignoreLeaveWindo","ignoreLeaveWindow","_ref$ignoreReappear","ignoreReappear","eLeave","_len","rest","_key","relatedTarget","hasFocus","eReenter","currentTarget","has","./js/foundation.util.mediaQuery.js","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","_arr","_n","_d","_e","_s","_i","next","done","isArray","parseStyleToObject","styleObject","reduce","ret","param","parts","val","decodeURIComponent","MediaQuery","matchMedia","styleMedia","media","script","getElementsByTagName","info","parentNode","insertBefore","head","appendChild","getComputedStyle","currentStyle","matchMedium","text","styleSheet","cssText","textContent","width","matches","queries","current","isInitialized","self","$meta","appendTo","namedQueries","extractedStyles","css","_getCurrentSize","_watcher","_reInit","atLeast","size","query","only","upTo","nextSize","is","_parts","bpSize","_parts$","bpModifier","Error","queryIndex","findIndex","q","_getQueryName","nextQuery","matched","_this2","off","on","newSize","currentSize","0","jquery","__WEBPACK_EXTERNAL_MODULE__foundation_core__","./foundation.core","./js/entries/plugins/foundation.util.box.js","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","_foundation_util_box__WEBPACK_IMPORTED_MODULE_1__","Box","./js/foundation.util.box.js","ImNotTouchingYou","parent","lrOnly","tbOnly","ignoreBottom","OverlapArea","topOver","bottomOver","leftOver","rightOver","eleDims","GetDimensions","parDims","height","offset","top","left","windowDims","min","sqrt","rect","getBoundingClientRect","parRect","winRect","body","winY","pageYOffset","winX","pageXOffset","parentDims","GetExplicitOffsets","anchor","alignment","vOffset","hOffset","isOverflow","topVal","leftVal","$eleDims","$anchorDims","21","__FOUNDATION_EXTERNAL__","f","u","./js/entries/plugins/foundation.util.imageLoader.js","_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__","onImagesLoaded","./js/foundation.util.imageLoader.js","images","singleImageLoaded","unloaded","complete","naturalWidth","image","Image","events","me","src","22","jQuery","./js/entries/plugins/foundation.util.keyboard.js","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__","Keyboard","./js/foundation.util.keyboard.js","findFocusable","parseKey","keyCodes","keyCode","String","fromCharCode","toUpperCase","shiftKey","ctrlKey","altKey","getKeyCodes","kcs","k","kc","9","13","27","32","35","36","37","38","39","40","commands","handleKey","component","functions","cmds","command","commandList","warn","zfIsKeyHandled","ltr","extend","returnValue","handled","unhandled","register","componentName","trapFocus","$focusable","$firstFocusable","eq","$lastFocusable","preventDefault","focus","releaseFocus","23","./js/entries/plugins/foundation.util.mediaQuery.js","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__","24","./js/entries/plugins/foundation.util.motion.js","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_1__","Motion","Move","./js/foundation.util.motion.js","duration","move","ts","prog","anim","animate","isIn","animation","finish","hide","reset","transitionDuration","initClass","activeClass","initClasses","activeClasses","addClass","show","offsetWidth","animateIn","animateOut","25","./js/entries/plugins/foundation.util.nest.js","_foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__","Nest","./js/foundation.util.nest.js","Feather","menu","role","items","subMenuClass","subItemClass","hasSubClass","applyAria","$item","$sub","children","aria-haspopup","aria-label","aria-expanded","data-submenu","aria-hidden","Burn","26","./js/entries/plugins/foundation.util.timer.js","_foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__","Timer","./js/foundation.util.timer.js","nameSpace","remain","isPaused","restart","infinite","pause","./js/entries/plugins/foundation.util.touch.js","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__","_foundation_core__WEBPACK_IMPORTED_MODULE_2__","init","Touch","./js/foundation.util.touch.js","onTouchEnd","removeEventListener","onTouchMove","didMoved","tapEvent","Event","startEvent","isMoving","spotSwipe","dir","touches","pageX","dx","pageY","startPosX","elapsedTime","startTime","abs","moveThreshold","timeThreshold","assign","onTouchStart","startPosY","SpotSwipe","enabled","special","swipe","setup","tap","noop","setupSpotSwipe","setupTouchHandler","addTouch","handleTouch","simulatedEvent","changedTouches","first","eventTypes","touchmove","touchend","MouseEvent","bubbles","cancelable","clientX","clientY","createEvent","initMouseEvent","dispatchEvent","28","h","v","w","__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__","./foundation.util.motion","./js/entries/plugins/foundation.util.triggers.js","jquery__WEBPACK_IMPORTED_MODULE_1__","jquery__WEBPACK_IMPORTED_MODULE_1___default","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_2__","./js/foundation.util.triggers.js","debounceGlobalListener","debounce","listener","Triggers","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__","MutationObserver","prefixes","triggers","Listeners","Basic","Global","Initializers","openListener","closeListener","toggleListener","closeableListener","stopPropagation","fadeOut","toggleFocusListener","addOpenListener","addCloseListener","addToggleListener","addCloseableListener","addToggleFocusListener","resizeListener","$nodes","scrollListener","closeMeListener","pluginId","not","addClosemeListener","yetiBoxes","plugNames","listeners","join","addResizeListener","addScrollListener","addMutationEventsListener","listeningElementsMutation","mutationRecordsList","$target","attributeName","closest","elementObserver","observe","attributes","childList","characterData","subtree","attributeFilter","addSimpleListeners","$document","addGlobalListeners","triggersInitialized","IHearYou","29","__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__","./foundation.util.keyboard","./js/entries/plugins/foundation.accordion.js","_foundation_accordion__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.accordion.js","_possibleConstructorReturn","_assertThisInitialized","_getPrototypeOf","setPrototypeOf","getPrototypeOf","__proto__","_inherits","subClass","superClass","_setPrototypeOf","Accordion","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__","_Plugin","defaults","ENTER","SPACE","ARROW_DOWN","ARROW_UP","_isInitializing","$tabs","idx","$content","linkId","aria-controls","aria-selected","aria-labelledby","$initActive","_initialAnchor","prev","_openSingleTab","_checkDeepLink","location","hash","$anchor","$link","isOwnAnchor","hasClass","_closeAllTabs","deepLinkSmudge","scrollTop","deepLinkSmudgeOffset","deepLinkSmudgeDelay","deepLink","_events","$tabContent","toggle","$a","multiExpand","previous","up","down","updateHistory","history","pushState","replaceState","_openTab","$targetItem","$othersItems","siblings","allowAllClosed","_closeTab","$activeContents","_this3","targetContentId","slideDown","slideSpeed","_this4","slideUp","$activeTabs","stop","1","__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__","./foundation.util.nest","./js/entries/plugins/foundation.accordionMenu.js","_foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.accordionMenu.js","AccordionMenu","_foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__","ARROW_RIGHT","ARROW_LEFT","ESCAPE","aria-multiselectable","multiOpen","$menuLinks","subId","isActive","parentLink","clone","prependTo","wrap","submenuToggle","after","submenuToggleText","initPanes","$submenu","$prevElement","$nextElement","$elements","parents","open","close","closeAll","hideAll","$targetBranch","parentsUntil","add","$othersActiveSubmenus","$submenus","$allmenus","detach","remove","__WEBPACK_EXTERNAL_MODULE__foundation_util_box__","./foundation.util.box","./js/entries/plugins/foundation.drilldown.js","_foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.drilldown.js","Drilldown","_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__","TAB","SHIFT_TAB","autoApplyClass","$submenuAnchors","$menuItems","$currentMenu","_prepareMenu","_registerEvents","_keyboardEvents","tabindex","$menu","$back","backButtonPosition","append","backButton","prepend","_back","autoHeight","$wrapper","wrapper","animateHeight","_getMaxDims","max-width","min-height","_show","closeOnClick","$body","contains","_hideAll","_bindHandler","_scrollTop","_resize","$scrollTopElement","scrollTopElement","scrollPos","parseInt","scrollTopOffset","animationDuration","animationEasing","_hide","calcHeight","parentSubMenu","autoFocus","$expandedSubmenus","index","_setHideSubMenuClasses","isLastChild","_setShowSubMenuClasses","blur","maxHeight","result","unwrap","__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__","./foundation.util.touch","./js/entries/plugins/foundation.dropdown.js","_foundation_dropdown__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.dropdown.js","_get","receiver","Reflect","base","_superPropBase","desc","getOwnPropertyDescriptor","Dropdown","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__","_foundation_positionable__WEBPACK_IMPORTED_MODULE_3__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__","_Positionable","$id","$anchors","data-is-focus","data-yeti-box","_setCurrentAnchor","parentClass","$parent","$currentAnchor","data-resize","horizontalPosition","hasTouch","ontouchstart","open.zf.trigger","close.zf.trigger","toggle.zf.trigger","resizeme.zf.trigger","_setPosition","forceFollow","hover","bodyData","whatinput","timeout","hoverDelay","hoverPane","_addBodyHandler","allowOverlap","allowBottomOverlap","./js/foundation.positionable.js","nextItem","item","array","currentIdx","Positionable","_foundation_util_box__WEBPACK_IMPORTED_MODULE_0__","POSITIONS","VERTICAL_ALIGNMENTS","HORIZONTAL_ALIGNMENTS","ALIGNMENTS","right","bottom","triedPositions","_getDefaultPosition","_getDefaultAlignment","originalPosition","originalAlignment","_alignmentsExhausted","_realign","_addTriedPosition","isExhausted","_getVOffset","_getHOffset","minOverlap","minCoordinates","_positionsExhausted","overlap","_reposition","./js/entries/plugins/foundation.dropdownMenu.js","_foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.dropdownMenu.js","DropdownMenu","_foundation_util_nest__WEBPACK_IMPORTED_MODULE_3__","subs","verticalClass","rightClass","changed","parClass","handleClickFn","hasSub","hasClicked","clickOpen","stopImmediatePropagation","closeOnClickInside","disableHover","autoclose","closingTime","isTab","nextSibling","prevSibling","openSub","closeSub","_isVertical","_isRtl","_removeBodyHandler","isItself","$sibs","clear","oldClass","$parentLi","$toClose","somethingToClose","$activeItem","data-is-click","5","__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__","./foundation.util.mediaQuery","./js/entries/plugins/foundation.offcanvas.js","_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.offcanvas.js","OffCanvas","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__","contentClasses","reveal","$lastTrigger","$triggers","nested","$sticky","isInCanvas","contentId","contentOverlay","overlay","overlayPosition","$overlay","insertAfter","revealOnRegExp","RegExp","revealClass","revealOnClass","isRevealed","revealOn","_setMQChecker","transitionTime","contentScroll","inCanvasFor","inCanvasOn","_checkInCanvas","_removeContentClasses","keydown.zf.offCanvas","_handleKeyboard","click.zf.offCanvas","onLoadListener","hasReveal","_","absoluteTopVal","stickyData","_addContentClasses","scrollHeight","clientHeight","allowUp","allowDown","lastY","originalEvent","hasAttribute","forceTo","scrollTo","_stopScrolling","_recordScrollable","_stopScrollPropagation","canvasFocus","_fixStickyElements","_this5","_unfixStickyElements","_this6","__WEBPACK_EXTERNAL_MODULE__foundation_accordionMenu__","__WEBPACK_EXTERNAL_MODULE__foundation_drilldown__","__WEBPACK_EXTERNAL_MODULE__foundation_dropdownMenu__","./foundation.accordionMenu","./foundation.drilldown","./foundation.dropdownMenu","./js/entries/plugins/foundation.responsiveMenu.js","_foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.responsiveMenu.js","ResponsiveMenu","_foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_3__","_foundation_drilldown__WEBPACK_IMPORTED_MODULE_4__","_foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_5__","MenuPlugins","dropdown","cssClass","drilldown","accordion","rules","currentMq","currentPlugin","rulesTree","rule","ruleSize","rulePlugin","isEmptyObject","_checkMediaQueries","matchedMq","destroy","12","./js/entries/plugins/foundation.responsiveToggle.js","_foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.responsiveToggle.js","ResponsiveToggle","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__","targetID","$targetMenu","$toggler","input","animationIn","animationOut","_update","_updateMqHandler","toggleMenu","hideFor","./js/entries/plugins/foundation.reveal.js","_foundation_reveal__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.reveal.js","Reveal","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_6__","cached","mq","fullScreen","_makeOverlay","additionalOverlayClasses","outerWidth","outerHeight","margin","_updatePosition","_handleState","$activeAnchor","visibility","multipleOpened","_disableScroll","afterAnimation","_addGlobalClasses","focusableElements","showDelay","_addGlobalListeners","updateScrollbarClass","toggleClass","closeOnEsc","finishUp","_removeGlobalClasses","_enableScroll","hideDelay","resetOnClose","html","urlWithoutHash","pathname","search","title","14","./js/entries/plugins/foundation.smoothScroll.js","_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.smoothScroll.js","SmoothScroll","_linkClickListener","_handleLinkClick","arrival","getAttribute","_inTransition","scrollToLoc","loc","$loc","round","threshold","16","__WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__","./foundation.smoothScroll","./js/entries/plugins/foundation.magellan.js","_foundation_magellan__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.magellan.js","Magellan","_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_3__","calcPoints","$targets","$links","data-scroll","$active","points","winHeight","innerHeight","docHeight","offsetHeight","$tar","pt","targetPoint","deepLinking","_updateActive","scrollme.zf.trigger","_deepLinkScroll","newScrollPos","isScrollingUp","activeIdx","visibleLinks","$oldActive","activeHash","isNewActive","isNewHash","url","8","./js/entries/plugins/foundation.sticky.js","_foundation_sticky__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.sticky.js","emCalc","em","fontSize","Sticky","$container","wasWrapped","container","containerClass","stickyClass","data-mutate","scrollCount","checkEvery","isStuck","containerHeight","elemHeight","_parsePoints","_setSizes","scroll","_calc","_removeSticky","topPoint","reverse","topAnchor","btm","btmAnchor","pts","breaks","place","isOn","canStick","_eventsHandler","_pauseListeners","checkSizes","bottomPoint","_setSticky","stickTo","mrgn","notStuckTo","isTop","stickToTop","anchorPt","anchorHeight","topOrBottom","stickyOn","newElemWidth","comp","pdngl","pdngr","dynamicHeight","newContainerHeight","_setBreakPoints","mTop","marginTop","mBtm","marginBottom","17","__WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__","./foundation.util.imageLoader","./js/entries/plugins/foundation.tabs.js","_foundation_tabs__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.tabs.js","Tabs","_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_3__","$tabTitles","linkClass","linkActiveClass","matchHeight","$images","_setHeight","anchorNoHash","selectTab","_collapse","_addKeyHandler","_addClickHandler","_setHeightMqHandler","_handleTabChange","wrapOnKeys","last","historyHandled","activeCollapse","$oldTab","$tabLink","$targetContent","_collapseTab","panelActiveClass","$target_anchor","$activeTab","idStr","hashIdStr","panelClass","panel","display","temp","18","__WEBPACK_EXTERNAL_MODULE__foundation_accordion__","__WEBPACK_EXTERNAL_MODULE__foundation_tabs__","./foundation.accordion","./foundation.tabs","./js/entries/plugins/foundation.responsiveAccordionTabs.js","_foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.responsiveAccordionTabs.js","ResponsiveAccordionTabs","_foundation_accordion__WEBPACK_IMPORTED_MODULE_3__","_foundation_tabs__WEBPACK_IMPORTED_MODULE_4__","tabs","storezfData","currentRule","_getAllOptions","allOptions","dummyPlugin","tmpPlugin","keyKey","objObj","_changedZfMediaQueryHandler","_handleMarkup","toSet","fromString","$panels","tabsTitle","tabsPanel","$liHeads","$liHeadsA","$tabsContent","$placeholder","tempValue","_target","_this$currentRule","_this$currentRule2","_this$currentRule3","11","objectFitImages","createPlaceholder","polyfillCurrentSrc","srcset","supportsCurrentSrc","picturefill","pf","evaled","fillImg","reselect","curSrc","supported","currentSrc","getStyle","parsed","fontFamily","propRegex","setPlaceholder","img","placeholder","nativeGetAttribute","nativeSetAttribute","onImageReady","fixOne","ofi","OFI","skipTest","supportsObjectFit","naturalHeight","keepSrcUsable","backgroundImage","backgroundPosition","backgroundRepeat","backgroundOrigin","backgroundSize","descriptors","set","ss","hijackAttributes","getOfiImageMaybe","supportsObjectPosition","HTMLImageElement","fix","imgs","startAutoMode","autoModeEnabled","supportsOFI","querySelectorAll","tagName","watchMQ","testImg","object-position","ready","isSlickLoaded","slick","currentBreakpoint","innerWidth","imageRatio","mediumBreakpoint","largeBreakpoint","select","mouseup","offset_opacity","scroll_top_duration","$back_to_top","clickElem","getScript","hbspt","forms","portalId","formId","formInstanceId","bimNavOffset","bimNav","oldSize","twentytwenty","no_overlay","$awardsBox","isotope","itemSelector","filterValue","hidePagination","showPagination","paginationTimer","bimTabImagesInit","speed","arrows","autoplay","autoplaySpeed","fade","pauseOnHover","pauseOnFocus","draggable","bimTabImagesDestroy","dots","adaptiveHeight","currentSlide","nextSlide","slideCount","prevArrow","nextArrow","direction","slidesToShow","slidesToScroll","responsive","breakpoint","settings","nextSlideOffset","lastSlide","lastSlideWidth","lastSlideOffset","lastSlideRightSide","swipeToSlide","touchThreshold","variableWidth","initBimTabsSlick","clickTab","destroyBimTabsSlick","initFCSTabsSlick","$tabsSlider","centerMode","click","slideIndex","load","$this","ajax","WPURLS","ajaxurl","action","beforeSend","success","response"],"mappings":"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","file":"scripts.js","sourcesContent":["/**\n * what-input - A global utility for tracking the current input method (mouse, keyboard or touch).\n * @version v4.3.1\n * @link https://github.com/ten1seven/what-input\n * @license MIT\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"whatInput\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"whatInput\"] = factory();\n\telse\n\t\troot[\"whatInput\"] = factory();\n})(this, function() {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId])\n/*/ \t\t\treturn installedModules[moduleId].exports;\n\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\texports: {},\n/*/ \t\t\tid: moduleId,\n/*/ \t\t\tloaded: false\n/*/ \t\t};\n\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.loaded = true;\n\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n\n\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(0);\n/*/ })\n/**/\n/*/ ([\n/* 0 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\n\tmodule.exports = function () {\n\t /*\n\t * variables\n\t */\n\n\t // last used input type\n\t var currentInput = 'initial';\n\n\t // last used input intent\n\t var currentIntent = null;\n\n\t // cache document.documentElement\n\t var doc = document.documentElement;\n\n\t // form input types\n\t var formInputs = ['input', 'select', 'textarea'];\n\n\t var functionList = [];\n\n\t // list of modifier keys commonly used with the mouse and\n\t // can be safely ignored to prevent false keyboard detection\n\t var ignoreMap = [16, // shift\n\t 17, // control\n\t 18, // alt\n\t 91, // Windows key / left Apple cmd\n\t 93 // Windows menu / right Apple cmd\n\t ];\n\n\t // list of keys for which we change intent even for form inputs\n\t var changeIntentMap = [9 // tab\n\t ];\n\n\t // mapping of events to input types\n\t var inputMap = {\n\t keydown: 'keyboard',\n\t keyup: 'keyboard',\n\t mousedown: 'mouse',\n\t mousemove: 'mouse',\n\t MSPointerDown: 'pointer',\n\t MSPointerMove: 'pointer',\n\t pointerdown: 'pointer',\n\t pointermove: 'pointer',\n\t touchstart: 'touch'\n\t };\n\n\t // array of all used input types\n\t var inputTypes = [];\n\n\t // boolean: true if touch buffer is active\n\t var isBuffering = false;\n\n\t // boolean: true if the page is being scrolled\n\t var isScrolling = false;\n\n\t // store current mouse position\n\t var mousePos = {\n\t x: null,\n\t y: null\n\t };\n\n\t // map of IE 10 pointer events\n\t var pointerMap = {\n\t 2: 'touch',\n\t 3: 'touch', // treat pen like touch\n\t 4: 'mouse'\n\t };\n\n\t var supportsPassive = false;\n\n\t try {\n\t var opts = Object.defineProperty({}, 'passive', {\n\t get: function get() {\n\t supportsPassive = true;\n\t }\n\t });\n\n\t window.addEventListener('test', null, opts);\n\t } catch (e) {}\n\n\t /*\n\t * set up\n\t */\n\n\t var setUp = function setUp() {\n\t // add correct mouse wheel event mapping to `inputMap`\n\t inputMap[detectWheel()] = 'mouse';\n\n\t addListeners();\n\t setInput();\n\t };\n\n\t /*\n\t * events\n\t */\n\n\t var addListeners = function addListeners() {\n\t // `pointermove`, `MSPointerMove`, `mousemove` and mouse wheel event binding\n\t // can only demonstrate potential, but not actual, interaction\n\t // and are treated separately\n\t var options = supportsPassive ? { passive: true } : false;\n\n\t // pointer events (mouse, pen, touch)\n\t if (window.PointerEvent) {\n\t doc.addEventListener('pointerdown', updateInput);\n\t doc.addEventListener('pointermove', setIntent);\n\t } else if (window.MSPointerEvent) {\n\t doc.addEventListener('MSPointerDown', updateInput);\n\t doc.addEventListener('MSPointerMove', setIntent);\n\t } else {\n\t // mouse events\n\t doc.addEventListener('mousedown', updateInput);\n\t doc.addEventListener('mousemove', setIntent);\n\n\t // touch events\n\t if ('ontouchstart' in window) {\n\t doc.addEventListener('touchstart', touchBuffer, options);\n\t doc.addEventListener('touchend', touchBuffer);\n\t }\n\t }\n\n\t // mouse wheel\n\t doc.addEventListener(detectWheel(), setIntent, options);\n\n\t // keyboard events\n\t doc.addEventListener('keydown', updateInput);\n\t doc.addEventListener('keyup', updateInput);\n\t };\n\n\t // checks conditions before updating new input\n\t var updateInput = function updateInput(event) {\n\t // only execute if the touch buffer timer isn't running\n\t if (!isBuffering) {\n\t var eventKey = event.which;\n\t var value = inputMap[event.type];\n\t if (value === 'pointer') value = pointerType(event);\n\n\t if (currentInput !== value || currentIntent !== value) {\n\t var activeElem = document.activeElement;\n\t var activeInput = false;\n\t var notFormInput = activeElem && activeElem.nodeName && formInputs.indexOf(activeElem.nodeName.toLowerCase()) === -1;\n\n\t if (notFormInput || changeIntentMap.indexOf(eventKey) !== -1) {\n\t activeInput = true;\n\t }\n\n\t if (value === 'touch' ||\n\t // ignore mouse modifier keys\n\t value === 'mouse' ||\n\t // don't switch if the current element is a form input\n\t value === 'keyboard' && eventKey && activeInput && ignoreMap.indexOf(eventKey) === -1) {\n\t // set the current and catch-all variable\n\t currentInput = currentIntent = value;\n\n\t setInput();\n\t }\n\t }\n\t }\n\t };\n\n\t // updates the doc and `inputTypes` array with new input\n\t var setInput = function setInput() {\n\t doc.setAttribute('data-whatinput', currentInput);\n\t doc.setAttribute('data-whatintent', currentInput);\n\n\t if (inputTypes.indexOf(currentInput) === -1) {\n\t inputTypes.push(currentInput);\n\t doc.className += ' whatinput-types-' + currentInput;\n\t }\n\n\t fireFunctions('input');\n\t };\n\n\t // updates input intent for `mousemove` and `pointermove`\n\t var setIntent = function setIntent(event) {\n\t // test to see if `mousemove` happened relative to the screen\n\t // to detect scrolling versus mousemove\n\t if (mousePos['x'] !== event.screenX || mousePos['y'] !== event.screenY) {\n\t isScrolling = false;\n\n\t mousePos['x'] = event.screenX;\n\t mousePos['y'] = event.screenY;\n\t } else {\n\t isScrolling = true;\n\t }\n\n\t // only execute if the touch buffer timer isn't running\n\t // or scrolling isn't happening\n\t if (!isBuffering && !isScrolling) {\n\t var value = inputMap[event.type];\n\t if (value === 'pointer') value = pointerType(event);\n\n\t if (currentIntent !== value) {\n\t currentIntent = value;\n\n\t doc.setAttribute('data-whatintent', currentIntent);\n\n\t fireFunctions('intent');\n\t }\n\t }\n\t };\n\n\t // buffers touch events because they frequently also fire mouse events\n\t var touchBuffer = function touchBuffer(event) {\n\t if (event.type === 'touchstart') {\n\t isBuffering = false;\n\n\t // set the current input\n\t updateInput(event);\n\t } else {\n\t isBuffering = true;\n\t }\n\t };\n\n\t var fireFunctions = function fireFunctions(type) {\n\t for (var i = 0, len = functionList.length; i < len; i++) {\n\t if (functionList[i].type === type) {\n\t functionList[i].fn.call(undefined, currentIntent);\n\t }\n\t }\n\t };\n\n\t /*\n\t * utilities\n\t */\n\n\t var pointerType = function pointerType(event) {\n\t if (typeof event.pointerType === 'number') {\n\t return pointerMap[event.pointerType];\n\t } else {\n\t // treat pen like touch\n\t return event.pointerType === 'pen' ? 'touch' : event.pointerType;\n\t }\n\t };\n\n\t // detect version of mouse wheel event to use\n\t // via https://developer.mozilla.org/en-US/docs/Web/Events/wheel\n\t var detectWheel = function detectWheel() {\n\t var wheelType = void 0;\n\n\t // Modern browsers support \"wheel\"\n\t if ('onwheel' in document.createElement('div')) {\n\t wheelType = 'wheel';\n\t } else {\n\t // Webkit and IE support at least \"mousewheel\"\n\t // or assume that remaining browsers are older Firefox\n\t wheelType = document.onmousewheel !== undefined ? 'mousewheel' : 'DOMMouseScroll';\n\t }\n\n\t return wheelType;\n\t };\n\n\t var objPos = function objPos(match) {\n\t for (var i = 0, len = functionList.length; i < len; i++) {\n\t if (functionList[i].fn === match) {\n\t return i;\n\t }\n\t }\n\t };\n\n\t /*\n\t * init\n\t */\n\n\t // don't start script unless browser cuts the mustard\n\t // (also passes if polyfills are used)\n\t if ('addEventListener' in window && Array.prototype.indexOf) {\n\t setUp();\n\t }\n\n\t /*\n\t * api\n\t */\n\n\t return {\n\t // returns string: the current input type\n\t // opt: 'loose'|'strict'\n\t // 'strict' (default): returns the same value as the `data-whatinput` attribute\n\t // 'loose': includes `data-whatintent` value if it's more current than `data-whatinput`\n\t ask: function ask(opt) {\n\t return opt === 'loose' ? currentIntent : currentInput;\n\t },\n\n\t // returns array: all the detected input types\n\t types: function types() {\n\t return inputTypes;\n\t },\n\n\t // overwrites ignored keys with provided array\n\t ignoreKeys: function ignoreKeys(arr) {\n\t ignoreMap = arr;\n\t },\n\n\t // attach functions to input and intent \"events\"\n\t // funct: function to fire on change\n\t // eventType: 'input'|'intent'\n\t registerOnChange: function registerOnChange(fn, eventType) {\n\t functionList.push({\n\t fn: fn,\n\t type: eventType || 'input'\n\t });\n\t },\n\n\t unRegisterOnChange: function unRegisterOnChange(fn) {\n\t var position = objPos(fn);\n\n\t if (position) {\n\t functionList.splice(position, 1);\n\t }\n\t }\n\t };\n\t}();\n\n/***/ }\n/*/ ])\n});\n;","/**\n * what-input - A global utility for tracking the current input method (mouse, keyboard or touch).\n * @version v4.3.1\n * @link https://github.com/ten1seven/what-input\n * @license MIT\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"whatInput\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"whatInput\"] = factory();\n\telse\n\t\troot[\"whatInput\"] = factory();\n})(this, function() {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId])\n/*/ \t\t\treturn installedModules[moduleId].exports;\n\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\texports: {},\n/*/ \t\t\tid: moduleId,\n/*/ \t\t\tloaded: false\n/*/ \t\t};\n\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.loaded = true;\n\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n\n\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(0);\n/*/ })\n/**/\n/*/ ([\n/* 0 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\n\tmodule.exports = function () {\n\t /*\n\t * variables\n\t */\n\n\t // last used input type\n\t var currentInput = 'initial';\n\n\t // last used input intent\n\t var currentIntent = null;\n\n\t // cache document.documentElement\n\t var doc = document.documentElement;\n\n\t // form input types\n\t var formInputs = ['input', 'select', 'textarea'];\n\n\t var functionList = [];\n\n\t // list of modifier keys commonly used with the mouse and\n\t // can be safely ignored to prevent false keyboard detection\n\t var ignoreMap = [16, // shift\n\t 17, // control\n\t 18, // alt\n\t 91, // Windows key / left Apple cmd\n\t 93 // Windows menu / right Apple cmd\n\t ];\n\n\t // list of keys for which we change intent even for form inputs\n\t var changeIntentMap = [9 // tab\n\t ];\n\n\t // mapping of events to input types\n\t var inputMap = {\n\t keydown: 'keyboard',\n\t keyup: 'keyboard',\n\t mousedown: 'mouse',\n\t mousemove: 'mouse',\n\t MSPointerDown: 'pointer',\n\t MSPointerMove: 'pointer',\n\t pointerdown: 'pointer',\n\t pointermove: 'pointer',\n\t touchstart: 'touch'\n\t };\n\n\t // array of all used input types\n\t var inputTypes = [];\n\n\t // boolean: true if touch buffer is active\n\t var isBuffering = false;\n\n\t // boolean: true if the page is being scrolled\n\t var isScrolling = false;\n\n\t // store current mouse position\n\t var mousePos = {\n\t x: null,\n\t y: null\n\t };\n\n\t // map of IE 10 pointer events\n\t var pointerMap = {\n\t 2: 'touch',\n\t 3: 'touch', // treat pen like touch\n\t 4: 'mouse'\n\t };\n\n\t var supportsPassive = false;\n\n\t try {\n\t var opts = Object.defineProperty({}, 'passive', {\n\t get: function get() {\n\t supportsPassive = true;\n\t }\n\t });\n\n\t window.addEventListener('test', null, opts);\n\t } catch (e) {}\n\n\t /*\n\t * set up\n\t */\n\n\t var setUp = function setUp() {\n\t // add correct mouse wheel event mapping to `inputMap`\n\t inputMap[detectWheel()] = 'mouse';\n\n\t addListeners();\n\t setInput();\n\t };\n\n\t /*\n\t * events\n\t */\n\n\t var addListeners = function addListeners() {\n\t // `pointermove`, `MSPointerMove`, `mousemove` and mouse wheel event binding\n\t // can only demonstrate potential, but not actual, interaction\n\t // and are treated separately\n\t var options = supportsPassive ? { passive: true } : false;\n\n\t // pointer events (mouse, pen, touch)\n\t if (window.PointerEvent) {\n\t doc.addEventListener('pointerdown', updateInput);\n\t doc.addEventListener('pointermove', setIntent);\n\t } else if (window.MSPointerEvent) {\n\t doc.addEventListener('MSPointerDown', updateInput);\n\t doc.addEventListener('MSPointerMove', setIntent);\n\t } else {\n\t // mouse events\n\t doc.addEventListener('mousedown', updateInput);\n\t doc.addEventListener('mousemove', setIntent);\n\n\t // touch events\n\t if ('ontouchstart' in window) {\n\t doc.addEventListener('touchstart', touchBuffer, options);\n\t doc.addEventListener('touchend', touchBuffer);\n\t }\n\t }\n\n\t // mouse wheel\n\t doc.addEventListener(detectWheel(), setIntent, options);\n\n\t // keyboard events\n\t doc.addEventListener('keydown', updateInput);\n\t doc.addEventListener('keyup', updateInput);\n\t };\n\n\t // checks conditions before updating new input\n\t var updateInput = function updateInput(event) {\n\t // only execute if the touch buffer timer isn't running\n\t if (!isBuffering) {\n\t var eventKey = event.which;\n\t var value = inputMap[event.type];\n\t if (value === 'pointer') value = pointerType(event);\n\n\t if (currentInput !== value || currentIntent !== value) {\n\t var activeElem = document.activeElement;\n\t var activeInput = false;\n\t var notFormInput = activeElem && activeElem.nodeName && formInputs.indexOf(activeElem.nodeName.toLowerCase()) === -1;\n\n\t if (notFormInput || changeIntentMap.indexOf(eventKey) !== -1) {\n\t activeInput = true;\n\t }\n\n\t if (value === 'touch' ||\n\t // ignore mouse modifier keys\n\t value === 'mouse' ||\n\t // don't switch if the current element is a form input\n\t value === 'keyboard' && eventKey && activeInput && ignoreMap.indexOf(eventKey) === -1) {\n\t // set the current and catch-all variable\n\t currentInput = currentIntent = value;\n\n\t setInput();\n\t }\n\t }\n\t }\n\t };\n\n\t // updates the doc and `inputTypes` array with new input\n\t var setInput = function setInput() {\n\t doc.setAttribute('data-whatinput', currentInput);\n\t doc.setAttribute('data-whatintent', currentInput);\n\n\t if (inputTypes.indexOf(currentInput) === -1) {\n\t inputTypes.push(currentInput);\n\t doc.className += ' whatinput-types-' + currentInput;\n\t }\n\n\t fireFunctions('input');\n\t };\n\n\t // updates input intent for `mousemove` and `pointermove`\n\t var setIntent = function setIntent(event) {\n\t // test to see if `mousemove` happened relative to the screen\n\t // to detect scrolling versus mousemove\n\t if (mousePos['x'] !== event.screenX || mousePos['y'] !== event.screenY) {\n\t isScrolling = false;\n\n\t mousePos['x'] = event.screenX;\n\t mousePos['y'] = event.screenY;\n\t } else {\n\t isScrolling = true;\n\t }\n\n\t // only execute if the touch buffer timer isn't running\n\t // or scrolling isn't happening\n\t if (!isBuffering && !isScrolling) {\n\t var value = inputMap[event.type];\n\t if (value === 'pointer') value = pointerType(event);\n\n\t if (currentIntent !== value) {\n\t currentIntent = value;\n\n\t doc.setAttribute('data-whatintent', currentIntent);\n\n\t fireFunctions('intent');\n\t }\n\t }\n\t };\n\n\t // buffers touch events because they frequently also fire mouse events\n\t var touchBuffer = function touchBuffer(event) {\n\t if (event.type === 'touchstart') {\n\t isBuffering = false;\n\n\t // set the current input\n\t updateInput(event);\n\t } else {\n\t isBuffering = true;\n\t }\n\t };\n\n\t var fireFunctions = function fireFunctions(type) {\n\t for (var i = 0, len = functionList.length; i < len; i++) {\n\t if (functionList[i].type === type) {\n\t functionList[i].fn.call(undefined, currentIntent);\n\t }\n\t }\n\t };\n\n\t /*\n\t * utilities\n\t */\n\n\t var pointerType = function pointerType(event) {\n\t if (typeof event.pointerType === 'number') {\n\t return pointerMap[event.pointerType];\n\t } else {\n\t // treat pen like touch\n\t return event.pointerType === 'pen' ? 'touch' : event.pointerType;\n\t }\n\t };\n\n\t // detect version of mouse wheel event to use\n\t // via https://developer.mozilla.org/en-US/docs/Web/Events/wheel\n\t var detectWheel = function detectWheel() {\n\t var wheelType = void 0;\n\n\t // Modern browsers support \"wheel\"\n\t if ('onwheel' in document.createElement('div')) {\n\t wheelType = 'wheel';\n\t } else {\n\t // Webkit and IE support at least \"mousewheel\"\n\t // or assume that remaining browsers are older Firefox\n\t wheelType = document.onmousewheel !== undefined ? 'mousewheel' : 'DOMMouseScroll';\n\t }\n\n\t return wheelType;\n\t };\n\n\t var objPos = function objPos(match) {\n\t for (var i = 0, len = functionList.length; i < len; i++) {\n\t if (functionList[i].fn === match) {\n\t return i;\n\t }\n\t }\n\t };\n\n\t /*\n\t * init\n\t */\n\n\t // don't start script unless browser cuts the mustard\n\t // (also passes if polyfills are used)\n\t if ('addEventListener' in window && Array.prototype.indexOf) {\n\t setUp();\n\t }\n\n\t /*\n\t * api\n\t */\n\n\t return {\n\t // returns string: the current input type\n\t // opt: 'loose'|'strict'\n\t // 'strict' (default): returns the same value as the `data-whatinput` attribute\n\t // 'loose': includes `data-whatintent` value if it's more current than `data-whatinput`\n\t ask: function ask(opt) {\n\t return opt === 'loose' ? currentIntent : currentInput;\n\t },\n\n\t // returns array: all the detected input types\n\t types: function types() {\n\t return inputTypes;\n\t },\n\n\t // overwrites ignored keys with provided array\n\t ignoreKeys: function ignoreKeys(arr) {\n\t ignoreMap = arr;\n\t },\n\n\t // attach functions to input and intent \"events\"\n\t // funct: function to fire on change\n\t // eventType: 'input'|'intent'\n\t registerOnChange: function registerOnChange(fn, eventType) {\n\t functionList.push({\n\t fn: fn,\n\t type: eventType || 'input'\n\t });\n\t },\n\n\t unRegisterOnChange: function unRegisterOnChange(fn) {\n\t var position = objPos(fn);\n\n\t if (position) {\n\t functionList.splice(position, 1);\n\t }\n\t }\n\t };\n\t}();\n\n/***/ }\n/*/ ])\n});\n;\n'use strict';var _typeof2=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof2(module))==='object')module.exports=factory(require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"foundation.core\"]=factory(require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"]=factory(root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof2(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=0);/*/}(/**//*/{/***/\"./js/entries/plugins/foundation.core.js\":/*!**!*\\\n !*** ./js/entries/plugins/foundation.core.js ***!\n \\**//*! exports provided: Foundation, Plugin, rtl, GetYoDigits, RegExpEscape, transitionend, onLoad, ignoreMousedisappear *//***/function jsEntriesPluginsFoundationCoreJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.core */\"./js/foundation.core.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"];});/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ../../foundation.core.plugin */\"./js/foundation.core.plugin.js\");/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ../../foundation.core.utils */\"./js/foundation.core.utils.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Plugin\",function(){return _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"];});/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"rtl\",function(){return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"rtl\"];});/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"GetYoDigits\",function(){return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"GetYoDigits\"];});/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"RegExpEscape\",function(){return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"RegExpEscape\"];});/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"transitionend\",function(){return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"];});/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"onLoad\",function(){return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"onLoad\"];});/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"ignoreMousedisappear\",function(){return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"ignoreMousedisappear\"];});// --- Foundation Core API ---\n// Initialize Foundation and add some utilities to its public API for backward compatibility.\n// Please note that every utility do not have to be added to the core API.\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].addToJquery(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);// Every plugin depends on plugin now, we can include that on the core for the\n// script inclusion path.\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].Plugin=_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"];// These are now separated out, but historically were a part of this module,\n// and since this is here for backwards compatibility we include them in\n// this entry.\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].rtl=_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"rtl\"];_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].GetYoDigits=_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"GetYoDigits\"];_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].transitionend=_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"];_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].RegExpEscape=_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"RegExpEscape\"];_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].onLoad=_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"onLoad\"];window.Foundation=_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"];// --- Foundation Core exports ---\n// Export \"Plugin\" and all core utilities, since the `foundation.core` entry plays the role of\n// all core source files.\n/***/},/***/\"./js/foundation.core.js\":/*!*!*\\\n !*** ./js/foundation.core.js ***!\n \\*//*! exports provided: Foundation *//***/function jsFoundationCoreJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return Foundation;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.core.utils */\"./js/foundation.core.utils.js\");/* harmony import */var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.util.mediaQuery */\"./js/foundation.util.mediaQuery.js\");function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}var FOUNDATION_VERSION='6.6.3';// Global Foundation object\n// This is attached to the window, or used as a module for AMD/Browserify\nvar Foundation={version:FOUNDATION_VERSION,/**\n * Stores initialized plugins.\n */_plugins:{},/**\n * Stores generated unique ids for plugin instances\n */_uuids:[],/**\n * Defines a Foundation plugin, adding it to the `Foundation` namespace and the list of plugins to initialize when reflowing.\n * @param {Object} plugin - The constructor of the plugin.\n */plugin:function plugin(_plugin,name){// Object key to use when adding to global Foundation object\n// Examples: Foundation.Reveal, Foundation.OffCanvas\nvar className=name||functionName(_plugin);// Object key to use when storing the plugin, also used to create the identifying data attribute for the plugin\n// Examples: data-reveal, data-off-canvas\nvar attrName=hyphenate(className);// Add to the Foundation object and the plugins list (for reflowing)\nthis._plugins[attrName]=this[className]=_plugin;},/**\n * @function\n * Populates the _uuids array with pointers to each individual plugin instance.\n * Adds the `zfPlugin` data-attribute to programmatically created plugins to allow use of $(selector).foundation(method) calls.\n * Also fires the initialization event for each plugin, consolidating repetitive code.\n * @param {Object} plugin - an instance of a plugin, usually `this` in context.\n * @param {String} name - the name of the plugin, passed as a camelCased string.\n * @fires Plugin#init\n */registerPlugin:function registerPlugin(plugin,name){var pluginName=name?hyphenate(name):functionName(plugin.constructor).toLowerCase();plugin.uuid=Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"GetYoDigits\"])(6,pluginName);if(!plugin.$element.attr(\"data-\".concat(pluginName))){plugin.$element.attr(\"data-\".concat(pluginName),plugin.uuid);}if(!plugin.$element.data('zfPlugin')){plugin.$element.data('zfPlugin',plugin);}/**\n * Fires when the plugin has initialized.\n * @event Plugin#init\n */plugin.$element.trigger(\"init.zf.\".concat(pluginName));this._uuids.push(plugin.uuid);return;},/**\n * @function\n * Removes the plugins uuid from the _uuids array.\n * Removes the zfPlugin data attribute, as well as the data-plugin-name attribute.\n * Also fires the destroyed event for the plugin, consolidating repetitive code.\n * @param {Object} plugin - an instance of a plugin, usually `this` in context.\n * @fires Plugin#destroyed\n */unregisterPlugin:function unregisterPlugin(plugin){var pluginName=hyphenate(functionName(plugin.$element.data('zfPlugin').constructor));this._uuids.splice(this._uuids.indexOf(plugin.uuid),1);plugin.$element.removeAttr(\"data-\".concat(pluginName)).removeData('zfPlugin')/**\n * Fires when the plugin has been destroyed.\n * @event Plugin#destroyed\n */.trigger(\"destroyed.zf.\".concat(pluginName));for(var prop in plugin){plugin[prop]=null;//clean up script to prep for garbage collection.\n}return;},/**\n * @function\n * Causes one or more active plugins to re-initialize, resetting event listeners, recalculating positions, etc.\n * @param {String} plugins - optional string of an individual plugin key, attained by calling `$(element).data('pluginName')`, or string of a plugin class i.e. `'dropdown'`\n * @default If no argument is passed, reflow all currently active plugins.\n */reInit:function reInit(plugins){var isJQ=plugins instanceof jquery__WEBPACK_IMPORTED_MODULE_0___default.a;try{if(isJQ){plugins.each(function(){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('zfPlugin')._init();});}else{var type=_typeof(plugins),_this=this,fns={'object':function object(plgs){plgs.forEach(function(p){p=hyphenate(p);jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-'+p+']').foundation('_init');});},'string':function string(){plugins=hyphenate(plugins);jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-'+plugins+']').foundation('_init');},'undefined':function undefined(){this['object'](Object.keys(_this._plugins));}};fns[type](plugins);}}catch(err){console.error(err);}finally{return plugins;}},/**\n * Initialize plugins on any elements within `elem` (and `elem` itself) that aren't already initialized.\n * @param {Object} elem - jQuery object containing the element to check inside. Also checks the element itself, unless it's the `document` object.\n * @param {String|Array} plugins - A list of plugins to initialize. Leave this out to initialize everything.\n */reflow:function reflow(elem,plugins){// If plugins is undefined, just grab everything\nif(typeof plugins==='undefined'){plugins=Object.keys(this._plugins);}// If plugins is a string, convert it to an array with one item\nelse if(typeof plugins==='string'){plugins=[plugins];}var _this=this;// Iterate through each plugin\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(plugins,function(i,name){// Get the current plugin\nvar plugin=_this._plugins[name];// Localize the search to all elements inside elem, as well as elem itself, unless elem === document\nvar $elem=jquery__WEBPACK_IMPORTED_MODULE_0___default()(elem).find('[data-'+name+']').addBack('[data-'+name+']').filter(function(){return typeof jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data(\"zfPlugin\")==='undefined';});// For each plugin found, initialize it\n$elem.each(function(){var $el=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),opts={reflow:true};if($el.attr('data-options')){$el.attr('data-options').split(';').forEach(function(option,_index){var opt=option.split(':').map(function(el){return el.trim();});if(opt[0])opts[opt[0]]=parseValue(opt[1]);});}try{$el.data('zfPlugin',new plugin(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),opts));}catch(er){console.error(er);}finally{return;}});});},getFnName:functionName,addToJquery:function addToJquery($){// TODO: consider not making this a jQuery function\n// TODO: need way to reflow vs. re-initialize\n/**\n * The Foundation jQuery method.\n * @param {String|Array} method - An action to perform on the current jQuery object.\n */var foundation=function foundation(method){var type=_typeof(method),$noJS=$('.no-js');if($noJS.length){$noJS.removeClass('no-js');}if(type==='undefined'){//needs to initialize the Foundation object, or an individual plugin.\n_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__[\"MediaQuery\"]._init();Foundation.reflow(this);}else if(type==='string'){//an individual method to invoke on a plugin or group of plugins\nvar args=Array.prototype.slice.call(arguments,1);//collect all the arguments, if necessary\nvar plugClass=this.data('zfPlugin');//determine the class of plugin\nif(typeof plugClass!=='undefined'&&typeof plugClass[method]!=='undefined'){//make sure both the class and method exist\nif(this.length===1){//if there's only one, call it directly.\nplugClass[method].apply(plugClass,args);}else{this.each(function(i,el){//otherwise loop through the jQuery collection and invoke the method on each\nplugClass[method].apply($(el).data('zfPlugin'),args);});}}else{//error for no class or no method\nthrow new ReferenceError(\"We're sorry, '\"+method+\"' is not an available method for \"+(plugClass?functionName(plugClass):'this element')+'.');}}else{//error for invalid argument type\nthrow new TypeError(\"We're sorry, \".concat(type,\" is not a valid parameter. You must use a string representing the method you wish to invoke.\"));}return this;};$.fn.foundation=foundation;return $;}};Foundation.util={/**\n * Function for applying a debounce effect to a function call.\n * @function\n * @param {Function} func - Function to be called at end of timeout.\n * @param {Number} delay - Time in ms to delay the call of `func`.\n * @returns function\n */throttle:function throttle(func,delay){var timer=null;return function(){var context=this,args=arguments;if(timer===null){timer=setTimeout(function(){func.apply(context,args);timer=null;},delay);}};}};window.Foundation=Foundation;// Polyfill for requestAnimationFrame\n(function(){if(!Date.now||!window.Date.now)window.Date.now=Date.now=function(){return new Date().getTime();};var vendors=['webkit','moz'];for(var i=0;i1?results[1].trim():\"\";}else if(typeof fn.prototype==='undefined'){return fn.constructor.name;}else{return fn.prototype.constructor.name;}}function parseValue(str){if('true'===str)return true;else if('false'===str)return false;else if(!isNaN(str*1))return parseFloat(str);return str;}// Convert PascalCase to kebab-case\n// Thank you: http://stackoverflow.com/a/8955580\nfunction hyphenate(str){return str.replace(/([a-z])([A-Z])/g,'$1-$2').toLowerCase();}/***/},/***/\"./js/foundation.core.plugin.js\":/*!***!*\\\n !*** ./js/foundation.core.plugin.js ***!\n \\***//*! exports provided: Plugin *//***/function jsFoundationCorePluginJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Plugin\",function(){return Plugin;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.core.utils */\"./js/foundation.core.utils.js\");function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:6;var namespace=arguments.length>1?arguments[1]:undefined;var str='';var chars='0123456789abcdefghijklmnopqrstuvwxyz';var charsLength=chars.length;for(var i=0;i1&&arguments[1]!==undefined?arguments[1]:{},_ref$ignoreLeaveWindo=_ref.ignoreLeaveWindow,ignoreLeaveWindow=_ref$ignoreLeaveWindo===void 0?false:_ref$ignoreLeaveWindo,_ref$ignoreReappear=_ref.ignoreReappear,ignoreReappear=_ref$ignoreReappear===void 0?false:_ref$ignoreReappear;return function leaveEventHandler(eLeave){for(var _len=arguments.length,rest=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){rest[_key-1]=arguments[_key];}var callback=handler.bind.apply(handler,[this,eLeave].concat(rest));// The mouse left: call the given callback if the mouse entered elsewhere\nif(eLeave.relatedTarget!==null){return callback();}// Otherwise, check if the mouse actually left the window.\n// In firefox if the user switched between windows, the window sill have the focus by the time\n// the event is triggered. We have to debounce the event to test this case.\nsetTimeout(function leaveEventDebouncer(){if(!ignoreLeaveWindow&&document.hasFocus&&!document.hasFocus()){return callback();}// Otherwise, wait for the mouse to reeapear outside of the element,\nif(!ignoreReappear){jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).one('mouseenter',function reenterEventHandler(eReenter){if(!jquery__WEBPACK_IMPORTED_MODULE_0___default()(eLeave.currentTarget).has(eReenter.target).length){// Fill where the mouse finally entered.\neLeave.relatedTarget=eReenter.target;callback();}});}},0);};}/***/},/***/\"./js/foundation.util.mediaQuery.js\":/*!**!*\\\n !*** ./js/foundation.util.mediaQuery.js ***!\n \\**//*! exports provided: MediaQuery *//***/function jsFoundationUtilMediaQueryJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"MediaQuery\",function(){return MediaQuery;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");}function _iterableToArrayLimit(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\"]!=null)_i[\"return\"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}// Default set of media queries\nvar defaultQueries={'default':'only screen',landscape:'only screen and (orientation: landscape)',portrait:'only screen and (orientation: portrait)',retina:'only screen and (-webkit-min-device-pixel-ratio: 2),'+'only screen and (min--moz-device-pixel-ratio: 2),'+'only screen and (-o-min-device-pixel-ratio: 2/1),'+'only screen and (min-device-pixel-ratio: 2),'+'only screen and (min-resolution: 192dpi),'+'only screen and (min-resolution: 2dppx)'};// matchMedia() polyfill - Test a CSS media type/query in JS.\n// Authors & copyright © 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. MIT license\n/* eslint-disable */window.matchMedia||(window.matchMedia=function(){\"use strict\";// For browsers that support matchMedium api such as IE 9 and webkit\nvar styleMedia=window.styleMedia||window.media;// For those that don't support matchMedium\nif(!styleMedia){var style=document.createElement('style'),script=document.getElementsByTagName('script')[0],info=null;style.type='text/css';style.id='matchmediajs-test';if(!script){document.head.appendChild(style);}else{script.parentNode.insertBefore(style,script);}// 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers\ninfo='getComputedStyle'in window&&window.getComputedStyle(style,null)||style.currentStyle;styleMedia={matchMedium:function matchMedium(media){var text='@media '+media+'{ #matchmediajs-test { width: 1px; } }';// 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers\nif(style.styleSheet){style.styleSheet.cssText=text;}else{style.textContent=text;}// Test if media query is true or false\nreturn info.width==='1px';}};}return function(media){return{matches:styleMedia.matchMedium(media||'all'),media:media||'all'};};}());/* eslint-enable */var MediaQuery={queries:[],current:'',/**\n * Initializes the media query helper, by extracting the breakpoint list from the CSS and activating the breakpoint watcher.\n * @function\n * @private\n */_init:function _init(){// make sure the initialization is only done once when calling _init() several times\nif(this.isInitialized===true){return;}else{this.isInitialized=true;}var self=this;var $meta=jquery__WEBPACK_IMPORTED_MODULE_0___default()('meta.foundation-mq');if(!$meta.length){jquery__WEBPACK_IMPORTED_MODULE_0___default()('').appendTo(document.head);}var extractedStyles=jquery__WEBPACK_IMPORTED_MODULE_0___default()('.foundation-mq').css('font-family');var namedQueries;namedQueries=parseStyleToObject(extractedStyles);self.queries=[];// reset\nfor(var key in namedQueries){if(namedQueries.hasOwnProperty(key)){self.queries.push({name:key,value:\"only screen and (min-width: \".concat(namedQueries[key],\")\")});}}this.current=this._getCurrentSize();this._watcher();},/**\n * Reinitializes the media query helper.\n * Useful if your CSS breakpoint configuration has just been loaded or has changed since the initialization.\n * @function\n * @private\n */_reInit:function _reInit(){this.isInitialized=false;this._init();},/**\n * Checks if the screen is at least as wide as a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller.\n */atLeast:function atLeast(size){var query=this.get(size);if(query){return window.matchMedia(query).matches;}return false;},/**\n * Checks if the screen is within the given breakpoint.\n * If smaller than the breakpoint of larger than its upper limit it returns false.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` otherwise.\n */only:function only(size){return size===this._getCurrentSize();},/**\n * Checks if the screen is within a breakpoint or smaller.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's larger.\n */upTo:function upTo(size){var nextSize=this.next(size);// If the next breakpoint does not match, the screen is smaller than\n// the upper limit of this breakpoint.\nif(nextSize){return!this.atLeast(nextSize);}// If there is no next breakpoint, the \"size\" breakpoint does not have\n// an upper limit and the screen will always be within it or smaller.\nreturn true;},/**\n * Checks if the screen matches to a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check, either 'small only' or 'small'. Omitting 'only' falls back to using atLeast() method.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it does not.\n */is:function is(size){var parts=size.trim().split(' ').filter(function(p){return!!p.length;});var _parts=_slicedToArray(parts,2),bpSize=_parts[0],_parts$=_parts[1],bpModifier=_parts$===void 0?'':_parts$;// Only the breakpont\nif(bpModifier==='only'){return this.only(bpSize);}// At least the breakpoint (included)\nif(!bpModifier||bpModifier==='up'){return this.atLeast(bpSize);}// Up to the breakpoint (included)\nif(bpModifier==='down'){return this.upTo(bpSize);}throw new Error(\"\\n Invalid breakpoint passed to MediaQuery.is().\\n Expected a breakpoint name formatted like \\\" \\\", got \\\"\".concat(size,\"\\\".\\n \"));},/**\n * Gets the media query of a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to get.\n * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist.\n */get:function get(size){for(var i in this.queries){if(this.queries.hasOwnProperty(i)){var query=this.queries[i];if(size===query.name)return query.value;}}return null;},/**\n * Get the breakpoint following the given breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint.\n * @returns {String|null} - The name of the following breakpoint, or `null` if the passed breakpoint was the last one.\n */next:function next(size){var _this=this;var queryIndex=this.queries.findIndex(function(q){return _this._getQueryName(q)===size;});if(queryIndex===-1){throw new Error(\"\\n Unknown breakpoint \\\"\".concat(size,\"\\\" passed to MediaQuery.next().\\n Ensure it is present in your Sass \\\"$breakpoints\\\" setting.\\n \"));}var nextQuery=this.queries[queryIndex+1];return nextQuery?nextQuery.name:null;},/**\n * Returns the name of the breakpoint related to the given value.\n * @function\n * @private\n * @param {String|Object} value - Breakpoint name or query object.\n * @returns {String} Name of the breakpoint.\n */_getQueryName:function _getQueryName(value){if(typeof value==='string')return value;if(_typeof(value)==='object')return value.name;throw new TypeError(\"\\n Invalid value passed to MediaQuery._getQueryName().\\n Expected a breakpoint name (String) or a breakpoint query (Object), got \\\"\".concat(value,\"\\\" (\").concat(_typeof(value),\")\\n \"));},/**\n * Gets the current breakpoint name by testing every breakpoint and returning the last one to match (the biggest one).\n * @function\n * @private\n * @returns {String} Name of the current breakpoint.\n */_getCurrentSize:function _getCurrentSize(){var matched;for(var i=0;i').appendTo(document.head);}var extractedStyles=jquery__WEBPACK_IMPORTED_MODULE_0___default()('.foundation-mq').css('font-family');var namedQueries;namedQueries=parseStyleToObject(extractedStyles);self.queries=[];// reset\nfor(var key in namedQueries){if(namedQueries.hasOwnProperty(key)){self.queries.push({name:key,value:\"only screen and (min-width: \".concat(namedQueries[key],\")\")});}}this.current=this._getCurrentSize();this._watcher();},/**\n * Reinitializes the media query helper.\n * Useful if your CSS breakpoint configuration has just been loaded or has changed since the initialization.\n * @function\n * @private\n */_reInit:function _reInit(){this.isInitialized=false;this._init();},/**\n * Checks if the screen is at least as wide as a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller.\n */atLeast:function atLeast(size){var query=this.get(size);if(query){return window.matchMedia(query).matches;}return false;},/**\n * Checks if the screen is within the given breakpoint.\n * If smaller than the breakpoint of larger than its upper limit it returns false.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` otherwise.\n */only:function only(size){return size===this._getCurrentSize();},/**\n * Checks if the screen is within a breakpoint or smaller.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's larger.\n */upTo:function upTo(size){var nextSize=this.next(size);// If the next breakpoint does not match, the screen is smaller than\n// the upper limit of this breakpoint.\nif(nextSize){return!this.atLeast(nextSize);}// If there is no next breakpoint, the \"size\" breakpoint does not have\n// an upper limit and the screen will always be within it or smaller.\nreturn true;},/**\n * Checks if the screen matches to a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check, either 'small only' or 'small'. Omitting 'only' falls back to using atLeast() method.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it does not.\n */is:function is(size){var parts=size.trim().split(' ').filter(function(p){return!!p.length;});var _parts=_slicedToArray(parts,2),bpSize=_parts[0],_parts$=_parts[1],bpModifier=_parts$===void 0?'':_parts$;// Only the breakpont\nif(bpModifier==='only'){return this.only(bpSize);}// At least the breakpoint (included)\nif(!bpModifier||bpModifier==='up'){return this.atLeast(bpSize);}// Up to the breakpoint (included)\nif(bpModifier==='down'){return this.upTo(bpSize);}throw new Error(\"\\n Invalid breakpoint passed to MediaQuery.is().\\n Expected a breakpoint name formatted like \\\" \\\", got \\\"\".concat(size,\"\\\".\\n \"));},/**\n * Gets the media query of a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to get.\n * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist.\n */get:function get(size){for(var i in this.queries){if(this.queries.hasOwnProperty(i)){var query=this.queries[i];if(size===query.name)return query.value;}}return null;},/**\n * Get the breakpoint following the given breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint.\n * @returns {String|null} - The name of the following breakpoint, or `null` if the passed breakpoint was the last one.\n */next:function next(size){var _this=this;var queryIndex=this.queries.findIndex(function(q){return _this._getQueryName(q)===size;});if(queryIndex===-1){throw new Error(\"\\n Unknown breakpoint \\\"\".concat(size,\"\\\" passed to MediaQuery.next().\\n Ensure it is present in your Sass \\\"$breakpoints\\\" setting.\\n \"));}var nextQuery=this.queries[queryIndex+1];return nextQuery?nextQuery.name:null;},/**\n * Returns the name of the breakpoint related to the given value.\n * @function\n * @private\n * @param {String|Object} value - Breakpoint name or query object.\n * @returns {String} Name of the breakpoint.\n */_getQueryName:function _getQueryName(value){if(typeof value==='string')return value;if(_typeof(value)==='object')return value.name;throw new TypeError(\"\\n Invalid value passed to MediaQuery._getQueryName().\\n Expected a breakpoint name (String) or a breakpoint query (Object), got \\\"\".concat(value,\"\\\" (\").concat(_typeof(value),\")\\n \"));},/**\n * Gets the current breakpoint name by testing every breakpoint and returning the last one to match (the biggest one).\n * @function\n * @private\n * @returns {String} Name of the current breakpoint.\n */_getCurrentSize:function _getCurrentSize(){var matched;for(var i=0;i').appendTo(document.head);var e,t=i()(\".foundation-mq\").css(\"font-family\");for(var n in e=function(e){var t={};return\"string\"==typeof e&&(e=e.trim().slice(1,-1))?t=e.split(\"&\").reduce(function(e,t){var n=t.replace(/\\+/g,\" \").split(\"=\"),r=n[0],i=n[1];return r=decodeURIComponent(r),i=void 0===i?null:decodeURIComponent(i),e.hasOwnProperty(r)?Array.isArray(e[r])?e[r].push(i):e[r]=[e[r],i]:e[r]=i,e;},{}):t;}(t),this.queries=[],e){e.hasOwnProperty(n)&&this.queries.push({name:n,value:\"only screen and (min-width: \".concat(e[n],\")\")});}this.current=this._getCurrentSize(),this._watcher();}},_reInit:function _reInit(){this.isInitialized=!1,this._init();},atLeast:function atLeast(e){var t=this.get(e);return!!t&&window.matchMedia(t).matches;},only:function only(e){return e===this._getCurrentSize();},upTo:function upTo(e){var t=this.next(e);return!t||!this.atLeast(t);},is:function is(e){var t=u(e.trim().split(\" \").filter(function(e){return!!e.length;}),2),n=t[0],r=t[1],i=void 0===r?\"\":r;if(\"only\"===i)return this.only(n);if(!i||\"up\"===i)return this.atLeast(n);if(\"down\"===i)return this.upTo(n);throw new Error('\\n Invalid breakpoint passed to MediaQuery.is().\\n Expected a breakpoint name formatted like \" \", got \"'.concat(e,'\".\\n '));},get:function get(e){for(var t in this.queries){if(this.queries.hasOwnProperty(t)){var n=this.queries[t];if(e===n.name)return n.value;}}return null;},next:function next(t){var n=this,e=this.queries.findIndex(function(e){return n._getQueryName(e)===t;});if(-1===e)throw new Error('\\n Unknown breakpoint \"'.concat(t,'\" passed to MediaQuery.next().\\n Ensure it is present in your Sass \"$breakpoints\" setting.\\n '));var r=this.queries[e+1];return r?r.name:null;},_getQueryName:function _getQueryName(e){if(\"string\"==typeof e)return e;if(\"object\"===o(e))return e.name;throw new TypeError('\\n Invalid value passed to MediaQuery._getQueryName().\\n Expected a breakpoint name (String) or a breakpoint query (Object), got \"'.concat(e,'\" (').concat(o(e),\")\\n \"));},_getCurrentSize:function _getCurrentSize(){for(var e,t=0;t1&&arguments[1]!==undefined?arguments[1]:'zf';menu.attr('role','menubar');menu.find('a').attr({'role':'menuitem'});var items=menu.find('li').attr({'role':'none'}),subMenuClass=\"is-\".concat(type,\"-submenu\"),subItemClass=\"\".concat(subMenuClass,\"-item\"),hasSubClass=\"is-\".concat(type,\"-submenu-parent\"),applyAria=type!=='accordion';// Accordions handle their own ARIA attriutes.\nitems.each(function(){var $item=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),$sub=$item.children('ul');if($sub.length){$item.addClass(hasSubClass);if(applyAria){$item.attr({'aria-haspopup':true,'aria-label':$item.children('a:first').text()});// Note: Drilldowns behave differently in how they hide, and so need\n// additional attributes. We should look if this possibly over-generalized\n// utility (Nest) is appropriate when we rework menus in 6.4\nif(type==='drilldown'){$item.attr({'aria-expanded':false});}}$sub.addClass(\"submenu \".concat(subMenuClass)).attr({'data-submenu':'','role':'menubar'});if(type==='drilldown'){$sub.attr({'aria-hidden':true});}}if($item.parent('[data-submenu]').length){$item.addClass(\"is-submenu-item \".concat(subItemClass));}});return;},Burn:function Burn(menu,type){var//items = menu.find('li'),\nsubMenuClass=\"is-\".concat(type,\"-submenu\"),subItemClass=\"\".concat(subMenuClass,\"-item\"),hasSubClass=\"is-\".concat(type,\"-submenu-parent\");menu.find('>li, > li > ul, .menu, .menu > li, [data-submenu] > li').removeClass(\"\".concat(subMenuClass,\" \").concat(subItemClass,\" \").concat(hasSubClass,\" is-submenu-item submenu is-active\")).removeAttr('data-submenu').css('display','');}};/***/},/***/26:/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.util.nest.js ***!\n \\***//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.nest.js */\"./js/entries/plugins/foundation.util.nest.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.util.nest.js.map\n\"use strict\";var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};!function(e,n){\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))&&\"object\"==(typeof module===\"undefined\"?\"undefined\":_typeof(module))?module.exports=n(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],n):\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))?exports[\"foundation.util.nest\"]=n(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.nest\"]=n(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery));}(window,function(t,r){return i={},o.m=u={\"./foundation.core\":function foundationCore(e,n){e.exports=t;},\"./js/entries/plugins/foundation.util.nest.js\":function jsEntriesPluginsFoundationUtilNestJs(e,n,t){\"use strict\";t.r(n);var r=t(\"./foundation.core\");t.d(n,\"Foundation\",function(){return r.Foundation;});var o=t(\"./js/foundation.util.nest.js\");t.d(n,\"Nest\",function(){return o.Nest;}),r.Foundation.Nest=o.Nest;},\"./js/foundation.util.nest.js\":function jsFoundationUtilNestJs(e,n,t){\"use strict\";t.r(n),t.d(n,\"Nest\",function(){return o;});var r=t(\"jquery\"),s=t.n(r),o={Feather:function Feather(e,n){var t=1li, > li > ul, .menu, .menu > li, [data-submenu] > li\").removeClass(\"\".concat(t,\" \").concat(r,\" \").concat(o,\" is-submenu-item submenu is-active\")).removeAttr(\"data-submenu\").css(\"display\",\"\");}};},26:function _(e,n,t){e.exports=t(\"./js/entries/plugins/foundation.util.nest.js\");},jquery:function jquery(e,n){e.exports=r;}},o.c=i,o.d=function(e,n,t){o.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t});},o.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0});},o.t=function(n,e){if(1&e&&(n=o(n)),8&e)return n;if(4&e&&\"object\"==(typeof n===\"undefined\"?\"undefined\":_typeof(n))&&n&&n.__esModule)return n;var t=Object.create(null);if(o.r(t),Object.defineProperty(t,\"default\",{enumerable:!0,value:n}),2&e&&\"string\"!=typeof n)for(var r in n){o.d(t,r,function(e){return n[e];}.bind(null,r));}return t;},o.n=function(e){var n=e&&e.__esModule?function(){return e.default;}:function(){return e;};return o.d(n,\"a\",n),n;},o.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n);},o.p=\"\",o(o.s=26);function o(e){if(i[e])return i[e].exports;var n=i[e]={i:e,l:!1,exports:{}};return u[e].call(n.exports,n,n.exports,o),n.l=!0,n.exports;}var u,i;});//# sourceMappingURL=foundation.util.nest.min.js.map\n'use strict';var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof(module))==='object')module.exports=factory(require(\"./foundation.core\"),require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof(exports))==='object')exports[\"foundation.util.timer\"]=factory(require(\"./foundation.core\"),require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.timer\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=27);/*/}(/**//*/{/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./js/entries/plugins/foundation.util.timer.js\":/*!***!*\\\n !*** ./js/entries/plugins/foundation.util.timer.js ***!\n \\***//*! exports provided: Foundation, Timer *//***/function jsEntriesPluginsFoundationUtilTimerJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"];});/* harmony import */var _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.util.timer */\"./js/foundation.util.timer.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Timer\",function(){return _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__[\"Timer\"];});_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].Timer=_foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__[\"Timer\"];/***/},/***/\"./js/foundation.util.timer.js\":/*!**!*\\\n !*** ./js/foundation.util.timer.js ***!\n \\**//*! exports provided: Timer *//***/function jsFoundationUtilTimerJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Timer\",function(){return Timer;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);function Timer(elem,options,cb){var _this=this,duration=options.duration,//options is an object for easily adding features later.\nnameSpace=Object.keys(elem.data())[0]||'timer',remain=-1,start,timer;this.isPaused=false;this.restart=function(){remain=-1;clearTimeout(timer);this.start();};this.start=function(){this.isPaused=false;// if(!elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.\nclearTimeout(timer);remain=remain<=0?duration:remain;elem.data('paused',false);start=Date.now();timer=setTimeout(function(){if(options.infinite){_this.restart();//rerun the timer.\n}if(cb&&typeof cb==='function'){cb();}},remain);elem.trigger(\"timerstart.zf.\".concat(nameSpace));};this.pause=function(){this.isPaused=true;//if(elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.\nclearTimeout(timer);elem.data('paused',true);var end=Date.now();remain=remain-(end-start);elem.trigger(\"timerpaused.zf.\".concat(nameSpace));};}/***/},/***/27:/*!****!*\\\n !*** multi ./js/entries/plugins/foundation.util.timer.js ***!\n \\****//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.timer.js */\"./js/entries/plugins/foundation.util.timer.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.util.timer.js.map\n\"use strict\";var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};!function(t,e){\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))&&\"object\"==(typeof module===\"undefined\"?\"undefined\":_typeof(module))?module.exports=e(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],e):\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))?exports[\"foundation.util.timer\"]=e(require(\"./foundation.core\"),require(\"jquery\")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__[\"foundation.util.timer\"]=e(t.__FOUNDATION_EXTERNAL__[\"foundation.core\"],t.jQuery));}(window,function(n,r){return u={},o.m=i={\"./foundation.core\":function foundationCore(t,e){t.exports=n;},\"./js/entries/plugins/foundation.util.timer.js\":function jsEntriesPluginsFoundationUtilTimerJs(t,e,n){\"use strict\";n.r(e);var r=n(\"./foundation.core\");n.d(e,\"Foundation\",function(){return r.Foundation;});var o=n(\"./js/foundation.util.timer.js\");n.d(e,\"Timer\",function(){return o.Timer;}),r.Foundation.Timer=o.Timer;},\"./js/foundation.util.timer.js\":function jsFoundationUtilTimerJs(t,e,n){\"use strict\";n.r(e),n.d(e,\"Timer\",function(){return r;});n(\"jquery\");function r(e,t,n){var r,o,i=this,u=t.duration,a=Object.keys(e.data())[0]||\"timer\",f=-1;this.isPaused=!1,this.restart=function(){f=-1,clearTimeout(o),this.start();},this.start=function(){this.isPaused=!1,clearTimeout(o),f=f<=0?u:f,e.data(\"paused\",!1),r=Date.now(),o=setTimeout(function(){t.infinite&&i.restart(),n&&\"function\"==typeof n&&n();},f),e.trigger(\"timerstart.zf.\".concat(a));},this.pause=function(){this.isPaused=!0,clearTimeout(o),e.data(\"paused\",!0);var t=Date.now();f-=t-r,e.trigger(\"timerpaused.zf.\".concat(a));};}},27:function _(t,e,n){t.exports=n(\"./js/entries/plugins/foundation.util.timer.js\");},jquery:function jquery(t,e){t.exports=r;}},o.c=u,o.d=function(t,e,n){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n});},o.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0});},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&\"object\"==(typeof e===\"undefined\"?\"undefined\":_typeof(e))&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var r in e){o.d(n,r,function(t){return e[t];}.bind(null,r));}return n;},o.n=function(t){var e=t&&t.__esModule?function(){return t.default;}:function(){return t;};return o.d(e,\"a\",e),e;},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e);},o.p=\"\",o(o.s=27);function o(t){if(u[t])return u[t].exports;var e=u[t]={i:t,l:!1,exports:{}};return i[t].call(e.exports,e,e.exports,o),e.l=!0,e.exports;}var i,u;});//# sourceMappingURL=foundation.util.timer.min.js.map\n'use strict';var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof(module))==='object')module.exports=factory(require(\"./foundation.core\"),require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof(exports))==='object')exports[\"foundation.util.touch\"]=factory(require(\"./foundation.core\"),require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=28);/*/}(/**//*/{/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./js/entries/plugins/foundation.util.touch.js\":/*!***!*\\\n !*** ./js/entries/plugins/foundation.util.touch.js ***!\n \\***//*! exports provided: Foundation, Touch *//***/function jsEntriesPluginsFoundationUtilTouchJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.util.touch */\"./js/foundation.util.touch.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Touch\",function(){return _foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__[\"Touch\"];});/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_2__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_2__[\"Foundation\"];});_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__[\"Touch\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);window.Foundation.Touch=_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__[\"Touch\"];/***/},/***/\"./js/foundation.util.touch.js\":/*!**!*\\\n !*** ./js/foundation.util.touch.js ***!\n \\**//*! exports provided: Touch *//***/function jsFoundationUtilTouchJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Touch\",function(){return Touch;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;i=jquery__WEBPACK_IMPORTED_MODULE_0___default.a.spotSwipe.moveThreshold&&elapsedTime<=jquery__WEBPACK_IMPORTED_MODULE_0___default.a.spotSwipe.timeThreshold){dir=dx>0?'left':'right';}// else if(Math.abs(dy) >= $.spotSwipe.moveThreshold && elapsedTime <= $.spotSwipe.timeThreshold) {\n// dir = dy > 0 ? 'down' : 'up';\n// }\nif(dir){e.preventDefault();onTouchEnd.apply(this,arguments);jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger(jquery__WEBPACK_IMPORTED_MODULE_0___default.a.Event('swipe',Object.assign({},e)),dir).trigger(jquery__WEBPACK_IMPORTED_MODULE_0___default.a.Event(\"swipe\".concat(dir),Object.assign({},e)));}}}function onTouchStart(e){if(e.touches.length==1){startPosX=e.touches[0].pageX;startPosY=e.touches[0].pageY;startEvent=e;isMoving=true;didMoved=false;startTime=new Date().getTime();this.addEventListener('touchmove',onTouchMove,false);this.addEventListener('touchend',onTouchEnd,false);}}function init(){this.addEventListener&&this.addEventListener('touchstart',onTouchStart,false);}function teardown(){this.removeEventListener('touchstart',onTouchStart);}var SpotSwipe=/*#__PURE__*/function(){function SpotSwipe($){_classCallCheck(this,SpotSwipe);this.version='1.0.0';this.enabled='ontouchstart'in document.documentElement;this.preventDefault=false;this.moveThreshold=75;this.timeThreshold=200;this.$=$;this._init();}_createClass(SpotSwipe,[{key:\"_init\",value:function _init(){var $=this.$;$.event.special.swipe={setup:init};$.event.special.tap={setup:init};$.each(['left','up','down','right'],function(){$.event.special[\"swipe\".concat(this)]={setup:function setup(){$(this).on('swipe',$.noop);}};});}}]);return SpotSwipe;}();/**\n * As far as I can tell, both setupSpotSwipe and *\n * setupTouchHandler should be idempotent, *\n * because they directly replace functions & *\n * values, and do not add event handlers directly. *\n **/Touch.setupSpotSwipe=function($){$.spotSwipe=new SpotSwipe($);};/**\n * Method for adding pseudo drag events to elements *\n */Touch.setupTouchHandler=function($){$.fn.addTouch=function(){this.each(function(i,el){$(el).bind('touchstart touchmove touchend touchcancel',function(event){//we pass the original event object because the jQuery event\n//object is normalized to w3c specs and does not provide the TouchList\nhandleTouch(event);});});var handleTouch=function handleTouch(event){var touches=event.changedTouches,first=touches[0],eventTypes={touchstart:'mousedown',touchmove:'mousemove',touchend:'mouseup'},type=eventTypes[event.type],simulatedEvent;if('MouseEvent'in window&&typeof window.MouseEvent==='function'){simulatedEvent=new window.MouseEvent(type,{'bubbles':true,'cancelable':true,'screenX':first.screenX,'screenY':first.screenY,'clientX':first.clientX,'clientY':first.clientY});}else{simulatedEvent=document.createEvent('MouseEvent');simulatedEvent.initMouseEvent(type,true,true,window,1,first.screenX,first.screenY,first.clientX,first.clientY,false,false,false,false,0/*left*/,null);}first.target.dispatchEvent(simulatedEvent);};};};Touch.init=function($){if(typeof $.spotSwipe==='undefined'){Touch.setupSpotSwipe($);Touch.setupTouchHandler($);}};/***/},/***/28:/*!****!*\\\n !*** multi ./js/entries/plugins/foundation.util.touch.js ***!\n \\****//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.touch.js */\"./js/entries/plugins/foundation.util.touch.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.util.touch.js.map\n\"use strict\";var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};!function(e,t){\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))&&\"object\"==(typeof module===\"undefined\"?\"undefined\":_typeof(module))?module.exports=t(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],t):\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))?exports[\"foundation.util.touch\"]=t(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.touch\"]=t(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery));}(window,function(n,o){return r={},i.m=u={\"./foundation.core\":function foundationCore(e,t){e.exports=n;},\"./js/entries/plugins/foundation.util.touch.js\":function jsEntriesPluginsFoundationUtilTouchJs(e,t,n){\"use strict\";n.r(t);var o=n(\"jquery\"),i=n.n(o),u=n(\"./js/foundation.util.touch.js\");n.d(t,\"Touch\",function(){return u.Touch;});var r=n(\"./foundation.core\");n.d(t,\"Foundation\",function(){return r.Foundation;}),u.Touch.init(i.a),window.Foundation.Touch=u.Touch;},\"./js/foundation.util.touch.js\":function jsFoundationUtilTouchJs(e,t,n){\"use strict\";n.r(t),n.d(t,\"Touch\",function(){return f;});var o=n(\"jquery\"),i=n.n(o);function u(e,t){for(var n=0;n=i.a.spotSwipe.moveThreshold&&s<=i.a.spotSwipe.timeThreshold&&(t=0');}if(_this.options.submenuToggle){$elem.addClass('has-submenu-toggle');$elem.children('a').after('');}else{$elem.attr({'aria-controls':subId,'aria-expanded':isActive,'id':linkId});}$sub.attr({'aria-labelledby':linkId,'aria-hidden':!isActive,'role':'group','id':subId});});this.$element.find('li').attr({'role':'treeitem'});var initPanes=this.$element.find('.is-active');if(initPanes.length){initPanes.each(function(){_this.down(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));});}this._events();}/**\n * Adds event handlers for items within the menu.\n * @private\n */},{key:\"_events\",value:function _events(){var _this=this;this.$element.find('li').each(function(){var $submenu=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('[data-submenu]');if($submenu.length){if(_this.options.submenuToggle){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('.submenu-toggle').off('click.zf.accordionMenu').on('click.zf.accordionMenu',function(e){_this.toggle($submenu);});}else{jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('a').off('click.zf.accordionMenu').on('click.zf.accordionMenu',function(e){e.preventDefault();_this.toggle($submenu);});}}}).on('keydown.zf.accordionMenu',function(e){var $element=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),$elements=$element.parent('ul').children('li'),$prevElement,$nextElement,$target=$element.children('[data-submenu]');$elements.each(function(i){if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)){$prevElement=$elements.eq(Math.max(0,i-1)).find('a').first();$nextElement=$elements.eq(Math.min(i+1,$elements.length-1)).find('a').first();if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('[data-submenu]:visible').length){// has open sub menu\n$nextElement=$element.find('li:first-child').find('a').first();}if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is(':first-child')){// is first element of sub menu\n$prevElement=$element.parents('li').first().find('a').first();}else if($prevElement.parents('li').first().children('[data-submenu]:visible').length){// if previous element has open sub menu\n$prevElement=$prevElement.parents('li').find('li:last-child').find('a').first();}if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is(':last-child')){// is last element of sub menu\n$nextElement=$element.parents('li').first().next('li').find('a').first();}return;}});_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].handleKey(e,'AccordionMenu',{open:function open(){if($target.is(':hidden')){_this.down($target);$target.find('li').first().find('a').first().focus();}},close:function close(){if($target.length&&!$target.is(':hidden')){// close active sub of this item\n_this.up($target);}else if($element.parent('[data-submenu]').length){// close currently open sub\n_this.up($element.parent('[data-submenu]'));$element.parents('li').first().find('a').first().focus();}},up:function up(){$prevElement.focus();return true;},down:function down(){$nextElement.focus();return true;},toggle:function toggle(){if(_this.options.submenuToggle){return false;}if($element.children('[data-submenu]').length){_this.toggle($element.children('[data-submenu]'));return true;}},closeAll:function closeAll(){_this.hideAll();},handled:function handled(preventDefault){if(preventDefault){e.preventDefault();}}});});//.attr('tabindex', 0);\n}/**\n * Closes all panes of the menu.\n * @function\n */},{key:\"hideAll\",value:function hideAll(){this.up(this.$element.find('[data-submenu]'));}/**\n * Opens all panes of the menu.\n * @function\n */},{key:\"showAll\",value:function showAll(){this.down(this.$element.find('[data-submenu]'));}/**\n * Toggles the open/close state of a submenu.\n * @function\n * @param {jQuery} $target - the submenu to toggle\n */},{key:\"toggle\",value:function toggle($target){if(!$target.is(':animated')){if(!$target.is(':hidden')){this.up($target);}else{this.down($target);}}}/**\n * Opens the sub-menu defined by `$target`.\n * @param {jQuery} $target - Sub-menu to open.\n * @fires AccordionMenu#down\n */},{key:\"down\",value:function down($target){var _this2=this;// If having multiple submenus active is disabled, close all the submenus\n// that are not parents or children of the targeted submenu.\nif(!this.options.multiOpen){// The \"branch\" of the targetted submenu, from the component root to\n// the active submenus nested in it.\nvar $targetBranch=$target.parentsUntil(this.$element).add($target).add($target.find('.is-active'));// All the active submenus that are not in the branch.\nvar $othersActiveSubmenus=this.$element.find('.is-active').not($targetBranch);this.up($othersActiveSubmenus);}$target.addClass('is-active').attr({'aria-hidden':false});if(this.options.submenuToggle){$target.prev('.submenu-toggle').attr({'aria-expanded':true});}else{$target.parent('.is-accordion-submenu-parent').attr({'aria-expanded':true});}$target.slideDown(this.options.slideSpeed,function(){/**\n * Fires when the menu is done opening.\n * @event AccordionMenu#down\n */_this2.$element.trigger('down.zf.accordionMenu',[$target]);});}/**\n * Closes the sub-menu defined by `$target`. All sub-menus inside the target will be closed as well.\n * @param {jQuery} $target - Sub-menu to close.\n * @fires AccordionMenu#up\n */},{key:\"up\",value:function up($target){var _this3=this;var $submenus=$target.find('[data-submenu]');var $allmenus=$target.add($submenus);$submenus.slideUp(0);$allmenus.removeClass('is-active').attr('aria-hidden',true);if(this.options.submenuToggle){$allmenus.prev('.submenu-toggle').attr('aria-expanded',false);}else{$allmenus.parent('.is-accordion-submenu-parent').attr('aria-expanded',false);}$target.slideUp(this.options.slideSpeed,function(){/**\n * Fires when the menu is done collapsing up.\n * @event AccordionMenu#up\n */_this3.$element.trigger('up.zf.accordionMenu',[$target]);});}/**\n * Destroys an instance of accordion menu.\n * @fires AccordionMenu#destroyed\n */},{key:\"_destroy\",value:function _destroy(){this.$element.find('[data-submenu]').slideDown(0).css('display','');this.$element.find('a').off('click.zf.accordionMenu');this.$element.find('[data-is-parent-link]').detach();if(this.options.submenuToggle){this.$element.find('.has-submenu-toggle').removeClass('has-submenu-toggle');this.$element.find('.submenu-toggle').remove();}_foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__[\"Nest\"].Burn(this.$element,'accordion');}}]);return AccordionMenu;}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"Plugin\"]);AccordionMenu.defaults={/**\n * Adds the parent link to the submenu.\n * @option\n * @type {boolean}\n * @default false\n */parentLink:false,/**\n * Amount of time to animate the opening of a submenu in ms.\n * @option\n * @type {number}\n * @default 250\n */slideSpeed:250,/**\n * Adds a separate submenu toggle button. This allows the parent item to have a link.\n * @option\n * @example true\n */submenuToggle:false,/**\n * The text used for the submenu toggle if enabled. This is used for screen readers only.\n * @option\n * @example true\n */submenuToggleText:'Toggle menu',/**\n * Allow the menu to have multiple open panes.\n * @option\n * @type {boolean}\n * @default true\n */multiOpen:true};/***/},/***/2:/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.accordionMenu.js ***!\n \\**//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.accordionMenu.js */\"./js/entries/plugins/foundation.accordionMenu.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.accordionMenu.js.map\n'use strict';var _typeof2=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof2(module))==='object')module.exports=factory(require(\"./foundation.core\"),require(\"./foundation.util.box\"),require(\"./foundation.util.keyboard\"),require(\"./foundation.util.nest\"),require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"./foundation.util.box\",\"./foundation.util.keyboard\",\"./foundation.util.nest\",\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"foundation.drilldown\"]=factory(require(\"./foundation.core\"),require(\"./foundation.util.box\"),require(\"./foundation.util.keyboard\"),require(\"./foundation.util.nest\"),require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.drilldown\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.nest\"],root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE__foundation_util_box__,__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__,__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__,__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof2(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=3);/*/}(/**//*/{/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.util.box\":/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.box\"],\"amd\":\"./foundation.util.box\",\"commonjs\":\"./foundation.util.box\",\"commonjs2\":\"./foundation.util.box\"} ***!\n \\*//*! no static exports found *//***/function foundationUtilBox(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_box__;/***/},/***/\"./foundation.util.keyboard\":/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*//*! no static exports found *//***/function foundationUtilKeyboard(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;/***/},/***/\"./foundation.util.nest\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.nest\"],\"amd\":\"./foundation.util.nest\",\"commonjs\":\"./foundation.util.nest\",\"commonjs2\":\"./foundation.util.nest\"} ***!\n \\//*! no static exports found *//***/function foundationUtilNest(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__;/***/},/***/\"./js/entries/plugins/foundation.drilldown.js\":/*!**!*\\\n !*** ./js/entries/plugins/foundation.drilldown.js ***!\n \\**//*! exports provided: Foundation, Drilldown *//***/function jsEntriesPluginsFoundationDrilldownJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"];});/* harmony import */var _foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.drilldown */\"./js/foundation.drilldown.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Drilldown\",function(){return _foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__[\"Drilldown\"];});_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__[\"Drilldown\"],'Drilldown');/***/},/***/\"./js/foundation.drilldown.js\":/*!*!*\\\n !*** ./js/foundation.drilldown.js ***!\n \\*//*! exports provided: Drilldown *//***/function jsFoundationDrilldownJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Drilldown\",function(){return Drilldown;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.util.keyboard */\"./foundation.util.keyboard\");/* harmony import */var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.util.nest */\"./foundation.util.nest\");/* harmony import */var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ./foundation.core.utils */\"./foundation.core\");/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__);/* harmony import */var _foundation_util_box__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(/*! ./foundation.util.box */\"./foundation.util.box\");/* harmony import */var _foundation_util_box__WEBPACK_IMPORTED_MODULE_4___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__);function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;i');}$link.data('savedhref',$link.attr('href')).removeAttr('href').attr('tabindex',0);$link.children('[data-submenu]').attr({'aria-hidden':true,'tabindex':0,'role':'group'});_this._events($link);});this.$submenus.each(function(){var $menu=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),$back=$menu.find('.js-drilldown-back');if(!$back.length){switch(_this.options.backButtonPosition){case\"bottom\":$menu.append(_this.options.backButton);break;case\"top\":$menu.prepend(_this.options.backButton);break;default:console.error(\"Unsupported backButtonPosition value '\"+_this.options.backButtonPosition+\"'\");}}_this._back($menu);});this.$submenus.addClass('invisible');if(!this.options.autoHeight){this.$submenus.addClass('drilldown-submenu-cover-previous');}// create a wrapper on element if it doesn't exist.\nif(!this.$element.parent().hasClass('is-drilldown')){this.$wrapper=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.options.wrapper).addClass('is-drilldown');if(this.options.animateHeight)this.$wrapper.addClass('animate-height');this.$element.wrap(this.$wrapper);}// set wrapper\nthis.$wrapper=this.$element.parent();this.$wrapper.css(this._getMaxDims());}},{key:\"_resize\",value:function _resize(){this.$wrapper.css({'max-width':'none','min-height':'none'});// _getMaxDims has side effects (boo) but calling it should update all other necessary heights & widths\nthis.$wrapper.css(this._getMaxDims());}/**\n * Adds event handlers to elements in the menu.\n * @function\n * @private\n * @param {jQuery} $elem - the current menu item to add handlers to.\n */},{key:\"_events\",value:function _events($elem){var _this=this;$elem.off('click.zf.drilldown').on('click.zf.drilldown',function(e){if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).parentsUntil('ul','li').hasClass('is-drilldown-submenu-parent')){e.preventDefault();}// if(e.target !== e.currentTarget.firstElementChild){\n// return false;\n// }\n_this._show($elem.parent('li'));if(_this.options.closeOnClick){var $body=jquery__WEBPACK_IMPORTED_MODULE_0___default()('body');$body.off('.zf.drilldown').on('click.zf.drilldown',function(e){if(e.target===_this.$element[0]||jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(_this.$element[0],e.target)){return;}e.preventDefault();_this._hideAll();$body.off('.zf.drilldown');});}});}/**\n * Adds event handlers to the menu element.\n * @function\n * @private\n */},{key:\"_registerEvents\",value:function _registerEvents(){if(this.options.scrollTop){this._bindHandler=this._scrollTop.bind(this);this.$element.on('open.zf.drilldown hide.zf.drilldown close.zf.drilldown closed.zf.drilldown',this._bindHandler);}this.$element.on('mutateme.zf.trigger',this._resize.bind(this));}/**\n * Scroll to Top of Element or data-scroll-top-element\n * @function\n * @fires Drilldown#scrollme\n */},{key:\"_scrollTop\",value:function _scrollTop(){var _this=this;var $scrollTopElement=_this.options.scrollTopElement!=''?jquery__WEBPACK_IMPORTED_MODULE_0___default()(_this.options.scrollTopElement):_this.$element,scrollPos=parseInt($scrollTopElement.offset().top+_this.options.scrollTopOffset,10);jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').stop(true).animate({scrollTop:scrollPos},_this.options.animationDuration,_this.options.animationEasing,function(){/**\n * Fires after the menu has scrolled\n * @event Drilldown#scrollme\n */if(this===jquery__WEBPACK_IMPORTED_MODULE_0___default()('html')[0])_this.$element.trigger('scrollme.zf.drilldown');});}/**\n * Adds keydown event listener to `li`'s in the menu.\n * @private\n */},{key:\"_keyboardEvents\",value:function _keyboardEvents(){var _this=this;this.$menuItems.add(this.$element.find('.js-drilldown-back > a, .is-submenu-parent-item > a')).on('keydown.zf.drilldown',function(e){var $element=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),$elements=$element.parent('li').parent('ul').children('li').children('a'),$prevElement,$nextElement;$elements.each(function(i){if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)){$prevElement=$elements.eq(Math.max(0,i-1));$nextElement=$elements.eq(Math.min(i+1,$elements.length-1));return;}});_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].handleKey(e,'Drilldown',{next:function next(){if($element.is(_this.$submenuAnchors)){_this._show($element.parent('li'));$element.parent('li').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element),function(){$element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus();});return true;}},previous:function previous(){_this._hide($element.parent('li').parent('ul'));$element.parent('li').parent('ul').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element),function(){setTimeout(function(){$element.parent('li').parent('ul').parent('li').children('a').first().focus();},1);});return true;},up:function up(){$prevElement.focus();// Don't tap focus on first element in root ul\nreturn!$element.is(_this.$element.find('> li:first-child > a'));},down:function down(){$nextElement.focus();// Don't tap focus on last element in root ul\nreturn!$element.is(_this.$element.find('> li:last-child > a'));},close:function close(){// Don't close on element in root ul\nif(!$element.is(_this.$element.find('> li > a'))){_this._hide($element.parent().parent());$element.parent().parent().siblings('a').focus();}},open:function open(){if(_this.options.parentLink&&$element.attr('href')){// Link with href\nreturn false;}else if(!$element.is(_this.$menuItems)){// not menu item means back button\n_this._hide($element.parent('li').parent('ul'));$element.parent('li').parent('ul').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element),function(){setTimeout(function(){$element.parent('li').parent('ul').parent('li').children('a').first().focus();},1);});return true;}else if($element.is(_this.$submenuAnchors)){// Sub menu item\n_this._show($element.parent('li'));$element.parent('li').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element),function(){$element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus();});return true;}},handled:function handled(preventDefault){if(preventDefault){e.preventDefault();}}});});// end keyboardAccess\n}/**\n * Closes all open elements, and returns to root menu.\n * @function\n * @fires Drilldown#close\n * @fires Drilldown#closed\n */},{key:\"_hideAll\",value:function _hideAll(){var _this2=this;var $elem=this.$element.find('.is-drilldown-submenu.is-active');$elem.addClass('is-closing');if(this.options.autoHeight){var calcHeight=$elem.parent().closest('ul').data('calcHeight');this.$wrapper.css({height:calcHeight});}/**\n * Fires when the menu is closing.\n * @event Drilldown#close\n */this.$element.trigger('close.zf.drilldown');$elem.one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($elem),function(){$elem.removeClass('is-active is-closing');/**\n * Fires when the menu is fully closed.\n * @event Drilldown#closed\n */_this2.$element.trigger('closed.zf.drilldown');});}/**\n * Adds event listener for each `back` button, and closes open menus.\n * @function\n * @fires Drilldown#back\n * @param {jQuery} $elem - the current sub-menu to add `back` event.\n */},{key:\"_back\",value:function _back($elem){var _this=this;$elem.off('click.zf.drilldown');$elem.children('.js-drilldown-back').on('click.zf.drilldown',function(e){// console.log('mouseup on back');\n_this._hide($elem);// If there is a parent submenu, call show\nvar parentSubMenu=$elem.parent('li').parent('ul').parent('li');if(parentSubMenu.length){_this._show(parentSubMenu);}});}/**\n * Adds event listener to menu items w/o submenus to close open menus on click.\n * @function\n * @private\n */},{key:\"_menuLinkEvents\",value:function _menuLinkEvents(){var _this=this;this.$menuItems.not('.is-drilldown-submenu-parent').off('click.zf.drilldown').on('click.zf.drilldown',function(e){setTimeout(function(){_this._hideAll();},0);});}/**\n * Sets the CSS classes for submenu to show it.\n * @function\n * @private\n * @param {jQuery} $elem - the target submenu (`ul` tag)\n * @param {boolean} trigger - trigger drilldown event\n */},{key:\"_setShowSubMenuClasses\",value:function _setShowSubMenuClasses($elem,trigger){$elem.addClass('is-active').removeClass('invisible').attr('aria-hidden',false);$elem.parent('li').attr('aria-expanded',true);if(trigger===true){this.$element.trigger('open.zf.drilldown',[$elem]);}}/**\n * Sets the CSS classes for submenu to hide it.\n * @function\n * @private\n * @param {jQuery} $elem - the target submenu (`ul` tag)\n * @param {boolean} trigger - trigger drilldown event\n */},{key:\"_setHideSubMenuClasses\",value:function _setHideSubMenuClasses($elem,trigger){$elem.removeClass('is-active').addClass('invisible').attr('aria-hidden',true);$elem.parent('li').attr('aria-expanded',false);if(trigger===true){$elem.trigger('hide.zf.drilldown',[$elem]);}}/**\n * Opens a specific drilldown (sub)menu no matter which (sub)menu in it is currently visible.\n * Compared to _show() this lets you jump into any submenu without clicking through every submenu on the way to it.\n * @function\n * @fires Drilldown#open\n * @param {jQuery} $elem - the target (sub)menu (`ul` tag)\n * @param {boolean} autoFocus - if true the first link in the target (sub)menu gets auto focused\n */},{key:\"_showMenu\",value:function _showMenu($elem,autoFocus){var _this=this;// Reset drilldown\nvar $expandedSubmenus=this.$element.find('li[aria-expanded=\"true\"] > ul[data-submenu]');$expandedSubmenus.each(function(index){_this._setHideSubMenuClasses(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));});// Save the menu as the currently displayed one.\nthis.$currentMenu=$elem;// If target menu is root, focus first link & exit\nif($elem.is('[data-drilldown]')){if(autoFocus===true)$elem.find('li[role=\"treeitem\"] > a').first().focus();if(this.options.autoHeight)this.$wrapper.css('height',$elem.data('calcHeight'));return;}// Find all submenus on way to root incl. the element itself\nvar $submenus=$elem.children().first().parentsUntil('[data-drilldown]','[data-submenu]');// Open target menu and all submenus on its way to root\n$submenus.each(function(index){// Update height of first child (target menu) if autoHeight option true\nif(index===0&&_this.options.autoHeight){_this.$wrapper.css('height',jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('calcHeight'));}var isLastChild=index==$submenus.length-1;// Add transitionsend listener to last child (root due to reverse order) to open target menu's first link\n// Last child makes sure the event gets always triggered even if going through several menus\nif(isLastChild===true){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)),function(){if(autoFocus===true){$elem.find('li[role=\"treeitem\"] > a').first().focus();}});}_this._setShowSubMenuClasses(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),isLastChild);});}/**\n * Opens a submenu.\n * @function\n * @fires Drilldown#open\n * @param {jQuery} $elem - the current element with a submenu to open, i.e. the `li` tag.\n */},{key:\"_show\",value:function _show($elem){var $submenu=$elem.children('[data-submenu]');$elem.attr('aria-expanded',true);this.$currentMenu=$submenu;$submenu.addClass('is-active').removeClass('invisible').attr('aria-hidden',false);if(this.options.autoHeight){this.$wrapper.css({height:$submenu.data('calcHeight')});}/**\n * Fires when the submenu has opened.\n * @event Drilldown#open\n */this.$element.trigger('open.zf.drilldown',[$elem]);}/**\n * Hides a submenu\n * @function\n * @fires Drilldown#hide\n * @param {jQuery} $elem - the current sub-menu to hide, i.e. the `ul` tag.\n */},{key:\"_hide\",value:function _hide($elem){if(this.options.autoHeight)this.$wrapper.css({height:$elem.parent().closest('ul').data('calcHeight')});var _this=this;$elem.parent('li').attr('aria-expanded',false);$elem.attr('aria-hidden',true);$elem.addClass('is-closing').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($elem),function(){$elem.removeClass('is-active is-closing');$elem.blur().addClass('invisible');});/**\n * Fires when the submenu has closed.\n * @event Drilldown#hide\n */$elem.trigger('hide.zf.drilldown',[$elem]);}/**\n * Iterates through the nested menus to calculate the min-height, and max-width for the menu.\n * Prevents content jumping.\n * @function\n * @private\n */},{key:\"_getMaxDims\",value:function _getMaxDims(){var maxHeight=0,result={},_this=this;// Recalculate menu heights and total max height\nthis.$submenus.add(this.$element).each(function(){var numOfElems=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('li').length;var height=_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__[\"Box\"].GetDimensions(this).height;maxHeight=height>maxHeight?height:maxHeight;if(_this.options.autoHeight){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('calcHeight',height);}});if(this.options.autoHeight)result['height']=this.$currentMenu.data('calcHeight');else result['min-height']=\"\".concat(maxHeight,\"px\");result['max-width']=\"\".concat(this.$element[0].getBoundingClientRect().width,\"px\");return result;}/**\n * Destroys the Drilldown Menu\n * @function\n */},{key:\"_destroy\",value:function _destroy(){if(this.options.scrollTop)this.$element.off('.zf.drilldown',this._bindHandler);this._hideAll();this.$element.off('mutateme.zf.trigger');_foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__[\"Nest\"].Burn(this.$element,'drilldown');this.$element.unwrap().find('.js-drilldown-back, .is-submenu-parent-item').remove().end().find('.is-active, .is-closing, .is-drilldown-submenu').removeClass('is-active is-closing is-drilldown-submenu').end().find('[data-submenu]').removeAttr('aria-hidden tabindex role');this.$submenuAnchors.each(function(){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).off('.zf.drilldown');});this.$element.find('[data-is-parent-link]').detach();this.$submenus.removeClass('drilldown-submenu-cover-previous invisible');this.$element.find('a').each(function(){var $link=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);$link.removeAttr('tabindex');if($link.data('savedhref')){$link.attr('href',$link.data('savedhref')).removeData('savedhref');}else{return;}});}}]);return Drilldown;}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"Plugin\"]);Drilldown.defaults={/**\n * Drilldowns depend on styles in order to function properly; in the default build of Foundation these are\n * on the `drilldown` class. This option auto-applies this class to the drilldown upon initialization.\n * @option\n * @type {boolean}\n * @default true\n */autoApplyClass:true,/**\n * Markup used for JS generated back button. Prepended or appended (see backButtonPosition) to submenu lists and deleted on `destroy` method, 'js-drilldown-back' class required. Remove the backslash (`\\`) if copy and pasting.\n * @option\n * @type {string}\n * @default '
  • Back
  • '\n */backButton:'
  • Back
  • ',/**\n * Position the back button either at the top or bottom of drilldown submenus. Can be `'left'` or `'bottom'`.\n * @option\n * @type {string}\n * @default top\n */backButtonPosition:'top',/**\n * Markup used to wrap drilldown menu. Use a class name for independent styling; the JS applied class: `is-drilldown` is required. Remove the backslash (`\\`) if copy and pasting.\n * @option\n * @type {string}\n * @default '
    '\n */wrapper:'
    ',/**\n * Adds the parent link to the submenu.\n * @option\n * @type {boolean}\n * @default false\n */parentLink:false,/**\n * Allow the menu to return to root list on body click.\n * @option\n * @type {boolean}\n * @default false\n */closeOnClick:false,/**\n * Allow the menu to auto adjust height.\n * @option\n * @type {boolean}\n * @default false\n */autoHeight:false,/**\n * Animate the auto adjust height.\n * @option\n * @type {boolean}\n * @default false\n */animateHeight:false,/**\n * Scroll to the top of the menu after opening a submenu or navigating back using the menu back button\n * @option\n * @type {boolean}\n * @default false\n */scrollTop:false,/**\n * String jquery selector (for example 'body') of element to take offset().top from, if empty string the drilldown menu offset().top is taken\n * @option\n * @type {string}\n * @default ''\n */scrollTopElement:'',/**\n * ScrollTop offset\n * @option\n * @type {number}\n * @default 0\n */scrollTopOffset:0,/**\n * Scroll animation duration\n * @option\n * @type {number}\n * @default 500\n */animationDuration:500,/**\n * Scroll animation easing. Can be `'swing'` or `'linear'`.\n * @option\n * @type {string}\n * @see {@link https://api.jquery.com/animate|JQuery animate}\n * @default 'swing'\n */animationEasing:'swing'// holdOpen: false\n};/***/},/***/3:/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.drilldown.js ***!\n \\***//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.drilldown.js */\"./js/entries/plugins/foundation.drilldown.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.drilldown.js.map\n'use strict';var _typeof2=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof2(module))==='object')module.exports=factory(require(\"./foundation.util.keyboard\"),require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.box\"),require(\"./foundation.util.motion\"),require(\"./foundation.util.touch\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.util.keyboard\",\"./foundation.core\",\"jquery\",\"./foundation.util.box\",\"./foundation.util.motion\",\"./foundation.util.touch\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"foundation.dropdown\"]=factory(require(\"./foundation.util.keyboard\"),require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.box\"),require(\"./foundation.util.motion\"),require(\"./foundation.util.touch\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.dropdown\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__,__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_box__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__,__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof2(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=4);/*/}(/**//*/{/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.util.box\":/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.box\"],\"amd\":\"./foundation.util.box\",\"commonjs\":\"./foundation.util.box\",\"commonjs2\":\"./foundation.util.box\"} ***!\n \\*//*! no static exports found *//***/function foundationUtilBox(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_box__;/***/},/***/\"./foundation.util.keyboard\":/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*//*! no static exports found *//***/function foundationUtilKeyboard(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;/***/},/***/\"./foundation.util.motion\":/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***//*! no static exports found *//***/function foundationUtilMotion(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;/***/},/***/\"./foundation.util.touch\":/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"} ***!\n \\****//*! no static exports found *//***/function foundationUtilTouch(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;/***/},/***/\"./js/entries/plugins/foundation.dropdown.js\":/*!*!*\\\n !*** ./js/entries/plugins/foundation.dropdown.js ***!\n \\*//*! exports provided: Foundation, Dropdown *//***/function jsEntriesPluginsFoundationDropdownJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"];});/* harmony import */var _foundation_dropdown__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.dropdown */\"./js/foundation.dropdown.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Dropdown\",function(){return _foundation_dropdown__WEBPACK_IMPORTED_MODULE_1__[\"Dropdown\"];});_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_dropdown__WEBPACK_IMPORTED_MODULE_1__[\"Dropdown\"],'Dropdown');/***/},/***/\"./js/foundation.dropdown.js\":/*!!*\\\n !*** ./js/foundation.dropdown.js ***!\n \\//*! exports provided: Dropdown *//***/function jsFoundationDropdownJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Dropdown\",function(){return Dropdown;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.util.keyboard */\"./foundation.util.keyboard\");/* harmony import */var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.core.utils */\"./foundation.core\");/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__);/* harmony import */var _foundation_positionable__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ./foundation.positionable */\"./js/foundation.positionable.js\");/* harmony import */var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(/*! ./foundation.util.triggers */\"./js/foundation.util.triggers.js\");/* harmony import */var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(/*! ./foundation.util.touch */\"./foundation.util.touch\");/* harmony import */var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__);function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;i-1,$elements=isTab?_this.$tabs:$element.siblings('li').add($element),$prevElement,$nextElement;$elements.each(function(i){if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)){$prevElement=$elements.eq(i-1);$nextElement=$elements.eq(i+1);return;}});var nextSibling=function nextSibling(){$nextElement.children('a:first').focus();e.preventDefault();},prevSibling=function prevSibling(){$prevElement.children('a:first').focus();e.preventDefault();},openSub=function openSub(){var $sub=$element.children('ul.is-dropdown-submenu');if($sub.length){_this._show($sub);$element.find('li > a:first').focus();e.preventDefault();}else{return;}},closeSub=function closeSub(){//if ($element.is(':first-child')) {\nvar close=$element.parent('ul').parent('li');close.children('a:first').focus();_this._hide(close);e.preventDefault();//}\n};var functions={open:openSub,close:function close(){_this._hide(_this.$element);_this.$menuItems.eq(0).children('a').focus();// focus to first element\ne.preventDefault();}};if(isTab){if(_this._isVertical()){// vertical menu\nif(_this._isRtl()){// right aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions,{down:nextSibling,up:prevSibling,next:closeSub,previous:openSub});}else{// left aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions,{down:nextSibling,up:prevSibling,next:openSub,previous:closeSub});}}else{// horizontal menu\nif(_this._isRtl()){// right aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions,{next:prevSibling,previous:nextSibling,down:openSub,up:closeSub});}else{// left aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions,{next:nextSibling,previous:prevSibling,down:openSub,up:closeSub});}}}else{// not tabs -> one sub\nif(_this._isRtl()){// right aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions,{next:closeSub,previous:openSub,down:nextSibling,up:prevSibling});}else{// left aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions,{next:openSub,previous:closeSub,down:nextSibling,up:prevSibling});}}_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].handleKey(e,'DropdownMenu',functions);});}/**\n * Adds an event handler to the body to close any dropdowns on a click.\n * @function\n * @private\n */},{key:\"_addBodyHandler\",value:function _addBodyHandler(){var _this2=this;var $body=jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body);this._removeBodyHandler();$body.on('click.zf.dropdownMenu tap.zf.dropdownMenu',function(e){var isItself=!!jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).closest(_this2.$element).length;if(isItself)return;_this2._hide();_this2._removeBodyHandler();});}/**\n * Remove the body event handler. See `_addBodyHandler`.\n * @function\n * @private\n */},{key:\"_removeBodyHandler\",value:function _removeBodyHandler(){jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body).off('click.zf.dropdownMenu tap.zf.dropdownMenu');}/**\n * Opens a dropdown pane, and checks for collisions first.\n * @param {jQuery} $sub - ul element that is a submenu to show\n * @function\n * @private\n * @fires DropdownMenu#show\n */},{key:\"_show\",value:function _show($sub){var idx=this.$tabs.index(this.$tabs.filter(function(i,el){return jquery__WEBPACK_IMPORTED_MODULE_0___default()(el).find($sub).length>0;}));var $sibs=$sub.parent('li.is-dropdown-submenu-parent').siblings('li.is-dropdown-submenu-parent');this._hide($sibs,idx);$sub.css('visibility','hidden').addClass('js-dropdown-active').parent('li.is-dropdown-submenu-parent').addClass('is-active');var clear=_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__[\"Box\"].ImNotTouchingYou($sub,null,true);if(!clear){var oldClass=this.options.alignment==='left'?'-right':'-left',$parentLi=$sub.parent('.is-dropdown-submenu-parent');$parentLi.removeClass(\"opens\".concat(oldClass)).addClass(\"opens-\".concat(this.options.alignment));clear=_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__[\"Box\"].ImNotTouchingYou($sub,null,true);if(!clear){$parentLi.removeClass(\"opens-\".concat(this.options.alignment)).addClass('opens-inner');}this.changed=true;}$sub.css('visibility','');if(this.options.closeOnClick){this._addBodyHandler();}/**\n * Fires when the new dropdown pane is visible.\n * @event DropdownMenu#show\n */this.$element.trigger('show.zf.dropdownMenu',[$sub]);}/**\n * Hides a single, currently open dropdown pane, if passed a parameter, otherwise, hides everything.\n * @function\n * @param {jQuery} $elem - element with a submenu to hide\n * @param {Number} idx - index of the $tabs collection to hide\n * @fires DropdownMenu#hide\n * @private\n */},{key:\"_hide\",value:function _hide($elem,idx){var $toClose;if($elem&&$elem.length){$toClose=$elem;}else if(typeof idx!=='undefined'){$toClose=this.$tabs.not(function(i,el){return i===idx;});}else{$toClose=this.$element;}var somethingToClose=$toClose.hasClass('is-active')||$toClose.find('.is-active').length>0;if(somethingToClose){var $activeItem=$toClose.find('li.is-active');$activeItem.add($toClose).attr({'data-is-click':false}).removeClass('is-active');$toClose.find('ul.js-dropdown-active').removeClass('js-dropdown-active');if(this.changed||$toClose.find('opens-inner').length){var oldClass=this.options.alignment==='left'?'right':'left';$toClose.find('li.is-dropdown-submenu-parent').add($toClose).removeClass(\"opens-inner opens-\".concat(this.options.alignment)).addClass(\"opens-\".concat(oldClass));this.changed=false;}clearTimeout($activeItem.data('_delay'));this._removeBodyHandler();/**\n * Fires when the open menus are closed.\n * @event DropdownMenu#hide\n */this.$element.trigger('hide.zf.dropdownMenu',[$toClose]);}}/**\n * Destroys the plugin.\n * @function\n */},{key:\"_destroy\",value:function _destroy(){this.$menuItems.off('.zf.dropdownMenu').removeAttr('data-is-click').removeClass('is-right-arrow is-left-arrow is-down-arrow opens-right opens-left opens-inner');jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body).off('.zf.dropdownMenu');_foundation_util_nest__WEBPACK_IMPORTED_MODULE_3__[\"Nest\"].Burn(this.$element,'dropdown');}}]);return DropdownMenu;}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);/**\n * Default settings for plugin\n */DropdownMenu.defaults={/**\n * Disallows hover events from opening submenus\n * @option\n * @type {boolean}\n * @default false\n */disableHover:false,/**\n * Allow a submenu to automatically close on a mouseleave event, if not clicked open.\n * @option\n * @type {boolean}\n * @default true\n */autoclose:true,/**\n * Amount of time to delay opening a submenu on hover event.\n * @option\n * @type {number}\n * @default 50\n */hoverDelay:50,/**\n * Allow a submenu to open/remain open on parent click event. Allows cursor to move away from menu.\n * @option\n * @type {boolean}\n * @default false\n */clickOpen:false,/**\n * Amount of time to delay closing a submenu on a mouseleave event.\n * @option\n * @type {number}\n * @default 500\n */closingTime:500,/**\n * Position of the menu relative to what direction the submenus should open. Handled by JS. Can be `'auto'`, `'left'` or `'right'`.\n * @option\n * @type {string}\n * @default 'auto'\n */alignment:'auto',/**\n * Allow clicks on the body to close any open submenus.\n * @option\n * @type {boolean}\n * @default true\n */closeOnClick:true,/**\n * Allow clicks on leaf anchor links to close any open submenus.\n * @option\n * @type {boolean}\n * @default true\n */closeOnClickInside:true,/**\n * Class applied to vertical oriented menus, Foundation default is `vertical`. Update this if using your own class.\n * @option\n * @type {string}\n * @default 'vertical'\n */verticalClass:'vertical',/**\n * Class applied to right-side oriented menus, Foundation default is `align-right`. Update this if using your own class.\n * @option\n * @type {string}\n * @default 'align-right'\n */rightClass:'align-right',/**\n * Boolean to force overide the clicking of links to perform default action, on second touch event for mobile.\n * @option\n * @type {boolean}\n * @default true\n */forceFollow:true};/***/},/***/5:/*!*!*\\\n !*** multi ./js/entries/plugins/foundation.dropdownMenu.js ***!\n \\*//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.dropdownMenu.js */\"./js/entries/plugins/foundation.dropdownMenu.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.dropdownMenu.js.map\n'use strict';var _typeof2=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof2(module))==='object')module.exports=factory(require(\"./foundation.core\"),require(\"./foundation.util.keyboard\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.motion\"),require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"./foundation.util.keyboard\",\"./foundation.util.mediaQuery\",\"./foundation.util.motion\",\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"foundation.offcanvas\"]=factory(require(\"./foundation.core\"),require(\"./foundation.util.keyboard\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.motion\"),require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.offcanvas\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"],root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__,__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__,__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof2(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=9);/*/}(/**//*/{/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.util.keyboard\":/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*//*! no static exports found *//***/function foundationUtilKeyboard(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;/***/},/***/\"./foundation.util.mediaQuery\":/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****//*! no static exports found *//***/function foundationUtilMediaQuery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;/***/},/***/\"./foundation.util.motion\":/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***//*! no static exports found *//***/function foundationUtilMotion(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;/***/},/***/\"./js/entries/plugins/foundation.offcanvas.js\":/*!**!*\\\n !*** ./js/entries/plugins/foundation.offcanvas.js ***!\n \\**//*! exports provided: Foundation, OffCanvas *//***/function jsEntriesPluginsFoundationOffcanvasJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"];});/* harmony import */var _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.offcanvas */\"./js/foundation.offcanvas.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"OffCanvas\",function(){return _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__[\"OffCanvas\"];});_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__[\"OffCanvas\"],'OffCanvas');/***/},/***/\"./js/foundation.offcanvas.js\":/*!*!*\\\n !*** ./js/foundation.offcanvas.js ***!\n \\*//*! exports provided: OffCanvas *//***/function jsFoundationOffcanvasJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"OffCanvas\",function(){return OffCanvas;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.core.plugin */\"./foundation.core\");/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.util.keyboard */\"./foundation.util.keyboard\");/* harmony import */var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);/* harmony import */var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ./foundation.util.mediaQuery */\"./foundation.util.mediaQuery\");/* harmony import */var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__);/* harmony import */var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(/*! ./foundation.util.triggers */\"./js/foundation.util.triggers.js\");function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;i0&&this.options.transition==='push'){// If there's at least one match force contentScroll:false because the absolute top value doesn't get recalculated on scroll\n// Limit to push transition since there's no transform scope for overlap\nthis.options.contentScroll=false;}var inCanvasFor=this.$element.attr('class').match(/\\bin-canvas-for-(\\w+)/);if(inCanvasFor&&inCanvasFor.length===2){// Set `inCanvasOn` option if found in-canvas-for-[BREAKPONT] CSS class\nthis.options.inCanvasOn=inCanvasFor[1];}else if(this.options.inCanvasOn){// Ensure the CSS class is set\nthis.$element.addClass(\"in-canvas-for-\".concat(this.options.inCanvasOn));}if(this.options.inCanvasOn){this._checkInCanvas();}// Initally remove all transition/position CSS classes from off-canvas content container.\nthis._removeContentClasses();}/**\n * Adds event handlers to the off-canvas wrapper and the exit overlay.\n * @function\n * @private\n */},{key:\"_events\",value:function _events(){var _this3=this;this.$element.off('.zf.trigger .zf.offCanvas').on({'open.zf.trigger':this.open.bind(this),'close.zf.trigger':this.close.bind(this),'toggle.zf.trigger':this.toggle.bind(this),'keydown.zf.offCanvas':this._handleKeyboard.bind(this)});if(this.options.closeOnClick===true){var $target=this.options.contentOverlay?this.$overlay:this.$content;$target.on({'click.zf.offCanvas':this.close.bind(this)});}if(this.options.inCanvasOn){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery',function(){_this3._checkInCanvas();});}}/**\n * Applies event listener for elements that will reveal at certain breakpoints.\n * @private\n */},{key:\"_setMQChecker\",value:function _setMQChecker(){var _this=this;this.onLoadListener=Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window),function(){if(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"].atLeast(_this.options.revealOn)){_this.reveal(true);}});jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery',function(){if(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"].atLeast(_this.options.revealOn)){_this.reveal(true);}else{_this.reveal(false);}});}/**\n * Checks if InCanvas on current breakpoint and adjust off-canvas accordingly\n * @private\n */},{key:\"_checkInCanvas\",value:function _checkInCanvas(){this.isInCanvas=_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"].atLeast(this.options.inCanvasOn);if(this.isInCanvas===true){this.close();}}/**\n * Removes the CSS transition/position classes of the off-canvas content container.\n * Removing the classes is important when another off-canvas gets opened that uses the same content container.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */},{key:\"_removeContentClasses\",value:function _removeContentClasses(hasReveal){if(typeof hasReveal!=='boolean'){this.$content.removeClass(this.contentClasses.base.join(' '));}else if(hasReveal===false){this.$content.removeClass(\"has-reveal-\".concat(this.position));}}/**\n * Adds the CSS transition/position classes of the off-canvas content container, based on the opening off-canvas element.\n * Beforehand any transition/position class gets removed.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */},{key:\"_addContentClasses\",value:function _addContentClasses(hasReveal){this._removeContentClasses(hasReveal);if(typeof hasReveal!=='boolean'){this.$content.addClass(\"has-transition-\".concat(this.options.transition,\" has-position-\").concat(this.position));}else if(hasReveal===true){this.$content.addClass(\"has-reveal-\".concat(this.position));}}/**\n * Preserves the fixed behavior of sticky elements on opening an off-canvas with push transition.\n * Since the off-canvas container has got a transform scope in such a case, it is done by calculating position absolute values.\n * @private\n */},{key:\"_fixStickyElements\",value:function _fixStickyElements(){this.$sticky.each(function(_,el){var $el=jquery__WEBPACK_IMPORTED_MODULE_0___default()(el);// If sticky element is currently fixed, adjust its top value to match absolute position due to transform scope\n// Limit to push transition because postion:fixed works without problems for overlap (no transform scope)\nif($el.css('position')==='fixed'){// Save current inline styling to restore it if undoing the absolute fixing\nvar topVal=parseInt($el.css('top'),10);$el.data('offCanvasSticky',{top:topVal});var absoluteTopVal=jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).scrollTop()+topVal;$el.css({top:\"\".concat(absoluteTopVal,\"px\"),width:'100%',transition:'none'});}});}/**\n * Restores the original fixed styling of sticky elements after having closed an off-canvas that got pseudo fixed beforehand.\n * This reverts the changes of _fixStickyElements()\n * @private\n */},{key:\"_unfixStickyElements\",value:function _unfixStickyElements(){this.$sticky.each(function(_,el){var $el=jquery__WEBPACK_IMPORTED_MODULE_0___default()(el);var stickyData=$el.data('offCanvasSticky');// If sticky element has got data object with prior values (meaning it was originally fixed) restore these values once off-canvas is closed\nif(_typeof(stickyData)==='object'){$el.css({top:\"\".concat(stickyData.top,\"px\"),width:'',transition:''});$el.data('offCanvasSticky','');}});}/**\n * Handles the revealing/hiding the off-canvas at breakpoints, not the same as open.\n * @param {Boolean} isRevealed - true if element should be revealed.\n * @function\n */},{key:\"reveal\",value:function reveal(isRevealed){if(isRevealed){this.close();this.isRevealed=true;this.$element.attr('aria-hidden','false');this.$element.off('open.zf.trigger toggle.zf.trigger');this.$element.removeClass('is-closed');}else{this.isRevealed=false;this.$element.attr('aria-hidden','true');this.$element.off('open.zf.trigger toggle.zf.trigger').on({'open.zf.trigger':this.open.bind(this),'toggle.zf.trigger':this.toggle.bind(this)});this.$element.addClass('is-closed');}this._addContentClasses(isRevealed);}/**\n * Stops scrolling of the body when OffCanvas is open on mobile Safari and other troublesome browsers.\n * @function\n * @private\n */},{key:\"_stopScrolling\",value:function _stopScrolling(event){return false;}/**\n * Tag the element given as context whether it can be scrolled up and down.\n * Used to allow or prevent it to scroll. See `_stopScrollPropagation`.\n *\n * Taken and adapted from http://stackoverflow.com/questions/16889447/prevent-full-page-scrolling-ios\n * Only really works for y, not sure how to extend to x or if we need to.\n *\n * @function\n * @private\n */},{key:\"_recordScrollable\",value:function _recordScrollable(event){var elem=this;// called from event handler context with this as elem\n// If the element is scrollable (content overflows), then...\nif(elem.scrollHeight!==elem.clientHeight){// If we're at the top, scroll down one pixel to allow scrolling up\nif(elem.scrollTop===0){elem.scrollTop=1;}// If we're at the bottom, scroll up one pixel to allow scrolling down\nif(elem.scrollTop===elem.scrollHeight-elem.clientHeight){elem.scrollTop=elem.scrollHeight-elem.clientHeight-1;}}elem.allowUp=elem.scrollTop>0;elem.allowDown=elem.scrollTop0){parent.scrollTop--;}else if(elem.scrollTop>=elem.scrollHeight-elem.clientHeight-1&&parent.scrollTop1?rule[0]:'small';var rulePlugin=rule.length>1?rule[1]:rule[0];if(MenuPlugins[rulePlugin]!==null){rulesTree[ruleSize]=MenuPlugins[rulePlugin];}}this.rules=rulesTree;}if(!jquery__WEBPACK_IMPORTED_MODULE_0___default.a.isEmptyObject(this.rules)){this._checkMediaQueries();}// Add data-mutate since children may need it.\nthis.$element.attr('data-mutate',this.$element.attr('data-mutate')||Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6,'responsive-menu'));}/**\n * Initializes events for the Menu.\n * @function\n * @private\n */},{key:\"_events\",value:function _events(){var _this=this;jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery',function(){_this._checkMediaQueries();});// $(window).on('resize.zf.ResponsiveMenu', function() {\n// _this._checkMediaQueries();\n// });\n}/**\n * Checks the current screen width against available media queries. If the media query has changed, and the plugin needed has changed, the plugins will swap out.\n * @function\n * @private\n */},{key:\"_checkMediaQueries\",value:function _checkMediaQueries(){var matchedMq,_this=this;// Iterate through each rule and find the last matching rule\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(this.rules,function(key){if(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"].atLeast(key)){matchedMq=key;}});// No match? No dice\nif(!matchedMq)return;// Plugin already initialized? We good\nif(this.currentPlugin instanceof this.rules[matchedMq].plugin)return;// Remove existing plugin-specific CSS classes\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(MenuPlugins,function(key,value){_this.$element.removeClass(value.cssClass);});// Add the CSS class for the new plugin\nthis.$element.addClass(this.rules[matchedMq].cssClass);// Create an instance of the new plugin\nif(this.currentPlugin)this.currentPlugin.destroy();this.currentPlugin=new this.rules[matchedMq].plugin(this.$element,{});}/**\n * Destroys the instance of the current plugin on this element, as well as the window resize handler that switches the plugins out.\n * @function\n */},{key:\"_destroy\",value:function _destroy(){this.currentPlugin.destroy();jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('.zf.ResponsiveMenu');}}]);return ResponsiveMenu;}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"]);ResponsiveMenu.defaults={};/***/},/***/12:/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.responsiveMenu.js ***!\n \\***//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.responsiveMenu.js */\"./js/entries/plugins/foundation.responsiveMenu.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.responsiveMenu.js.map\n'use strict';var _typeof2=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof2(module))==='object')module.exports=factory(require(\"./foundation.core\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.motion\"),require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"./foundation.util.mediaQuery\",\"./foundation.util.motion\",\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"foundation.responsiveToggle\"]=factory(require(\"./foundation.core\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.motion\"),require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.responsiveToggle\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"],root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__,__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof2(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=13);/*/}(/**//*/{/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.util.mediaQuery\":/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****//*! no static exports found *//***/function foundationUtilMediaQuery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;/***/},/***/\"./foundation.util.motion\":/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***//*! no static exports found *//***/function foundationUtilMotion(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;/***/},/***/\"./js/entries/plugins/foundation.responsiveToggle.js\":/*!****!*\\\n !*** ./js/entries/plugins/foundation.responsiveToggle.js ***!\n \\****//*! exports provided: Foundation, ResponsiveToggle *//***/function jsEntriesPluginsFoundationResponsiveToggleJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"];});/* harmony import */var _foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.responsiveToggle */\"./js/foundation.responsiveToggle.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"ResponsiveToggle\",function(){return _foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveToggle\"];});_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveToggle\"],'ResponsiveToggle');/***/},/***/\"./js/foundation.responsiveToggle.js\":/*!***!*\\\n !*** ./js/foundation.responsiveToggle.js ***!\n \\***//*! exports provided: ResponsiveToggle *//***/function jsFoundationResponsiveToggleJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"ResponsiveToggle\",function(){return ResponsiveToggle;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.util.mediaQuery */\"./foundation.util.mediaQuery\");/* harmony import */var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.util.motion */\"./foundation.util.motion\");/* harmony import */var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ./foundation.core.plugin */\"./foundation.core\");/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__);function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;i').addClass('reveal-overlay'+additionalOverlayClasses).appendTo(this.options.appendTo);}/**\n * Updates position of modal\n * TODO: Figure out if we actually need to cache these values or if it doesn't matter\n * @private\n */},{key:\"_updatePosition\",value:function _updatePosition(){var width=this.$element.outerWidth();var outerWidth=jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).width();var height=this.$element.outerHeight();var outerHeight=jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height();var left,top=null;if(this.options.hOffset==='auto'){left=parseInt((outerWidth-width)/2,10);}else{left=parseInt(this.options.hOffset,10);}if(this.options.vOffset==='auto'){if(height>outerHeight){top=parseInt(Math.min(100,outerHeight/10),10);}else{top=parseInt((outerHeight-height)/4,10);}}else if(this.options.vOffset!==null){top=parseInt(this.options.vOffset,10);}if(top!==null){this.$element.css({top:top+'px'});}// only worry about left if we don't have an overlay or we have a horizontal offset,\n// otherwise we're perfectly in the middle\nif(!this.$overlay||this.options.hOffset!=='auto'){this.$element.css({left:left+'px'});this.$element.css({margin:'0px'});}}/**\n * Adds event handlers for the modal.\n * @private\n */},{key:\"_events\",value:function _events(){var _this3=this;var _this=this;this.$element.on({'open.zf.trigger':this.open.bind(this),'close.zf.trigger':function closeZfTrigger(event,$element){if(event.target===_this.$element[0]||jquery__WEBPACK_IMPORTED_MODULE_0___default()(event.target).parents('[data-closable]')[0]===$element){// only close reveal when it's explicitly called\nreturn _this3.close.apply(_this3);}},'toggle.zf.trigger':this.toggle.bind(this),'resizeme.zf.trigger':function resizemeZfTrigger(){_this._updatePosition();}});if(this.options.closeOnClick&&this.options.overlay){this.$overlay.off('.zf.reveal').on('click.zf.dropdown tap.zf.dropdown',function(e){if(e.target===_this.$element[0]||jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(_this.$element[0],e.target)||!jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(document,e.target)){return;}_this.close();});}if(this.options.deepLink){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on(\"hashchange.zf.reveal:\".concat(this.id),this._handleState.bind(this));}}/**\n * Handles modal methods on back/forward button clicks or any other event that triggers hashchange.\n * @private\n */},{key:\"_handleState\",value:function _handleState(e){if(window.location.hash==='#'+this.id&&!this.isActive){this.open();}else{this.close();}}/**\n * Disables the scroll when Reveal is shown to prevent the background from shifting\n * @param {number} scrollTop - Scroll to visually apply, window current scroll by default\n */},{key:\"_disableScroll\",value:function _disableScroll(scrollTop){scrollTop=scrollTop||jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollTop();if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).height()>jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height()){jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\",-scrollTop);}}/**\n * Reenables the scroll when Reveal closes\n * @param {number} scrollTop - Scroll to restore, html \"top\" property by default (as set by `_disableScroll`)\n */},{key:\"_enableScroll\",value:function _enableScroll(scrollTop){scrollTop=scrollTop||parseInt(jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\"));if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).height()>jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height()){jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\",\"\");jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollTop(-scrollTop);}}/**\n * Opens the modal controlled by `this.$anchor`, and closes all others by default.\n * @function\n * @fires Reveal#closeme\n * @fires Reveal#open\n */},{key:\"open\",value:function open(){var _this4=this;// either update or replace browser history\nvar hash=\"#\".concat(this.id);if(this.options.deepLink&&window.location.hash!==hash){if(window.history.pushState){if(this.options.updateHistory){window.history.pushState({},'',hash);}else{window.history.replaceState({},'',hash);}}else{window.location.hash=hash;}}// Remember anchor that opened it to set focus back later, have general anchors as fallback\nthis.$activeAnchor=jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.activeElement).is(this.$anchor)?jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.activeElement):this.$anchor;this.isActive=true;// Make elements invisible, but remove display: none so we can get size and positioning\nthis.$element.css({'visibility':'hidden'}).show().scrollTop(0);if(this.options.overlay){this.$overlay.css({'visibility':'hidden'}).show();}this._updatePosition();this.$element.hide().css({'visibility':''});if(this.$overlay){this.$overlay.css({'visibility':''}).hide();if(this.$element.hasClass('fast')){this.$overlay.addClass('fast');}else if(this.$element.hasClass('slow')){this.$overlay.addClass('slow');}}if(!this.options.multipleOpened){/**\n * Fires immediately before the modal opens.\n * Closes any other modals that are currently open\n * @event Reveal#closeme\n */this.$element.trigger('closeme.zf.reveal',this.id);}if(jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length===0){this._disableScroll();}var _this=this;// Motion UI method of reveal\nif(this.options.animationIn){var afterAnimation=function afterAnimation(){_this.$element.attr({'aria-hidden':false,'tabindex':-1}).focus();_this._addGlobalClasses();_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].trapFocus(_this.$element);};if(this.options.overlay){_foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateIn(this.$overlay,'fade-in');}_foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateIn(this.$element,this.options.animationIn,function(){if(_this4.$element){// protect against object having been removed\n_this4.focusableElements=_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].findFocusable(_this4.$element);afterAnimation();}});}// jQuery method of reveal\nelse{if(this.options.overlay){this.$overlay.show(0);}this.$element.show(this.options.showDelay);}// handle accessibility\nthis.$element.attr({'aria-hidden':false,'tabindex':-1}).focus();_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].trapFocus(this.$element);this._addGlobalClasses();this._addGlobalListeners();/**\n * Fires when the modal has successfully opened.\n * @event Reveal#open\n */this.$element.trigger('open.zf.reveal');}/**\n * Adds classes and listeners on document required by open modals.\n *\n * The following classes are added and updated:\n * - `.is-reveal-open` - Prevents the scroll on document\n * - `.zf-has-scroll` - Displays a disabled scrollbar on document if required like if the\n * scroll was not disabled. This prevent a \"shift\" of the page content due\n * the scrollbar disappearing when the modal opens.\n *\n * @private\n */},{key:\"_addGlobalClasses\",value:function _addGlobalClasses(){var updateScrollbarClass=function updateScrollbarClass(){jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').toggleClass('zf-has-scroll',!!(jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).height()>jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height()));};this.$element.on('resizeme.zf.trigger.revealScrollbarListener',function(){return updateScrollbarClass();});updateScrollbarClass();jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').addClass('is-reveal-open');}/**\n * Removes classes and listeners on document that were required by open modals.\n * @private\n */},{key:\"_removeGlobalClasses\",value:function _removeGlobalClasses(){this.$element.off('resizeme.zf.trigger.revealScrollbarListener');jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').removeClass('is-reveal-open');jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').removeClass('zf-has-scroll');}/**\n * Adds extra event handlers for the body and window if necessary.\n * @private\n */},{key:\"_addGlobalListeners\",value:function _addGlobalListeners(){var _this=this;if(!this.$element){return;}// If we're in the middle of cleanup, don't freak out\nthis.focusableElements=_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].findFocusable(this.$element);if(!this.options.overlay&&this.options.closeOnClick&&!this.options.fullScreen){jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').on('click.zf.dropdown tap.zf.dropdown',function(e){if(e.target===_this.$element[0]||jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(_this.$element[0],e.target)||!jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(document,e.target)){return;}_this.close();});}if(this.options.closeOnEsc){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('keydown.zf.reveal',function(e){_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].handleKey(e,'Reveal',{close:function close(){if(_this.options.closeOnEsc){_this.close();}}});});}}/**\n * Closes the modal.\n * @function\n * @fires Reveal#closed\n */},{key:\"close\",value:function close(){if(!this.isActive||!this.$element.is(':visible')){return false;}var _this=this;// Motion UI method of hiding\nif(this.options.animationOut){if(this.options.overlay){_foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateOut(this.$overlay,'fade-out');}_foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateOut(this.$element,this.options.animationOut,finishUp);}// jQuery method of hiding\nelse{this.$element.hide(this.options.hideDelay);if(this.options.overlay){this.$overlay.hide(0,finishUp);}else{finishUp();}}// Conditionals to remove extra event listeners added on open\nif(this.options.closeOnEsc){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('keydown.zf.reveal');}if(!this.options.overlay&&this.options.closeOnClick){jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').off('click.zf.dropdown tap.zf.dropdown');}this.$element.off('keydown.zf.reveal');function finishUp(){// Get the current top before the modal is closed and restore the scroll after.\n// TODO: use component properties instead of HTML properties\n// See https://github.com/foundation/foundation-sites/pull/10786\nvar scrollTop=parseInt(jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\"));if(jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length===0){_this._removeGlobalClasses();// also remove .is-reveal-open from the html element when there is no opened reveal\n}_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].releaseFocus(_this.$element);_this.$element.attr('aria-hidden',true);if(jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length===0){_this._enableScroll(scrollTop);}/**\n * Fires when the modal is done closing.\n * @event Reveal#closed\n */_this.$element.trigger('closed.zf.reveal');}/**\n * Resets the modal content\n * This prevents a running video to keep going in the background\n */if(this.options.resetOnClose){this.$element.html(this.$element.html());}this.isActive=false;// If deepLink and we did not switched to an other modal...\nif(_this.options.deepLink&&window.location.hash===\"#\".concat(this.id)){// Remove the history hash\nif(window.history.replaceState){var urlWithoutHash=window.location.pathname+window.location.search;if(this.options.updateHistory){window.history.pushState({},'',urlWithoutHash);// remove the hash\n}else{window.history.replaceState('',document.title,urlWithoutHash);}}else{window.location.hash='';}}this.$activeAnchor.focus();}/**\n * Toggles the open/closed state of a modal.\n * @function\n */},{key:\"toggle\",value:function toggle(){if(this.isActive){this.close();}else{this.open();}}},{key:\"_destroy\",/**\n * Destroys an instance of a modal.\n * @function\n */value:function _destroy(){if(this.options.overlay){this.$element.appendTo(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.options.appendTo));// move $element outside of $overlay to prevent error unregisterPlugin()\nthis.$overlay.hide().off().remove();}this.$element.hide().off();this.$anchor.off('.zf');jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(\".zf.reveal:\".concat(this.id));if(this.onLoadListener)jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);if(jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length===0){this._removeGlobalClasses();// also remove .is-reveal-open from the html element when there is no opened reveal\n}}}]);return Reveal;}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);Reveal.defaults={/**\n * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.\n * @option\n * @type {string}\n * @default ''\n */animationIn:'',/**\n * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.\n * @option\n * @type {string}\n * @default ''\n */animationOut:'',/**\n * Time, in ms, to delay the opening of a modal after a click if no animation used.\n * @option\n * @type {number}\n * @default 0\n */showDelay:0,/**\n * Time, in ms, to delay the closing of a modal after a click if no animation used.\n * @option\n * @type {number}\n * @default 0\n */hideDelay:0,/**\n * Allows a click on the body/overlay to close the modal.\n * @option\n * @type {boolean}\n * @default true\n */closeOnClick:true,/**\n * Allows the modal to close if the user presses the `ESCAPE` key.\n * @option\n * @type {boolean}\n * @default true\n */closeOnEsc:true,/**\n * If true, allows multiple modals to be displayed at once.\n * @option\n * @type {boolean}\n * @default false\n */multipleOpened:false,/**\n * Distance, in pixels, the modal should push down from the top of the screen.\n * @option\n * @type {number|string}\n * @default auto\n */vOffset:'auto',/**\n * Distance, in pixels, the modal should push in from the side of the screen.\n * @option\n * @type {number|string}\n * @default auto\n */hOffset:'auto',/**\n * Allows the modal to be fullscreen, completely blocking out the rest of the view. JS checks for this as well.\n * @option\n * @type {boolean}\n * @default false\n */fullScreen:false,/**\n * Allows the modal to generate an overlay div, which will cover the view when modal opens.\n * @option\n * @type {boolean}\n * @default true\n */overlay:true,/**\n * Allows the modal to remove and reinject markup on close. Should be true if using video elements w/o using provider's api, otherwise, videos will continue to play in the background.\n * @option\n * @type {boolean}\n * @default false\n */resetOnClose:false,/**\n * Link the location hash to the modal.\n * Set the location hash when the modal is opened/closed, and open/close the modal when the location changes.\n * @option\n * @type {boolean}\n * @default false\n */deepLink:false,/**\n * If `deepLink` is enabled, update the browser history with the open modal\n * @option\n * @default false\n */updateHistory:false,/**\n * Allows the modal to append to custom div.\n * @option\n * @type {string}\n * @default \"body\"\n */appendTo:\"body\",/**\n * Allows adding additional class names to the reveal overlay.\n * @option\n * @type {string}\n * @default ''\n */additionalOverlayClasses:''};/***/},/***/\"./js/foundation.util.triggers.js\":/*!!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\//*! exports provided: Triggers *//***/function jsFoundationUtilTriggersJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Triggers\",function(){return Triggers;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.core.utils */\"./foundation.core\");/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.util.motion */\"./foundation.util.motion\");/* harmony import */var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}var MutationObserver=function(){var prefixes=['WebKit','Moz','O','Ms',''];for(var i=0;i1&&arguments[1]!==undefined?arguments[1]:SmoothScroll.defaults;var callback=arguments.length>2?arguments[2]:undefined;var $loc=jquery__WEBPACK_IMPORTED_MODULE_0___default()(loc);// Do nothing if target does not exist to prevent errors\nif(!$loc.length)return false;var scrollPos=Math.round($loc.offset().top-options.threshold/2-options.offset);jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').stop(true).animate({scrollTop:scrollPos},options.animationDuration,options.animationEasing,function(){if(typeof callback==='function'){callback();}});}}]);return SmoothScroll;}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);/**\n * Default settings for plugin.\n */SmoothScroll.defaults={/**\n * Amount of time, in ms, the animated scrolling should take between locations.\n * @option\n * @type {number}\n * @default 500\n */animationDuration:500,/**\n * Animation style to use when scrolling between locations. Can be `'swing'` or `'linear'`.\n * @option\n * @type {string}\n * @default 'linear'\n * @see {@link https://api.jquery.com/animate|Jquery animate}\n */animationEasing:'linear',/**\n * Number of pixels to use as a marker for location changes.\n * @option\n * @type {number}\n * @default 50\n */threshold:50,/**\n * Number of pixels to offset the scroll of the page on item click if using a sticky nav bar.\n * @option\n * @type {number}\n * @default 0\n */offset:0};/***/},/***/16:/*!*!*\\\n !*** multi ./js/entries/plugins/foundation.smoothScroll.js ***!\n \\*//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.smoothScroll.js */\"./js/entries/plugins/foundation.smoothScroll.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.smoothScroll.js.map\n'use strict';var _typeof2=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof2(module))==='object')module.exports=factory(require(\"./foundation.core\"),require(\"./foundation.smoothScroll\"),require(\"./foundation.util.motion\"),require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"./foundation.smoothScroll\",\"./foundation.util.motion\",\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"foundation.magellan\"]=factory(require(\"./foundation.core\"),require(\"./foundation.smoothScroll\"),require(\"./foundation.util.motion\"),require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.magellan\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.smoothScroll\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"],root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__,__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof2(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=8);/*/}(/**//*/{/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.smoothScroll\":/*!**!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.smoothScroll\"],\"amd\":\"./foundation.smoothScroll\",\"commonjs\":\"./foundation.smoothScroll\",\"commonjs2\":\"./foundation.smoothScroll\"} ***!\n \\**//*! no static exports found *//***/function foundationSmoothScroll(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__;/***/},/***/\"./foundation.util.motion\":/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***//*! no static exports found *//***/function foundationUtilMotion(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;/***/},/***/\"./js/entries/plugins/foundation.magellan.js\":/*!*!*\\\n !*** ./js/entries/plugins/foundation.magellan.js ***!\n \\*//*! exports provided: Foundation, Magellan *//***/function jsEntriesPluginsFoundationMagellanJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"];});/* harmony import */var _foundation_magellan__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.magellan */\"./js/foundation.magellan.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Magellan\",function(){return _foundation_magellan__WEBPACK_IMPORTED_MODULE_1__[\"Magellan\"];});_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_magellan__WEBPACK_IMPORTED_MODULE_1__[\"Magellan\"],'Magellan');/***/},/***/\"./js/foundation.magellan.js\":/*!!*\\\n !*** ./js/foundation.magellan.js ***!\n \\//*! exports provided: Magellan *//***/function jsFoundationMagellanJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Magellan\",function(){return Magellan;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.core.plugin */\"./foundation.core\");/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.smoothScroll */\"./foundation.smoothScroll\");/* harmony import */var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2__);/* harmony import */var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ./foundation.util.triggers */\"./js/foundation.util.triggers.js\");function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;inewScrollPos;this.scrollPos=newScrollPos;var activeIdx;// Before the first point: no link\nif(newScrollPos=_this.topPoint?false:true);}});_this._events(id.split('-').reverse().join('-'));});}/**\n * If using multiple elements as anchors, calculates the top and bottom pixel values the sticky thing should stick and unstick on.\n * @function\n * @private\n */},{key:\"_parsePoints\",value:function _parsePoints(){var top=this.options.topAnchor==\"\"?1:this.options.topAnchor,btm=this.options.btmAnchor==\"\"?document.documentElement.scrollHeight:this.options.btmAnchor,pts=[top,btm],breaks={};for(var i=0,len=pts.length;i=this.topPoint){if(scroll<=this.bottomPoint){if(!this.isStuck){this._setSticky();}}else{if(this.isStuck){this._removeSticky(false);}}}else{if(this.isStuck){this._removeSticky(true);}}}/**\n * Causes the $element to become stuck.\n * Adds `position: fixed;`, and helper classes.\n * @fires Sticky#stuckto\n * @function\n * @private\n */},{key:\"_setSticky\",value:function _setSticky(){var _this=this,stickTo=this.options.stickTo,mrgn=stickTo==='top'?'marginTop':'marginBottom',notStuckTo=stickTo==='top'?'bottom':'top',css={};css[mrgn]=\"\".concat(this.options[mrgn],\"em\");css[stickTo]=0;css[notStuckTo]='auto';this.isStuck=true;this.$element.removeClass(\"is-anchored is-at-\".concat(notStuckTo)).addClass(\"is-stuck is-at-\".concat(stickTo)).css(css)/**\n * Fires when the $element has become `position: fixed;`\n * Namespaced to `top` or `bottom`, e.g. `sticky.zf.stuckto:top`\n * @event Sticky#stuckto\n */.trigger(\"sticky.zf.stuckto:\".concat(stickTo));this.$element.on(\"transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd\",function(){_this._setSizes();});}/**\n * Causes the $element to become unstuck.\n * Removes `position: fixed;`, and helper classes.\n * Adds other helper classes.\n * @param {Boolean} isTop - tells the function if the $element should anchor to the top or bottom of its $anchor element.\n * @fires Sticky#unstuckfrom\n * @private\n */},{key:\"_removeSticky\",value:function _removeSticky(isTop){var stickTo=this.options.stickTo,stickToTop=stickTo==='top',css={},anchorPt=(this.points?this.points[1]-this.points[0]:this.anchorHeight)-this.elemHeight,mrgn=stickToTop?'marginTop':'marginBottom',topOrBottom=isTop?'top':'bottom';css[mrgn]=0;css['bottom']='auto';if(isTop){css['top']=0;}else{css['top']=anchorPt;}this.isStuck=false;this.$element.removeClass(\"is-stuck is-at-\".concat(stickTo)).addClass(\"is-anchored is-at-\".concat(topOrBottom)).css(css)/**\n * Fires when the $element has become anchored.\n * Namespaced to `top` or `bottom`, e.g. `sticky.zf.unstuckfrom:bottom`\n * @event Sticky#unstuckfrom\n */.trigger(\"sticky.zf.unstuckfrom:\".concat(topOrBottom));}/**\n * Sets the $element and $container sizes for plugin.\n * Calls `_setBreakPoints`.\n * @param {Function} cb - optional callback function to fire on completion of `_setBreakPoints`.\n * @private\n */},{key:\"_setSizes\",value:function _setSizes(cb){this.canStick=_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__[\"MediaQuery\"].is(this.options.stickyOn);if(!this.canStick){if(cb&&typeof cb==='function'){cb();}}var _this=this,newElemWidth=this.$container[0].getBoundingClientRect().width,comp=window.getComputedStyle(this.$container[0]),pdngl=parseInt(comp['padding-left'],10),pdngr=parseInt(comp['padding-right'],10);if(this.$anchor&&this.$anchor.length){this.anchorHeight=this.$anchor[0].getBoundingClientRect().height;}else{this._parsePoints();}this.$element.css({'max-width':\"\".concat(newElemWidth-pdngl-pdngr,\"px\")});// Recalculate the height only if it is \"dynamic\"\nif(this.options.dynamicHeight||!this.containerHeight){// Get the sticked element height and apply it to the container to \"hold the place\"\nvar newContainerHeight=this.$element[0].getBoundingClientRect().height||this.containerHeight;newContainerHeight=this.$element.css(\"display\")==\"none\"?0:newContainerHeight;this.$container.css('height',newContainerHeight);this.containerHeight=newContainerHeight;}this.elemHeight=this.containerHeight;if(!this.isStuck){if(this.$element.hasClass('is-at-bottom')){var anchorPt=(this.points?this.points[1]-this.$container.offset().top:this.anchorHeight)-this.elemHeight;this.$element.css('top',anchorPt);}}this._setBreakPoints(this.containerHeight,function(){if(cb&&typeof cb==='function'){cb();}});}/**\n * Sets the upper and lower breakpoints for the element to become sticky/unsticky.\n * @param {Number} elemHeight - px value for sticky.$element height, calculated by `_setSizes`.\n * @param {Function} cb - optional callback function to be called on completion.\n * @private\n */},{key:\"_setBreakPoints\",value:function _setBreakPoints(elemHeight,cb){if(!this.canStick){if(cb&&typeof cb==='function'){cb();}else{return false;}}var mTop=emCalc(this.options.marginTop),mBtm=emCalc(this.options.marginBottom),topPoint=this.points?this.points[0]:this.$anchor.offset().top,bottomPoint=this.points?this.points[1]:topPoint+this.anchorHeight,// topPoint = this.$anchor.offset().top || this.points[0],\n// bottomPoint = topPoint + this.anchorHeight || this.points[1],\nwinHeight=window.innerHeight;if(this.options.stickTo==='top'){topPoint-=mTop;bottomPoint-=elemHeight+mTop;}else if(this.options.stickTo==='bottom'){topPoint-=winHeight-(elemHeight+mBtm);bottomPoint-=winHeight-mBtm;}else{//this would be the stickTo: both option... tricky\n}this.topPoint=topPoint;this.bottomPoint=bottomPoint;if(cb&&typeof cb==='function'){cb();}}/**\n * Destroys the current sticky element.\n * Resets the element to the top position first.\n * Removes event listeners, JS-added css properties and classes, and unwraps the $element if the JS added the $container.\n * @function\n */},{key:\"_destroy\",value:function _destroy(){this._removeSticky(true);this.$element.removeClass(\"\".concat(this.options.stickyClass,\" is-anchored is-at-top\")).css({height:'',top:'',bottom:'','max-width':''}).off('resizeme.zf.trigger').off('mutateme.zf.trigger');if(this.$anchor&&this.$anchor.length){this.$anchor.off('change.zf.sticky');}if(this.scrollListener)jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.scrollListener);if(this.onLoadListener)jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);if(this.wasWrapped){this.$element.unwrap();}else{this.$container.removeClass(this.options.containerClass).css({height:''});}}}]);return Sticky;}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);Sticky.defaults={/**\n * Customizable container template. Add your own classes for styling and sizing.\n * @option\n * @type {string}\n * @default '<div data-sticky-container></div>'\n */container:'
    ',/**\n * Location in the view the element sticks to. Can be `'top'` or `'bottom'`.\n * @option\n * @type {string}\n * @default 'top'\n */stickTo:'top',/**\n * If anchored to a single element, the id of that element.\n * @option\n * @type {string}\n * @default ''\n */anchor:'',/**\n * If using more than one element as anchor points, the id of the top anchor.\n * @option\n * @type {string}\n * @default ''\n */topAnchor:'',/**\n * If using more than one element as anchor points, the id of the bottom anchor.\n * @option\n * @type {string}\n * @default ''\n */btmAnchor:'',/**\n * Margin, in `em`'s to apply to the top of the element when it becomes sticky.\n * @option\n * @type {number}\n * @default 1\n */marginTop:1,/**\n * Margin, in `em`'s to apply to the bottom of the element when it becomes sticky.\n * @option\n * @type {number}\n * @default 1\n */marginBottom:1,/**\n * Breakpoint string that is the minimum screen size an element should become sticky.\n * @option\n * @type {string}\n * @default 'medium'\n */stickyOn:'medium',/**\n * Class applied to sticky element, and removed on destruction. Foundation defaults to `sticky`.\n * @option\n * @type {string}\n * @default 'sticky'\n */stickyClass:'sticky',/**\n * Class applied to sticky container. Foundation defaults to `sticky-container`.\n * @option\n * @type {string}\n * @default 'sticky-container'\n */containerClass:'sticky-container',/**\n * If true (by default), keep the sticky container the same height as the element. Otherwise, the container height is set once and does not change.\n * @option\n * @type {boolean}\n * @default true\n */dynamicHeight:true,/**\n * Number of scroll events between the plugin's recalculating sticky points. Setting it to `0` will cause it to recalc every scroll event, setting it to `-1` will prevent recalc on scroll.\n * @option\n * @type {number}\n * @default -1\n */checkEvery:-1};/**\n * Helper function to calculate em values\n * @param Number {em} - number of em's to calculate into pixels\n */function emCalc(em){return parseInt(window.getComputedStyle(document.body,null).fontSize,10)*em;}/***/},/***/\"./js/foundation.util.triggers.js\":/*!!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\//*! exports provided: Triggers *//***/function jsFoundationUtilTriggersJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"Triggers\",function(){return Triggers;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.core.utils */\"./foundation.core\");/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.util.motion */\"./foundation.util.motion\");/* harmony import */var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}var MutationObserver=function(){var prefixes=['WebKit','Moz','O','Ms',''];for(var i=0;i=0?anchor.slice(1):anchor;var $anchor=anchorNoHash&&jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(anchorNoHash));var $link=anchor&&_this2.$element.find(\"[href$=\\\"\".concat(anchor,\"\\\"],[data-tabs-target=\\\"\").concat(anchorNoHash,\"\\\"]\")).first();// Whether the anchor element that has been found is part of this element\nvar isOwnAnchor=!!($anchor.length&&$link.length);if(isOwnAnchor){// If there is an anchor for the hash, select it\nif($anchor&&$anchor.length&&$link&&$link.length){_this2.selectTab($anchor,true);}// Otherwise, collapse everything\nelse{_this2._collapse();}// Roll up a little to show the titles\nif(_this2.options.deepLinkSmudge){var offset=_this2.$element.offset();jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').animate({scrollTop:offset.top},_this2.options.deepLinkSmudgeDelay);}/**\n * Fires when the plugin has deeplinked at pageload\n * @event Tabs#deeplink\n */_this2.$element.trigger('deeplink.zf.tabs',[$link,$anchor]);}};//use browser to open a tab, if it exists in this tabset\nif(this.options.deepLink){this._checkDeepLink();}this._events();this._isInitializing=false;}/**\n * Adds event handlers for items within the tabs.\n * @private\n */},{key:\"_events\",value:function _events(){this._addKeyHandler();this._addClickHandler();this._setHeightMqHandler=null;if(this.options.matchHeight){this._setHeightMqHandler=this._setHeight.bind(this);jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery',this._setHeightMqHandler);}if(this.options.deepLink){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('hashchange',this._checkDeepLink);}}/**\n * Adds click handlers for items within the tabs.\n * @private\n */},{key:\"_addClickHandler\",value:function _addClickHandler(){var _this=this;this.$element.off('click.zf.tabs').on('click.zf.tabs',\".\".concat(this.options.linkClass),function(e){e.preventDefault();_this._handleTabChange(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));});}/**\n * Adds keyboard event handlers for items within the tabs.\n * @private\n */},{key:\"_addKeyHandler\",value:function _addKeyHandler(){var _this=this;this.$tabTitles.off('keydown.zf.tabs').on('keydown.zf.tabs',function(e){if(e.which===9)return;var $element=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),$elements=$element.parent('ul').children('li'),$prevElement,$nextElement;$elements.each(function(i){if(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)){if(_this.options.wrapOnKeys){$prevElement=i===0?$elements.last():$elements.eq(i-1);$nextElement=i===$elements.length-1?$elements.first():$elements.eq(i+1);}else{$prevElement=$elements.eq(Math.max(0,i-1));$nextElement=$elements.eq(Math.min(i+1,$elements.length-1));}return;}});// handle keyboard event with keyboard util\n_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].handleKey(e,'Tabs',{open:function open(){$element.find('[role=\"tab\"]').focus();_this._handleTabChange($element);},previous:function previous(){$prevElement.find('[role=\"tab\"]').focus();_this._handleTabChange($prevElement);},next:function next(){$nextElement.find('[role=\"tab\"]').focus();_this._handleTabChange($nextElement);},handled:function handled(){e.preventDefault();}});});}/**\n * Opens the tab `$targetContent` defined by `$target`. Collapses active tab.\n * @param {jQuery} $target - Tab to open.\n * @param {boolean} historyHandled - browser has already handled a history update\n * @fires Tabs#change\n * @function\n */},{key:\"_handleTabChange\",value:function _handleTabChange($target,historyHandled){// With `activeCollapse`, if the target is the active Tab, collapse it.\nif($target.hasClass(\"\".concat(this.options.linkActiveClass))){if(this.options.activeCollapse){this._collapse();}return;}var $oldTab=this.$element.find(\".\".concat(this.options.linkClass,\".\").concat(this.options.linkActiveClass)),$tabLink=$target.find('[role=\"tab\"]'),target=$tabLink.attr('data-tabs-target'),anchor=target&&target.length?\"#\".concat(target):$tabLink[0].hash,$targetContent=this.$tabContent.find(anchor);//close old tab\nthis._collapseTab($oldTab);//open new tab\nthis._openTab($target);//either replace or update browser history\nif(this.options.deepLink&&!historyHandled){if(this.options.updateHistory){history.pushState({},'',anchor);}else{history.replaceState({},'',anchor);}}/**\n * Fires when the plugin has successfully changed tabs.\n * @event Tabs#change\n */this.$element.trigger('change.zf.tabs',[$target,$targetContent]);//fire to children a mutation event\n$targetContent.find(\"[data-mutate]\").trigger(\"mutateme.zf.trigger\");}/**\n * Opens the tab `$targetContent` defined by `$target`.\n * @param {jQuery} $target - Tab to open.\n * @function\n */},{key:\"_openTab\",value:function _openTab($target){var $tabLink=$target.find('[role=\"tab\"]'),hash=$tabLink.attr('data-tabs-target')||$tabLink[0].hash.slice(1),$targetContent=this.$tabContent.find(\"#\".concat(hash));$target.addClass(\"\".concat(this.options.linkActiveClass));$tabLink.attr({'aria-selected':'true','tabindex':'0'});$targetContent.addClass(\"\".concat(this.options.panelActiveClass)).removeAttr('aria-hidden');}/**\n * Collapses `$targetContent` defined by `$target`.\n * @param {jQuery} $target - Tab to collapse.\n * @function\n */},{key:\"_collapseTab\",value:function _collapseTab($target){var $target_anchor=$target.removeClass(\"\".concat(this.options.linkActiveClass)).find('[role=\"tab\"]').attr({'aria-selected':'false','tabindex':-1});jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat($target_anchor.attr('aria-controls'))).removeClass(\"\".concat(this.options.panelActiveClass)).attr({'aria-hidden':'true'});}/**\n * Collapses the active Tab.\n * @fires Tabs#collapse\n * @function\n */},{key:\"_collapse\",value:function _collapse(){var $activeTab=this.$element.find(\".\".concat(this.options.linkClass,\".\").concat(this.options.linkActiveClass));if($activeTab.length){this._collapseTab($activeTab);/**\n * Fires when the plugin has successfully collapsed tabs.\n * @event Tabs#collapse\n */this.$element.trigger('collapse.zf.tabs',[$activeTab]);}}/**\n * Public method for selecting a content pane to display.\n * @param {jQuery | String} elem - jQuery object or string of the id of the pane to display.\n * @param {boolean} historyHandled - browser has already handled a history update\n * @function\n */},{key:\"selectTab\",value:function selectTab(elem,historyHandled){var idStr,hashIdStr;if(_typeof(elem)==='object'){idStr=elem[0].id;}else{idStr=elem;}if(idStr.indexOf('#')<0){hashIdStr=\"#\".concat(idStr);}else{hashIdStr=idStr;idStr=idStr.slice(1);}var $target=this.$tabTitles.has(\"[href$=\\\"\".concat(hashIdStr,\"\\\"],[data-tabs-target=\\\"\").concat(idStr,\"\\\"]\")).first();this._handleTabChange($target,historyHandled);}},{key:\"_setHeight\",/**\n * Sets the height of each panel to the height of the tallest panel.\n * If enabled in options, gets called on media query change.\n * If loading content via external source, can be called directly or with _reflow.\n * If enabled with `data-match-height=\"true\"`, tabs sets to equal height\n * @function\n * @private\n */value:function _setHeight(){var max=0,_this=this;// Lock down the `this` value for the root tabs object\nthis.$tabContent.find(\".\".concat(this.options.panelClass)).css('height','').each(function(){var panel=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),isActive=panel.hasClass(\"\".concat(_this.options.panelActiveClass));// get the options from the parent instead of trying to get them from the child\nif(!isActive){panel.css({'visibility':'hidden','display':'block'});}var temp=this.getBoundingClientRect().height;if(!isActive){panel.css({'visibility':'','display':''});}max=temp>max?temp:max;}).css('height',\"\".concat(max,\"px\"));}/**\n * Destroys an instance of tabs.\n * @fires Tabs#destroyed\n */},{key:\"_destroy\",value:function _destroy(){this.$element.find(\".\".concat(this.options.linkClass)).off('.zf.tabs').hide().end().find(\".\".concat(this.options.panelClass)).hide();if(this.options.matchHeight){if(this._setHeightMqHandler!=null){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('changed.zf.mediaquery',this._setHeightMqHandler);}}if(this.options.deepLink){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('hashchange',this._checkDeepLink);}if(this.onLoadListener){jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);}}}]);return Tabs;}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);Tabs.defaults={/**\n * Link the location hash to the active pane.\n * Set the location hash when the active pane changes, and open the corresponding pane when the location changes.\n * @option\n * @type {boolean}\n * @default false\n */deepLink:false,/**\n * If `deepLink` is enabled, adjust the deep link scroll to make sure the top of the tab panel is visible\n * @option\n * @type {boolean}\n * @default false\n */deepLinkSmudge:false,/**\n * If `deepLinkSmudge` is enabled, animation time (ms) for the deep link adjustment\n * @option\n * @type {number}\n * @default 300\n */deepLinkSmudgeDelay:300,/**\n * If `deepLink` is enabled, update the browser history with the open tab\n * @option\n * @type {boolean}\n * @default false\n */updateHistory:false,/**\n * Allows the window to scroll to content of active pane on load.\n * Not recommended if more than one tab panel per page.\n * @option\n * @type {boolean}\n * @default false\n */autoFocus:false,/**\n * Allows keyboard input to 'wrap' around the tab links.\n * @option\n * @type {boolean}\n * @default true\n */wrapOnKeys:true,/**\n * Allows the tab content panes to match heights if set to true.\n * @option\n * @type {boolean}\n * @default false\n */matchHeight:false,/**\n * Allows active tabs to collapse when clicked.\n * @option\n * @type {boolean}\n * @default false\n */activeCollapse:false,/**\n * Class applied to `li`'s in tab link list.\n * @option\n * @type {string}\n * @default 'tabs-title'\n */linkClass:'tabs-title',/**\n * Class applied to the active `li` in tab link list.\n * @option\n * @type {string}\n * @default 'is-active'\n */linkActiveClass:'is-active',/**\n * Class applied to the content containers.\n * @option\n * @type {string}\n * @default 'tabs-panel'\n */panelClass:'tabs-panel',/**\n * Class applied to the active content container.\n * @option\n * @type {string}\n * @default 'is-active'\n */panelActiveClass:'is-active'};/***/},/***/18:/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.tabs.js ***!\n \\***//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.tabs.js */\"./js/entries/plugins/foundation.tabs.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.tabs.js.map\n'use strict';var _typeof2=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj;};(function webpackUniversalModuleDefinition(root,factory){if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object'&&(typeof module==='undefined'?'undefined':_typeof2(module))==='object')module.exports=factory(require(\"./foundation.accordion\"),require(\"./foundation.core\"),require(\"./foundation.tabs\"),require(\"./foundation.util.mediaQuery\"),require(\"jquery\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.accordion\",\"./foundation.core\",\"./foundation.tabs\",\"./foundation.util.mediaQuery\",\"jquery\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"foundation.responsiveAccordionTabs\"]=factory(require(\"./foundation.accordion\"),require(\"./foundation.core\"),require(\"./foundation.tabs\"),require(\"./foundation.util.mediaQuery\"),require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.responsiveAccordionTabs\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.accordion\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.tabs\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"],root[\"jQuery\"]);})(window,function(__WEBPACK_EXTERNAL_MODULE__foundation_accordion__,__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE__foundation_tabs__,__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__,__WEBPACK_EXTERNAL_MODULE_jquery__){return(/*/function(modules){// webpackBootstrap\n/*/// The module cache\n/*/var installedModules={};/*//*/// The require function\n/*/function __webpack_require__(moduleId){/*//*/// Check if module is in cache\n/*/if(installedModules[moduleId]){/*/return installedModules[moduleId].exports;/*/}/*/// Create a new module (and put it into the cache)\n/*/var module=installedModules[moduleId]={/*/i:moduleId,/*/l:false,/*/exports:{}/*/};/*//*/// Execute the module function\n/*/modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);/*//*/// Flag the module as loaded\n/*/module.l=true;/*//*/// Return the exports of the module\n/*/return module.exports;/*/}/*//*//*/// expose the modules object (__webpack_modules__)\n/*/__webpack_require__.m=modules;/*//*/// expose the module cache\n/*/__webpack_require__.c=installedModules;/*//*/// define getter function for harmony exports\n/*/__webpack_require__.d=function(exports,name,getter){/*/if(!__webpack_require__.o(exports,name)){/*/Object.defineProperty(exports,name,{enumerable:true,get:getter});/*/}/*/};/*//*/// define __esModule on exports\n/*/__webpack_require__.r=function(exports){/*/if(typeof Symbol!=='undefined'&&Symbol.toStringTag){/*/Object.defineProperty(exports,Symbol.toStringTag,{value:'Module'});/*/}/*/Object.defineProperty(exports,'__esModule',{value:true});/*/};/*//*/// create a fake namespace object\n/*/// mode & 1: value is a module id, require it\n/*/// mode & 2: merge all properties of value into the ns\n/*/// mode & 4: return value when already ns object\n/*/// mode & 8|1: behave like require\n/*/__webpack_require__.t=function(value,mode){/*/if(mode&1)value=__webpack_require__(value);/*/if(mode&8)return value;/*/if(mode&4&&(typeof value==='undefined'?'undefined':_typeof2(value))==='object'&&value&&value.__esModule)return value;/*/var ns=Object.create(null);/*/__webpack_require__.r(ns);/*/Object.defineProperty(ns,'default',{enumerable:true,value:value});/*/if(mode&2&&typeof value!='string')for(var key in value){__webpack_require__.d(ns,key,function(key){return value[key];}.bind(null,key));}/*/return ns;/*/};/*//*/// getDefaultExport function for compatibility with non-harmony modules\n/*/__webpack_require__.n=function(module){/*/var getter=module&&module.__esModule?/*/function getDefault(){return module['default'];}:/*/function getModuleExports(){return module;};/*/__webpack_require__.d(getter,'a',getter);/*/return getter;/*/};/*//*/// Object.prototype.hasOwnProperty.call\n/*/__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property);};/*//*/// __webpack_public_path__\n/*/__webpack_require__.p=\"\";/*//*//*/// Load entry module and return exports\n/*/return __webpack_require__(__webpack_require__.s=11);/*/}(/**//*/{/***/\"./foundation.accordion\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.accordion\"],\"amd\":\"./foundation.accordion\",\"commonjs\":\"./foundation.accordion\",\"commonjs2\":\"./foundation.accordion\"} ***!\n \\//*! no static exports found *//***/function foundationAccordion(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_accordion__;/***/},/***/\"./foundation.core\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\//*! no static exports found *//***/function foundationCore(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.tabs\":/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.tabs\"],\"amd\":\"./foundation.tabs\",\"commonjs\":\"./foundation.tabs\",\"commonjs2\":\"./foundation.tabs\"} ***!\n \\//*! no static exports found *//***/function foundationTabs(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_tabs__;/***/},/***/\"./foundation.util.mediaQuery\":/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****//*! no static exports found *//***/function foundationUtilMediaQuery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;/***/},/***/\"./js/entries/plugins/foundation.responsiveAccordionTabs.js\":/*!*!*\\\n !*** ./js/entries/plugins/foundation.responsiveAccordionTabs.js ***!\n \\*//*! exports provided: Foundation, ResponsiveAccordionTabs *//***/function jsEntriesPluginsFoundationResponsiveAccordionTabsJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core */\"./foundation.core\");/* harmony import */var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"Foundation\",function(){return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"];});/* harmony import */var _foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.responsiveAccordionTabs */\"./js/foundation.responsiveAccordionTabs.js\");/* harmony reexport (safe) */__webpack_require__.d(__webpack_exports__,\"ResponsiveAccordionTabs\",function(){return _foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveAccordionTabs\"];});_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveAccordionTabs\"],'ResponsiveAccordionTabs');/***/},/***/\"./js/foundation.responsiveAccordionTabs.js\":/*!!*\\\n !*** ./js/foundation.responsiveAccordionTabs.js ***!\n \\//*! exports provided: ResponsiveAccordionTabs *//***/function jsFoundationResponsiveAccordionTabsJs(module,__webpack_exports__,__webpack_require__){\"use strict\";__webpack_require__.r(__webpack_exports__);/* harmony export (binding) */__webpack_require__.d(__webpack_exports__,\"ResponsiveAccordionTabs\",function(){return ResponsiveAccordionTabs;});/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! jquery */\"jquery\");/* harmony import */var jquery__WEBPACK_IMPORTED_MODULE_0___default=/*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);/* harmony import */var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.util.mediaQuery */\"./foundation.util.mediaQuery\");/* harmony import */var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.core.utils */\"./foundation.core\");/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__);/* harmony import */var _foundation_accordion__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ./foundation.accordion */\"./foundation.accordion\");/* harmony import */var _foundation_accordion__WEBPACK_IMPORTED_MODULE_3___default=/*#__PURE__*/__webpack_require__.n(_foundation_accordion__WEBPACK_IMPORTED_MODULE_3__);/* harmony import */var _foundation_tabs__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(/*! ./foundation.tabs */\"./foundation.tabs\");/* harmony import */var _foundation_tabs__WEBPACK_IMPORTED_MODULE_4___default=/*#__PURE__*/__webpack_require__.n(_foundation_tabs__WEBPACK_IMPORTED_MODULE_4__);function _typeof(obj){if(typeof Symbol===\"function\"&&_typeof2(Symbol.iterator)===\"symbol\"){_typeof=function _typeof(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol===\"function\"&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\");}}function _defineProperties(target,props){for(var i=0;i1?rule[0]:'small';var rulePlugin=rule.length>1?rule[1]:rule[0];if(MenuPlugins[rulePlugin]!==null){rulesTree[ruleSize]=MenuPlugins[rulePlugin];}}this.rules=rulesTree;}this._getAllOptions();if(!jquery__WEBPACK_IMPORTED_MODULE_0___default.a.isEmptyObject(this.rules)){this._checkMediaQueries();}}},{key:\"_getAllOptions\",value:function _getAllOptions(){//get all defaults and options\nvar _this=this;_this.allOptions={};for(var key in MenuPlugins){if(MenuPlugins.hasOwnProperty(key)){var obj=MenuPlugins[key];try{var dummyPlugin=jquery__WEBPACK_IMPORTED_MODULE_0___default()('
      ');var tmpPlugin=new obj.plugin(dummyPlugin,_this.options);for(var keyKey in tmpPlugin.options){if(tmpPlugin.options.hasOwnProperty(keyKey)&&keyKey!=='zfPlugin'){var objObj=tmpPlugin.options[keyKey];_this.allOptions[keyKey]=objObj;}}tmpPlugin.destroy();}catch(e){}}}}/**\n * Initializes events for the Menu.\n * @function\n * @private\n */},{key:\"_events\",value:function _events(){this._changedZfMediaQueryHandler=this._checkMediaQueries.bind(this);jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery',this._changedZfMediaQueryHandler);}/**\n * Checks the current screen width against available media queries. If the media query has changed, and the plugin needed has changed, the plugins will swap out.\n * @function\n * @private\n */},{key:\"_checkMediaQueries\",value:function _checkMediaQueries(){var matchedMq,_this=this;// Iterate through each rule and find the last matching rule\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(this.rules,function(key){if(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"].atLeast(key)){matchedMq=key;}});// No match? No dice\nif(!matchedMq)return;// Plugin already initialized? We good\nif(this.currentPlugin instanceof this.rules[matchedMq].plugin)return;// Remove existing plugin-specific CSS classes\njquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(MenuPlugins,function(key,value){_this.$element.removeClass(value.cssClass);});// Add the CSS class for the new plugin\nthis.$element.addClass(this.rules[matchedMq].cssClass);// Create an instance of the new plugin\nif(this.currentPlugin){//don't know why but on nested elements data zfPlugin get's lost\nif(!this.currentPlugin.$element.data('zfPlugin')&&this.storezfData)this.currentPlugin.$element.data('zfPlugin',this.storezfData);this.currentPlugin.destroy();}this._handleMarkup(this.rules[matchedMq].cssClass);this.currentRule=this.rules[matchedMq];this.currentPlugin=new this.currentRule.plugin(this.$element,this.options);this.storezfData=this.currentPlugin.$element.data('zfPlugin');}},{key:\"_handleMarkup\",value:function _handleMarkup(toSet){var _this=this,fromString='accordion';var $panels=jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-tabs-content='+this.$element.attr('id')+']');if($panels.length)fromString='tabs';if(fromString===toSet){return;}var tabsTitle=_this.allOptions.linkClass?_this.allOptions.linkClass:'tabs-title';var tabsPanel=_this.allOptions.panelClass?_this.allOptions.panelClass:'tabs-panel';this.$element.removeAttr('role');var $liHeads=this.$element.children('.'+tabsTitle+',[data-accordion-item]').removeClass(tabsTitle).removeClass('accordion-item').removeAttr('data-accordion-item');var $liHeadsA=$liHeads.children('a').removeClass('accordion-title');if(fromString==='tabs'){$panels=$panels.children('.'+tabsPanel).removeClass(tabsPanel).removeAttr('role').removeAttr('aria-hidden').removeAttr('aria-labelledby');$panels.children('a').removeAttr('role').removeAttr('aria-controls').removeAttr('aria-selected');}else{$panels=$liHeads.children('[data-tab-content]').removeClass('accordion-content');}$panels.css({display:'',visibility:''});$liHeads.css({display:'',visibility:''});if(toSet==='accordion'){$panels.each(function(key,value){jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).appendTo($liHeads.get(key)).addClass('accordion-content').attr('data-tab-content','').removeClass('is-active').css({height:''});jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-tabs-content='+_this.$element.attr('id')+']').after('
      ').detach();$liHeads.addClass('accordion-item').attr('data-accordion-item','');$liHeadsA.addClass('accordion-title');});}else if(toSet==='tabs'){var $tabsContent=jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-tabs-content='+_this.$element.attr('id')+']');var $placeholder=jquery__WEBPACK_IMPORTED_MODULE_0___default()('#tabs-placeholder-'+_this.$element.attr('id'));if($placeholder.length){$tabsContent=jquery__WEBPACK_IMPORTED_MODULE_0___default()('
      ').insertAfter($placeholder).attr('data-tabs-content',_this.$element.attr('id'));$placeholder.remove();}else{$tabsContent=jquery__WEBPACK_IMPORTED_MODULE_0___default()('
      ').insertAfter(_this.$element).attr('data-tabs-content',_this.$element.attr('id'));}$panels.each(function(key,value){var tempValue=jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).appendTo($tabsContent).addClass(tabsPanel);var hash=$liHeadsA.get(key).hash.slice(1);var id=jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).attr('id')||Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6,'accordion');if(hash!==id){if(hash!==''){jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).attr('id',hash);}else{hash=id;jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).attr('id',hash);jquery__WEBPACK_IMPORTED_MODULE_0___default()($liHeadsA.get(key)).attr('href',jquery__WEBPACK_IMPORTED_MODULE_0___default()($liHeadsA.get(key)).attr('href').replace('#','')+'#'+hash);}}var isActive=jquery__WEBPACK_IMPORTED_MODULE_0___default()($liHeads.get(key)).hasClass('is-active');if(isActive){tempValue.addClass('is-active');}});$liHeads.addClass(tabsTitle);};}/**\n * Opens the plugin pane defined by `target`.\n * @param {jQuery | String} target - jQuery object or string of the id of the pane to open.\n * @see Accordion.down\n * @see Tabs.selectTab\n * @function\n */},{key:\"open\",value:function open(_target){if(this.currentRule&&typeof this.currentRule.open==='function'){var _this$currentRule;return(_this$currentRule=this.currentRule).open.apply(_this$currentRule,[this.currentPlugin].concat(Array.prototype.slice.call(arguments)));}}/**\n * Closes the plugin pane defined by `target`. Not availaible for Tabs.\n * @param {jQuery | String} target - jQuery object or string of the id of the pane to close.\n * @see Accordion.up\n * @function\n */},{key:\"close\",value:function close(_target){if(this.currentRule&&typeof this.currentRule.close==='function'){var _this$currentRule2;return(_this$currentRule2=this.currentRule).close.apply(_this$currentRule2,[this.currentPlugin].concat(Array.prototype.slice.call(arguments)));}}/**\n * Toggles the plugin pane defined by `target`. Not availaible for Tabs.\n * @param {jQuery | String} target - jQuery object or string of the id of the pane to toggle.\n * @see Accordion.toggle\n * @function\n */},{key:\"toggle\",value:function toggle(_target){if(this.currentRule&&typeof this.currentRule.toggle==='function'){var _this$currentRule3;return(_this$currentRule3=this.currentRule).toggle.apply(_this$currentRule3,[this.currentPlugin].concat(Array.prototype.slice.call(arguments)));}}/**\n * Destroys the instance of the current plugin on this element, as well as the window resize handler that switches the plugins out.\n * @function\n */},{key:\"_destroy\",value:function _destroy(){if(this.currentPlugin)this.currentPlugin.destroy();jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('changed.zf.mediaquery',this._changedZfMediaQueryHandler);}}]);return ResponsiveAccordionTabs;}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"]);ResponsiveAccordionTabs.defaults={};/***/},/***/11:/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.responsiveAccordionTabs.js ***!\n \\**//*! no static exports found *//***/function _(module,exports,__webpack_require__){module.exports=__webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.responsiveAccordionTabs.js */\"./js/entries/plugins/foundation.responsiveAccordionTabs.js\");/***/},/***/\"jquery\":/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**//*! no static exports found *//***/function jquery(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/*/}));});//# sourceMappingURL=foundation.responsiveAccordionTabs.js.map\n'use strict';/*! npm.im/object-fit-images 3.2.4 */var objectFitImages=function(){'use strict';var OFI='bfred-it:object-fit-images';var propRegex=/(object-fit|object-position)\\s*:\\s*([-.\\w\\s%]+)/g;var testImg=typeof Image==='undefined'?{style:{'object-position':1}}:new Image();var supportsObjectFit='object-fit'in testImg.style;var supportsObjectPosition='object-position'in testImg.style;var supportsOFI='background-size'in testImg.style;var supportsCurrentSrc=typeof testImg.currentSrc==='string';var nativeGetAttribute=testImg.getAttribute;var nativeSetAttribute=testImg.setAttribute;var autoModeEnabled=false;function createPlaceholder(w,h){return\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='\"+w+\"' height='\"+h+\"'%3E%3C/svg%3E\";}function polyfillCurrentSrc(el){if(el.srcset&&!supportsCurrentSrc&&window.picturefill){var pf=window.picturefill._;// parse srcset with picturefill where currentSrc isn't available\nif(!el[pf.ns]||!el[pf.ns].evaled){// force synchronous srcset parsing\npf.fillImg(el,{reselect:true});}if(!el[pf.ns].curSrc){// force picturefill to parse srcset\nel[pf.ns].supported=false;pf.fillImg(el,{reselect:true});}// retrieve parsed currentSrc, if any\nel.currentSrc=el[pf.ns].curSrc||el.src;}}function getStyle(el){var style=getComputedStyle(el).fontFamily;var parsed;var props={};while((parsed=propRegex.exec(style))!==null){props[parsed[1]]=parsed[2];}return props;}function setPlaceholder(img,width,height){// Default: fill width, no height\nvar placeholder=createPlaceholder(width||1,height||0);// Only set placeholder if it's different\nif(nativeGetAttribute.call(img,'src')!==placeholder){nativeSetAttribute.call(img,'src',placeholder);}}function onImageReady(img,callback){// naturalWidth is only available when the image headers are loaded,\n// this loop will poll it every 100ms.\nif(img.naturalWidth){callback(img);}else{setTimeout(onImageReady,100,img,callback);}}function fixOne(el){var style=getStyle(el);var ofi=el[OFI];style['object-fit']=style['object-fit']||'fill';// default value\n// Avoid running where unnecessary, unless OFI had already done its deed\nif(!ofi.img){// fill is the default behavior so no action is necessary\nif(style['object-fit']==='fill'){return;}// Where object-fit is supported and object-position isn't (Safari < 10)\nif(!ofi.skipTest&&// unless user wants to apply regardless of browser support\nsupportsObjectFit&&// if browser already supports object-fit\n!style['object-position']// unless object-position is used\n){return;}}// keep a clone in memory while resetting the original to a blank\nif(!ofi.img){ofi.img=new Image(el.width,el.height);ofi.img.srcset=nativeGetAttribute.call(el,\"data-ofi-srcset\")||el.srcset;ofi.img.src=nativeGetAttribute.call(el,\"data-ofi-src\")||el.src;// preserve for any future cloneNode calls\n// https://github.com/bfred-it/object-fit-images/issues/53\nnativeSetAttribute.call(el,\"data-ofi-src\",el.src);if(el.srcset){nativeSetAttribute.call(el,\"data-ofi-srcset\",el.srcset);}setPlaceholder(el,el.naturalWidth||el.width,el.naturalHeight||el.height);// remove srcset because it overrides src\nif(el.srcset){el.srcset='';}try{keepSrcUsable(el);}catch(err){if(window.console){console.warn('https://bit.ly/ofi-old-browser');}}}polyfillCurrentSrc(ofi.img);el.style.backgroundImage=\"url(\\\"\"+(ofi.img.currentSrc||ofi.img.src).replace(/\"/g,'\\\\\"')+\"\\\")\";el.style.backgroundPosition=style['object-position']||'center';el.style.backgroundRepeat='no-repeat';el.style.backgroundOrigin='content-box';if(/scale-down/.test(style['object-fit'])){onImageReady(ofi.img,function(){if(ofi.img.naturalWidth>el.width||ofi.img.naturalHeight>el.height){el.style.backgroundSize='contain';}else{el.style.backgroundSize='auto';}});}else{el.style.backgroundSize=style['object-fit'].replace('none','auto').replace('fill','100% 100%');}onImageReady(ofi.img,function(img){setPlaceholder(el,img.naturalWidth,img.naturalHeight);});}function keepSrcUsable(el){var descriptors={get:function get(prop){return el[OFI].img[prop?prop:'src'];},set:function set(value,prop){el[OFI].img[prop?prop:'src']=value;nativeSetAttribute.call(el,\"data-ofi-\"+prop,value);// preserve for any future cloneNode\nfixOne(el);return value;}};Object.defineProperty(el,'src',descriptors);Object.defineProperty(el,'currentSrc',{get:function get(){return descriptors.get('currentSrc');}});Object.defineProperty(el,'srcset',{get:function get(){return descriptors.get('srcset');},set:function set(ss){return descriptors.set(ss,'srcset');}});}function hijackAttributes(){function getOfiImageMaybe(el,name){return el[OFI]&&el[OFI].img&&(name==='src'||name==='srcset')?el[OFI].img:el;}if(!supportsObjectPosition){HTMLImageElement.prototype.getAttribute=function(name){return nativeGetAttribute.call(getOfiImageMaybe(this,name),name);};HTMLImageElement.prototype.setAttribute=function(name,value){return nativeSetAttribute.call(getOfiImageMaybe(this,name),name,String(value));};}}function fix(imgs,opts){var startAutoMode=!autoModeEnabled&&!imgs;opts=opts||{};imgs=imgs||'img';if(supportsObjectPosition&&!opts.skipTest||!supportsOFI){return false;}// use imgs as a selector or just select all images\nif(imgs==='img'){imgs=document.getElementsByTagName('img');}else if(typeof imgs==='string'){imgs=document.querySelectorAll(imgs);}else if(!('length'in imgs)){imgs=[imgs];}// apply fix to all\nfor(var i=0;i1.5){jQuery(this).wrap(\"
      \");}else{jQuery(this).wrap(\"
      \");}});$('.single-mc_video iframe:not([src*=\"youtube.com\"]):not([src*=\"vimeo.com\"], .post-featured-video iframe:not([src*=\"youtube.com\"]):not([src*=\"vimeo.com\"])').each(function(){var imageRatio=$(this).innerHeight()/$(this).innerWidth()*100;var wrapper=\"
      \";$(this).wrap(wrapper);});var mediumBreakpoint=568;var largeBreakpoint=1024;$(\"input:text\").focus(function(){$(this).select();});$('input:text').mouseup(function(e){return false;});$('.search-toggle').on('click',function(e){e.preventDefault();$('.searchbar-wrapper').toggleClass('open');// $('.top-bar .search-field').focus();\n$('.searchbar-wrapper .search-field').focus().select();});$('.post-project-info-toggle').on('click',function(e){e.preventDefault();$('.project-info-modal').toggleClass('open');});$('p:empty').remove();$('.slick-disabled').on('click',function(e){e.preventDefault();return false;});// browser window scroll (in pixels) after which the \"back to top\" link is shown\nvar offset=300,//browser window scroll (in pixels) after which the \"back to top\" link opacity is reduced\noffset_opacity=1200,//duration of the top scrolling animation (in ms)\nscroll_top_duration=700,//grab the \"back to top\" link\n$back_to_top=$('.back-to-top');//hide or show the \"back to top\" link\n$(window).scroll(function(){$(this).scrollTop()>offset?$back_to_top.addClass('cd-is-visible'):$back_to_top.removeClass('cd-is-visible cd-fade-out');if($(this).scrollTop()>offset_opacity){$back_to_top.addClass('cd-fade-out');}});//smooth scroll to top\n$back_to_top.on('click',function(event){event.preventDefault();$('body,html').animate({scrollTop:0},scroll_top_duration);});var clickElem=$('.newsletter-open');clickElem.on('click',function(event){event.preventDefault();if($('.newsletter-form').html().length==0){$.getScript('https://js.hsforms.net/forms/v2.js',function(){hbspt.forms.create({css:'',portalId:'1836195',formId:'12cdb99d-8c2b-4b41-883c-dc85e73645b3',target:'.newsletter-form',// INSERT CLASS OR ID OF DIV THAT HAS TO STORE THE FORM HERE.\nformInstanceId:'1'});$('#newsletter-modal').foundation('open');});}else{$('#newsletter-modal').foundation('open');}});if($('#bim-nav-magellan').length){var bimNavOffset=60;if(Foundation.MediaQuery.atLeast('large')){bimNavOffset=0;}var bimNav=new Foundation.Magellan($('#bim-nav-magellan'),{animationEasing:'swing',deepLinking:true,threshold:bimNavOffset,offset:bimNavOffset});$(window).on('changed.zf.mediaquery',function(event,newSize,oldSize){if(newSize=='small'||newSize=='medium'){bimNav.options.offset=60;}else{bimNav.options.offset=0;}});}if($('.twentytwenty-container').length){$(\".twentytwenty-container\").twentytwenty({no_overlay:true});}if($('.awards-box').length){var $awardsBox=$('.awards-box');$awardsBox.isotope({itemSelector:'.mc_award'});$('#awards-filter-group').on('click','.year',function(){$('#awards-filter-group .year').removeClass('active');$(this).addClass('active');var filterValue=$(this).attr('data-filter');$awardsBox.isotope({filter:filterValue});});// activate the default option on page load\n$('#awards-filter-group .year.active').trigger('click');}// All slick functions\nif(isSlickLoaded){var hidePagination=function hidePagination(){$('.slick-pagination').removeClass('visible');};var showPagination=function showPagination(){$('.slick-pagination').addClass('visible');window.clearTimeout(paginationTimer);paginationTimer=window.setTimeout(hidePagination,750);};var bimTabImagesInit=function bimTabImagesInit(){$('.bim-tab-images').slick({speed:2000,arrows:false,autoplay:true,autoplaySpeed:0,fade:true,pauseOnHover:false,pauseOnFocus:false,draggable:false,swipe:false});};var bimTabImagesDestroy=function bimTabImagesDestroy(){$('.bim-tab-images').slick('unslick');};$('.section-copy').slick({dots:true,infinite:false,speed:300,arrows:false,adaptiveHeight:true});$('.project-carousel').on('init reInit beforeChange',function(event,slick,currentSlide,nextSlide){var i=(nextSlide?nextSlide:0)+1;$('.slick-pagination p').text(i+' / '+slick.slideCount);});$('.project-carousel').slick({dots:false,infinite:false,speed:300,prevArrow:'
      ',nextArrow:'
      '});var paginationTimer;$('.project-carousel').on('swipe',function(event,slick,direction){showPagination();});$('.project-carousel .slick-arrow').on('click',function(event){showPagination();});$('.related-posts-carousel').slick({adaptiveHeight:true,dots:false,infinite:false,speed:300,slidesToShow:3,slidesToScroll:1,prevArrow:'
      ',nextArrow:'
      ',responsive:[{breakpoint:largeBreakpoint,settings:{slidesToShow:2}},{breakpoint:mediumBreakpoint,settings:{slidesToShow:1}}]});$('.related-bios-carousel').slick({adaptiveHeight:true,dots:false,infinite:true,speed:300,slidesToShow:5,slidesToScroll:1,prevArrow:'
      ',nextArrow:'
      ',responsive:[{breakpoint:largeBreakpoint,settings:{slidesToShow:4}},{breakpoint:mediumBreakpoint,settings:{slidesToShow:3}}]});$('.news-terms-carousel').on('init reInit setPosition afterChange',function(event,slick,currentSlide){var nextSlide=$('.news-terms-carousel .slick-next');var nextSlideOffset=nextSlide.offset();var lastSlide=$('.news-terms-carousel .slick-slide:last');var lastSlideWidth=lastSlide.width();var lastSlideOffset=lastSlide.offset();var lastSlideRightSide=lastSlideOffset.left+lastSlideWidth;if(lastSlideRightSide
      ',nextArrow:'
      ',variableWidth:true});// BIM Page\n$('.image-carousel').slick({dots:true,infinite:true,speed:300,adaptiveHeight:true,prevArrow:'
      ',nextArrow:'
      '});$('.image-fader-slides').slick({speed:2000,arrows:false,autoplay:true,autoplaySpeed:0,fade:true,pauseOnHover:false,pauseOnFocus:false,draggable:false,swipe:false});bimTabImagesInit();if($('.bim-tabs').length){var initBimTabsSlick=function initBimTabsSlick(){$('.bim-tabs .tabs').each(function(){var $tabsSlider=$(this);if($(this).hasClass('slick-initialized')){return true;}$(this).slick({arrows:true,dots:true,swipe:true,swipeToSlide:true,infinite:false,slidesToShow:1,slidesToScroll:1});// $tabsSlider.find('.slick-slide').click(function() {\n// var slideIndex = $(this).data('slick-index');\n// $tabsSlider.slick('slickGoTo', slideIndex);\n// });\n$(this).on('beforeChange',function(event,slick,currentSlide,nextSlide){var clickTab=$(event.target).find('.slick-slide[data-slick-index=\"'+nextSlide+'\"] a');$(event.target).foundation('selectTab',$(clickTab[0].hash));});});};var destroyBimTabsSlick=function destroyBimTabsSlick(){$('.bim-tabs .tabs').slick('unslick');};$('.bim-tabs').on('change.zf.tabs',function(){bimTabImagesDestroy();bimTabImagesInit();});$(window).on('changed.zf.mediaquery',function(event,newSize,oldSize){if(newSize=='small'||newSize=='medium'){initBimTabsSlick();}else{destroyBimTabsSlick();}});if(currentBreakpoint=='small'||currentBreakpoint=='medium'){initBimTabsSlick();}}if($('.mc-fcs-block-tabs').length){var initFCSTabsSlick=function initFCSTabsSlick(){$('.mc-fcs-block-tabs .tabs').each(function(){var $tabsSlider=$(this);if($(this).hasClass('slick-initialized')){return true;}$(this).slick({arrows:false,swipe:true,swipeToSlide:true,infinite:false,variableWidth:true,centerMode:true});$tabsSlider.find('.slick-slide').click(function(){var slideIndex=$(this).data('slick-index');$tabsSlider.slick('slickGoTo',slideIndex);});});};var destroyFCSTabsSlick=function destroyFCSTabsSlick(){$('.mc-fcs-block-tabs .tabs').slick('unslick');};initFCSTabsSlick();}$('#awards-filter-group').slick({arrows:false,swipe:true,swipeToSlide:true,infinite:false,variableWidth:true,centerMode:true});$('#awards-filter-group').find('.slick-slide').click(function(){var slideIndex=$(this).data('slick-index');$('#awards-filter-group').slick('slickGoTo',slideIndex);});}// End slick functions\n$(function(){objectFitImages();});$(window).load(function(){$(document).trigger('resize');$(\".footer-testimonial.ajax\").each(function(event){$this=$(this);$.ajax({type:'post',url:WPURLS.ajaxurl,data:{action:'mc_footer_testimonials'},beforeSend:function beforeSend(){$this.html('

      Loading...

      ');},success:function success(response){$this.html(response);}});});});});","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.core\"] = factory(require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"] = factory(root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 0);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./js/entries/plugins/foundation.core.js\":\n/*!**!*\\\n !*** ./js/entries/plugins/foundation.core.js ***!\n \\**/\n/*! exports provided: Foundation, Plugin, rtl, GetYoDigits, RegExpEscape, transitionend, onLoad, ignoreMousedisappear */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.core */ \"./js/foundation.core.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../foundation.core.plugin */ \"./js/foundation.core.plugin.js\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../foundation.core.utils */ \"./js/foundation.core.utils.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Plugin\", function() { return _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"rtl\", function() { return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"rtl\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"GetYoDigits\", function() { return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"GetYoDigits\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"RegExpEscape\", function() { return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"RegExpEscape\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"transitionend\", function() { return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"onLoad\", function() { return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"onLoad\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"ignoreMousedisappear\", function() { return _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"ignoreMousedisappear\"]; });\n\n// --- Foundation Core API ---\n// Initialize Foundation and add some utilities to its public API for backward compatibility.\n// Please note that every utility do not have to be added to the core API.\n\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].addToJquery(jquery__WEBPACK_IMPORTED_MODULE_0___default.a); // Every plugin depends on plugin now, we can include that on the core for the\n// script inclusion path.\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].Plugin = _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"]; // These are now separated out, but historically were a part of this module,\n// and since this is here for backwards compatibility we include them in\n// this entry.\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].rtl = _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"rtl\"];\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].GetYoDigits = _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"GetYoDigits\"];\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].transitionend = _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"];\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].RegExpEscape = _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"RegExpEscape\"];\n_foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"].onLoad = _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"onLoad\"];\nwindow.Foundation = _foundation_core__WEBPACK_IMPORTED_MODULE_1__[\"Foundation\"]; // --- Foundation Core exports ---\n// Export \"Plugin\" and all core utilities, since the `foundation.core` entry plays the role of\n// all core source files.\n\n\n\n\n\n/***/ }),\n\n/***/ \"./js/foundation.core.js\":\n/*!*!*\\\n !*** ./js/foundation.core.js ***!\n \\*/\n/*! exports provided: Foundation */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return Foundation; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./js/foundation.core.utils.js\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./js/foundation.util.mediaQuery.js\");\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n\nvar FOUNDATION_VERSION = '6.6.3'; // Global Foundation object\n// This is attached to the window, or used as a module for AMD/Browserify\n\nvar Foundation = {\n version: FOUNDATION_VERSION,\n\n /**\n * Stores initialized plugins.\n */\n _plugins: {},\n\n /**\n * Stores generated unique ids for plugin instances\n */\n _uuids: [],\n\n /**\n * Defines a Foundation plugin, adding it to the `Foundation` namespace and the list of plugins to initialize when reflowing.\n * @param {Object} plugin - The constructor of the plugin.\n */\n plugin: function plugin(_plugin, name) {\n // Object key to use when adding to global Foundation object\n // Examples: Foundation.Reveal, Foundation.OffCanvas\n var className = name || functionName(_plugin); // Object key to use when storing the plugin, also used to create the identifying data attribute for the plugin\n // Examples: data-reveal, data-off-canvas\n\n var attrName = hyphenate(className); // Add to the Foundation object and the plugins list (for reflowing)\n\n this._plugins[attrName] = this[className] = _plugin;\n },\n\n /**\n * @function\n * Populates the _uuids array with pointers to each individual plugin instance.\n * Adds the `zfPlugin` data-attribute to programmatically created plugins to allow use of $(selector).foundation(method) calls.\n * Also fires the initialization event for each plugin, consolidating repetitive code.\n * @param {Object} plugin - an instance of a plugin, usually `this` in context.\n * @param {String} name - the name of the plugin, passed as a camelCased string.\n * @fires Plugin#init\n */\n registerPlugin: function registerPlugin(plugin, name) {\n var pluginName = name ? hyphenate(name) : functionName(plugin.constructor).toLowerCase();\n plugin.uuid = Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"GetYoDigits\"])(6, pluginName);\n\n if (!plugin.$element.attr(\"data-\".concat(pluginName))) {\n plugin.$element.attr(\"data-\".concat(pluginName), plugin.uuid);\n }\n\n if (!plugin.$element.data('zfPlugin')) {\n plugin.$element.data('zfPlugin', plugin);\n }\n /**\n * Fires when the plugin has initialized.\n * @event Plugin#init\n */\n\n\n plugin.$element.trigger(\"init.zf.\".concat(pluginName));\n\n this._uuids.push(plugin.uuid);\n\n return;\n },\n\n /**\n * @function\n * Removes the plugins uuid from the _uuids array.\n * Removes the zfPlugin data attribute, as well as the data-plugin-name attribute.\n * Also fires the destroyed event for the plugin, consolidating repetitive code.\n * @param {Object} plugin - an instance of a plugin, usually `this` in context.\n * @fires Plugin#destroyed\n */\n unregisterPlugin: function unregisterPlugin(plugin) {\n var pluginName = hyphenate(functionName(plugin.$element.data('zfPlugin').constructor));\n\n this._uuids.splice(this._uuids.indexOf(plugin.uuid), 1);\n\n plugin.$element.removeAttr(\"data-\".concat(pluginName)).removeData('zfPlugin')\n /**\n * Fires when the plugin has been destroyed.\n * @event Plugin#destroyed\n */\n .trigger(\"destroyed.zf.\".concat(pluginName));\n\n for (var prop in plugin) {\n plugin[prop] = null; //clean up script to prep for garbage collection.\n }\n\n return;\n },\n\n /**\n * @function\n * Causes one or more active plugins to re-initialize, resetting event listeners, recalculating positions, etc.\n * @param {String} plugins - optional string of an individual plugin key, attained by calling `$(element).data('pluginName')`, or string of a plugin class i.e. `'dropdown'`\n * @default If no argument is passed, reflow all currently active plugins.\n */\n reInit: function reInit(plugins) {\n var isJQ = plugins instanceof jquery__WEBPACK_IMPORTED_MODULE_0___default.a;\n\n try {\n if (isJQ) {\n plugins.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('zfPlugin')._init();\n });\n } else {\n var type = _typeof(plugins),\n _this = this,\n fns = {\n 'object': function object(plgs) {\n plgs.forEach(function (p) {\n p = hyphenate(p);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-' + p + ']').foundation('_init');\n });\n },\n 'string': function string() {\n plugins = hyphenate(plugins);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-' + plugins + ']').foundation('_init');\n },\n 'undefined': function undefined() {\n this['object'](Object.keys(_this._plugins));\n }\n };\n\n fns[type](plugins);\n }\n } catch (err) {\n console.error(err);\n } finally {\n return plugins;\n }\n },\n\n /**\n * Initialize plugins on any elements within `elem` (and `elem` itself) that aren't already initialized.\n * @param {Object} elem - jQuery object containing the element to check inside. Also checks the element itself, unless it's the `document` object.\n * @param {String|Array} plugins - A list of plugins to initialize. Leave this out to initialize everything.\n */\n reflow: function reflow(elem, plugins) {\n // If plugins is undefined, just grab everything\n if (typeof plugins === 'undefined') {\n plugins = Object.keys(this._plugins);\n } // If plugins is a string, convert it to an array with one item\n else if (typeof plugins === 'string') {\n plugins = [plugins];\n }\n\n var _this = this; // Iterate through each plugin\n\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(plugins, function (i, name) {\n // Get the current plugin\n var plugin = _this._plugins[name]; // Localize the search to all elements inside elem, as well as elem itself, unless elem === document\n\n var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(elem).find('[data-' + name + ']').addBack('[data-' + name + ']').filter(function () {\n return typeof jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data(\"zfPlugin\") === 'undefined';\n }); // For each plugin found, initialize it\n\n $elem.each(function () {\n var $el = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n opts = {\n reflow: true\n };\n\n if ($el.attr('data-options')) {\n $el.attr('data-options').split(';').forEach(function (option, _index) {\n var opt = option.split(':').map(function (el) {\n return el.trim();\n });\n if (opt[0]) opts[opt[0]] = parseValue(opt[1]);\n });\n }\n\n try {\n $el.data('zfPlugin', new plugin(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), opts));\n } catch (er) {\n console.error(er);\n } finally {\n return;\n }\n });\n });\n },\n getFnName: functionName,\n addToJquery: function addToJquery($) {\n // TODO: consider not making this a jQuery function\n // TODO: need way to reflow vs. re-initialize\n\n /**\n * The Foundation jQuery method.\n * @param {String|Array} method - An action to perform on the current jQuery object.\n */\n var foundation = function foundation(method) {\n var type = _typeof(method),\n $noJS = $('.no-js');\n\n if ($noJS.length) {\n $noJS.removeClass('no-js');\n }\n\n if (type === 'undefined') {\n //needs to initialize the Foundation object, or an individual plugin.\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__[\"MediaQuery\"]._init();\n\n Foundation.reflow(this);\n } else if (type === 'string') {\n //an individual method to invoke on a plugin or group of plugins\n var args = Array.prototype.slice.call(arguments, 1); //collect all the arguments, if necessary\n\n var plugClass = this.data('zfPlugin'); //determine the class of plugin\n\n if (typeof plugClass !== 'undefined' && typeof plugClass[method] !== 'undefined') {\n //make sure both the class and method exist\n if (this.length === 1) {\n //if there's only one, call it directly.\n plugClass[method].apply(plugClass, args);\n } else {\n this.each(function (i, el) {\n //otherwise loop through the jQuery collection and invoke the method on each\n plugClass[method].apply($(el).data('zfPlugin'), args);\n });\n }\n } else {\n //error for no class or no method\n throw new ReferenceError(\"We're sorry, '\" + method + \"' is not an available method for \" + (plugClass ? functionName(plugClass) : 'this element') + '.');\n }\n } else {\n //error for invalid argument type\n throw new TypeError(\"We're sorry, \".concat(type, \" is not a valid parameter. You must use a string representing the method you wish to invoke.\"));\n }\n\n return this;\n };\n\n $.fn.foundation = foundation;\n return $;\n }\n};\nFoundation.util = {\n /**\n * Function for applying a debounce effect to a function call.\n * @function\n * @param {Function} func - Function to be called at end of timeout.\n * @param {Number} delay - Time in ms to delay the call of `func`.\n * @returns function\n */\n throttle: function throttle(func, delay) {\n var timer = null;\n return function () {\n var context = this,\n args = arguments;\n\n if (timer === null) {\n timer = setTimeout(function () {\n func.apply(context, args);\n timer = null;\n }, delay);\n }\n };\n }\n};\nwindow.Foundation = Foundation; // Polyfill for requestAnimationFrame\n\n(function () {\n if (!Date.now || !window.Date.now) window.Date.now = Date.now = function () {\n return new Date().getTime();\n };\n var vendors = ['webkit', 'moz'];\n\n for (var i = 0; i < vendors.length && !window.requestAnimationFrame; ++i) {\n var vp = vendors[i];\n window.requestAnimationFrame = window[vp + 'RequestAnimationFrame'];\n window.cancelAnimationFrame = window[vp + 'CancelAnimationFrame'] || window[vp + 'CancelRequestAnimationFrame'];\n }\n\n if (/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent) || !window.requestAnimationFrame || !window.cancelAnimationFrame) {\n var lastTime = 0;\n\n window.requestAnimationFrame = function (callback) {\n var now = Date.now();\n var nextTime = Math.max(lastTime + 16, now);\n return setTimeout(function () {\n callback(lastTime = nextTime);\n }, nextTime - now);\n };\n\n window.cancelAnimationFrame = clearTimeout;\n }\n /**\n * Polyfill for performance.now, required by rAF\n */\n\n\n if (!window.performance || !window.performance.now) {\n window.performance = {\n start: Date.now(),\n now: function now() {\n return Date.now() - this.start;\n }\n };\n }\n})();\n\nif (!Function.prototype.bind) {\n Function.prototype.bind = function (oThis) {\n if (typeof this !== 'function') {\n // closest thing possible to the ECMAScript 5\n // internal IsCallable function\n throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');\n }\n\n var aArgs = Array.prototype.slice.call(arguments, 1),\n fToBind = this,\n fNOP = function fNOP() {},\n fBound = function fBound() {\n return fToBind.apply(this instanceof fNOP ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments)));\n };\n\n if (this.prototype) {\n // native functions don't have a prototype\n fNOP.prototype = this.prototype;\n }\n\n fBound.prototype = new fNOP();\n return fBound;\n };\n} // Polyfill to get the name of a function in IE9\n\n\nfunction functionName(fn) {\n if (typeof Function.prototype.name === 'undefined') {\n var funcNameRegex = /function\\s([^(]{1,})\\(/;\n var results = funcNameRegex.exec(fn.toString());\n return results && results.length > 1 ? results[1].trim() : \"\";\n } else if (typeof fn.prototype === 'undefined') {\n return fn.constructor.name;\n } else {\n return fn.prototype.constructor.name;\n }\n}\n\nfunction parseValue(str) {\n if ('true' === str) return true;else if ('false' === str) return false;else if (!isNaN(str * 1)) return parseFloat(str);\n return str;\n} // Convert PascalCase to kebab-case\n// Thank you: http://stackoverflow.com/a/8955580\n\n\nfunction hyphenate(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\n\n\n/***/ }),\n\n/***/ \"./js/foundation.core.plugin.js\":\n/*!***!*\\\n !*** ./js/foundation.core.plugin.js ***!\n \\***/\n/*! exports provided: Plugin */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Plugin\", function() { return Plugin; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./js/foundation.core.utils.js\");\n\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n\n // Abstract class for providing lifecycle hooks. Expect plugins to define AT LEAST\n// {function} _setup (replaces previous constructor),\n// {function} _destroy (replaces previous destroy)\n\nvar Plugin =\n/*#__PURE__*/\nfunction () {\n function Plugin(element, options) {\n _classCallCheck(this, Plugin);\n\n this._setup(element, options);\n\n var pluginName = getPluginName(this);\n this.uuid = Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"GetYoDigits\"])(6, pluginName);\n\n if (!this.$element.attr(\"data-\".concat(pluginName))) {\n this.$element.attr(\"data-\".concat(pluginName), this.uuid);\n }\n\n if (!this.$element.data('zfPlugin')) {\n this.$element.data('zfPlugin', this);\n }\n /**\n * Fires when the plugin has initialized.\n * @event Plugin#init\n */\n\n\n this.$element.trigger(\"init.zf.\".concat(pluginName));\n }\n\n _createClass(Plugin, [{\n key: \"destroy\",\n value: function destroy() {\n this._destroy();\n\n var pluginName = getPluginName(this);\n this.$element.removeAttr(\"data-\".concat(pluginName)).removeData('zfPlugin')\n /**\n * Fires when the plugin has been destroyed.\n * @event Plugin#destroyed\n */\n .trigger(\"destroyed.zf.\".concat(pluginName));\n\n for (var prop in this) {\n this[prop] = null; //clean up script to prep for garbage collection.\n }\n }\n }]);\n\n return Plugin;\n}(); // Convert PascalCase to kebab-case\n// Thank you: http://stackoverflow.com/a/8955580\n\n\nfunction hyphenate(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nfunction getPluginName(obj) {\n return hyphenate(obj.className);\n}\n\n\n\n/***/ }),\n\n/***/ \"./js/foundation.core.utils.js\":\n/*!**!*\\\n !*** ./js/foundation.core.utils.js ***!\n \\**/\n/*! exports provided: rtl, GetYoDigits, RegExpEscape, transitionend, onLoad, ignoreMousedisappear */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"rtl\", function() { return rtl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"GetYoDigits\", function() { return GetYoDigits; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"RegExpEscape\", function() { return RegExpEscape; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"transitionend\", function() { return transitionend; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onLoad\", function() { return onLoad; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ignoreMousedisappear\", function() { return ignoreMousedisappear; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n\n\n // Core Foundation Utilities, utilized in a number of places.\n\n/**\n * Returns a boolean for RTL support\n */\n\nfunction rtl() {\n return jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').attr('dir') === 'rtl';\n}\n/**\n * returns a random base-36 uid with namespacing\n * @function\n * @param {Number} length - number of random base-36 digits desired. Increase for more random strings.\n * @param {String} namespace - name of plugin to be incorporated in uid, optional.\n * @default {String} '' - if no plugin name is provided, nothing is appended to the uid.\n * @returns {String} - unique id\n */\n\n\nfunction GetYoDigits() {\n var length = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 6;\n var namespace = arguments.length > 1 ? arguments[1] : undefined;\n var str = '';\n var chars = '0123456789abcdefghijklmnopqrstuvwxyz';\n var charsLength = chars.length;\n\n for (var i = 0; i < length; i++) {\n str += chars[Math.floor(Math.random() * charsLength)];\n }\n\n return namespace ? \"\".concat(str, \"-\").concat(namespace) : str;\n}\n/**\n * Escape a string so it can be used as a regexp pattern\n * @function\n * @see https://stackoverflow.com/a/9310752/4317384\n *\n * @param {String} str - string to escape.\n * @returns {String} - escaped string\n */\n\n\nfunction RegExpEscape(str) {\n return str.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n}\n\nfunction transitionend($elem) {\n var transitions = {\n 'transition': 'transitionend',\n 'WebkitTransition': 'webkitTransitionEnd',\n 'MozTransition': 'transitionend',\n 'OTransition': 'otransitionend'\n };\n var elem = document.createElement('div'),\n end;\n\n for (var transition in transitions) {\n if (typeof elem.style[transition] !== 'undefined') {\n end = transitions[transition];\n }\n }\n\n if (end) {\n return end;\n } else {\n setTimeout(function () {\n $elem.triggerHandler('transitionend', [$elem]);\n }, 1);\n return 'transitionend';\n }\n}\n/**\n * Return an event type to listen for window load.\n *\n * If `$elem` is passed, an event will be triggered on `$elem`. If window is already loaded, the event will still be triggered.\n * If `handler` is passed, attach it to the event on `$elem`.\n * Calling `onLoad` without handler allows you to get the event type that will be triggered before attaching the handler by yourself.\n * @function\n *\n * @param {Object} [] $elem - jQuery element on which the event will be triggered if passed.\n * @param {Function} [] handler - function to attach to the event.\n * @returns {String} - event type that should or will be triggered.\n */\n\n\nfunction onLoad($elem, handler) {\n var didLoad = document.readyState === 'complete';\n var eventType = (didLoad ? '_didLoad' : 'load') + '.zf.util.onLoad';\n\n var cb = function cb() {\n return $elem.triggerHandler(eventType);\n };\n\n if ($elem) {\n if (handler) $elem.one(eventType, handler);\n if (didLoad) setTimeout(cb);else jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).one('load', cb);\n }\n\n return eventType;\n}\n/**\n * Retuns an handler for the `mouseleave` that ignore disappeared mouses.\n *\n * If the mouse \"disappeared\" from the document (like when going on a browser UI element, See https://git.io/zf-11410),\n * the event is ignored.\n * - If the `ignoreLeaveWindow` is `true`, the event is ignored when the user actually left the window\n * (like by switching to an other window with [Alt]+[Tab]).\n * - If the `ignoreReappear` is `true`, the event will be ignored when the mouse will reappear later on the document\n * outside of the element it left.\n *\n * @function\n *\n * @param {Function} [] handler - handler for the filtered `mouseleave` event to watch.\n * @param {Object} [] options - object of options:\n * - {Boolean} [false] ignoreLeaveWindow - also ignore when the user switched windows.\n * - {Boolean} [false] ignoreReappear - also ignore when the mouse reappeared outside of the element it left.\n * @returns {Function} - filtered handler to use to listen on the `mouseleave` event.\n */\n\n\nfunction ignoreMousedisappear(handler) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$ignoreLeaveWindo = _ref.ignoreLeaveWindow,\n ignoreLeaveWindow = _ref$ignoreLeaveWindo === void 0 ? false : _ref$ignoreLeaveWindo,\n _ref$ignoreReappear = _ref.ignoreReappear,\n ignoreReappear = _ref$ignoreReappear === void 0 ? false : _ref$ignoreReappear;\n\n return function leaveEventHandler(eLeave) {\n for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n\n var callback = handler.bind.apply(handler, [this, eLeave].concat(rest)); // The mouse left: call the given callback if the mouse entered elsewhere\n\n if (eLeave.relatedTarget !== null) {\n return callback();\n } // Otherwise, check if the mouse actually left the window.\n // In firefox if the user switched between windows, the window sill have the focus by the time\n // the event is triggered. We have to debounce the event to test this case.\n\n\n setTimeout(function leaveEventDebouncer() {\n if (!ignoreLeaveWindow && document.hasFocus && !document.hasFocus()) {\n return callback();\n } // Otherwise, wait for the mouse to reeapear outside of the element,\n\n\n if (!ignoreReappear) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).one('mouseenter', function reenterEventHandler(eReenter) {\n if (!jquery__WEBPACK_IMPORTED_MODULE_0___default()(eLeave.currentTarget).has(eReenter.target).length) {\n // Fill where the mouse finally entered.\n eLeave.relatedTarget = eReenter.target;\n callback();\n }\n });\n }\n }, 0);\n };\n}\n\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.mediaQuery.js\":\n/*!**!*\\\n !*** ./js/foundation.util.mediaQuery.js ***!\n \\**/\n/*! exports provided: MediaQuery */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MediaQuery\", function() { return MediaQuery; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(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\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n // Default set of media queries\n\nvar defaultQueries = {\n 'default': 'only screen',\n landscape: 'only screen and (orientation: landscape)',\n portrait: 'only screen and (orientation: portrait)',\n retina: 'only screen and (-webkit-min-device-pixel-ratio: 2),' + 'only screen and (min--moz-device-pixel-ratio: 2),' + 'only screen and (-o-min-device-pixel-ratio: 2/1),' + 'only screen and (min-device-pixel-ratio: 2),' + 'only screen and (min-resolution: 192dpi),' + 'only screen and (min-resolution: 2dppx)'\n}; // matchMedia() polyfill - Test a CSS media type/query in JS.\n// Authors & copyright © 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. MIT license\n\n/* eslint-disable */\n\nwindow.matchMedia || (window.matchMedia = function () {\n \"use strict\"; // For browsers that support matchMedium api such as IE 9 and webkit\n\n var styleMedia = window.styleMedia || window.media; // For those that don't support matchMedium\n\n if (!styleMedia) {\n var style = document.createElement('style'),\n script = document.getElementsByTagName('script')[0],\n info = null;\n style.type = 'text/css';\n style.id = 'matchmediajs-test';\n\n if (!script) {\n document.head.appendChild(style);\n } else {\n script.parentNode.insertBefore(style, script);\n } // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers\n\n\n info = 'getComputedStyle' in window && window.getComputedStyle(style, null) || style.currentStyle;\n styleMedia = {\n matchMedium: function matchMedium(media) {\n var text = '@media ' + media + '{ #matchmediajs-test { width: 1px; } }'; // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers\n\n if (style.styleSheet) {\n style.styleSheet.cssText = text;\n } else {\n style.textContent = text;\n } // Test if media query is true or false\n\n\n return info.width === '1px';\n }\n };\n }\n\n return function (media) {\n return {\n matches: styleMedia.matchMedium(media || 'all'),\n media: media || 'all'\n };\n };\n}());\n/* eslint-enable */\n\nvar MediaQuery = {\n queries: [],\n current: '',\n\n /**\n * Initializes the media query helper, by extracting the breakpoint list from the CSS and activating the breakpoint watcher.\n * @function\n * @private\n */\n _init: function _init() {\n // make sure the initialization is only done once when calling _init() several times\n if (this.isInitialized === true) {\n return;\n } else {\n this.isInitialized = true;\n }\n\n var self = this;\n var $meta = jquery__WEBPACK_IMPORTED_MODULE_0___default()('meta.foundation-mq');\n\n if (!$meta.length) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('').appendTo(document.head);\n }\n\n var extractedStyles = jquery__WEBPACK_IMPORTED_MODULE_0___default()('.foundation-mq').css('font-family');\n var namedQueries;\n namedQueries = parseStyleToObject(extractedStyles);\n self.queries = []; // reset\n\n for (var key in namedQueries) {\n if (namedQueries.hasOwnProperty(key)) {\n self.queries.push({\n name: key,\n value: \"only screen and (min-width: \".concat(namedQueries[key], \")\")\n });\n }\n }\n\n this.current = this._getCurrentSize();\n\n this._watcher();\n },\n\n /**\n * Reinitializes the media query helper.\n * Useful if your CSS breakpoint configuration has just been loaded or has changed since the initialization.\n * @function\n * @private\n */\n _reInit: function _reInit() {\n this.isInitialized = false;\n\n this._init();\n },\n\n /**\n * Checks if the screen is at least as wide as a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller.\n */\n atLeast: function atLeast(size) {\n var query = this.get(size);\n\n if (query) {\n return window.matchMedia(query).matches;\n }\n\n return false;\n },\n\n /**\n * Checks if the screen is within the given breakpoint.\n * If smaller than the breakpoint of larger than its upper limit it returns false.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` otherwise.\n */\n only: function only(size) {\n return size === this._getCurrentSize();\n },\n\n /**\n * Checks if the screen is within a breakpoint or smaller.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's larger.\n */\n upTo: function upTo(size) {\n var nextSize = this.next(size); // If the next breakpoint does not match, the screen is smaller than\n // the upper limit of this breakpoint.\n\n if (nextSize) {\n return !this.atLeast(nextSize);\n } // If there is no next breakpoint, the \"size\" breakpoint does not have\n // an upper limit and the screen will always be within it or smaller.\n\n\n return true;\n },\n\n /**\n * Checks if the screen matches to a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check, either 'small only' or 'small'. Omitting 'only' falls back to using atLeast() method.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it does not.\n */\n is: function is(size) {\n var parts = size.trim().split(' ').filter(function (p) {\n return !!p.length;\n });\n\n var _parts = _slicedToArray(parts, 2),\n bpSize = _parts[0],\n _parts$ = _parts[1],\n bpModifier = _parts$ === void 0 ? '' : _parts$; // Only the breakpont\n\n\n if (bpModifier === 'only') {\n return this.only(bpSize);\n } // At least the breakpoint (included)\n\n\n if (!bpModifier || bpModifier === 'up') {\n return this.atLeast(bpSize);\n } // Up to the breakpoint (included)\n\n\n if (bpModifier === 'down') {\n return this.upTo(bpSize);\n }\n\n throw new Error(\"\\n Invalid breakpoint passed to MediaQuery.is().\\n Expected a breakpoint name formatted like \\\" \\\", got \\\"\".concat(size, \"\\\".\\n \"));\n },\n\n /**\n * Gets the media query of a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to get.\n * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist.\n */\n get: function get(size) {\n for (var i in this.queries) {\n if (this.queries.hasOwnProperty(i)) {\n var query = this.queries[i];\n if (size === query.name) return query.value;\n }\n }\n\n return null;\n },\n\n /**\n * Get the breakpoint following the given breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint.\n * @returns {String|null} - The name of the following breakpoint, or `null` if the passed breakpoint was the last one.\n */\n next: function next(size) {\n var _this = this;\n\n var queryIndex = this.queries.findIndex(function (q) {\n return _this._getQueryName(q) === size;\n });\n\n if (queryIndex === -1) {\n throw new Error(\"\\n Unknown breakpoint \\\"\".concat(size, \"\\\" passed to MediaQuery.next().\\n Ensure it is present in your Sass \\\"$breakpoints\\\" setting.\\n \"));\n }\n\n var nextQuery = this.queries[queryIndex + 1];\n return nextQuery ? nextQuery.name : null;\n },\n\n /**\n * Returns the name of the breakpoint related to the given value.\n * @function\n * @private\n * @param {String|Object} value - Breakpoint name or query object.\n * @returns {String} Name of the breakpoint.\n */\n _getQueryName: function _getQueryName(value) {\n if (typeof value === 'string') return value;\n if (_typeof(value) === 'object') return value.name;\n throw new TypeError(\"\\n Invalid value passed to MediaQuery._getQueryName().\\n Expected a breakpoint name (String) or a breakpoint query (Object), got \\\"\".concat(value, \"\\\" (\").concat(_typeof(value), \")\\n \"));\n },\n\n /**\n * Gets the current breakpoint name by testing every breakpoint and returning the last one to match (the biggest one).\n * @function\n * @private\n * @returns {String} Name of the current breakpoint.\n */\n _getCurrentSize: function _getCurrentSize() {\n var matched;\n\n for (var i = 0; i < this.queries.length; i++) {\n var query = this.queries[i];\n\n if (window.matchMedia(query.value).matches) {\n matched = query;\n }\n }\n\n return matched && this._getQueryName(matched);\n },\n\n /**\n * Activates the breakpoint watcher, which fires an event on the window whenever the breakpoint changes.\n * @function\n * @private\n */\n _watcher: function _watcher() {\n var _this2 = this;\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('resize.zf.mediaquery').on('resize.zf.mediaquery', function () {\n var newSize = _this2._getCurrentSize(),\n currentSize = _this2.current;\n\n if (newSize !== currentSize) {\n // Change the current media query\n _this2.current = newSize; // Broadcast the media query change on the window\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).trigger('changed.zf.mediaquery', [newSize, currentSize]);\n }\n });\n }\n}; // Thank you: https://github.com/sindresorhus/query-string\n\nfunction parseStyleToObject(str) {\n var styleObject = {};\n\n if (typeof str !== 'string') {\n return styleObject;\n }\n\n str = str.trim().slice(1, -1); // browsers re-quote string style values\n\n if (!str) {\n return styleObject;\n }\n\n styleObject = str.split('&').reduce(function (ret, param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = parts[0];\n var val = parts[1];\n key = decodeURIComponent(key); // missing `=` should be `null`:\n // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\n val = typeof val === 'undefined' ? null : decodeURIComponent(val);\n\n if (!ret.hasOwnProperty(key)) {\n ret[key] = val;\n } else if (Array.isArray(ret[key])) {\n ret[key].push(val);\n } else {\n ret[key] = [ret[key], val];\n }\n\n return ret;\n }, {});\n return styleObject;\n}\n\n\n\n/***/ }),\n\n/***/ 0:\n/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.core.js ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.core.js */\"./js/entries/plugins/foundation.core.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.core.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.util.box\"] = factory(require(\"./foundation.core\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 21);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.util.box.js\":\n/*!*!*\\\n !*** ./js/entries/plugins/foundation.util.box.js ***!\n \\*/\n/*! exports provided: Foundation, Box */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.box */ \"./js/foundation.util.box.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Box\", function() { return _foundation_util_box__WEBPACK_IMPORTED_MODULE_1__[\"Box\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].Box = _foundation_util_box__WEBPACK_IMPORTED_MODULE_1__[\"Box\"];\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.box.js\":\n/*!!*\\\n !*** ./js/foundation.util.box.js ***!\n \\/\n/*! exports provided: Box */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Box\", function() { return Box; });\n\n\nvar Box = {\n ImNotTouchingYou: ImNotTouchingYou,\n OverlapArea: OverlapArea,\n GetDimensions: GetDimensions,\n GetExplicitOffsets: GetExplicitOffsets\n /**\n * Compares the dimensions of an element to a container and determines collision events with container.\n * @function\n * @param {jQuery} element - jQuery object to test for collisions.\n * @param {jQuery} parent - jQuery object to use as bounding container.\n * @param {Boolean} lrOnly - set to true to check left and right values only.\n * @param {Boolean} tbOnly - set to true to check top and bottom values only.\n * @default if no parent object passed, detects collisions with `window`.\n * @returns {Boolean} - true if collision free, false if a collision in any direction.\n */\n\n};\n\nfunction ImNotTouchingYou(element, parent, lrOnly, tbOnly, ignoreBottom) {\n return OverlapArea(element, parent, lrOnly, tbOnly, ignoreBottom) === 0;\n}\n\nfunction OverlapArea(element, parent, lrOnly, tbOnly, ignoreBottom) {\n var eleDims = GetDimensions(element),\n topOver,\n bottomOver,\n leftOver,\n rightOver;\n\n if (parent) {\n var parDims = GetDimensions(parent);\n bottomOver = parDims.height + parDims.offset.top - (eleDims.offset.top + eleDims.height);\n topOver = eleDims.offset.top - parDims.offset.top;\n leftOver = eleDims.offset.left - parDims.offset.left;\n rightOver = parDims.width + parDims.offset.left - (eleDims.offset.left + eleDims.width);\n } else {\n bottomOver = eleDims.windowDims.height + eleDims.windowDims.offset.top - (eleDims.offset.top + eleDims.height);\n topOver = eleDims.offset.top - eleDims.windowDims.offset.top;\n leftOver = eleDims.offset.left - eleDims.windowDims.offset.left;\n rightOver = eleDims.windowDims.width - (eleDims.offset.left + eleDims.width);\n }\n\n bottomOver = ignoreBottom ? 0 : Math.min(bottomOver, 0);\n topOver = Math.min(topOver, 0);\n leftOver = Math.min(leftOver, 0);\n rightOver = Math.min(rightOver, 0);\n\n if (lrOnly) {\n return leftOver + rightOver;\n }\n\n if (tbOnly) {\n return topOver + bottomOver;\n } // use sum of squares b/c we care about overlap area.\n\n\n return Math.sqrt(topOver * topOver + bottomOver * bottomOver + leftOver * leftOver + rightOver * rightOver);\n}\n/**\n * Uses native methods to return an object of dimension values.\n * @function\n * @param {jQuery || HTML} element - jQuery object or DOM element for which to get the dimensions. Can be any element other that document or window.\n * @returns {Object} - nested object of integer pixel values\n * TODO - if element is window, return only those values.\n */\n\n\nfunction GetDimensions(elem) {\n elem = elem.length ? elem[0] : elem;\n\n if (elem === window || elem === document) {\n throw new Error(\"I'm sorry, Dave. I'm afraid I can't do that.\");\n }\n\n var rect = elem.getBoundingClientRect(),\n parRect = elem.parentNode.getBoundingClientRect(),\n winRect = document.body.getBoundingClientRect(),\n winY = window.pageYOffset,\n winX = window.pageXOffset;\n return {\n width: rect.width,\n height: rect.height,\n offset: {\n top: rect.top + winY,\n left: rect.left + winX\n },\n parentDims: {\n width: parRect.width,\n height: parRect.height,\n offset: {\n top: parRect.top + winY,\n left: parRect.left + winX\n }\n },\n windowDims: {\n width: winRect.width,\n height: winRect.height,\n offset: {\n top: winY,\n left: winX\n }\n }\n };\n}\n/**\n * Returns an object of top and left integer pixel values for dynamically rendered elements,\n * such as: Tooltip, Reveal, and Dropdown. Maintained for backwards compatibility, and where\n * you don't know alignment, but generally from\n * 6.4 forward you should use GetExplicitOffsets, as GetOffsets conflates position and alignment.\n * @function\n * @param {jQuery} element - jQuery object for the element being positioned.\n * @param {jQuery} anchor - jQuery object for the element's anchor point.\n * @param {String} position - a string relating to the desired position of the element, relative to it's anchor\n * @param {Number} vOffset - integer pixel value of desired vertical separation between anchor and element.\n * @param {Number} hOffset - integer pixel value of desired horizontal separation between anchor and element.\n * @param {Boolean} isOverflow - if a collision event is detected, sets to true to default the element to full width - any desired offset.\n * TODO alter/rewrite to work with `em` values as well/instead of pixels\n */\n\n\nfunction GetExplicitOffsets(element, anchor, position, alignment, vOffset, hOffset, isOverflow) {\n var $eleDims = GetDimensions(element),\n $anchorDims = anchor ? GetDimensions(anchor) : null;\n var topVal, leftVal;\n\n if ($anchorDims !== null) {\n // set position related attribute\n switch (position) {\n case 'top':\n topVal = $anchorDims.offset.top - ($eleDims.height + vOffset);\n break;\n\n case 'bottom':\n topVal = $anchorDims.offset.top + $anchorDims.height + vOffset;\n break;\n\n case 'left':\n leftVal = $anchorDims.offset.left - ($eleDims.width + hOffset);\n break;\n\n case 'right':\n leftVal = $anchorDims.offset.left + $anchorDims.width + hOffset;\n break;\n } // set alignment related attribute\n\n\n switch (position) {\n case 'top':\n case 'bottom':\n switch (alignment) {\n case 'left':\n leftVal = $anchorDims.offset.left + hOffset;\n break;\n\n case 'right':\n leftVal = $anchorDims.offset.left - $eleDims.width + $anchorDims.width - hOffset;\n break;\n\n case 'center':\n leftVal = isOverflow ? hOffset : $anchorDims.offset.left + $anchorDims.width / 2 - $eleDims.width / 2 + hOffset;\n break;\n }\n\n break;\n\n case 'right':\n case 'left':\n switch (alignment) {\n case 'bottom':\n topVal = $anchorDims.offset.top - vOffset + $anchorDims.height - $eleDims.height;\n break;\n\n case 'top':\n topVal = $anchorDims.offset.top + vOffset;\n break;\n\n case 'center':\n topVal = $anchorDims.offset.top + vOffset + $anchorDims.height / 2 - $eleDims.height / 2;\n break;\n }\n\n break;\n }\n }\n\n return {\n top: topVal,\n left: leftVal\n };\n}\n\n\n\n/***/ }),\n\n/***/ 21:\n/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.util.box.js ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.box.js */\"./js/entries/plugins/foundation.util.box.js\");\n\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.util.box.js.map","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e(require(\"./foundation.core\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\"],e):\"object\"==typeof exports?exports[\"foundation.util.box\"]=e(require(\"./foundation.core\")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__[\"foundation.util.box\"]=e(t.__FOUNDATION_EXTERNAL__[\"foundation.core\"]))}(window,function(o){return f={},i.m=n={\"./foundation.core\":function(t,e){t.exports=o},\"./js/entries/plugins/foundation.util.box.js\":function(t,e,o){\"use strict\";o.r(e);var n=o(\"./foundation.core\");o.d(e,\"Foundation\",function(){return n.Foundation});var i=o(\"./js/foundation.util.box.js\");o.d(e,\"Box\",function(){return i.Box}),n.Foundation.Box=i.Box},\"./js/foundation.util.box.js\":function(t,e,o){\"use strict\";o.r(e),o.d(e,\"Box\",function(){return n});var n={ImNotTouchingYou:function(t,e,o,n,i){return 0===f(t,e,o,n,i)},OverlapArea:f,GetDimensions:c,GetExplicitOffsets:function(t,e,o,n,i,f,r){var s,u,a=c(t),d=e?c(e):null;if(null!==d){switch(o){case\"top\":s=d.offset.top-(a.height+i);break;case\"bottom\":s=d.offset.top+d.height+i;break;case\"left\":u=d.offset.left-(a.width+f);break;case\"right\":u=d.offset.left+d.width+f}switch(o){case\"top\":case\"bottom\":switch(n){case\"left\":u=d.offset.left+f;break;case\"right\":u=d.offset.left-a.width+d.width-f;break;case\"center\":u=r?f:d.offset.left+d.width/2-a.width/2+f}break;case\"right\":case\"left\":switch(n){case\"bottom\":s=d.offset.top-i+d.height-a.height;break;case\"top\":s=d.offset.top+i;break;case\"center\":s=d.offset.top+i+d.height/2-a.height/2}}}return{top:s,left:u}}};function f(t,e,o,n,i){var f,r,s,u,a=c(t);if(e){var d=c(e);r=d.height+d.offset.top-(a.offset.top+a.height),f=a.offset.top-d.offset.top,s=a.offset.left-d.offset.left,u=d.width+d.offset.left-(a.offset.left+a.width)}else r=a.windowDims.height+a.windowDims.offset.top-(a.offset.top+a.height),f=a.offset.top-a.windowDims.offset.top,s=a.offset.left-a.windowDims.offset.left,u=a.windowDims.width-(a.offset.left+a.width);return r=i?0:Math.min(r,0),f=Math.min(f,0),s=Math.min(s,0),u=Math.min(u,0),o?s+u:n?f+r:Math.sqrt(f*f+r*r+s*s+u*u)}function c(t){if((t=t.length?t[0]:t)===window||t===document)throw new Error(\"I'm sorry, Dave. I'm afraid I can't do that.\");var e=t.getBoundingClientRect(),o=t.parentNode.getBoundingClientRect(),n=document.body.getBoundingClientRect(),i=window.pageYOffset,f=window.pageXOffset;return{width:e.width,height:e.height,offset:{top:e.top+i,left:e.left+f},parentDims:{width:o.width,height:o.height,offset:{top:o.top+i,left:o.left+f}},windowDims:{width:n.width,height:n.height,offset:{top:i,left:f}}}}},21:function(t,e,o){t.exports=o(\"./js/entries/plugins/foundation.util.box.js\")}},i.c=f,i.d=function(t,e,o){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},i.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(i.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var n in e)i.d(o,n,function(t){return e[t]}.bind(null,n));return o},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,\"a\",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p=\"\",i(i.s=21);function i(t){if(f[t])return f[t].exports;var e=f[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,i),e.l=!0,e.exports}var n,f});\n//# sourceMappingURL=foundation.util.box.min.js.map\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.util.imageLoader\"] = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.imageLoader\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 22);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.util.imageLoader.js\":\n/*!****!*\\\n !*** ./js/entries/plugins/foundation.util.imageLoader.js ***!\n \\****/\n/*! exports provided: Foundation, onImagesLoaded */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.imageLoader */ \"./js/foundation.util.imageLoader.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"onImagesLoaded\", function() { return _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__[\"onImagesLoaded\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].onImagesLoaded = _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__[\"onImagesLoaded\"];\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.imageLoader.js\":\n/*!***!*\\\n !*** ./js/foundation.util.imageLoader.js ***!\n \\***/\n/*! exports provided: onImagesLoaded */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"onImagesLoaded\", function() { return onImagesLoaded; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n\n\n\n/**\n * Runs a callback function when images are fully loaded.\n * @param {Object} images - Image(s) to check if loaded.\n * @param {Func} callback - Function to execute when image is fully loaded.\n */\n\nfunction onImagesLoaded(images, callback) {\n var self = this,\n unloaded = images.length;\n\n if (unloaded === 0) {\n callback();\n }\n\n images.each(function () {\n // Check if image is loaded\n if (this.complete && typeof this.naturalWidth !== 'undefined') {\n singleImageLoaded();\n } else {\n // If the above check failed, simulate loading on detached element.\n var image = new Image(); // Still count image as loaded if it finalizes with an error.\n\n var events = \"load.zf.images error.zf.images\";\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(image).one(events, function me(event) {\n // Unbind the event listeners. We're using 'one' but only one of the two events will have fired.\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).off(events, me);\n singleImageLoaded();\n });\n image.src = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).attr('src');\n }\n });\n\n function singleImageLoaded() {\n unloaded--;\n\n if (unloaded === 0) {\n callback();\n }\n }\n}\n\n\n\n/***/ }),\n\n/***/ 22:\n/*!!*\\\n !*** multi ./js/entries/plugins/foundation.util.imageLoader.js ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.imageLoader.js */\"./js/entries/plugins/foundation.util.imageLoader.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.util.imageLoader.js.map","!function(e,n){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=n(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],n):\"object\"==typeof exports?exports[\"foundation.util.imageLoader\"]=n(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.imageLoader\"]=n(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery))}(window,function(o,t){return i={},r.m=u={\"./foundation.core\":function(e,n){e.exports=o},\"./js/entries/plugins/foundation.util.imageLoader.js\":function(e,n,o){\"use strict\";o.r(n);var t=o(\"./foundation.core\");o.d(n,\"Foundation\",function(){return t.Foundation});var r=o(\"./js/foundation.util.imageLoader.js\");o.d(n,\"onImagesLoaded\",function(){return r.onImagesLoaded}),t.Foundation.onImagesLoaded=r.onImagesLoaded},\"./js/foundation.util.imageLoader.js\":function(e,n,o){\"use strict\";o.r(n),o.d(n,\"onImagesLoaded\",function(){return u});var t=o(\"jquery\"),r=o.n(t);function u(e,n){var o=e.length;function t(){0===--o&&n()}0===o&&n(),e.each(function(){if(this.complete&&void 0!==this.naturalWidth)t();else{var e=new Image,o=\"load.zf.images error.zf.images\";r()(e).one(o,function e(n){r()(this).off(o,e),t()}),e.src=r()(this).attr(\"src\")}})}},22:function(e,n,o){e.exports=o(\"./js/entries/plugins/foundation.util.imageLoader.js\")},jquery:function(e,n){e.exports=t}},r.c=i,r.d=function(e,n,o){r.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:o})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(n,e){if(1&e&&(n=r(n)),8&e)return n;if(4&e&&\"object\"==typeof n&&n&&n.__esModule)return n;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:n}),2&e&&\"string\"!=typeof n)for(var t in n)r.d(o,t,function(e){return n[e]}.bind(null,t));return o},r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,\"a\",n),n},r.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},r.p=\"\",r(r.s=22);function r(e){if(i[e])return i[e].exports;var n=i[e]={i:e,l:!1,exports:{}};return u[e].call(n.exports,n,n.exports,r),n.l=!0,n.exports}var u,i});\n//# sourceMappingURL=foundation.util.imageLoader.min.js.map\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.util.keyboard\"] = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 23);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.util.keyboard.js\":\n/*!*!*\\\n !*** ./js/entries/plugins/foundation.util.keyboard.js ***!\n \\*/\n/*! exports provided: Foundation, Keyboard */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.keyboard */ \"./js/foundation.util.keyboard.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Keyboard\", function() { return _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].Keyboard = _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"];\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.keyboard.js\":\n/*!!*\\\n !*** ./js/foundation.util.keyboard.js ***!\n \\/\n/*! exports provided: Keyboard */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Keyboard\", function() { return Keyboard; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\n/***\n * *\n * This util was created by Marius Olbertz *\n * Please thank Marius on GitHub /owlbertz *\n * or the web http://www.mariusolbertz.de/ *\n * *\n **/\n\n\n\n\nvar keyCodes = {\n 9: 'TAB',\n 13: 'ENTER',\n 27: 'ESCAPE',\n 32: 'SPACE',\n 35: 'END',\n 36: 'HOME',\n 37: 'ARROW_LEFT',\n 38: 'ARROW_UP',\n 39: 'ARROW_RIGHT',\n 40: 'ARROW_DOWN'\n};\nvar commands = {}; // Functions pulled out to be referenceable from internals\n\nfunction findFocusable($element) {\n if (!$element) {\n return false;\n }\n\n return $element.find('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]').filter(function () {\n if (!jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is(':visible') || jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).attr('tabindex') < 0) {\n return false;\n } //only have visible elements and those that have a tabindex greater or equal 0\n\n\n return true;\n });\n}\n\nfunction parseKey(event) {\n var key = keyCodes[event.which || event.keyCode] || String.fromCharCode(event.which).toUpperCase(); // Remove un-printable characters, e.g. for `fromCharCode` calls for CTRL only events\n\n key = key.replace(/\\W+/, '');\n if (event.shiftKey) key = \"SHIFT_\".concat(key);\n if (event.ctrlKey) key = \"CTRL_\".concat(key);\n if (event.altKey) key = \"ALT_\".concat(key); // Remove trailing underscore, in case only modifiers were used (e.g. only `CTRL_ALT`)\n\n key = key.replace(/_$/, '');\n return key;\n}\n\nvar Keyboard = {\n keys: getKeyCodes(keyCodes),\n\n /**\n * Parses the (keyboard) event and returns a String that represents its key\n * Can be used like Foundation.parseKey(event) === Foundation.keys.SPACE\n * @param {Event} event - the event generated by the event handler\n * @return String key - String that represents the key pressed\n */\n parseKey: parseKey,\n\n /**\n * Handles the given (keyboard) event\n * @param {Event} event - the event generated by the event handler\n * @param {String} component - Foundation component's name, e.g. Slider or Reveal\n * @param {Objects} functions - collection of functions that are to be executed\n */\n handleKey: function handleKey(event, component, functions) {\n var commandList = commands[component],\n keyCode = this.parseKey(event),\n cmds,\n command,\n fn;\n if (!commandList) return console.warn('Component not defined!'); // Ignore the event if it was already handled\n\n if (event.zfIsKeyHandled === true) return; // This component does not differentiate between ltr and rtl\n\n if (typeof commandList.ltr === 'undefined') {\n cmds = commandList; // use plain list\n } else {\n // merge ltr and rtl: if document is rtl, rtl overwrites ltr and vice versa\n if (Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"rtl\"])()) cmds = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, commandList.ltr, commandList.rtl);else cmds = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, commandList.rtl, commandList.ltr);\n }\n\n command = cmds[keyCode];\n fn = functions[command]; // Execute the handler if found\n\n if (fn && typeof fn === 'function') {\n var returnValue = fn.apply(); // Mark the event as \"handled\" to prevent future handlings\n\n event.zfIsKeyHandled = true; // Execute function when event was handled\n\n if (functions.handled || typeof functions.handled === 'function') {\n functions.handled(returnValue);\n }\n } else {\n // Execute function when event was not handled\n if (functions.unhandled || typeof functions.unhandled === 'function') {\n functions.unhandled();\n }\n }\n },\n\n /**\n * Finds all focusable elements within the given `$element`\n * @param {jQuery} $element - jQuery object to search within\n * @return {jQuery} $focusable - all focusable elements within `$element`\n */\n findFocusable: findFocusable,\n\n /**\n * Returns the component name name\n * @param {Object} component - Foundation component, e.g. Slider or Reveal\n * @return String componentName\n */\n register: function register(componentName, cmds) {\n commands[componentName] = cmds;\n },\n // TODO9438: These references to Keyboard need to not require global. Will 'this' work in this context?\n //\n\n /**\n * Traps the focus in the given element.\n * @param {jQuery} $element jQuery object to trap the foucs into.\n */\n trapFocus: function trapFocus($element) {\n var $focusable = findFocusable($element),\n $firstFocusable = $focusable.eq(0),\n $lastFocusable = $focusable.eq(-1);\n $element.on('keydown.zf.trapfocus', function (event) {\n if (event.target === $lastFocusable[0] && parseKey(event) === 'TAB') {\n event.preventDefault();\n $firstFocusable.focus();\n } else if (event.target === $firstFocusable[0] && parseKey(event) === 'SHIFT_TAB') {\n event.preventDefault();\n $lastFocusable.focus();\n }\n });\n },\n\n /**\n * Releases the trapped focus from the given element.\n * @param {jQuery} $element jQuery object to release the focus for.\n */\n releaseFocus: function releaseFocus($element) {\n $element.off('keydown.zf.trapfocus');\n }\n};\n/*\n * Constants for easier comparing.\n * Can be used like Foundation.parseKey(event) === Foundation.keys.SPACE\n */\n\nfunction getKeyCodes(kcs) {\n var k = {};\n\n for (var kc in kcs) {\n k[kcs[kc]] = kcs[kc];\n }\n\n return k;\n}\n\n\n\n/***/ }),\n\n/***/ 23:\n/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.util.keyboard.js ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.keyboard.js */\"./js/entries/plugins/foundation.util.keyboard.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.util.keyboard.js.map","!function(e,n){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=n(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],n):\"object\"==typeof exports?exports[\"foundation.util.keyboard\"]=n(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.keyboard\"]=n(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery))}(window,function(t,o){return i={},r.m=u={\"./foundation.core\":function(e,n){e.exports=t},\"./js/entries/plugins/foundation.util.keyboard.js\":function(e,n,t){\"use strict\";t.r(n);var o=t(\"./foundation.core\");t.d(n,\"Foundation\",function(){return o.Foundation});var r=t(\"./js/foundation.util.keyboard.js\");t.d(n,\"Keyboard\",function(){return r.Keyboard}),o.Foundation.Keyboard=r.Keyboard},\"./js/foundation.util.keyboard.js\":function(e,n,t){\"use strict\";t.r(n),t.d(n,\"Keyboard\",function(){return c});var o=t(\"jquery\"),a=t.n(o),f=t(\"./foundation.core\"),r={9:\"TAB\",13:\"ENTER\",27:\"ESCAPE\",32:\"SPACE\",35:\"END\",36:\"HOME\",37:\"ARROW_LEFT\",38:\"ARROW_UP\",39:\"ARROW_RIGHT\",40:\"ARROW_DOWN\"},d={};function u(e){return!!e&&e.find(\"a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]\").filter(function(){return!(!a()(this).is(\":visible\")||a()(this).attr(\"tabindex\")<0)})}function i(e){var n=r[e.which||e.keyCode]||String.fromCharCode(e.which).toUpperCase();return n=n.replace(/\\W+/,\"\"),e.shiftKey&&(n=\"SHIFT_\".concat(n)),e.ctrlKey&&(n=\"CTRL_\".concat(n)),e.altKey&&(n=\"ALT_\".concat(n)),n=n.replace(/_$/,\"\")}var c={keys:function(e){var n={};for(var t in e)n[e[t]]=e[t];return n}(r),parseKey:i,handleKey:function(e,n,t){var o,r=d[n],u=this.parseKey(e);if(!r)return console.warn(\"Component not defined!\");if(!0!==e.zfIsKeyHandled)if((o=t[(void 0===r.ltr?r:Object(f.rtl)()?a.a.extend({},r.ltr,r.rtl):a.a.extend({},r.rtl,r.ltr))[u]])&&\"function\"==typeof o){var i=o.apply();e.zfIsKeyHandled=!0,!t.handled&&\"function\"!=typeof t.handled||t.handled(i)}else!t.unhandled&&\"function\"!=typeof t.unhandled||t.unhandled()},findFocusable:u,register:function(e,n){d[e]=n},trapFocus:function(e){var n=u(e),t=n.eq(0),o=n.eq(-1);e.on(\"keydown.zf.trapfocus\",function(e){e.target===o[0]&&\"TAB\"===i(e)?(e.preventDefault(),t.focus()):e.target===t[0]&&\"SHIFT_TAB\"===i(e)&&(e.preventDefault(),o.focus())})},releaseFocus:function(e){e.off(\"keydown.zf.trapfocus\")}}},23:function(e,n,t){e.exports=t(\"./js/entries/plugins/foundation.util.keyboard.js\")},jquery:function(e,n){e.exports=o}},r.c=i,r.d=function(e,n,t){r.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(n,e){if(1&e&&(n=r(n)),8&e)return n;if(4&e&&\"object\"==typeof n&&n&&n.__esModule)return n;var t=Object.create(null);if(r.r(t),Object.defineProperty(t,\"default\",{enumerable:!0,value:n}),2&e&&\"string\"!=typeof n)for(var o in n)r.d(t,o,function(e){return n[e]}.bind(null,o));return t},r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,\"a\",n),n},r.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},r.p=\"\",r(r.s=23);function r(e){if(i[e])return i[e].exports;var n=i[e]={i:e,l:!1,exports:{}};return u[e].call(n.exports,n,n.exports,r),n.l=!0,n.exports}var u,i});\n//# sourceMappingURL=foundation.util.keyboard.min.js.map\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.util.mediaQuery\"] = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 24);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.util.mediaQuery.js\":\n/*!***!*\\\n !*** ./js/entries/plugins/foundation.util.mediaQuery.js ***!\n \\***/\n/*! exports provided: Foundation, MediaQuery */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.mediaQuery */ \"./js/foundation.util.mediaQuery.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MediaQuery\", function() { return _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].MediaQuery = _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"];\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].MediaQuery._init();\n\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.mediaQuery.js\":\n/*!**!*\\\n !*** ./js/foundation.util.mediaQuery.js ***!\n \\**/\n/*! exports provided: MediaQuery */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MediaQuery\", function() { return MediaQuery; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(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\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n // Default set of media queries\n\nvar defaultQueries = {\n 'default': 'only screen',\n landscape: 'only screen and (orientation: landscape)',\n portrait: 'only screen and (orientation: portrait)',\n retina: 'only screen and (-webkit-min-device-pixel-ratio: 2),' + 'only screen and (min--moz-device-pixel-ratio: 2),' + 'only screen and (-o-min-device-pixel-ratio: 2/1),' + 'only screen and (min-device-pixel-ratio: 2),' + 'only screen and (min-resolution: 192dpi),' + 'only screen and (min-resolution: 2dppx)'\n}; // matchMedia() polyfill - Test a CSS media type/query in JS.\n// Authors & copyright © 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. MIT license\n\n/* eslint-disable */\n\nwindow.matchMedia || (window.matchMedia = function () {\n \"use strict\"; // For browsers that support matchMedium api such as IE 9 and webkit\n\n var styleMedia = window.styleMedia || window.media; // For those that don't support matchMedium\n\n if (!styleMedia) {\n var style = document.createElement('style'),\n script = document.getElementsByTagName('script')[0],\n info = null;\n style.type = 'text/css';\n style.id = 'matchmediajs-test';\n\n if (!script) {\n document.head.appendChild(style);\n } else {\n script.parentNode.insertBefore(style, script);\n } // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers\n\n\n info = 'getComputedStyle' in window && window.getComputedStyle(style, null) || style.currentStyle;\n styleMedia = {\n matchMedium: function matchMedium(media) {\n var text = '@media ' + media + '{ #matchmediajs-test { width: 1px; } }'; // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers\n\n if (style.styleSheet) {\n style.styleSheet.cssText = text;\n } else {\n style.textContent = text;\n } // Test if media query is true or false\n\n\n return info.width === '1px';\n }\n };\n }\n\n return function (media) {\n return {\n matches: styleMedia.matchMedium(media || 'all'),\n media: media || 'all'\n };\n };\n}());\n/* eslint-enable */\n\nvar MediaQuery = {\n queries: [],\n current: '',\n\n /**\n * Initializes the media query helper, by extracting the breakpoint list from the CSS and activating the breakpoint watcher.\n * @function\n * @private\n */\n _init: function _init() {\n // make sure the initialization is only done once when calling _init() several times\n if (this.isInitialized === true) {\n return;\n } else {\n this.isInitialized = true;\n }\n\n var self = this;\n var $meta = jquery__WEBPACK_IMPORTED_MODULE_0___default()('meta.foundation-mq');\n\n if (!$meta.length) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('').appendTo(document.head);\n }\n\n var extractedStyles = jquery__WEBPACK_IMPORTED_MODULE_0___default()('.foundation-mq').css('font-family');\n var namedQueries;\n namedQueries = parseStyleToObject(extractedStyles);\n self.queries = []; // reset\n\n for (var key in namedQueries) {\n if (namedQueries.hasOwnProperty(key)) {\n self.queries.push({\n name: key,\n value: \"only screen and (min-width: \".concat(namedQueries[key], \")\")\n });\n }\n }\n\n this.current = this._getCurrentSize();\n\n this._watcher();\n },\n\n /**\n * Reinitializes the media query helper.\n * Useful if your CSS breakpoint configuration has just been loaded or has changed since the initialization.\n * @function\n * @private\n */\n _reInit: function _reInit() {\n this.isInitialized = false;\n\n this._init();\n },\n\n /**\n * Checks if the screen is at least as wide as a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller.\n */\n atLeast: function atLeast(size) {\n var query = this.get(size);\n\n if (query) {\n return window.matchMedia(query).matches;\n }\n\n return false;\n },\n\n /**\n * Checks if the screen is within the given breakpoint.\n * If smaller than the breakpoint of larger than its upper limit it returns false.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` otherwise.\n */\n only: function only(size) {\n return size === this._getCurrentSize();\n },\n\n /**\n * Checks if the screen is within a breakpoint or smaller.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's larger.\n */\n upTo: function upTo(size) {\n var nextSize = this.next(size); // If the next breakpoint does not match, the screen is smaller than\n // the upper limit of this breakpoint.\n\n if (nextSize) {\n return !this.atLeast(nextSize);\n } // If there is no next breakpoint, the \"size\" breakpoint does not have\n // an upper limit and the screen will always be within it or smaller.\n\n\n return true;\n },\n\n /**\n * Checks if the screen matches to a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check, either 'small only' or 'small'. Omitting 'only' falls back to using atLeast() method.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it does not.\n */\n is: function is(size) {\n var parts = size.trim().split(' ').filter(function (p) {\n return !!p.length;\n });\n\n var _parts = _slicedToArray(parts, 2),\n bpSize = _parts[0],\n _parts$ = _parts[1],\n bpModifier = _parts$ === void 0 ? '' : _parts$; // Only the breakpont\n\n\n if (bpModifier === 'only') {\n return this.only(bpSize);\n } // At least the breakpoint (included)\n\n\n if (!bpModifier || bpModifier === 'up') {\n return this.atLeast(bpSize);\n } // Up to the breakpoint (included)\n\n\n if (bpModifier === 'down') {\n return this.upTo(bpSize);\n }\n\n throw new Error(\"\\n Invalid breakpoint passed to MediaQuery.is().\\n Expected a breakpoint name formatted like \\\" \\\", got \\\"\".concat(size, \"\\\".\\n \"));\n },\n\n /**\n * Gets the media query of a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to get.\n * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist.\n */\n get: function get(size) {\n for (var i in this.queries) {\n if (this.queries.hasOwnProperty(i)) {\n var query = this.queries[i];\n if (size === query.name) return query.value;\n }\n }\n\n return null;\n },\n\n /**\n * Get the breakpoint following the given breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint.\n * @returns {String|null} - The name of the following breakpoint, or `null` if the passed breakpoint was the last one.\n */\n next: function next(size) {\n var _this = this;\n\n var queryIndex = this.queries.findIndex(function (q) {\n return _this._getQueryName(q) === size;\n });\n\n if (queryIndex === -1) {\n throw new Error(\"\\n Unknown breakpoint \\\"\".concat(size, \"\\\" passed to MediaQuery.next().\\n Ensure it is present in your Sass \\\"$breakpoints\\\" setting.\\n \"));\n }\n\n var nextQuery = this.queries[queryIndex + 1];\n return nextQuery ? nextQuery.name : null;\n },\n\n /**\n * Returns the name of the breakpoint related to the given value.\n * @function\n * @private\n * @param {String|Object} value - Breakpoint name or query object.\n * @returns {String} Name of the breakpoint.\n */\n _getQueryName: function _getQueryName(value) {\n if (typeof value === 'string') return value;\n if (_typeof(value) === 'object') return value.name;\n throw new TypeError(\"\\n Invalid value passed to MediaQuery._getQueryName().\\n Expected a breakpoint name (String) or a breakpoint query (Object), got \\\"\".concat(value, \"\\\" (\").concat(_typeof(value), \")\\n \"));\n },\n\n /**\n * Gets the current breakpoint name by testing every breakpoint and returning the last one to match (the biggest one).\n * @function\n * @private\n * @returns {String} Name of the current breakpoint.\n */\n _getCurrentSize: function _getCurrentSize() {\n var matched;\n\n for (var i = 0; i < this.queries.length; i++) {\n var query = this.queries[i];\n\n if (window.matchMedia(query.value).matches) {\n matched = query;\n }\n }\n\n return matched && this._getQueryName(matched);\n },\n\n /**\n * Activates the breakpoint watcher, which fires an event on the window whenever the breakpoint changes.\n * @function\n * @private\n */\n _watcher: function _watcher() {\n var _this2 = this;\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('resize.zf.mediaquery').on('resize.zf.mediaquery', function () {\n var newSize = _this2._getCurrentSize(),\n currentSize = _this2.current;\n\n if (newSize !== currentSize) {\n // Change the current media query\n _this2.current = newSize; // Broadcast the media query change on the window\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).trigger('changed.zf.mediaquery', [newSize, currentSize]);\n }\n });\n }\n}; // Thank you: https://github.com/sindresorhus/query-string\n\nfunction parseStyleToObject(str) {\n var styleObject = {};\n\n if (typeof str !== 'string') {\n return styleObject;\n }\n\n str = str.trim().slice(1, -1); // browsers re-quote string style values\n\n if (!str) {\n return styleObject;\n }\n\n styleObject = str.split('&').reduce(function (ret, param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = parts[0];\n var val = parts[1];\n key = decodeURIComponent(key); // missing `=` should be `null`:\n // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\n val = typeof val === 'undefined' ? null : decodeURIComponent(val);\n\n if (!ret.hasOwnProperty(key)) {\n ret[key] = val;\n } else if (Array.isArray(ret[key])) {\n ret[key].push(val);\n } else {\n ret[key] = [ret[key], val];\n }\n\n return ret;\n }, {});\n return styleObject;\n}\n\n\n\n/***/ }),\n\n/***/ 24:\n/*!****!*\\\n !*** multi ./js/entries/plugins/foundation.util.mediaQuery.js ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.mediaQuery.js */\"./js/entries/plugins/foundation.util.mediaQuery.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.util.mediaQuery.js.map","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],t):\"object\"==typeof exports?exports[\"foundation.util.mediaQuery\"]=t(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.mediaQuery\"]=t(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery))}(window,function(n,r){return u={},i.m=o={\"./foundation.core\":function(e,t){e.exports=n},\"./js/entries/plugins/foundation.util.mediaQuery.js\":function(e,t,n){\"use strict\";n.r(t);var r=n(\"./foundation.core\");n.d(t,\"Foundation\",function(){return r.Foundation});var i=n(\"./js/foundation.util.mediaQuery.js\");n.d(t,\"MediaQuery\",function(){return i.MediaQuery}),r.Foundation.MediaQuery=i.MediaQuery,r.Foundation.MediaQuery._init()},\"./js/foundation.util.mediaQuery.js\":function(e,t,n){\"use strict\";n.r(t),n.d(t,\"MediaQuery\",function(){return a});var r=n(\"jquery\"),i=n.n(r);function o(e){return(o=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var u,a=e[Symbol.iterator]();!(r=(u=a.next()).done)&&(n.push(u.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}(e,t)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}()}window.matchMedia||(window.matchMedia=function(){var t=window.styleMedia||window.media;if(!t){var n,r=document.createElement(\"style\"),e=document.getElementsByTagName(\"script\")[0];r.type=\"text/css\",r.id=\"matchmediajs-test\",e?e.parentNode.insertBefore(r,e):document.head.appendChild(r),n=\"getComputedStyle\"in window&&window.getComputedStyle(r,null)||r.currentStyle,t={matchMedium:function(e){var t=\"@media \"+e+\"{ #matchmediajs-test { width: 1px; } }\";return r.styleSheet?r.styleSheet.cssText=t:r.textContent=t,\"1px\"===n.width}}}return function(e){return{matches:t.matchMedium(e||\"all\"),media:e||\"all\"}}}());var a={queries:[],current:\"\",_init:function(){if(!0!==this.isInitialized){this.isInitialized=!0;i()(\"meta.foundation-mq\").length||i()('').appendTo(document.head);var e,t=i()(\".foundation-mq\").css(\"font-family\");for(var n in e=function(e){var t={};return\"string\"==typeof e&&(e=e.trim().slice(1,-1))?t=e.split(\"&\").reduce(function(e,t){var n=t.replace(/\\+/g,\" \").split(\"=\"),r=n[0],i=n[1];return r=decodeURIComponent(r),i=void 0===i?null:decodeURIComponent(i),e.hasOwnProperty(r)?Array.isArray(e[r])?e[r].push(i):e[r]=[e[r],i]:e[r]=i,e},{}):t}(t),this.queries=[],e)e.hasOwnProperty(n)&&this.queries.push({name:n,value:\"only screen and (min-width: \".concat(e[n],\")\")});this.current=this._getCurrentSize(),this._watcher()}},_reInit:function(){this.isInitialized=!1,this._init()},atLeast:function(e){var t=this.get(e);return!!t&&window.matchMedia(t).matches},only:function(e){return e===this._getCurrentSize()},upTo:function(e){var t=this.next(e);return!t||!this.atLeast(t)},is:function(e){var t=u(e.trim().split(\" \").filter(function(e){return!!e.length}),2),n=t[0],r=t[1],i=void 0===r?\"\":r;if(\"only\"===i)return this.only(n);if(!i||\"up\"===i)return this.atLeast(n);if(\"down\"===i)return this.upTo(n);throw new Error('\\n Invalid breakpoint passed to MediaQuery.is().\\n Expected a breakpoint name formatted like \" \", got \"'.concat(e,'\".\\n '))},get:function(e){for(var t in this.queries)if(this.queries.hasOwnProperty(t)){var n=this.queries[t];if(e===n.name)return n.value}return null},next:function(t){var n=this,e=this.queries.findIndex(function(e){return n._getQueryName(e)===t});if(-1===e)throw new Error('\\n Unknown breakpoint \"'.concat(t,'\" passed to MediaQuery.next().\\n Ensure it is present in your Sass \"$breakpoints\" setting.\\n '));var r=this.queries[e+1];return r?r.name:null},_getQueryName:function(e){if(\"string\"==typeof e)return e;if(\"object\"===o(e))return e.name;throw new TypeError('\\n Invalid value passed to MediaQuery._getQueryName().\\n Expected a breakpoint name (String) or a breakpoint query (Object), got \"'.concat(e,'\" (').concat(o(e),\")\\n \"))},_getCurrentSize:function(){for(var e,t=0;t 1 && arguments[1] !== undefined ? arguments[1] : 'zf';\n menu.attr('role', 'menubar');\n menu.find('a').attr({\n 'role': 'menuitem'\n });\n var items = menu.find('li').attr({\n 'role': 'none'\n }),\n subMenuClass = \"is-\".concat(type, \"-submenu\"),\n subItemClass = \"\".concat(subMenuClass, \"-item\"),\n hasSubClass = \"is-\".concat(type, \"-submenu-parent\"),\n applyAria = type !== 'accordion'; // Accordions handle their own ARIA attriutes.\n\n items.each(function () {\n var $item = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n $sub = $item.children('ul');\n\n if ($sub.length) {\n $item.addClass(hasSubClass);\n\n if (applyAria) {\n $item.attr({\n 'aria-haspopup': true,\n 'aria-label': $item.children('a:first').text()\n }); // Note: Drilldowns behave differently in how they hide, and so need\n // additional attributes. We should look if this possibly over-generalized\n // utility (Nest) is appropriate when we rework menus in 6.4\n\n if (type === 'drilldown') {\n $item.attr({\n 'aria-expanded': false\n });\n }\n }\n\n $sub.addClass(\"submenu \".concat(subMenuClass)).attr({\n 'data-submenu': '',\n 'role': 'menubar'\n });\n\n if (type === 'drilldown') {\n $sub.attr({\n 'aria-hidden': true\n });\n }\n }\n\n if ($item.parent('[data-submenu]').length) {\n $item.addClass(\"is-submenu-item \".concat(subItemClass));\n }\n });\n return;\n },\n Burn: function Burn(menu, type) {\n var //items = menu.find('li'),\n subMenuClass = \"is-\".concat(type, \"-submenu\"),\n subItemClass = \"\".concat(subMenuClass, \"-item\"),\n hasSubClass = \"is-\".concat(type, \"-submenu-parent\");\n menu.find('>li, > li > ul, .menu, .menu > li, [data-submenu] > li').removeClass(\"\".concat(subMenuClass, \" \").concat(subItemClass, \" \").concat(hasSubClass, \" is-submenu-item submenu is-active\")).removeAttr('data-submenu').css('display', '');\n }\n};\n\n\n/***/ }),\n\n/***/ 26:\n/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.util.nest.js ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.nest.js */\"./js/entries/plugins/foundation.util.nest.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.util.nest.js.map","!function(e,n){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=n(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],n):\"object\"==typeof exports?exports[\"foundation.util.nest\"]=n(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.nest\"]=n(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery))}(window,function(t,r){return i={},o.m=u={\"./foundation.core\":function(e,n){e.exports=t},\"./js/entries/plugins/foundation.util.nest.js\":function(e,n,t){\"use strict\";t.r(n);var r=t(\"./foundation.core\");t.d(n,\"Foundation\",function(){return r.Foundation});var o=t(\"./js/foundation.util.nest.js\");t.d(n,\"Nest\",function(){return o.Nest}),r.Foundation.Nest=o.Nest},\"./js/foundation.util.nest.js\":function(e,n,t){\"use strict\";t.r(n),t.d(n,\"Nest\",function(){return o});var r=t(\"jquery\"),s=t.n(r),o={Feather:function(e,n){var t=1li, > li > ul, .menu, .menu > li, [data-submenu] > li\").removeClass(\"\".concat(t,\" \").concat(r,\" \").concat(o,\" is-submenu-item submenu is-active\")).removeAttr(\"data-submenu\").css(\"display\",\"\")}}},26:function(e,n,t){e.exports=t(\"./js/entries/plugins/foundation.util.nest.js\")},jquery:function(e,n){e.exports=r}},o.c=i,o.d=function(e,n,t){o.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t})},o.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},o.t=function(n,e){if(1&e&&(n=o(n)),8&e)return n;if(4&e&&\"object\"==typeof n&&n&&n.__esModule)return n;var t=Object.create(null);if(o.r(t),Object.defineProperty(t,\"default\",{enumerable:!0,value:n}),2&e&&\"string\"!=typeof n)for(var r in n)o.d(t,r,function(e){return n[e]}.bind(null,r));return t},o.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(n,\"a\",n),n},o.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},o.p=\"\",o(o.s=26);function o(e){if(i[e])return i[e].exports;var n=i[e]={i:e,l:!1,exports:{}};return u[e].call(n.exports,n,n.exports,o),n.l=!0,n.exports}var u,i});\n//# sourceMappingURL=foundation.util.nest.min.js.map\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.util.timer\"] = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.timer\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 27);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.util.timer.js\":\n/*!***!*\\\n !*** ./js/entries/plugins/foundation.util.timer.js ***!\n \\***/\n/*! exports provided: Foundation, Timer */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.timer */ \"./js/foundation.util.timer.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Timer\", function() { return _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__[\"Timer\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].Timer = _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__[\"Timer\"];\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.timer.js\":\n/*!**!*\\\n !*** ./js/foundation.util.timer.js ***!\n \\**/\n/*! exports provided: Timer */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Timer\", function() { return Timer; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n\n\n\n\nfunction Timer(elem, options, cb) {\n var _this = this,\n duration = options.duration,\n //options is an object for easily adding features later.\n nameSpace = Object.keys(elem.data())[0] || 'timer',\n remain = -1,\n start,\n timer;\n\n this.isPaused = false;\n\n this.restart = function () {\n remain = -1;\n clearTimeout(timer);\n this.start();\n };\n\n this.start = function () {\n this.isPaused = false; // if(!elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.\n\n clearTimeout(timer);\n remain = remain <= 0 ? duration : remain;\n elem.data('paused', false);\n start = Date.now();\n timer = setTimeout(function () {\n if (options.infinite) {\n _this.restart(); //rerun the timer.\n\n }\n\n if (cb && typeof cb === 'function') {\n cb();\n }\n }, remain);\n elem.trigger(\"timerstart.zf.\".concat(nameSpace));\n };\n\n this.pause = function () {\n this.isPaused = true; //if(elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.\n\n clearTimeout(timer);\n elem.data('paused', true);\n var end = Date.now();\n remain = remain - (end - start);\n elem.trigger(\"timerpaused.zf.\".concat(nameSpace));\n };\n}\n\n\n\n/***/ }),\n\n/***/ 27:\n/*!****!*\\\n !*** multi ./js/entries/plugins/foundation.util.timer.js ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.timer.js */\"./js/entries/plugins/foundation.util.timer.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.util.timer.js.map","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],e):\"object\"==typeof exports?exports[\"foundation.util.timer\"]=e(require(\"./foundation.core\"),require(\"jquery\")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__[\"foundation.util.timer\"]=e(t.__FOUNDATION_EXTERNAL__[\"foundation.core\"],t.jQuery))}(window,function(n,r){return u={},o.m=i={\"./foundation.core\":function(t,e){t.exports=n},\"./js/entries/plugins/foundation.util.timer.js\":function(t,e,n){\"use strict\";n.r(e);var r=n(\"./foundation.core\");n.d(e,\"Foundation\",function(){return r.Foundation});var o=n(\"./js/foundation.util.timer.js\");n.d(e,\"Timer\",function(){return o.Timer}),r.Foundation.Timer=o.Timer},\"./js/foundation.util.timer.js\":function(t,e,n){\"use strict\";n.r(e),n.d(e,\"Timer\",function(){return r});n(\"jquery\");function r(e,t,n){var r,o,i=this,u=t.duration,a=Object.keys(e.data())[0]||\"timer\",f=-1;this.isPaused=!1,this.restart=function(){f=-1,clearTimeout(o),this.start()},this.start=function(){this.isPaused=!1,clearTimeout(o),f=f<=0?u:f,e.data(\"paused\",!1),r=Date.now(),o=setTimeout(function(){t.infinite&&i.restart(),n&&\"function\"==typeof n&&n()},f),e.trigger(\"timerstart.zf.\".concat(a))},this.pause=function(){this.isPaused=!0,clearTimeout(o),e.data(\"paused\",!0);var t=Date.now();f-=t-r,e.trigger(\"timerpaused.zf.\".concat(a))}}},27:function(t,e,n){t.exports=n(\"./js/entries/plugins/foundation.util.timer.js\")},jquery:function(t,e){t.exports=r}},o.c=u,o.d=function(t,e,n){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},o.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var r in e)o.d(n,r,function(t){return e[t]}.bind(null,r));return n},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,\"a\",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p=\"\",o(o.s=27);function o(t){if(u[t])return u[t].exports;var e=u[t]={i:t,l:!1,exports:{}};return i[t].call(e.exports,e,e.exports,o),e.l=!0,e.exports}var i,u});\n//# sourceMappingURL=foundation.util.timer.min.js.map\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.util.touch\"] = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 28);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.util.touch.js\":\n/*!***!*\\\n !*** ./js/entries/plugins/foundation.util.touch.js ***!\n \\***/\n/*! exports provided: Foundation, Touch */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.touch */ \"./js/foundation.util.touch.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Touch\", function() { return _foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__[\"Touch\"]; });\n\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_2__[\"Foundation\"]; });\n\n\n\n_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__[\"Touch\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\nwindow.Foundation.Touch = _foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__[\"Touch\"];\n\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.touch.js\":\n/*!**!*\\\n !*** ./js/foundation.util.touch.js ***!\n \\**/\n/*! exports provided: Touch */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Touch\", function() { return Touch; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n//\n//**Work inspired by multiple jquery swipe plugins**\n//**Done by Yohai Ararat **\n//\n\nvar Touch = {};\nvar startPosX,\n startPosY,\n startTime,\n elapsedTime,\n startEvent,\n isMoving = false,\n didMoved = false;\n\nfunction onTouchEnd(e) {\n this.removeEventListener('touchmove', onTouchMove);\n this.removeEventListener('touchend', onTouchEnd); // If the touch did not move, consider it as a \"tap\"\n\n if (!didMoved) {\n var tapEvent = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.Event('tap', startEvent || e);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger(tapEvent);\n }\n\n startEvent = null;\n isMoving = false;\n didMoved = false;\n}\n\nfunction onTouchMove(e) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default.a.spotSwipe.preventDefault) {\n e.preventDefault();\n }\n\n if (isMoving) {\n var x = e.touches[0].pageX;\n var y = e.touches[0].pageY;\n var dx = startPosX - x;\n var dy = startPosY - y;\n var dir;\n didMoved = true;\n elapsedTime = new Date().getTime() - startTime;\n\n if (Math.abs(dx) >= jquery__WEBPACK_IMPORTED_MODULE_0___default.a.spotSwipe.moveThreshold && elapsedTime <= jquery__WEBPACK_IMPORTED_MODULE_0___default.a.spotSwipe.timeThreshold) {\n dir = dx > 0 ? 'left' : 'right';\n } // else if(Math.abs(dy) >= $.spotSwipe.moveThreshold && elapsedTime <= $.spotSwipe.timeThreshold) {\n // dir = dy > 0 ? 'down' : 'up';\n // }\n\n\n if (dir) {\n e.preventDefault();\n onTouchEnd.apply(this, arguments);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger(jquery__WEBPACK_IMPORTED_MODULE_0___default.a.Event('swipe', Object.assign({}, e)), dir).trigger(jquery__WEBPACK_IMPORTED_MODULE_0___default.a.Event(\"swipe\".concat(dir), Object.assign({}, e)));\n }\n }\n}\n\nfunction onTouchStart(e) {\n if (e.touches.length == 1) {\n startPosX = e.touches[0].pageX;\n startPosY = e.touches[0].pageY;\n startEvent = e;\n isMoving = true;\n didMoved = false;\n startTime = new Date().getTime();\n this.addEventListener('touchmove', onTouchMove, false);\n this.addEventListener('touchend', onTouchEnd, false);\n }\n}\n\nfunction init() {\n this.addEventListener && this.addEventListener('touchstart', onTouchStart, false);\n}\n\nfunction teardown() {\n this.removeEventListener('touchstart', onTouchStart);\n}\n\nvar SpotSwipe =\n/*#__PURE__*/\nfunction () {\n function SpotSwipe($) {\n _classCallCheck(this, SpotSwipe);\n\n this.version = '1.0.0';\n this.enabled = 'ontouchstart' in document.documentElement;\n this.preventDefault = false;\n this.moveThreshold = 75;\n this.timeThreshold = 200;\n this.$ = $;\n\n this._init();\n }\n\n _createClass(SpotSwipe, [{\n key: \"_init\",\n value: function _init() {\n var $ = this.$;\n $.event.special.swipe = {\n setup: init\n };\n $.event.special.tap = {\n setup: init\n };\n $.each(['left', 'up', 'down', 'right'], function () {\n $.event.special[\"swipe\".concat(this)] = {\n setup: function setup() {\n $(this).on('swipe', $.noop);\n }\n };\n });\n }\n }]);\n\n return SpotSwipe;\n}();\n/**\n * As far as I can tell, both setupSpotSwipe and *\n * setupTouchHandler should be idempotent, *\n * because they directly replace functions & *\n * values, and do not add event handlers directly. *\n **/\n\n\nTouch.setupSpotSwipe = function ($) {\n $.spotSwipe = new SpotSwipe($);\n};\n/**\n * Method for adding pseudo drag events to elements *\n */\n\n\nTouch.setupTouchHandler = function ($) {\n $.fn.addTouch = function () {\n this.each(function (i, el) {\n $(el).bind('touchstart touchmove touchend touchcancel', function (event) {\n //we pass the original event object because the jQuery event\n //object is normalized to w3c specs and does not provide the TouchList\n handleTouch(event);\n });\n });\n\n var handleTouch = function handleTouch(event) {\n var touches = event.changedTouches,\n first = touches[0],\n eventTypes = {\n touchstart: 'mousedown',\n touchmove: 'mousemove',\n touchend: 'mouseup'\n },\n type = eventTypes[event.type],\n simulatedEvent;\n\n if ('MouseEvent' in window && typeof window.MouseEvent === 'function') {\n simulatedEvent = new window.MouseEvent(type, {\n 'bubbles': true,\n 'cancelable': true,\n 'screenX': first.screenX,\n 'screenY': first.screenY,\n 'clientX': first.clientX,\n 'clientY': first.clientY\n });\n } else {\n simulatedEvent = document.createEvent('MouseEvent');\n simulatedEvent.initMouseEvent(type, true, true, window, 1, first.screenX, first.screenY, first.clientX, first.clientY, false, false, false, false, 0\n /*left*/\n , null);\n }\n\n first.target.dispatchEvent(simulatedEvent);\n };\n };\n};\n\nTouch.init = function ($) {\n if (typeof $.spotSwipe === 'undefined') {\n Touch.setupSpotSwipe($);\n Touch.setupTouchHandler($);\n }\n};\n\n\n\n/***/ }),\n\n/***/ 28:\n/*!****!*\\\n !*** multi ./js/entries/plugins/foundation.util.touch.js ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.util.touch.js */\"./js/entries/plugins/foundation.util.touch.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.util.touch.js.map","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],t):\"object\"==typeof exports?exports[\"foundation.util.touch\"]=t(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.touch\"]=t(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery))}(window,function(n,o){return r={},i.m=u={\"./foundation.core\":function(e,t){e.exports=n},\"./js/entries/plugins/foundation.util.touch.js\":function(e,t,n){\"use strict\";n.r(t);var o=n(\"jquery\"),i=n.n(o),u=n(\"./js/foundation.util.touch.js\");n.d(t,\"Touch\",function(){return u.Touch});var r=n(\"./foundation.core\");n.d(t,\"Foundation\",function(){return r.Foundation}),u.Touch.init(i.a),window.Foundation.Touch=u.Touch},\"./js/foundation.util.touch.js\":function(e,t,n){\"use strict\";n.r(t),n.d(t,\"Touch\",function(){return f});var o=n(\"jquery\"),i=n.n(o);function u(e,t){for(var n=0;n=i.a.spotSwipe.moveThreshold&&s<=i.a.spotSwipe.timeThreshold&&(t=0');\n }\n\n if (_this.options.submenuToggle) {\n $elem.addClass('has-submenu-toggle');\n $elem.children('a').after('');\n } else {\n $elem.attr({\n 'aria-controls': subId,\n 'aria-expanded': isActive,\n 'id': linkId\n });\n }\n\n $sub.attr({\n 'aria-labelledby': linkId,\n 'aria-hidden': !isActive,\n 'role': 'group',\n 'id': subId\n });\n });\n this.$element.find('li').attr({\n 'role': 'treeitem'\n });\n var initPanes = this.$element.find('.is-active');\n\n if (initPanes.length) {\n initPanes.each(function () {\n _this.down(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));\n });\n }\n\n this._events();\n }\n /**\n * Adds event handlers for items within the menu.\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this = this;\n\n this.$element.find('li').each(function () {\n var $submenu = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('[data-submenu]');\n\n if ($submenu.length) {\n if (_this.options.submenuToggle) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('.submenu-toggle').off('click.zf.accordionMenu').on('click.zf.accordionMenu', function (e) {\n _this.toggle($submenu);\n });\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('a').off('click.zf.accordionMenu').on('click.zf.accordionMenu', function (e) {\n e.preventDefault();\n\n _this.toggle($submenu);\n });\n }\n }\n }).on('keydown.zf.accordionMenu', function (e) {\n var $element = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n $elements = $element.parent('ul').children('li'),\n $prevElement,\n $nextElement,\n $target = $element.children('[data-submenu]');\n $elements.each(function (i) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)) {\n $prevElement = $elements.eq(Math.max(0, i - 1)).find('a').first();\n $nextElement = $elements.eq(Math.min(i + 1, $elements.length - 1)).find('a').first();\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('[data-submenu]:visible').length) {\n // has open sub menu\n $nextElement = $element.find('li:first-child').find('a').first();\n }\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is(':first-child')) {\n // is first element of sub menu\n $prevElement = $element.parents('li').first().find('a').first();\n } else if ($prevElement.parents('li').first().children('[data-submenu]:visible').length) {\n // if previous element has open sub menu\n $prevElement = $prevElement.parents('li').find('li:last-child').find('a').first();\n }\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is(':last-child')) {\n // is last element of sub menu\n $nextElement = $element.parents('li').first().next('li').find('a').first();\n }\n\n return;\n }\n });\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].handleKey(e, 'AccordionMenu', {\n open: function open() {\n if ($target.is(':hidden')) {\n _this.down($target);\n\n $target.find('li').first().find('a').first().focus();\n }\n },\n close: function close() {\n if ($target.length && !$target.is(':hidden')) {\n // close active sub of this item\n _this.up($target);\n } else if ($element.parent('[data-submenu]').length) {\n // close currently open sub\n _this.up($element.parent('[data-submenu]'));\n\n $element.parents('li').first().find('a').first().focus();\n }\n },\n up: function up() {\n $prevElement.focus();\n return true;\n },\n down: function down() {\n $nextElement.focus();\n return true;\n },\n toggle: function toggle() {\n if (_this.options.submenuToggle) {\n return false;\n }\n\n if ($element.children('[data-submenu]').length) {\n _this.toggle($element.children('[data-submenu]'));\n\n return true;\n }\n },\n closeAll: function closeAll() {\n _this.hideAll();\n },\n handled: function handled(preventDefault) {\n if (preventDefault) {\n e.preventDefault();\n }\n }\n });\n }); //.attr('tabindex', 0);\n }\n /**\n * Closes all panes of the menu.\n * @function\n */\n\n }, {\n key: \"hideAll\",\n value: function hideAll() {\n this.up(this.$element.find('[data-submenu]'));\n }\n /**\n * Opens all panes of the menu.\n * @function\n */\n\n }, {\n key: \"showAll\",\n value: function showAll() {\n this.down(this.$element.find('[data-submenu]'));\n }\n /**\n * Toggles the open/close state of a submenu.\n * @function\n * @param {jQuery} $target - the submenu to toggle\n */\n\n }, {\n key: \"toggle\",\n value: function toggle($target) {\n if (!$target.is(':animated')) {\n if (!$target.is(':hidden')) {\n this.up($target);\n } else {\n this.down($target);\n }\n }\n }\n /**\n * Opens the sub-menu defined by `$target`.\n * @param {jQuery} $target - Sub-menu to open.\n * @fires AccordionMenu#down\n */\n\n }, {\n key: \"down\",\n value: function down($target) {\n var _this2 = this;\n\n // If having multiple submenus active is disabled, close all the submenus\n // that are not parents or children of the targeted submenu.\n if (!this.options.multiOpen) {\n // The \"branch\" of the targetted submenu, from the component root to\n // the active submenus nested in it.\n var $targetBranch = $target.parentsUntil(this.$element).add($target).add($target.find('.is-active')); // All the active submenus that are not in the branch.\n\n var $othersActiveSubmenus = this.$element.find('.is-active').not($targetBranch);\n this.up($othersActiveSubmenus);\n }\n\n $target.addClass('is-active').attr({\n 'aria-hidden': false\n });\n\n if (this.options.submenuToggle) {\n $target.prev('.submenu-toggle').attr({\n 'aria-expanded': true\n });\n } else {\n $target.parent('.is-accordion-submenu-parent').attr({\n 'aria-expanded': true\n });\n }\n\n $target.slideDown(this.options.slideSpeed, function () {\n /**\n * Fires when the menu is done opening.\n * @event AccordionMenu#down\n */\n _this2.$element.trigger('down.zf.accordionMenu', [$target]);\n });\n }\n /**\n * Closes the sub-menu defined by `$target`. All sub-menus inside the target will be closed as well.\n * @param {jQuery} $target - Sub-menu to close.\n * @fires AccordionMenu#up\n */\n\n }, {\n key: \"up\",\n value: function up($target) {\n var _this3 = this;\n\n var $submenus = $target.find('[data-submenu]');\n var $allmenus = $target.add($submenus);\n $submenus.slideUp(0);\n $allmenus.removeClass('is-active').attr('aria-hidden', true);\n\n if (this.options.submenuToggle) {\n $allmenus.prev('.submenu-toggle').attr('aria-expanded', false);\n } else {\n $allmenus.parent('.is-accordion-submenu-parent').attr('aria-expanded', false);\n }\n\n $target.slideUp(this.options.slideSpeed, function () {\n /**\n * Fires when the menu is done collapsing up.\n * @event AccordionMenu#up\n */\n _this3.$element.trigger('up.zf.accordionMenu', [$target]);\n });\n }\n /**\n * Destroys an instance of accordion menu.\n * @fires AccordionMenu#destroyed\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.$element.find('[data-submenu]').slideDown(0).css('display', '');\n this.$element.find('a').off('click.zf.accordionMenu');\n this.$element.find('[data-is-parent-link]').detach();\n\n if (this.options.submenuToggle) {\n this.$element.find('.has-submenu-toggle').removeClass('has-submenu-toggle');\n this.$element.find('.submenu-toggle').remove();\n }\n\n _foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__[\"Nest\"].Burn(this.$element, 'accordion');\n }\n }]);\n\n return AccordionMenu;\n}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"Plugin\"]);\n\nAccordionMenu.defaults = {\n /**\n * Adds the parent link to the submenu.\n * @option\n * @type {boolean}\n * @default false\n */\n parentLink: false,\n\n /**\n * Amount of time to animate the opening of a submenu in ms.\n * @option\n * @type {number}\n * @default 250\n */\n slideSpeed: 250,\n\n /**\n * Adds a separate submenu toggle button. This allows the parent item to have a link.\n * @option\n * @example true\n */\n submenuToggle: false,\n\n /**\n * The text used for the submenu toggle if enabled. This is used for screen readers only.\n * @option\n * @example true\n */\n submenuToggleText: 'Toggle menu',\n\n /**\n * Allow the menu to have multiple open panes.\n * @option\n * @type {boolean}\n * @default true\n */\n multiOpen: true\n};\n\n\n/***/ }),\n\n/***/ 2:\n/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.accordionMenu.js ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.accordionMenu.js */\"./js/entries/plugins/foundation.accordionMenu.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.accordionMenu.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.box\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.nest\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.box\", \"./foundation.util.keyboard\", \"./foundation.util.nest\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.drilldown\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.box\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.nest\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.drilldown\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.nest\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_box__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_nest__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 3);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.box\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.box\"],\"amd\":\"./foundation.util.box\",\"commonjs\":\"./foundation.util.box\",\"commonjs2\":\"./foundation.util.box\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_box__;\n\n/***/ }),\n\n/***/ \"./foundation.util.keyboard\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;\n\n/***/ }),\n\n/***/ \"./foundation.util.nest\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.nest\"],\"amd\":\"./foundation.util.nest\",\"commonjs\":\"./foundation.util.nest\",\"commonjs2\":\"./foundation.util.nest\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_nest__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.drilldown.js\":\n/*!**!*\\\n !*** ./js/entries/plugins/foundation.drilldown.js ***!\n \\**/\n/*! exports provided: Foundation, Drilldown */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.drilldown */ \"./js/foundation.drilldown.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Drilldown\", function() { return _foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__[\"Drilldown\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__[\"Drilldown\"], 'Drilldown');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.drilldown.js\":\n/*!*!*\\\n !*** ./js/foundation.drilldown.js ***!\n \\*/\n/*! exports provided: Drilldown */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Drilldown\", function() { return Drilldown; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.nest */ \"./foundation.util.nest\");\n/* harmony import */ var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.box */ \"./foundation.util.box\");\n/* harmony import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n\n/**\n * Drilldown module.\n * @module foundation.drilldown\n * @requires foundation.util.keyboard\n * @requires foundation.util.nest\n * @requires foundation.util.box\n */\n\nvar Drilldown =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Drilldown, _Plugin);\n\n function Drilldown() {\n _classCallCheck(this, Drilldown);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Drilldown).apply(this, arguments));\n }\n\n _createClass(Drilldown, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of a drilldown menu.\n * @class\n * @name Drilldown\n * @param {jQuery} element - jQuery object to make into an accordion menu.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Drilldown.defaults, this.$element.data(), options);\n this.className = 'Drilldown'; // ie9 back compat\n\n this._init();\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].register('Drilldown', {\n 'ENTER': 'open',\n 'SPACE': 'open',\n 'ARROW_RIGHT': 'next',\n 'ARROW_UP': 'up',\n 'ARROW_DOWN': 'down',\n 'ARROW_LEFT': 'previous',\n 'ESCAPE': 'close',\n 'TAB': 'down',\n 'SHIFT_TAB': 'up'\n });\n }\n /**\n * Initializes the drilldown by creating jQuery collections of elements\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n _foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__[\"Nest\"].Feather(this.$element, 'drilldown');\n\n if (this.options.autoApplyClass) {\n this.$element.addClass('drilldown');\n }\n\n this.$element.attr({\n 'role': 'tree',\n 'aria-multiselectable': false\n });\n this.$submenuAnchors = this.$element.find('li.is-drilldown-submenu-parent').children('a');\n this.$submenus = this.$submenuAnchors.parent('li').children('[data-submenu]').attr('role', 'group');\n this.$menuItems = this.$element.find('li').not('.js-drilldown-back').attr('role', 'treeitem').find('a'); // Set the main menu as current by default (unless a submenu is selected)\n // Used to set the wrapper height when the drilldown is closed/reopened from any (sub)menu\n\n this.$currentMenu = this.$element;\n this.$element.attr('data-mutate', this.$element.attr('data-drilldown') || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"GetYoDigits\"])(6, 'drilldown'));\n\n this._prepareMenu();\n\n this._registerEvents();\n\n this._keyboardEvents();\n }\n /**\n * prepares drilldown menu by setting attributes to links and elements\n * sets a min height to prevent content jumping\n * wraps the element if not already wrapped\n * @private\n * @function\n */\n\n }, {\n key: \"_prepareMenu\",\n value: function _prepareMenu() {\n var _this = this; // if(!this.options.holdOpen){\n // this._menuLinkEvents();\n // }\n\n\n this.$submenuAnchors.each(function () {\n var $link = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n var $sub = $link.parent();\n\n if (_this.options.parentLink) {\n $link.clone().prependTo($sub.children('[data-submenu]')).wrap('
    • ');\n }\n\n $link.data('savedhref', $link.attr('href')).removeAttr('href').attr('tabindex', 0);\n $link.children('[data-submenu]').attr({\n 'aria-hidden': true,\n 'tabindex': 0,\n 'role': 'group'\n });\n\n _this._events($link);\n });\n this.$submenus.each(function () {\n var $menu = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n $back = $menu.find('.js-drilldown-back');\n\n if (!$back.length) {\n switch (_this.options.backButtonPosition) {\n case \"bottom\":\n $menu.append(_this.options.backButton);\n break;\n\n case \"top\":\n $menu.prepend(_this.options.backButton);\n break;\n\n default:\n console.error(\"Unsupported backButtonPosition value '\" + _this.options.backButtonPosition + \"'\");\n }\n }\n\n _this._back($menu);\n });\n this.$submenus.addClass('invisible');\n\n if (!this.options.autoHeight) {\n this.$submenus.addClass('drilldown-submenu-cover-previous');\n } // create a wrapper on element if it doesn't exist.\n\n\n if (!this.$element.parent().hasClass('is-drilldown')) {\n this.$wrapper = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.options.wrapper).addClass('is-drilldown');\n if (this.options.animateHeight) this.$wrapper.addClass('animate-height');\n this.$element.wrap(this.$wrapper);\n } // set wrapper\n\n\n this.$wrapper = this.$element.parent();\n this.$wrapper.css(this._getMaxDims());\n }\n }, {\n key: \"_resize\",\n value: function _resize() {\n this.$wrapper.css({\n 'max-width': 'none',\n 'min-height': 'none'\n }); // _getMaxDims has side effects (boo) but calling it should update all other necessary heights & widths\n\n this.$wrapper.css(this._getMaxDims());\n }\n /**\n * Adds event handlers to elements in the menu.\n * @function\n * @private\n * @param {jQuery} $elem - the current menu item to add handlers to.\n */\n\n }, {\n key: \"_events\",\n value: function _events($elem) {\n var _this = this;\n\n $elem.off('click.zf.drilldown').on('click.zf.drilldown', function (e) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).parentsUntil('ul', 'li').hasClass('is-drilldown-submenu-parent')) {\n e.preventDefault();\n } // if(e.target !== e.currentTarget.firstElementChild){\n // return false;\n // }\n\n\n _this._show($elem.parent('li'));\n\n if (_this.options.closeOnClick) {\n var $body = jquery__WEBPACK_IMPORTED_MODULE_0___default()('body');\n $body.off('.zf.drilldown').on('click.zf.drilldown', function (e) {\n if (e.target === _this.$element[0] || jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(_this.$element[0], e.target)) {\n return;\n }\n\n e.preventDefault();\n\n _this._hideAll();\n\n $body.off('.zf.drilldown');\n });\n }\n });\n }\n /**\n * Adds event handlers to the menu element.\n * @function\n * @private\n */\n\n }, {\n key: \"_registerEvents\",\n value: function _registerEvents() {\n if (this.options.scrollTop) {\n this._bindHandler = this._scrollTop.bind(this);\n this.$element.on('open.zf.drilldown hide.zf.drilldown close.zf.drilldown closed.zf.drilldown', this._bindHandler);\n }\n\n this.$element.on('mutateme.zf.trigger', this._resize.bind(this));\n }\n /**\n * Scroll to Top of Element or data-scroll-top-element\n * @function\n * @fires Drilldown#scrollme\n */\n\n }, {\n key: \"_scrollTop\",\n value: function _scrollTop() {\n var _this = this;\n\n var $scrollTopElement = _this.options.scrollTopElement != '' ? jquery__WEBPACK_IMPORTED_MODULE_0___default()(_this.options.scrollTopElement) : _this.$element,\n scrollPos = parseInt($scrollTopElement.offset().top + _this.options.scrollTopOffset, 10);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').stop(true).animate({\n scrollTop: scrollPos\n }, _this.options.animationDuration, _this.options.animationEasing, function () {\n /**\n * Fires after the menu has scrolled\n * @event Drilldown#scrollme\n */\n if (this === jquery__WEBPACK_IMPORTED_MODULE_0___default()('html')[0]) _this.$element.trigger('scrollme.zf.drilldown');\n });\n }\n /**\n * Adds keydown event listener to `li`'s in the menu.\n * @private\n */\n\n }, {\n key: \"_keyboardEvents\",\n value: function _keyboardEvents() {\n var _this = this;\n\n this.$menuItems.add(this.$element.find('.js-drilldown-back > a, .is-submenu-parent-item > a')).on('keydown.zf.drilldown', function (e) {\n var $element = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n $elements = $element.parent('li').parent('ul').children('li').children('a'),\n $prevElement,\n $nextElement;\n $elements.each(function (i) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)) {\n $prevElement = $elements.eq(Math.max(0, i - 1));\n $nextElement = $elements.eq(Math.min(i + 1, $elements.length - 1));\n return;\n }\n });\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].handleKey(e, 'Drilldown', {\n next: function next() {\n if ($element.is(_this.$submenuAnchors)) {\n _this._show($element.parent('li'));\n\n $element.parent('li').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element), function () {\n $element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus();\n });\n return true;\n }\n },\n previous: function previous() {\n _this._hide($element.parent('li').parent('ul'));\n\n $element.parent('li').parent('ul').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element), function () {\n setTimeout(function () {\n $element.parent('li').parent('ul').parent('li').children('a').first().focus();\n }, 1);\n });\n return true;\n },\n up: function up() {\n $prevElement.focus(); // Don't tap focus on first element in root ul\n\n return !$element.is(_this.$element.find('> li:first-child > a'));\n },\n down: function down() {\n $nextElement.focus(); // Don't tap focus on last element in root ul\n\n return !$element.is(_this.$element.find('> li:last-child > a'));\n },\n close: function close() {\n // Don't close on element in root ul\n if (!$element.is(_this.$element.find('> li > a'))) {\n _this._hide($element.parent().parent());\n\n $element.parent().parent().siblings('a').focus();\n }\n },\n open: function open() {\n if (_this.options.parentLink && $element.attr('href')) {\n // Link with href\n return false;\n } else if (!$element.is(_this.$menuItems)) {\n // not menu item means back button\n _this._hide($element.parent('li').parent('ul'));\n\n $element.parent('li').parent('ul').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element), function () {\n setTimeout(function () {\n $element.parent('li').parent('ul').parent('li').children('a').first().focus();\n }, 1);\n });\n return true;\n } else if ($element.is(_this.$submenuAnchors)) {\n // Sub menu item\n _this._show($element.parent('li'));\n\n $element.parent('li').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($element), function () {\n $element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus();\n });\n return true;\n }\n },\n handled: function handled(preventDefault) {\n if (preventDefault) {\n e.preventDefault();\n }\n }\n });\n }); // end keyboardAccess\n }\n /**\n * Closes all open elements, and returns to root menu.\n * @function\n * @fires Drilldown#close\n * @fires Drilldown#closed\n */\n\n }, {\n key: \"_hideAll\",\n value: function _hideAll() {\n var _this2 = this;\n\n var $elem = this.$element.find('.is-drilldown-submenu.is-active');\n $elem.addClass('is-closing');\n\n if (this.options.autoHeight) {\n var calcHeight = $elem.parent().closest('ul').data('calcHeight');\n this.$wrapper.css({\n height: calcHeight\n });\n }\n /**\n * Fires when the menu is closing.\n * @event Drilldown#close\n */\n\n\n this.$element.trigger('close.zf.drilldown');\n $elem.one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($elem), function () {\n $elem.removeClass('is-active is-closing');\n /**\n * Fires when the menu is fully closed.\n * @event Drilldown#closed\n */\n\n _this2.$element.trigger('closed.zf.drilldown');\n });\n }\n /**\n * Adds event listener for each `back` button, and closes open menus.\n * @function\n * @fires Drilldown#back\n * @param {jQuery} $elem - the current sub-menu to add `back` event.\n */\n\n }, {\n key: \"_back\",\n value: function _back($elem) {\n var _this = this;\n\n $elem.off('click.zf.drilldown');\n $elem.children('.js-drilldown-back').on('click.zf.drilldown', function (e) {\n // console.log('mouseup on back');\n _this._hide($elem); // If there is a parent submenu, call show\n\n\n var parentSubMenu = $elem.parent('li').parent('ul').parent('li');\n\n if (parentSubMenu.length) {\n _this._show(parentSubMenu);\n }\n });\n }\n /**\n * Adds event listener to menu items w/o submenus to close open menus on click.\n * @function\n * @private\n */\n\n }, {\n key: \"_menuLinkEvents\",\n value: function _menuLinkEvents() {\n var _this = this;\n\n this.$menuItems.not('.is-drilldown-submenu-parent').off('click.zf.drilldown').on('click.zf.drilldown', function (e) {\n setTimeout(function () {\n _this._hideAll();\n }, 0);\n });\n }\n /**\n * Sets the CSS classes for submenu to show it.\n * @function\n * @private\n * @param {jQuery} $elem - the target submenu (`ul` tag)\n * @param {boolean} trigger - trigger drilldown event\n */\n\n }, {\n key: \"_setShowSubMenuClasses\",\n value: function _setShowSubMenuClasses($elem, trigger) {\n $elem.addClass('is-active').removeClass('invisible').attr('aria-hidden', false);\n $elem.parent('li').attr('aria-expanded', true);\n\n if (trigger === true) {\n this.$element.trigger('open.zf.drilldown', [$elem]);\n }\n }\n /**\n * Sets the CSS classes for submenu to hide it.\n * @function\n * @private\n * @param {jQuery} $elem - the target submenu (`ul` tag)\n * @param {boolean} trigger - trigger drilldown event\n */\n\n }, {\n key: \"_setHideSubMenuClasses\",\n value: function _setHideSubMenuClasses($elem, trigger) {\n $elem.removeClass('is-active').addClass('invisible').attr('aria-hidden', true);\n $elem.parent('li').attr('aria-expanded', false);\n\n if (trigger === true) {\n $elem.trigger('hide.zf.drilldown', [$elem]);\n }\n }\n /**\n * Opens a specific drilldown (sub)menu no matter which (sub)menu in it is currently visible.\n * Compared to _show() this lets you jump into any submenu without clicking through every submenu on the way to it.\n * @function\n * @fires Drilldown#open\n * @param {jQuery} $elem - the target (sub)menu (`ul` tag)\n * @param {boolean} autoFocus - if true the first link in the target (sub)menu gets auto focused\n */\n\n }, {\n key: \"_showMenu\",\n value: function _showMenu($elem, autoFocus) {\n var _this = this; // Reset drilldown\n\n\n var $expandedSubmenus = this.$element.find('li[aria-expanded=\"true\"] > ul[data-submenu]');\n $expandedSubmenus.each(function (index) {\n _this._setHideSubMenuClasses(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));\n }); // Save the menu as the currently displayed one.\n\n this.$currentMenu = $elem; // If target menu is root, focus first link & exit\n\n if ($elem.is('[data-drilldown]')) {\n if (autoFocus === true) $elem.find('li[role=\"treeitem\"] > a').first().focus();\n if (this.options.autoHeight) this.$wrapper.css('height', $elem.data('calcHeight'));\n return;\n } // Find all submenus on way to root incl. the element itself\n\n\n var $submenus = $elem.children().first().parentsUntil('[data-drilldown]', '[data-submenu]'); // Open target menu and all submenus on its way to root\n\n $submenus.each(function (index) {\n // Update height of first child (target menu) if autoHeight option true\n if (index === 0 && _this.options.autoHeight) {\n _this.$wrapper.css('height', jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('calcHeight'));\n }\n\n var isLastChild = index == $submenus.length - 1; // Add transitionsend listener to last child (root due to reverse order) to open target menu's first link\n // Last child makes sure the event gets always triggered even if going through several menus\n\n if (isLastChild === true) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)), function () {\n if (autoFocus === true) {\n $elem.find('li[role=\"treeitem\"] > a').first().focus();\n }\n });\n }\n\n _this._setShowSubMenuClasses(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), isLastChild);\n });\n }\n /**\n * Opens a submenu.\n * @function\n * @fires Drilldown#open\n * @param {jQuery} $elem - the current element with a submenu to open, i.e. the `li` tag.\n */\n\n }, {\n key: \"_show\",\n value: function _show($elem) {\n var $submenu = $elem.children('[data-submenu]');\n $elem.attr('aria-expanded', true);\n this.$currentMenu = $submenu;\n $submenu.addClass('is-active').removeClass('invisible').attr('aria-hidden', false);\n\n if (this.options.autoHeight) {\n this.$wrapper.css({\n height: $submenu.data('calcHeight')\n });\n }\n /**\n * Fires when the submenu has opened.\n * @event Drilldown#open\n */\n\n\n this.$element.trigger('open.zf.drilldown', [$elem]);\n }\n /**\n * Hides a submenu\n * @function\n * @fires Drilldown#hide\n * @param {jQuery} $elem - the current sub-menu to hide, i.e. the `ul` tag.\n */\n\n }, {\n key: \"_hide\",\n value: function _hide($elem) {\n if (this.options.autoHeight) this.$wrapper.css({\n height: $elem.parent().closest('ul').data('calcHeight')\n });\n\n var _this = this;\n\n $elem.parent('li').attr('aria-expanded', false);\n $elem.attr('aria-hidden', true);\n $elem.addClass('is-closing').one(Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"transitionend\"])($elem), function () {\n $elem.removeClass('is-active is-closing');\n $elem.blur().addClass('invisible');\n });\n /**\n * Fires when the submenu has closed.\n * @event Drilldown#hide\n */\n\n $elem.trigger('hide.zf.drilldown', [$elem]);\n }\n /**\n * Iterates through the nested menus to calculate the min-height, and max-width for the menu.\n * Prevents content jumping.\n * @function\n * @private\n */\n\n }, {\n key: \"_getMaxDims\",\n value: function _getMaxDims() {\n var maxHeight = 0,\n result = {},\n _this = this; // Recalculate menu heights and total max height\n\n\n this.$submenus.add(this.$element).each(function () {\n var numOfElems = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).children('li').length;\n var height = _foundation_util_box__WEBPACK_IMPORTED_MODULE_4__[\"Box\"].GetDimensions(this).height;\n maxHeight = height > maxHeight ? height : maxHeight;\n\n if (_this.options.autoHeight) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('calcHeight', height);\n }\n });\n if (this.options.autoHeight) result['height'] = this.$currentMenu.data('calcHeight');else result['min-height'] = \"\".concat(maxHeight, \"px\");\n result['max-width'] = \"\".concat(this.$element[0].getBoundingClientRect().width, \"px\");\n return result;\n }\n /**\n * Destroys the Drilldown Menu\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n if (this.options.scrollTop) this.$element.off('.zf.drilldown', this._bindHandler);\n\n this._hideAll();\n\n this.$element.off('mutateme.zf.trigger');\n _foundation_util_nest__WEBPACK_IMPORTED_MODULE_2__[\"Nest\"].Burn(this.$element, 'drilldown');\n this.$element.unwrap().find('.js-drilldown-back, .is-submenu-parent-item').remove().end().find('.is-active, .is-closing, .is-drilldown-submenu').removeClass('is-active is-closing is-drilldown-submenu').end().find('[data-submenu]').removeAttr('aria-hidden tabindex role');\n this.$submenuAnchors.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).off('.zf.drilldown');\n });\n this.$element.find('[data-is-parent-link]').detach();\n this.$submenus.removeClass('drilldown-submenu-cover-previous invisible');\n this.$element.find('a').each(function () {\n var $link = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n $link.removeAttr('tabindex');\n\n if ($link.data('savedhref')) {\n $link.attr('href', $link.data('savedhref')).removeData('savedhref');\n } else {\n return;\n }\n });\n }\n }]);\n\n return Drilldown;\n}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__[\"Plugin\"]);\n\nDrilldown.defaults = {\n /**\n * Drilldowns depend on styles in order to function properly; in the default build of Foundation these are\n * on the `drilldown` class. This option auto-applies this class to the drilldown upon initialization.\n * @option\n * @type {boolean}\n * @default true\n */\n autoApplyClass: true,\n\n /**\n * Markup used for JS generated back button. Prepended or appended (see backButtonPosition) to submenu lists and deleted on `destroy` method, 'js-drilldown-back' class required. Remove the backslash (`\\`) if copy and pasting.\n * @option\n * @type {string}\n * @default '
    • Back
    • '\n */\n backButton: '
    • Back
    • ',\n\n /**\n * Position the back button either at the top or bottom of drilldown submenus. Can be `'left'` or `'bottom'`.\n * @option\n * @type {string}\n * @default top\n */\n backButtonPosition: 'top',\n\n /**\n * Markup used to wrap drilldown menu. Use a class name for independent styling; the JS applied class: `is-drilldown` is required. Remove the backslash (`\\`) if copy and pasting.\n * @option\n * @type {string}\n * @default '
      '\n */\n wrapper: '
      ',\n\n /**\n * Adds the parent link to the submenu.\n * @option\n * @type {boolean}\n * @default false\n */\n parentLink: false,\n\n /**\n * Allow the menu to return to root list on body click.\n * @option\n * @type {boolean}\n * @default false\n */\n closeOnClick: false,\n\n /**\n * Allow the menu to auto adjust height.\n * @option\n * @type {boolean}\n * @default false\n */\n autoHeight: false,\n\n /**\n * Animate the auto adjust height.\n * @option\n * @type {boolean}\n * @default false\n */\n animateHeight: false,\n\n /**\n * Scroll to the top of the menu after opening a submenu or navigating back using the menu back button\n * @option\n * @type {boolean}\n * @default false\n */\n scrollTop: false,\n\n /**\n * String jquery selector (for example 'body') of element to take offset().top from, if empty string the drilldown menu offset().top is taken\n * @option\n * @type {string}\n * @default ''\n */\n scrollTopElement: '',\n\n /**\n * ScrollTop offset\n * @option\n * @type {number}\n * @default 0\n */\n scrollTopOffset: 0,\n\n /**\n * Scroll animation duration\n * @option\n * @type {number}\n * @default 500\n */\n animationDuration: 500,\n\n /**\n * Scroll animation easing. Can be `'swing'` or `'linear'`.\n * @option\n * @type {string}\n * @see {@link https://api.jquery.com/animate|JQuery animate}\n * @default 'swing'\n */\n animationEasing: 'swing' // holdOpen: false\n\n};\n\n\n/***/ }),\n\n/***/ 3:\n/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.drilldown.js ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.drilldown.js */\"./js/entries/plugins/foundation.drilldown.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.drilldown.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.util.keyboard\"), require(\"./foundation.core\"), require(\"jquery\"), require(\"./foundation.util.box\"), require(\"./foundation.util.motion\"), require(\"./foundation.util.touch\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.util.keyboard\", \"./foundation.core\", \"jquery\", \"./foundation.util.box\", \"./foundation.util.motion\", \"./foundation.util.touch\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.dropdown\"] = factory(require(\"./foundation.util.keyboard\"), require(\"./foundation.core\"), require(\"jquery\"), require(\"./foundation.util.box\"), require(\"./foundation.util.motion\"), require(\"./foundation.util.touch\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.dropdown\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_box__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 4);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.box\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.box\"],\"amd\":\"./foundation.util.box\",\"commonjs\":\"./foundation.util.box\",\"commonjs2\":\"./foundation.util.box\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_box__;\n\n/***/ }),\n\n/***/ \"./foundation.util.keyboard\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;\n\n/***/ }),\n\n/***/ \"./foundation.util.motion\":\n/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;\n\n/***/ }),\n\n/***/ \"./foundation.util.touch\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.dropdown.js\":\n/*!*!*\\\n !*** ./js/entries/plugins/foundation.dropdown.js ***!\n \\*/\n/*! exports provided: Foundation, Dropdown */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_dropdown__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.dropdown */ \"./js/foundation.dropdown.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Dropdown\", function() { return _foundation_dropdown__WEBPACK_IMPORTED_MODULE_1__[\"Dropdown\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_dropdown__WEBPACK_IMPORTED_MODULE_1__[\"Dropdown\"], 'Dropdown');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.dropdown.js\":\n/*!!*\\\n !*** ./js/foundation.dropdown.js ***!\n \\/\n/*! exports provided: Dropdown */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Dropdown\", function() { return Dropdown; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_positionable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.positionable */ \"./js/foundation.positionable.js\");\n/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.triggers */ \"./js/foundation.util.triggers.js\");\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./foundation.util.touch */ \"./foundation.util.touch\");\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n\n/**\n * Dropdown module.\n * @module foundation.dropdown\n * @requires foundation.util.keyboard\n * @requires foundation.util.box\n * @requires foundation.util.touch\n * @requires foundation.util.triggers\n */\n\nvar Dropdown =\n/*#__PURE__*/\nfunction (_Positionable) {\n _inherits(Dropdown, _Positionable);\n\n function Dropdown() {\n _classCallCheck(this, Dropdown);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Dropdown).apply(this, arguments));\n }\n\n _createClass(Dropdown, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of a dropdown.\n * @class\n * @name Dropdown\n * @param {jQuery} element - jQuery object to make into a dropdown.\n * Object should be of the dropdown panel, rather than its anchor.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Dropdown.defaults, this.$element.data(), options);\n this.className = 'Dropdown'; // ie9 back compat\n // Touch and Triggers init are idempotent, just need to make sure they are initialized\n\n _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__[\"Touch\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\n _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__[\"Triggers\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\n\n this._init();\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].register('Dropdown', {\n 'ENTER': 'toggle',\n 'SPACE': 'toggle',\n 'ESCAPE': 'close'\n });\n }\n /**\n * Initializes the plugin by setting/checking options and attributes, adding helper variables, and saving the anchor.\n * @function\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var $id = this.$element.attr('id');\n this.$anchors = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-toggle=\\\"\".concat($id, \"\\\"]\")).length ? jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-toggle=\\\"\".concat($id, \"\\\"]\")) : jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-open=\\\"\".concat($id, \"\\\"]\"));\n this.$anchors.attr({\n 'aria-controls': $id,\n 'data-is-focus': false,\n 'data-yeti-box': $id,\n 'aria-haspopup': true,\n 'aria-expanded': false\n });\n\n this._setCurrentAnchor(this.$anchors.first());\n\n if (this.options.parentClass) {\n this.$parent = this.$element.parents('.' + this.options.parentClass);\n } else {\n this.$parent = null;\n } // Set [aria-labelledby] on the Dropdown if it is not set\n\n\n if (typeof this.$element.attr('aria-labelledby') === 'undefined') {\n // Get the anchor ID or create one\n if (typeof this.$currentAnchor.attr('id') === 'undefined') {\n this.$currentAnchor.attr('id', Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6, 'dd-anchor'));\n }\n\n this.$element.attr('aria-labelledby', this.$currentAnchor.attr('id'));\n }\n\n this.$element.attr({\n 'aria-hidden': 'true',\n 'data-yeti-box': $id,\n 'data-resize': $id\n });\n\n _get(_getPrototypeOf(Dropdown.prototype), \"_init\", this).call(this);\n\n this._events();\n }\n }, {\n key: \"_getDefaultPosition\",\n value: function _getDefaultPosition() {\n // handle legacy classnames\n var position = this.$element[0].className.match(/(top|left|right|bottom)/g);\n\n if (position) {\n return position[0];\n } else {\n return 'bottom';\n }\n }\n }, {\n key: \"_getDefaultAlignment\",\n value: function _getDefaultAlignment() {\n // handle legacy float approach\n var horizontalPosition = /float-(\\S+)/.exec(this.$currentAnchor.attr('class'));\n\n if (horizontalPosition) {\n return horizontalPosition[1];\n }\n\n return _get(_getPrototypeOf(Dropdown.prototype), \"_getDefaultAlignment\", this).call(this);\n }\n /**\n * Sets the position and orientation of the dropdown pane, checks for collisions if allow-overlap is not true.\n * Recursively calls itself if a collision is detected, with a new position class.\n * @function\n * @private\n */\n\n }, {\n key: \"_setPosition\",\n value: function _setPosition() {\n this.$element.removeClass(\"has-position-\".concat(this.position, \" has-alignment-\").concat(this.alignment));\n\n _get(_getPrototypeOf(Dropdown.prototype), \"_setPosition\", this).call(this, this.$currentAnchor, this.$element, this.$parent);\n\n this.$element.addClass(\"has-position-\".concat(this.position, \" has-alignment-\").concat(this.alignment));\n }\n /**\n * Make it a current anchor.\n * Current anchor as the reference for the position of Dropdown panes.\n * @param {HTML} el - DOM element of the anchor.\n * @function\n * @private\n */\n\n }, {\n key: \"_setCurrentAnchor\",\n value: function _setCurrentAnchor(el) {\n this.$currentAnchor = jquery__WEBPACK_IMPORTED_MODULE_0___default()(el);\n }\n /**\n * Adds event listeners to the element utilizing the triggers utility library.\n * @function\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this = this,\n hasTouch = 'ontouchstart' in window || typeof window.ontouchstart !== 'undefined';\n\n this.$element.on({\n 'open.zf.trigger': this.open.bind(this),\n 'close.zf.trigger': this.close.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this),\n 'resizeme.zf.trigger': this._setPosition.bind(this)\n });\n this.$anchors.off('click.zf.trigger').on('click.zf.trigger', function (e) {\n _this._setCurrentAnchor(this);\n\n if ( // if forceFollow false, always prevent default action\n _this.options.forceFollow === false || // if forceFollow true and hover option true, only prevent default action on 1st click\n // on 2nd click (dropown opened) the default action (e.g. follow a href) gets executed\n hasTouch && _this.options.hover && _this.$element.hasClass('is-open') === false) {\n e.preventDefault();\n }\n });\n\n if (this.options.hover) {\n this.$anchors.off('mouseenter.zf.dropdown mouseleave.zf.dropdown').on('mouseenter.zf.dropdown', function () {\n _this._setCurrentAnchor(this);\n\n var bodyData = jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').data();\n\n if (typeof bodyData.whatinput === 'undefined' || bodyData.whatinput === 'mouse') {\n clearTimeout(_this.timeout);\n _this.timeout = setTimeout(function () {\n _this.open();\n\n _this.$anchors.data('hover', true);\n }, _this.options.hoverDelay);\n }\n }).on('mouseleave.zf.dropdown', Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"ignoreMousedisappear\"])(function () {\n clearTimeout(_this.timeout);\n _this.timeout = setTimeout(function () {\n _this.close();\n\n _this.$anchors.data('hover', false);\n }, _this.options.hoverDelay);\n }));\n\n if (this.options.hoverPane) {\n this.$element.off('mouseenter.zf.dropdown mouseleave.zf.dropdown').on('mouseenter.zf.dropdown', function () {\n clearTimeout(_this.timeout);\n }).on('mouseleave.zf.dropdown', Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"ignoreMousedisappear\"])(function () {\n clearTimeout(_this.timeout);\n _this.timeout = setTimeout(function () {\n _this.close();\n\n _this.$anchors.data('hover', false);\n }, _this.options.hoverDelay);\n }));\n }\n }\n\n this.$anchors.add(this.$element).on('keydown.zf.dropdown', function (e) {\n var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n visibleFocusableElements = _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].findFocusable(_this.$element);\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].handleKey(e, 'Dropdown', {\n open: function open() {\n if ($target.is(_this.$anchors) && !$target.is('input, textarea')) {\n _this.open();\n\n _this.$element.attr('tabindex', -1).focus();\n\n e.preventDefault();\n }\n },\n close: function close() {\n _this.close();\n\n _this.$anchors.focus();\n }\n });\n });\n }\n /**\n * Adds an event handler to the body to close any dropdowns on a click.\n * @function\n * @private\n */\n\n }, {\n key: \"_addBodyHandler\",\n value: function _addBodyHandler() {\n var $body = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body).not(this.$element),\n _this = this;\n\n $body.off('click.zf.dropdown tap.zf.dropdown').on('click.zf.dropdown tap.zf.dropdown', function (e) {\n if (_this.$anchors.is(e.target) || _this.$anchors.find(e.target).length) {\n return;\n }\n\n if (_this.$element.is(e.target) || _this.$element.find(e.target).length) {\n return;\n }\n\n _this.close();\n\n $body.off('click.zf.dropdown tap.zf.dropdown');\n });\n }\n /**\n * Opens the dropdown pane, and fires a bubbling event to close other dropdowns.\n * @function\n * @fires Dropdown#closeme\n * @fires Dropdown#show\n */\n\n }, {\n key: \"open\",\n value: function open() {\n // var _this = this;\n\n /**\n * Fires to close other open dropdowns, typically when dropdown is opening\n * @event Dropdown#closeme\n */\n this.$element.trigger('closeme.zf.dropdown', this.$element.attr('id'));\n this.$anchors.addClass('hover').attr({\n 'aria-expanded': true\n }); // this.$element/*.show()*/;\n\n this.$element.addClass('is-opening');\n\n this._setPosition();\n\n this.$element.removeClass('is-opening').addClass('is-open').attr({\n 'aria-hidden': false\n });\n\n if (this.options.autoFocus) {\n var $focusable = _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].findFocusable(this.$element);\n\n if ($focusable.length) {\n $focusable.eq(0).focus();\n }\n }\n\n if (this.options.closeOnClick) {\n this._addBodyHandler();\n }\n\n if (this.options.trapFocus) {\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].trapFocus(this.$element);\n }\n /**\n * Fires once the dropdown is visible.\n * @event Dropdown#show\n */\n\n\n this.$element.trigger('show.zf.dropdown', [this.$element]);\n }\n /**\n * Closes the open dropdown pane.\n * @function\n * @fires Dropdown#hide\n */\n\n }, {\n key: \"close\",\n value: function close() {\n if (!this.$element.hasClass('is-open')) {\n return false;\n }\n\n this.$element.removeClass('is-open').attr({\n 'aria-hidden': true\n });\n this.$anchors.removeClass('hover').attr('aria-expanded', false);\n /**\n * Fires once the dropdown is no longer visible.\n * @event Dropdown#hide\n */\n\n this.$element.trigger('hide.zf.dropdown', [this.$element]);\n\n if (this.options.trapFocus) {\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__[\"Keyboard\"].releaseFocus(this.$element);\n }\n }\n /**\n * Toggles the dropdown pane's visibility.\n * @function\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this.$element.hasClass('is-open')) {\n if (this.$anchors.data('hover')) return;\n this.close();\n } else {\n this.open();\n }\n }\n /**\n * Destroys the dropdown.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.$element.off('.zf.trigger').hide();\n this.$anchors.off('.zf.dropdown');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body).off('click.zf.dropdown tap.zf.dropdown');\n }\n }]);\n\n return Dropdown;\n}(_foundation_positionable__WEBPACK_IMPORTED_MODULE_3__[\"Positionable\"]);\n\nDropdown.defaults = {\n /**\n * Class that designates bounding container of Dropdown (default: window)\n * @option\n * @type {?string}\n * @default null\n */\n parentClass: null,\n\n /**\n * Amount of time to delay opening a submenu on hover event.\n * @option\n * @type {number}\n * @default 250\n */\n hoverDelay: 250,\n\n /**\n * Allow submenus to open on hover events\n * @option\n * @type {boolean}\n * @default false\n */\n hover: false,\n\n /**\n * Don't close dropdown when hovering over dropdown pane\n * @option\n * @type {boolean}\n * @default false\n */\n hoverPane: false,\n\n /**\n * Number of pixels between the dropdown pane and the triggering element on open.\n * @option\n * @type {number}\n * @default 0\n */\n vOffset: 0,\n\n /**\n * Number of pixels between the dropdown pane and the triggering element on open.\n * @option\n * @type {number}\n * @default 0\n */\n hOffset: 0,\n\n /**\n * Position of dropdown. Can be left, right, bottom, top, or auto.\n * @option\n * @type {string}\n * @default 'auto'\n */\n position: 'auto',\n\n /**\n * Alignment of dropdown relative to anchor. Can be left, right, bottom, top, center, or auto.\n * @option\n * @type {string}\n * @default 'auto'\n */\n alignment: 'auto',\n\n /**\n * Allow overlap of container/window. If false, dropdown will first try to position as defined by data-position and data-alignment, but reposition if it would cause an overflow.\n * @option\n * @type {boolean}\n * @default false\n */\n allowOverlap: false,\n\n /**\n * Allow overlap of only the bottom of the container. This is the most common\n * behavior for dropdowns, allowing the dropdown to extend the bottom of the\n * screen but not otherwise influence or break out of the container.\n * @option\n * @type {boolean}\n * @default true\n */\n allowBottomOverlap: true,\n\n /**\n * Allow the plugin to trap focus to the dropdown pane if opened with keyboard commands.\n * @option\n * @type {boolean}\n * @default false\n */\n trapFocus: false,\n\n /**\n * Allow the plugin to set focus to the first focusable element within the pane, regardless of method of opening.\n * @option\n * @type {boolean}\n * @default false\n */\n autoFocus: false,\n\n /**\n * Allows a click on the body to close the dropdown.\n * @option\n * @type {boolean}\n * @default false\n */\n closeOnClick: false,\n\n /**\n * If true the default action of the toggle (e.g. follow a link with href) gets executed on click. If hover option is also true the default action gets prevented on first click for mobile / touch devices and executed on second click.\n * @option\n * @type {boolean}\n * @default true\n */\n forceFollow: true\n};\n\n\n/***/ }),\n\n/***/ \"./js/foundation.positionable.js\":\n/*!****!*\\\n !*** ./js/foundation.positionable.js ***!\n \\****/\n/*! exports provided: Positionable */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Positionable\", function() { return Positionable; });\n/* harmony import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.util.box */ \"./foundation.util.box\");\n/* harmony import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_box__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\nvar POSITIONS = ['left', 'right', 'top', 'bottom'];\nvar VERTICAL_ALIGNMENTS = ['top', 'bottom', 'center'];\nvar HORIZONTAL_ALIGNMENTS = ['left', 'right', 'center'];\nvar ALIGNMENTS = {\n 'left': VERTICAL_ALIGNMENTS,\n 'right': VERTICAL_ALIGNMENTS,\n 'top': HORIZONTAL_ALIGNMENTS,\n 'bottom': HORIZONTAL_ALIGNMENTS\n};\n\nfunction nextItem(item, array) {\n var currentIdx = array.indexOf(item);\n\n if (currentIdx === array.length - 1) {\n return array[0];\n } else {\n return array[currentIdx + 1];\n }\n}\n\nvar Positionable =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Positionable, _Plugin);\n\n function Positionable() {\n _classCallCheck(this, Positionable);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Positionable).apply(this, arguments));\n }\n\n _createClass(Positionable, [{\n key: \"_init\",\n\n /**\n * Abstract class encapsulating the tether-like explicit positioning logic\n * including repositioning based on overlap.\n * Expects classes to define defaults for vOffset, hOffset, position,\n * alignment, allowOverlap, and allowBottomOverlap. They can do this by\n * extending the defaults, or (for now recommended due to the way docs are\n * generated) by explicitly declaring them.\n *\n **/\n value: function _init() {\n this.triedPositions = {};\n this.position = this.options.position === 'auto' ? this._getDefaultPosition() : this.options.position;\n this.alignment = this.options.alignment === 'auto' ? this._getDefaultAlignment() : this.options.alignment;\n this.originalPosition = this.position;\n this.originalAlignment = this.alignment;\n }\n }, {\n key: \"_getDefaultPosition\",\n value: function _getDefaultPosition() {\n return 'bottom';\n }\n }, {\n key: \"_getDefaultAlignment\",\n value: function _getDefaultAlignment() {\n switch (this.position) {\n case 'bottom':\n case 'top':\n return Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"rtl\"])() ? 'right' : 'left';\n\n case 'left':\n case 'right':\n return 'bottom';\n }\n }\n /**\n * Adjusts the positionable possible positions by iterating through alignments\n * and positions.\n * @function\n * @private\n */\n\n }, {\n key: \"_reposition\",\n value: function _reposition() {\n if (this._alignmentsExhausted(this.position)) {\n this.position = nextItem(this.position, POSITIONS);\n this.alignment = ALIGNMENTS[this.position][0];\n } else {\n this._realign();\n }\n }\n /**\n * Adjusts the dropdown pane possible positions by iterating through alignments\n * on the current position.\n * @function\n * @private\n */\n\n }, {\n key: \"_realign\",\n value: function _realign() {\n this._addTriedPosition(this.position, this.alignment);\n\n this.alignment = nextItem(this.alignment, ALIGNMENTS[this.position]);\n }\n }, {\n key: \"_addTriedPosition\",\n value: function _addTriedPosition(position, alignment) {\n this.triedPositions[position] = this.triedPositions[position] || [];\n this.triedPositions[position].push(alignment);\n }\n }, {\n key: \"_positionsExhausted\",\n value: function _positionsExhausted() {\n var isExhausted = true;\n\n for (var i = 0; i < POSITIONS.length; i++) {\n isExhausted = isExhausted && this._alignmentsExhausted(POSITIONS[i]);\n }\n\n return isExhausted;\n }\n }, {\n key: \"_alignmentsExhausted\",\n value: function _alignmentsExhausted(position) {\n return this.triedPositions[position] && this.triedPositions[position].length == ALIGNMENTS[position].length;\n } // When we're trying to center, we don't want to apply offset that's going to\n // take us just off center, so wrap around to return 0 for the appropriate\n // offset in those alignments. TODO: Figure out if we want to make this\n // configurable behavior... it feels more intuitive, especially for tooltips, but\n // it's possible someone might actually want to start from center and then nudge\n // slightly off.\n\n }, {\n key: \"_getVOffset\",\n value: function _getVOffset() {\n return this.options.vOffset;\n }\n }, {\n key: \"_getHOffset\",\n value: function _getHOffset() {\n return this.options.hOffset;\n }\n }, {\n key: \"_setPosition\",\n value: function _setPosition($anchor, $element, $parent) {\n if ($anchor.attr('aria-expanded') === 'false') {\n return false;\n }\n\n if (!this.options.allowOverlap) {\n // restore original position & alignment before checking overlap\n this.position = this.originalPosition;\n this.alignment = this.originalAlignment;\n }\n\n $element.offset(_foundation_util_box__WEBPACK_IMPORTED_MODULE_0__[\"Box\"].GetExplicitOffsets($element, $anchor, this.position, this.alignment, this._getVOffset(), this._getHOffset()));\n\n if (!this.options.allowOverlap) {\n var minOverlap = 100000000; // default coordinates to how we start, in case we can't figure out better\n\n var minCoordinates = {\n position: this.position,\n alignment: this.alignment\n };\n\n while (!this._positionsExhausted()) {\n var overlap = _foundation_util_box__WEBPACK_IMPORTED_MODULE_0__[\"Box\"].OverlapArea($element, $parent, false, false, this.options.allowBottomOverlap);\n\n if (overlap === 0) {\n return;\n }\n\n if (overlap < minOverlap) {\n minOverlap = overlap;\n minCoordinates = {\n position: this.position,\n alignment: this.alignment\n };\n }\n\n this._reposition();\n\n $element.offset(_foundation_util_box__WEBPACK_IMPORTED_MODULE_0__[\"Box\"].GetExplicitOffsets($element, $anchor, this.position, this.alignment, this._getVOffset(), this._getHOffset()));\n } // If we get through the entire loop, there was no non-overlapping\n // position available. Pick the version with least overlap.\n\n\n this.position = minCoordinates.position;\n this.alignment = minCoordinates.alignment;\n $element.offset(_foundation_util_box__WEBPACK_IMPORTED_MODULE_0__[\"Box\"].GetExplicitOffsets($element, $anchor, this.position, this.alignment, this._getVOffset(), this._getHOffset()));\n }\n }\n }]);\n\n return Positionable;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n\nPositionable.defaults = {\n /**\n * Position of positionable relative to anchor. Can be left, right, bottom, top, or auto.\n * @option\n * @type {string}\n * @default 'auto'\n */\n position: 'auto',\n\n /**\n * Alignment of positionable relative to anchor. Can be left, right, bottom, top, center, or auto.\n * @option\n * @type {string}\n * @default 'auto'\n */\n alignment: 'auto',\n\n /**\n * Allow overlap of container/window. If false, dropdown positionable first\n * try to position as defined by data-position and data-alignment, but\n * reposition if it would cause an overflow.\n * @option\n * @type {boolean}\n * @default false\n */\n allowOverlap: false,\n\n /**\n * Allow overlap of only the bottom of the container. This is the most common\n * behavior for dropdowns, allowing the dropdown to extend the bottom of the\n * screen but not otherwise influence or break out of the container.\n * @option\n * @type {boolean}\n * @default true\n */\n allowBottomOverlap: true,\n\n /**\n * Number of pixels the positionable should be separated vertically from anchor\n * @option\n * @type {number}\n * @default 0\n */\n vOffset: 0,\n\n /**\n * Number of pixels the positionable should be separated horizontally from anchor\n * @option\n * @type {number}\n * @default 0\n */\n hOffset: 0\n};\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.triggers.js\":\n/*!!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\/\n/*! exports provided: Triggers */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Triggers\", function() { return Triggers; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n\n for (var i = 0; i < prefixes.length; i++) {\n if (\"\".concat(prefixes[i], \"MutationObserver\") in window) {\n return window[\"\".concat(prefixes[i], \"MutationObserver\")];\n }\n }\n\n return false;\n}();\n\nvar triggers = function triggers(el, type) {\n el.data(type).split(' ').forEach(function (id) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler'](\"\".concat(type, \".zf.trigger\"), [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\nTriggers.Listeners.Basic = {\n openListener: function openListener() {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');\n },\n closeListener: function closeListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function toggleListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function closeableListener(e) {\n var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable'); // Only close the first closable element. See https://git.io/zf-7833\n\n e.stopPropagation();\n\n if (animation !== '') {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__[\"Motion\"].animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');\n });\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function toggleFocusListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);\n }\n}; // Elements with [data-open] will reveal a plugin that supports it when clicked.\n\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n}; // Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\n\n\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n}; // Elements with [data-toggle] will toggle a plugin that supports it when clicked.\n\n\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n}; // Elements with [data-closable] will respond to close.zf.trigger events.\n\n\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n}; // Elements with [data-toggle-focus] will respond to coming in and out of focus\n\n\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n}; // More Global/complex listeners and triggers\n\n\nTriggers.Listeners.Global = {\n resizeListener: function resizeListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n } //trigger all listening elements and signal a resize event\n\n\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function scrollListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n } //trigger all listening elements and signal a scroll event\n\n\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function closeMeListener(e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-\".concat(plugin, \"]\")).not(\"[data-yeti-box=\\\"\".concat(pluginId, \"\\\"]\"));\n plugins.each(function () {\n var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n } // Global, parses whole document.\n\n};\n\nTriggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {\n plugNames = plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return \"closeme.zf.\".concat(name);\n }).join(' ');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer,\n args = Array.prototype.slice.call(arguments, 3);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(trigger).on(trigger, function (e) {\n if (timer) {\n clearTimeout(timer);\n }\n\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\n\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\n\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]'); //element callback\n\n var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {\n var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target); //trigger the event handler for the element depending on type\n\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], {\n attributes: true,\n childList: true,\n characterData: false,\n subtree: true,\n attributeFilter: [\"data-events\", \"style\"]\n });\n }\n }\n};\n\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\n\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\n\nTriggers.init = function ($, Foundation) {\n Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])($(window), function () {\n if ($.triggersInitialized !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n $.triggersInitialized = true;\n }\n });\n\n if (Foundation) {\n Foundation.Triggers = Triggers; // Legacy included to be backwards compatible for now.\n\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n\n/***/ }),\n\n/***/ 4:\n/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.dropdown.js ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.dropdown.js */\"./js/entries/plugins/foundation.dropdown.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.dropdown.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.box\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.nest\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.box\", \"./foundation.util.keyboard\", \"./foundation.util.nest\", \"./foundation.util.touch\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.dropdownMenu\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.box\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.nest\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.dropdownMenu\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.nest\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_box__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_nest__, __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 5);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.box\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.box\"],\"amd\":\"./foundation.util.box\",\"commonjs\":\"./foundation.util.box\",\"commonjs2\":\"./foundation.util.box\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_box__;\n\n/***/ }),\n\n/***/ \"./foundation.util.keyboard\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;\n\n/***/ }),\n\n/***/ \"./foundation.util.nest\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.nest\"],\"amd\":\"./foundation.util.nest\",\"commonjs\":\"./foundation.util.nest\",\"commonjs2\":\"./foundation.util.nest\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_nest__;\n\n/***/ }),\n\n/***/ \"./foundation.util.touch\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.dropdownMenu.js\":\n/*!!*\\\n !*** ./js/entries/plugins/foundation.dropdownMenu.js ***!\n \\/\n/*! exports provided: Foundation, DropdownMenu */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.dropdownMenu */ \"./js/foundation.dropdownMenu.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"DropdownMenu\", function() { return _foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__[\"DropdownMenu\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__[\"DropdownMenu\"], 'DropdownMenu');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.dropdownMenu.js\":\n/*!****!*\\\n !*** ./js/foundation.dropdownMenu.js ***!\n \\****/\n/*! exports provided: DropdownMenu */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DropdownMenu\", function() { return DropdownMenu; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.nest */ \"./foundation.util.nest\");\n/* harmony import */ var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_nest__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.box */ \"./foundation.util.box\");\n/* harmony import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./foundation.util.touch */ \"./foundation.util.touch\");\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n\n\n/**\n * DropdownMenu module.\n * @module foundation.dropdownMenu\n * @requires foundation.util.keyboard\n * @requires foundation.util.box\n * @requires foundation.util.nest\n * @requires foundation.util.touch\n */\n\nvar DropdownMenu =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(DropdownMenu, _Plugin);\n\n function DropdownMenu() {\n _classCallCheck(this, DropdownMenu);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(DropdownMenu).apply(this, arguments));\n }\n\n _createClass(DropdownMenu, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of DropdownMenu.\n * @class\n * @name DropdownMenu\n * @fires DropdownMenu#init\n * @param {jQuery} element - jQuery object to make into a dropdown menu.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, DropdownMenu.defaults, this.$element.data(), options);\n this.className = 'DropdownMenu'; // ie9 back compat\n\n _foundation_util_touch__WEBPACK_IMPORTED_MODULE_5__[\"Touch\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a); // Touch init is idempotent, we just need to make sure it's initialied.\n\n this._init();\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].register('DropdownMenu', {\n 'ENTER': 'open',\n 'SPACE': 'open',\n 'ARROW_RIGHT': 'next',\n 'ARROW_UP': 'up',\n 'ARROW_DOWN': 'down',\n 'ARROW_LEFT': 'previous',\n 'ESCAPE': 'close'\n });\n }\n /**\n * Initializes the plugin, and calls _prepareMenu\n * @private\n * @function\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n _foundation_util_nest__WEBPACK_IMPORTED_MODULE_3__[\"Nest\"].Feather(this.$element, 'dropdown');\n var subs = this.$element.find('li.is-dropdown-submenu-parent');\n this.$element.children('.is-dropdown-submenu-parent').children('.is-dropdown-submenu').addClass('first-sub');\n this.$menuItems = this.$element.find('li[role=\"none\"]');\n this.$tabs = this.$element.children('li[role=\"none\"]');\n this.$tabs.find('ul.is-dropdown-submenu').addClass(this.options.verticalClass);\n\n if (this.options.alignment === 'auto') {\n if (this.$element.hasClass(this.options.rightClass) || Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"rtl\"])() || this.$element.parents('.top-bar-right').is('*')) {\n this.options.alignment = 'right';\n subs.addClass('opens-left');\n } else {\n this.options.alignment = 'left';\n subs.addClass('opens-right');\n }\n } else {\n if (this.options.alignment === 'right') {\n subs.addClass('opens-left');\n } else {\n subs.addClass('opens-right');\n }\n }\n\n this.changed = false;\n\n this._events();\n }\n }, {\n key: \"_isVertical\",\n value: function _isVertical() {\n return this.$tabs.css('display') === 'block' || this.$element.css('flex-direction') === 'column';\n }\n }, {\n key: \"_isRtl\",\n value: function _isRtl() {\n return this.$element.hasClass('align-right') || Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"rtl\"])() && !this.$element.hasClass('align-left');\n }\n /**\n * Adds event listeners to elements within the menu\n * @private\n * @function\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this = this,\n hasTouch = 'ontouchstart' in window || typeof window.ontouchstart !== 'undefined',\n parClass = 'is-dropdown-submenu-parent'; // used for onClick and in the keyboard handlers\n\n\n var handleClickFn = function handleClickFn(e) {\n var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).parentsUntil('ul', \".\".concat(parClass)),\n hasSub = $elem.hasClass(parClass),\n hasClicked = $elem.attr('data-is-click') === 'true',\n $sub = $elem.children('.is-dropdown-submenu');\n\n if (hasSub) {\n if (hasClicked) {\n if (!_this.options.closeOnClick || !_this.options.clickOpen && !hasTouch || _this.options.forceFollow && hasTouch) {\n return;\n }\n\n e.stopImmediatePropagation();\n e.preventDefault();\n\n _this._hide($elem);\n } else {\n e.stopImmediatePropagation();\n e.preventDefault();\n\n _this._show($sub);\n\n $elem.add($elem.parentsUntil(_this.$element, \".\".concat(parClass))).attr('data-is-click', true);\n }\n }\n };\n\n if (this.options.clickOpen || hasTouch) {\n this.$menuItems.on('click.zf.dropdownMenu touchstart.zf.dropdownMenu', handleClickFn);\n } // Handle Leaf element Clicks\n\n\n if (_this.options.closeOnClickInside) {\n this.$menuItems.on('click.zf.dropdownMenu', function (e) {\n var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n hasSub = $elem.hasClass(parClass);\n\n if (!hasSub) {\n _this._hide();\n }\n });\n }\n\n if (!this.options.disableHover) {\n this.$menuItems.on('mouseenter.zf.dropdownMenu', function (e) {\n var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n hasSub = $elem.hasClass(parClass);\n\n if (hasSub) {\n clearTimeout($elem.data('_delay'));\n $elem.data('_delay', setTimeout(function () {\n _this._show($elem.children('.is-dropdown-submenu'));\n }, _this.options.hoverDelay));\n }\n }).on('mouseleave.zf.dropdownMenu', Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"ignoreMousedisappear\"])(function (e) {\n var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n hasSub = $elem.hasClass(parClass);\n\n if (hasSub && _this.options.autoclose) {\n if ($elem.attr('data-is-click') === 'true' && _this.options.clickOpen) {\n return false;\n }\n\n clearTimeout($elem.data('_delay'));\n $elem.data('_delay', setTimeout(function () {\n _this._hide($elem);\n }, _this.options.closingTime));\n }\n }));\n }\n\n this.$menuItems.on('keydown.zf.dropdownMenu', function (e) {\n var $element = jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).parentsUntil('ul', '[role=\"none\"]'),\n isTab = _this.$tabs.index($element) > -1,\n $elements = isTab ? _this.$tabs : $element.siblings('li').add($element),\n $prevElement,\n $nextElement;\n $elements.each(function (i) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)) {\n $prevElement = $elements.eq(i - 1);\n $nextElement = $elements.eq(i + 1);\n return;\n }\n });\n\n var nextSibling = function nextSibling() {\n $nextElement.children('a:first').focus();\n e.preventDefault();\n },\n prevSibling = function prevSibling() {\n $prevElement.children('a:first').focus();\n e.preventDefault();\n },\n openSub = function openSub() {\n var $sub = $element.children('ul.is-dropdown-submenu');\n\n if ($sub.length) {\n _this._show($sub);\n\n $element.find('li > a:first').focus();\n e.preventDefault();\n } else {\n return;\n }\n },\n closeSub = function closeSub() {\n //if ($element.is(':first-child')) {\n var close = $element.parent('ul').parent('li');\n close.children('a:first').focus();\n\n _this._hide(close);\n\n e.preventDefault(); //}\n };\n\n var functions = {\n open: openSub,\n close: function close() {\n _this._hide(_this.$element);\n\n _this.$menuItems.eq(0).children('a').focus(); // focus to first element\n\n\n e.preventDefault();\n }\n };\n\n if (isTab) {\n if (_this._isVertical()) {\n // vertical menu\n if (_this._isRtl()) {\n // right aligned\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions, {\n down: nextSibling,\n up: prevSibling,\n next: closeSub,\n previous: openSub\n });\n } else {\n // left aligned\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions, {\n down: nextSibling,\n up: prevSibling,\n next: openSub,\n previous: closeSub\n });\n }\n } else {\n // horizontal menu\n if (_this._isRtl()) {\n // right aligned\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions, {\n next: prevSibling,\n previous: nextSibling,\n down: openSub,\n up: closeSub\n });\n } else {\n // left aligned\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions, {\n next: nextSibling,\n previous: prevSibling,\n down: openSub,\n up: closeSub\n });\n }\n }\n } else {\n // not tabs -> one sub\n if (_this._isRtl()) {\n // right aligned\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions, {\n next: closeSub,\n previous: openSub,\n down: nextSibling,\n up: prevSibling\n });\n } else {\n // left aligned\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend(functions, {\n next: openSub,\n previous: closeSub,\n down: nextSibling,\n up: prevSibling\n });\n }\n }\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].handleKey(e, 'DropdownMenu', functions);\n });\n }\n /**\n * Adds an event handler to the body to close any dropdowns on a click.\n * @function\n * @private\n */\n\n }, {\n key: \"_addBodyHandler\",\n value: function _addBodyHandler() {\n var _this2 = this;\n\n var $body = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body);\n\n this._removeBodyHandler();\n\n $body.on('click.zf.dropdownMenu tap.zf.dropdownMenu', function (e) {\n var isItself = !!jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).closest(_this2.$element).length;\n if (isItself) return;\n\n _this2._hide();\n\n _this2._removeBodyHandler();\n });\n }\n /**\n * Remove the body event handler. See `_addBodyHandler`.\n * @function\n * @private\n */\n\n }, {\n key: \"_removeBodyHandler\",\n value: function _removeBodyHandler() {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body).off('click.zf.dropdownMenu tap.zf.dropdownMenu');\n }\n /**\n * Opens a dropdown pane, and checks for collisions first.\n * @param {jQuery} $sub - ul element that is a submenu to show\n * @function\n * @private\n * @fires DropdownMenu#show\n */\n\n }, {\n key: \"_show\",\n value: function _show($sub) {\n var idx = this.$tabs.index(this.$tabs.filter(function (i, el) {\n return jquery__WEBPACK_IMPORTED_MODULE_0___default()(el).find($sub).length > 0;\n }));\n var $sibs = $sub.parent('li.is-dropdown-submenu-parent').siblings('li.is-dropdown-submenu-parent');\n\n this._hide($sibs, idx);\n\n $sub.css('visibility', 'hidden').addClass('js-dropdown-active').parent('li.is-dropdown-submenu-parent').addClass('is-active');\n var clear = _foundation_util_box__WEBPACK_IMPORTED_MODULE_4__[\"Box\"].ImNotTouchingYou($sub, null, true);\n\n if (!clear) {\n var oldClass = this.options.alignment === 'left' ? '-right' : '-left',\n $parentLi = $sub.parent('.is-dropdown-submenu-parent');\n $parentLi.removeClass(\"opens\".concat(oldClass)).addClass(\"opens-\".concat(this.options.alignment));\n clear = _foundation_util_box__WEBPACK_IMPORTED_MODULE_4__[\"Box\"].ImNotTouchingYou($sub, null, true);\n\n if (!clear) {\n $parentLi.removeClass(\"opens-\".concat(this.options.alignment)).addClass('opens-inner');\n }\n\n this.changed = true;\n }\n\n $sub.css('visibility', '');\n\n if (this.options.closeOnClick) {\n this._addBodyHandler();\n }\n /**\n * Fires when the new dropdown pane is visible.\n * @event DropdownMenu#show\n */\n\n\n this.$element.trigger('show.zf.dropdownMenu', [$sub]);\n }\n /**\n * Hides a single, currently open dropdown pane, if passed a parameter, otherwise, hides everything.\n * @function\n * @param {jQuery} $elem - element with a submenu to hide\n * @param {Number} idx - index of the $tabs collection to hide\n * @fires DropdownMenu#hide\n * @private\n */\n\n }, {\n key: \"_hide\",\n value: function _hide($elem, idx) {\n var $toClose;\n\n if ($elem && $elem.length) {\n $toClose = $elem;\n } else if (typeof idx !== 'undefined') {\n $toClose = this.$tabs.not(function (i, el) {\n return i === idx;\n });\n } else {\n $toClose = this.$element;\n }\n\n var somethingToClose = $toClose.hasClass('is-active') || $toClose.find('.is-active').length > 0;\n\n if (somethingToClose) {\n var $activeItem = $toClose.find('li.is-active');\n $activeItem.add($toClose).attr({\n 'data-is-click': false\n }).removeClass('is-active');\n $toClose.find('ul.js-dropdown-active').removeClass('js-dropdown-active');\n\n if (this.changed || $toClose.find('opens-inner').length) {\n var oldClass = this.options.alignment === 'left' ? 'right' : 'left';\n $toClose.find('li.is-dropdown-submenu-parent').add($toClose).removeClass(\"opens-inner opens-\".concat(this.options.alignment)).addClass(\"opens-\".concat(oldClass));\n this.changed = false;\n }\n\n clearTimeout($activeItem.data('_delay'));\n\n this._removeBodyHandler();\n /**\n * Fires when the open menus are closed.\n * @event DropdownMenu#hide\n */\n\n\n this.$element.trigger('hide.zf.dropdownMenu', [$toClose]);\n }\n }\n /**\n * Destroys the plugin.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.$menuItems.off('.zf.dropdownMenu').removeAttr('data-is-click').removeClass('is-right-arrow is-left-arrow is-down-arrow opens-right opens-left opens-inner');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.body).off('.zf.dropdownMenu');\n _foundation_util_nest__WEBPACK_IMPORTED_MODULE_3__[\"Nest\"].Burn(this.$element, 'dropdown');\n }\n }]);\n\n return DropdownMenu;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n/**\n * Default settings for plugin\n */\n\n\nDropdownMenu.defaults = {\n /**\n * Disallows hover events from opening submenus\n * @option\n * @type {boolean}\n * @default false\n */\n disableHover: false,\n\n /**\n * Allow a submenu to automatically close on a mouseleave event, if not clicked open.\n * @option\n * @type {boolean}\n * @default true\n */\n autoclose: true,\n\n /**\n * Amount of time to delay opening a submenu on hover event.\n * @option\n * @type {number}\n * @default 50\n */\n hoverDelay: 50,\n\n /**\n * Allow a submenu to open/remain open on parent click event. Allows cursor to move away from menu.\n * @option\n * @type {boolean}\n * @default false\n */\n clickOpen: false,\n\n /**\n * Amount of time to delay closing a submenu on a mouseleave event.\n * @option\n * @type {number}\n * @default 500\n */\n closingTime: 500,\n\n /**\n * Position of the menu relative to what direction the submenus should open. Handled by JS. Can be `'auto'`, `'left'` or `'right'`.\n * @option\n * @type {string}\n * @default 'auto'\n */\n alignment: 'auto',\n\n /**\n * Allow clicks on the body to close any open submenus.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClick: true,\n\n /**\n * Allow clicks on leaf anchor links to close any open submenus.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClickInside: true,\n\n /**\n * Class applied to vertical oriented menus, Foundation default is `vertical`. Update this if using your own class.\n * @option\n * @type {string}\n * @default 'vertical'\n */\n verticalClass: 'vertical',\n\n /**\n * Class applied to right-side oriented menus, Foundation default is `align-right`. Update this if using your own class.\n * @option\n * @type {string}\n * @default 'align-right'\n */\n rightClass: 'align-right',\n\n /**\n * Boolean to force overide the clicking of links to perform default action, on second touch event for mobile.\n * @option\n * @type {boolean}\n * @default true\n */\n forceFollow: true\n};\n\n\n/***/ }),\n\n/***/ 5:\n/*!*!*\\\n !*** multi ./js/entries/plugins/foundation.dropdownMenu.js ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.dropdownMenu.js */\"./js/entries/plugins/foundation.dropdownMenu.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.dropdownMenu.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.keyboard\", \"./foundation.util.mediaQuery\", \"./foundation.util.motion\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.offcanvas\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.offcanvas\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 9);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.keyboard\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;\n\n/***/ }),\n\n/***/ \"./foundation.util.mediaQuery\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;\n\n/***/ }),\n\n/***/ \"./foundation.util.motion\":\n/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.offcanvas.js\":\n/*!**!*\\\n !*** ./js/entries/plugins/foundation.offcanvas.js ***!\n \\**/\n/*! exports provided: Foundation, OffCanvas */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.offcanvas */ \"./js/foundation.offcanvas.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"OffCanvas\", function() { return _foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__[\"OffCanvas\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__[\"OffCanvas\"], 'OffCanvas');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.offcanvas.js\":\n/*!*!*\\\n !*** ./js/foundation.offcanvas.js ***!\n \\*/\n/*! exports provided: OffCanvas */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"OffCanvas\", function() { return OffCanvas; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./foundation.util.mediaQuery\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.triggers */ \"./js/foundation.util.triggers.js\");\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n\n/**\n * OffCanvas module.\n * @module foundation.offCanvas\n * @requires foundation.util.keyboard\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.triggers\n */\n\nvar OffCanvas =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(OffCanvas, _Plugin);\n\n function OffCanvas() {\n _classCallCheck(this, OffCanvas);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(OffCanvas).apply(this, arguments));\n }\n\n _createClass(OffCanvas, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of an off-canvas wrapper.\n * @class\n * @name OffCanvas\n * @fires OffCanvas#init\n * @param {Object} element - jQuery object to initialize.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n var _this2 = this;\n\n this.className = 'OffCanvas'; // ie9 back compat\n\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, OffCanvas.defaults, this.$element.data(), options);\n this.contentClasses = {\n base: [],\n reveal: []\n };\n this.$lastTrigger = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.$triggers = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.position = 'left';\n this.$content = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.nested = !!this.options.nested;\n this.$sticky = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.isInCanvas = false; // Defines the CSS transition/position classes of the off-canvas content container.\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(['push', 'overlap']).each(function (index, val) {\n _this2.contentClasses.base.push('has-transition-' + val);\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(['left', 'right', 'top', 'bottom']).each(function (index, val) {\n _this2.contentClasses.base.push('has-position-' + val);\n\n _this2.contentClasses.reveal.push('has-reveal-' + val);\n }); // Triggers init is idempotent, just need to make sure it is initialized\n\n _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_4__[\"Triggers\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\n\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"]._init();\n\n this._init();\n\n this._events();\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].register('OffCanvas', {\n 'ESCAPE': 'close'\n });\n }\n /**\n * Initializes the off-canvas wrapper by adding the exit overlay (if needed).\n * @function\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var id = this.$element.attr('id');\n this.$element.attr('aria-hidden', 'true'); // Find off-canvas content, either by ID (if specified), by siblings or by closest selector (fallback)\n\n if (this.options.contentId) {\n this.$content = jquery__WEBPACK_IMPORTED_MODULE_0___default()('#' + this.options.contentId);\n } else if (this.$element.siblings('[data-off-canvas-content]').length) {\n this.$content = this.$element.siblings('[data-off-canvas-content]').first();\n } else {\n this.$content = this.$element.closest('[data-off-canvas-content]').first();\n }\n\n if (!this.options.contentId) {\n // Assume that the off-canvas element is nested if it isn't a sibling of the content\n this.nested = this.$element.siblings('[data-off-canvas-content]').length === 0;\n } else if (this.options.contentId && this.options.nested === null) {\n // Warning if using content ID without setting the nested option\n // Once the element is nested it is required to work properly in this case\n console.warn('Remember to use the nested option if using the content ID option!');\n }\n\n if (this.nested === true) {\n // Force transition overlap if nested\n this.options.transition = 'overlap'; // Remove appropriate classes if already assigned in markup\n\n this.$element.removeClass('is-transition-push');\n }\n\n this.$element.addClass(\"is-transition-\".concat(this.options.transition, \" is-closed\")); // Find triggers that affect this element and add aria-expanded to them\n\n this.$triggers = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).find('[data-open=\"' + id + '\"], [data-close=\"' + id + '\"], [data-toggle=\"' + id + '\"]').attr('aria-expanded', 'false').attr('aria-controls', id); // Get position by checking for related CSS class\n\n this.position = this.$element.is('.position-left, .position-top, .position-right, .position-bottom') ? this.$element.attr('class').match(/position\\-(left|top|right|bottom)/)[1] : this.position; // Add an overlay over the content if necessary\n\n if (this.options.contentOverlay === true) {\n var overlay = document.createElement('div');\n var overlayPosition = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.$element).css(\"position\") === 'fixed' ? 'is-overlay-fixed' : 'is-overlay-absolute';\n overlay.setAttribute('class', 'js-off-canvas-overlay ' + overlayPosition);\n this.$overlay = jquery__WEBPACK_IMPORTED_MODULE_0___default()(overlay);\n\n if (overlayPosition === 'is-overlay-fixed') {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.$overlay).insertAfter(this.$element);\n } else {\n this.$content.append(this.$overlay);\n }\n } // Get the revealOn option from the class.\n\n\n var revealOnRegExp = new RegExp(Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"RegExpEscape\"])(this.options.revealClass) + '([^\\\\s]+)', 'g');\n var revealOnClass = revealOnRegExp.exec(this.$element[0].className);\n\n if (revealOnClass) {\n this.options.isRevealed = true;\n this.options.revealOn = this.options.revealOn || revealOnClass[1];\n } // Ensure the `reveal-on-*` class is set.\n\n\n if (this.options.isRevealed === true && this.options.revealOn) {\n this.$element.first().addClass(\"\".concat(this.options.revealClass).concat(this.options.revealOn));\n\n this._setMQChecker();\n }\n\n if (this.options.transitionTime) {\n this.$element.css('transition-duration', this.options.transitionTime);\n } // Find fixed elements that should stay fixed while off-canvas is opened\n\n\n this.$sticky = this.$content.find('[data-off-canvas-sticky]');\n\n if (this.$sticky.length > 0 && this.options.transition === 'push') {\n // If there's at least one match force contentScroll:false because the absolute top value doesn't get recalculated on scroll\n // Limit to push transition since there's no transform scope for overlap\n this.options.contentScroll = false;\n }\n\n var inCanvasFor = this.$element.attr('class').match(/\\bin-canvas-for-(\\w+)/);\n\n if (inCanvasFor && inCanvasFor.length === 2) {\n // Set `inCanvasOn` option if found in-canvas-for-[BREAKPONT] CSS class\n this.options.inCanvasOn = inCanvasFor[1];\n } else if (this.options.inCanvasOn) {\n // Ensure the CSS class is set\n this.$element.addClass(\"in-canvas-for-\".concat(this.options.inCanvasOn));\n }\n\n if (this.options.inCanvasOn) {\n this._checkInCanvas();\n } // Initally remove all transition/position CSS classes from off-canvas content container.\n\n\n this._removeContentClasses();\n }\n /**\n * Adds event handlers to the off-canvas wrapper and the exit overlay.\n * @function\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this3 = this;\n\n this.$element.off('.zf.trigger .zf.offCanvas').on({\n 'open.zf.trigger': this.open.bind(this),\n 'close.zf.trigger': this.close.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this),\n 'keydown.zf.offCanvas': this._handleKeyboard.bind(this)\n });\n\n if (this.options.closeOnClick === true) {\n var $target = this.options.contentOverlay ? this.$overlay : this.$content;\n $target.on({\n 'click.zf.offCanvas': this.close.bind(this)\n });\n }\n\n if (this.options.inCanvasOn) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', function () {\n _this3._checkInCanvas();\n });\n }\n }\n /**\n * Applies event listener for elements that will reveal at certain breakpoints.\n * @private\n */\n\n }, {\n key: \"_setMQChecker\",\n value: function _setMQChecker() {\n var _this = this;\n\n this.onLoadListener = Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"].atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n }\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', function () {\n if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"].atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n } else {\n _this.reveal(false);\n }\n });\n }\n /**\n * Checks if InCanvas on current breakpoint and adjust off-canvas accordingly\n * @private\n */\n\n }, {\n key: \"_checkInCanvas\",\n value: function _checkInCanvas() {\n this.isInCanvas = _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"].atLeast(this.options.inCanvasOn);\n\n if (this.isInCanvas === true) {\n this.close();\n }\n }\n /**\n * Removes the CSS transition/position classes of the off-canvas content container.\n * Removing the classes is important when another off-canvas gets opened that uses the same content container.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n\n }, {\n key: \"_removeContentClasses\",\n value: function _removeContentClasses(hasReveal) {\n if (typeof hasReveal !== 'boolean') {\n this.$content.removeClass(this.contentClasses.base.join(' '));\n } else if (hasReveal === false) {\n this.$content.removeClass(\"has-reveal-\".concat(this.position));\n }\n }\n /**\n * Adds the CSS transition/position classes of the off-canvas content container, based on the opening off-canvas element.\n * Beforehand any transition/position class gets removed.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n\n }, {\n key: \"_addContentClasses\",\n value: function _addContentClasses(hasReveal) {\n this._removeContentClasses(hasReveal);\n\n if (typeof hasReveal !== 'boolean') {\n this.$content.addClass(\"has-transition-\".concat(this.options.transition, \" has-position-\").concat(this.position));\n } else if (hasReveal === true) {\n this.$content.addClass(\"has-reveal-\".concat(this.position));\n }\n }\n /**\n * Preserves the fixed behavior of sticky elements on opening an off-canvas with push transition.\n * Since the off-canvas container has got a transform scope in such a case, it is done by calculating position absolute values.\n * @private\n */\n\n }, {\n key: \"_fixStickyElements\",\n value: function _fixStickyElements() {\n this.$sticky.each(function (_, el) {\n var $el = jquery__WEBPACK_IMPORTED_MODULE_0___default()(el); // If sticky element is currently fixed, adjust its top value to match absolute position due to transform scope\n // Limit to push transition because postion:fixed works without problems for overlap (no transform scope)\n\n if ($el.css('position') === 'fixed') {\n // Save current inline styling to restore it if undoing the absolute fixing\n var topVal = parseInt($el.css('top'), 10);\n $el.data('offCanvasSticky', {\n top: topVal\n });\n var absoluteTopVal = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).scrollTop() + topVal;\n $el.css({\n top: \"\".concat(absoluteTopVal, \"px\"),\n width: '100%',\n transition: 'none'\n });\n }\n });\n }\n /**\n * Restores the original fixed styling of sticky elements after having closed an off-canvas that got pseudo fixed beforehand.\n * This reverts the changes of _fixStickyElements()\n * @private\n */\n\n }, {\n key: \"_unfixStickyElements\",\n value: function _unfixStickyElements() {\n this.$sticky.each(function (_, el) {\n var $el = jquery__WEBPACK_IMPORTED_MODULE_0___default()(el);\n var stickyData = $el.data('offCanvasSticky'); // If sticky element has got data object with prior values (meaning it was originally fixed) restore these values once off-canvas is closed\n\n if (_typeof(stickyData) === 'object') {\n $el.css({\n top: \"\".concat(stickyData.top, \"px\"),\n width: '',\n transition: ''\n });\n $el.data('offCanvasSticky', '');\n }\n });\n }\n /**\n * Handles the revealing/hiding the off-canvas at breakpoints, not the same as open.\n * @param {Boolean} isRevealed - true if element should be revealed.\n * @function\n */\n\n }, {\n key: \"reveal\",\n value: function reveal(isRevealed) {\n if (isRevealed) {\n this.close();\n this.isRevealed = true;\n this.$element.attr('aria-hidden', 'false');\n this.$element.off('open.zf.trigger toggle.zf.trigger');\n this.$element.removeClass('is-closed');\n } else {\n this.isRevealed = false;\n this.$element.attr('aria-hidden', 'true');\n this.$element.off('open.zf.trigger toggle.zf.trigger').on({\n 'open.zf.trigger': this.open.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this)\n });\n this.$element.addClass('is-closed');\n }\n\n this._addContentClasses(isRevealed);\n }\n /**\n * Stops scrolling of the body when OffCanvas is open on mobile Safari and other troublesome browsers.\n * @function\n * @private\n */\n\n }, {\n key: \"_stopScrolling\",\n value: function _stopScrolling(event) {\n return false;\n }\n /**\n * Tag the element given as context whether it can be scrolled up and down.\n * Used to allow or prevent it to scroll. See `_stopScrollPropagation`.\n *\n * Taken and adapted from http://stackoverflow.com/questions/16889447/prevent-full-page-scrolling-ios\n * Only really works for y, not sure how to extend to x or if we need to.\n *\n * @function\n * @private\n */\n\n }, {\n key: \"_recordScrollable\",\n value: function _recordScrollable(event) {\n var elem = this; // called from event handler context with this as elem\n // If the element is scrollable (content overflows), then...\n\n if (elem.scrollHeight !== elem.clientHeight) {\n // If we're at the top, scroll down one pixel to allow scrolling up\n if (elem.scrollTop === 0) {\n elem.scrollTop = 1;\n } // If we're at the bottom, scroll up one pixel to allow scrolling down\n\n\n if (elem.scrollTop === elem.scrollHeight - elem.clientHeight) {\n elem.scrollTop = elem.scrollHeight - elem.clientHeight - 1;\n }\n }\n\n elem.allowUp = elem.scrollTop > 0;\n elem.allowDown = elem.scrollTop < elem.scrollHeight - elem.clientHeight;\n elem.lastY = event.originalEvent.pageY;\n }\n /**\n * Prevent the given event propagation if the element given as context can scroll.\n * Used to preserve the element scrolling on mobile (`touchmove`) when the document\n * scrolling is prevented. See https://git.io/zf-9707.\n * @function\n * @private\n */\n\n }, {\n key: \"_stopScrollPropagation\",\n value: function _stopScrollPropagation(event) {\n var elem = this; // called from event handler context with this as elem\n\n var parent; // off-canvas elem if called from inner scrollbox\n\n var up = event.pageY < elem.lastY;\n var down = !up;\n elem.lastY = event.pageY;\n\n if (up && elem.allowUp || down && elem.allowDown) {\n // It is not recommended to stop event propagation (the user cannot watch it),\n // but in this case this is the only solution we have.\n event.stopPropagation(); // If elem is inner scrollbox we are scrolling the outer off-canvas down/up once the box end has been reached\n // This lets the user continue to touch move the off-canvas without the need to place the finger outside the scrollbox\n\n if (elem.hasAttribute('data-off-canvas-scrollbox')) {\n parent = elem.closest('[data-off-canvas], [data-off-canvas-scrollbox-outer]');\n\n if (elem.scrollTop <= 1 && parent.scrollTop > 0) {\n parent.scrollTop--;\n } else if (elem.scrollTop >= elem.scrollHeight - elem.clientHeight - 1 && parent.scrollTop < parent.scrollHeight - parent.clientHeight) {\n parent.scrollTop++;\n }\n }\n } else {\n event.preventDefault();\n }\n }\n /**\n * Opens the off-canvas menu.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n * @fires OffCanvas#opened\n * @todo also trigger 'open' event?\n */\n\n }, {\n key: \"open\",\n value: function open(event, trigger) {\n var _this4 = this;\n\n if (this.$element.hasClass('is-open') || this.isRevealed || this.isInCanvas) {\n return;\n }\n\n var _this = this;\n\n if (trigger) {\n this.$lastTrigger = trigger;\n }\n\n if (this.options.forceTo === 'top') {\n window.scrollTo(0, 0);\n } else if (this.options.forceTo === 'bottom') {\n window.scrollTo(0, document.body.scrollHeight);\n }\n\n if (this.options.transitionTime && this.options.transition !== 'overlap') {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', this.options.transitionTime);\n } else {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', '');\n }\n\n this.$element.addClass('is-open').removeClass('is-closed');\n this.$triggers.attr('aria-expanded', 'true');\n this.$element.attr('aria-hidden', 'false');\n this.$content.addClass('is-open-' + this.position); // If `contentScroll` is set to false, add class and disable scrolling on touch devices.\n\n if (this.options.contentScroll === false) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').addClass('is-off-canvas-open').on('touchmove', this._stopScrolling);\n this.$element.on('touchstart', this._recordScrollable);\n this.$element.on('touchmove', this._stopScrollPropagation);\n this.$element.on('touchstart', '[data-off-canvas-scrollbox]', this._recordScrollable);\n this.$element.on('touchmove', '[data-off-canvas-scrollbox]', this._stopScrollPropagation);\n }\n\n if (this.options.contentOverlay === true) {\n this.$overlay.addClass('is-visible');\n }\n\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.addClass('is-closable');\n }\n\n if (this.options.autoFocus === true) {\n this.$element.one(Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"transitionend\"])(this.$element), function () {\n if (!_this.$element.hasClass('is-open')) {\n return; // exit if prematurely closed\n }\n\n var canvasFocus = _this.$element.find('[data-autofocus]');\n\n if (canvasFocus.length) {\n canvasFocus.eq(0).focus();\n } else {\n _this.$element.find('a, button').eq(0).focus();\n }\n });\n }\n\n if (this.options.trapFocus === true) {\n this.$content.attr('tabindex', '-1');\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].trapFocus(this.$element);\n }\n\n if (this.options.transition === 'push') {\n this._fixStickyElements();\n }\n\n this._addContentClasses();\n /**\n * Fires when the off-canvas menu opens.\n * @event OffCanvas#opened\n */\n\n\n this.$element.trigger('opened.zf.offCanvas');\n /**\n * Fires when the off-canvas menu open transition is done.\n * @event OffCanvas#openedEnd\n */\n\n this.$element.one(Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"transitionend\"])(this.$element), function () {\n _this4.$element.trigger('openedEnd.zf.offCanvas');\n });\n }\n /**\n * Closes the off-canvas menu.\n * @function\n * @param {Function} cb - optional cb to fire after closure.\n * @fires OffCanvas#close\n * @fires OffCanvas#closed\n */\n\n }, {\n key: \"close\",\n value: function close(cb) {\n var _this5 = this;\n\n if (!this.$element.hasClass('is-open') || this.isRevealed) {\n return;\n }\n /**\n * Fires when the off-canvas menu closes.\n * @event OffCanvas#close\n */\n\n\n this.$element.trigger('close.zf.offCanvas');\n\n var _this = this;\n\n this.$element.removeClass('is-open');\n this.$element.attr('aria-hidden', 'true');\n this.$content.removeClass('is-open-left is-open-top is-open-right is-open-bottom');\n\n if (this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-visible');\n }\n\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-closable');\n }\n\n this.$triggers.attr('aria-expanded', 'false'); // Listen to transitionEnd: add class, re-enable scrolling and release focus when done.\n\n this.$element.one(Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"transitionend\"])(this.$element), function (e) {\n _this5.$element.addClass('is-closed');\n\n _this5._removeContentClasses();\n\n if (_this5.options.transition === 'push') {\n _this5._unfixStickyElements();\n } // If `contentScroll` is set to false, remove class and re-enable scrolling on touch devices.\n\n\n if (_this5.options.contentScroll === false) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').removeClass('is-off-canvas-open').off('touchmove', _this5._stopScrolling);\n\n _this5.$element.off('touchstart', _this5._recordScrollable);\n\n _this5.$element.off('touchmove', _this5._stopScrollPropagation);\n\n _this5.$element.off('touchstart', '[data-off-canvas-scrollbox]', _this5._recordScrollable);\n\n _this5.$element.off('touchmove', '[data-off-canvas-scrollbox]', _this5._stopScrollPropagation);\n }\n\n if (_this5.options.trapFocus === true) {\n _this5.$content.removeAttr('tabindex');\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].releaseFocus(_this5.$element);\n }\n /**\n * Fires when the off-canvas menu close transition is done.\n * @event OffCanvas#closed\n */\n\n\n _this5.$element.trigger('closed.zf.offCanvas');\n });\n }\n /**\n * Toggles the off-canvas menu open or closed.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n */\n\n }, {\n key: \"toggle\",\n value: function toggle(event, trigger) {\n if (this.$element.hasClass('is-open')) {\n this.close(event, trigger);\n } else {\n this.open(event, trigger);\n }\n }\n /**\n * Handles keyboard input when detected. When the escape key is pressed, the off-canvas menu closes, and focus is restored to the element that opened the menu.\n * @function\n * @private\n */\n\n }, {\n key: \"_handleKeyboard\",\n value: function _handleKeyboard(e) {\n var _this6 = this;\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].handleKey(e, 'OffCanvas', {\n close: function close() {\n _this6.close();\n\n _this6.$lastTrigger.focus();\n\n return true;\n },\n handled: function handled() {\n e.preventDefault();\n }\n });\n }\n /**\n * Destroys the OffCanvas plugin.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.close();\n this.$element.off('.zf.trigger .zf.offCanvas');\n this.$overlay.off('.zf.offCanvas');\n if (this.onLoadListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);\n }\n }]);\n\n return OffCanvas;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n\nOffCanvas.defaults = {\n /**\n * Allow the user to click outside of the menu to close it.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClick: true,\n\n /**\n * Adds an overlay on top of `[data-off-canvas-content]`.\n * @option\n * @type {boolean}\n * @default true\n */\n contentOverlay: true,\n\n /**\n * Target an off-canvas content container by ID that may be placed anywhere. If null the closest content container will be taken.\n * @option\n * @type {?string}\n * @default null\n */\n contentId: null,\n\n /**\n * Define the off-canvas element is nested in an off-canvas content. This is required when using the contentId option for a nested element.\n * @option\n * @type {boolean}\n * @default null\n */\n nested: null,\n\n /**\n * Enable/disable scrolling of the main content when an off canvas panel is open.\n * @option\n * @type {boolean}\n * @default true\n */\n contentScroll: true,\n\n /**\n * Amount of time the open and close transition requires, including the appropriate milliseconds (`ms`) or seconds (`s`) unit (e.g. `500ms`, `.75s`) If none selected, pulls from body style.\n * @option\n * @type {string}\n * @default null\n */\n transitionTime: null,\n\n /**\n * Type of transition for the OffCanvas menu. Options are 'push', 'detached' or 'slide'.\n * @option\n * @type {string}\n * @default push\n */\n transition: 'push',\n\n /**\n * Force the page to scroll to top or bottom on open.\n * @option\n * @type {?string}\n * @default null\n */\n forceTo: null,\n\n /**\n * Allow the OffCanvas to remain open for certain breakpoints.\n * @option\n * @type {boolean}\n * @default false\n */\n isRevealed: false,\n\n /**\n * Breakpoint at which to reveal. JS will use a RegExp to target standard classes, if changing classnames, pass your class with the `revealClass` option.\n * @option\n * @type {?string}\n * @default null\n */\n revealOn: null,\n\n /**\n * Breakpoint at which the off-canvas gets moved into canvas content and acts as regular page element.\n * @option\n * @type {?string}\n * @default null\n */\n inCanvasOn: null,\n\n /**\n * Force focus to the offcanvas on open. If true, will focus the opening trigger on close.\n * @option\n * @type {boolean}\n * @default true\n */\n autoFocus: true,\n\n /**\n * Class used to force an OffCanvas to remain open. Foundation defaults for this are `reveal-for-large` & `reveal-for-medium`.\n * @option\n * @type {string}\n * @default reveal-for-\n * @todo improve the regex testing for this.\n */\n revealClass: 'reveal-for-',\n\n /**\n * Triggers optional focus trapping when opening an OffCanvas. Sets tabindex of [data-off-canvas-content] to -1 for accessibility purposes.\n * @option\n * @type {boolean}\n * @default false\n */\n trapFocus: false\n};\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.triggers.js\":\n/*!!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\/\n/*! exports provided: Triggers */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Triggers\", function() { return Triggers; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n\n for (var i = 0; i < prefixes.length; i++) {\n if (\"\".concat(prefixes[i], \"MutationObserver\") in window) {\n return window[\"\".concat(prefixes[i], \"MutationObserver\")];\n }\n }\n\n return false;\n}();\n\nvar triggers = function triggers(el, type) {\n el.data(type).split(' ').forEach(function (id) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler'](\"\".concat(type, \".zf.trigger\"), [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\nTriggers.Listeners.Basic = {\n openListener: function openListener() {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');\n },\n closeListener: function closeListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function toggleListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function closeableListener(e) {\n var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable'); // Only close the first closable element. See https://git.io/zf-7833\n\n e.stopPropagation();\n\n if (animation !== '') {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__[\"Motion\"].animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');\n });\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function toggleFocusListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);\n }\n}; // Elements with [data-open] will reveal a plugin that supports it when clicked.\n\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n}; // Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\n\n\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n}; // Elements with [data-toggle] will toggle a plugin that supports it when clicked.\n\n\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n}; // Elements with [data-closable] will respond to close.zf.trigger events.\n\n\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n}; // Elements with [data-toggle-focus] will respond to coming in and out of focus\n\n\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n}; // More Global/complex listeners and triggers\n\n\nTriggers.Listeners.Global = {\n resizeListener: function resizeListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n } //trigger all listening elements and signal a resize event\n\n\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function scrollListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n } //trigger all listening elements and signal a scroll event\n\n\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function closeMeListener(e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-\".concat(plugin, \"]\")).not(\"[data-yeti-box=\\\"\".concat(pluginId, \"\\\"]\"));\n plugins.each(function () {\n var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n } // Global, parses whole document.\n\n};\n\nTriggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {\n plugNames = plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return \"closeme.zf.\".concat(name);\n }).join(' ');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer,\n args = Array.prototype.slice.call(arguments, 3);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(trigger).on(trigger, function (e) {\n if (timer) {\n clearTimeout(timer);\n }\n\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\n\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\n\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]'); //element callback\n\n var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {\n var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target); //trigger the event handler for the element depending on type\n\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], {\n attributes: true,\n childList: true,\n characterData: false,\n subtree: true,\n attributeFilter: [\"data-events\", \"style\"]\n });\n }\n }\n};\n\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\n\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\n\nTriggers.init = function ($, Foundation) {\n Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])($(window), function () {\n if ($.triggersInitialized !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n $.triggersInitialized = true;\n }\n });\n\n if (Foundation) {\n Foundation.Triggers = Triggers; // Legacy included to be backwards compatible for now.\n\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n\n/***/ }),\n\n/***/ 9:\n/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.offcanvas.js ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.offcanvas.js */\"./js/entries/plugins/foundation.offcanvas.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.offcanvas.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.accordionMenu\"), require(\"./foundation.core\"), require(\"./foundation.drilldown\"), require(\"./foundation.dropdownMenu\"), require(\"./foundation.util.mediaQuery\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.accordionMenu\", \"./foundation.core\", \"./foundation.drilldown\", \"./foundation.dropdownMenu\", \"./foundation.util.mediaQuery\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.responsiveMenu\"] = factory(require(\"./foundation.accordionMenu\"), require(\"./foundation.core\"), require(\"./foundation.drilldown\"), require(\"./foundation.dropdownMenu\"), require(\"./foundation.util.mediaQuery\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.responsiveMenu\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.accordionMenu\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.drilldown\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.dropdownMenu\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_accordionMenu__, __WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_drilldown__, __WEBPACK_EXTERNAL_MODULE__foundation_dropdownMenu__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 12);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.accordionMenu\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.accordionMenu\"],\"amd\":\"./foundation.accordionMenu\",\"commonjs\":\"./foundation.accordionMenu\",\"commonjs2\":\"./foundation.accordionMenu\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_accordionMenu__;\n\n/***/ }),\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.drilldown\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.drilldown\"],\"amd\":\"./foundation.drilldown\",\"commonjs\":\"./foundation.drilldown\",\"commonjs2\":\"./foundation.drilldown\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_drilldown__;\n\n/***/ }),\n\n/***/ \"./foundation.dropdownMenu\":\n/*!**!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.dropdownMenu\"],\"amd\":\"./foundation.dropdownMenu\",\"commonjs\":\"./foundation.dropdownMenu\",\"commonjs2\":\"./foundation.dropdownMenu\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_dropdownMenu__;\n\n/***/ }),\n\n/***/ \"./foundation.util.mediaQuery\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.responsiveMenu.js\":\n/*!**!*\\\n !*** ./js/entries/plugins/foundation.responsiveMenu.js ***!\n \\**/\n/*! exports provided: Foundation, ResponsiveMenu */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.responsiveMenu */ \"./js/foundation.responsiveMenu.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"ResponsiveMenu\", function() { return _foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveMenu\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveMenu\"], 'ResponsiveMenu');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.responsiveMenu.js\":\n/*!*!*\\\n !*** ./js/foundation.responsiveMenu.js ***!\n \\*/\n/*! exports provided: ResponsiveMenu */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ResponsiveMenu\", function() { return ResponsiveMenu; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./foundation.util.mediaQuery\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.dropdownMenu */ \"./foundation.dropdownMenu\");\n/* harmony import */ var _foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_drilldown__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.drilldown */ \"./foundation.drilldown\");\n/* harmony import */ var _foundation_drilldown__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_drilldown__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./foundation.accordionMenu */ \"./foundation.accordionMenu\");\n/* harmony import */ var _foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_5__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n\n\nvar MenuPlugins = {\n dropdown: {\n cssClass: 'dropdown',\n plugin: _foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_3__[\"DropdownMenu\"]\n },\n drilldown: {\n cssClass: 'drilldown',\n plugin: _foundation_drilldown__WEBPACK_IMPORTED_MODULE_4__[\"Drilldown\"]\n },\n accordion: {\n cssClass: 'accordion-menu',\n plugin: _foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_5__[\"AccordionMenu\"]\n }\n}; // import \"foundation.util.triggers.js\";\n\n/**\n * ResponsiveMenu module.\n * @module foundation.responsiveMenu\n * @requires foundation.util.triggers\n * @requires foundation.util.mediaQuery\n */\n\nvar ResponsiveMenu =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(ResponsiveMenu, _Plugin);\n\n function ResponsiveMenu() {\n _classCallCheck(this, ResponsiveMenu);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(ResponsiveMenu).apply(this, arguments));\n }\n\n _createClass(ResponsiveMenu, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of a responsive menu.\n * @class\n * @name ResponsiveMenu\n * @fires ResponsiveMenu#init\n * @param {jQuery} element - jQuery object to make into a dropdown menu.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = jquery__WEBPACK_IMPORTED_MODULE_0___default()(element);\n this.rules = this.$element.data('responsive-menu');\n this.currentMq = null;\n this.currentPlugin = null;\n this.className = 'ResponsiveMenu'; // ie9 back compat\n\n this._init();\n\n this._events();\n }\n /**\n * Initializes the Menu by parsing the classes from the 'data-ResponsiveMenu' attribute on the element.\n * @function\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"]._init(); // The first time an Interchange plugin is initialized, this.rules is converted from a string of \"classes\" to an object of rules\n\n\n if (typeof this.rules === 'string') {\n var rulesTree = {}; // Parse rules from \"classes\" pulled from data attribute\n\n var rules = this.rules.split(' '); // Iterate through every rule found\n\n for (var i = 0; i < rules.length; i++) {\n var rule = rules[i].split('-');\n var ruleSize = rule.length > 1 ? rule[0] : 'small';\n var rulePlugin = rule.length > 1 ? rule[1] : rule[0];\n\n if (MenuPlugins[rulePlugin] !== null) {\n rulesTree[ruleSize] = MenuPlugins[rulePlugin];\n }\n }\n\n this.rules = rulesTree;\n }\n\n if (!jquery__WEBPACK_IMPORTED_MODULE_0___default.a.isEmptyObject(this.rules)) {\n this._checkMediaQueries();\n } // Add data-mutate since children may need it.\n\n\n this.$element.attr('data-mutate', this.$element.attr('data-mutate') || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6, 'responsive-menu'));\n }\n /**\n * Initializes events for the Menu.\n * @function\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this = this;\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', function () {\n _this._checkMediaQueries();\n }); // $(window).on('resize.zf.ResponsiveMenu', function() {\n // _this._checkMediaQueries();\n // });\n }\n /**\n * Checks the current screen width against available media queries. If the media query has changed, and the plugin needed has changed, the plugins will swap out.\n * @function\n * @private\n */\n\n }, {\n key: \"_checkMediaQueries\",\n value: function _checkMediaQueries() {\n var matchedMq,\n _this = this; // Iterate through each rule and find the last matching rule\n\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(this.rules, function (key) {\n if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"].atLeast(key)) {\n matchedMq = key;\n }\n }); // No match? No dice\n\n if (!matchedMq) return; // Plugin already initialized? We good\n\n if (this.currentPlugin instanceof this.rules[matchedMq].plugin) return; // Remove existing plugin-specific CSS classes\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(MenuPlugins, function (key, value) {\n _this.$element.removeClass(value.cssClass);\n }); // Add the CSS class for the new plugin\n\n this.$element.addClass(this.rules[matchedMq].cssClass); // Create an instance of the new plugin\n\n if (this.currentPlugin) this.currentPlugin.destroy();\n this.currentPlugin = new this.rules[matchedMq].plugin(this.$element, {});\n }\n /**\n * Destroys the instance of the current plugin on this element, as well as the window resize handler that switches the plugins out.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.currentPlugin.destroy();\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('.zf.ResponsiveMenu');\n }\n }]);\n\n return ResponsiveMenu;\n}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"]);\n\nResponsiveMenu.defaults = {};\n\n\n/***/ }),\n\n/***/ 12:\n/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.responsiveMenu.js ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.responsiveMenu.js */\"./js/entries/plugins/foundation.responsiveMenu.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.responsiveMenu.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.mediaQuery\", \"./foundation.util.motion\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.responsiveToggle\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.responsiveToggle\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 13);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.mediaQuery\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;\n\n/***/ }),\n\n/***/ \"./foundation.util.motion\":\n/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.responsiveToggle.js\":\n/*!****!*\\\n !*** ./js/entries/plugins/foundation.responsiveToggle.js ***!\n \\****/\n/*! exports provided: Foundation, ResponsiveToggle */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.responsiveToggle */ \"./js/foundation.responsiveToggle.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"ResponsiveToggle\", function() { return _foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveToggle\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveToggle\"], 'ResponsiveToggle');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.responsiveToggle.js\":\n/*!***!*\\\n !*** ./js/foundation.responsiveToggle.js ***!\n \\***/\n/*! exports provided: ResponsiveToggle */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ResponsiveToggle\", function() { return ResponsiveToggle; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./foundation.util.mediaQuery\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n/**\n * ResponsiveToggle module.\n * @module foundation.responsiveToggle\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.motion\n */\n\nvar ResponsiveToggle =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(ResponsiveToggle, _Plugin);\n\n function ResponsiveToggle() {\n _classCallCheck(this, ResponsiveToggle);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(ResponsiveToggle).apply(this, arguments));\n }\n\n _createClass(ResponsiveToggle, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of Tab Bar.\n * @class\n * @name ResponsiveToggle\n * @fires ResponsiveToggle#init\n * @param {jQuery} element - jQuery object to attach tab bar functionality to.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = jquery__WEBPACK_IMPORTED_MODULE_0___default()(element);\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, ResponsiveToggle.defaults, this.$element.data(), options);\n this.className = 'ResponsiveToggle'; // ie9 back compat\n\n this._init();\n\n this._events();\n }\n /**\n * Initializes the tab bar by finding the target element, toggling element, and running update().\n * @function\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"]._init();\n\n var targetID = this.$element.data('responsive-toggle');\n\n if (!targetID) {\n console.error('Your tab bar needs an ID of a Menu as the value of data-tab-bar.');\n }\n\n this.$targetMenu = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(targetID));\n this.$toggler = this.$element.find('[data-toggle]').filter(function () {\n var target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');\n return target === targetID || target === \"\";\n });\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, this.options, this.$targetMenu.data()); // If they were set, parse the animation classes\n\n if (this.options.animate) {\n var input = this.options.animate.split(' ');\n this.animationIn = input[0];\n this.animationOut = input[1] || null;\n }\n\n this._update();\n }\n /**\n * Adds necessary event handlers for the tab bar to work.\n * @function\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this = this;\n\n this._updateMqHandler = this._update.bind(this);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', this._updateMqHandler);\n this.$toggler.on('click.zf.responsiveToggle', this.toggleMenu.bind(this));\n }\n /**\n * Checks the current media query to determine if the tab bar should be visible or hidden.\n * @function\n * @private\n */\n\n }, {\n key: \"_update\",\n value: function _update() {\n // Mobile\n if (!_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"].atLeast(this.options.hideFor)) {\n this.$element.show();\n this.$targetMenu.hide();\n } // Desktop\n else {\n this.$element.hide();\n this.$targetMenu.show();\n }\n }\n /**\n * Toggles the element attached to the tab bar. The toggle only happens if the screen is small enough to allow it.\n * @function\n * @fires ResponsiveToggle#toggled\n */\n\n }, {\n key: \"toggleMenu\",\n value: function toggleMenu() {\n var _this2 = this;\n\n if (!_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"].atLeast(this.options.hideFor)) {\n /**\n * Fires when the element attached to the tab bar toggles.\n * @event ResponsiveToggle#toggled\n */\n if (this.options.animate) {\n if (this.$targetMenu.is(':hidden')) {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__[\"Motion\"].animateIn(this.$targetMenu, this.animationIn, function () {\n _this2.$element.trigger('toggled.zf.responsiveToggle');\n\n _this2.$targetMenu.find('[data-mutate]').triggerHandler('mutateme.zf.trigger');\n });\n } else {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__[\"Motion\"].animateOut(this.$targetMenu, this.animationOut, function () {\n _this2.$element.trigger('toggled.zf.responsiveToggle');\n });\n }\n } else {\n this.$targetMenu.toggle(0);\n this.$targetMenu.find('[data-mutate]').trigger('mutateme.zf.trigger');\n this.$element.trigger('toggled.zf.responsiveToggle');\n }\n }\n }\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.$element.off('.zf.responsiveToggle');\n this.$toggler.off('.zf.responsiveToggle');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('changed.zf.mediaquery', this._updateMqHandler);\n }\n }]);\n\n return ResponsiveToggle;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__[\"Plugin\"]);\n\nResponsiveToggle.defaults = {\n /**\n * The breakpoint after which the menu is always shown, and the tab bar is hidden.\n * @option\n * @type {string}\n * @default 'medium'\n */\n hideFor: 'medium',\n\n /**\n * To decide if the toggle should be animated or not.\n * @option\n * @type {boolean}\n * @default false\n */\n animate: false\n};\n\n\n/***/ }),\n\n/***/ 13:\n/*!!*\\\n !*** multi ./js/entries/plugins/foundation.responsiveToggle.js ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.responsiveToggle.js */\"./js/entries/plugins/foundation.responsiveToggle.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.responsiveToggle.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.keyboard\", \"./foundation.util.mediaQuery\", \"./foundation.util.motion\", \"./foundation.util.touch\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.reveal\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.keyboard\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"./foundation.util.touch\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.reveal\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 14);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.keyboard\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;\n\n/***/ }),\n\n/***/ \"./foundation.util.mediaQuery\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;\n\n/***/ }),\n\n/***/ \"./foundation.util.motion\":\n/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;\n\n/***/ }),\n\n/***/ \"./foundation.util.touch\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.reveal.js\":\n/*!****!*\\\n !*** ./js/entries/plugins/foundation.reveal.js ***!\n \\****/\n/*! exports provided: Foundation, Reveal */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_reveal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.reveal */ \"./js/foundation.reveal.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Reveal\", function() { return _foundation_reveal__WEBPACK_IMPORTED_MODULE_1__[\"Reveal\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_reveal__WEBPACK_IMPORTED_MODULE_1__[\"Reveal\"], 'Reveal');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.reveal.js\":\n/*!***!*\\\n !*** ./js/foundation.reveal.js ***!\n \\***/\n/*! exports provided: Reveal */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Reveal\", function() { return Reveal; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./foundation.util.mediaQuery\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./foundation.util.triggers */ \"./js/foundation.util.triggers.js\");\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./foundation.util.touch */ \"./foundation.util.touch\");\n/* harmony import */ var _foundation_util_touch__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_touch__WEBPACK_IMPORTED_MODULE_6__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n\n\n\n/**\n * Reveal module.\n * @module foundation.reveal\n * @requires foundation.util.keyboard\n * @requires foundation.util.touch\n * @requires foundation.util.triggers\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.motion if using animations\n */\n\nvar Reveal =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Reveal, _Plugin);\n\n function Reveal() {\n _classCallCheck(this, Reveal);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Reveal).apply(this, arguments));\n }\n\n _createClass(Reveal, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of Reveal.\n * @class\n * @name Reveal\n * @param {jQuery} element - jQuery object to use for the modal.\n * @param {Object} options - optional parameters.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Reveal.defaults, this.$element.data(), options);\n this.className = 'Reveal'; // ie9 back compat\n\n this._init(); // Touch and Triggers init are idempotent, just need to make sure they are initialized\n\n\n _foundation_util_touch__WEBPACK_IMPORTED_MODULE_6__[\"Touch\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\n _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__[\"Triggers\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].register('Reveal', {\n 'ESCAPE': 'close'\n });\n }\n /**\n * Initializes the modal by adding the overlay and close buttons, (if selected).\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var _this2 = this;\n\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"]._init();\n\n this.id = this.$element.attr('id');\n this.isActive = false;\n this.cached = {\n mq: _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_3__[\"MediaQuery\"].current\n };\n this.$anchor = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-open=\\\"\".concat(this.id, \"\\\"]\")).length ? jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-open=\\\"\".concat(this.id, \"\\\"]\")) : jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-toggle=\\\"\".concat(this.id, \"\\\"]\"));\n this.$anchor.attr({\n 'aria-controls': this.id,\n 'aria-haspopup': true,\n 'tabindex': 0\n });\n\n if (this.options.fullScreen || this.$element.hasClass('full')) {\n this.options.fullScreen = true;\n this.options.overlay = false;\n }\n\n if (this.options.overlay && !this.$overlay) {\n this.$overlay = this._makeOverlay(this.id);\n }\n\n this.$element.attr({\n 'role': 'dialog',\n 'aria-hidden': true,\n 'data-yeti-box': this.id,\n 'data-resize': this.id\n });\n\n if (this.$overlay) {\n this.$element.detach().appendTo(this.$overlay);\n } else {\n this.$element.detach().appendTo(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.options.appendTo));\n this.$element.addClass('without-overlay');\n }\n\n this._events();\n\n if (this.options.deepLink && window.location.hash === \"#\".concat(this.id)) {\n this.onLoadListener = Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n return _this2.open();\n });\n }\n }\n /**\n * Creates an overlay div to display behind the modal.\n * @private\n */\n\n }, {\n key: \"_makeOverlay\",\n value: function _makeOverlay() {\n var additionalOverlayClasses = '';\n\n if (this.options.additionalOverlayClasses) {\n additionalOverlayClasses = ' ' + this.options.additionalOverlayClasses;\n }\n\n return jquery__WEBPACK_IMPORTED_MODULE_0___default()('
      ').addClass('reveal-overlay' + additionalOverlayClasses).appendTo(this.options.appendTo);\n }\n /**\n * Updates position of modal\n * TODO: Figure out if we actually need to cache these values or if it doesn't matter\n * @private\n */\n\n }, {\n key: \"_updatePosition\",\n value: function _updatePosition() {\n var width = this.$element.outerWidth();\n var outerWidth = jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).width();\n var height = this.$element.outerHeight();\n var outerHeight = jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height();\n var left,\n top = null;\n\n if (this.options.hOffset === 'auto') {\n left = parseInt((outerWidth - width) / 2, 10);\n } else {\n left = parseInt(this.options.hOffset, 10);\n }\n\n if (this.options.vOffset === 'auto') {\n if (height > outerHeight) {\n top = parseInt(Math.min(100, outerHeight / 10), 10);\n } else {\n top = parseInt((outerHeight - height) / 4, 10);\n }\n } else if (this.options.vOffset !== null) {\n top = parseInt(this.options.vOffset, 10);\n }\n\n if (top !== null) {\n this.$element.css({\n top: top + 'px'\n });\n } // only worry about left if we don't have an overlay or we have a horizontal offset,\n // otherwise we're perfectly in the middle\n\n\n if (!this.$overlay || this.options.hOffset !== 'auto') {\n this.$element.css({\n left: left + 'px'\n });\n this.$element.css({\n margin: '0px'\n });\n }\n }\n /**\n * Adds event handlers for the modal.\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this3 = this;\n\n var _this = this;\n\n this.$element.on({\n 'open.zf.trigger': this.open.bind(this),\n 'close.zf.trigger': function closeZfTrigger(event, $element) {\n if (event.target === _this.$element[0] || jquery__WEBPACK_IMPORTED_MODULE_0___default()(event.target).parents('[data-closable]')[0] === $element) {\n // only close reveal when it's explicitly called\n return _this3.close.apply(_this3);\n }\n },\n 'toggle.zf.trigger': this.toggle.bind(this),\n 'resizeme.zf.trigger': function resizemeZfTrigger() {\n _this._updatePosition();\n }\n });\n\n if (this.options.closeOnClick && this.options.overlay) {\n this.$overlay.off('.zf.reveal').on('click.zf.dropdown tap.zf.dropdown', function (e) {\n if (e.target === _this.$element[0] || jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(_this.$element[0], e.target) || !jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(document, e.target)) {\n return;\n }\n\n _this.close();\n });\n }\n\n if (this.options.deepLink) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on(\"hashchange.zf.reveal:\".concat(this.id), this._handleState.bind(this));\n }\n }\n /**\n * Handles modal methods on back/forward button clicks or any other event that triggers hashchange.\n * @private\n */\n\n }, {\n key: \"_handleState\",\n value: function _handleState(e) {\n if (window.location.hash === '#' + this.id && !this.isActive) {\n this.open();\n } else {\n this.close();\n }\n }\n /**\n * Disables the scroll when Reveal is shown to prevent the background from shifting\n * @param {number} scrollTop - Scroll to visually apply, window current scroll by default\n */\n\n }, {\n key: \"_disableScroll\",\n value: function _disableScroll(scrollTop) {\n scrollTop = scrollTop || jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollTop();\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).height() > jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height()) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\", -scrollTop);\n }\n }\n /**\n * Reenables the scroll when Reveal closes\n * @param {number} scrollTop - Scroll to restore, html \"top\" property by default (as set by `_disableScroll`)\n */\n\n }, {\n key: \"_enableScroll\",\n value: function _enableScroll(scrollTop) {\n scrollTop = scrollTop || parseInt(jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\"));\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).height() > jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height()) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\", \"\");\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollTop(-scrollTop);\n }\n }\n /**\n * Opens the modal controlled by `this.$anchor`, and closes all others by default.\n * @function\n * @fires Reveal#closeme\n * @fires Reveal#open\n */\n\n }, {\n key: \"open\",\n value: function open() {\n var _this4 = this;\n\n // either update or replace browser history\n var hash = \"#\".concat(this.id);\n\n if (this.options.deepLink && window.location.hash !== hash) {\n if (window.history.pushState) {\n if (this.options.updateHistory) {\n window.history.pushState({}, '', hash);\n } else {\n window.history.replaceState({}, '', hash);\n }\n } else {\n window.location.hash = hash;\n }\n } // Remember anchor that opened it to set focus back later, have general anchors as fallback\n\n\n this.$activeAnchor = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.activeElement).is(this.$anchor) ? jquery__WEBPACK_IMPORTED_MODULE_0___default()(document.activeElement) : this.$anchor;\n this.isActive = true; // Make elements invisible, but remove display: none so we can get size and positioning\n\n this.$element.css({\n 'visibility': 'hidden'\n }).show().scrollTop(0);\n\n if (this.options.overlay) {\n this.$overlay.css({\n 'visibility': 'hidden'\n }).show();\n }\n\n this._updatePosition();\n\n this.$element.hide().css({\n 'visibility': ''\n });\n\n if (this.$overlay) {\n this.$overlay.css({\n 'visibility': ''\n }).hide();\n\n if (this.$element.hasClass('fast')) {\n this.$overlay.addClass('fast');\n } else if (this.$element.hasClass('slow')) {\n this.$overlay.addClass('slow');\n }\n }\n\n if (!this.options.multipleOpened) {\n /**\n * Fires immediately before the modal opens.\n * Closes any other modals that are currently open\n * @event Reveal#closeme\n */\n this.$element.trigger('closeme.zf.reveal', this.id);\n }\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length === 0) {\n this._disableScroll();\n }\n\n var _this = this; // Motion UI method of reveal\n\n\n if (this.options.animationIn) {\n var afterAnimation = function afterAnimation() {\n _this.$element.attr({\n 'aria-hidden': false,\n 'tabindex': -1\n }).focus();\n\n _this._addGlobalClasses();\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].trapFocus(_this.$element);\n };\n\n if (this.options.overlay) {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateIn(this.$overlay, 'fade-in');\n }\n\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateIn(this.$element, this.options.animationIn, function () {\n if (_this4.$element) {\n // protect against object having been removed\n _this4.focusableElements = _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].findFocusable(_this4.$element);\n afterAnimation();\n }\n });\n } // jQuery method of reveal\n else {\n if (this.options.overlay) {\n this.$overlay.show(0);\n }\n\n this.$element.show(this.options.showDelay);\n } // handle accessibility\n\n\n this.$element.attr({\n 'aria-hidden': false,\n 'tabindex': -1\n }).focus();\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].trapFocus(this.$element);\n\n this._addGlobalClasses();\n\n this._addGlobalListeners();\n /**\n * Fires when the modal has successfully opened.\n * @event Reveal#open\n */\n\n\n this.$element.trigger('open.zf.reveal');\n }\n /**\n * Adds classes and listeners on document required by open modals.\n *\n * The following classes are added and updated:\n * - `.is-reveal-open` - Prevents the scroll on document\n * - `.zf-has-scroll` - Displays a disabled scrollbar on document if required like if the\n * scroll was not disabled. This prevent a \"shift\" of the page content due\n * the scrollbar disappearing when the modal opens.\n *\n * @private\n */\n\n }, {\n key: \"_addGlobalClasses\",\n value: function _addGlobalClasses() {\n var updateScrollbarClass = function updateScrollbarClass() {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').toggleClass('zf-has-scroll', !!(jquery__WEBPACK_IMPORTED_MODULE_0___default()(document).height() > jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).height()));\n };\n\n this.$element.on('resizeme.zf.trigger.revealScrollbarListener', function () {\n return updateScrollbarClass();\n });\n updateScrollbarClass();\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').addClass('is-reveal-open');\n }\n /**\n * Removes classes and listeners on document that were required by open modals.\n * @private\n */\n\n }, {\n key: \"_removeGlobalClasses\",\n value: function _removeGlobalClasses() {\n this.$element.off('resizeme.zf.trigger.revealScrollbarListener');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').removeClass('is-reveal-open');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').removeClass('zf-has-scroll');\n }\n /**\n * Adds extra event handlers for the body and window if necessary.\n * @private\n */\n\n }, {\n key: \"_addGlobalListeners\",\n value: function _addGlobalListeners() {\n var _this = this;\n\n if (!this.$element) {\n return;\n } // If we're in the middle of cleanup, don't freak out\n\n\n this.focusableElements = _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].findFocusable(this.$element);\n\n if (!this.options.overlay && this.options.closeOnClick && !this.options.fullScreen) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').on('click.zf.dropdown tap.zf.dropdown', function (e) {\n if (e.target === _this.$element[0] || jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(_this.$element[0], e.target) || !jquery__WEBPACK_IMPORTED_MODULE_0___default.a.contains(document, e.target)) {\n return;\n }\n\n _this.close();\n });\n }\n\n if (this.options.closeOnEsc) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('keydown.zf.reveal', function (e) {\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].handleKey(e, 'Reveal', {\n close: function close() {\n if (_this.options.closeOnEsc) {\n _this.close();\n }\n }\n });\n });\n }\n }\n /**\n * Closes the modal.\n * @function\n * @fires Reveal#closed\n */\n\n }, {\n key: \"close\",\n value: function close() {\n if (!this.isActive || !this.$element.is(':visible')) {\n return false;\n }\n\n var _this = this; // Motion UI method of hiding\n\n\n if (this.options.animationOut) {\n if (this.options.overlay) {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateOut(this.$overlay, 'fade-out');\n }\n\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__[\"Motion\"].animateOut(this.$element, this.options.animationOut, finishUp);\n } // jQuery method of hiding\n else {\n this.$element.hide(this.options.hideDelay);\n\n if (this.options.overlay) {\n this.$overlay.hide(0, finishUp);\n } else {\n finishUp();\n }\n } // Conditionals to remove extra event listeners added on open\n\n\n if (this.options.closeOnEsc) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('keydown.zf.reveal');\n }\n\n if (!this.options.overlay && this.options.closeOnClick) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').off('click.zf.dropdown tap.zf.dropdown');\n }\n\n this.$element.off('keydown.zf.reveal');\n\n function finishUp() {\n // Get the current top before the modal is closed and restore the scroll after.\n // TODO: use component properties instead of HTML properties\n // See https://github.com/foundation/foundation-sites/pull/10786\n var scrollTop = parseInt(jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"html\").css(\"top\"));\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length === 0) {\n _this._removeGlobalClasses(); // also remove .is-reveal-open from the html element when there is no opened reveal\n\n }\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].releaseFocus(_this.$element);\n\n _this.$element.attr('aria-hidden', true);\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length === 0) {\n _this._enableScroll(scrollTop);\n }\n /**\n * Fires when the modal is done closing.\n * @event Reveal#closed\n */\n\n\n _this.$element.trigger('closed.zf.reveal');\n }\n /**\n * Resets the modal content\n * This prevents a running video to keep going in the background\n */\n\n\n if (this.options.resetOnClose) {\n this.$element.html(this.$element.html());\n }\n\n this.isActive = false; // If deepLink and we did not switched to an other modal...\n\n if (_this.options.deepLink && window.location.hash === \"#\".concat(this.id)) {\n // Remove the history hash\n if (window.history.replaceState) {\n var urlWithoutHash = window.location.pathname + window.location.search;\n\n if (this.options.updateHistory) {\n window.history.pushState({}, '', urlWithoutHash); // remove the hash\n } else {\n window.history.replaceState('', document.title, urlWithoutHash);\n }\n } else {\n window.location.hash = '';\n }\n }\n\n this.$activeAnchor.focus();\n }\n /**\n * Toggles the open/closed state of a modal.\n * @function\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this.isActive) {\n this.close();\n } else {\n this.open();\n }\n }\n }, {\n key: \"_destroy\",\n\n /**\n * Destroys an instance of a modal.\n * @function\n */\n value: function _destroy() {\n if (this.options.overlay) {\n this.$element.appendTo(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this.options.appendTo)); // move $element outside of $overlay to prevent error unregisterPlugin()\n\n this.$overlay.hide().off().remove();\n }\n\n this.$element.hide().off();\n this.$anchor.off('.zf');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(\".zf.reveal:\".concat(this.id));\n if (this.onLoadListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);\n\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()('.reveal:visible').length === 0) {\n this._removeGlobalClasses(); // also remove .is-reveal-open from the html element when there is no opened reveal\n\n }\n }\n }]);\n\n return Reveal;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n\nReveal.defaults = {\n /**\n * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.\n * @option\n * @type {string}\n * @default ''\n */\n animationIn: '',\n\n /**\n * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.\n * @option\n * @type {string}\n * @default ''\n */\n animationOut: '',\n\n /**\n * Time, in ms, to delay the opening of a modal after a click if no animation used.\n * @option\n * @type {number}\n * @default 0\n */\n showDelay: 0,\n\n /**\n * Time, in ms, to delay the closing of a modal after a click if no animation used.\n * @option\n * @type {number}\n * @default 0\n */\n hideDelay: 0,\n\n /**\n * Allows a click on the body/overlay to close the modal.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClick: true,\n\n /**\n * Allows the modal to close if the user presses the `ESCAPE` key.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnEsc: true,\n\n /**\n * If true, allows multiple modals to be displayed at once.\n * @option\n * @type {boolean}\n * @default false\n */\n multipleOpened: false,\n\n /**\n * Distance, in pixels, the modal should push down from the top of the screen.\n * @option\n * @type {number|string}\n * @default auto\n */\n vOffset: 'auto',\n\n /**\n * Distance, in pixels, the modal should push in from the side of the screen.\n * @option\n * @type {number|string}\n * @default auto\n */\n hOffset: 'auto',\n\n /**\n * Allows the modal to be fullscreen, completely blocking out the rest of the view. JS checks for this as well.\n * @option\n * @type {boolean}\n * @default false\n */\n fullScreen: false,\n\n /**\n * Allows the modal to generate an overlay div, which will cover the view when modal opens.\n * @option\n * @type {boolean}\n * @default true\n */\n overlay: true,\n\n /**\n * Allows the modal to remove and reinject markup on close. Should be true if using video elements w/o using provider's api, otherwise, videos will continue to play in the background.\n * @option\n * @type {boolean}\n * @default false\n */\n resetOnClose: false,\n\n /**\n * Link the location hash to the modal.\n * Set the location hash when the modal is opened/closed, and open/close the modal when the location changes.\n * @option\n * @type {boolean}\n * @default false\n */\n deepLink: false,\n\n /**\n * If `deepLink` is enabled, update the browser history with the open modal\n * @option\n * @default false\n */\n updateHistory: false,\n\n /**\n * Allows the modal to append to custom div.\n * @option\n * @type {string}\n * @default \"body\"\n */\n appendTo: \"body\",\n\n /**\n * Allows adding additional class names to the reveal overlay.\n * @option\n * @type {string}\n * @default ''\n */\n additionalOverlayClasses: ''\n};\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.triggers.js\":\n/*!!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\/\n/*! exports provided: Triggers */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Triggers\", function() { return Triggers; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n\n for (var i = 0; i < prefixes.length; i++) {\n if (\"\".concat(prefixes[i], \"MutationObserver\") in window) {\n return window[\"\".concat(prefixes[i], \"MutationObserver\")];\n }\n }\n\n return false;\n}();\n\nvar triggers = function triggers(el, type) {\n el.data(type).split(' ').forEach(function (id) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler'](\"\".concat(type, \".zf.trigger\"), [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\nTriggers.Listeners.Basic = {\n openListener: function openListener() {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');\n },\n closeListener: function closeListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function toggleListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function closeableListener(e) {\n var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable'); // Only close the first closable element. See https://git.io/zf-7833\n\n e.stopPropagation();\n\n if (animation !== '') {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__[\"Motion\"].animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');\n });\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function toggleFocusListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);\n }\n}; // Elements with [data-open] will reveal a plugin that supports it when clicked.\n\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n}; // Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\n\n\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n}; // Elements with [data-toggle] will toggle a plugin that supports it when clicked.\n\n\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n}; // Elements with [data-closable] will respond to close.zf.trigger events.\n\n\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n}; // Elements with [data-toggle-focus] will respond to coming in and out of focus\n\n\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n}; // More Global/complex listeners and triggers\n\n\nTriggers.Listeners.Global = {\n resizeListener: function resizeListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n } //trigger all listening elements and signal a resize event\n\n\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function scrollListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n } //trigger all listening elements and signal a scroll event\n\n\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function closeMeListener(e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-\".concat(plugin, \"]\")).not(\"[data-yeti-box=\\\"\".concat(pluginId, \"\\\"]\"));\n plugins.each(function () {\n var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n } // Global, parses whole document.\n\n};\n\nTriggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {\n plugNames = plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return \"closeme.zf.\".concat(name);\n }).join(' ');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer,\n args = Array.prototype.slice.call(arguments, 3);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(trigger).on(trigger, function (e) {\n if (timer) {\n clearTimeout(timer);\n }\n\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\n\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\n\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]'); //element callback\n\n var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {\n var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target); //trigger the event handler for the element depending on type\n\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], {\n attributes: true,\n childList: true,\n characterData: false,\n subtree: true,\n attributeFilter: [\"data-events\", \"style\"]\n });\n }\n }\n};\n\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\n\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\n\nTriggers.init = function ($, Foundation) {\n Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])($(window), function () {\n if ($.triggersInitialized !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n $.triggersInitialized = true;\n }\n });\n\n if (Foundation) {\n Foundation.Triggers = Triggers; // Legacy included to be backwards compatible for now.\n\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n\n/***/ }),\n\n/***/ 14:\n/*!!*\\\n !*** multi ./js/entries/plugins/foundation.reveal.js ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.reveal.js */\"./js/entries/plugins/foundation.reveal.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.reveal.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.smoothScroll\"] = factory(require(\"./foundation.core\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.smoothScroll\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 16);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.smoothScroll.js\":\n/*!!*\\\n !*** ./js/entries/plugins/foundation.smoothScroll.js ***!\n \\/\n/*! exports provided: Foundation, SmoothScroll */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.smoothScroll */ \"./js/foundation.smoothScroll.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"SmoothScroll\", function() { return _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__[\"SmoothScroll\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__[\"SmoothScroll\"], 'SmoothScroll');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.smoothScroll.js\":\n/*!****!*\\\n !*** ./js/foundation.smoothScroll.js ***!\n \\****/\n/*! exports provided: SmoothScroll */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SmoothScroll\", function() { return SmoothScroll; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n/**\n * SmoothScroll module.\n * @module foundation.smoothScroll\n */\n\nvar SmoothScroll =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(SmoothScroll, _Plugin);\n\n function SmoothScroll() {\n _classCallCheck(this, SmoothScroll);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(SmoothScroll).apply(this, arguments));\n }\n\n _createClass(SmoothScroll, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of SmoothScroll.\n * @class\n * @name SmoothScroll\n * @fires SmoothScroll#init\n * @param {Object} element - jQuery object to add the trigger to.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, SmoothScroll.defaults, this.$element.data(), options);\n this.className = 'SmoothScroll'; // ie9 back compat\n\n this._init();\n }\n /**\n * Initialize the SmoothScroll plugin\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var id = this.$element[0].id || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"GetYoDigits\"])(6, 'smooth-scroll');\n this.$element.attr({\n id: id\n });\n\n this._events();\n }\n /**\n * Initializes events for SmoothScroll.\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n this._linkClickListener = this._handleLinkClick.bind(this);\n this.$element.on('click.zf.smoothScroll', this._linkClickListener);\n this.$element.on('click.zf.smoothScroll', 'a[href^=\"#\"]', this._linkClickListener);\n }\n /**\n * Handle the given event to smoothly scroll to the anchor pointed by the event target.\n * @param {*} e - event\n * @function\n * @private\n */\n\n }, {\n key: \"_handleLinkClick\",\n value: function _handleLinkClick(e) {\n var _this = this;\n\n // Follow the link if it does not point to an anchor.\n if (!jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.currentTarget).is('a[href^=\"#\"]')) return;\n var arrival = e.currentTarget.getAttribute('href');\n this._inTransition = true;\n SmoothScroll.scrollToLoc(arrival, this.options, function () {\n _this._inTransition = false;\n });\n e.preventDefault();\n }\n }, {\n key: \"_destroy\",\n\n /**\n * Destroys the SmoothScroll instance.\n * @function\n */\n value: function _destroy() {\n this.$element.off('click.zf.smoothScroll', this._linkClickListener);\n this.$element.off('click.zf.smoothScroll', 'a[href^=\"#\"]', this._linkClickListener);\n }\n }], [{\n key: \"scrollToLoc\",\n\n /**\n * Function to scroll to a given location on the page.\n * @param {String} loc - A properly formatted jQuery id selector. Example: '#foo'\n * @param {Object} options - The options to use.\n * @param {Function} callback - The callback function.\n * @static\n * @function\n */\n value: function scrollToLoc(loc) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : SmoothScroll.defaults;\n var callback = arguments.length > 2 ? arguments[2] : undefined;\n var $loc = jquery__WEBPACK_IMPORTED_MODULE_0___default()(loc); // Do nothing if target does not exist to prevent errors\n\n if (!$loc.length) return false;\n var scrollPos = Math.round($loc.offset().top - options.threshold / 2 - options.offset);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').stop(true).animate({\n scrollTop: scrollPos\n }, options.animationDuration, options.animationEasing, function () {\n if (typeof callback === 'function') {\n callback();\n }\n });\n }\n }]);\n\n return SmoothScroll;\n}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n/**\n * Default settings for plugin.\n */\n\n\nSmoothScroll.defaults = {\n /**\n * Amount of time, in ms, the animated scrolling should take between locations.\n * @option\n * @type {number}\n * @default 500\n */\n animationDuration: 500,\n\n /**\n * Animation style to use when scrolling between locations. Can be `'swing'` or `'linear'`.\n * @option\n * @type {string}\n * @default 'linear'\n * @see {@link https://api.jquery.com/animate|Jquery animate}\n */\n animationEasing: 'linear',\n\n /**\n * Number of pixels to use as a marker for location changes.\n * @option\n * @type {number}\n * @default 50\n */\n threshold: 50,\n\n /**\n * Number of pixels to offset the scroll of the page on item click if using a sticky nav bar.\n * @option\n * @type {number}\n * @default 0\n */\n offset: 0\n};\n\n\n/***/ }),\n\n/***/ 16:\n/*!*!*\\\n !*** multi ./js/entries/plugins/foundation.smoothScroll.js ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.smoothScroll.js */\"./js/entries/plugins/foundation.smoothScroll.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.smoothScroll.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.smoothScroll\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.smoothScroll\", \"./foundation.util.motion\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.magellan\"] = factory(require(\"./foundation.core\"), require(\"./foundation.smoothScroll\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.magellan\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.smoothScroll\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 8);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.smoothScroll\":\n/*!**!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.smoothScroll\"],\"amd\":\"./foundation.smoothScroll\",\"commonjs\":\"./foundation.smoothScroll\",\"commonjs2\":\"./foundation.smoothScroll\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__;\n\n/***/ }),\n\n/***/ \"./foundation.util.motion\":\n/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.magellan.js\":\n/*!*!*\\\n !*** ./js/entries/plugins/foundation.magellan.js ***!\n \\*/\n/*! exports provided: Foundation, Magellan */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_magellan__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.magellan */ \"./js/foundation.magellan.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Magellan\", function() { return _foundation_magellan__WEBPACK_IMPORTED_MODULE_1__[\"Magellan\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_magellan__WEBPACK_IMPORTED_MODULE_1__[\"Magellan\"], 'Magellan');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.magellan.js\":\n/*!!*\\\n !*** ./js/foundation.magellan.js ***!\n \\/\n/*! exports provided: Magellan */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Magellan\", function() { return Magellan; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.smoothScroll */ \"./foundation.smoothScroll\");\n/* harmony import */ var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.triggers */ \"./js/foundation.util.triggers.js\");\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n/**\n * Magellan module.\n * @module foundation.magellan\n * @requires foundation.smoothScroll\n * @requires foundation.util.triggers\n */\n\nvar Magellan =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Magellan, _Plugin);\n\n function Magellan() {\n _classCallCheck(this, Magellan);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Magellan).apply(this, arguments));\n }\n\n _createClass(Magellan, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of Magellan.\n * @class\n * @name Magellan\n * @fires Magellan#init\n * @param {Object} element - jQuery object to add the trigger to.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Magellan.defaults, this.$element.data(), options);\n this.className = 'Magellan'; // ie9 back compat\n // Triggers init is idempotent, just need to make sure it is initialized\n\n _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_3__[\"Triggers\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\n\n this._init();\n\n this.calcPoints();\n }\n /**\n * Initializes the Magellan plugin and calls functions to get equalizer functioning on load.\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var id = this.$element[0].id || Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"GetYoDigits\"])(6, 'magellan');\n\n var _this = this;\n\n this.$targets = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-magellan-target]');\n this.$links = this.$element.find('a');\n this.$element.attr({\n 'data-resize': id,\n 'data-scroll': id,\n 'id': id\n });\n this.$active = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n this.scrollPos = parseInt(window.pageYOffset, 10);\n\n this._events();\n }\n /**\n * Calculates an array of pixel values that are the demarcation lines between locations on the page.\n * Can be invoked if new elements are added or the size of a location changes.\n * @function\n */\n\n }, {\n key: \"calcPoints\",\n value: function calcPoints() {\n var _this = this,\n body = document.body,\n html = document.documentElement;\n\n this.points = [];\n this.winHeight = Math.round(Math.max(window.innerHeight, html.clientHeight));\n this.docHeight = Math.round(Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight));\n this.$targets.each(function () {\n var $tar = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n pt = Math.round($tar.offset().top - _this.options.threshold);\n $tar.targetPoint = pt;\n\n _this.points.push(pt);\n });\n }\n /**\n * Initializes events for Magellan.\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n var _this = this;\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).one('load', function () {\n if (_this.options.deepLinking) {\n if (location.hash) {\n _this.scrollToLoc(location.hash);\n }\n }\n\n _this.calcPoints();\n\n _this._updateActive();\n });\n _this.onLoadListener = Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n _this.$element.on({\n 'resizeme.zf.trigger': _this.reflow.bind(_this),\n 'scrollme.zf.trigger': _this._updateActive.bind(_this)\n }).on('click.zf.magellan', 'a[href^=\"#\"]', function (e) {\n e.preventDefault();\n var arrival = this.getAttribute('href');\n\n _this.scrollToLoc(arrival);\n });\n });\n\n this._deepLinkScroll = function (e) {\n if (_this.options.deepLinking) {\n _this.scrollToLoc(window.location.hash);\n }\n };\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('hashchange', this._deepLinkScroll);\n }\n /**\n * Function to scroll to a given location on the page.\n * @param {String} loc - a properly formatted jQuery id selector. Example: '#foo'\n * @function\n */\n\n }, {\n key: \"scrollToLoc\",\n value: function scrollToLoc(loc) {\n this._inTransition = true;\n\n var _this = this;\n\n var options = {\n animationEasing: this.options.animationEasing,\n animationDuration: this.options.animationDuration,\n threshold: this.options.threshold,\n offset: this.options.offset\n };\n _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2__[\"SmoothScroll\"].scrollToLoc(loc, options, function () {\n _this._inTransition = false;\n });\n }\n /**\n * Calls necessary functions to update Magellan upon DOM change\n * @function\n */\n\n }, {\n key: \"reflow\",\n value: function reflow() {\n this.calcPoints();\n\n this._updateActive();\n }\n /**\n * Updates the visibility of an active location link, and updates the url hash for the page, if deepLinking enabled.\n * @private\n * @function\n * @fires Magellan#update\n */\n\n }, {\n key: \"_updateActive\",\n value: function _updateActive()\n /*evt, elem, scrollPos*/\n {\n var _this2 = this;\n\n if (this._inTransition) return;\n var newScrollPos = parseInt(window.pageYOffset, 10);\n var isScrollingUp = this.scrollPos > newScrollPos;\n this.scrollPos = newScrollPos;\n var activeIdx; // Before the first point: no link\n\n if (newScrollPos < this.points[0]) {}\n /* do nothing */\n // At the bottom of the page: last link\n else if (newScrollPos + this.winHeight === this.docHeight) {\n activeIdx = this.points.length - 1;\n } // Otherwhise, use the last visible link\n else {\n var visibleLinks = this.points.filter(function (p, i) {\n return p - _this2.options.offset - (isScrollingUp ? _this2.options.threshold : 0) <= newScrollPos;\n });\n activeIdx = visibleLinks.length ? visibleLinks.length - 1 : 0;\n } // Get the new active link\n\n\n var $oldActive = this.$active;\n var activeHash = '';\n\n if (typeof activeIdx !== 'undefined') {\n this.$active = this.$links.filter('[href=\"#' + this.$targets.eq(activeIdx).data('magellan-target') + '\"]');\n if (this.$active.length) activeHash = this.$active[0].getAttribute('href');\n } else {\n this.$active = jquery__WEBPACK_IMPORTED_MODULE_0___default()();\n }\n\n var isNewActive = !(!this.$active.length && !$oldActive.length) && !this.$active.is($oldActive);\n var isNewHash = activeHash !== window.location.hash; // Update the active link element\n\n if (isNewActive) {\n $oldActive.removeClass(this.options.activeClass);\n this.$active.addClass(this.options.activeClass);\n } // Update the hash (it may have changed with the same active link)\n\n\n if (this.options.deepLinking && isNewHash) {\n if (window.history.pushState) {\n // Set or remove the hash (see: https://stackoverflow.com/a/5298684/4317384\n var url = activeHash ? activeHash : window.location.pathname + window.location.search;\n\n if (this.options.updateHistory) {\n window.history.pushState({}, '', url);\n } else {\n window.history.replaceState({}, '', url);\n }\n } else {\n window.location.hash = activeHash;\n }\n }\n\n if (isNewActive) {\n /**\n * Fires when magellan is finished updating to the new active element.\n * @event Magellan#update\n */\n this.$element.trigger('update.zf.magellan', [this.$active]);\n }\n }\n /**\n * Destroys an instance of Magellan and resets the url of the window.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.$element.off('.zf.trigger .zf.magellan').find(\".\".concat(this.options.activeClass)).removeClass(this.options.activeClass);\n\n if (this.options.deepLinking) {\n var hash = this.$active[0].getAttribute('href');\n window.location.hash.replace(hash, '');\n }\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('hashchange', this._deepLinkScroll);\n if (this.onLoadListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);\n }\n }]);\n\n return Magellan;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n/**\n * Default settings for plugin\n */\n\n\nMagellan.defaults = {\n /**\n * Amount of time, in ms, the animated scrolling should take between locations.\n * @option\n * @type {number}\n * @default 500\n */\n animationDuration: 500,\n\n /**\n * Animation style to use when scrolling between locations. Can be `'swing'` or `'linear'`.\n * @option\n * @type {string}\n * @default 'linear'\n * @see {@link https://api.jquery.com/animate|Jquery animate}\n */\n animationEasing: 'linear',\n\n /**\n * Number of pixels to use as a marker for location changes.\n * @option\n * @type {number}\n * @default 50\n */\n threshold: 50,\n\n /**\n * Class applied to the active locations link on the magellan container.\n * @option\n * @type {string}\n * @default 'is-active'\n */\n activeClass: 'is-active',\n\n /**\n * Allows the script to manipulate the url of the current page, and if supported, alter the history.\n * @option\n * @type {boolean}\n * @default false\n */\n deepLinking: false,\n\n /**\n * Update the browser history with the active link, if deep linking is enabled.\n * @option\n * @type {boolean}\n * @default false\n */\n updateHistory: false,\n\n /**\n * Number of pixels to offset the scroll of the page on item click if using a sticky nav bar.\n * @option\n * @type {number}\n * @default 0\n */\n offset: 0\n};\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.triggers.js\":\n/*!!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\/\n/*! exports provided: Triggers */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Triggers\", function() { return Triggers; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n\n for (var i = 0; i < prefixes.length; i++) {\n if (\"\".concat(prefixes[i], \"MutationObserver\") in window) {\n return window[\"\".concat(prefixes[i], \"MutationObserver\")];\n }\n }\n\n return false;\n}();\n\nvar triggers = function triggers(el, type) {\n el.data(type).split(' ').forEach(function (id) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler'](\"\".concat(type, \".zf.trigger\"), [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\nTriggers.Listeners.Basic = {\n openListener: function openListener() {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');\n },\n closeListener: function closeListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function toggleListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function closeableListener(e) {\n var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable'); // Only close the first closable element. See https://git.io/zf-7833\n\n e.stopPropagation();\n\n if (animation !== '') {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__[\"Motion\"].animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');\n });\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function toggleFocusListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);\n }\n}; // Elements with [data-open] will reveal a plugin that supports it when clicked.\n\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n}; // Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\n\n\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n}; // Elements with [data-toggle] will toggle a plugin that supports it when clicked.\n\n\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n}; // Elements with [data-closable] will respond to close.zf.trigger events.\n\n\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n}; // Elements with [data-toggle-focus] will respond to coming in and out of focus\n\n\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n}; // More Global/complex listeners and triggers\n\n\nTriggers.Listeners.Global = {\n resizeListener: function resizeListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n } //trigger all listening elements and signal a resize event\n\n\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function scrollListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n } //trigger all listening elements and signal a scroll event\n\n\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function closeMeListener(e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-\".concat(plugin, \"]\")).not(\"[data-yeti-box=\\\"\".concat(pluginId, \"\\\"]\"));\n plugins.each(function () {\n var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n } // Global, parses whole document.\n\n};\n\nTriggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {\n plugNames = plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return \"closeme.zf.\".concat(name);\n }).join(' ');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer,\n args = Array.prototype.slice.call(arguments, 3);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(trigger).on(trigger, function (e) {\n if (timer) {\n clearTimeout(timer);\n }\n\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\n\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\n\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]'); //element callback\n\n var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {\n var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target); //trigger the event handler for the element depending on type\n\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], {\n attributes: true,\n childList: true,\n characterData: false,\n subtree: true,\n attributeFilter: [\"data-events\", \"style\"]\n });\n }\n }\n};\n\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\n\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\n\nTriggers.init = function ($, Foundation) {\n Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])($(window), function () {\n if ($.triggersInitialized !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n $.triggersInitialized = true;\n }\n });\n\n if (Foundation) {\n Foundation.Triggers = Triggers; // Legacy included to be backwards compatible for now.\n\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n\n/***/ }),\n\n/***/ 8:\n/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.magellan.js ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.magellan.js */\"./js/entries/plugins/foundation.magellan.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.magellan.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.mediaQuery\", \"./foundation.util.motion\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.sticky\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.mediaQuery\"), require(\"./foundation.util.motion\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.sticky\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 17);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.mediaQuery\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;\n\n/***/ }),\n\n/***/ \"./foundation.util.motion\":\n/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.motion\"],\"amd\":\"./foundation.util.motion\",\"commonjs\":\"./foundation.util.motion\",\"commonjs2\":\"./foundation.util.motion\"} ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_motion__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.sticky.js\":\n/*!****!*\\\n !*** ./js/entries/plugins/foundation.sticky.js ***!\n \\****/\n/*! exports provided: Foundation, Sticky */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_sticky__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.sticky */ \"./js/foundation.sticky.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Sticky\", function() { return _foundation_sticky__WEBPACK_IMPORTED_MODULE_1__[\"Sticky\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_sticky__WEBPACK_IMPORTED_MODULE_1__[\"Sticky\"], 'Sticky');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.sticky.js\":\n/*!***!*\\\n !*** ./js/foundation.sticky.js ***!\n \\***/\n/*! exports provided: Sticky */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Sticky\", function() { return Sticky; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./foundation.util.mediaQuery\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.triggers */ \"./js/foundation.util.triggers.js\");\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n/**\n * Sticky module.\n * @module foundation.sticky\n * @requires foundation.util.triggers\n * @requires foundation.util.mediaQuery\n */\n\nvar Sticky =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Sticky, _Plugin);\n\n function Sticky() {\n _classCallCheck(this, Sticky);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Sticky).apply(this, arguments));\n }\n\n _createClass(Sticky, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of a sticky thing.\n * @class\n * @name Sticky\n * @param {jQuery} element - jQuery object to make sticky.\n * @param {Object} options - options object passed when creating the element programmatically.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Sticky.defaults, this.$element.data(), options);\n this.className = 'Sticky'; // ie9 back compat\n // Triggers init is idempotent, just need to make sure it is initialized\n\n _foundation_util_triggers__WEBPACK_IMPORTED_MODULE_3__[\"Triggers\"].init(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);\n\n this._init();\n }\n /**\n * Initializes the sticky element by adding classes, getting/setting dimensions, breakpoints and attributes\n * @function\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__[\"MediaQuery\"]._init();\n\n var $parent = this.$element.parent('[data-sticky-container]'),\n id = this.$element[0].id || Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"GetYoDigits\"])(6, 'sticky'),\n _this = this;\n\n if ($parent.length) {\n this.$container = $parent;\n } else {\n this.wasWrapped = true;\n this.$element.wrap(this.options.container);\n this.$container = this.$element.parent();\n }\n\n this.$container.addClass(this.options.containerClass);\n this.$element.addClass(this.options.stickyClass).attr({\n 'data-resize': id,\n 'data-mutate': id\n });\n\n if (this.options.anchor !== '') {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('#' + _this.options.anchor).attr({\n 'data-mutate': id\n });\n }\n\n this.scrollCount = this.options.checkEvery;\n this.isStuck = false;\n this.onLoadListener = Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n //We calculate the container height to have correct values for anchor points offset calculation.\n _this.containerHeight = _this.$element.css(\"display\") == \"none\" ? 0 : _this.$element[0].getBoundingClientRect().height;\n\n _this.$container.css('height', _this.containerHeight);\n\n _this.elemHeight = _this.containerHeight;\n\n if (_this.options.anchor !== '') {\n _this.$anchor = jquery__WEBPACK_IMPORTED_MODULE_0___default()('#' + _this.options.anchor);\n } else {\n _this._parsePoints();\n }\n\n _this._setSizes(function () {\n var scroll = window.pageYOffset;\n\n _this._calc(false, scroll); //Unstick the element will ensure that proper classes are set.\n\n\n if (!_this.isStuck) {\n _this._removeSticky(scroll >= _this.topPoint ? false : true);\n }\n });\n\n _this._events(id.split('-').reverse().join('-'));\n });\n }\n /**\n * If using multiple elements as anchors, calculates the top and bottom pixel values the sticky thing should stick and unstick on.\n * @function\n * @private\n */\n\n }, {\n key: \"_parsePoints\",\n value: function _parsePoints() {\n var top = this.options.topAnchor == \"\" ? 1 : this.options.topAnchor,\n btm = this.options.btmAnchor == \"\" ? document.documentElement.scrollHeight : this.options.btmAnchor,\n pts = [top, btm],\n breaks = {};\n\n for (var i = 0, len = pts.length; i < len && pts[i]; i++) {\n var pt;\n\n if (typeof pts[i] === 'number') {\n pt = pts[i];\n } else {\n var place = pts[i].split(':'),\n anchor = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(place[0]));\n pt = anchor.offset().top;\n\n if (place[1] && place[1].toLowerCase() === 'bottom') {\n pt += anchor[0].getBoundingClientRect().height;\n }\n }\n\n breaks[i] = pt;\n }\n\n this.points = breaks;\n return;\n }\n /**\n * Adds event handlers for the scrolling element.\n * @private\n * @param {String} id - pseudo-random id for unique scroll event listener.\n */\n\n }, {\n key: \"_events\",\n value: function _events(id) {\n var _this = this,\n scrollListener = this.scrollListener = \"scroll.zf.\".concat(id);\n\n if (this.isOn) {\n return;\n }\n\n if (this.canStick) {\n this.isOn = true;\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(scrollListener).on(scrollListener, function (e) {\n if (_this.scrollCount === 0) {\n _this.scrollCount = _this.options.checkEvery;\n\n _this._setSizes(function () {\n _this._calc(false, window.pageYOffset);\n });\n } else {\n _this.scrollCount--;\n\n _this._calc(false, window.pageYOffset);\n }\n });\n }\n\n this.$element.off('resizeme.zf.trigger').on('resizeme.zf.trigger', function (e, el) {\n _this._eventsHandler(id);\n });\n this.$element.on('mutateme.zf.trigger', function (e, el) {\n _this._eventsHandler(id);\n });\n\n if (this.$anchor) {\n this.$anchor.on('mutateme.zf.trigger', function (e, el) {\n _this._eventsHandler(id);\n });\n }\n }\n /**\n * Handler for events.\n * @private\n * @param {String} id - pseudo-random id for unique scroll event listener.\n */\n\n }, {\n key: \"_eventsHandler\",\n value: function _eventsHandler(id) {\n var _this = this,\n scrollListener = this.scrollListener = \"scroll.zf.\".concat(id);\n\n _this._setSizes(function () {\n _this._calc(false);\n\n if (_this.canStick) {\n if (!_this.isOn) {\n _this._events(id);\n }\n } else if (_this.isOn) {\n _this._pauseListeners(scrollListener);\n }\n });\n }\n /**\n * Removes event handlers for scroll and change events on anchor.\n * @fires Sticky#pause\n * @param {String} scrollListener - unique, namespaced scroll listener attached to `window`\n */\n\n }, {\n key: \"_pauseListeners\",\n value: function _pauseListeners(scrollListener) {\n this.isOn = false;\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(scrollListener);\n /**\n * Fires when the plugin is paused due to resize event shrinking the view.\n * @event Sticky#pause\n * @private\n */\n\n this.$element.trigger('pause.zf.sticky');\n }\n /**\n * Called on every `scroll` event and on `_init`\n * fires functions based on booleans and cached values\n * @param {Boolean} checkSizes - true if plugin should recalculate sizes and breakpoints.\n * @param {Number} scroll - current scroll position passed from scroll event cb function. If not passed, defaults to `window.pageYOffset`.\n */\n\n }, {\n key: \"_calc\",\n value: function _calc(checkSizes, scroll) {\n if (checkSizes) {\n this._setSizes();\n }\n\n if (!this.canStick) {\n if (this.isStuck) {\n this._removeSticky(true);\n }\n\n return false;\n }\n\n if (!scroll) {\n scroll = window.pageYOffset;\n }\n\n if (scroll >= this.topPoint) {\n if (scroll <= this.bottomPoint) {\n if (!this.isStuck) {\n this._setSticky();\n }\n } else {\n if (this.isStuck) {\n this._removeSticky(false);\n }\n }\n } else {\n if (this.isStuck) {\n this._removeSticky(true);\n }\n }\n }\n /**\n * Causes the $element to become stuck.\n * Adds `position: fixed;`, and helper classes.\n * @fires Sticky#stuckto\n * @function\n * @private\n */\n\n }, {\n key: \"_setSticky\",\n value: function _setSticky() {\n var _this = this,\n stickTo = this.options.stickTo,\n mrgn = stickTo === 'top' ? 'marginTop' : 'marginBottom',\n notStuckTo = stickTo === 'top' ? 'bottom' : 'top',\n css = {};\n\n css[mrgn] = \"\".concat(this.options[mrgn], \"em\");\n css[stickTo] = 0;\n css[notStuckTo] = 'auto';\n this.isStuck = true;\n this.$element.removeClass(\"is-anchored is-at-\".concat(notStuckTo)).addClass(\"is-stuck is-at-\".concat(stickTo)).css(css)\n /**\n * Fires when the $element has become `position: fixed;`\n * Namespaced to `top` or `bottom`, e.g. `sticky.zf.stuckto:top`\n * @event Sticky#stuckto\n */\n .trigger(\"sticky.zf.stuckto:\".concat(stickTo));\n this.$element.on(\"transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd\", function () {\n _this._setSizes();\n });\n }\n /**\n * Causes the $element to become unstuck.\n * Removes `position: fixed;`, and helper classes.\n * Adds other helper classes.\n * @param {Boolean} isTop - tells the function if the $element should anchor to the top or bottom of its $anchor element.\n * @fires Sticky#unstuckfrom\n * @private\n */\n\n }, {\n key: \"_removeSticky\",\n value: function _removeSticky(isTop) {\n var stickTo = this.options.stickTo,\n stickToTop = stickTo === 'top',\n css = {},\n anchorPt = (this.points ? this.points[1] - this.points[0] : this.anchorHeight) - this.elemHeight,\n mrgn = stickToTop ? 'marginTop' : 'marginBottom',\n topOrBottom = isTop ? 'top' : 'bottom';\n css[mrgn] = 0;\n css['bottom'] = 'auto';\n\n if (isTop) {\n css['top'] = 0;\n } else {\n css['top'] = anchorPt;\n }\n\n this.isStuck = false;\n this.$element.removeClass(\"is-stuck is-at-\".concat(stickTo)).addClass(\"is-anchored is-at-\".concat(topOrBottom)).css(css)\n /**\n * Fires when the $element has become anchored.\n * Namespaced to `top` or `bottom`, e.g. `sticky.zf.unstuckfrom:bottom`\n * @event Sticky#unstuckfrom\n */\n .trigger(\"sticky.zf.unstuckfrom:\".concat(topOrBottom));\n }\n /**\n * Sets the $element and $container sizes for plugin.\n * Calls `_setBreakPoints`.\n * @param {Function} cb - optional callback function to fire on completion of `_setBreakPoints`.\n * @private\n */\n\n }, {\n key: \"_setSizes\",\n value: function _setSizes(cb) {\n this.canStick = _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__[\"MediaQuery\"].is(this.options.stickyOn);\n\n if (!this.canStick) {\n if (cb && typeof cb === 'function') {\n cb();\n }\n }\n\n var _this = this,\n newElemWidth = this.$container[0].getBoundingClientRect().width,\n comp = window.getComputedStyle(this.$container[0]),\n pdngl = parseInt(comp['padding-left'], 10),\n pdngr = parseInt(comp['padding-right'], 10);\n\n if (this.$anchor && this.$anchor.length) {\n this.anchorHeight = this.$anchor[0].getBoundingClientRect().height;\n } else {\n this._parsePoints();\n }\n\n this.$element.css({\n 'max-width': \"\".concat(newElemWidth - pdngl - pdngr, \"px\")\n }); // Recalculate the height only if it is \"dynamic\"\n\n if (this.options.dynamicHeight || !this.containerHeight) {\n // Get the sticked element height and apply it to the container to \"hold the place\"\n var newContainerHeight = this.$element[0].getBoundingClientRect().height || this.containerHeight;\n newContainerHeight = this.$element.css(\"display\") == \"none\" ? 0 : newContainerHeight;\n this.$container.css('height', newContainerHeight);\n this.containerHeight = newContainerHeight;\n }\n\n this.elemHeight = this.containerHeight;\n\n if (!this.isStuck) {\n if (this.$element.hasClass('is-at-bottom')) {\n var anchorPt = (this.points ? this.points[1] - this.$container.offset().top : this.anchorHeight) - this.elemHeight;\n this.$element.css('top', anchorPt);\n }\n }\n\n this._setBreakPoints(this.containerHeight, function () {\n if (cb && typeof cb === 'function') {\n cb();\n }\n });\n }\n /**\n * Sets the upper and lower breakpoints for the element to become sticky/unsticky.\n * @param {Number} elemHeight - px value for sticky.$element height, calculated by `_setSizes`.\n * @param {Function} cb - optional callback function to be called on completion.\n * @private\n */\n\n }, {\n key: \"_setBreakPoints\",\n value: function _setBreakPoints(elemHeight, cb) {\n if (!this.canStick) {\n if (cb && typeof cb === 'function') {\n cb();\n } else {\n return false;\n }\n }\n\n var mTop = emCalc(this.options.marginTop),\n mBtm = emCalc(this.options.marginBottom),\n topPoint = this.points ? this.points[0] : this.$anchor.offset().top,\n bottomPoint = this.points ? this.points[1] : topPoint + this.anchorHeight,\n // topPoint = this.$anchor.offset().top || this.points[0],\n // bottomPoint = topPoint + this.anchorHeight || this.points[1],\n winHeight = window.innerHeight;\n\n if (this.options.stickTo === 'top') {\n topPoint -= mTop;\n bottomPoint -= elemHeight + mTop;\n } else if (this.options.stickTo === 'bottom') {\n topPoint -= winHeight - (elemHeight + mBtm);\n bottomPoint -= winHeight - mBtm;\n } else {//this would be the stickTo: both option... tricky\n }\n\n this.topPoint = topPoint;\n this.bottomPoint = bottomPoint;\n\n if (cb && typeof cb === 'function') {\n cb();\n }\n }\n /**\n * Destroys the current sticky element.\n * Resets the element to the top position first.\n * Removes event listeners, JS-added css properties and classes, and unwraps the $element if the JS added the $container.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this._removeSticky(true);\n\n this.$element.removeClass(\"\".concat(this.options.stickyClass, \" is-anchored is-at-top\")).css({\n height: '',\n top: '',\n bottom: '',\n 'max-width': ''\n }).off('resizeme.zf.trigger').off('mutateme.zf.trigger');\n\n if (this.$anchor && this.$anchor.length) {\n this.$anchor.off('change.zf.sticky');\n }\n\n if (this.scrollListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.scrollListener);\n if (this.onLoadListener) jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);\n\n if (this.wasWrapped) {\n this.$element.unwrap();\n } else {\n this.$container.removeClass(this.options.containerClass).css({\n height: ''\n });\n }\n }\n }]);\n\n return Sticky;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n\nSticky.defaults = {\n /**\n * Customizable container template. Add your own classes for styling and sizing.\n * @option\n * @type {string}\n * @default '<div data-sticky-container></div>'\n */\n container: '
      ',\n\n /**\n * Location in the view the element sticks to. Can be `'top'` or `'bottom'`.\n * @option\n * @type {string}\n * @default 'top'\n */\n stickTo: 'top',\n\n /**\n * If anchored to a single element, the id of that element.\n * @option\n * @type {string}\n * @default ''\n */\n anchor: '',\n\n /**\n * If using more than one element as anchor points, the id of the top anchor.\n * @option\n * @type {string}\n * @default ''\n */\n topAnchor: '',\n\n /**\n * If using more than one element as anchor points, the id of the bottom anchor.\n * @option\n * @type {string}\n * @default ''\n */\n btmAnchor: '',\n\n /**\n * Margin, in `em`'s to apply to the top of the element when it becomes sticky.\n * @option\n * @type {number}\n * @default 1\n */\n marginTop: 1,\n\n /**\n * Margin, in `em`'s to apply to the bottom of the element when it becomes sticky.\n * @option\n * @type {number}\n * @default 1\n */\n marginBottom: 1,\n\n /**\n * Breakpoint string that is the minimum screen size an element should become sticky.\n * @option\n * @type {string}\n * @default 'medium'\n */\n stickyOn: 'medium',\n\n /**\n * Class applied to sticky element, and removed on destruction. Foundation defaults to `sticky`.\n * @option\n * @type {string}\n * @default 'sticky'\n */\n stickyClass: 'sticky',\n\n /**\n * Class applied to sticky container. Foundation defaults to `sticky-container`.\n * @option\n * @type {string}\n * @default 'sticky-container'\n */\n containerClass: 'sticky-container',\n\n /**\n * If true (by default), keep the sticky container the same height as the element. Otherwise, the container height is set once and does not change.\n * @option\n * @type {boolean}\n * @default true\n */\n dynamicHeight: true,\n\n /**\n * Number of scroll events between the plugin's recalculating sticky points. Setting it to `0` will cause it to recalc every scroll event, setting it to `-1` will prevent recalc on scroll.\n * @option\n * @type {number}\n * @default -1\n */\n checkEvery: -1\n};\n/**\n * Helper function to calculate em values\n * @param Number {em} - number of em's to calculate into pixels\n */\n\nfunction emCalc(em) {\n return parseInt(window.getComputedStyle(document.body, null).fontSize, 10) * em;\n}\n\n\n\n/***/ }),\n\n/***/ \"./js/foundation.util.triggers.js\":\n/*!!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\/\n/*! exports provided: Triggers */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Triggers\", function() { return Triggers; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.motion */ \"./foundation.util.motion\");\n/* harmony import */ var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n\n for (var i = 0; i < prefixes.length; i++) {\n if (\"\".concat(prefixes[i], \"MutationObserver\") in window) {\n return window[\"\".concat(prefixes[i], \"MutationObserver\")];\n }\n }\n\n return false;\n}();\n\nvar triggers = function triggers(el, type) {\n el.data(type).split(' ').forEach(function (id) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id))[type === 'close' ? 'trigger' : 'triggerHandler'](\"\".concat(type, \".zf.trigger\"), [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\nTriggers.Listeners.Basic = {\n openListener: function openListener() {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'open');\n },\n closeListener: function closeListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('close');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'close');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function toggleListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle');\n\n if (id) {\n triggers(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), 'toggle');\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function closeableListener(e) {\n var animation = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('closable'); // Only close the first closable element. See https://git.io/zf-7833\n\n e.stopPropagation();\n\n if (animation !== '') {\n _foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__[\"Motion\"].animateOut(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this), animation, function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger('closed.zf');\n });\n } else {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function toggleFocusListener() {\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('toggle-focus');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(id)).triggerHandler('toggle.zf.trigger', [jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)]);\n }\n}; // Elements with [data-open] will reveal a plugin that supports it when clicked.\n\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n}; // Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\n\n\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n}; // Elements with [data-toggle] will toggle a plugin that supports it when clicked.\n\n\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n}; // Elements with [data-closable] will respond to close.zf.trigger events.\n\n\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n}; // Elements with [data-toggle-focus] will respond to coming in and out of focus\n\n\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n}; // More Global/complex listeners and triggers\n\n\nTriggers.Listeners.Global = {\n resizeListener: function resizeListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n } //trigger all listening elements and signal a resize event\n\n\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function scrollListener($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n } //trigger all listening elements and signal a scroll event\n\n\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function closeMeListener(e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-\".concat(plugin, \"]\")).not(\"[data-yeti-box=\\\"\".concat(pluginId, \"\\\"]\"));\n plugins.each(function () {\n var _this = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this);\n\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n } // Global, parses whole document.\n\n};\n\nTriggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (_typeof(pluginName) === 'object' && typeof pluginName[0] === 'string') {\n plugNames = plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return \"closeme.zf.\".concat(name);\n }).join(' ');\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer,\n args = Array.prototype.slice.call(arguments, 3);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(trigger).on(trigger, function (e) {\n if (timer) {\n clearTimeout(timer);\n }\n\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-resize]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\n\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-scroll]');\n\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\n\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]'); //element callback\n\n var listeningElementsMutation = function listeningElementsMutation(mutationRecordsList) {\n var $target = jquery__WEBPACK_IMPORTED_MODULE_0___default()(mutationRecordsList[0].target); //trigger the event handler for the element depending on type\n\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], {\n attributes: true,\n childList: true,\n characterData: false,\n subtree: true,\n attributeFilter: [\"data-events\", \"style\"]\n });\n }\n }\n};\n\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\n\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = jquery__WEBPACK_IMPORTED_MODULE_0___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\n\nTriggers.init = function ($, Foundation) {\n Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])($(window), function () {\n if ($.triggersInitialized !== true) {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n $.triggersInitialized = true;\n }\n });\n\n if (Foundation) {\n Foundation.Triggers = Triggers; // Legacy included to be backwards compatible for now.\n\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n\n/***/ }),\n\n/***/ 17:\n/*!!*\\\n !*** multi ./js/entries/plugins/foundation.sticky.js ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.sticky.js */\"./js/entries/plugins/foundation.sticky.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.sticky.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.core\"), require(\"./foundation.util.imageLoader\"), require(\"./foundation.util.keyboard\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\", \"./foundation.util.imageLoader\", \"./foundation.util.keyboard\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.tabs\"] = factory(require(\"./foundation.core\"), require(\"./foundation.util.imageLoader\"), require(\"./foundation.util.keyboard\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.tabs\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.imageLoader\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__, __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 18);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.util.imageLoader\":\n/*!***!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.imageLoader\"],\"amd\":\"./foundation.util.imageLoader\",\"commonjs\":\"./foundation.util.imageLoader\",\"commonjs2\":\"./foundation.util.imageLoader\"} ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__;\n\n/***/ }),\n\n/***/ \"./foundation.util.keyboard\":\n/*!*!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\*/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.tabs.js\":\n/*!**!*\\\n !*** ./js/entries/plugins/foundation.tabs.js ***!\n \\**/\n/*! exports provided: Foundation, Tabs */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_tabs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.tabs */ \"./js/foundation.tabs.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Tabs\", function() { return _foundation_tabs__WEBPACK_IMPORTED_MODULE_1__[\"Tabs\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_tabs__WEBPACK_IMPORTED_MODULE_1__[\"Tabs\"], 'Tabs');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.tabs.js\":\n/*!*!*\\\n !*** ./js/foundation.tabs.js ***!\n \\*/\n/*! exports provided: Tabs */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Tabs\", function() { return Tabs; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.core.plugin */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.util.keyboard */ \"./foundation.util.keyboard\");\n/* harmony import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.util.imageLoader */ \"./foundation.util.imageLoader\");\n/* harmony import */ var _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_3__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n/**\n * Tabs module.\n * @module foundation.tabs\n * @requires foundation.util.keyboard\n * @requires foundation.util.imageLoader if tabs contain images\n */\n\nvar Tabs =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(Tabs, _Plugin);\n\n function Tabs() {\n _classCallCheck(this, Tabs);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(Tabs).apply(this, arguments));\n }\n\n _createClass(Tabs, [{\n key: \"_setup\",\n\n /**\n * Creates a new instance of tabs.\n * @class\n * @name Tabs\n * @fires Tabs#init\n * @param {jQuery} element - jQuery object to make into tabs.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, Tabs.defaults, this.$element.data(), options);\n this.className = 'Tabs'; // ie9 back compat\n\n this._init();\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].register('Tabs', {\n 'ENTER': 'open',\n 'SPACE': 'open',\n 'ARROW_RIGHT': 'next',\n 'ARROW_UP': 'previous',\n 'ARROW_DOWN': 'next',\n 'ARROW_LEFT': 'previous' // 'TAB': 'next',\n // 'SHIFT_TAB': 'previous'\n\n });\n }\n /**\n * Initializes the tabs by showing and focusing (if autoFocus=true) the preset active tab.\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n var _this2 = this;\n\n var _this = this;\n\n this._isInitializing = true;\n this.$element.attr({\n 'role': 'tablist'\n });\n this.$tabTitles = this.$element.find(\".\".concat(this.options.linkClass));\n this.$tabContent = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"[data-tabs-content=\\\"\".concat(this.$element[0].id, \"\\\"]\"));\n this.$tabTitles.each(function () {\n var $elem = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n $link = $elem.find('a'),\n isActive = $elem.hasClass(\"\".concat(_this.options.linkActiveClass)),\n hash = $link.attr('data-tabs-target') || $link[0].hash.slice(1),\n linkId = $link[0].id ? $link[0].id : \"\".concat(hash, \"-label\"),\n $tabContent = jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(hash));\n $elem.attr({\n 'role': 'presentation'\n });\n $link.attr({\n 'role': 'tab',\n 'aria-controls': hash,\n 'aria-selected': isActive,\n 'id': linkId,\n 'tabindex': isActive ? '0' : '-1'\n });\n $tabContent.attr({\n 'role': 'tabpanel',\n 'aria-labelledby': linkId\n }); // Save up the initial hash to return to it later when going back in history\n\n if (isActive) {\n _this._initialAnchor = \"#\".concat(hash);\n }\n\n if (!isActive) {\n $tabContent.attr('aria-hidden', 'true');\n }\n\n if (isActive && _this.options.autoFocus) {\n _this.onLoadListener = Object(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"onLoad\"])(jquery__WEBPACK_IMPORTED_MODULE_0___default()(window), function () {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').animate({\n scrollTop: $elem.offset().top\n }, _this.options.deepLinkSmudgeDelay, function () {\n $link.focus();\n });\n });\n }\n });\n\n if (this.options.matchHeight) {\n var $images = this.$tabContent.find('img');\n\n if ($images.length) {\n Object(_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_3__[\"onImagesLoaded\"])($images, this._setHeight.bind(this));\n } else {\n this._setHeight();\n }\n } // Current context-bound function to open tabs on page load or history hashchange\n\n\n this._checkDeepLink = function () {\n var anchor = window.location.hash;\n\n if (!anchor.length) {\n // If we are still initializing and there is no anchor, then there is nothing to do\n if (_this2._isInitializing) return; // Otherwise, move to the initial anchor\n\n if (_this2._initialAnchor) anchor = _this2._initialAnchor;\n }\n\n var anchorNoHash = anchor.indexOf('#') >= 0 ? anchor.slice(1) : anchor;\n var $anchor = anchorNoHash && jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(anchorNoHash));\n\n var $link = anchor && _this2.$element.find(\"[href$=\\\"\".concat(anchor, \"\\\"],[data-tabs-target=\\\"\").concat(anchorNoHash, \"\\\"]\")).first(); // Whether the anchor element that has been found is part of this element\n\n\n var isOwnAnchor = !!($anchor.length && $link.length);\n\n if (isOwnAnchor) {\n // If there is an anchor for the hash, select it\n if ($anchor && $anchor.length && $link && $link.length) {\n _this2.selectTab($anchor, true);\n } // Otherwise, collapse everything\n else {\n _this2._collapse();\n } // Roll up a little to show the titles\n\n\n if (_this2.options.deepLinkSmudge) {\n var offset = _this2.$element.offset();\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('html, body').animate({\n scrollTop: offset.top\n }, _this2.options.deepLinkSmudgeDelay);\n }\n /**\n * Fires when the plugin has deeplinked at pageload\n * @event Tabs#deeplink\n */\n\n\n _this2.$element.trigger('deeplink.zf.tabs', [$link, $anchor]);\n }\n }; //use browser to open a tab, if it exists in this tabset\n\n\n if (this.options.deepLink) {\n this._checkDeepLink();\n }\n\n this._events();\n\n this._isInitializing = false;\n }\n /**\n * Adds event handlers for items within the tabs.\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n this._addKeyHandler();\n\n this._addClickHandler();\n\n this._setHeightMqHandler = null;\n\n if (this.options.matchHeight) {\n this._setHeightMqHandler = this._setHeight.bind(this);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', this._setHeightMqHandler);\n }\n\n if (this.options.deepLink) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('hashchange', this._checkDeepLink);\n }\n }\n /**\n * Adds click handlers for items within the tabs.\n * @private\n */\n\n }, {\n key: \"_addClickHandler\",\n value: function _addClickHandler() {\n var _this = this;\n\n this.$element.off('click.zf.tabs').on('click.zf.tabs', \".\".concat(this.options.linkClass), function (e) {\n e.preventDefault();\n\n _this._handleTabChange(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));\n });\n }\n /**\n * Adds keyboard event handlers for items within the tabs.\n * @private\n */\n\n }, {\n key: \"_addKeyHandler\",\n value: function _addKeyHandler() {\n var _this = this;\n\n this.$tabTitles.off('keydown.zf.tabs').on('keydown.zf.tabs', function (e) {\n if (e.which === 9) return;\n var $element = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n $elements = $element.parent('ul').children('li'),\n $prevElement,\n $nextElement;\n $elements.each(function (i) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).is($element)) {\n if (_this.options.wrapOnKeys) {\n $prevElement = i === 0 ? $elements.last() : $elements.eq(i - 1);\n $nextElement = i === $elements.length - 1 ? $elements.first() : $elements.eq(i + 1);\n } else {\n $prevElement = $elements.eq(Math.max(0, i - 1));\n $nextElement = $elements.eq(Math.min(i + 1, $elements.length - 1));\n }\n\n return;\n }\n }); // handle keyboard event with keyboard util\n\n _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__[\"Keyboard\"].handleKey(e, 'Tabs', {\n open: function open() {\n $element.find('[role=\"tab\"]').focus();\n\n _this._handleTabChange($element);\n },\n previous: function previous() {\n $prevElement.find('[role=\"tab\"]').focus();\n\n _this._handleTabChange($prevElement);\n },\n next: function next() {\n $nextElement.find('[role=\"tab\"]').focus();\n\n _this._handleTabChange($nextElement);\n },\n handled: function handled() {\n e.preventDefault();\n }\n });\n });\n }\n /**\n * Opens the tab `$targetContent` defined by `$target`. Collapses active tab.\n * @param {jQuery} $target - Tab to open.\n * @param {boolean} historyHandled - browser has already handled a history update\n * @fires Tabs#change\n * @function\n */\n\n }, {\n key: \"_handleTabChange\",\n value: function _handleTabChange($target, historyHandled) {\n // With `activeCollapse`, if the target is the active Tab, collapse it.\n if ($target.hasClass(\"\".concat(this.options.linkActiveClass))) {\n if (this.options.activeCollapse) {\n this._collapse();\n }\n\n return;\n }\n\n var $oldTab = this.$element.find(\".\".concat(this.options.linkClass, \".\").concat(this.options.linkActiveClass)),\n $tabLink = $target.find('[role=\"tab\"]'),\n target = $tabLink.attr('data-tabs-target'),\n anchor = target && target.length ? \"#\".concat(target) : $tabLink[0].hash,\n $targetContent = this.$tabContent.find(anchor); //close old tab\n\n this._collapseTab($oldTab); //open new tab\n\n\n this._openTab($target); //either replace or update browser history\n\n\n if (this.options.deepLink && !historyHandled) {\n if (this.options.updateHistory) {\n history.pushState({}, '', anchor);\n } else {\n history.replaceState({}, '', anchor);\n }\n }\n /**\n * Fires when the plugin has successfully changed tabs.\n * @event Tabs#change\n */\n\n\n this.$element.trigger('change.zf.tabs', [$target, $targetContent]); //fire to children a mutation event\n\n $targetContent.find(\"[data-mutate]\").trigger(\"mutateme.zf.trigger\");\n }\n /**\n * Opens the tab `$targetContent` defined by `$target`.\n * @param {jQuery} $target - Tab to open.\n * @function\n */\n\n }, {\n key: \"_openTab\",\n value: function _openTab($target) {\n var $tabLink = $target.find('[role=\"tab\"]'),\n hash = $tabLink.attr('data-tabs-target') || $tabLink[0].hash.slice(1),\n $targetContent = this.$tabContent.find(\"#\".concat(hash));\n $target.addClass(\"\".concat(this.options.linkActiveClass));\n $tabLink.attr({\n 'aria-selected': 'true',\n 'tabindex': '0'\n });\n $targetContent.addClass(\"\".concat(this.options.panelActiveClass)).removeAttr('aria-hidden');\n }\n /**\n * Collapses `$targetContent` defined by `$target`.\n * @param {jQuery} $target - Tab to collapse.\n * @function\n */\n\n }, {\n key: \"_collapseTab\",\n value: function _collapseTab($target) {\n var $target_anchor = $target.removeClass(\"\".concat(this.options.linkActiveClass)).find('[role=\"tab\"]').attr({\n 'aria-selected': 'false',\n 'tabindex': -1\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat($target_anchor.attr('aria-controls'))).removeClass(\"\".concat(this.options.panelActiveClass)).attr({\n 'aria-hidden': 'true'\n });\n }\n /**\n * Collapses the active Tab.\n * @fires Tabs#collapse\n * @function\n */\n\n }, {\n key: \"_collapse\",\n value: function _collapse() {\n var $activeTab = this.$element.find(\".\".concat(this.options.linkClass, \".\").concat(this.options.linkActiveClass));\n\n if ($activeTab.length) {\n this._collapseTab($activeTab);\n /**\n * Fires when the plugin has successfully collapsed tabs.\n * @event Tabs#collapse\n */\n\n\n this.$element.trigger('collapse.zf.tabs', [$activeTab]);\n }\n }\n /**\n * Public method for selecting a content pane to display.\n * @param {jQuery | String} elem - jQuery object or string of the id of the pane to display.\n * @param {boolean} historyHandled - browser has already handled a history update\n * @function\n */\n\n }, {\n key: \"selectTab\",\n value: function selectTab(elem, historyHandled) {\n var idStr, hashIdStr;\n\n if (_typeof(elem) === 'object') {\n idStr = elem[0].id;\n } else {\n idStr = elem;\n }\n\n if (idStr.indexOf('#') < 0) {\n hashIdStr = \"#\".concat(idStr);\n } else {\n hashIdStr = idStr;\n idStr = idStr.slice(1);\n }\n\n var $target = this.$tabTitles.has(\"[href$=\\\"\".concat(hashIdStr, \"\\\"],[data-tabs-target=\\\"\").concat(idStr, \"\\\"]\")).first();\n\n this._handleTabChange($target, historyHandled);\n }\n }, {\n key: \"_setHeight\",\n\n /**\n * Sets the height of each panel to the height of the tallest panel.\n * If enabled in options, gets called on media query change.\n * If loading content via external source, can be called directly or with _reflow.\n * If enabled with `data-match-height=\"true\"`, tabs sets to equal height\n * @function\n * @private\n */\n value: function _setHeight() {\n var max = 0,\n _this = this; // Lock down the `this` value for the root tabs object\n\n\n this.$tabContent.find(\".\".concat(this.options.panelClass)).css('height', '').each(function () {\n var panel = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n isActive = panel.hasClass(\"\".concat(_this.options.panelActiveClass)); // get the options from the parent instead of trying to get them from the child\n\n if (!isActive) {\n panel.css({\n 'visibility': 'hidden',\n 'display': 'block'\n });\n }\n\n var temp = this.getBoundingClientRect().height;\n\n if (!isActive) {\n panel.css({\n 'visibility': '',\n 'display': ''\n });\n }\n\n max = temp > max ? temp : max;\n }).css('height', \"\".concat(max, \"px\"));\n }\n /**\n * Destroys an instance of tabs.\n * @fires Tabs#destroyed\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.$element.find(\".\".concat(this.options.linkClass)).off('.zf.tabs').hide().end().find(\".\".concat(this.options.panelClass)).hide();\n\n if (this.options.matchHeight) {\n if (this._setHeightMqHandler != null) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('changed.zf.mediaquery', this._setHeightMqHandler);\n }\n }\n\n if (this.options.deepLink) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('hashchange', this._checkDeepLink);\n }\n\n if (this.onLoadListener) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off(this.onLoadListener);\n }\n }\n }]);\n\n return Tabs;\n}(_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__[\"Plugin\"]);\n\nTabs.defaults = {\n /**\n * Link the location hash to the active pane.\n * Set the location hash when the active pane changes, and open the corresponding pane when the location changes.\n * @option\n * @type {boolean}\n * @default false\n */\n deepLink: false,\n\n /**\n * If `deepLink` is enabled, adjust the deep link scroll to make sure the top of the tab panel is visible\n * @option\n * @type {boolean}\n * @default false\n */\n deepLinkSmudge: false,\n\n /**\n * If `deepLinkSmudge` is enabled, animation time (ms) for the deep link adjustment\n * @option\n * @type {number}\n * @default 300\n */\n deepLinkSmudgeDelay: 300,\n\n /**\n * If `deepLink` is enabled, update the browser history with the open tab\n * @option\n * @type {boolean}\n * @default false\n */\n updateHistory: false,\n\n /**\n * Allows the window to scroll to content of active pane on load.\n * Not recommended if more than one tab panel per page.\n * @option\n * @type {boolean}\n * @default false\n */\n autoFocus: false,\n\n /**\n * Allows keyboard input to 'wrap' around the tab links.\n * @option\n * @type {boolean}\n * @default true\n */\n wrapOnKeys: true,\n\n /**\n * Allows the tab content panes to match heights if set to true.\n * @option\n * @type {boolean}\n * @default false\n */\n matchHeight: false,\n\n /**\n * Allows active tabs to collapse when clicked.\n * @option\n * @type {boolean}\n * @default false\n */\n activeCollapse: false,\n\n /**\n * Class applied to `li`'s in tab link list.\n * @option\n * @type {string}\n * @default 'tabs-title'\n */\n linkClass: 'tabs-title',\n\n /**\n * Class applied to the active `li` in tab link list.\n * @option\n * @type {string}\n * @default 'is-active'\n */\n linkActiveClass: 'is-active',\n\n /**\n * Class applied to the content containers.\n * @option\n * @type {string}\n * @default 'tabs-panel'\n */\n panelClass: 'tabs-panel',\n\n /**\n * Class applied to the active content container.\n * @option\n * @type {string}\n * @default 'is-active'\n */\n panelActiveClass: 'is-active'\n};\n\n\n/***/ }),\n\n/***/ 18:\n/*!***!*\\\n !*** multi ./js/entries/plugins/foundation.tabs.js ***!\n \\***/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.tabs.js */\"./js/entries/plugins/foundation.tabs.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.tabs.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"./foundation.accordion\"), require(\"./foundation.core\"), require(\"./foundation.tabs\"), require(\"./foundation.util.mediaQuery\"), require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.accordion\", \"./foundation.core\", \"./foundation.tabs\", \"./foundation.util.mediaQuery\", \"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.responsiveAccordionTabs\"] = factory(require(\"./foundation.accordion\"), require(\"./foundation.core\"), require(\"./foundation.tabs\"), require(\"./foundation.util.mediaQuery\"), require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.responsiveAccordionTabs\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.accordion\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.tabs\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"], root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__foundation_accordion__, __WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE__foundation_tabs__, __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /*/ (function(modules) { // webpackBootstrap\n/*/ \t// The module cache\n/*/ \tvar installedModules = {};\n/*/\n/*/ \t// The require function\n/*/ \tfunction __webpack_require__(moduleId) {\n/*/\n/*/ \t\t// Check if module is in cache\n/*/ \t\tif(installedModules[moduleId]) {\n/*/ \t\t\treturn installedModules[moduleId].exports;\n/*/ \t\t}\n/*/ \t\t// Create a new module (and put it into the cache)\n/*/ \t\tvar module = installedModules[moduleId] = {\n/*/ \t\t\ti: moduleId,\n/*/ \t\t\tl: false,\n/*/ \t\t\texports: {}\n/*/ \t\t};\n/*/\n/*/ \t\t// Execute the module function\n/*/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/*/\n/*/ \t\t// Flag the module as loaded\n/*/ \t\tmodule.l = true;\n/*/\n/*/ \t\t// Return the exports of the module\n/*/ \t\treturn module.exports;\n/*/ \t}\n/*/\n/*/\n/*/ \t// expose the modules object (__webpack_modules__)\n/*/ \t__webpack_require__.m = modules;\n/*/\n/*/ \t// expose the module cache\n/*/ \t__webpack_require__.c = installedModules;\n/*/\n/*/ \t// define getter function for harmony exports\n/*/ \t__webpack_require__.d = function(exports, name, getter) {\n/*/ \t\tif(!__webpack_require__.o(exports, name)) {\n/*/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/*/ \t\t}\n/*/ \t};\n/*/\n/*/ \t// define __esModule on exports\n/*/ \t__webpack_require__.r = function(exports) {\n/*/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/*/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/*/ \t\t}\n/*/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/*/ \t};\n/*/\n/*/ \t// create a fake namespace object\n/*/ \t// mode & 1: value is a module id, require it\n/*/ \t// mode & 2: merge all properties of value into the ns\n/*/ \t// mode & 4: return value when already ns object\n/*/ \t// mode & 8|1: behave like require\n/*/ \t__webpack_require__.t = function(value, mode) {\n/*/ \t\tif(mode & 1) value = __webpack_require__(value);\n/*/ \t\tif(mode & 8) return value;\n/*/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/*/ \t\tvar ns = Object.create(null);\n/*/ \t\t__webpack_require__.r(ns);\n/*/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/*/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/*/ \t\treturn ns;\n/*/ \t};\n/*/\n/*/ \t// getDefaultExport function for compatibility with non-harmony modules\n/*/ \t__webpack_require__.n = function(module) {\n/*/ \t\tvar getter = module && module.__esModule ?\n/*/ \t\t\tfunction getDefault() { return module['default']; } :\n/*/ \t\t\tfunction getModuleExports() { return module; };\n/*/ \t\t__webpack_require__.d(getter, 'a', getter);\n/*/ \t\treturn getter;\n/*/ \t};\n/*/\n/*/ \t// Object.prototype.hasOwnProperty.call\n/*/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/*/\n/*/ \t// __webpack_public_path__\n/*/ \t__webpack_require__.p = \"\";\n/*/\n/*/\n/*/ \t// Load entry module and return exports\n/*/ \treturn __webpack_require__(__webpack_require__.s = 11);\n/*/ })\n/**/\n/*/ ({\n\n/***/ \"./foundation.accordion\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.accordion\"],\"amd\":\"./foundation.accordion\",\"commonjs\":\"./foundation.accordion\",\"commonjs2\":\"./foundation.accordion\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_accordion__;\n\n/***/ }),\n\n/***/ \"./foundation.core\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"./foundation.tabs\":\n/*!!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.tabs\"],\"amd\":\"./foundation.tabs\",\"commonjs\":\"./foundation.tabs\",\"commonjs2\":\"./foundation.tabs\"} ***!\n \\/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_tabs__;\n\n/***/ }),\n\n/***/ \"./foundation.util.mediaQuery\":\n/*!****!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\****/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;\n\n/***/ }),\n\n/***/ \"./js/entries/plugins/foundation.responsiveAccordionTabs.js\":\n/*!*!*\\\n !*** ./js/entries/plugins/foundation.responsiveAccordionTabs.js ***!\n \\*/\n/*! exports provided: Foundation, ResponsiveAccordionTabs */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core */ \"./foundation.core\");\n/* harmony import */ var _foundation_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_foundation_core__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Foundation\", function() { return _foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"]; });\n\n/* harmony import */ var _foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.responsiveAccordionTabs */ \"./js/foundation.responsiveAccordionTabs.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"ResponsiveAccordionTabs\", function() { return _foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveAccordionTabs\"]; });\n\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__[\"Foundation\"].plugin(_foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__[\"ResponsiveAccordionTabs\"], 'ResponsiveAccordionTabs');\n\n\n/***/ }),\n\n/***/ \"./js/foundation.responsiveAccordionTabs.js\":\n/*!!*\\\n !*** ./js/foundation.responsiveAccordionTabs.js ***!\n \\/\n/*! exports provided: ResponsiveAccordionTabs */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ResponsiveAccordionTabs\", function() { return ResponsiveAccordionTabs; });\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ \"jquery\");\n/* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation.util.mediaQuery */ \"./foundation.util.mediaQuery\");\n/* harmony import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./foundation.core.utils */ \"./foundation.core\");\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _foundation_accordion__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation.accordion */ \"./foundation.accordion\");\n/* harmony import */ var _foundation_accordion__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_foundation_accordion__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _foundation_tabs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation.tabs */ \"./foundation.tabs\");\n/* harmony import */ var _foundation_tabs__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_foundation_tabs__WEBPACK_IMPORTED_MODULE_4__);\n\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\n\n\n // The plugin matches the plugin classes with these plugin instances.\n\nvar MenuPlugins = {\n tabs: {\n cssClass: 'tabs',\n plugin: _foundation_tabs__WEBPACK_IMPORTED_MODULE_4__[\"Tabs\"],\n open: function open(plugin, target) {\n return plugin.selectTab(target);\n },\n close: null\n /* not supported */\n ,\n toggle: null\n /* not supported */\n\n },\n accordion: {\n cssClass: 'accordion',\n plugin: _foundation_accordion__WEBPACK_IMPORTED_MODULE_3__[\"Accordion\"],\n open: function open(plugin, target) {\n return plugin.down(jquery__WEBPACK_IMPORTED_MODULE_0___default()(target));\n },\n close: function close(plugin, target) {\n return plugin.up(jquery__WEBPACK_IMPORTED_MODULE_0___default()(target));\n },\n toggle: function toggle(plugin, target) {\n return plugin.toggle(jquery__WEBPACK_IMPORTED_MODULE_0___default()(target));\n }\n }\n};\n/**\n * ResponsiveAccordionTabs module.\n * @module foundation.responsiveAccordionTabs\n * @requires foundation.util.motion\n * @requires foundation.accordion\n * @requires foundation.tabs\n */\n\nvar ResponsiveAccordionTabs =\n/*#__PURE__*/\nfunction (_Plugin) {\n _inherits(ResponsiveAccordionTabs, _Plugin);\n\n function ResponsiveAccordionTabs(element, options) {\n var _this2;\n\n _classCallCheck(this, ResponsiveAccordionTabs);\n\n _this2 = _possibleConstructorReturn(this, _getPrototypeOf(ResponsiveAccordionTabs).call(this, element, options));\n return _possibleConstructorReturn(_this2, _this2.options.reflow && _this2.storezfData || _assertThisInitialized(_this2));\n }\n /**\n * Creates a new instance of a responsive accordion tabs.\n * @class\n * @name ResponsiveAccordionTabs\n * @fires ResponsiveAccordionTabs#init\n * @param {jQuery} element - jQuery object to make into Responsive Accordion Tabs.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n\n\n _createClass(ResponsiveAccordionTabs, [{\n key: \"_setup\",\n value: function _setup(element, options) {\n this.$element = jquery__WEBPACK_IMPORTED_MODULE_0___default()(element);\n this.$element.data('zfPluginBase', this);\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default.a.extend({}, ResponsiveAccordionTabs.defaults, this.$element.data(), options);\n this.rules = this.$element.data('responsive-accordion-tabs');\n this.currentMq = null;\n this.currentRule = null;\n this.currentPlugin = null;\n this.className = 'ResponsiveAccordionTabs'; // ie9 back compat\n\n if (!this.$element.attr('id')) {\n this.$element.attr('id', Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6, 'responsiveaccordiontabs'));\n }\n\n this._init();\n\n this._events();\n }\n /**\n * Initializes the Menu by parsing the classes from the 'data-responsive-accordion-tabs' attribute on the element.\n * @function\n * @private\n */\n\n }, {\n key: \"_init\",\n value: function _init() {\n _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"]._init(); // The first time an Interchange plugin is initialized, this.rules is converted from a string of \"classes\" to an object of rules\n\n\n if (typeof this.rules === 'string') {\n var rulesTree = {}; // Parse rules from \"classes\" pulled from data attribute\n\n var rules = this.rules.split(' '); // Iterate through every rule found\n\n for (var i = 0; i < rules.length; i++) {\n var rule = rules[i].split('-');\n var ruleSize = rule.length > 1 ? rule[0] : 'small';\n var rulePlugin = rule.length > 1 ? rule[1] : rule[0];\n\n if (MenuPlugins[rulePlugin] !== null) {\n rulesTree[ruleSize] = MenuPlugins[rulePlugin];\n }\n }\n\n this.rules = rulesTree;\n }\n\n this._getAllOptions();\n\n if (!jquery__WEBPACK_IMPORTED_MODULE_0___default.a.isEmptyObject(this.rules)) {\n this._checkMediaQueries();\n }\n }\n }, {\n key: \"_getAllOptions\",\n value: function _getAllOptions() {\n //get all defaults and options\n var _this = this;\n\n _this.allOptions = {};\n\n for (var key in MenuPlugins) {\n if (MenuPlugins.hasOwnProperty(key)) {\n var obj = MenuPlugins[key];\n\n try {\n var dummyPlugin = jquery__WEBPACK_IMPORTED_MODULE_0___default()('
        ');\n var tmpPlugin = new obj.plugin(dummyPlugin, _this.options);\n\n for (var keyKey in tmpPlugin.options) {\n if (tmpPlugin.options.hasOwnProperty(keyKey) && keyKey !== 'zfPlugin') {\n var objObj = tmpPlugin.options[keyKey];\n _this.allOptions[keyKey] = objObj;\n }\n }\n\n tmpPlugin.destroy();\n } catch (e) {}\n }\n }\n }\n /**\n * Initializes events for the Menu.\n * @function\n * @private\n */\n\n }, {\n key: \"_events\",\n value: function _events() {\n this._changedZfMediaQueryHandler = this._checkMediaQueries.bind(this);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery', this._changedZfMediaQueryHandler);\n }\n /**\n * Checks the current screen width against available media queries. If the media query has changed, and the plugin needed has changed, the plugins will swap out.\n * @function\n * @private\n */\n\n }, {\n key: \"_checkMediaQueries\",\n value: function _checkMediaQueries() {\n var matchedMq,\n _this = this; // Iterate through each rule and find the last matching rule\n\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(this.rules, function (key) {\n if (_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__[\"MediaQuery\"].atLeast(key)) {\n matchedMq = key;\n }\n }); // No match? No dice\n\n if (!matchedMq) return; // Plugin already initialized? We good\n\n if (this.currentPlugin instanceof this.rules[matchedMq].plugin) return; // Remove existing plugin-specific CSS classes\n\n jquery__WEBPACK_IMPORTED_MODULE_0___default.a.each(MenuPlugins, function (key, value) {\n _this.$element.removeClass(value.cssClass);\n }); // Add the CSS class for the new plugin\n\n this.$element.addClass(this.rules[matchedMq].cssClass); // Create an instance of the new plugin\n\n if (this.currentPlugin) {\n //don't know why but on nested elements data zfPlugin get's lost\n if (!this.currentPlugin.$element.data('zfPlugin') && this.storezfData) this.currentPlugin.$element.data('zfPlugin', this.storezfData);\n this.currentPlugin.destroy();\n }\n\n this._handleMarkup(this.rules[matchedMq].cssClass);\n\n this.currentRule = this.rules[matchedMq];\n this.currentPlugin = new this.currentRule.plugin(this.$element, this.options);\n this.storezfData = this.currentPlugin.$element.data('zfPlugin');\n }\n }, {\n key: \"_handleMarkup\",\n value: function _handleMarkup(toSet) {\n var _this = this,\n fromString = 'accordion';\n\n var $panels = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-tabs-content=' + this.$element.attr('id') + ']');\n if ($panels.length) fromString = 'tabs';\n\n if (fromString === toSet) {\n return;\n }\n\n var tabsTitle = _this.allOptions.linkClass ? _this.allOptions.linkClass : 'tabs-title';\n var tabsPanel = _this.allOptions.panelClass ? _this.allOptions.panelClass : 'tabs-panel';\n this.$element.removeAttr('role');\n var $liHeads = this.$element.children('.' + tabsTitle + ',[data-accordion-item]').removeClass(tabsTitle).removeClass('accordion-item').removeAttr('data-accordion-item');\n var $liHeadsA = $liHeads.children('a').removeClass('accordion-title');\n\n if (fromString === 'tabs') {\n $panels = $panels.children('.' + tabsPanel).removeClass(tabsPanel).removeAttr('role').removeAttr('aria-hidden').removeAttr('aria-labelledby');\n $panels.children('a').removeAttr('role').removeAttr('aria-controls').removeAttr('aria-selected');\n } else {\n $panels = $liHeads.children('[data-tab-content]').removeClass('accordion-content');\n }\n\n $panels.css({\n display: '',\n visibility: ''\n });\n $liHeads.css({\n display: '',\n visibility: ''\n });\n\n if (toSet === 'accordion') {\n $panels.each(function (key, value) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).appendTo($liHeads.get(key)).addClass('accordion-content').attr('data-tab-content', '').removeClass('is-active').css({\n height: ''\n });\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-tabs-content=' + _this.$element.attr('id') + ']').after('
        ').detach();\n $liHeads.addClass('accordion-item').attr('data-accordion-item', '');\n $liHeadsA.addClass('accordion-title');\n });\n } else if (toSet === 'tabs') {\n var $tabsContent = jquery__WEBPACK_IMPORTED_MODULE_0___default()('[data-tabs-content=' + _this.$element.attr('id') + ']');\n var $placeholder = jquery__WEBPACK_IMPORTED_MODULE_0___default()('#tabs-placeholder-' + _this.$element.attr('id'));\n\n if ($placeholder.length) {\n $tabsContent = jquery__WEBPACK_IMPORTED_MODULE_0___default()('
        ').insertAfter($placeholder).attr('data-tabs-content', _this.$element.attr('id'));\n $placeholder.remove();\n } else {\n $tabsContent = jquery__WEBPACK_IMPORTED_MODULE_0___default()('
        ').insertAfter(_this.$element).attr('data-tabs-content', _this.$element.attr('id'));\n }\n\n $panels.each(function (key, value) {\n var tempValue = jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).appendTo($tabsContent).addClass(tabsPanel);\n var hash = $liHeadsA.get(key).hash.slice(1);\n var id = jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).attr('id') || Object(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"GetYoDigits\"])(6, 'accordion');\n\n if (hash !== id) {\n if (hash !== '') {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).attr('id', hash);\n } else {\n hash = id;\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(value).attr('id', hash);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()($liHeadsA.get(key)).attr('href', jquery__WEBPACK_IMPORTED_MODULE_0___default()($liHeadsA.get(key)).attr('href').replace('#', '') + '#' + hash);\n }\n }\n\n var isActive = jquery__WEBPACK_IMPORTED_MODULE_0___default()($liHeads.get(key)).hasClass('is-active');\n\n if (isActive) {\n tempValue.addClass('is-active');\n }\n });\n $liHeads.addClass(tabsTitle);\n }\n\n ;\n }\n /**\n * Opens the plugin pane defined by `target`.\n * @param {jQuery | String} target - jQuery object or string of the id of the pane to open.\n * @see Accordion.down\n * @see Tabs.selectTab\n * @function\n */\n\n }, {\n key: \"open\",\n value: function open(_target) {\n if (this.currentRule && typeof this.currentRule.open === 'function') {\n var _this$currentRule;\n\n return (_this$currentRule = this.currentRule).open.apply(_this$currentRule, [this.currentPlugin].concat(Array.prototype.slice.call(arguments)));\n }\n }\n /**\n * Closes the plugin pane defined by `target`. Not availaible for Tabs.\n * @param {jQuery | String} target - jQuery object or string of the id of the pane to close.\n * @see Accordion.up\n * @function\n */\n\n }, {\n key: \"close\",\n value: function close(_target) {\n if (this.currentRule && typeof this.currentRule.close === 'function') {\n var _this$currentRule2;\n\n return (_this$currentRule2 = this.currentRule).close.apply(_this$currentRule2, [this.currentPlugin].concat(Array.prototype.slice.call(arguments)));\n }\n }\n /**\n * Toggles the plugin pane defined by `target`. Not availaible for Tabs.\n * @param {jQuery | String} target - jQuery object or string of the id of the pane to toggle.\n * @see Accordion.toggle\n * @function\n */\n\n }, {\n key: \"toggle\",\n value: function toggle(_target) {\n if (this.currentRule && typeof this.currentRule.toggle === 'function') {\n var _this$currentRule3;\n\n return (_this$currentRule3 = this.currentRule).toggle.apply(_this$currentRule3, [this.currentPlugin].concat(Array.prototype.slice.call(arguments)));\n }\n }\n /**\n * Destroys the instance of the current plugin on this element, as well as the window resize handler that switches the plugins out.\n * @function\n */\n\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n if (this.currentPlugin) this.currentPlugin.destroy();\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).off('changed.zf.mediaquery', this._changedZfMediaQueryHandler);\n }\n }]);\n\n return ResponsiveAccordionTabs;\n}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_2__[\"Plugin\"]);\n\nResponsiveAccordionTabs.defaults = {};\n\n\n/***/ }),\n\n/***/ 11:\n/*!**!*\\\n !*** multi ./js/entries/plugins/foundation.responsiveAccordionTabs.js ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(/*! /Users/joeworkman/Development/foundation-sites/js/entries/plugins/foundation.responsiveAccordionTabs.js */\"./js/entries/plugins/foundation.responsiveAccordionTabs.js\");\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!**!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\**/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/*/ });\n});\n//# sourceMappingURL=foundation.responsiveAccordionTabs.js.map","/*! npm.im/object-fit-images 3.2.4 */\nvar objectFitImages = (function () {\n'use strict';\n\nvar OFI = 'bfred-it:object-fit-images';\nvar propRegex = /(object-fit|object-position)\\s*:\\s*([-.\\w\\s%]+)/g;\nvar testImg = typeof Image === 'undefined' ? {style: {'object-position': 1}} : new Image();\nvar supportsObjectFit = 'object-fit' in testImg.style;\nvar supportsObjectPosition = 'object-position' in testImg.style;\nvar supportsOFI = 'background-size' in testImg.style;\nvar supportsCurrentSrc = typeof testImg.currentSrc === 'string';\nvar nativeGetAttribute = testImg.getAttribute;\nvar nativeSetAttribute = testImg.setAttribute;\nvar autoModeEnabled = false;\n\nfunction createPlaceholder(w, h) {\n\treturn (\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='\" + w + \"' height='\" + h + \"'%3E%3C/svg%3E\");\n}\n\nfunction polyfillCurrentSrc(el) {\n\tif (el.srcset && !supportsCurrentSrc && window.picturefill) {\n\t\tvar pf = window.picturefill._;\n\t\t// parse srcset with picturefill where currentSrc isn't available\n\t\tif (!el[pf.ns] || !el[pf.ns].evaled) {\n\t\t\t// force synchronous srcset parsing\n\t\t\tpf.fillImg(el, {reselect: true});\n\t\t}\n\n\t\tif (!el[pf.ns].curSrc) {\n\t\t\t// force picturefill to parse srcset\n\t\t\tel[pf.ns].supported = false;\n\t\t\tpf.fillImg(el, {reselect: true});\n\t\t}\n\n\t\t// retrieve parsed currentSrc, if any\n\t\tel.currentSrc = el[pf.ns].curSrc || el.src;\n\t}\n}\n\nfunction getStyle(el) {\n\tvar style = getComputedStyle(el).fontFamily;\n\tvar parsed;\n\tvar props = {};\n\twhile ((parsed = propRegex.exec(style)) !== null) {\n\t\tprops[parsed[1]] = parsed[2];\n\t}\n\treturn props;\n}\n\nfunction setPlaceholder(img, width, height) {\n\t// Default: fill width, no height\n\tvar placeholder = createPlaceholder(width || 1, height || 0);\n\n\t// Only set placeholder if it's different\n\tif (nativeGetAttribute.call(img, 'src') !== placeholder) {\n\t\tnativeSetAttribute.call(img, 'src', placeholder);\n\t}\n}\n\nfunction onImageReady(img, callback) {\n\t// naturalWidth is only available when the image headers are loaded,\n\t// this loop will poll it every 100ms.\n\tif (img.naturalWidth) {\n\t\tcallback(img);\n\t} else {\n\t\tsetTimeout(onImageReady, 100, img, callback);\n\t}\n}\n\nfunction fixOne(el) {\n\tvar style = getStyle(el);\n\tvar ofi = el[OFI];\n\tstyle['object-fit'] = style['object-fit'] || 'fill'; // default value\n\n\t// Avoid running where unnecessary, unless OFI had already done its deed\n\tif (!ofi.img) {\n\t\t// fill is the default behavior so no action is necessary\n\t\tif (style['object-fit'] === 'fill') {\n\t\t\treturn;\n\t\t}\n\n\t\t// Where object-fit is supported and object-position isn't (Safari < 10)\n\t\tif (\n\t\t\t!ofi.skipTest && // unless user wants to apply regardless of browser support\n\t\t\tsupportsObjectFit && // if browser already supports object-fit\n\t\t\t!style['object-position'] // unless object-position is used\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\t// keep a clone in memory while resetting the original to a blank\n\tif (!ofi.img) {\n\t\tofi.img = new Image(el.width, el.height);\n\t\tofi.img.srcset = nativeGetAttribute.call(el, \"data-ofi-srcset\") || el.srcset;\n\t\tofi.img.src = nativeGetAttribute.call(el, \"data-ofi-src\") || el.src;\n\n\t\t// preserve for any future cloneNode calls\n\t\t// https://github.com/bfred-it/object-fit-images/issues/53\n\t\tnativeSetAttribute.call(el, \"data-ofi-src\", el.src);\n\t\tif (el.srcset) {\n\t\t\tnativeSetAttribute.call(el, \"data-ofi-srcset\", el.srcset);\n\t\t}\n\n\t\tsetPlaceholder(el, el.naturalWidth || el.width, el.naturalHeight || el.height);\n\n\t\t// remove srcset because it overrides src\n\t\tif (el.srcset) {\n\t\t\tel.srcset = '';\n\t\t}\n\t\ttry {\n\t\t\tkeepSrcUsable(el);\n\t\t} catch (err) {\n\t\t\tif (window.console) {\n\t\t\t\tconsole.warn('https://bit.ly/ofi-old-browser');\n\t\t\t}\n\t\t}\n\t}\n\n\tpolyfillCurrentSrc(ofi.img);\n\n\tel.style.backgroundImage = \"url(\\\"\" + ((ofi.img.currentSrc || ofi.img.src).replace(/\"/g, '\\\\\"')) + \"\\\")\";\n\tel.style.backgroundPosition = style['object-position'] || 'center';\n\tel.style.backgroundRepeat = 'no-repeat';\n\tel.style.backgroundOrigin = 'content-box';\n\n\tif (/scale-down/.test(style['object-fit'])) {\n\t\tonImageReady(ofi.img, function () {\n\t\t\tif (ofi.img.naturalWidth > el.width || ofi.img.naturalHeight > el.height) {\n\t\t\t\tel.style.backgroundSize = 'contain';\n\t\t\t} else {\n\t\t\t\tel.style.backgroundSize = 'auto';\n\t\t\t}\n\t\t});\n\t} else {\n\t\tel.style.backgroundSize = style['object-fit'].replace('none', 'auto').replace('fill', '100% 100%');\n\t}\n\n\tonImageReady(ofi.img, function (img) {\n\t\tsetPlaceholder(el, img.naturalWidth, img.naturalHeight);\n\t});\n}\n\nfunction keepSrcUsable(el) {\n\tvar descriptors = {\n\t\tget: function get(prop) {\n\t\t\treturn el[OFI].img[prop ? prop : 'src'];\n\t\t},\n\t\tset: function set(value, prop) {\n\t\t\tel[OFI].img[prop ? prop : 'src'] = value;\n\t\t\tnativeSetAttribute.call(el, (\"data-ofi-\" + prop), value); // preserve for any future cloneNode\n\t\t\tfixOne(el);\n\t\t\treturn value;\n\t\t}\n\t};\n\tObject.defineProperty(el, 'src', descriptors);\n\tObject.defineProperty(el, 'currentSrc', {\n\t\tget: function () { return descriptors.get('currentSrc'); }\n\t});\n\tObject.defineProperty(el, 'srcset', {\n\t\tget: function () { return descriptors.get('srcset'); },\n\t\tset: function (ss) { return descriptors.set(ss, 'srcset'); }\n\t});\n}\n\nfunction hijackAttributes() {\n\tfunction getOfiImageMaybe(el, name) {\n\t\treturn el[OFI] && el[OFI].img && (name === 'src' || name === 'srcset') ? el[OFI].img : el;\n\t}\n\tif (!supportsObjectPosition) {\n\t\tHTMLImageElement.prototype.getAttribute = function (name) {\n\t\t\treturn nativeGetAttribute.call(getOfiImageMaybe(this, name), name);\n\t\t};\n\n\t\tHTMLImageElement.prototype.setAttribute = function (name, value) {\n\t\t\treturn nativeSetAttribute.call(getOfiImageMaybe(this, name), name, String(value));\n\t\t};\n\t}\n}\n\nfunction fix(imgs, opts) {\n\tvar startAutoMode = !autoModeEnabled && !imgs;\n\topts = opts || {};\n\timgs = imgs || 'img';\n\n\tif ((supportsObjectPosition && !opts.skipTest) || !supportsOFI) {\n\t\treturn false;\n\t}\n\n\t// use imgs as a selector or just select all images\n\tif (imgs === 'img') {\n\t\timgs = document.getElementsByTagName('img');\n\t} else if (typeof imgs === 'string') {\n\t\timgs = document.querySelectorAll(imgs);\n\t} else if (!('length' in imgs)) {\n\t\timgs = [imgs];\n\t}\n\n\t// apply fix to all\n\tfor (var i = 0; i < imgs.length; i++) {\n\t\timgs[i][OFI] = imgs[i][OFI] || {\n\t\t\tskipTest: opts.skipTest\n\t\t};\n\t\tfixOne(imgs[i]);\n\t}\n\n\tif (startAutoMode) {\n\t\tdocument.body.addEventListener('load', function (e) {\n\t\t\tif (e.target.tagName === 'IMG') {\n\t\t\t\tfix(e.target, {\n\t\t\t\t\tskipTest: opts.skipTest\n\t\t\t\t});\n\t\t\t}\n\t\t}, true);\n\t\tautoModeEnabled = true;\n\t\timgs = 'img'; // reset to a generic selector for watchMQ\n\t}\n\n\t// if requested, watch media queries for object-fit change\n\tif (opts.watchMQ) {\n\t\twindow.addEventListener('resize', fix.bind(null, imgs, {\n\t\t\tskipTest: opts.skipTest\n\t\t}));\n\t}\n}\n\nfix.supportsObjectFit = supportsObjectFit;\nfix.supportsObjectPosition = supportsObjectPosition;\n\nhijackAttributes();\n\nreturn fix;\n\n}());\n","jQuery(document).foundation();","/*\nThese functions make sure WordPress\nand Foundation play nice together.\n*/\n\njQuery(document).ready(function($) {\n\n var isSlickLoaded = (typeof $.fn.slick !== 'undefined');\n\n var currentBreakpoint = Foundation.MediaQuery.current;\n\n\t// Adds Flex Video to YouTube and Vimeo Embeds\n jQuery('iframe[src*=\"youtube.com\"]:not([id^=\"player-block\"]), iframe[src*=\"vimeo.com\"]').each(function() {\n if ( jQuery(this).innerWidth() / jQuery(this).innerHeight() > 1.5 ) {\n jQuery(this).wrap(\"
        \");\n } else {\n jQuery(this).wrap(\"
        \");\n }\n });\n\n $('.single-mc_video iframe:not([src*=\"youtube.com\"]):not([src*=\"vimeo.com\"], .post-featured-video iframe:not([src*=\"youtube.com\"]):not([src*=\"vimeo.com\"])').each(function() {\n var imageRatio = ($(this).innerHeight() / $(this).innerWidth()) * 100;\n var wrapper = \"
        \";\n $(this).wrap(wrapper);\n });\n\n var mediumBreakpoint = 568;\n var largeBreakpoint = 1024;\n\n $(\"input:text\").focus(function() { $(this).select(); } );\n $('input:text').mouseup(function(e) { return false; });\n\n $('.search-toggle').on('click', function(e) {\n e.preventDefault();\n $('.searchbar-wrapper').toggleClass('open');\n // $('.top-bar .search-field').focus();\n $('.searchbar-wrapper .search-field').focus().select();\n });\n $('.post-project-info-toggle').on('click', function(e) {\n e.preventDefault();\n $('.project-info-modal').toggleClass('open');\n });\n\n $( 'p:empty' ).remove();\n\n $('.slick-disabled').on('click', function(e) {\n e.preventDefault();\n return false;\n });\n\n // browser window scroll (in pixels) after which the \"back to top\" link is shown\n var offset = 300,\n //browser window scroll (in pixels) after which the \"back to top\" link opacity is reduced\n offset_opacity = 1200,\n //duration of the top scrolling animation (in ms)\n scroll_top_duration = 700,\n //grab the \"back to top\" link\n $back_to_top = $('.back-to-top');\n\n //hide or show the \"back to top\" link\n $(window).scroll(function(){\n ( $(this).scrollTop() > offset ) ? $back_to_top.addClass('cd-is-visible') : $back_to_top.removeClass('cd-is-visible cd-fade-out');\n if( $(this).scrollTop() > offset_opacity ) { \n $back_to_top.addClass('cd-fade-out');\n }\n });\n\n //smooth scroll to top\n $back_to_top.on('click', function(event){\n event.preventDefault();\n $('body,html').animate({\n scrollTop: 0 ,\n }, scroll_top_duration\n );\n });\n\n var clickElem = $('.newsletter-open'); \n clickElem.on('click', function(event) {\n event.preventDefault();\n if ( $('.newsletter-form').html().length == 0 ) {\n $.getScript('https://js.hsforms.net/forms/v2.js', function() {\n hbspt.forms.create({ \n css: '',\n portalId: '1836195',\n formId: '12cdb99d-8c2b-4b41-883c-dc85e73645b3',\n target: '.newsletter-form', // INSERT CLASS OR ID OF DIV THAT HAS TO STORE THE FORM HERE.\n formInstanceId: '1'\n });\n $('#newsletter-modal').foundation('open');\n });\n } else {\n $('#newsletter-modal').foundation('open');\n }\n });\n\n if ( $('#bim-nav-magellan').length ) {\n var bimNavOffset = 60;\n if (Foundation.MediaQuery.atLeast('large')) {\n bimNavOffset = 0;\n }\n\n var bimNav = new Foundation.Magellan($('#bim-nav-magellan'), {\n animationEasing: 'swing',\n deepLinking: true,\n threshold: bimNavOffset,\n offset: bimNavOffset\n });\n\n $(window).on('changed.zf.mediaquery', function(event, newSize, oldSize) {\n if ( newSize == 'small' || newSize == 'medium') {\n bimNav.options.offset = 60;\n } else {\n bimNav.options.offset = 0;\n }\n });\n }\n\n if ( $('.twentytwenty-container').length ) {\n $(\".twentytwenty-container\").twentytwenty({\n no_overlay: true\n });\n }\n\n if ( $('.awards-box').length ) {\n var $awardsBox = $('.awards-box');\n $awardsBox.isotope({\n itemSelector: '.mc_award'\n });\n $('#awards-filter-group').on( 'click', '.year', function() {\n $('#awards-filter-group .year').removeClass('active');\n $(this).addClass('active');\n var filterValue = $(this).attr('data-filter');\n $awardsBox.isotope({ filter: filterValue });\n });\n // activate the default option on page load\n $('#awards-filter-group .year.active').trigger('click');\n }\n\n // All slick functions\n if ( isSlickLoaded ) { \n $('.section-copy').slick({\n dots: true,\n infinite: false,\n speed: 300,\n arrows: false,\n adaptiveHeight: true\n });\n\n $('.project-carousel').on('init reInit beforeChange', function(event, slick, currentSlide, nextSlide){\n var i = (nextSlide ? nextSlide : 0) + 1;\n $('.slick-pagination p').text(i + ' / ' + slick.slideCount);\n });\n\n $('.project-carousel').slick({\n dots: false,\n infinite: false,\n speed: 300,\n prevArrow: '
        ',\n nextArrow: '
        '\n });\n\n var paginationTimer;\n\n function hidePagination() {\n $('.slick-pagination').removeClass('visible');\n }\n\n function showPagination() {\n $('.slick-pagination').addClass('visible');\n window.clearTimeout(paginationTimer);\n paginationTimer = window.setTimeout(hidePagination, 750);\n }\n\n $('.project-carousel').on('swipe', function(event, slick, direction){\n showPagination();\n });\n\n $('.project-carousel .slick-arrow').on('click', function(event) {\n showPagination();\n });\n\n $('.related-posts-carousel').slick({\n adaptiveHeight: true,\n dots: false,\n infinite: false,\n speed: 300,\n slidesToShow: 3,\n slidesToScroll: 1,\n prevArrow: '
        ',\n nextArrow: '
        ',\n responsive: [\n {\n breakpoint: largeBreakpoint,\n settings: {\n slidesToShow: 2\n }\n },\n {\n breakpoint: mediumBreakpoint,\n settings: {\n slidesToShow: 1\n }\n }\n ]\n });\n\n $('.related-bios-carousel').slick({\n adaptiveHeight: true,\n dots: false,\n infinite: true,\n speed: 300,\n slidesToShow: 5,\n slidesToScroll: 1,\n prevArrow: '
        ',\n nextArrow: '
        ',\n responsive: [\n {\n breakpoint: largeBreakpoint,\n settings: {\n slidesToShow: 4\n }\n },\n {\n breakpoint: mediumBreakpoint,\n settings: {\n slidesToShow: 3\n }\n }\n ]\n });\n\n $('.news-terms-carousel').on('init reInit setPosition afterChange', function(event, slick, currentSlide){\n var nextSlide = $('.news-terms-carousel .slick-next');\n var nextSlideOffset = nextSlide.offset();\n var lastSlide = $('.news-terms-carousel .slick-slide:last');\n var lastSlideWidth = lastSlide.width();\n var lastSlideOffset = lastSlide.offset();\n var lastSlideRightSide = lastSlideOffset.left + lastSlideWidth;\n if ( lastSlideRightSide < nextSlideOffset.left ) {\n nextSlide.addClass('slick-disabled');\n nextSlide.attr(\"aria-disabled\",\"true\");\n // nextSlide.fadeOut();\n } else {\n nextSlide.removeClass('slick-disabled');\n nextSlide.attr(\"aria-disabled\",\"false\");\n // nextSlide.fadeIn();\n }\n\n\n });\n\n $('.news-terms-carousel').slick({\n dots: false,\n infinite: false,\n swipeToSlide: true,\n touchThreshold: 10,\n speed: 300,\n prevArrow: '
        ',\n nextArrow: '
        ',\n variableWidth: true\n });\n\n // BIM Page\n $('.image-carousel').slick({\n dots: true,\n infinite: true,\n speed: 300,\n adaptiveHeight: true,\n prevArrow: '
        ',\n nextArrow: '
        '\n });\n\n $('.image-fader-slides').slick({\n speed: 2000,\n arrows: false,\n autoplay: true,\n autoplaySpeed: 0,\n fade: true,\n pauseOnHover: false,\n pauseOnFocus: false,\n draggable: false,\n swipe: false\n });\n\n function bimTabImagesInit() {\n $('.bim-tab-images').slick({\n speed: 2000,\n arrows: false,\n autoplay: true,\n autoplaySpeed: 0,\n fade: true,\n pauseOnHover: false,\n pauseOnFocus: false,\n draggable: false,\n swipe: false\n });\n }\n \n bimTabImagesInit();\n\n function bimTabImagesDestroy() {\n $('.bim-tab-images').slick('unslick');\n }\n\n if ( $('.bim-tabs').length ) {\n $('.bim-tabs').on('change.zf.tabs', function() {\n bimTabImagesDestroy();\n bimTabImagesInit();\n });\n\n $(window).on('changed.zf.mediaquery', function(event, newSize, oldSize) {\n if ( newSize == 'small' || newSize == 'medium') {\n initBimTabsSlick();\n } else {\n destroyBimTabsSlick();\n }\n });\n\n function initBimTabsSlick() {\n $('.bim-tabs .tabs').each(function() {\n var $tabsSlider = $(this);\n if ( $(this).hasClass('slick-initialized') ) { return true; }\n $(this).slick({\n arrows: true,\n dots: true,\n swipe: true,\n swipeToSlide: true,\n infinite: false,\n slidesToShow: 1,\n slidesToScroll: 1\n });\n // $tabsSlider.find('.slick-slide').click(function() {\n // var slideIndex = $(this).data('slick-index');\n // $tabsSlider.slick('slickGoTo', slideIndex);\n // });\n $(this).on('beforeChange', function(event, slick, currentSlide, nextSlide){\n var clickTab = $(event.target).find('.slick-slide[data-slick-index=\"' + nextSlide + '\"] a');\n $(event.target).foundation('selectTab', $(clickTab[0].hash));\n });\n });\n\n }\n\n if ( currentBreakpoint == 'small' || currentBreakpoint == 'medium' ) {\n initBimTabsSlick();\n }\n\n function destroyBimTabsSlick() {\n $('.bim-tabs .tabs').slick('unslick');\n }\n }\n\n if ( $('.mc-fcs-block-tabs').length ) {\n\n function initFCSTabsSlick() {\n $('.mc-fcs-block-tabs .tabs').each(function() {\n var $tabsSlider = $(this);\n if ( $(this).hasClass('slick-initialized') ) { return true; }\n $(this).slick({\n arrows: false,\n swipe: true,\n swipeToSlide: true,\n infinite: false,\n variableWidth: true,\n centerMode: true\n });\n $tabsSlider.find('.slick-slide').click(function() {\n var slideIndex = $(this).data('slick-index');\n $tabsSlider.slick('slickGoTo', slideIndex);\n });\n });\n\n }\n\n initFCSTabsSlick();\n\n function destroyFCSTabsSlick() {\n $('.mc-fcs-block-tabs .tabs').slick('unslick');\n }\n }\n\n $('#awards-filter-group').slick({\n arrows: false,\n swipe: true,\n swipeToSlide: true,\n infinite: false,\n variableWidth: true,\n centerMode: true\n });\n \n $('#awards-filter-group').find('.slick-slide').click(function() {\n var slideIndex = $(this).data('slick-index');\n $('#awards-filter-group').slick('slickGoTo', slideIndex);\n });\n } // End slick functions\n\n $(function () { objectFitImages(); }); \n\n $(window).load(function() {\n $(document).trigger('resize');\n $( \".footer-testimonial.ajax\" ).each(function( event ) {\n $this = $(this);\n $.ajax({\n type : 'post',\n url : WPURLS.ajaxurl,\n data : {\n action : 'mc_footer_testimonials'\n },\n beforeSend : function(){\n $this.html('

        Loading...

        ');\n },\n success : function( response ) {\n $this.html(response);\n }\n });\n });\n });\n\n});\n"]}